.digital-sat-root{--ds-bg:#f7f6f2;--ds-surface:#ffffff;--ds-border:#d9d7cf;--ds-text:#1a1a1a;--ds-muted:#5c5c5c;--ds-accent:#0b4fff;--ds-accent-soft:#e8efff;--ds-danger:#b42318;--ds-nav-height:56px;--ds-footer-height:64px;min-height:100vh;background:var(--ds-bg);color:var(--ds-text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column}.digital-sat-root *{box-sizing:border-box}.digital-sat-error,.digital-sat-loading{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.digital-sat-spinner{width:48px;height:48px;border:3px solid var(--ds-border);border-top-color:var(--ds-accent);border-radius:50%;animation:ds-spin .8s linear infinite}@keyframes ds-spin{to{transform:rotate(1turn)}}.digital-sat-topbar{height:var(--ds-nav-height);background:var(--ds-surface);border-bottom:1px solid var(--ds-border);display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;position:sticky;top:0;z-index:20}.digital-sat-topbar__brand{font-weight:600;font-size:.95rem;letter-spacing:.02em}.digital-sat-topbar__brand-link{display:inline-block;font-weight:600;font-size:.875rem;letter-spacing:.02em;color:var(--ds-text);text-decoration:none}.digital-sat-topbar__brand-link:hover{color:var(--ds-accent,#2563eb);text-decoration:underline}.digital-sat-topbar__section{font-size:.875rem;color:var(--ds-muted)}.digital-sat-topbar__timer{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.125rem;min-width:4.5rem;text-align:center}.digital-sat-topbar__timer.is-low{color:var(--ds-danger)}.digital-sat-topbar__tools{display:flex;align-items:center;gap:.75rem}.digital-sat-btn{border:1px solid var(--ds-border);background:var(--ds-surface);color:var(--ds-text);border-radius:6px;padding:.45rem .85rem;font-size:.875rem;cursor:pointer;transition:background .15s,border-color .15s}.digital-sat-btn:hover:not(:disabled){background:#f0efea}.digital-sat-btn:disabled{opacity:.5;cursor:not-allowed}.digital-sat-btn--primary{background:var(--ds-accent);border-color:var(--ds-accent);color:#fff}.digital-sat-btn--primary:hover:not(:disabled){background:#0940cc}.digital-sat-btn--flag.is-active{background:#fff8e6;border-color:#e6a800}.digital-sat-main{flex:1;display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - var(--ds-nav-height) - var(--ds-footer-height))}.digital-sat-pane{overflow-y:auto;padding:1.5rem 1.75rem;background:var(--ds-surface)}.digital-sat-pane--left{border-right:1px solid var(--ds-border);background:#faf9f6}.digital-sat-pane__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ds-muted);margin-bottom:.75rem}.digital-sat-passage{line-height:1.65;font-size:1rem}.digital-sat-question-heading{font-size:1.05rem;font-weight:600;margin-bottom:1.25rem;line-height:1.5}.digital-sat-options{display:flex;flex-direction:column;gap:.65rem}.digital-sat-option{display:flex;align-items:flex-start;gap:.75rem;width:100%;text-align:left;padding:.85rem 1rem;border:2px solid var(--ds-border);border-radius:8px;background:var(--ds-surface);cursor:pointer;transition:border-color .15s,background .15s}.digital-sat-option:hover:not(:disabled){border-color:#aeb8d8}.digital-sat-option.is-selected{border-color:var(--ds-accent);background:var(--ds-accent-soft)}.digital-sat-option:disabled{cursor:not-allowed;opacity:.85}.digital-sat-option__letter{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:50%;border:2px solid var(--ds-border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.digital-sat-option.is-selected .digital-sat-option__letter{border-color:var(--ds-accent);background:var(--ds-accent);color:#fff}.digital-sat-option__text{flex:1;line-height:1.5;padding-top:.1rem}.digital-sat-pane--math-only{grid-column:1/-1;max-width:720px;margin:0 auto;width:100%;background:var(--ds-surface);border-right:none}.digital-sat-footer{height:var(--ds-footer-height);background:var(--ds-surface);border-top:1px solid var(--ds-border);display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;position:sticky;bottom:0;z-index:20}.digital-sat-footer__progress{font-size:.875rem;color:var(--ds-muted)}.digital-sat-footer__nav{display:flex;gap:.5rem}.digital-sat-navigator{display:flex;flex-wrap:wrap;gap:.35rem;padding:.75rem 1.25rem;background:#f0efea;border-bottom:1px solid var(--ds-border)}.digital-sat-navigator__dot{width:2rem;height:2rem;border-radius:4px;border:1px solid var(--ds-border);background:var(--ds-surface);font-size:.75rem;font-weight:600;cursor:pointer}.digital-sat-navigator__dot.is-current{border-color:var(--ds-accent);box-shadow:0 0 0 2px var(--ds-accent-soft)}.digital-sat-navigator__dot.is-answered{background:var(--ds-accent-soft)}.digital-sat-navigator__dot.is-flagged{position:relative}.digital-sat-navigator__dot.is-flagged:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:#e6a800}.digital-sat-routing-overlay{position:fixed;inset:0;z-index:50;background:rgba(26,26,26,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:2rem}.digital-sat-routing-overlay__pulse{width:72px;height:72px;border-radius:50%;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;animation:ds-spin 1s linear infinite;margin-bottom:1.5rem}.digital-sat-routing-overlay h2{font-size:1.35rem;font-weight:600;margin-bottom:.5rem}.digital-sat-routing-overlay p{color:rgba(255,255,255,.75);max-width:28rem;line-height:1.5}.digital-sat-video-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:opacity .25s ease}.digital-sat-video-overlay.is-open{opacity:1;pointer-events:auto}.digital-sat-video-panel{position:absolute;top:0;right:0;height:100%;width:min(480px,100vw);background:var(--ds-surface);box-shadow:-8px 0 32px rgba(0,0,0,.18);transform:translateX(100%);transition:transform .3s ease;display:flex;flex-direction:column}.digital-sat-video-overlay.is-open .digital-sat-video-panel{transform:translateX(0)}.digital-sat-video-panel__header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--ds-border)}.digital-sat-video-panel__header h2{font-size:1rem;font-weight:600;margin:0}.digital-sat-video-panel__close{border:none;background:transparent;font-size:1.75rem;line-height:1;cursor:pointer;color:var(--ds-muted);padding:0 .25rem}.digital-sat-video-panel__body{flex:1;padding:1rem;display:flex;align-items:center;justify-content:center;background:#111}.digital-sat-video-player{width:100%;max-height:calc(100vh - 80px);border-radius:4px;background:#000}.digital-sat-video-panel__empty{color:#ccc;padding:2rem;text-align:center}.digital-sat-review-bar{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;background:#eef5ff;border-bottom:1px solid #c5d8ff;font-size:.875rem}@media (max-width:900px){.digital-sat-main{grid-template-columns:1fr}.digital-sat-pane--left{border-right:none;border-bottom:1px solid var(--ds-border);max-height:40vh}}