:root{--background:#f5f3ee;--surface:#fff;--surface-muted:#f8f7f3;--foreground:#1d2521;--muted:#63716a;--border:#d9ded8;--primary:#176b5b;--primary-strong:#0f4e43;--primary-soft:#e1f0eb;--accent:#b56b2b;--danger:#a33b32;--danger-soft:#f7e6e3;--success:#2f7a4f;--success-soft:#e5f2e9;--shadow:0 18px 45px #2b37311a}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:linear-gradient(135deg, #176b5b14, transparent 34%), linear-gradient(315deg, #b56b2b1a, transparent 30%), var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-family:Aptos,Segoe UI,sans-serif;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,select{min-height:44px}button{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed;opacity:.58}label{color:var(--foreground);font-size:.9rem;font-weight:700}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--foreground);border-radius:8px;padding:.75rem .85rem}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #176b5b47}main>form,main>p,main>h1{width:min(100%,440px);margin-inline:auto}main>h1{margin-top:4rem;margin-bottom:1.5rem}main>form{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;gap:.85rem;padding:1.5rem;display:grid}main>form+p{color:var(--muted);margin-top:1rem}main>p[role=alert]{background:var(--danger-soft);color:var(--danger);border:1px solid #a33b3238;border-radius:10px;margin-bottom:1rem;padding:.85rem 1rem}main>form button{background:var(--primary);color:#fff;border:0;border-radius:8px;padding:.75rem 1rem;font-weight:800}.marketing-page{background:linear-gradient(180deg, #ffffffc2, #f5f3eedb 48%, #ebe5d8), radial-gradient(circle at 82% 18%, #b56b2b24, transparent 32%), var(--background);min-height:100dvh}.marketing-hero,.marketing-section,.marketing-pricing{width:min(100%,1180px);margin-inline:auto;padding-inline:2rem}.marketing-hero{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:start;gap:1.5rem;min-height:92dvh;padding-block:1rem 2rem;display:grid}.marketing-nav{justify-content:space-between;align-items:center;gap:1rem;min-height:56px;margin-bottom:clamp(1rem,3vh,2rem);display:flex}.marketing-brand,.marketing-nav-links,.marketing-cta-row,.marketing-payment-strip,.marketing-button,.marketing-icon,.preview-browser-bar,.preview-browser-bar strong,.pricing-card li{align-items:center;display:flex}.marketing-brand{gap:.7rem;font-weight:900}.marketing-brand-mark,.marketing-icon{background:var(--primary);color:#fff;border-radius:8px;place-items:center;display:grid}.marketing-brand-mark{width:42px;height:42px}.marketing-nav-links{color:#3e4d46;gap:1rem;font-size:.94rem;font-weight:800}.marketing-kicker{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:900}.marketing-hero h1,.marketing-section-heading h2{max-width:760px;font-family:Georgia,Times New Roman,serif;line-height:1.04}.marketing-hero h1{margin-top:.55rem;font-size:clamp(2.6rem,5.2vw,4.65rem)}.marketing-lede,.marketing-section-heading p,.marketing-card p,.pricing-card p,.marketing-signal p,.preview-passage-pane p{color:var(--muted);line-height:1.62}.marketing-lede{max-width:660px;margin-top:.85rem;font-size:1.03rem}.marketing-cta-row,.marketing-payment-strip{flex-wrap:wrap;gap:.75rem;margin-top:1rem}.marketing-button{text-align:center;border:1px solid #0000;border-radius:8px;justify-content:center;gap:.5rem;min-width:162px;min-height:46px;padding:.78rem 1.05rem;font-weight:900}.marketing-button-primary{background:var(--primary);color:#fff}.marketing-button-secondary{color:var(--foreground);background:#ffffffc2;border-color:#c7cfc6}.marketing-payment-strip span{min-height:38px;color:var(--primary-strong);background:#e1f0ebd1;border:1px solid #176b5b2e;border-radius:999px;align-items:center;gap:.45rem;padding:.48rem .72rem;font-size:.88rem;font-weight:900;display:inline-flex}.marketing-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.1rem;display:grid}.marketing-signal{background:#ffffffbd;border:1px solid #1d25211f;border-radius:8px;min-height:126px;padding:.95rem}.marketing-signal dt{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.marketing-signal dd{margin-top:.3rem;font-family:Georgia,Times New Roman,serif;font-size:2.15rem;font-weight:900;line-height:1}.marketing-signal p{margin-top:.4rem;font-size:.9rem}.product-preview,.marketing-card,.pricing-card{box-shadow:var(--shadow);background:#ffffffe6;border:1px solid #1d252121;border-radius:8px}.product-preview{align-content:start;gap:.9rem;min-height:540px;padding:.9rem;display:grid}.preview-browser-bar{color:#fff;background:#1d2521;border-radius:8px;justify-content:space-between;gap:1rem;min-height:48px;padding:.7rem .85rem}.preview-browser-bar strong{color:#f2d6b4;gap:.4rem}.preview-test-shell{grid-template-columns:minmax(0,1.04fr) minmax(260px,.96fr);gap:.75rem;display:grid}.preview-passage-pane,.preview-question-pane{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;min-width:0;min-height:320px;padding:1rem;overflow:hidden}.preview-passage-pane h2,.preview-question-pane h2,.marketing-card h3,.pricing-card h3{overflow-wrap:anywhere;line-height:1.24}.preview-passage-pane h2,.preview-question-pane h2{margin:.55rem 0 .7rem;font-size:1.15rem}.preview-label{color:var(--accent);text-transform:uppercase;font-size:.74rem;font-weight:900}.preview-answer-list{gap:.55rem;margin-top:1rem;display:grid}.preview-answer-list div{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-height:58px;padding:.72rem;line-height:1.35}.preview-answer-list .selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong);font-weight:900}.preview-dashboard-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.preview-diagnostic{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;min-height:92px;padding:.85rem}.preview-diagnostic span,.preview-diagnostic strong{display:block}.preview-diagnostic span{color:var(--muted);font-size:.8rem;font-weight:900}.preview-diagnostic strong{margin-top:.5rem;font-size:1.7rem}.preview-diagnostic-green strong{color:var(--success)}.preview-diagnostic-amber strong{color:var(--accent)}.preview-diagnostic-red strong{color:var(--danger)}.marketing-section,.marketing-pricing{padding-block:4.5rem}.marketing-section-heading{max-width:760px}.marketing-section-heading h2{margin-top:.65rem;font-size:clamp(2rem,4vw,3.35rem)}.marketing-section-heading p{margin-top:.85rem;font-size:1rem}.marketing-card-grid,.pricing-grid{gap:1rem;margin-top:1.5rem;display:grid}.marketing-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-card{align-content:start;gap:.85rem;min-height:238px;padding:1.2rem;display:grid}.marketing-icon{width:44px;height:44px}.marketing-card h3,.pricing-card h3{font-size:1.12rem}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-card{align-content:start;gap:1rem;min-height:414px;padding:1.2rem;display:grid}.pricing-card-featured{border-color:#176b5b61;box-shadow:0 20px 48px #176b5b29}.pricing-badge{background:var(--primary-soft);min-height:30px;color:var(--primary-strong);border-radius:999px;align-items:center;padding:.35rem .62rem;font-size:.74rem;font-weight:900;display:inline-flex}.pricing-card h3{margin-top:.55rem}.pricing-card strong{margin-top:.6rem;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;line-height:1;display:block}.pricing-card p{margin-top:.75rem}.pricing-card ul{gap:.55rem;list-style:none;display:grid}.pricing-card li{color:#33443d;gap:.48rem;font-weight:800}.pricing-card .marketing-button{width:100%;margin-top:auto}.app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100dvh;display:grid}.app-sidebar{border-right:1px solid var(--border);background:#ffffffd1;flex-direction:column;gap:1.5rem;height:100dvh;padding:1.25rem;display:flex;position:sticky;top:0}.brand-lockup,.side-nav-link,.user-panel,.button,.metric-icon,.runner-meta,.result-label,.score-card small{align-items:center;display:flex}.brand-lockup{gap:.75rem}.brand-lockup strong,.brand-lockup small,.user-panel strong,.user-panel small{display:block}.brand-lockup small,.user-panel small,.muted-text,.metric-card small,.page-header p,.mode-card p,.queue-item p,.review-item p,.score-card span,.score-card small{color:var(--muted)}.brand-mark{background:var(--primary);color:#fff;border-radius:8px;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.side-nav{gap:.45rem;display:grid}.side-nav-link{color:#33443d;border-radius:8px;gap:.75rem;min-height:44px;padding:.75rem;font-weight:800}.side-nav-link:hover,.action-row:hover,.queue-item:hover{background:var(--surface-muted)}.user-panel{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;flex-direction:column;align-items:flex-start;gap:.25rem;margin-top:auto;padding:1rem}.app-content,.review-route{width:min(100%,1180px);margin:0 auto;padding:2rem}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.compact-header{align-items:stretch}.page-header h1,.runner-toolbar h1{max-width:780px;font-family:Aptos Display,Aptos,Segoe UI,sans-serif;font-size:2rem;line-height:1.15}.page-header p{max-width:660px;margin-top:.45rem;line-height:1.6}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:.76rem;font-weight:900}.button{border:1px solid #0000;border-radius:8px;justify-content:center;gap:.5rem;min-height:44px;padding:.7rem 1rem;font-weight:900;transition:background .16s,border-color .16s,transform .16s}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{background:var(--primary);color:#fff}.button-primary:hover:not(:disabled){background:var(--primary-strong)}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--foreground)}.button-secondary:hover:not(:disabled){background:var(--surface-muted)}.locked-panel,.notice-panel,.form-alert,.panel,.metric-card,.mode-card,.mock-card,.queue-item,.review-item,.runner-toolbar,.passage-pane,.question-pane,.score-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#ffffffe6;border-radius:12px}.locked-panel,.notice-panel,.form-alert{margin-bottom:1.5rem;padding:1rem}.locked-panel{background:var(--danger-soft);border-color:#a33b3238;align-items:center;gap:1rem;display:flex}.locked-panel svg,.form-alert{color:var(--danger)}.notice-panel{background:var(--primary-soft);color:var(--primary-strong);font-weight:800}.metric-grid,.dashboard-grid,.mode-grid,.mock-grid,.explanation-grid{gap:1rem;display:grid}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mock-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.metric-card,.mode-card,.mock-card,.panel{padding:1.1rem}.metric-card,.mode-card,.mock-card{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.metric-card strong{font-size:2rem;line-height:1}.metric-icon{background:var(--primary-soft);width:44px;height:44px;color:var(--primary-strong);border-radius:8px;justify-content:center}.mode-card h2,.mock-card h2,.panel h2,.queue-item h2,.review-item h2{font-size:1.05rem;line-height:1.35}.mode-card p{min-height:4.5rem;line-height:1.55}.mode-card .button{width:100%;margin-top:auto}.mock-card-header{align-items:flex-start;gap:.75rem;display:flex}.mock-card.unavailable,.mock-card.locked{background:#f8f7f3db}.mock-meta{gap:.5rem;width:100%;display:grid}.mock-meta div{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.mock-meta dt{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:900}.mock-meta dd{text-align:right;font-weight:900}.mock-action-form,.mock-action-form .button,.mock-card>.button{width:100%}.mock-action-form{margin-top:auto}.rank-list,.review-list,.review-queue{gap:.75rem;list-style:none;display:grid}.rank-list li,.action-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;min-height:44px;padding:.75rem 0;display:flex}.rank-list li:last-child,.action-row:last-child{border-bottom:0}.action-panel{align-content:start;gap:.5rem;display:grid}.runner-shell{width:min(100%,1400px);margin:0 auto;padding:1rem}.runner-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex}.runner-meta{flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.runner-meta span,.pill,.result-label{background:var(--surface-muted);color:var(--foreground);border-radius:999px;padding:.4rem .65rem;font-size:.82rem;font-weight:900}.runner-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:1rem;display:grid}.passage-pane,.question-pane{min-width:0;padding:1.25rem}.passage-pane{max-height:calc(100dvh - 130px);overflow:auto}.passage-pane h2,.question-pane h2,.review-item h2{margin-bottom:.75rem}.passage-body{color:#2f3a35;overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.72}.answer-option span:last-child,.question-pane h2,.mock-card h2,.mock-meta dd{overflow-wrap:anywhere;min-width:0}.question-header,.answer-summary,.queue-meta{flex-wrap:wrap;gap:.5rem;margin-bottom:.85rem;display:flex}.answer-list{border:0;gap:.65rem;display:grid}.answer-option{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:auto 34px minmax(0,1fr);align-items:center;gap:.75rem;min-height:54px;padding:.75rem;display:grid}.answer-option:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.answer-option input{width:18px;height:18px}.answer-letter{background:var(--surface-muted);border-radius:8px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.question-nav,.runner-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.question-nav button{border:1px solid var(--border);background:var(--surface);width:44px;color:var(--foreground);border-radius:8px;font-weight:900}.question-nav button[aria-current=step]{border-color:var(--primary);color:var(--primary-strong)}.question-nav button.answered{background:var(--success-soft)}.runner-actions{justify-content:flex-end}.review-panel{gap:1rem;display:grid}.score-card{text-align:right;min-width:180px;padding:1rem}.score-card strong{font-size:2.25rem;line-height:1;display:block}.score-card small{justify-content:flex-end;gap:.35rem;margin-top:.35rem}.review-item,.queue-item{padding:1rem}.review-item-header{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.muted-pill{color:var(--muted)}.result-label{gap:.35rem}.result-label.correct{background:var(--success-soft);color:var(--success)}.result-label.incorrect{background:var(--danger-soft);color:var(--danger)}.answer-summary{margin:1rem 0}.answer-summary div,.queue-meta div{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;min-width:190px;padding:.75rem}.answer-summary dt,.queue-meta dt{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.answer-summary dd,.queue-meta dd{margin-top:.35rem;font-weight:800}.explanation-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:1rem 0}.explanation-grid section,.distractor-block{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;padding:.9rem}.explanation-grid h3,.distractor-block h3{margin-bottom:.45rem;font-size:.95rem}.distractor-list{gap:.75rem;display:grid}.queue-item{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;display:grid}.empty-state{justify-items:start;gap:.75rem;display:grid}.admin-card-grid,.admin-draft-list,.admin-exercise-list,.admin-question-list,.admin-upload-form,.admin-upload-panel,.admin-allocation-panel{gap:1rem;display:grid}.admin-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-action-card,.admin-draft-set,.admin-exercise-editor,.admin-import-result{border:1px solid var(--border);box-shadow:var(--shadow);background:#ffffffe6;border-radius:12px}.admin-action-card{align-items:flex-start;gap:1rem;padding:1.1rem;display:flex}.admin-action-card.static{color:var(--muted)}.admin-action-card h2,.admin-draft-header h3,.admin-section-heading h2,.admin-exercise-editor summary{font-size:1.05rem;line-height:1.35}.admin-action-card p,.admin-draft-header p,.admin-import-result p{color:var(--muted);margin-top:.35rem;line-height:1.55}.admin-section-heading,.admin-draft-header,.admin-import-result,.admin-inline-action{align-items:flex-start;gap:.75rem;display:flex}.admin-draft-header{justify-content:space-between}.admin-upload-form{max-width:520px}.admin-upload-form .button,.admin-inline-action .button{width:fit-content}.admin-import-result{padding:.9rem}.admin-import-result.success{background:var(--success-soft);color:var(--success);border-color:#2f7a4f40}.admin-import-result.error{background:var(--danger-soft);color:var(--danger);border-color:#a33b3240}.admin-import-result ul{margin-top:.5rem;padding-left:1.1rem}.admin-draft-set,.admin-exercise-editor{padding:1rem}.admin-selection{align-items:center;gap:.65rem;display:flex}.admin-selection input{width:18px;height:18px}.admin-edit-grid{grid-template-columns:2fr 1fr 1fr;gap:.75rem;margin:.9rem 0;display:grid}.admin-exercise-details{border-top:1px solid var(--border);padding-top:.8rem}.admin-exercise-details summary{cursor:pointer;font-weight:900}.admin-passage-preview{border:1px solid var(--border);background:var(--surface-muted);color:#2f3a35;white-space:pre-wrap;border-radius:10px;max-height:220px;margin:.75rem 0;padding:.85rem;line-height:1.65;overflow:auto}.admin-question-editor{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:center;gap:.75rem;padding-top:.75rem;display:grid}.admin-question-editor span,.admin-question-editor small{display:block}.admin-question-editor small{color:var(--muted);margin-top:.25rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1100px){.marketing-hero{grid-template-columns:1fr;padding-top:1rem}.product-preview{min-height:auto}.metric-grid,.mode-grid,.mock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.runner-grid,.explanation-grid,.admin-card-grid,.admin-edit-grid,.marketing-card-grid,.pricing-grid{grid-template-columns:1fr}.passage-pane{max-height:none}}@media (max-width:760px){.marketing-hero,.marketing-section,.marketing-pricing{padding-inline:1rem}.marketing-hero{min-height:auto;padding-block:1rem 3rem}.marketing-nav,.marketing-nav-links{flex-direction:column;align-items:flex-start}.marketing-nav{margin-bottom:2rem}.marketing-hero h1{font-size:2.7rem}.marketing-button,.marketing-cta-row{width:100%}.marketing-signal-grid,.preview-test-shell,.preview-dashboard-strip{grid-template-columns:1fr}.preview-passage-pane,.preview-question-pane{min-height:280px}.app-shell{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;position:static}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.user-panel{margin-top:0}.app-content,.review-route,.runner-shell{padding:1rem}.page-header,.runner-toolbar,.locked-panel{flex-direction:column;align-items:stretch}.page-header h1,.runner-toolbar h1{font-size:1.55rem}.metric-grid,.mode-grid,.mock-grid{grid-template-columns:1fr}.runner-meta,.runner-actions{justify-content:flex-start}.runner-actions .button{width:100%}.queue-item{grid-template-columns:1fr}.admin-draft-header,.admin-inline-action,.admin-import-result{flex-direction:column}.admin-question-editor{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
