:root{--navy:#102a43;--navy2:#173f5f;--ink:#172b3a;--muted:#607486;--paper:#f4f7f8;--white:#fff;--mint:#22c99a;--mint-soft:#dcf8ef;--blue:#2f6fed;--blue-soft:#e9f0ff;--line:#dce5ea;--amber:#f4a340;--red:#d64a5f;--shadow:0 18px 50px rgba(20,42,58,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55}button{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid rgba(47,111,237,.35);outline-offset:3px}
.topbar{height:82px;padding:0 28px;background:var(--navy);color:white;display:flex;align-items:center;gap:24px;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;color:white;text-decoration:none;flex:none}.brand-logo{display:block;width:188px;height:72px;object-fit:contain;border-radius:12px}.topbar nav{display:flex;align-self:stretch;margin:auto}.navbtn{border:0;background:transparent;color:#b9cad6;padding:0 14px;border-bottom:3px solid transparent;font-weight:650;cursor:pointer}.navbtn:hover,.navbtn.active{color:white;border-bottom-color:var(--mint)}.iconbtn{width:40px;height:40px;border:1px solid #426078;border-radius:50%;background:transparent;color:white;cursor:pointer;font-size:1.2rem}
.view{display:none}.view.active{display:grid}#practice{grid-template-columns:280px minmax(0,1fr);min-height:calc(100vh - 72px)}.sidebar{background:white;border-right:1px solid var(--line);padding:28px 20px;display:flex;flex-direction:column}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:.75rem;font-weight:850;color:#557083;margin:0 0 6px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#eaf0f3;border-radius:10px;padding:4px;margin-top:12px}.track{border:0;background:transparent;padding:8px;border-radius:7px;color:var(--muted);font-weight:750;cursor:pointer}.track.active{background:white;color:var(--navy);box-shadow:0 2px 9px rgba(16,42,67,.12)}.domain-list{display:grid;gap:5px;margin:26px 0}.domain-btn{display:flex;gap:12px;align-items:center;text-align:left;border:0;background:transparent;padding:10px;border-radius:11px;color:#536979;cursor:pointer}.domain-btn:hover{background:#f2f6f7}.domain-btn.active{background:var(--mint-soft);color:#0d755c;font-weight:750}.domain-letter{width:31px;height:31px;border:1px solid var(--line);background:white;border-radius:9px;display:grid;place-items:center;font-weight:850;flex:none}.domain-btn.active .domain-letter{background:var(--mint);color:var(--navy);border-color:var(--mint)}.tip-card{margin-top:auto;background:var(--navy);color:white;border-radius:15px;padding:17px;display:flex;gap:12px}.tip-card p{font-size:.82rem;color:#c7d6df;margin:4px 0 0;line-height:1.45}.mini-icon{color:var(--mint);font-size:1.5rem}
.workspace{padding:34px clamp(24px,5vw,72px);max-width:1050px;width:100%;margin:0 auto}.workspace-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}h1,h2,p{overflow-wrap:break-word}.workspace h1,.content-view h1{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.12;margin:0;letter-spacing:-.035em;color:var(--navy)}.score-chip{background:white;border:1px solid var(--line);border-radius:30px;padding:8px 14px;font-size:.88rem;color:var(--muted);white-space:nowrap}.score-chip span:first-child{color:#0f9270;font-weight:850}.question-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,4vw,38px);box-shadow:var(--shadow)}.question-top{display:flex;align-items:center;justify-content:space-between}.question-count{color:var(--muted);font-size:.88rem;font-weight:700}.bookmark{font-size:1.7rem;border:0;background:transparent;color:#80929f;cursor:pointer}.bookmark.saved{color:var(--amber)}.question-card h2{font-size:clamp(1.1rem,2vw,1.38rem);line-height:1.45;margin:18px 0 24px}.answers{display:grid;gap:11px}.answer{width:100%;text-align:left;border:1.5px solid var(--line);background:white;border-radius:13px;padding:14px 16px;display:flex;gap:13px;align-items:flex-start;cursor:pointer;color:var(--ink)}.answer:hover{border-color:#9eb3c1;background:#fbfcfc}.answer.selected{border-color:var(--blue);background:var(--blue-soft)}.answer.correct{border-color:var(--mint);background:var(--mint-soft)}.answer.incorrect{border-color:var(--red);background:#fff0f2}.letter{width:27px;height:27px;border-radius:7px;background:#edf2f4;display:grid;place-items:center;font-size:.8rem;font-weight:850;flex:none}.answer.selected .letter{background:var(--blue);color:white}.answer.correct .letter{background:var(--mint);color:var(--navy)}.answer.incorrect .letter{background:var(--red);color:white}.feedback{margin-top:22px;padding:18px;border-radius:13px;background:#f1f7f5;border-left:4px solid var(--mint)}.feedback.wrong{background:#fff4f5;border-left-color:var(--red)}.feedback-title{display:flex;gap:8px;align-items:center}.feedback p{margin:7px 0 10px}.feedback details{color:var(--muted)}.feedback summary{cursor:pointer;font-weight:700;color:var(--ink)}#distractors{font-size:.92rem;margin-top:8px}.question-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:12px}.primary,.ghost{border-radius:10px;padding:10px 17px;font-weight:800;cursor:pointer}.primary{border:0;background:var(--navy);color:white}.primary:hover{background:var(--navy2)}.primary:disabled{opacity:.4;cursor:not-allowed}.ghost{border:1px solid var(--line);background:white;color:var(--navy)}.ghost:hover{background:#f5f8f9}.concept-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.concept-pill{background:white;border:1px solid var(--line);border-radius:13px;padding:14px}.concept-pill small{display:block;color:var(--muted)}.concept-pill strong{color:var(--navy);font-size:.92rem}
.content-view{padding:46px clamp(24px,6vw,90px);max-width:1280px;margin:auto}.page-intro{max-width:720px;margin-bottom:30px}.page-intro>p:last-child{color:var(--muted);font-size:1.02rem}.guide-layout{display:grid;grid-template-columns:280px 1fr;gap:22px}.guide-menu{display:grid;gap:7px;align-content:start}.guide-topic{border:1px solid var(--line);background:white;text-align:left;border-radius:11px;padding:12px 14px;color:var(--ink);cursor:pointer;font-weight:700}.guide-topic.active{background:var(--navy);color:white;border-color:var(--navy)}.guide-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(24px,4vw,42px);box-shadow:var(--shadow)}.guide-card h2{font-size:1.75rem;margin:0 0 6px;color:var(--navy)}.guide-label{color:#0b8667;font-weight:850;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.guide-block{border-top:1px solid var(--line);padding-top:17px;margin-top:17px}.guide-block h3{margin:0 0 5px;font-size:1rem}.guide-block p{margin:0;color:#455b6a}.memory{background:var(--mint-soft);border-radius:12px;padding:14px 16px;margin-top:18px;color:#0b6954}.compare-section{margin-top:46px}.compare-section h2{margin:0;color:var(--navy)}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.compare-card{background:white;border:1px solid var(--line);border-radius:15px;padding:20px}.compare-card h3{margin:0 0 12px;color:var(--navy)}.compare-row{padding:9px 0;border-top:1px solid var(--line);font-size:.9rem}.compare-row strong{display:block;color:#0d7a60}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:28px 0}.stat{background:var(--navy);color:white;border-radius:16px;padding:22px}.stat span,.stat small{display:block;color:#bfd0da}.stat strong{font-size:2rem;display:block;color:var(--mint);margin:3px 0}.progress-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:25px}.panel-head{display:flex;justify-content:space-between;align-items:start;gap:15px}.panel h2{margin:0;color:var(--navy)}.bars{display:grid;gap:15px;margin-top:20px}.bar-row{display:grid;grid-template-columns:170px 1fr 42px;gap:12px;align-items:center;font-size:.88rem}.trackbar{height:10px;background:#e8eef1;border-radius:10px;overflow:hidden}.fill{height:100%;background:var(--mint);border-radius:10px}.focus-panel{background:linear-gradient(145deg,var(--navy),#1b506c);color:white}.focus-panel h2{color:white;font-size:1.7rem}.focus-panel p:not(.eyebrow){color:#c5d6df}.focus-panel .eyebrow{color:var(--mint)}.focus-panel .primary{background:var(--mint);color:var(--navy)}.saved-panel{margin-top:18px}.small{padding:7px 11px;font-size:.84rem}.saved-item{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid var(--line)}.saved-item p{margin:0}.saved-item small{color:var(--muted)}.empty{color:var(--muted);padding:18px 0}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--navy);color:white;border-radius:10px;padding:10px 16px;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translate(-50%,0)}
.free-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.exam-card{position:relative;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.exam-card.featured{background:linear-gradient(145deg,var(--navy),#1b506c);color:white}.exam-card.featured h2{color:white}.exam-card.featured p:not(.eyebrow){color:#c8d8e0}.exam-card.featured .eyebrow{color:var(--mint)}.exam-card.featured .primary{background:var(--mint);color:var(--navy)}.exam-card h2{margin:3px 0 8px;color:var(--navy);font-size:1.55rem}.exam-card p{color:var(--muted)}.badge{position:absolute;right:20px;top:20px;padding:5px 10px;border-radius:20px;font-size:.76rem;font-weight:850}.badge.free{background:var(--mint-soft);color:#08745a}.badge.premium{background:#fff2d8;color:#8d5b00}.catalog-head{display:flex;justify-content:space-between;align-items:end;margin:42px 0 18px}.catalog-head h2{margin:0;color:var(--navy)}.exam-track{width:210px;margin:0}.catalog-track{border:0;background:transparent;padding:8px;border-radius:7px;color:var(--muted);font-weight:750;cursor:pointer}.catalog-track.active{background:white;color:var(--navy);box-shadow:0 2px 9px rgba(16,42,67,.12)}.mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.mock-meta{display:flex;justify-content:space-between;margin:18px 0;color:var(--muted);font-size:.88rem}.price{font-size:1.7rem;font-weight:850;color:var(--navy)}.purchase-btn{width:100%;margin-top:10px}.pricing-note{color:var(--muted);font-size:.86rem;margin-top:14px}
body.dark{--paper:#0c1d2a;--white:#122938;--ink:#e7f1f5;--muted:#9db0bc;--line:#294353;--navy:#071722;--navy2:#173f5f;--shadow:0 18px 50px rgba(0,0,0,.18)}body.dark .sidebar,body.dark .question-card,body.dark .score-chip,body.dark .concept-pill,body.dark .guide-card,body.dark .guide-topic,body.dark .compare-card,body.dark .panel,body.dark .answer,body.dark .ghost{background:#122938}body.dark .workspace h1,body.dark .content-view h1,body.dark h2,body.dark .guide-card h2,body.dark .compare-card h3,body.dark .panel h2,body.dark summary{color:#edf7fa}body.dark .answer:hover,body.dark .ghost:hover{background:#173446}body.dark .answer.selected{background:#18385a}body.dark .feedback{background:#153a34}body.dark .feedback.wrong{background:#42242a}body.dark .domain-btn:hover{background:#183343}body.dark .stat,body.dark .focus-panel{background:#071722}
@media(max-width:850px){.topbar{height:74px;padding:0 12px;gap:8px}.brand-logo{width:118px;height:64px}.topbar nav{overflow:auto}.navbtn{padding:0 8px;font-size:.8rem}#practice{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:18px}.domain-list{display:flex;overflow:auto;margin:16px 0 0}.domain-btn{min-width:max-content}.tip-card{display:none}.workspace{padding:24px 16px}.guide-layout,.progress-layout{grid-template-columns:1fr}.guide-menu{display:flex;overflow:auto}.guide-topic{min-width:max-content}.compare-grid{grid-template-columns:1fr}.concept-strip{grid-template-columns:1fr}.bar-row{grid-template-columns:125px 1fr 38px}.stats{grid-template-columns:1fr}.content-view{padding:30px 16px}.workspace-head{align-items:start}.score-chip{font-size:.75rem}.question-actions{align-items:stretch;flex-direction:column-reverse}.question-actions button{width:100%}.free-grid,.mock-grid{grid-template-columns:1fr}.catalog-head{align-items:start;gap:16px;flex-direction:column}.exam-track{width:100%}}
@media(max-width:600px){.topbar{height:68px;padding:0 9px}.brand-logo{width:84px;height:58px}.navbtn{padding:0 7px;font-size:.76rem}.account-btn{display:none}.iconbtn{width:34px;height:34px}.topbar nav{margin-left:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.renewal-note{font-size:.78rem!important;font-weight:750;color:var(--muted)!important;margin:12px 0 0;text-align:center}
.safmed-controls{display:flex;gap:14px;align-items:end;background:white;border:1px solid var(--line);border-radius:15px;padding:18px}.safmed-controls label{display:grid;gap:5px;color:var(--muted);font-size:.86rem;font-weight:750}.safmed-controls select{min-width:170px;border:1px solid var(--line);border-radius:9px;padding:10px;background:var(--white);color:var(--ink);font:inherit}.safmed-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.safmed-stats div{background:var(--navy);color:white;border-radius:13px;padding:13px 16px}.safmed-stats span{display:block;color:#bcd0dc;font-size:.78rem}.safmed-stats strong{font-size:1.5rem;color:var(--mint)}.flashcard{width:100%;min-height:310px;border:1px solid var(--line);border-radius:22px;background:white;color:var(--navy);padding:38px;box-shadow:var(--shadow);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.flashcard:disabled{cursor:default}.flashcard strong{font-size:clamp(1.35rem,3vw,2.1rem);max-width:760px;line-height:1.35}.flashcard small{color:var(--muted);margin-top:25px}.card-side{color:#0b8667;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:850;margin-bottom:14px}.safmed-actions{display:flex;justify-content:center;gap:12px;margin-top:16px}.safmed-actions button{min-width:130px}.safmed-note{text-align:center;color:var(--muted);font-size:.88rem}
.safmed-access{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:14px}.safmed-access>div{background:white;border:1px solid var(--line);border-radius:14px;padding:18px}.safmed-access strong{display:block;margin:8px 0 3px;color:var(--navy)}.safmed-access p{margin:0;color:var(--muted);font-size:.9rem}.inline-badge{position:static;display:inline-block}.premium-domain{opacity:.65}
.legal-view{display:none}.legal-view.active{display:block}.about-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);gap:18px}.about-side{display:grid;gap:18px;align-content:start}.legal-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,3vw,34px);box-shadow:var(--shadow)}.legal-card h2{color:var(--navy);font-size:1.35rem;line-height:1.25;margin:3px 0 16px}.legal-card p{color:var(--muted);margin:0 0 14px}.legal-card p:last-child{margin-bottom:0}.legal-card a{color:#126b9a;font-weight:750}.privacy-reminder{background:var(--mint-soft);color:#17604f!important;border-radius:11px;padding:13px}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.policy-date{text-align:right;color:var(--muted);font-size:.82rem;margin:14px 2px 0}.site-footer{background:var(--navy);color:white;padding:24px clamp(20px,5vw,72px);display:grid;grid-template-columns:1fr auto;gap:10px 24px;align-items:center}.site-footer>div:first-child{display:grid}.site-footer span,.site-footer small{color:#b9cad6}.site-footer small{grid-column:1/-1}.footer-links{display:flex;gap:18px;align-items:center}.footer-links button,.footer-links a{border:0;background:transparent;color:white;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;padding:4px}.footer-links button:hover,.footer-links a:hover{text-decoration:underline}
body.dark .legal-card{background:var(--white)}body.dark .legal-card h2{color:#edf7fa}body.dark .legal-card a{color:#75c7ee}body.dark .privacy-reminder{background:#153a34;color:#bfe9db!important}
@media(max-width:850px){.about-layout,.policy-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}.site-footer small{grid-column:auto}.footer-links{flex-wrap:wrap}.policy-date{text-align:left}}
@media(max-width:850px){.safmed-controls{align-items:stretch;flex-direction:column}.safmed-controls select{width:100%}.safmed-stats{grid-template-columns:repeat(2,1fr)}.safmed-access{grid-template-columns:1fr}}
.home-view{max-width:none;padding:0}.home-hero{padding:64px clamp(24px,7vw,100px);display:grid;grid-template-columns:1.4fr .7fr;gap:50px;align-items:center;background:linear-gradient(135deg,#eef8f6,#f4f7f8)}.home-hero h1{font-size:clamp(2.3rem,5vw,4.5rem);max-width:850px}.home-hero>div>p:not(.eyebrow){font-size:1.12rem;color:var(--muted);max-width:680px}.home-actions{display:flex;gap:12px;margin-top:25px}.hero-meter{background:var(--navy);color:white;border-radius:24px;padding:30px;box-shadow:var(--shadow)}.hero-meter span,.hero-meter small{display:block;color:#bfd0da}.hero-meter strong{font-size:4rem;line-height:1;color:var(--mint);display:block;margin:10px 0}.hero-meter p{color:#c7d7df;margin-bottom:0}.meter-line{height:8px;background:#294b62;border-radius:10px;margin:24px 0}.meter-line i{display:block;width:78%;height:100%;background:var(--mint);border-radius:10px}.price-section{padding:54px clamp(24px,7vw,100px)}.section-heading{text-align:center;max-width:650px;margin:0 auto 28px}.section-heading h2,.free-summary h2{margin:0;color:var(--navy);font-size:2rem}.section-heading>p:last-child{color:var(--muted)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1150px;margin:auto}.price-card{position:relative;background:white;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.price-card.popular{border:2px solid var(--mint);transform:translateY(-8px)}.best-badge{position:absolute;right:18px;top:18px;background:var(--mint-soft);color:#08745a;border-radius:18px;padding:5px 10px;font-size:.74rem;font-weight:850}.plan-label{font-weight:850;color:var(--navy)}.plan-price{font-size:2rem;font-weight:900;color:var(--navy);margin:12px 0}.plan-price small{font-size:.8rem;color:var(--muted);font-weight:600}.price-card p,.price-card li{color:var(--muted)}.price-card ul{padding-left:20px;min-height:135px}.price-card .primary{width:100%}.free-summary{margin:0 clamp(24px,7vw,100px) 60px;background:var(--navy);color:white;border-radius:22px;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:25px}.free-summary h2{color:white}.free-summary p:not(.eyebrow){color:#c4d5df}.free-summary .eyebrow{color:var(--mint)}.free-summary .primary{background:var(--mint);color:var(--navy);white-space:nowrap}#practice.locked{position:relative}.premium-overlay{position:absolute;z-index:5;left:calc(280px + 4vw);right:4vw;top:52px;max-width:700px;margin:auto;background:white;border:1px solid var(--line);border-radius:22px;padding:36px;text-align:center;box-shadow:0 25px 80px rgba(16,42,67,.24)}.premium-overlay h2{font-size:1.8rem;color:var(--navy);margin:4px 0}.premium-overlay>p:not(.eyebrow){color:var(--muted)}.lock-icon{width:48px;height:48px;background:var(--mint-soft);color:#08745a;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px}.overlay-prices{display:flex;justify-content:center;gap:10px;margin:22px 0;flex-wrap:wrap}.overlay-prices span{background:var(--paper);border-radius:9px;padding:8px 12px;color:var(--muted)}#practice.locked .workspace{filter:blur(4px);opacity:.32;pointer-events:none;user-select:none}
@media(max-width:850px){.home-hero{grid-template-columns:1fr;padding:38px 18px}.price-grid{grid-template-columns:1fr}.price-card.popular{transform:none}.free-summary{margin:0 16px 35px;align-items:flex-start;flex-direction:column}.premium-overlay{left:16px;right:16px;top:210px;padding:25px}}
#practice:not(.locked) .premium-overlay{display:none}
.premium-overlay{display:none}.preview-note{background:#fff4da;border:1px solid #eed187;color:#6e4c05;border-radius:12px;padding:11px 14px;margin-bottom:14px}
.access-passes{padding:0 clamp(24px,7vw,100px) 54px}.pass-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;max-width:1250px;margin:auto}.pass-card{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column}.pass-card span{font-weight:800;color:var(--navy)}.pass-card>strong{font-size:1.8rem;color:#0b8667;margin:8px 0 0}.pass-card>small{color:var(--muted);font-size:.72rem;font-weight:750}.pass-card p{color:var(--muted);font-size:.9rem;flex:1}.pass-card button{width:100%}.all-pass{background:var(--navy);border-color:var(--navy)}.all-pass span,.all-pass p,.all-pass>small{color:white}.all-pass>strong{color:var(--mint)}.all-pass .primary{background:var(--mint);color:var(--navy)}@media(max-width:1050px){.pass-grid{grid-template-columns:repeat(2,1fr)}.all-pass{grid-column:1/-1}}@media(max-width:600px){.pass-grid{grid-template-columns:1fr}.all-pass{grid-column:auto}}
.account-controls{display:flex;align-items:center;gap:8px}.account-btn{border:1px solid var(--line);background:var(--white);color:var(--navy);border-radius:10px;padding:9px 13px;font-weight:800;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.account-dialog{width:min(460px,calc(100% - 28px));border:1px solid var(--line);border-radius:20px;padding:28px;background:var(--white);color:var(--ink);box-shadow:0 28px 90px rgba(7,23,34,.35)}.account-dialog::backdrop{background:rgba(7,23,34,.62);backdrop-filter:blur(3px)}.account-dialog h2{color:var(--navy);margin:3px 0 8px}.dialog-close-row{display:flex;justify-content:flex-end;margin:-14px -14px 0}.dialog-copy{color:var(--muted);line-height:1.5}.auth-form{display:grid;gap:13px;margin-top:20px}.auth-form label{display:grid;gap:6px;color:var(--muted);font-weight:750;font-size:.9rem}.auth-form input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--paper);color:var(--ink);font:inherit}.password-field{position:relative;display:block}.password-field input{padding-right:64px}.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#126b9a;font-weight:800;cursor:pointer;padding:6px}.field-hint{color:var(--muted);margin-top:-8px}.field-hint.invalid{color:var(--red)}.text-btn{border:0;background:transparent;color:#126b9a;font-weight:750;cursor:pointer;padding:6px}.form-message{min-height:1.2em;margin:0;color:var(--muted);font-size:.88rem}.form-message.error{color:var(--red)}.entitlement-list{display:grid;gap:8px;margin:18px 0}.entitlement-item{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:11px 13px}.entitlement-item strong,.entitlement-item small{display:block}.entitlement-item small{color:var(--muted);margin-top:3px}body.dark .account-btn,body.dark .account-dialog{background:var(--white);color:var(--ink)}body.dark .account-btn,body.dark .account-dialog h2{color:#edf7fa}@media(max-width:850px){.account-btn{font-size:.8rem;padding:8px}.account-controls{margin-left:auto}}

/* Complete dark-theme coverage for every surface added to the study app. */
.purchase-dialog{width:min(560px,calc(100% - 28px))}.confirmation-card{display:grid;gap:0;margin:20px 0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.confirmation-row{display:grid;grid-template-columns:145px 1fr;gap:16px;padding:12px 14px;background:var(--paper);border-top:1px solid var(--line)}.confirmation-row:first-child{border-top:0}.confirmation-row span{color:var(--muted);font-size:.88rem}.confirmation-row strong{text-align:right;color:var(--navy);overflow-wrap:anywhere}.confirmation-note{color:var(--muted);font-size:.86rem;line-height:1.5}.confirmation-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.confirmation-actions button{flex:1;min-width:180px}body.dark .confirmation-row{background:var(--paper)}body.dark .confirmation-row strong{color:#edf7fa}@media(max-width:520px){.confirmation-row{grid-template-columns:1fr;gap:2px}.confirmation-row strong{text-align:left}.confirmation-actions button{width:100%}}@media print{body>*{display:none!important}#purchaseDialog[open]{display:block!important;position:static!important;width:100%!important;max-width:none!important;border:0!important;box-shadow:none!important}.purchase-dialog .dialog-close-row,.purchase-dialog .confirmation-actions{display:none!important}}
body.dark .home-hero{background:linear-gradient(135deg,#102b3a,#0c1d2a)}
body.dark .price-card,
body.dark .pass-card:not(.all-pass),
body.dark .exam-card:not(.featured),
body.dark .safmed-controls,
body.dark .safmed-access>div,
body.dark .flashcard,
body.dark .premium-overlay{background:#122938;color:var(--ink)}
body.dark .plan-label,
body.dark .plan-price,
body.dark .price,
body.dark .pass-card:not(.all-pass) span,
body.dark .safmed-access strong,
body.dark .concept-pill strong,
body.dark .flashcard,
body.dark .ghost,
body.dark .track.active,
body.dark .catalog-track.active{color:#edf7fa}
body.dark .segmented,
body.dark .trackbar,
body.dark .meter-line{background:#0a1a25}
body.dark .track.active,
body.dark .catalog-track.active{background:#1c3b4d;box-shadow:none}
body.dark .domain-letter,
body.dark .letter{background:#203b4b;border-color:var(--line)}
body.dark .eyebrow{color:#9bb9c8}
body.dark .featured .eyebrow,
body.dark .free-summary .eyebrow,
body.dark .focus-panel .eyebrow{color:var(--mint)}
body.dark .preview-note{background:#3b3017;border-color:#725d25;color:#ffe4a3}
.question-visual{margin:-6px 0 22px;padding:14px;background:#fbfdfe;border:1px solid var(--line);border-radius:14px;color:var(--ink)}
.exam-summary{margin-top:18px;padding:24px;background:var(--mint-soft);border:1px solid #a9e8d5;border-radius:var(--radius);text-align:center}.exam-summary h2{margin:2px 0 14px;color:var(--navy)}.exam-summary-score{display:flex;align-items:baseline;justify-content:center;gap:12px;margin-bottom:10px}.exam-summary-score strong{font-size:2.5rem;line-height:1;color:#08745a}.exam-summary-score span{font-weight:800;color:var(--navy)}.exam-summary p:not(.eyebrow){color:#315c50}.exam-summary .ghost{margin-top:8px}body.dark .exam-summary{background:#153a34;border-color:#236454}body.dark .exam-summary h2,body.dark .exam-summary-score span{color:#edf7fa}body.dark .exam-summary p:not(.eyebrow){color:#c4ddd6}@media(max-width:520px){.exam-summary-score{align-items:center;flex-direction:column;gap:5px}}
.question-visual svg{display:block;width:100%;height:auto;max-height:360px;font:12px system-ui,sans-serif;overflow:visible}
.graph-grid{stroke:#dce5ea;stroke-width:1}.graph-axis{stroke:currentColor;stroke-width:1.5}.graph-title,.axis-label,.phase-label,.graph-value{fill:currentColor;font-weight:700}.graph-line{fill:none;stroke-width:3}.graph-line-0{stroke:#1976a3}.graph-line-1{stroke:#d97706}.graph-line-2{stroke:#149174}.graph-point-0{fill:#1976a3}.graph-point-1{fill:#d97706}.graph-point-2{fill:#149174}.graph-bar{fill:#1976a3}.phase-line{stroke:#6c7f8b;stroke-width:1.5;stroke-dasharray:6 4}.criterion-line{fill:none;stroke:#d97706;stroke-width:2;stroke-dasharray:7 5}.legend-0{fill:#1976a3;font-weight:700}.legend-1{fill:#d97706;font-weight:700}.legend-2{fill:#149174;font-weight:700}
body.dark .question-visual{background:#0b202d}body.dark .graph-grid{stroke:#294353}
:root{--card:var(--white);--teal:#0b8667;--gold:var(--amber);--pale:var(--mint-soft)}
.score-chip{border-radius:18px;text-align:center}.score-chip small{display:block;color:var(--muted);font-size:.72rem}.question-nav-group{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:850px){.question-nav-group{display:grid;grid-template-columns:1fr 1fr;width:100%}.question-nav-group button{width:100%}}
.guide-track-controls{display:flex;gap:.75rem;justify-content:center;margin:1.4rem 0 1.75rem}.guide-track{border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);font:inherit;font-weight:800;padding:.75rem 1.2rem;cursor:pointer}.guide-track:hover,.guide-track.active{background:var(--navy);border-color:var(--navy);color:#fff}.domain-guide-topic{display:flex;flex-direction:column;gap:.2rem;width:100%;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font:inherit;font-weight:700;text-align:left;padding:.8rem .9rem;cursor:pointer}.domain-guide-topic span{color:var(--teal);font-size:.74rem;letter-spacing:.07em;text-transform:uppercase}.domain-guide-topic:hover,.domain-guide-topic.active{border-color:var(--teal);box-shadow:0 5px 16px rgba(12,92,104,.12)}.domain-guide-topic.active{background:var(--pale)}.domain-guide-card{min-width:0}.role-note{border-left:4px solid var(--gold);background:#fff8e8;border-radius:0 10px 10px 0;padding:.8rem 1rem;font-weight:700}.guide-overview{font-size:1.03rem;line-height:1.7}.task-list,.guide-list{margin:.7rem 0 0;padding-left:1.25rem}.task-list{columns:2;column-gap:2rem}.task-list li,.guide-list li,.memory li{break-inside:avoid;margin:.42rem 0;line-height:1.5}.quick-guide-layout{margin-top:1rem}.memory ol{margin:.65rem 0 0;padding-left:1.25rem}body.dark .role-note{background:#392f18}body.dark .domain-guide-topic.active{background:#153d45}@media(max-width:700px){.guide-track-controls{align-items:stretch;flex-direction:column}.guide-track{width:100%}.task-list{columns:1}}
