:root{color:#1b241f;background:#f5f1e7;font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #1b241f;--muted: #5e665f;--paper: #fffaf0;--line: #d9ccb7;--leaf: #276749;--leaf-dark: #143d2b;--sky: #9bd3df;--coral: #f06449;--gold: #f2c14e}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#9bd3dfb3,#f5f1e700 34%),repeating-linear-gradient(0deg,rgba(27,36,31,.03),rgba(27,36,31,.03) 1px,transparent 1px,transparent 32px),#f5f1e7}button,a{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1320px;padding:20px}.brand,.nav-links a,.primary-action{align-items:center;color:var(--ink);display:inline-flex;gap:10px;text-decoration:none}.brand{font-family:Georgia,serif;font-size:1.28rem;font-weight:700}.nav-links{background:#fffaf0b8;border:1px solid var(--line);display:flex;gap:6px;padding:5px}.nav-links a{border-radius:4px;color:var(--muted);padding:9px 14px}.nav-links a.active{background:var(--ink);color:#fffaf0}.dashboard,.about-screen,.practice-screen,.countdown-screen,.setup-screen,.sprint-screen,.revision-run-screen{margin:0 auto;max-width:1320px;padding:42px 20px 64px}.intro-panel,.setup-screen,.result-panel{align-items:start;display:grid;gap:32px;grid-template-columns:minmax(0,1fr) minmax(280px,420px)}.intro-panel{background:linear-gradient(110deg,#276749f2,#143d2bf5),var(--leaf-dark);color:#fffaf0;align-items:center;grid-template-columns:minmax(0,1fr) minmax(260px,360px);min-height:440px;padding:52px;position:relative;overflow:hidden}.intro-panel:after{background:linear-gradient(90deg,transparent 49%,rgba(255,250,240,.35) 50%,transparent 51%),linear-gradient(0deg,transparent 49%,rgba(255,250,240,.35) 50%,transparent 51%);content:"";height:220px;position:absolute;right:70px;top:64px;transform:rotate(-8deg);width:220px}.intro-copy{display:grid;gap:22px;max-width:760px;position:relative;z-index:1}.intro-board{border-left:1px solid rgba(255,250,240,.24);display:grid;gap:12px;justify-items:start;padding-left:38px;position:relative;z-index:1}.intro-board span{color:var(--gold);font-family:Georgia,serif;font-size:5rem;font-weight:800;line-height:.9}.intro-board strong{color:#fffaf0;font-family:Georgia,serif;font-size:2.2rem;line-height:1.05;max-width:260px}.intro-board small{color:#fffaf0b8;font-size:1rem;font-weight:800;text-transform:uppercase}.intro-panel h1,.setup-copy h1,.question-stage h1,.result-panel h1,.history-band h2{font-family:Georgia,serif;letter-spacing:0;line-height:1.02;margin:0}.intro-panel h1,.setup-copy h1,.result-panel h1{font-size:4.2rem;max-width:760px}.setup-copy h1{font-size:3.7rem;max-width:520px}.intro-panel p:not(.eyebrow),.setup-copy p{color:inherit;font-size:1.1rem;line-height:1.7;max-width:560px}.eyebrow{color:var(--coral);font-size:.78rem;font-weight:800;letter-spacing:.12em;margin:0 0 12px;text-transform:uppercase}.intro-panel .eyebrow{color:var(--gold)}.primary-action{background:var(--gold);border:2px solid #131a16;border-radius:4px;box-shadow:5px 5px #131a16;font-weight:800;justify-self:start;padding:14px 18px}.intro-actions{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.secondary-action{align-items:center;border:1px solid currentColor;display:inline-flex;font-weight:900;gap:10px;padding:13px 17px;text-decoration:none}.light-action{color:#fffaf0}.button-reset{color:var(--ink)}.stats-grid,.result-stats{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0}.metric-card{background:var(--paper);border:1px solid var(--line);border-radius:6px;display:grid;gap:8px;min-height:132px;padding:18px}.metric-card span{color:var(--muted)}.metric-card strong{font-family:Georgia,serif;font-size:2.2rem}.metric-icon{color:var(--leaf)}.metric-icon svg{height:24px;width:24px}.sync-loading{align-items:center;color:var(--muted);display:flex;gap:12px;justify-content:center;margin:0 auto;max-width:1320px;min-height:220px;padding:42px 20px 64px}.sync-band{background:#fffaf0d6;border:1px solid var(--line);border-left:5px solid var(--leaf);border-radius:6px;display:grid;gap:22px;margin-bottom:20px;padding:28px 32px}.sync-band.sync-offline,.sync-band.sync-error{border-left-color:var(--coral)}.sync-summary{align-items:center;display:grid;gap:16px;grid-template-columns:auto minmax(0,1fr) auto}.sync-summary h2{font-family:Georgia,serif;font-size:1.8rem;line-height:1.05;margin:0 0 7px}.sync-summary p:not(.eyebrow){color:var(--muted);line-height:1.5;margin:0}.sync-icon{align-items:center;background:#dff4df;border-radius:50%;color:var(--leaf);display:inline-flex;height:48px;justify-content:center;width:48px}.sync-offline .sync-icon,.sync-error .sync-icon{background:#f9dddd;color:#8a2f2f}.recovery-code-card{align-items:center;background:#f5f1e7;border:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding:18px}.recovery-code-card>div{display:grid;gap:5px}.recovery-code-card span,.recovery-code-card small,.recovery-form small{color:var(--muted)}.recovery-code-card code{font-size:1.15rem;font-weight:900;letter-spacing:.08em;overflow-wrap:anywhere}.recovery-form-wrap summary{align-items:center;color:var(--leaf-dark);cursor:pointer;display:inline-flex;font-weight:900;gap:8px}.recovery-form{display:grid;gap:10px;margin-top:16px;max-width:720px}.recovery-form label{font-weight:900}.recovery-form>div{align-items:stretch;display:flex;gap:12px}.recovery-form input{background:#fffaf0;border:2px solid var(--ink);border-radius:4px;flex:1;font:inherit;font-weight:800;letter-spacing:.06em;min-width:0;padding:12px 14px;text-transform:uppercase}.recovery-form .primary-action{justify-self:auto}.history-band,.revision-band,.streak-band,.control-panel,.question-stage,.result-panel{background:#fffaf0d6;border:1px solid var(--line);border-radius:6px;padding:36px}.streak-band{align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) minmax(280px,420px);margin-bottom:20px}.revision-band{display:grid;gap:24px;margin-bottom:20px}.history-band h2{font-size:2.6rem;max-width:680px}.revision-copy,.streak-copy{display:grid;gap:12px}.revision-copy h2,.streak-copy h2{font-family:Georgia,serif;font-size:2.6rem;letter-spacing:0;line-height:1.05;margin:0;max-width:700px}.revision-copy p:not(.eyebrow),.streak-copy p:not(.eyebrow){color:var(--muted);font-size:1.05rem;line-height:1.6;margin:0;max-width:620px}.revision-list{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.revision-card{background:#fffaf0;border:1px solid var(--line);border-radius:6px;display:grid;gap:14px;min-width:0;padding:18px}.revision-card-header{display:grid;gap:6px}.revision-card-header span,.revision-support span,.revision-examples span{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.revision-card-header strong{font-family:Georgia,serif;font-size:1.65rem;line-height:1.08}.revision-card p,.revision-support p,.revision-examples p{line-height:1.5;margin:0}.revision-card>p{color:var(--muted);font-weight:800}.revision-support{border-left:4px solid var(--gold);display:grid;gap:6px;padding-left:12px}.revision-examples{display:grid;gap:10px}.revision-examples div{border-top:1px solid var(--line);display:grid;gap:5px;padding-top:10px}.revision-examples strong{color:var(--leaf-dark)}.streak-scoreboard{display:grid;gap:18px}.streak-score-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.streak-score-grid div{border-left:4px solid var(--gold);display:grid;gap:4px;min-width:0;padding-left:12px}.streak-score-grid span,.daily-best-list span{color:var(--muted)}.streak-score-grid strong{font-family:Georgia,serif;font-size:2rem}.daily-best-list{display:grid;gap:8px}.daily-best-list div{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto auto;padding-top:8px}.history-list{display:grid;gap:10px;margin-top:24px}.session-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(120px,1fr) repeat(5,minmax(70px,auto));padding:14px 0}.empty-state{color:var(--muted)}.about-screen{display:grid;gap:24px}.about-intro{background:linear-gradient(110deg,#276749f2,#143d2bf5),var(--leaf-dark);color:#fffaf0;padding:42px}.about-intro h1,.coverage-card h2{font-family:Georgia,serif;letter-spacing:0;line-height:1.05;margin:0}.about-intro h1{font-size:3.4rem;max-width:840px}.about-intro p:not(.eyebrow){font-size:1.08rem;line-height:1.7;max-width:760px}.coverage-summary{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.coverage-groups{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.coverage-card{background:#fffaf0d6;border:1px solid var(--line);border-radius:6px;display:grid;gap:18px;padding:28px}.coverage-card h2{font-size:2rem}.coverage-card ul{display:grid;gap:8px;list-style:none;margin:0;padding:0}.coverage-card li{align-items:center;border-top:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;min-height:42px;padding-top:8px}.coverage-card li span{font-weight:800}.coverage-card li strong{border:1px solid var(--line);flex:0 0 auto;font-size:.72rem;letter-spacing:.08em;padding:4px 7px;text-transform:uppercase}.active-type{background:#dff4df;border-color:#2f7d32;color:#143d2b}.coming-soon-type{background:#f5f1e7;color:var(--muted)}.setup-screen{align-items:center;grid-template-columns:minmax(300px,.85fr) minmax(520px,1.15fr);min-height:calc(100vh - 116px)}.revision-setup-screen,.revision-set-screen{align-items:start;padding-top:64px}.revision-set-panel{gap:18px}.revision-screen-with-progress{position:relative}.revision-progress-rosette{align-items:center;display:flex;flex-direction:column;pointer-events:none;position:fixed;right:max(20px,calc((100vw - 1320px)/2 + 20px));top:102px;width:108px;z-index:20}.revision-progress-rosette.mini{position:absolute;right:12px;top:12px;width:56px;z-index:2}.revision-progress-rosette.mini .revision-rosette-medal{border-width:3px;box-shadow:0 0 0 2px #5e665f,3px 3px #1b241f2e;height:46px;width:46px}.revision-progress-rosette.mini.complete .revision-rosette-medal{box-shadow:0 0 0 2px var(--gold),3px 3px #1b241f2e}.revision-progress-rosette.mini .revision-rosette-medal:before,.revision-progress-rosette.mini .revision-rosette-medal:after{bottom:-13px;height:19px;width:15px}.revision-progress-rosette.mini .revision-rosette-medal:before{left:8px}.revision-progress-rosette.mini .revision-rosette-medal:after{right:8px}.revision-progress-rosette.mini .revision-rosette-tick{height:21px;width:21px}.revision-progress-rosette.mini .revision-rosette-new{font-size:.47rem}.revision-progress-rosette.mini .revision-rosette-stars{border-width:1px;bottom:-6px;min-height:20px;padding:1px 4px 1px 2px;right:-9px}.revision-progress-rosette.mini .revision-rosette-stars svg{height:14px;width:14px}.revision-progress-rosette.mini .revision-rosette-stars b{font-size:.61rem}.revision-progress-rosette.mini .revision-rosette-status{display:none}.revision-rosette-medal{align-items:center;background:#8a918c;border:6px double #fffaf0;border-radius:50%;box-shadow:0 0 0 3px #5e665f,5px 6px #1b241f38;color:#fffaf0;display:flex;height:88px;justify-content:center;position:relative;width:88px}.revision-progress-rosette.complete .revision-rosette-medal{background:var(--leaf);box-shadow:0 0 0 3px var(--gold),5px 6px #1b241f38}.revision-rosette-medal:before,.revision-rosette-medal:after{background:#6c746e;bottom:-24px;clip-path:polygon(0 0,100% 0,84% 100%,50% 76%,16% 100%);content:"";height:34px;position:absolute;width:28px;z-index:-1}.revision-progress-rosette.complete .revision-rosette-medal:before,.revision-progress-rosette.complete .revision-rosette-medal:after{background:var(--leaf-dark)}.revision-rosette-medal:before{left:17px;transform:rotate(9deg)}.revision-rosette-medal:after{right:17px;transform:rotate(-9deg)}.revision-rosette-new{font-size:.73rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.revision-rosette-stars{align-items:center;background:var(--paper);border:2px solid var(--ink);border-radius:999px;bottom:-5px;color:#b77a00;display:flex;gap:1px;min-height:32px;padding:2px 6px 2px 4px;position:absolute;right:-12px}.revision-rosette-stars b{color:var(--ink);font-size:.8rem}.revision-rosette-status{background:var(--ink);color:#fffaf0;font-size:.69rem;font-weight:950;letter-spacing:.08em;margin-top:10px;padding:5px 8px;text-transform:uppercase}.revision-set-list{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.subject-tabs{border-bottom:2px solid var(--ink);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.subject-tabs button{background:transparent;border:0;color:var(--muted);cursor:pointer;font:inherit;font-weight:950;letter-spacing:.04em;padding:14px 18px;position:relative}.subject-tabs button:after{background:transparent;bottom:-2px;content:"";height:5px;left:0;position:absolute;right:0}.subject-tabs button:hover,.subject-tabs button:focus-visible{color:var(--leaf-dark)}.subject-tabs button.active{color:var(--ink)}.subject-tabs button.active:after{background:var(--gold)}.revision-set-card{align-content:start;background:#fffaf0;border:1px solid var(--line);color:var(--ink);display:grid;gap:10px;min-height:220px;padding:22px;position:relative;text-align:left;text-decoration:none}.revision-set-card:hover,.revision-set-card:focus-visible{border-color:var(--leaf-dark);box-shadow:6px 6px 0 var(--leaf-dark);transform:translate(-2px,-2px)}.revision-set-card>span,.revision-set-card>small{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.revision-set-card>strong{color:var(--leaf-dark);font-family:Georgia,serif;font-size:2rem;line-height:1.05;padding-top:16px}.revision-set-card>p{color:var(--muted);line-height:1.5;margin:0}.revision-set-card>small{align-self:end}.text-action{background:transparent;border:0;color:var(--leaf-dark);font-weight:900;padding:0;text-align:left;text-decoration:underline;text-underline-offset:4px}.revision-plan-panel{gap:18px}.revision-plan-summary{align-items:center;background:#fffaf0;border:1px solid var(--line);display:flex;gap:14px;padding:18px}.revision-plan-summary strong{color:var(--leaf-dark);font-family:Georgia,serif;font-size:2.5rem}.revision-plan-summary span{color:var(--muted);font-weight:800}.revision-block-list{display:grid;list-style:none;margin:0;padding:0}.revision-block-list li{align-items:center;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:34px minmax(0,1fr) auto;padding:13px 0}.revision-block-list li>span{align-items:center;background:var(--ink);color:#fffaf0;display:inline-flex;font-weight:900;height:30px;justify-content:center;width:30px}.revision-block-list div{display:grid;gap:3px}.revision-block-list small,.revision-block-list em{color:var(--muted);font-style:normal;line-height:1.35}.revision-block-list em{font-size:.78rem;font-weight:900;white-space:nowrap}.form-error{background:#f9dddd;border:1px solid #b23b3b;color:#5c1f1f;font-weight:800;margin:0;padding:12px}.control-panel{display:grid;gap:22px;padding:34px}.control-panel label{color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.segmented,.choice-grid{display:grid;gap:10px}.name-panel input{background:#fffaf0;border:1px solid var(--line);color:var(--ink);font:inherit;font-size:1.4rem;min-height:64px;padding:12px 14px}.name-panel input:focus{border-color:var(--leaf);outline:3px solid rgba(39,103,73,.18)}.name-panel .primary-action:disabled{cursor:not-allowed;opacity:.55}.person-row{align-items:center;background:#fffaf0;border:1px solid var(--line);color:var(--muted);display:flex;gap:12px;justify-content:space-between;min-height:64px;padding:14px 16px}.person-row span{font-weight:800}.person-row strong{color:var(--ink)}.person-row button{background:transparent;border:0;color:var(--leaf);font-size:.9rem;font-weight:900;padding:4px 0;text-decoration:underline}.segmented{grid-template-columns:repeat(3,1fr)}.segmented button{font-size:1.35rem;min-height:104px}.mix-summary,.pace-targets,.pace-status{align-items:center;background:#fffaf0;border:1px solid var(--line)}.mix-summary{display:flex;gap:14px;min-height:118px;padding:22px}.mix-summary strong{color:var(--leaf-dark);font-family:Georgia,serif;font-size:2.4rem;line-height:1}.mix-summary span{color:var(--muted);font-weight:700}.pace-targets{display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr))}.pace-targets div{display:grid;gap:6px;min-height:116px;padding:18px}.pace-targets div+div{border-left:1px solid var(--line)}.pace-targets span,.pace-targets small{color:var(--muted);font-weight:800}.pace-targets span{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.pace-targets strong{color:var(--leaf-dark);font-family:Georgia,serif;font-size:2.5rem;line-height:1}.pace-targets small{font-size:.9rem}.pace-status{display:grid;gap:6px;padding:18px}.pace-status strong{font-family:Georgia,serif;font-size:2rem;line-height:1}.pace-status span{color:var(--muted);font-weight:800}.pace-status.gold{background:#fff3c4;border-color:#c99717}.pace-status.pass{background:#dff4df;border-color:#2f7d32}.pace-status.below{background:#f9dddd;border-color:#b23b3b}.streak-result{border-left:5px solid var(--gold);display:grid;gap:6px;padding:8px 0 8px 16px}.streak-result strong{font-family:Georgia,serif;font-size:1.55rem;line-height:1.1}.streak-result span{color:var(--muted);font-weight:800;line-height:1.45}.streak-result.practice-only{border-left-color:var(--coral)}.progress-toggle{align-items:center;background:#fffaf0;border:1px solid var(--line);color:var(--ink);display:flex;gap:14px;min-height:86px;padding:18px;text-transform:none}.maths-topic-options{border:0;display:grid;gap:10px;margin:0;min-width:0;padding:0}.maths-topic-options legend{color:var(--muted);font-size:.82rem;font-weight:800;margin-bottom:10px;text-transform:uppercase}.control-panel .maths-topic-options .progress-toggle{min-height:74px;padding:14px 16px;text-transform:none}.maths-topic-options .progress-toggle strong{font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none}.maths-topic-options .progress-toggle small{font-size:.88rem;font-weight:400;letter-spacing:0;text-transform:none}.maths-topic-icon{background:var(--sky);border:1px solid #5c98a5;border-radius:6px;box-sizing:content-box;color:var(--leaf-dark);flex:0 0 auto;padding:8px}.maths-topic-options .progress-toggle:has(input:checked) .maths-topic-icon{background:var(--leaf-dark);border-color:var(--leaf-dark);color:#fffaf0}.progress-toggle input{accent-color:var(--leaf);flex:0 0 auto;height:22px;width:22px}.progress-toggle span{display:grid;gap:4px}.progress-toggle strong{font-size:1rem}.progress-toggle small{color:var(--muted);font-size:.9rem;font-weight:700;line-height:1.35}.segmented button,.sprint-header button,.choice-grid button{background:#fffaf0;border:1px solid var(--line);border-radius:4px;color:var(--ink);min-height:46px;padding:10px 12px}.segmented button.selected{background:var(--leaf);border-color:var(--leaf-dark);color:#fffaf0}.sprint-header,.revision-run-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.revision-run-header span{background:var(--ink);color:#fffaf0;display:inline-block;font-family:Georgia,serif;font-size:1.15rem;min-width:140px;padding:12px;text-align:center}.revision-run-header button{background:#fffaf0;border:1px solid var(--line);color:var(--ink);min-height:46px;padding:10px 12px}.guided-example-card{background:#fffaf0e6;border:1px solid var(--line);display:grid;gap:26px;margin:0 auto;max-width:980px;padding:42px}.guided-example-heading{align-items:start;display:flex;gap:24px;justify-content:space-between}.guided-example-heading h1{font-family:Georgia,serif;font-size:3.2rem;line-height:1.05;margin:0}.guided-example-heading p:not(.eyebrow){color:var(--muted);font-size:1.05rem;line-height:1.55;margin-bottom:0;max-width:650px}.guided-example-heading>span{background:#dff4df;border:1px solid #2f7d32;color:var(--leaf-dark);flex:0 0 auto;font-weight:900;padding:9px 12px}.guided-problem{background:#fffaf0;border:1px solid var(--line);border-left:6px solid var(--sky);display:grid;gap:12px;padding:20px 24px}.guided-problem>span{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.guided-problem strong{color:var(--leaf-dark);font-size:2.4rem}.worked-example-choices{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:8px}.worked-example-choices>span{align-items:center;background:#fffaf0;border:1px solid var(--line);color:var(--ink);display:flex;font-size:1.35rem;font-weight:800;gap:10px;letter-spacing:0;min-height:62px;padding:10px;text-transform:none}.worked-example-choices b{align-items:center;background:var(--sky);border:1px solid #5c98a5;display:inline-flex;flex:0 0 30px;font-size:.95rem;height:30px;justify-content:center}.work-it-out-heading{font-family:Georgia,serif;font-size:1.7rem;line-height:1.1;margin:0}.worked-answer{align-items:center;background:#dff4df;border:1px solid #2f7d32;display:flex;gap:14px;padding:14px 16px}.worked-answer>span{color:var(--leaf-dark);font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.worked-answer strong{color:var(--leaf-dark);font-size:1.45rem}.guided-steps li{font-size:1.08rem}.revision-question-stage{min-height:0}.revision-block-complete-card{align-items:center;justify-items:center;margin:0 auto;max-width:760px;min-height:480px;text-align:center}.revision-block-complete-card h1{font-family:Georgia,serif;font-size:clamp(3rem,7vw,5.5rem);line-height:.95;margin:0}.revision-block-complete-card>p{margin:0}.revision-block-complete-icon{color:var(--leaf-dark)}.revision-block-score{font-size:1.35rem;line-height:1.5}.revision-block-score strong{color:var(--leaf-dark)}.question-learning-nudge{align-items:center;background:#fff3c4;border:1px solid #c99717;color:#5a4100;display:flex;gap:12px;margin-bottom:18px;padding:12px 14px}.question-learning-nudge strong{background:#5a4100;color:#fffaf0;flex:0 0 auto;font-size:.76rem;letter-spacing:.06em;padding:6px 8px;text-transform:uppercase}.question-learning-nudge span{font-weight:800;line-height:1.4}.revision-feedback{align-items:center;border:1px solid;display:grid;gap:14px;grid-template-columns:auto minmax(0,1fr) auto;padding:18px}.revision-feedback.correct{background:#dff4df;border-color:#2f7d32;color:#143d2b}.revision-feedback.incorrect{background:#fff3c4;border-color:#c99717;color:#5a4100}.revision-feedback div{display:grid;gap:4px}.revision-feedback strong{font-family:Georgia,serif;font-size:1.45rem}.revision-feedback p{line-height:1.45;margin:0}.revision-feedback .primary-action{white-space:nowrap}.revision-result-message{color:var(--muted);font-size:1.08rem;font-weight:800;line-height:1.5;margin:0}.sprint-header span{background:var(--ink);color:#fffaf0;display:inline-block;font-family:Georgia,serif;font-size:1.4rem;min-width:120px;padding:12px;text-align:center}.countdown-screen{align-items:center;display:grid;min-height:calc(100vh - 116px)}.countdown-panel{background:#fffaf0e6;border:1px solid var(--line);display:grid;gap:14px;justify-items:center;margin:0 auto;max-width:520px;padding:54px 32px;text-align:center;width:min(100%,520px)}.countdown-panel strong{color:var(--leaf-dark);font-family:Georgia,serif;font-size:7rem;line-height:.9}.countdown-panel span{color:var(--muted);font-size:1.05rem;font-weight:800}.question-stage{display:grid;gap:28px;min-height:520px}.topic-heading{align-items:center;display:inline-flex;gap:10px;margin-bottom:12px}.topic-heading .eyebrow{margin:0}.topic-tip-button,.icon-button{align-items:center;background:#fffaf0;border:1px solid var(--line);border-radius:4px;color:var(--ink);display:inline-flex;flex:0 0 auto;height:34px;justify-content:center;padding:0;width:34px}.topic-tip-button{background:var(--sky);border-color:#5c98a5}.topic-tip-button:focus-visible,.icon-button:focus-visible{outline:3px solid rgba(39,103,73,.24);outline-offset:2px}.question-prompt{display:grid;gap:20px}.geometry-diagram{background:#fffdf7;border:1px solid var(--line);border-radius:8px;display:grid;justify-items:center;margin:0;max-width:480px;padding:12px 16px 10px;width:min(100%,480px)}.geometry-diagram svg{display:block;height:auto;max-height:290px;overflow:visible;width:100%}.geometry-diagram.compact{margin-top:12px;max-width:340px;padding:8px 10px 6px}.geometry-diagram.compact svg{max-height:210px}.geometry-diagram figcaption{color:var(--muted);font-size:.78rem;font-weight:700;line-height:1.35;padding-top:4px;text-align:center}.geometry-polygon,.geometry-circle,.geometry-ellipse,.geometry-ellipse-edge,.geometry-segment,.geometry-arc,.geometry-mark,.geometry-right-angle{vector-effect:non-scaling-stroke}.geometry-polygon,.geometry-circle,.geometry-ellipse{stroke:var(--ink);stroke-linejoin:round;stroke-width:3}.geometry-polygon.fill-none,.geometry-circle.fill-none,.geometry-ellipse.fill-none{fill:transparent}.geometry-polygon.fill-paper,.geometry-circle.fill-paper,.geometry-ellipse.fill-paper{fill:#fffaf0}.geometry-polygon.fill-sky,.geometry-circle.fill-sky,.geometry-ellipse.fill-sky{fill:#d9eef0}.geometry-polygon.fill-leaf,.geometry-circle.fill-leaf,.geometry-ellipse.fill-leaf{fill:#dceade}.geometry-ellipse.split-edge{stroke:none}.geometry-polygon.stroke-leaf{stroke:var(--leaf-dark)}.geometry-polygon.stroke-accent{stroke:#b6573d}.geometry-polygon.stroke-muted{stroke:var(--muted)}.geometry-segment,.geometry-ellipse-edge,.geometry-arc,.geometry-mark,.geometry-right-angle{fill:none;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.geometry-segment.dashed,.geometry-ellipse-edge.dashed{stroke-dasharray:8 7}.geometry-segment.grid-line{stroke:#a4a6a2;stroke-width:2}.geometry-segment.emphasis,.geometry-circle.emphasis,.geometry-ellipse.emphasis{stroke:#b3472e;stroke-width:5}.geometry-mark{stroke-width:3.5}.geometry-parallel-mark{fill:#fffdf7}.geometry-arc{stroke:var(--leaf-dark);stroke-width:2.5}.geometry-point{fill:var(--ink)}.geometry-label{dominant-baseline:middle;fill:var(--ink);font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-size:17px;font-weight:800;paint-order:stroke;stroke:#fffdf7;stroke-linejoin:round;stroke-width:5px;text-anchor:middle}.geometry-label.emphasis,.geometry-arc-label{fill:#8f321f}.question-stage h1{font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-size:3.4rem;font-weight:800;line-height:1.2;max-width:1050px}.comparison-prompt h1{max-width:none}.english-prompt{gap:18px}.excerpt-group{display:grid;gap:8px}.excerpt-label{color:var(--muted);font-size:.95rem;font-weight:800;letter-spacing:.08em;margin:0;text-transform:uppercase}.english-prompt blockquote{background:#fffaf0;border:1px solid var(--line);border-left:6px solid var(--leaf);color:var(--ink);font-size:1.35rem;line-height:1.55;margin:0;max-width:980px;padding:20px 24px}.english-prompt h1{font-size:2rem;line-height:1.35;max-width:980px}.english-sentence-task{gap:28px}.english-sentence-task h1{color:#26342d;font-size:1.85rem;line-height:1.3}.english-sentence-task blockquote{border-left-color:#5c98a5;font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-size:2.35rem;font-weight:800;line-height:1.25}mark{background:#ffe08a;color:inherit;padding:0 .12em}.comparison-values{border-top:2px solid var(--line);display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));max-width:920px;padding-top:18px}.comparison-value{align-items:center;background:#fffaf0;border:1px solid var(--line);color:var(--leaf-dark);display:inline-flex;font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-size:2.35rem;font-weight:800;justify-content:center;line-height:1.1;min-height:92px;padding:14px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid button{align-items:center;display:flex;font-family:Atkinson Hyperlegible,Avenir Next,Trebuchet MS,sans-serif;font-size:2rem;font-weight:800;gap:14px;justify-content:flex-start;min-height:118px}.choice-grid button:disabled{cursor:default;opacity:1}.choice-grid button.correct-feedback{background:#dff4df;border-color:#2f7d32;color:#143d2b}.choice-grid button.incorrect-feedback{background:#f9dddd;border-color:#b23b3b;color:#5c1f1f}.choice-letter{align-items:center;background:var(--sky);border:1px solid #5c98a5;display:inline-flex;flex:0 0 42px;height:42px;justify-content:center}.choice-grid button .choice-letter{font-size:1.6rem}.choice-value{overflow-wrap:anywhere;text-align:left}.choice-grid button.english-choice{font-size:1.35rem;line-height:1.25;min-height:104px}.math-text{align-items:baseline;display:inline;font-variant-numeric:tabular-nums}.mixed-number{align-items:center;display:inline-flex;gap:.16em;margin:0 .04em;vertical-align:middle;white-space:nowrap}.whole-number{display:inline-block}.stacked-fraction{align-items:center;display:inline-grid;font-size:.72em;grid-template-rows:auto auto;line-height:1;min-width:.9em;text-align:center;transform:translateY(.03em)}.stacked-fraction span:first-child{border-bottom:.08em solid currentColor;padding:0 .08em .1em}.stacked-fraction span:last-child{padding:.1em .08em 0}.choice-value{align-items:center;display:inline-flex;min-height:1.5em}.tip-backdrop{align-items:center;background:#131a1685;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:20}.tip-modal{background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 24px 80px #131a1647;display:grid;gap:22px;max-height:min(760px,calc(100vh - 40px));max-width:720px;overflow:auto;padding:28px;width:min(100%,720px)}.end-session-dialog{background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 24px 80px #131a1647;display:grid;gap:18px;max-width:520px;padding:28px;width:min(100%,520px)}.end-session-dialog .eyebrow,.end-session-dialog h2,.end-session-dialog p{margin:0}.end-session-dialog h2{font-family:Georgia,serif;font-size:2rem;line-height:1.1}.end-session-dialog>p:not(.eyebrow){color:var(--muted);line-height:1.55}.end-session-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:4px}.danger-action{background:var(--coral);border:2px solid #131a16;border-radius:4px;box-shadow:4px 4px #131a16;color:#131a16;font-weight:900;padding:12px 16px}.tip-modal-header{align-items:start;display:flex;gap:18px;justify-content:space-between}.tip-modal h2{font-family:Georgia,serif;font-size:2.2rem;line-height:1.05;margin:0}.tip-example,.tip-takeaway{background:#fffaf0;border:1px solid var(--line);display:grid;gap:8px;padding:16px}.tip-example>span,.tip-takeaway>span{color:var(--muted);font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tip-example strong{color:var(--leaf-dark);font-size:1.8rem;line-height:1.25}.tip-modal .worked-example-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.tip-modal .english-worked-choices{grid-template-columns:1fr}.tip-steps{counter-reset:tip-step;display:grid;gap:10px;list-style:none;margin:0;padding:0}.tip-steps li{align-items:start;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:34px minmax(0,1fr);line-height:1.5;padding-top:10px}.tip-steps li:before{align-items:center;background:var(--ink);color:#fffaf0;content:counter(tip-step);counter-increment:tip-step;display:inline-flex;font-weight:900;height:28px;justify-content:center;width:28px}.tip-takeaway p{font-size:1.05rem;font-weight:800;line-height:1.5;margin:0}.result-panel{display:grid;grid-template-columns:1fr}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.topic-review{display:grid;gap:8px}.topic-review div{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:12px 0}.answer-review{border:1px solid var(--line);overflow-x:auto}.answer-review table{border-collapse:collapse;min-width:760px;width:100%}.answer-review th,.answer-review td{border-bottom:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}.answer-review th{background:#f5f1e7;color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.answer-review td{background:#fffaf0;font-size:.95rem;line-height:1.45}.review-options{display:flex;flex-wrap:wrap;gap:6px}.review-option{border:1px solid var(--line);display:inline-flex;font-weight:800;gap:4px;padding:4px 7px;white-space:nowrap}.hint-viewed-badge{border:1px solid var(--line);color:var(--muted);display:inline-flex;font-size:.8rem;font-weight:900;padding:4px 7px;white-space:nowrap}.hint-viewed-badge.viewed{background:#fff3c4;border-color:#c99717;color:#5a4100}.review-option.correct{background:#dff4df;border-color:#2f7d32;color:#143d2b}.review-option.incorrect{background:#f9dddd;border-color:#b23b3b;color:#5c1f1f}.diagram-qa-screen{display:grid;gap:24px;margin:0 auto;max-width:1600px;padding:42px 20px 64px}.diagram-qa-header{align-items:end;display:flex;gap:28px;justify-content:space-between}.diagram-qa-header h1{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4rem);line-height:1;margin:0}.diagram-qa-header p:not(.eyebrow){color:var(--muted);line-height:1.6;margin-bottom:0;max-width:760px}.diagram-qa-header>strong{background:var(--ink);color:var(--paper);flex:0 0 auto;padding:9px 12px}.diagram-qa-pagination,.diagram-qa-pagination div{align-items:center;display:flex;gap:8px}.diagram-qa-pagination{justify-content:space-between}.diagram-qa-pagination a,.diagram-qa-pagination span,.diagram-qa-pagination strong{align-items:center;background:var(--paper);border:1px solid var(--line);color:var(--ink);display:inline-flex;font-weight:900;justify-content:center;min-height:38px;min-width:38px;padding:7px 10px;text-decoration:none}.diagram-qa-pagination strong{background:var(--ink);color:var(--paper)}.diagram-qa-pagination span[aria-disabled=true]{color:var(--muted);opacity:.55}.diagram-qa-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.diagram-qa-card{align-content:start;background:#fffaf0e6;border:1px solid var(--line);border-radius:8px;display:grid;gap:14px;min-width:0;padding:18px}.diagram-qa-card-meta{display:flex;flex-wrap:wrap;gap:6px}.diagram-qa-card-meta span{background:#f5f1e7;border:1px solid var(--line);color:var(--muted);font-size:.7rem;font-weight:900;letter-spacing:.06em;padding:4px 6px;text-transform:uppercase}.diagram-qa-card h2,.diagram-qa-card p{margin:0}.diagram-qa-card h2{font-family:Georgia,serif;font-size:1.35rem}.diagram-qa-card>p:not(.diagram-qa-answer){line-height:1.45;min-height:2.9em}.diagram-qa-card .geometry-diagram{align-self:end;width:100%}.diagram-qa-answer{border-top:1px solid var(--line);color:var(--leaf-dark);padding-top:10px}@media(max-width:1100px){.diagram-qa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-panel{grid-template-columns:1fr}.intro-copy{max-width:820px}.intro-board{border-left:0;border-top:1px solid rgba(255,250,240,.24);padding-left:0;padding-top:22px}.intro-panel h1,.setup-copy h1,.result-panel h1{font-size:3.4rem}.setup-screen{grid-template-columns:1fr;min-height:auto}.setup-copy{max-width:760px}.coverage-groups,.coverage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.diagram-qa-grid{grid-template-columns:1fr}.diagram-qa-header{align-items:start;flex-direction:column}.diagram-qa-pagination{align-items:stretch;flex-direction:column}.diagram-qa-pagination div{justify-content:center}.setup-screen.revision-screen-with-progress,.practice-screen.revision-screen-with-progress,.revision-run-screen.revision-screen-with-progress{padding-top:132px}.revision-progress-rosette{position:absolute;right:14px;top:20px;transform:scale(.82);transform-origin:top right}.topbar,.sprint-header,.revision-run-header{align-items:stretch;flex-direction:column}.nav-links{width:100%}.nav-links a{flex:1;justify-content:center}.intro-panel,.setup-screen,.result-panel{grid-template-columns:1fr}.dashboard,.about-screen,.practice-screen,.countdown-screen,.setup-screen,.sprint-screen,.revision-run-screen{padding:24px 16px 48px}.intro-panel{min-height:auto;padding:32px 24px}.intro-panel h1,.about-intro h1,.setup-copy h1,.result-panel h1{font-size:2.7rem}.about-intro,.coverage-card{padding:24px}.setup-screen{min-height:auto}.control-panel,.question-stage,.guided-example-card,.history-band,.revision-band,.streak-band,.sync-band,.result-panel{padding:24px}.sync-summary{align-items:start;grid-template-columns:auto minmax(0,1fr)}.sync-summary .secondary-action{grid-column:1 / -1}.recovery-code-card,.recovery-form>div{align-items:stretch;flex-direction:column}.guided-example-heading{flex-direction:column}.guided-example-heading h1{font-size:2.45rem}.guided-problem strong{font-size:1.85rem}.guided-example-choices,.tip-modal .worked-example-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.worked-example-choices>span{font-size:1.1rem;min-height:54px}.revision-feedback{align-items:start;grid-template-columns:auto minmax(0,1fr)}.revision-feedback .primary-action{grid-column:1 / -1;white-space:normal}.revision-block-list li{grid-template-columns:34px minmax(0,1fr)}.revision-set-list{grid-template-columns:1fr}.revision-set-card{min-height:0}.revision-block-list em{grid-column:2}.streak-band{grid-template-columns:1fr}.revision-copy h2,.streak-copy h2{font-size:2.2rem}.person-row{align-items:flex-start;flex-direction:column}.segmented button{min-height:62px}.countdown-screen{min-height:calc(100vh - 140px)}.countdown-panel{padding:42px 24px}.countdown-panel strong{font-size:5.5rem}.question-stage h1{font-size:2.2rem}.tip-backdrop{align-items:flex-start;padding:12px}.tip-modal{max-height:calc(100vh - 24px);padding:22px}.tip-modal h2{font-size:1.75rem}.tip-example strong{font-size:1.45rem}.comparison-values{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-value{font-size:1.85rem;min-height:76px;padding:12px}.choice-grid button{font-size:1.65rem;min-height:92px}.stats-grid,.coverage-summary,.coverage-groups,.revision-list,.streak-score-grid,.result-stats,.choice-grid,.segmented{grid-template-columns:1fr}.session-row{grid-template-columns:1fr 1fr}.intro-panel:after{opacity:.22;right:-40px}}
