:root{--bg:#f5f1e8;--surface:#fffdf8;--surface-soft:#edf4f1;--surface-blue:#e8f0f7;--ink:#17312d;--muted:#5c706b;--brand:#1f5f55;--brand-dark:#15483f;--accent:#dca94f;--line:#d9dfd9;--danger:#913e3e;--ok:#276749;--shadow:0 18px 50px #17312d1a;--radius:22px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%}textarea{resize:vertical}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container,.section,.narrow,.page-section{width:min(calc(100% - 32px), var(--max));margin-inline:auto}.narrow{max-width:820px}.centered{text-align:center;margin-inline:auto}.compact{max-width:860px}.stack{gap:14px;display:grid}.small,.small-note{color:var(--muted);font-size:.9rem}.small-note{margin-block:12px}h1,h2,h3{letter-spacing:-.035em;margin-top:0;line-height:1.08}h1{margin-bottom:22px;font-size:clamp(2.6rem,6vw,5.6rem)}h2{font-size:clamp(1.65rem,3vw,2.8rem)}h3{font-size:1.25rem}p{margin-top:0}.lead{color:var(--muted);max-width:760px;font-size:clamp(1.08rem,2vw,1.34rem)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--brand);margin-bottom:10px;font-size:.76rem;font-weight:850}.site-header{z-index:100;width:min(calc(100% - 32px), var(--max));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;border:1px solid #1f5f5524;border-radius:999px;margin:16px auto 0;position:sticky;top:12px;box-shadow:0 8px 30px #17312d14}.header-inner{justify-content:space-between;align-items:center;gap:18px;width:100%;min-height:64px;padding:10px 14px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-weight:850;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:var(--brand);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.main-nav{align-items:center;gap:16px;display:flex}.main-nav a{color:var(--muted);font-size:.94rem;font-weight:700;text-decoration:none}.main-nav a:hover{color:var(--brand)}.header-actions{align-items:center;gap:10px;display:flex}.language-switcher select{border:1px solid var(--line);max-width:132px;color:var(--ink);background:#fff;border-radius:999px;padding:9px 30px 9px 11px}.button-row,.hero-actions,.exam-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:13px 20px;font-weight:800;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.button:hover{background:var(--brand-dark);transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button-secondary,.button-quiet,.button-soft{color:var(--brand);border:1px solid var(--line);background:#fff}.button-danger{background:var(--danger)}.button-small{padding:9px 14px}.full{width:100%}.text-link,.source-link{color:var(--brand);text-underline-offset:4px;font-weight:800}.text-button{color:var(--brand);cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}main{min-height:72vh}.hero{padding:72px 0 48px}.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:48px;display:grid}.hero-card,.card,.module-card,.question-card,.progress-card,.practice-box,.pricing-card,.source-card,.result-card,.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero-card{padding:clamp(26px,4vw,38px)}.card,.practice-box,.source-card,.result-card{padding:clamp(22px,4vw,34px)}.plan-list{padding-inline-start:22px}.plan-list li{margin-block:7px}.icon-disc{width:42px;height:42px;color:var(--brand);background:#dcebe7;border-radius:50%;place-items:center;margin-bottom:18px;font-weight:850;display:grid}.section{margin-block:80px}.page-section{margin-block:68px 90px}.page-intro{max-width:850px;margin-bottom:38px}.page-intro h1{font-size:clamp(2.5rem,5vw,4.6rem)}.section-tight{padding-block:16px 54px}.section-soft{background:var(--surface-soft);border:1px solid #dce9e4;border-radius:30px;padding:clamp(30px,5vw,58px)}.section-blue{background:var(--surface-blue);margin-top:70px;padding:clamp(50px,7vw,86px) 16px}.grid-2,.grid-3,.progress-grid,.audio-lab-grid{gap:24px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.progress-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start}.stat-grid{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.stat{border-inline-end:1px solid var(--line);gap:4px;padding:22px;display:grid}.stat:last-child{border-inline-end:0}.stat strong{font-size:1.8rem}.stat span{color:var(--muted)}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.module-card{box-shadow:none;padding:28px}.module-locked{background:#f0eee8}.module-topline{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font-size:.88rem;display:flex}.module-number{width:40px;height:40px;color:var(--brand);background:#dcebe7;border-radius:50%;place-items:center;font-weight:850;display:grid}.topic-list,.keyword-list{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.topic-list span,.keyword{background:#edf3f0;border-radius:999px;padding:6px 10px;font-size:.86rem}.locked-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.review-banner,.notice,.explanation,.draft-banner{border-inline-start:4px solid var(--brand);background:#eef5f2;border-radius:10px;margin:20px 0;padding:16px 18px}.review-banner,.draft-banner{border-inline-start-color:var(--accent);background:#fff6df}.audio-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-block:20px;display:flex}.rate-control{align-items:center;gap:8px;font-weight:700;display:inline-flex}.rate-control select{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px}.audio-lab{margin-top:54px}.audio-lab-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:26px}.practice-box{box-shadow:none}.practice-box textarea,.practice-box input,.form-card input,.form-card textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;padding:13px}.practice-tool{gap:12px;display:grid}.locked-feature{background:#f0eee8}.source-list{padding-inline-start:20px}.practice-layout{grid-template-columns:minmax(250px,.35fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.progress-card{box-shadow:none;padding:24px;position:sticky;top:104px}.progress-number{margin:10px 0 14px;font-size:2.3rem;line-height:1;display:block}.progress-meter{background:#dce5e1;border-radius:999px;height:12px;margin-block:16px;overflow:hidden}.progress-meter span{background:var(--brand);border-radius:inherit;width:0;height:100%;display:block}.question-card{padding:clamp(24px,5vw,46px)}.quiz-progress{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;font-size:.9rem;display:flex}.quiz-progress progress{accent-color:var(--brand);flex:1}.answer-list{border:0;gap:12px;margin:26px 0;padding:0;display:grid}.answer{text-align:start;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:12px;padding:15px 17px;display:grid}.answer:hover,.answer.selected{border-color:var(--brand);background:#edf5f2}.answer.correct{border-color:var(--ok);background:#eaf7ef}.answer.wrong{border-color:var(--danger);background:#fff0f0}.answer-letter{background:#edf3f0;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:850;display:grid}.confidence-control{gap:12px;margin:22px 0;display:grid}.confidence-buttons{flex-wrap:wrap;gap:8px;display:flex}.confidence-choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:9px 13px}.confidence-choice.active{color:#fff;background:var(--brand);border-color:var(--brand)}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.mode-card{text-align:start;min-height:170px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;align-content:start;gap:8px;padding:24px;display:grid}.mode-card strong{font-size:1.2rem}.mode-card span,.mode-card small{color:var(--muted)}.mode-card.selected{border:2px solid var(--brand);box-shadow:var(--shadow)}.full-row{grid-column:1/-1}.exam-shell{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:24px;display:grid}.exam-sidebar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;position:sticky;top:104px}.exam-time{font-variant-numeric:tabular-nums;margin:12px 0;font-size:2rem;font-weight:850}.question-map{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:18px 0;display:grid}.question-map button{aspect-ratio:1;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px}.question-map button.answered{background:#dcebe7}.question-map button.current{outline:3px solid var(--brand)}.question-map button.flagged{box-shadow:inset 0 -4px var(--accent)}.exam-actions{justify-content:space-between}.result-card{max-width:930px;margin-inline:auto}.result-list{gap:10px;margin:24px 0;display:grid}.result-list details{border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px 16px}.result-list summary{cursor:pointer;font-weight:800}.pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.pricing-card{box-shadow:none;flex-direction:column;padding:26px;display:flex;position:relative}.pricing-card ul{flex:1;padding-inline-start:20px}.pricing-featured{border:2px solid var(--brand);box-shadow:var(--shadow);transform:translateY(-8px)}.price{gap:2px;margin:18px 0;display:grid}.price strong{font-size:2.1rem}.price span{color:var(--muted);font-size:.88rem}.badge{top:-13px;background:var(--brand);color:#fff;border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:800;position:absolute;inset-inline-end:18px}.student-label{color:var(--brand);font-weight:800}.form-card{max-width:620px;box-shadow:none;gap:14px;padding:28px;display:grid}.form-card label{gap:7px;font-weight:750;display:grid}.form-message{background:var(--surface-soft);border-radius:10px;padding:12px 14px}.legal{max-width:920px}.legal h1{font-size:clamp(2.5rem,5vw,4.4rem)}.legal h2{margin-top:38px;font-size:1.5rem}.legal li{margin-bottom:8px}.site-footer{border-top:1px solid var(--line);margin-top:88px;padding:44px 0 24px}.footer-grid{grid-template-columns:minmax(0,1fr) auto;gap:34px;display:grid}.footer-brand{font-size:1.2rem;font-weight:850}.footer-links{flex-wrap:wrap;align-content:start;gap:18px;display:flex}.footer-links a{color:var(--muted);font-weight:700}@media (max-width:980px){.main-nav{display:none}.hero-grid,.grid-2,.progress-grid,.practice-layout,.exam-shell{grid-template-columns:1fr}.grid-3,.stat-grid,.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-card,.exam-sidebar{position:static}.mode-grid,.module-grid,.audio-lab-grid{grid-template-columns:1fr}.full-row{grid-column:auto}}@media (max-width:680px){.site-header{border-radius:22px;top:6px}.header-inner{flex-wrap:wrap;align-items:flex-start}.header-actions{justify-content:space-between;width:100%}.hero{padding-top:44px}.grid-3,.stat-grid,.pricing-grid{grid-template-columns:1fr}.stat{border-inline-end:0;border-bottom:1px solid var(--line)}.pricing-featured{transform:none}.quiz-progress,.exam-actions{grid-template-columns:1fr;display:grid}.question-map{grid-template-columns:repeat(6,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr}.answer{grid-template-columns:auto minmax(0,1fr)}.answer input{grid-column:1}.answer-letter{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
