/* Docfan Pharma Academy (1.20.0): lesson pages and the game. Label-and-shelf look: dashed "perforation" cards, stickers for the cast. */
.dfa{--sky:var(--sky,#009EDB);--ink:#0e2740;max-width:60rem;margin:0 auto;padding:0 0 2rem;color:var(--ink)}
.dfa h2{margin:.2rem 0 .5rem}.dfa h3{margin:1.6rem 0 .6rem}
.dfa-prev,.dfa-note{background:#fff7e6;border-left:4px solid #e0a100;padding:.6rem .9rem;border-radius:0 8px 8px 0}
.dfa-back{margin:0 0 .6rem}
.dfa-soon{text-align:center;padding:3rem 1rem}.dfa-soon span{font-size:3rem}
.dfa-hero{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--ink);color:#fff;border-radius:16px;padding:1.6rem 1.8rem;position:relative;overflow:hidden}
.dfa-hero h2{color:#fff;font-size:1.9rem}.dfa-hero p{margin:.2rem 0 1rem;color:#cfe6f3}
.dfa-hero__links{display:flex;gap:.6rem;flex-wrap:wrap}
.dfa-cast{display:flex;gap:.5rem;flex-wrap:wrap}.dfa-cast .dfa-av{transform:rotate(-4deg)}.dfa-cast .dfa-av:nth-child(even){transform:rotate(5deg)}
.dfa-av{display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border-radius:50%;background:#fff;border:3px solid var(--c,#009EDB);box-shadow:3px 3px 0 var(--c,#009EDB);font-size:1.7rem;flex:none}
.dfa-me{margin:.9rem 0}
.dfa-modes{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.7rem}
.dfa-mode,.dfa-track{display:flex;flex-direction:column;gap:.25rem;text-decoration:none;color:inherit;background:#fff;border:2px dashed #9fc4d8;border-radius:12px;padding:.9rem 1rem;transition:transform .12s,border-color .12s}
.dfa-mode:hover,.dfa-track:hover{transform:translateY(-2px);border-color:var(--sky)}
.dfa-mode span{font-size:1.7rem}.dfa-mode small,.dfa-track small{color:#4a6072;line-height:1.4}
.dfa-tracks{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.8rem}
.dfa-track__i{font-size:2rem}.dfa-track em{font-style:normal;color:var(--sky);font-weight:600;margin-top:.3rem}
.dfa-th{display:flex;gap:1rem;align-items:center}.dfa-th p{margin:0;color:#4a6072}
.dfa-lessons{list-style:none;margin:1rem 0;padding:0}.dfa-lessons li{margin:.5rem 0}
.dfa-lessons a{display:flex;gap:.9rem;align-items:flex-start;text-decoration:none;color:inherit;background:#fff;border:1px solid #d6e3ea;border-radius:12px;padding:.8rem 1rem}
.dfa-lessons b{flex:none;width:2rem;height:2rem;border-radius:50%;background:#e4f3fb;color:var(--sky);display:flex;align-items:center;justify-content:center}
.dfa-lessons .is-done b{background:#0a7a3d;color:#fff}.dfa-lessons small{display:block;color:#4a6072}.dfa-lessons em{font-style:normal;font-size:.85rem;color:#6a7f8f}
.dfa-crumb{color:#4a6072;margin:0}.dfa-body{max-width:42rem;line-height:1.7}
.dfa-points{background:#eef8fd;border-left:4px solid var(--sky);border-radius:0 10px 10px 0;padding:.8rem 1.1rem;margin:1.4rem 0;max-width:42rem}.dfa-points ul{margin:.4rem 0 0;padding-left:1.2rem}
.dfa-src{font-size:.85rem;color:#566b7a;max-width:42rem}
.dfa-quiz,.dfa-play{background:#fff;border:2px dashed #9fc4d8;border-radius:14px;padding:1rem 1.2rem;margin:1.4rem 0}
.dfa-pn{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem}.dfa-pn a{max-width:48%}
.dfa-prog{height:8px;background:#e3edf2;border-radius:99px;position:relative;margin:.2rem 0 .8rem}.dfa-prog span{position:absolute;right:0;top:-1.5rem;font-size:.85rem;color:#566b7a}.dfa-prog i{display:block;height:100%;background:var(--sky);border-radius:99px;transition:width .3s}
.dfa-say{display:flex;gap:.7rem;align-items:center;margin:.6rem 0}.dfa-say p{margin:0;background:#f1f6f9;border-radius:12px;padding:.55rem .8rem}
.dfa-card{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;border-left:6px solid var(--c,#009EDB);padding-left:.8rem}
.dfa-card>*{grid-column:2}.dfa-card>.dfa-av{grid-column:1;grid-row:1}.dfa-q{font-size:1.12rem;line-height:1.5;font-weight:600}
.dfa-time{height:6px;background:#e3edf2;border-radius:99px;overflow:hidden}.dfa-time i{display:block;height:100%;width:100%;background:#e0803a}
.dfa-opts{display:grid;gap:.5rem}.dfa-hint{margin:0;color:#566b7a;font-size:.9rem}
.dfa-opt,.dfa-bucket{font:inherit;text-align:left;background:#fff;border:2px solid #c9dbe6;border-radius:10px;padding:.65rem .9rem;cursor:pointer;color:var(--ink)}
.dfa-opt:hover:not(:disabled){border-color:var(--sky)}.dfa-opt.is-on,.dfa-opt.is-sel{border-color:var(--sky);background:#e4f3fb}
.dfa-opt.is-right{border-color:#0a7a3d;background:#e6f6ec}.dfa-opt.is-bad{border-color:#b32d2e;background:#fdecec}
.dfa-tf{text-align:center;font-weight:700}
.dfa-sortitems,.dfa-buckets{display:flex;flex-wrap:wrap;gap:.5rem}.dfa-bucket{border-style:dashed;font-weight:700;flex:1 1 8rem;text-align:center}
.dfa-it.is-set::after{content:" → " attr(data-b);font-weight:400;color:#566b7a}
.dfa-verdict{font-weight:800;margin:.8rem 0 .2rem}.dfa-verdict.is-ok{color:#0a7a3d}.dfa-verdict.is-no{color:#b32d2e}
.dfa-quip{font-style:italic;margin:.2rem 0}.dfa-why{margin:.3rem 0 .8rem}
.dfa-end{text-align:center}.dfa-big{font-size:2.8rem;font-weight:800;margin:.2rem 0}.dfa-newbadge{background:#fff7e6;border-radius:10px;padding:.5rem;font-size:1.05rem}
.dfa-actions,.dfa-share{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}
.dfa-board{list-style:none;padding:0;max-width:34rem}.dfa-board li{display:flex;align-items:center;gap:.8rem;padding:.6rem .8rem;border-bottom:1px solid #d6e3ea}.dfa-board b{width:1.8rem;height:1.8rem;border-radius:50%;background:var(--sky);color:#fff;display:flex;align-items:center;justify-content:center}.dfa-board li:first-child b{background:#e0a100}.dfa-board span{flex:1}.dfa-board small{display:block;color:#566b7a}
.dfa-badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.7rem}.dfa-badge{opacity:.4;filter:grayscale(1);background:#fff;border:2px dashed #c9dbe6;border-radius:12px;padding:.8rem;text-align:center}.dfa-badge.is-on{opacity:1;filter:none;border-color:#e0a100}.dfa-badge span{font-size:2rem;display:block}.dfa-badge small{display:block;color:#566b7a}
.dfa-disc{font-size:.8rem;color:#6a7f8f;margin-top:2rem}.dfa-opt-hide{margin-top:.6rem}
@media (max-width:560px){.dfa-hero{padding:1.2rem}.dfa-pn{flex-direction:column}.dfa-pn a{max-width:none}}
@media (prefers-reduced-motion:reduce){.dfa *{transition:none!important}}

.dfa-sharebar{margin:1.6rem 0;padding:1rem;border:1px solid #d5e0e8;border-radius:10px;background:#f6fafd}.dfa-sharebar>strong{display:block;margin-bottom:.5rem}
.dfa-sharebar__l{display:flex;flex-wrap:wrap;gap:.5rem}.dfa-sharebar small{display:block;margin-top:.6rem;color:#566b7a;font-size:.8rem}
.dfa-sh{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border-radius:999px;background:var(--c);color:#fff!important;font:600 .85rem system-ui,sans-serif;text-decoration:none;border:0;cursor:pointer}.dfa-sh:hover{filter:brightness(1.1)}.dfa-sh:focus-visible{outline:3px solid #0e2740;outline-offset:2px}.dfa-sh i{font-style:normal;font-weight:700}
.dfa-certbox{padding:.8rem 1rem;background:#eaf7ef;border-left:5px solid #1a9a55;border-radius:6px}
.dfa-certpanel{margin:1.2rem 0;padding:1rem;border:1px solid #bfe3f5;background:#f0f9fe;border-radius:10px}.dfa-certpanel ul{list-style:none;margin:.5rem 0 0;padding:0}.dfa-certpanel li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.25rem 0}.dfa-certpanel meter{width:110px}

/* DOCFAN ACADEMY: instructors and library */
.dap-head{margin:0 0 1rem}.dap-head h2{margin:0 0 .2rem}.dap-head p{margin:.1rem 0;color:#566b7a}
.dap-strip{margin:2rem 0 0}
.dap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.9rem;margin:.8rem 0}
.dap-card{display:flex;flex-direction:column;gap:.35rem;background:#fff;border:1px solid #d5e0e8;border-radius:12px;padding:.9rem 1rem;color:var(--ink);text-decoration:none}
.dap-card:hover{border-color:var(--sky);transform:translateY(-2px)}.dap-card:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.dap-card h3{margin:0;font-size:1.05rem;line-height:1.3}.dap-card p{margin:0;font-size:.92rem;color:#3d5565}.dap-card small{margin-top:auto;color:#566b7a}
.dap-chip{align-self:flex-start;font:700 .75rem system-ui,sans-serif;padding:.15rem .55rem;border-radius:999px;background:#e4f3fb;color:#0a5b85}
.dap-chip--course{background:#e8e4fb;color:#3d2a96}.dap-chip--book{background:#fff1d6;color:#8a5a00}.dap-chip--guide{background:#e6f6ec;color:#0a6a35}.dap-chip--notes{background:#fde9e9;color:#9a2a2a}
.dap-filter{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 1rem}.dap-filter input,.dap-filter select{font:inherit;padding:.45rem .6rem;border:1px solid #b9ccd8;border-radius:8px;background:#fff;max-width:100%}
.dap-pager{display:flex;justify-content:space-between;margin:1rem 0}
.dap-msg{padding:.6rem .9rem;border-radius:8px;margin:.8rem 0;border-left:5px solid}.dap-msg.is-ok{background:#eaf7ef;border-color:#1a9a55}.dap-msg.is-bad{background:#fdecec;border-color:#b32d2e}
.dap-item h2{margin:.4rem 0 .2rem;line-height:1.25}.dap-by,.dap-meta{margin:.15rem 0;color:#566b7a}.dap-sum{font-size:1.1rem;line-height:1.55;margin:.9rem 0}
.dap-ver{display:inline-block;font-size:.78rem;font-weight:700;color:#0a6a35;background:#e6f6ec;border-radius:999px;padding:0 .5rem}
.dap-body{max-width:44rem;line-height:1.7;font-size:1.03rem}.dap-body h2,.dap-body h3{margin:1.4rem 0 .4rem}.dap-body img{max-width:100%;height:auto}
.dap-embed{position:relative;padding-top:56.25%;margin:1rem 0;border-radius:12px;overflow:hidden;background:#000}.dap-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.dap-lessons{padding-left:1.3rem}.dap-lessons li{margin:.3rem 0}
.dap-disc{margin:1.8rem 0 .8rem;padding:.8rem 1rem;background:#f1f6f9;border-radius:10px;font-size:.88rem;color:#3d5565}
.dap-report{margin:.6rem 0;font-size:.9rem}.dap-report summary{cursor:pointer;color:#566b7a}.dap-report form{display:grid;gap:.5rem;max-width:26rem;margin-top:.5rem}
.dap-bio{max-width:44rem;line-height:1.65}
.dap-how{background:#f0f9fe;border:1px solid #bfe3f5;border-radius:12px;padding:.9rem 1.1rem;margin:1rem 0}.dap-how ol{margin:.4rem 0 0;padding-left:1.3rem}.dap-how li{margin:.25rem 0}
.dap-signin{margin:1rem 0;padding:.7rem 1rem;border:1px solid #d5e0e8;border-radius:10px}.dap-signin summary{cursor:pointer;font-weight:600}
.dap-form{display:grid;gap:.8rem;max-width:40rem;background:#fff;border:1px solid #d5e0e8;border-radius:14px;padding:1.1rem 1.2rem;margin:1rem 0}
.dap-form label{display:grid;gap:.25rem;font-weight:600}.dap-form label input[type=checkbox]{justify-self:start}
.dap-form input[type=text],.dap-form input[type=email],.dap-form input[type=password],.dap-form input[type=tel],.dap-form input[type=url],.dap-form input[type=number],.dap-form select,.dap-form textarea{font:inherit;font-weight:400;padding:.55rem .7rem;border:1px solid #b9ccd8;border-radius:8px;width:100%;box-sizing:border-box;background:#fff}
.dap-form textarea{min-height:7rem}.dap-form input:focus-visible,.dap-form select:focus-visible,.dap-form textarea:focus-visible{outline:3px solid var(--sky);outline-offset:1px}
.dap-form h3{margin:.2rem 0}.dap-form small{font-weight:400;color:#566b7a}
.dap-terms{max-height:14rem;overflow:auto;background:#f6fafd;border:1px solid #d5e0e8;border-radius:10px;padding:.7rem .9rem;font-size:.88rem}
.dap-level{margin:.4rem 0}
.dap-table{width:100%;border-collapse:collapse;margin:.8rem 0}.dap-table th,.dap-table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid #d6e3ea;vertical-align:top}.dap-table small{color:#566b7a}.dap-note{color:#9a2a2a}
.dap-group{grid-column:1/-1;display:flex;flex-direction:column}
.dap-group>.dap-card{border-bottom-left-radius:0;border-bottom-right-radius:0}
.dap-sub{border:1px solid #d5e0e8;border-top:0;border-radius:0 0 12px 12px;background:#f5f9fc;padding:.7rem 1rem .8rem 1.4rem}
.dap-sub ol{margin:.35rem 0 0;padding-left:1.2rem;columns:2;column-gap:2rem}.dap-sub li{break-inside:avoid;margin:.2rem 0}.dap-sub small{color:#566b7a}
.dap-forgot{margin:.5rem 0 0}.dap-forgot small{display:block;color:#566b7a}
@media (max-width:700px){.dap-sub ol{columns:1}}
@media (max-width:560px){.dap-table thead{display:none}.dap-table tr{display:block;border-bottom:2px solid #d6e3ea;padding:.4rem 0}.dap-table td{display:block;border:0;padding:.2rem 0}.dap-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.dap-card{transition:none}.dap-card:hover{transform:none}}

/* DOCFAN ACADEMY phase 2: ratings, comments, activity */
.dap-feedback{margin:2rem 0 1rem;padding-top:1rem;border-top:1px solid #d5e0e8;max-width:44rem}.dap-feedback h3{margin:1.2rem 0 .4rem}
.dap-stars{color:#e0a100;letter-spacing:.08em;white-space:nowrap}
.dap-rate{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.4rem 0}
.dap-star{font:700 .9rem system-ui,sans-serif;padding:.35rem .7rem;border:2px solid #c9dbe6;border-radius:999px;background:#fff;color:var(--ink);cursor:pointer}.dap-star:hover,.dap-star.is-on{border-color:#e0a100;background:#fff7e6}.dap-star:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.dap-clist{list-style:none;margin:.6rem 0;padding:0}.dap-clist--kids{margin:.4rem 0 .2rem 1.1rem;padding-left:.8rem;border-left:3px solid #bfe3f5}
.dap-c{padding:.7rem 0;border-bottom:1px solid #e3edf2}.dap-clist--kids .dap-c{border-bottom:0;padding:.4rem 0}.dap-c.is-instructor{background:#f6fafd;border-radius:8px;padding:.7rem .8rem}
.dap-c__h{margin:0 0 .2rem}.dap-c__t{margin:.1rem 0 .4rem;line-height:1.55}.dap-c small{color:#566b7a}
.dap-creport{display:inline-block;margin:0 .8rem 0 0;font-size:.85rem;vertical-align:top}.dap-creport summary{cursor:pointer;color:#566b7a}.dap-creport .dap-form{margin:.4rem 0;padding:.7rem}
.dap-cnew summary{display:inline-block;cursor:pointer;list-style:none}.dap-cnew summary::-webkit-details-marker{display:none}
.dap-activity{background:#fff7e6;border-left:5px solid #e0a100;border-radius:8px;padding:.6rem .9rem;margin:.8rem 0}
.dap-prefs{margin:.6rem 0;font-size:.92rem}
.dap-cm{background:#fff;border:1px solid #d5e0e8;border-radius:10px;padding:.7rem .9rem;margin:.6rem 0;max-width:46rem}.dap-cm.is-held{border-color:#e0a100;background:#fffbf0}.dap-cm p{margin:.2rem 0}

/* DOCFAN ACADEMY phase 3: paid items */
.dap-price{color:#8a5a00;white-space:nowrap}
.dap-buy{margin:1.4rem 0;padding:1rem 1.2rem;background:#fff7e6;border:2px solid #e0a100;border-radius:14px;max-width:44rem}
.dap-buy h3{margin:0 0 .2rem}.dap-buy__price{font-size:1.6rem;font-weight:800;margin:.1rem 0 .6rem}.dap-buy__price small{font-size:.85rem;font-weight:400;color:#566b7a}
.dap-buy__steps{padding-left:1.2rem;margin:.4rem 0 .8rem}.dap-buy__steps li{margin:.35rem 0}.dap-buy__acc{background:#fff;border:1px dashed #c9a24a;border-radius:8px;padding:.5rem .8rem;margin:.3rem 0}.dap-buy__acc p{margin:.15rem 0}
.dap-pricebox{border:1px solid #d5e0e8;border-radius:10px;padding:.6rem .9rem;margin:.4rem 0}.dap-pricebox legend{font-weight:700;padding:0 .4rem}

/* DOCFAN ACADEMY: the instructor's own space */
.dap-whoami{margin:0 0 .8rem;padding:.45rem .8rem;background:#f1f6f9;border-radius:8px;font-size:.9rem;color:#3d5565}
.dap-ws{display:flex;flex-wrap:wrap;gap:.35rem;margin:.8rem 0 1.2rem;padding-bottom:.7rem;border-bottom:2px solid #d5e0e8}
.dap-ws a{padding:.4rem .85rem;border-radius:999px;border:2px solid #c9dbe6;background:#fff;color:inherit;text-decoration:none;font-weight:600;font-size:.92rem}
.dap-ws a:hover{border-color:#7fb6d4}.dap-ws a.is-on{background:#0e5d86;border-color:#0e5d86;color:#fff}.dap-ws a:focus-visible{outline:3px solid #7fb6d4;outline-offset:2px}
.dap-ws .dap-ws__pub{margin-left:auto;border-style:dashed}
.dap-head--ws h2{margin-bottom:.2rem}.dap-head--ws p{margin:.2rem 0}
.dap-team{display:inline-block;font-size:.78rem;font-weight:700;color:#0a4f75;background:#e3f2fa;border-radius:999px;padding:0 .55rem}
.dap-stats{list-style:none;margin:1rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.7rem}
.dap-stats li{background:#fff;border:1px solid #d5e0e8;border-radius:12px;padding:.7rem .9rem;display:flex;flex-direction:column;gap:.1rem}
.dap-stats strong{font-size:1.45rem;line-height:1.2}.dap-stats span{color:#566b7a;font-size:.88rem}
.dap-steps{margin:.4rem 0 0;padding-left:1.3rem}.dap-steps li.is-done{color:#0a6a35}
.dap-attn{padding-left:1.1rem}.dap-attn li{margin:.4rem 0}
.dap-cblock{border:1px solid #d5e0e8;border-radius:12px;background:#fff;padding:.7rem 1rem;margin:.7rem 0}.dap-cblock h4{margin:0 0 .2rem}.dap-cblock p{margin:.25rem 0}
.dap-clessons{margin:.3rem 0 0;padding-left:1.3rem}.dap-clessons li{margin:.25rem 0}
.dap-filters a{display:inline-block;margin:0 .4rem .3rem 0;padding:.2rem .7rem;border:2px solid #c9dbe6;border-radius:999px;text-decoration:none;color:inherit;font-size:.9rem}.dap-filters a.is-on{background:#0e5d86;border-color:#0e5d86;color:#fff}
.dap-acct{margin:1.2rem 0 0;color:#566b7a;font-size:.9rem}
@media (max-width:560px){.dap-ws .dap-ws__pub{margin-left:0}}
