:root{color-scheme:light;font-family:Inter,Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #f6fafb;--paper: #ffffff;--ink: #102027;--muted: #60737c;--border: #dbe8ea;--green: #00a86b;--green-dark: #08724e;--blue: #1f7ecf;--blue-soft: #e7f3ff;--amber: #b7791f;--amber-soft: #fff6df;--red: #c2413a;--shadow: 0 18px 45px rgba(12, 48, 56, .09)}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(rgba(31,126,207,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,168,107,.045) 1px,transparent 1px),var(--bg);background-size:32px 32px;color:var(--ink)}.app-loading{min-height:100vh;display:grid;place-content:center;gap:12px;text-align:center;color:var(--ink);background:var(--bg)}.app-loading svg{justify-self:center;color:var(--green)}.app-loading.error{color:var(--red)}button,input,select,textarea,a{font:inherit}button,select{cursor:pointer}button{border:0}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.app-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;width:min(1380px,calc(100% - 32px));margin:0 auto;padding:22px 0 30px;border-top:1px solid rgba(219,232,234,.86);color:#60747c;font-size:12px}.app-footer a{color:var(--green-dark);font-weight:800}.app-footer a:hover,.app-footer a:focus-visible{text-decoration:underline}.shortcut-help-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#10202738}.shortcut-help-panel{width:min(420px,100%);overflow:hidden;border:1px solid #cfe4e8;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.shortcut-help-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);background:#f6fbfc}.shortcut-help-heading svg{color:var(--green-dark)}.shortcut-help-heading h2{margin:0;font-size:16px;font-weight:950}.icon-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#3e5660}.icon-button:hover,.icon-button:focus-visible{border-color:#9fcfbf;background:#edf9f3;color:var(--green-dark)}.shortcut-help-list{display:grid;gap:8px;padding:14px 16px 16px}.shortcut-help-row{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:12px;min-height:38px;color:var(--ink);font-size:14px;font-weight:800}.shortcut-help-row kbd{display:inline-grid;place-items:center;min-width:44px;justify-self:start;padding:5px 9px;border:1px solid rgba(42,55,62,.18);border-radius:6px;background:#f8fbfc;color:var(--green-dark);font:900 12px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.app-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;width:min(1380px,calc(100% - 32px));height:72px;margin:0 auto;border-bottom:1px solid rgba(219,232,234,.86);background:#f6fafbeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-start{display:inline-flex;align-items:center;gap:10px;min-width:0}.sidebar-toggle-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#3e5660}.sidebar-toggle-button:hover,.sidebar-toggle-button:focus-visible{border-color:#9fcfbf;background:#edf9f3;color:var(--green-dark)}.brand{display:inline-flex;align-items:center;gap:10px;width:max-content;padding:0;background:transparent;color:var(--ink);font-size:18px;font-weight:900;letter-spacing:0}.brand-button{cursor:pointer}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:var(--green);color:#fff;font-size:16px;box-shadow:0 8px 18px #00a86b3b}.top-nav{display:flex;justify-content:center;gap:8px}.top-nav button{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-height:38px;padding:0 13px;border-radius:8px;background:transparent;color:#3e5660;font-size:14px;font-weight:850;white-space:nowrap}.header-account{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.account-pill,.account-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-radius:8px;font-size:13px;font-weight:900;white-space:nowrap}.account-pill{max-width:220px;padding:0 11px;overflow:hidden;border:1px solid var(--border);background:#fff;color:#3e5660;text-overflow:ellipsis}.account-button{padding:0 12px;border:1px solid #bddfd2;background:#fff;color:var(--green-dark)}.account-button:hover,.account-button:focus-visible{border-color:var(--green);background:#edf9f3}.top-nav button:hover,.top-nav button.active{background:#1020270f;color:var(--green-dark)}.learning-shell{display:grid;grid-template-columns:290px minmax(0,1fr) 250px;gap:18px;width:min(1440px,calc(100% - 24px));margin:0 auto;padding:26px 0 52px}.focus-learning-shell{grid-template-columns:minmax(0,1fr);width:min(1440px,calc(100% - 24px));padding-top:26px}.practice-learning-shell{grid-template-columns:290px minmax(0,1fr)}.landing-shell{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:34px 0 60px}.control-panel,.workbench,.insight-panel{min-width:0}.landing-page{display:grid;gap:18px}.entry-track-switcher{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fffffff0;box-shadow:0 8px 24px #0c30380d}.entry-track-switcher>span,.entry-track-switcher>small{color:var(--muted);font-size:12px;font-weight:900}.entry-track-switcher>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.entry-track-switcher a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid transparent;border-radius:8px;background:#f3f7f8;color:#526a73;font-size:13px;font-weight:900}.entry-track-switcher a.active{border-color:#bddfd2;background:#eaf8f1;color:var(--green-dark);box-shadow:inset 0 0 0 1px #00a86b0f}.landing-hero{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1fr);gap:24px;align-items:center;min-height:min(680px,calc(100vh - 132px))}.landing-hero-copy{display:grid;align-content:center;gap:22px}.landing-eyebrow,.landing-section-kicker{color:var(--green-dark);font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.landing-hero.officer-entry .landing-eyebrow{color:#476a3b}.landing-hero-copy h1{max-width:680px;margin:0;color:#102027;font-size:clamp(40px,5vw,58px);line-height:1.08;letter-spacing:0}.landing-hero-copy p{max-width:650px;margin:0;color:#4e6670;font-size:17px;font-weight:750;line-height:1.9}.landing-actions{display:flex;flex-wrap:wrap;gap:10px}.landing-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:620px;margin:2px 0 0}.landing-proof div{padding:14px;border:1px solid var(--border);border-radius:8px;background:#ffffffbd}.landing-proof dt{color:var(--muted);font-size:12px;font-weight:900}.landing-proof dd{margin:4px 0 0;color:var(--ink);font-size:24px;font-weight:950;line-height:1.1}.landing-product-preview{display:grid;gap:12px;padding:18px;border:1px solid #cfe4e8;border-radius:8px;background:#fffffff5;box-shadow:var(--shadow)}.preview-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:42px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#f6fbfc}.preview-toolbar span,.preview-toolbar strong{color:#244a55;font-size:13px;font-weight:950}.preview-progress{height:8px;overflow:hidden;border-radius:999px;background:#e5eef1}.preview-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--blue))}.preview-question{display:grid;gap:8px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.preview-question strong{color:var(--green-dark);font-size:13px;font-weight:950}.preview-question p{margin:0;color:var(--ink);font-size:16px;font-weight:850;line-height:1.65}.preview-choices{display:grid;gap:8px}.preview-choice{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:12px;min-height:56px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:#fff}.preview-choice.selected{border-color:#00a86b80;background:#effbf5}.preview-choice span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf7f2;color:var(--green-dark);font-size:13px;font-weight:950}.preview-choice strong{color:#243b43;font-size:15px;font-weight:850}.preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;background:#f6fafb}.preview-footer div{display:grid;gap:3px}.preview-footer small{color:var(--muted);font-size:11px;font-weight:900}.preview-footer strong{color:var(--ink);font-size:15px;font-weight:950}.landing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.landing-feature{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#fffffff0}.landing-feature>span{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:#edf7f2;color:var(--green-dark)}.landing-feature h2{margin:0;color:var(--ink);font-size:17px;line-height:1.35}.landing-feature p{margin:7px 0 0;color:var(--muted);font-size:14px;font-weight:750;line-height:1.7}.landing-packs{display:grid;gap:12px;padding:20px;border:1px solid var(--border);border-radius:8px;background:#fffffff0}.landing-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.landing-section-heading h2{margin:0;color:var(--ink);font-size:24px}.landing-section-heading>div{display:grid;gap:4px}.landing-pack-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.landing-pack-row{display:grid;grid-template-columns:42px 1fr 18px;align-items:center;gap:12px;min-height:72px;padding:12px;border:1px solid var(--border);border-left:4px solid var(--deck-accent);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.landing-pack-row:hover{border-color:color-mix(in srgb,var(--deck-accent) 42%,var(--border));box-shadow:0 8px 18px #0c303812}.landing-pack-row>span:nth-child(2){display:grid;min-width:0;gap:4px}.landing-pack-row strong{overflow-wrap:anywhere;font-size:15px;font-weight:950}.landing-pack-row small{color:var(--muted);font-size:12px;font-weight:850}.cross-track-note{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px dashed #bfd3d8;border-radius:8px;background:#f7fbfc}.cross-track-note>span{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:#eaf4f5;color:#315c68}.cross-track-note>div{display:grid;gap:3px}.cross-track-note strong{color:var(--ink);font-size:14px}.cross-track-note small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.5}.control-panel,.insight-panel,.quiz-card,.bank-view,.market-view,.history-view,.review-view,.stats-view,.mock-setup-view{border:1px solid var(--border);border-radius:8px;background:#fffffff5;box-shadow:0 10px 28px #0c30380d}.control-panel,.insight-panel{align-self:start;display:grid;gap:22px;padding:20px}.panel-heading h1{margin:0;font-size:30px;line-height:1.14;letter-spacing:0}.panel-heading p,.view-heading p,.note-list,.empty-text,.question-row p{color:var(--muted);font-size:14px;line-height:1.75}.panel-heading p{margin:12px 0 0}.control-group{display:grid;gap:10px}.control-group h2,.insight-panel h2,.table-panel h3{margin:0;font-size:14px;font-weight:900;letter-spacing:0}.pack-list,.mode-list,.order-options,.start-actions,.weak-list{display:grid;gap:9px}.pack-toggle,.mode-list button,.order-options button,.question-row,.metric-card,.table-panel{border:1px solid var(--border);border-radius:8px;background:#fff}.pack-toggle{display:grid;grid-template-columns:32px 1fr 18px;align-items:center;gap:10px;min-height:62px;padding:10px;color:#344d57;text-align:left}.pack-toggle svg:first-child{color:var(--green)}.pack-toggle span{display:grid;gap:3px}.pack-toggle strong,.mode-list span,.order-options span{color:var(--ink);font-size:14px;font-weight:900}.pack-toggle small,.mode-list small,.order-options small{color:var(--muted);font-size:12px;font-weight:800}.pack-toggle>svg:last-child{opacity:0;color:var(--green-dark)}.pack-toggle.selected{border-color:var(--green);background:#edf9f3;box-shadow:0 8px 18px #00a86b17}.pack-toggle.selected>svg:last-child{opacity:1}.mode-list button,.order-options button{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:4px 10px;min-height:58px;padding:11px;text-align:left}.mode-list svg,.order-options svg{grid-row:span 2;color:var(--green)}.mode-list button.mode-selected,.order-options button.order-selected{border-color:var(--green);background:#edf9f3;box-shadow:0 8px 18px #00a86b17}.control-group label{display:grid;gap:6px;color:#415a64;font-size:13px;font-weight:900}.filter-button-group{display:grid;gap:8px}.filter-button-label{color:#415a64;font-size:13px;font-weight:900}.filter-button-list{display:flex;flex-wrap:wrap;gap:7px}.filter-button-list.scrollable{max-height:178px;overflow:auto;padding-right:2px}.filter-chip{display:inline-grid;gap:2px;max-width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#314850;text-align:left;line-height:1.25}.filter-chip span,.filter-chip small{min-width:0;overflow-wrap:anywhere}.filter-chip span{font-size:12px;font-weight:900}.filter-chip small{color:var(--muted);font-size:10px;font-weight:800}.filter-chip.selected{border-color:var(--green);background:#edf9f3;color:var(--green-dark);box-shadow:0 6px 14px #00a86b17}.filter-chip:focus-visible{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #00a86b1f}.mock-settings-card{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f8fbfc}.mock-profile{display:grid;gap:4px}.mock-profile span{color:var(--muted);font-size:11px;font-weight:900}.mock-profile strong{color:var(--ink);font-size:14px;line-height:1.35}.mock-fixed-summary{display:grid;gap:10px;margin:0}.mock-fixed-summary div{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#f8fbfc}.mock-fixed-summary dt{color:var(--muted);font-size:11px;font-weight:900}.mock-fixed-summary dd{margin:0;color:var(--ink);font-size:14px;font-weight:900;line-height:1.35}select,input,textarea{width:100%;min-height:42px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);padding:0 12px;outline:0}select:focus,input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #00a86b1f}textarea{padding:11px 12px;resize:vertical;line-height:1.55}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:20px;background:#10202747}.modal-panel{width:min(520px,100%);max-height:min(86vh,760px);overflow:auto;border:1px solid #cfe4e8;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.support-panel{width:min(640px,100%)}.modal-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;border-bottom:1px solid var(--border);background:#f6fbfc}.modal-heading h2{margin:0;font-size:18px;font-weight:950}.modal-heading p{margin:5px 0 0;color:var(--muted);font-size:13px;font-weight:800;line-height:1.5}.auth-form,.support-form{display:grid;gap:12px;padding:16px}.auth-form label,.support-form label{display:grid;gap:7px;color:#3e5660;font-size:13px;font-weight:900}.support-form textarea{min-height:150px}.oauth-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 16px 16px}.setup-note{display:grid;gap:4px;margin:14px 16px 0;padding:12px 14px;border:1px solid #ead8a8;border-radius:8px;background:#fff9e8;color:#6b551f}.setup-note strong{font-size:14px;font-weight:950}.setup-note span{font-size:13px;font-weight:800;line-height:1.5}.report-context{display:flex;flex-wrap:wrap;gap:7px;margin:14px 16px 0}.report-context span,.report-context code{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:8px;background:#edf7f2;color:var(--green-dark);font-size:12px;font-weight:900}.report-context code{max-width:100%;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.form-status{margin:0 16px 16px;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:900;line-height:1.5}.form-status.success{border:1px solid #c8e6d8;background:#f1fbf5;color:var(--green-dark)}.form-status.error{border:1px solid #f1cdc8;background:#fff6f4;color:var(--red)}.primary-button,.secondary-button,.bookmark-button,.row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:900;line-height:1;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.primary-button{background:var(--green);color:#fff;box-shadow:0 12px 22px #00a86b38}.primary-button:hover{transform:translateY(-1px);background:var(--green-dark)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}.secondary-button,.bookmark-button,.row-actions button{border:1px solid #bddfd2;background:#fff;color:var(--green-dark)}.secondary-button:hover,.bookmark-button:hover,.row-actions button:hover{border-color:var(--green);box-shadow:0 8px 18px #0c303812}.compact{min-height:38px;padding:0 13px;font-size:13px}.full-width{width:100%}.quiz-card,.bank-view,.market-view,.history-view,.review-view,.stats-view,.mock-setup-view{display:grid;gap:12px;padding:26px}.mock-setup-view{position:relative}.mock-setup-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:12px}.mock-setup-panel{display:grid;align-content:start;gap:14px;padding:16px}.mock-setup-panel .filter-button-list.scrollable{max-height:360px}.mock-countdown{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;border-radius:8px;background:#f6fafbeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mock-countdown span{display:grid;place-items:center;width:156px;height:156px;border:1px solid rgba(0,168,107,.24);border-radius:50%;background:#fff;color:var(--green-dark);font-size:54px;font-weight:950;box-shadow:var(--shadow)}.mock-status-bar{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid #cfe4e8;border-radius:8px;background:#f6fbfc}.practice-status-bar{grid-template-columns:auto minmax(180px,1fr)}.mock-timer{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 12px;border-radius:8px;background:#edf7f2;color:var(--green-dark)}.mock-timer.urgent{background:#fff1ed;color:var(--red)}.practice-mode-label{background:#f0f6ff;color:#244a55}.mock-timer strong{font-variant-numeric:tabular-nums;font-size:18px;letter-spacing:0}.mock-progress{display:grid;gap:7px}.mock-progress span{color:#415a64;font-size:12px;font-weight:900}.quiz-topline{display:grid;gap:8px}.eyebrow,.question-meta span,.question-tags span,.weak-tags span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #cfe4e8;border-radius:8px;background:#f5fbfc;color:#41606a;font-size:11px;font-weight:900}.quiz-topline h2{margin:0;color:#17323a;font-size:22px;line-height:1.2;letter-spacing:0}.progress-track{height:8px;overflow:hidden;border-radius:999px;background:#e5eef1}.progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--blue));transition:width .18s ease}.progress-track.slim{height:7px}.question-meta,.question-tags,.weak-tags{display:flex;flex-wrap:wrap;gap:6px}.question-meta{gap:8px}.question-meta span{min-height:30px;padding:0 11px;font-size:13px;line-height:1.2}.question-text-panel{border:1px solid var(--border);border-radius:8px;background:#fff}.question-text-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid var(--border)}.question-text-heading strong{color:var(--green-dark);font-size:13px;font-weight:900}.formatted-question-text{display:grid;gap:8px;margin:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);font-size:15px;font-weight:800;line-height:1.58}.formatted-question-text p{margin:0}.question-list{display:grid;gap:8px;margin:0;padding-left:1.25em}.question-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:#fff}.question-data-table{width:100%;min-width:520px;border-collapse:collapse;font-size:15px}.question-data-table th,.question-data-table td{padding:10px 12px;border-bottom:1px solid var(--border);border-left:1px solid var(--border);white-space:nowrap}.question-data-table th:first-child,.question-data-table td:first-child{border-left:0}.question-data-table tr:last-child td{border-bottom:0}.question-data-table th{background:#eef8f4;color:var(--green-dark);font-weight:900}.math-inline{display:inline-block;vertical-align:middle}.plain-math{margin:0 .08em;font-size:1.08em;font-weight:700}.math-sup{position:relative;top:-.35em;margin-left:1px;font-size:.72em;line-height:0;vertical-align:baseline}.math-display{display:block;overflow-x:auto;margin:8px 0}.empty-text-panel{display:grid;gap:4px;padding:16px}.empty-text-panel span{color:var(--muted);font-size:13px}.source-image-panel{border:1px solid var(--border);border-radius:8px;background:#fff}.source-image-panel summary{min-height:42px;padding:11px 14px;color:var(--muted);cursor:pointer;font-size:13px;font-weight:900}.choices{display:grid;gap:8px}.unavailable-question-note{display:grid;gap:4px;padding:14px 16px;border:1px solid #d6c7a3;border-radius:8px;background:#fff9e8;color:#5f4c22}.unavailable-question-note strong{font-size:14px;font-weight:950}.unavailable-question-note span{font-size:13px;font-weight:800;line-height:1.55}.question-image-frame{overflow:auto;max-height:min(72vh,920px);margin:0;border-top:1px solid var(--border);background:#fff}.question-image-frame img{display:block;width:100%;min-width:560px;height:auto}.question-image-frame figcaption{position:sticky;bottom:0;padding:8px 12px;border-top:1px solid var(--border);background:#fffffff0;color:var(--muted);font-size:11px;font-weight:800}.choice-button{display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);text-align:left;font-size:15px;font-weight:800;line-height:1.45}.choice-button:hover:not(:disabled){transform:translateY(-1px);border-color:#9fcfbf;background:#f8fdfb}.choice-button:disabled{cursor:default}.choice-index{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf7f2;color:var(--green-dark);font-size:13px;font-weight:900}.choice-correct{border-color:#00a86b8c;background:#effbf5}.choice-wrong{border-color:#c2413a80;background:#fff5f3}.choice-selected{border-color:#476a3b73;background:#f3f8f1}.question-palette{display:flex;flex-wrap:wrap;gap:7px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f8fbfc}.palette-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#41606a;font-size:12px;font-weight:900}.palette-button.answered{border-color:#9fcfbf;background:#edf9f3;color:var(--green-dark)}.palette-button.current{border-color:var(--green);box-shadow:0 0 0 3px #00a86b1f}.officer-quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:16px}.officer-quiz-main{display:grid;min-width:0;gap:12px}.officer-question-nav{position:sticky;top:86px;display:grid;gap:12px;max-height:calc(100vh - 112px);overflow:auto;padding:12px;border:1px solid #cfe4e8;border-radius:8px;background:#f8fbfc}.officer-nav-heading{display:grid;gap:3px}.officer-nav-heading strong{color:#17323a;font-size:15px;font-weight:950}.officer-nav-heading span,.officer-nav-legend span,.officer-nav-group-head span,.officer-nav-group p{color:var(--muted);font-size:11px;font-weight:850}.officer-nav-legend{display:flex;flex-wrap:wrap;gap:8px}.officer-nav-legend span{display:inline-flex;align-items:center;gap:5px}.officer-nav-legend i{display:inline-block;width:10px;height:10px;border:1px solid var(--border);border-radius:3px;background:#fff}.officer-nav-legend .legend-current{border-color:var(--green);box-shadow:0 0 0 2px #00a86b24}.officer-nav-legend .legend-answered{border-color:#9fcfbf;background:#edf9f3}.officer-nav-legend .legend-unavailable{border-color:#d6c7a3;background:#fff7df}.officer-nav-groups{display:grid;gap:10px}.officer-nav-group{display:grid;gap:9px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff}.officer-nav-group.complete{border-color:#00a86b66}.officer-nav-group-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.officer-nav-group-head>div:first-child{display:grid;min-width:0;gap:2px}.officer-nav-group-head strong{overflow:hidden;color:#17323a;font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.officer-rule{display:grid;place-items:center;min-width:58px;min-height:40px;padding:4px 8px;border:1px solid #d8e4e8;border-radius:8px;background:#f4f7fb}.officer-rule.required{border-color:#cfe4d8;background:#f1f8f3}.officer-rule b{color:#244a55;font-size:11px;font-weight:950}.officer-rule span{color:var(--green-dark);font-size:11px;font-variant-numeric:tabular-nums;font-weight:950}.officer-nav-group p{margin:0}.officer-question-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:6px}.officer-grid-button{width:100%;min-width:0;height:32px;border-radius:7px}.officer-grid-button.unavailable{border-color:#d6c7a3;background:#fff7df;color:#7b6533}.quiz-actions,.result-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.quiz-position{display:inline-flex;align-items:center;min-height:38px;color:var(--muted);font-size:13px;font-weight:900}.question-nav-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.shortcut-help-hint{display:inline-flex;align-items:center;gap:6px;width:auto;min-width:0;min-height:36px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:12px;font-weight:900;white-space:nowrap}.shortcut-help-hint:hover,.shortcut-help-hint:focus-visible{border-color:#cfe4e8;background:#f6fbfc;color:var(--green-dark)}.shortcut-help-hint kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border:1px solid rgba(42,55,62,.18);border-radius:6px;background:#ffffffb3;color:var(--green-dark);font:900 11px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.question-nav-actions button{min-width:92px}.question-nav-actions .shortcut-help-hint{min-width:0}button kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:6px;padding:0 6px;border:1px solid rgba(42,55,62,.18);border-radius:6px;background:#ffffffa6;color:inherit;font:800 11px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.feedback{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-radius:8px;border:1px solid #c8e6d8;background:#f1fbf5}.feedback>div{width:100%}.feedback.incorrect{border-color:#f1cdc8;background:#fff6f4}.feedback.ungraded{border-color:#d8dfc9;background:#f8faf2}.feedback strong{display:block;font-size:17px;line-height:1.35}.mock-selection-limit{margin:-4px 0 0;padding:12px 14px;border:1px solid #ead8a8;border-radius:8px;background:#fff9e8;color:#80631f;font-size:13px;font-weight:850;line-height:1.65}.explanation-text{display:grid;gap:8px}.feedback .explanation-text{margin-top:12px;padding-left:14px;border-left:3px solid rgba(25,135,84,.32)}.feedback.incorrect .explanation-text{border-left-color:#d24a3647}.feedback.ungraded .explanation-text{border-left-color:#768a4147}.explanation-text p{margin:0;color:#4d636c;font-size:15px;line-height:1.85}.feedback .explanation-text p{color:#304850;font-size:16px;line-height:1.9}.question-row-explanation{margin-top:8px}.question-row-explanation .explanation-text{gap:4px}.question-row-explanation .explanation-text p{color:#61737a;font-size:13px;line-height:1.65}.result-card{grid-template-columns:170px 1fr;align-items:center}.mock-result-view{display:grid;gap:18px}.result-ring{display:grid;place-items:center;width:150px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,#fff 0 56%,transparent 57%),conic-gradient(var(--green) 0 var(--score-rate),#dbe8ea var(--score-rate) 100%);border:1px solid var(--border)}.result-ring span{font-size:34px;font-weight:900}.result-ring small{margin-top:-28px;color:var(--muted);font-weight:900}.result-copy h2,.view-heading h2,.empty-card h2{margin:0;font-size:clamp(26px,3.3vw,40px);line-height:1.2;letter-spacing:0}.result-copy p,.empty-card p{color:var(--muted);line-height:1.75}.mock-result-list{gap:18px}.mock-result-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mock-result-heading h3{margin:0;color:var(--ink);font-size:22px}.mock-result-heading p{margin:6px 0 0;color:var(--muted);font-size:13px;font-weight:800}.mock-result-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.mock-result-counts span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:8px;background:#f4f8f9;color:#516a73;font-size:12px;font-weight:900}.mock-result-rows{display:grid;gap:10px}.mock-result-row{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#fff}.mock-result-row.missed{border-color:#f1cdc8;background:snow}.mock-result-row.unanswered,.mock-result-row.ungraded{background:#fbfcfc}.mock-result-status{display:grid;align-content:start;gap:4px;text-align:right}.mock-result-status span{color:var(--green-dark);font-size:17px;font-weight:900}.mock-result-row.missed .mock-result-status span{color:var(--red)}.mock-result-row.unanswered .mock-result-status span,.mock-result-row.ungraded .mock-result-status span{color:var(--muted)}.mock-result-status small{color:var(--muted);font-size:12px;font-weight:850}.mock-result-question{min-width:0}.mock-result-question h3{margin:8px 0 0;color:var(--ink);font-size:17px;line-height:1.45}.empty-card{place-items:start}.empty-history-card{display:grid;gap:14px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#f8fbfc}.empty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:8px;background:var(--blue-soft);color:var(--blue)}.view-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.view-heading p{margin:8px 0 0}.search-box{display:flex;align-items:center;gap:8px;width:min(340px,100%);min-height:42px;border:1px solid var(--border);border-radius:8px;background:#fff;padding:0 12px;color:var(--muted)}.search-box input{min-height:38px;border:0;padding:0}.question-table{display:grid;gap:10px}.question-row{display:grid;grid-template-columns:minmax(0,1fr) 78px 178px;gap:16px;align-items:center;padding:16px}.question-row h3{margin:10px 0 0;font-size:16px;line-height:1.45}.question-row p{margin:8px 0 0}.review-list,.history-timeline{display:grid;gap:10px}.review-row,.history-row{display:grid;gap:16px;align-items:center;border:1px solid var(--border);border-radius:8px;background:#fff;padding:16px}.review-row{grid-template-columns:38px minmax(0,1fr) 86px 156px}.history-row{grid-template-columns:96px minmax(0,1fr) 150px;align-items:start}.history-row.missed{border-color:#f1cdc8;background:#fffaf9}.review-rank{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#edf7f2;color:var(--green-dark);font-size:13px;font-weight:900}.review-row h3,.history-row h3{margin:10px 0 0;font-size:16px;line-height:1.45}.history-row p{margin:8px 0 0;color:var(--muted);font-size:13px;font-weight:800}.mock-history-panel{display:grid;gap:12px;margin-bottom:18px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#f8fbfc}.mock-history-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.mock-history-heading h3{margin:0;color:var(--ink);font-size:18px}.mock-history-heading span{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:8px;background:#fff;color:var(--muted);font-size:12px;font-weight:900}.mock-history-list{display:grid;gap:10px}.mock-history-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 210px;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.mock-history-row>div:first-child,.mock-history-meta,.mock-history-score{display:grid;gap:4px}.mock-history-row span,.mock-history-row small{color:var(--muted);font-size:12px;font-weight:850}.mock-history-row strong{color:var(--ink);font-size:15px;font-weight:950;line-height:1.45}.mock-history-score{text-align:right}.mock-history-score strong{color:var(--green-dark);font-size:24px}.history-question-preview{padding:10px 12px;border:1px solid #e2ecee;border-radius:8px;background:#fbfdfd;color:#314850;font-size:13px;font-weight:850;line-height:1.65}.history-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.history-answer{display:grid;gap:6px;min-width:0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}.history-answer span{color:var(--muted);font-size:11px;font-weight:900}.history-answer strong{color:var(--ink);font-size:13px;font-weight:900;line-height:1.55;overflow-wrap:anywhere}.history-answer.selected{border-color:#bddfd2;background:#f4fbf7}.history-answer.selected.wrong{border-color:#f1cdc8;background:#fff6f4}.history-answer.correct{border-color:#cfe4d8}.history-explanation-preview{padding-left:10px;border-left:3px solid rgba(0,168,107,.24);color:#4d636c;line-height:1.65}.history-attempt-meta{color:#789;font-size:12px}.review-reasons{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.review-reasons span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:8px;background:var(--amber-soft);color:var(--amber);font-size:12px;font-weight:900}.review-score,.history-result{display:grid;gap:3px;text-align:right}.review-score strong,.history-result span{font-size:18px;font-weight:900}.history-result span{color:var(--green-dark)}.history-row.missed .history-result span{color:var(--red)}.review-score small,.history-result small{color:var(--muted);font-size:12px;font-weight:850}.row-status{display:grid;gap:3px;text-align:right}.row-status strong{font-size:18px}.row-status small,.session-row small,.weak-row small{color:var(--muted);font-size:12px;font-weight:850}.row-actions{display:grid;gap:8px}.market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.market-groups{display:grid;gap:24px}.market-group{display:grid;gap:12px}.market-group+.market-group{padding-top:22px;border-top:1px solid var(--border)}.market-group-heading{display:grid;gap:4px}.market-group-heading>span{color:var(--green-dark);font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.market-group-heading h3,.market-group-heading p{margin:0}.market-group-heading h3{color:var(--ink);font-size:20px}.market-group-heading p{color:var(--muted);font-size:13px;font-weight:750}.deck-card{display:grid;align-content:start;gap:14px;padding:16px;border:1px solid var(--border);border-top:4px solid var(--deck-accent);border-radius:8px;background:#fff}.deck-card.enrolled{border-color:color-mix(in srgb,var(--deck-accent) 45%,var(--border));box-shadow:0 10px 24px #0c30380f}.deck-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.deck-symbol{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:color-mix(in srgb,var(--deck-accent) 13%,white);color:var(--deck-accent)}.deck-status{min-width:62px;padding:6px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:12px;font-weight:900;text-align:center}.deck-status.enrolled{border-color:#bddfd2;background:#edf9f3;color:var(--green-dark)}.deck-card h3{margin:0 0 8px;font-size:19px;line-height:1.3}.deck-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.deck-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.deck-metrics div{padding:10px;border-radius:8px;background:#f6fafb}.deck-metrics dt{color:var(--muted);font-size:11px;font-weight:900}.deck-metrics dd{margin:3px 0 0;font-size:18px;font-weight:900}.deck-actions{display:flex;flex-wrap:wrap;gap:8px}.mini-stats div{border-radius:8px;background:#f6fafb;padding:10px}.mini-stats dt{color:var(--muted);font-size:11px;font-weight:900}.mini-stats dd{margin:3px 0 0;font-size:18px;font-weight:900}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{display:grid;gap:8px;padding:16px}.metric-card svg{color:var(--blue)}.metric-card span{color:var(--muted);font-size:12px;font-weight:900}.metric-card strong{font-size:24px}.stats-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.table-panel{display:grid;gap:12px;padding:16px}.progress-row,.session-row,.weak-row{display:grid;gap:8px}.progress-row{grid-template-columns:90px 1fr 48px;align-items:center}.progress-row.wide{grid-template-columns:96px 1fr 72px}.progress-row span{font-size:13px;font-weight:900}.progress-row strong{text-align:right}.weak-row{padding:12px;border-radius:8px;background:#f8fbfc}.weak-row span{color:var(--muted);font-size:12px;font-weight:850}.weak-row strong{font-size:14px}.weak-row.full{grid-template-columns:minmax(0,1fr) 120px 112px;align-items:center}.session-row{grid-template-columns:minmax(0,1fr) 70px 120px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.session-row:last-child{border-bottom:0}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0}.note-list{display:grid;gap:8px;margin:12px 0 0;padding-left:18px}.danger-zone{display:flex;justify-content:flex-end}.premium-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid #b7862d;border-radius:8px;background:linear-gradient(135deg,#8f661e,#c49439);color:#fff;font-size:14px;font-weight:950;box-shadow:0 8px 20px #8f661e2e}.premium-button:hover,.premium-button:focus-visible{filter:brightness(1.05);transform:translateY(-1px)}.premium-button:disabled{cursor:wait;filter:grayscale(.5);opacity:.65;transform:none}.account-button.upgrade{border-color:#d9bd83;background:#fffaf0;color:#775516}.account-pill.premium{border-color:#d9bd83;background:#fffaf0}.account-pill.premium strong{padding:2px 5px;border-radius:4px;background:#a87924;color:#fff;font-size:9px;letter-spacing:.08em}.premium-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;padding:28px;border:1px solid #dbc18c;border-radius:10px;background:linear-gradient(135deg,#fffdf8,#fff7e7);box-shadow:0 18px 44px #63471414}.premium-callout h2{margin:8px 0;color:#3f321b;font-size:clamp(24px,4vw,34px)}.premium-callout p{max-width:680px;margin:0;color:#6b5a3a;font-weight:750;line-height:1.75}.premium-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#8a621d;font-size:12px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.premium-callout-price{display:grid;justify-items:end;min-width:190px;color:#6a4b15}.premium-callout-price strong{color:#3f321b;font-size:34px}.premium-callout-price small{margin-bottom:12px;color:#846d43;font-weight:800}.upgrade-panel{width:min(760px,100%)}.upgrade-panel .modal-heading{background:linear-gradient(135deg,#fffdf8,#fff7e7)}.premium-benefits{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;margin:0;padding:20px 24px;list-style:none}.premium-benefits li{display:flex;align-items:center;gap:9px;color:#3e4f54;font-size:14px;font-weight:850}.premium-benefits svg{flex:0 0 auto;color:var(--green)}.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 24px 20px}.pricing-card,.current-plan-card{position:relative;display:grid;gap:10px;padding:18px;border:1px solid var(--border);border-radius:10px;background:#fff}.pricing-card.recommended{border-color:#c69b4d;background:#fffdf8}.pricing-card>span,.current-plan-card>span{color:#566c74;font-size:13px;font-weight:900}.pricing-card>strong{color:#1e333a;font-size:30px}.pricing-card>strong small{font-size:13px}.pricing-card p{min-height:38px;margin:0;color:var(--muted);font-size:12px;font-weight:750}.recommend-badge{position:absolute;top:-10px;right:12px;padding:4px 8px;border-radius:999px;background:#a87924;color:#fff!important;font-size:10px!important}.current-plan-card{margin:0 24px 20px;border-color:#c69b4d;background:#fffdf8}.billing-fine-print{margin:0;padding:0 24px 22px;color:#6b7d83;font-size:11px;line-height:1.7}.billing-fine-print a{margin:0 3px;color:var(--green-dark)}.checkout-notice{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;border:1px solid #ead8a8;border-radius:8px;background:#fff9e8;color:#6b551f;font-size:13px;font-weight:850}.checkout-notice.success{border-color:#bde2d1;background:#effbf5;color:#245c49}.checkout-notice span{flex:1}.checkout-notice button{display:grid;place-items:center;padding:4px;background:transparent;color:inherit}@media(max-width:1180px){.learning-shell{grid-template-columns:300px minmax(0,1fr)}.landing-hero{grid-template-columns:1fr;min-height:0}.insight-panel{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.app-header{grid-template-columns:1fr;height:auto;gap:12px;padding:14px 0}.top-nav{justify-content:flex-start;overflow-x:auto;max-width:100%;padding-bottom:2px}.header-account{justify-content:flex-start;overflow-x:auto}.learning-shell{grid-template-columns:1fr}.control-panel,.insight-panel{position:static}.insight-panel,.stats-layout,.market-grid,.metric-grid,.mock-setup-grid,.mock-status-bar,.landing-feature-grid,.landing-pack-list,.premium-callout,.premium-benefits,.pricing-grid{grid-template-columns:1fr}.premium-callout-price{justify-items:start}.landing-shell{padding-top:22px}.entry-track-switcher{grid-template-columns:1fr;align-items:stretch}.landing-hero-copy h1{font-size:clamp(36px,9vw,56px)}.question-row,.review-row,.history-row,.mock-history-row,.weak-row.full{grid-template-columns:1fr}.row-status,.review-score,.history-result,.mock-history-score,.mock-result-status{text-align:left}.row-actions{grid-template-columns:1fr 1fr}.officer-quiz-layout{grid-template-columns:1fr}.officer-question-nav{position:static;max-height:none;order:-1}.result-card,.mock-result-row{grid-template-columns:1fr}.view-heading,.mock-result-heading,.feedback{flex-direction:column}.mock-result-counts{justify-content:flex-start}}@media(max-width:560px){.app-header,.learning-shell,.landing-shell{width:min(100% - 20px,1380px)}.panel-heading h1{font-size:26px}.quiz-card,.bank-view,.market-view,.stats-view,.control-panel,.insight-panel{padding:16px}.choice-button{grid-template-columns:30px 1fr}.question-image-frame{max-height:68vh}.question-image-frame img{min-width:720px}.choice-button svg{display:none}.row-actions,.deck-actions,.history-answer-grid,.deck-metrics,.mini-stats{grid-template-columns:1fr}.deck-actions{display:grid}.landing-proof,.oauth-buttons{grid-template-columns:1fr}.modal-backdrop{padding:12px}.modal-heading,.auth-form,.support-form,.landing-product-preview,.landing-packs{padding:14px}.landing-section-heading,.preview-footer{align-items:stretch;flex-direction:column}.landing-actions{display:grid}.entry-track-switcher>div,.cross-track-note{grid-template-columns:1fr}.entry-track-switcher a{justify-content:flex-start}.cross-track-note>.secondary-button{width:100%}}:root{--bg: #f7f9fb;--paper: #ffffff;--ink: #10213f;--muted: #66748a;--border: #dce3eb;--border-strong: #c6d1dd;--green: #119c5b;--green-dark: #087a46;--green-soft: #edf8f2;--blue: #2b67d1;--blue-soft: #f1f5fd;--amber: #a86f18;--amber-soft: #fff9ed;--red: #c64545;--shadow: 0 18px 50px rgba(19, 39, 73, .08);--shadow-soft: 0 8px 24px rgba(19, 39, 73, .055);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px}body{background:var(--bg);color:var(--ink);letter-spacing:.01em}button,select,input,textarea{letter-spacing:.01em}:focus-visible{outline:3px solid rgba(43,103,209,.22);outline-offset:2px}.app-header{width:100%;height:68px;padding:0 clamp(22px,3vw,48px);border-bottom:1px solid var(--border);background:#fffffff5;box-shadow:0 1px #10213f05}.brand{gap:12px;color:#0b1d40;font-size:21px;font-weight:900;letter-spacing:-.025em}.brand-mark{width:36px;height:36px;border-radius:9px;background:#0f2a57;box-shadow:none;font-size:15px}.top-nav{align-self:stretch;gap:4px}.top-nav button{position:relative;min-height:100%;padding:0 15px;border-radius:0;color:#4d5c72;font-size:13px;font-weight:800}.top-nav button:hover,.top-nav button:focus-visible{background:#f6f8fb;color:var(--ink)}.top-nav button.active{background:transparent;color:var(--ink)}.top-nav button.active:after{position:absolute;right:12px;bottom:-1px;left:12px;height:3px;border-radius:3px 3px 0 0;background:var(--green);content:""}.sidebar-toggle-button,.account-button,.account-pill,.icon-button{border-color:var(--border);border-radius:var(--radius-sm);box-shadow:none}.learning-shell,.landing-shell{width:min(1440px,100%);margin:0 auto}.landing-shell{padding:0 clamp(24px,5vw,76px) 56px}.landing-page{gap:0;padding-top:28px}.entry-track-switcher{grid-template-columns:auto minmax(380px,540px) auto;justify-content:center;gap:18px;margin-bottom:36px;padding:0;border:0;background:transparent}.entry-track-switcher>span{align-self:center;color:#516178;font-size:12px;font-weight:900}.entry-track-switcher>small{align-self:center;color:#7b8798;font-size:11px;font-weight:700}.entry-track-switcher>div{padding:4px;border:1px solid var(--border);border-radius:10px;background:#fff}.entry-track-switcher button{min-height:42px;border:1px solid transparent;border-radius:7px;background:transparent;color:#617087;font-size:13px;font-weight:850}.entry-track-switcher button.active{border-color:#a8d9bf;background:var(--green-soft);color:var(--green-dark);box-shadow:none}.landing-hero{grid-template-columns:minmax(0,1.05fr) minmax(480px,.95fr);gap:clamp(38px,4vw,64px);align-items:center;min-height:580px;padding:56px 0 72px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}.landing-eyebrow{display:none}.landing-hero-copy{max-width:610px;padding-left:8px}.landing-hero-copy h1{max-width:610px;margin:0;color:#0b1d40;font-size:clamp(40px,3.3vw,54px);font-weight:950;letter-spacing:-.045em;line-height:1.17}.landing-hero-copy p{max-width:570px;margin:26px 0 0;color:#53637a;font-size:16px;font-weight:650;line-height:1.95}.landing-actions{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.8fr);gap:12px;margin-top:34px}.landing-actions .premium-button{grid-column:1 / -1;justify-self:start;min-height:34px;padding:0;border:0;background:transparent;color:var(--amber);box-shadow:none}.primary-button,.secondary-button,.premium-button{min-height:46px;border-radius:var(--radius-sm);font-size:13px;font-weight:900;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.primary-button{background:var(--green);box-shadow:0 8px 18px #119c5b2b}.primary-button:hover:not(:disabled),.primary-button:focus-visible:not(:disabled){background:var(--green-dark);transform:translateY(-1px);box-shadow:0 12px 24px #119c5b38}.secondary-button{border-color:var(--border-strong);background:#fff;color:var(--ink)}.secondary-button:hover:not(:disabled),.secondary-button:focus-visible:not(:disabled){border-color:#9aabc0;background:#f8fafc;color:#0b1d40}.landing-proof{grid-template-columns:repeat(3,1fr);gap:0;margin-top:38px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-proof div{min-height:88px;padding:18px 20px 16px 0;border:0;border-right:1px solid var(--border);border-radius:0;background:transparent}.landing-proof div+div{padding-left:20px}.landing-proof div:last-child{border-right:0}.landing-proof dt{color:#778397;font-size:11px;font-weight:800}.landing-proof dd{margin-top:8px;color:#0b1d40;font-size:25px;font-weight:950}.landing-product-preview{padding:16px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow)}.preview-toolbar,.preview-question,.preview-choice,.preview-footer{border-color:var(--border)}.preview-toolbar{border-radius:9px;background:#f7f9fc}.preview-question{padding:23px 18px;border-radius:9px;background:#fff}.preview-choice{min-height:54px;border-radius:8px;background:#fff}.preview-choice.selected{border-color:#71c49a;background:var(--green-soft)}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:0;padding:72px 0;border-bottom:1px solid var(--border)}.landing-feature{min-height:210px;padding:12px clamp(28px,4vw,58px);border:0;border-right:1px solid var(--border);border-radius:0;background:transparent;text-align:center;box-shadow:none}.landing-feature:first-child{padding-left:0}.landing-feature:last-child{padding-right:0;border-right:0}.landing-feature>span{width:52px;height:52px;margin:0 auto 20px;border:0;border-radius:0;background:transparent;color:#16366a}.landing-feature h2{margin:0 0 12px;color:#10213f;font-size:18px}.landing-feature p{margin:0;color:var(--muted);font-size:13px;line-height:1.85}.premium-callout{margin-top:68px;padding:34px 40px;border-color:#ead7ac;border-radius:var(--radius);background:var(--amber-soft);box-shadow:none}.landing-packs{margin-top:58px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.landing-pack-list{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.landing-pack-row{min-height:76px;padding:14px 18px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:#fff;box-shadow:none}.landing-pack-row:last-child{border-bottom:0}.landing-pack-row:hover{background:#f8fbf9}.cross-track-note{margin-top:24px;border:0;border-left:3px solid #c9d4e1;border-radius:0;background:transparent}.app-footer{width:min(1290px,calc(100% - 48px));padding:26px 0 34px;border-color:var(--border);color:#778397}.learning-shell{grid-template-columns:272px minmax(0,1fr) 268px;gap:0;align-items:stretch;padding:0}.learning-shell.practice-learning-shell{grid-template-columns:272px minmax(0,1fr)}.learning-shell.focus-learning-shell{grid-template-columns:minmax(0,1fr)}.control-panel{position:sticky;top:68px;height:calc(100vh - 68px);overflow-y:auto;padding:28px 20px 38px;border:0;border-right:1px solid var(--border);border-radius:0;background:#fff;box-shadow:none}.control-group{padding:0 0 24px;border-bottom:1px solid var(--border)}.control-group+.control-group{padding-top:24px}.control-group h2{color:#283b5c;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.pack-toggle,.order-options button,.filter-button-group button{border-radius:8px;box-shadow:none}.pack-toggle.selected,.order-options button.order-selected,.filter-button-group button.active{border-color:#a9d9c0;background:var(--green-soft);color:var(--green-dark)}.workbench{min-width:0;padding:clamp(28px,3vw,46px);background:var(--bg)}.practice-learning-shell .workbench{padding:clamp(28px,3vw,46px) clamp(32px,4vw,64px) 80px}.insight-panel{position:sticky;top:68px;height:calc(100vh - 68px);padding:28px 20px;border-left:1px solid var(--border);background:#fff}.quiz-card,.market-view,.history-view,.review-view,.stats-view,.mock-setup-view,.bank-view{max-width:1060px;margin:0 auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.quiz-topline{align-items:flex-start;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--border)}.quiz-topline h2{color:#0b1d40;font-size:clamp(25px,3vw,34px);letter-spacing:-.025em}.question-meta{justify-content:flex-end}.question-meta span,.question-tags span,.weak-tags span,.mock-result-counts span{border:0;border-radius:0;background:transparent;color:#6b788c}.question-meta span+span{padding-left:10px;border-left:1px solid var(--border)}.question-prompt,.question-copy,.formatted-question{color:#182a48;font-size:16px;line-height:1.9}.question-text,.question-prompt-panel,.question-body{border-color:var(--border-strong);border-radius:var(--radius);background:#fff;box-shadow:none}.question-text-panel{overflow:hidden;border:1px solid var(--border-strong);border-radius:var(--radius);background:#fff}.question-text-heading{padding:11px 16px;border-bottom:1px solid var(--border);background:#fbfcfd;color:var(--green-dark);font-size:12px}.formatted-question-text{padding:20px 18px;color:#182a48;font-size:16px;line-height:1.9}.formatted-question-text>:first-child{margin-top:0}.formatted-question-text>:last-child{margin-bottom:0}.choices{gap:10px;margin-top:24px}.choice-button{min-height:60px;grid-template-columns:38px minmax(0,1fr) auto;padding:12px 16px;border:1px solid var(--border);border-radius:10px;background:#fff;color:#223451;box-shadow:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}.choice-button:hover:not(:disabled){border-color:#8fa3bb;background:#fbfcfe;transform:translateY(-1px)}.choice-index{width:30px;height:30px;border:1px solid var(--border-strong);border-radius:50%;background:#fff;color:#53637a}.choice-button.choice-selected,.choice-button.choice-correct{border-color:#55b884;background:var(--green-soft);color:#0b6e42}.choice-button.choice-selected .choice-index,.choice-button.choice-correct .choice-index{border-color:var(--green);background:var(--green);color:#fff}.choice-button.choice-wrong{border-color:#db8d8d;background:#fff4f4;color:#8d2929}.feedback{margin-top:18px;padding:20px 22px;border:0;border-left:4px solid var(--green);border-radius:4px;background:#f2f9f5;box-shadow:none}.feedback.incorrect{border-left-color:var(--red);background:#fff5f5}.feedback.ungraded{border-left-color:var(--blue);background:var(--blue-soft)}.feedback .explanation-text{padding:0;border:0;background:transparent;color:#33465f}.quiz-actions{position:sticky;bottom:16px;z-index:10;margin-top:28px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:#fffffff5;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shortcut-help-hint,.report-question-button{color:#607088}.mock-status-bar,.practice-status-bar{margin-bottom:28px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;box-shadow:none}.progress-track,.preview-progress{background:#e8edf2}.progress-track>span,.preview-progress>span{background:var(--green)}.view-heading{margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--border)}.view-heading h2{color:#0b1d40;font-size:clamp(28px,3.5vw,40px);letter-spacing:-.03em}.view-heading p{max-width:680px;color:var(--muted);line-height:1.8}.table-panel,.metric-card,.market-card,.review-row,.history-row,.mock-history-panel,.mock-result-row,.stats-panel{border-color:var(--border);border-radius:var(--radius);background:#fff;box-shadow:none}.metric-card{min-height:132px}.modal-panel,.shortcut-help-panel{border-color:var(--border-strong);border-radius:var(--radius-lg);box-shadow:0 24px 70px #091d3f2e}.modal-heading,.shortcut-help-heading{background:#f7f9fc}@media(max-width:1180px){.landing-hero{grid-template-columns:1fr 1fr;gap:40px}.learning-shell,.learning-shell.practice-learning-shell{grid-template-columns:240px minmax(0,1fr)}.insight-panel{display:none}}@media(max-width:960px){.app-header{grid-template-columns:auto minmax(0,1fr);gap:18px;height:64px;padding:0 20px}.header-account{display:none}.top-nav{justify-content:flex-start;overflow-x:auto;scrollbar-width:none}.top-nav::-webkit-scrollbar{display:none}.top-nav button{min-height:64px;padding:0 12px}.entry-track-switcher{grid-template-columns:1fr;justify-items:stretch;gap:10px}.entry-track-switcher>span,.entry-track-switcher>small{text-align:center}.landing-hero{grid-template-columns:1fr;min-height:0;padding-top:28px}.landing-hero-copy,.landing-product-preview{max-width:720px}.landing-feature-grid{grid-template-columns:1fr}.landing-feature,.landing-feature:first-child,.landing-feature:last-child{min-height:0;padding:28px 0;border-right:0;border-bottom:1px solid var(--border);text-align:left}.landing-feature:last-child{border-bottom:0}.landing-feature>span{margin:0 0 14px}.learning-shell,.learning-shell.practice-learning-shell{grid-template-columns:1fr}.control-panel{position:static;height:auto;max-height:none;border-right:0;border-bottom:1px solid var(--border)}.workbench,.practice-learning-shell .workbench{padding:28px 24px 72px}}@media(max-width:640px){.app-header{display:flex;align-items:center;gap:10px;height:auto;min-height:60px;padding:10px 14px 0;-webkit-backdrop-filter:none;backdrop-filter:none}.brand{flex:0 0 auto;font-size:18px}.brand-mark{width:32px;height:32px}.top-nav{position:fixed;top:auto!important;right:0;bottom:0;left:0;z-index:50;justify-content:space-around;height:58px;padding:0 4px env(safe-area-inset-bottom);border-top:1px solid var(--border);background:#fffffffa;box-shadow:0 -8px 24px #10213f0f}.top-nav button{min-width:54px;min-height:52px;padding:0 7px;font-size:11px}.top-nav button:nth-child(n+6){display:none}.top-nav button.active:after{top:0;bottom:auto}.landing-shell,.learning-shell{width:100%}.landing-shell{padding:0 18px 92px}.landing-page{padding-top:20px}.entry-track-switcher{margin-bottom:18px}.entry-track-switcher>div{grid-template-columns:1fr}.landing-hero{gap:30px;padding:24px 0 48px}.landing-hero-copy{padding-left:0}.landing-hero-copy h1{font-size:clamp(35px,11vw,46px);line-height:1.2}.landing-hero-copy p{margin-top:20px;font-size:14px;line-height:1.85}.landing-actions{grid-template-columns:1fr}.landing-actions .premium-button{grid-column:auto}.landing-proof{grid-template-columns:repeat(3,1fr)}.landing-proof div,.landing-proof div+div{min-height:76px;padding:14px 10px}.landing-proof dt{font-size:9px}.landing-proof dd{font-size:19px}.landing-product-preview{padding:10px;border-radius:12px}.preview-choice{min-height:48px}.premium-callout{margin-top:44px;padding:24px 20px}.app-footer{width:calc(100% - 36px);margin-bottom:64px}.control-panel{padding:22px 18px}.control-panel{max-height:250px;overflow-y:auto;overscroll-behavior:contain}.workbench,.practice-learning-shell .workbench{padding:24px 16px 88px}.quiz-topline{flex-direction:column;gap:12px}.question-meta{justify-content:flex-start}.choice-button{grid-template-columns:34px minmax(0,1fr);min-height:58px;padding:11px 12px}.quiz-actions{bottom:68px;align-items:stretch;flex-direction:column}.question-nav-actions{display:grid;grid-template-columns:1fr 1fr}.shortcut-help-hint,.report-question-button{display:none}.question-nav-actions .primary-button,.question-nav-actions .secondary-button{width:100%}.view-heading h2{font-size:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
