:root{--ink:#193b32;--green:#18634e;--paper:#faf8f0;--white:#fffefa;--mint:#e5efe1;--yellow:#f7cf58;--purple:#eee8fa;--red:#b44c37;--muted:#53665c;--line:#cdd7ce}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 ui-rounded,'Avenir Next',system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #7654bd;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.04em}h1{font-size:clamp(44px,5.8vw,76px);font-weight:800}h2{font-size:clamp(30px,3.8vw,43px)}h3{font-size:24px}p+p{margin-top:16px}.wrap{width:min(1160px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-80px;left:12px;z-index:100;padding:10px;background:white}.skip:focus{top:10px}.header{border-bottom:1px solid var(--line)}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:20px;font-weight:850;line-height:1.2;letter-spacing:-.04em}.brand img{width:42px;height:42px}.brand small{display:block;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;margin-top:3px}nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:650}nav a{text-decoration:none;white-space:nowrap}nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--green);color:white;border:1px solid var(--green);border-radius:11px;padding:14px 23px;text-decoration:none;font-weight:750;line-height:1.4}.button:hover{background:#114b3b}.button.secondary{background:transparent;color:var(--ink);border-color:#a5b8ac}.button.secondary:hover{background:var(--mint)}.button.small{font-size:13px;padding:10px 15px}.button.yellow{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;color:var(--green);padding:5px;font-weight:650}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;display:flex;align-items:center;gap:9px}.eyebrow:before{content:'';width:8px;height:8px;background:var(--green);border-radius:50%}.lead{font-size:19px;color:var(--muted);max-width:530px;line-height:1.65}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:68px;align-items:center;padding:65px 0 60px}.hero h1{margin:22px 0}.hero h1 em{font-style:normal;color:var(--green)}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:28px}.micro{font-size:12px;color:var(--muted);margin-top:15px;line-height:1.6}.hero-demo{position:relative;border-radius:24px;background:var(--mint);border:1px solid #bed0bd;padding:28px;box-shadow:10px 10px 0 #dde4d6;transform:rotate(1deg)}.demo-label{display:flex;justify-content:space-between;font-size:12px;font-weight:750;letter-spacing:.05em}.demo-dot{border-radius:20px;background:white;padding:4px 12px}.equation-demo{display:flex;align-items:center;gap:16px;justify-content:center;font-size:67px;font-weight:850;line-height:1;margin:40px 0 24px;letter-spacing:-.04em}.equation-demo span:nth-child(2){color:#678975}.demo-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.demo-answers button{border:1px solid #b6c5b6;background:var(--white);border-radius:12px;padding:14px;font-size:25px;font-weight:750;color:var(--ink)}.demo-answers button:hover{background:var(--yellow)}#demo-feedback{min-height:54px;margin:16px 0;font-weight:600;font-size:14px}.sticker{position:absolute;top:-17px;right:18px;background:var(--yellow);padding:9px 18px;font-size:12px;font-weight:750;transform:rotate(-6deg);border-radius:5px}.facts{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.facts div{display:flex;align-items:center;gap:16px;padding:25px 20px;border-right:1px solid var(--line)}.facts div:first-child{padding-left:0}.facts div:last-child{border:0}.facts b{font-size:36px;line-height:1;letter-spacing:-.04em}.facts span{font-size:12px;color:var(--muted);line-height:1.5}section{padding:60px 0}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:28px}.section-head p{max-width:420px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:30px;background:var(--white);border:1px solid var(--line);border-radius:16px}.card.green{background:var(--mint)}.card.purple{background:var(--purple)}.card.yellow{background:#faecc2}.card .number{font-size:14px;font-weight:850;margin-bottom:40px;display:block;color:var(--green)}.card h3{margin-bottom:17px}.card p{color:var(--muted);font-size:15px}.card .button{margin-top:27px}.table-pills{display:flex;flex-wrap:wrap;gap:12px}.table-pill{display:grid;place-items:center;min-width:76px;height:76px;border:1px solid #9eb7a7;background:var(--white);border-radius:15px;font-size:27px;font-weight:850;text-decoration:none}.table-pill:hover{background:var(--yellow)}.parent-panel{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:37px;background:var(--green);color:white;border-radius:18px}.parent-panel p{color:#e7efe5}.parent-panel .button{margin-top:25px}.faq{max-width:850px}.faq h2{margin-bottom:25px}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;font-weight:750}details p{margin-top:14px;color:var(--muted)}.footer{border-top:1px solid var(--line);padding:35px 0;font-size:13px;color:var(--muted)}.footer-row{display:flex;justify-content:space-between;gap:30px;margin-bottom:20px}.footer-links{display:flex;gap:22px;flex-wrap:wrap}.intro{padding:43px 0 26px}.intro h1{font-size:clamp(37px,5vw,59px);margin:12px 0 16px}.intro .lead{max-width:750px}.content{max-width:820px;padding-bottom:50px}.content h2{font-size:30px;margin:35px 0 15px}.content h3{margin:24px 0 12px}.content li{margin:9px 0}.notice{padding:18px 23px;background:#f9e9c5;border:1px solid #cba860;border-radius:12px;font-size:14px;margin:20px 0}.settings{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start;margin-bottom:45px}.settings .card h2{font-size:29px;margin-bottom:18px}.check-list{padding-left:22px}.check-list li{margin:14px 0}.check-list b{color:var(--green)}.setting-label{display:block;font-weight:700;margin:20px 0 8px}select{padding:10px 14px;border:1px solid #829e8b;border-radius:8px;background:var(--white);color:var(--ink);width:100%}fieldset{margin:0;padding:0;border:0}legend{font-weight:750;margin:12px 0}.table-choices{display:flex;gap:9px;flex-wrap:wrap}.table-choices label{position:relative;cursor:pointer}.table-choices input{position:absolute;opacity:0}.table-choices span{display:grid;place-items:center;width:49px;height:49px;border:1px solid #9cb19f;border-radius:10px;background:var(--white);font-weight:800}.table-choices input:checked+span{background:var(--green);color:white}.table-choices input:focus-visible+span{outline:3px solid #7654bd;outline-offset:3px}.check-shell{max-width:730px;margin:35px auto 65px}.check-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px;font-size:14px;font-weight:750}.question-box{background:var(--white);border:1px solid #bacbbc;border-radius:22px;padding:30px 50px;text-align:center;box-shadow:7px 7px 0 #e4e8dc}.progress-track{background:#dde5dd;border-radius:20px;height:7px;overflow:hidden;margin-bottom:26px}.progress-track progress{width:100%;height:9px;display:block;accent-color:var(--green)}.question-equation{font-size:clamp(62px,8vw,89px);font-weight:850;letter-spacing:-.04em;line-height:1.2;margin:15px 0 19px}.answer-input{width:100%;max-width:245px;text-align:center;border:2px solid #7e9d8a;background:#f4f7ee;border-radius:13px;color:var(--ink);font-size:47px;font-weight:750;padding:5px 10px;caret-color:transparent;line-height:1.3;min-height:75px}.answer-label{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:8px}.time-row{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:15px;font-size:14px;font-weight:750;min-height:27px}.countdown{font-size:19px;font-variant-numeric:tabular-nums}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-width:350px;margin:21px auto 0}.keypad button{font-size:24px;font-weight:800;padding:9px;background:#fffefa;border:1px solid #b0bfb2;border-bottom-width:3px;border-radius:10px;color:var(--ink);min-height:53px}.keypad button:hover{background:var(--mint)}.keypad .enter{background:var(--green);color:white;font-size:14px}.keypad .delete{font-size:13px}.keypad button:disabled{opacity:.3}.hint-area{font-size:14px;margin-top:15px;padding:15px;background:#faecc2;border-radius:10px}.gap-box{min-height:430px;display:grid;place-content:center;text-align:center;padding:30px}.gap-box h2{margin:15px 0;font-size:43px}.gap-icon{font-size:60px;color:#5c836b}.feedback{text-align:center;padding:30px 20px}.feedback h2{margin:16px 0;font-size:39px}.feedback p{margin:15px 0}.feedback .correct-equation{font-size:45px;font-weight:800;margin:22px 0;color:var(--green)}.result-hero{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center;padding:35px;background:var(--mint);border:1px solid #aac0a8;border-radius:20px}.result-score{font-size:87px;font-weight:850;line-height:1;letter-spacing:-.06em}.result-score small{font-size:24px;letter-spacing:0}.result-hero h1{font-size:36px;margin:13px 0}.review-list{padding:0;list-style:none}.review-list li{display:grid;grid-template-columns:35px 1fr 1.4fr;gap:15px;padding:17px 13px;border-bottom:1px solid var(--line);align-items:center}.review-list .fact{font-weight:800;font-size:21px}.tag{display:inline-block;font-size:12px;font-weight:700;border-radius:6px;padding:4px 8px;background:#e4efde}.tag.retry{background:#f7e4c1}.review-list p{font-size:13px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.stat{padding:24px;border:1px solid var(--line);background:var(--white);border-radius:13px}.stat b{font-size:36px;font-weight:850;display:block;line-height:1.2}.stat span{font-size:13px;color:var(--muted)}.table-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.table-stat{border:1px solid var(--line);border-radius:12px;padding:20px;background:var(--white);text-decoration:none}.table-stat b{font-size:28px}.table-stat p{font-size:12px;color:var(--muted)}.history{list-style:none;padding:0}.history li{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:18px 0}.history small{display:block;color:var(--muted);font-size:12px}.data-tools{border-top:1px solid var(--line);padding-top:25px;margin:35px 0}.chart-scroll{overflow:auto;border:1px solid var(--line);border-radius:12px;margin:24px 0}table{width:100%;border-collapse:collapse;min-width:620px;text-align:center;font-size:14px;background:var(--white)}th,td{padding:10px;border:1px solid #dde3db}th{background:var(--mint);font-weight:800}caption{padding:18px;font-weight:750;background:white;text-align:left}.table-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.table-facts div{background:var(--white);border:1px solid var(--line);border-radius:11px;padding:18px;text-align:center;font-size:23px;font-weight:750}.source-list li{margin:12px 0}.worksheet{margin-top:20px}.worksheet header{margin-bottom:22px}.worksheet .sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:20px 0}.worksheet .sheet-grid p{font-size:23px;line-height:1.5}.sheet-answer{font-size:13px}.print-only{display:none}dialog{border:1px solid #a7b7a7;border-radius:15px;max-width:460px;width:calc(100% - 32px);background:var(--white);color:var(--ink);padding:30px}dialog::backdrop{background:#193b3266}dialog h2{font-size:30px;margin-bottom:18px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:12px;padding:12px 20px;max-width:calc(100% - 30px);z-index:30;font-size:14px;width:max-content}.empty{padding:30px;border:1px dashed #9aaf9c;border-radius:13px;margin:25px 0}.danger{color:#9e3926}noscript{display:block;padding:20px;background:#f9e9c5}[hidden]{display:none!important}.run-mode .footer{display:none}.run-mode .header nav{display:none}.run-mode .intro{display:none}@media(max-width:900px){nav{gap:15px}.hero{gap:35px}.facts div{padding:22px 12px}.cards{gap:15px}.card{padding:24px}.hero-demo{padding:23px}}@media(max-width:720px){.wrap{width:calc(100% - 36px)}.header .wrap{min-height:85px;flex-wrap:wrap;gap:16px;padding:18px 0}nav{flex-wrap:wrap;gap:12px 18px;font-size:12px;width:100%}.brand{font-size:18px}.brand img{width:38px;height:38px}.hero{grid-template-columns:1fr;padding:40px 0;gap:44px}.hero h1{font-size:49px}.lead{font-size:17px}.hero-demo{transform:none;box-shadow:6px 6px 0 #dde4d6;padding:25px;max-width:470px;width:100%;margin:auto}.equation-demo{font-size:63px;margin:30px 0 20px}.facts{grid-template-columns:1fr 1fr}.facts div{padding:18px!important;border-bottom:1px solid var(--line)}.facts div:nth-child(2){border-right:0}.facts div:nth-child(n+3){border-bottom:0}.facts b{font-size:31px}.section-head{flex-direction:column;align-items:start;gap:18px}.cards,.parent-panel,.settings{grid-template-columns:1fr}.cards .number{margin-bottom:26px}.parent-panel{padding:27px;gap:24px}.table-pill{height:62px;min-width:62px;font-size:23px}section{padding:42px 0}.footer-row{flex-direction:column;gap:20px}.intro h1{font-size:39px}.check-shell{margin:23px auto 35px}.question-box{padding:22px 18px;box-shadow:4px 4px 0 #e4e8dc}.question-equation{font-size:66px}.keypad{gap:8px;margin-top:18px}.keypad button{min-height:49px;padding:8px}.result-hero{grid-template-columns:1fr;gap:20px;padding:26px}.result-score{font-size:68px}.result-hero h1{font-size:30px}.stats{gap:8px}.stat{padding:18px 12px}.stat b{font-size:29px}.stat span{font-size:11px}.table-stats{grid-template-columns:repeat(2,1fr)}.review-list li{grid-template-columns:25px 1fr;gap:8px}.review-list li>div:last-child{grid-column:2}.history li{font-size:14px}.table-facts{grid-template-columns:repeat(2,1fr)}.table-facts div{font-size:19px;padding:16px}.gap-box{min-height:400px}.worksheet .sheet-grid{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}/* Colourful classroom palette: quiet question area, bright navigation and learning cards. */
:root{--ink:#263354;--green:#4145b8;--paper:#f8faff;--white:#fffefa;--mint:#c9f1e6;--yellow:#ffdb64;--purple:#e6dcff;--muted:#515f78;--line:#c9d3e8}
body{background:radial-gradient(ellipse at 3% 22%,#ffe4d88c 0,transparent 43%),radial-gradient(ellipse at 97% 7%,#d7e8ff 0,transparent 42%),var(--paper)}
.header{background:#e2edff;border-bottom:2px solid #c4d4f2}.brand small{color:#526188}.brand img{filter:hue-rotate(115deg)}
.button{box-shadow:0 3px 0 #252a79}.button:hover{background:#313795}.button.secondary{background:#fffefa;border-color:#9baed0;box-shadow:0 3px 0 #c5cce5}.button.secondary:hover{background:#ece6ff}.button.yellow{color:#293356;border-color:#ebbf42;box-shadow:0 3px 0 #d9a824}.button.yellow:hover{background:#ffe58c}
.hero{gap:55px}.hero h1 em{color:#6250c4}.hero-demo{background:#ffdf76;border:2px solid #c6a343;box-shadow:10px 10px 0 #b4cff5;transform:rotate(1deg)}.demo-dot{background:#f5ecff;color:#594090}.equation-demo span:nth-child(2){color:#da6551}.equation-demo span:last-child{color:#5848b5}.demo-answers button{border-color:#a491c1;box-shadow:0 3px 0 #b9a2ce}.demo-answers button:nth-child(1){background:#c5edf8}.demo-answers button:nth-child(2){background:#d8cbff}.demo-answers button:nth-child(3){background:#ffcaba}.demo-answers button:hover{background:#fffefa}.sticker{background:#c8efe1;border:1px solid #6fae98;color:#205947}
.facts{border:1px solid #b8c9e5;border-radius:16px;overflow:hidden}.facts div{padding:24px!important}.facts div:nth-child(1){background:#d7e8ff}.facts div:nth-child(2){background:#ffe5c4}.facts div:nth-child(3){background:#e6ddff}.facts div:nth-child(4){background:#c9f1e6}.facts b{color:#4145a9}
.card{border:1px solid #aebdd7;box-shadow:0 5px 0 #dde4f3}.card.green{background:#c9f1e6;border-color:#9dcdbd}.card.purple{background:#e5dcff;border-color:#bcaadd}.card.yellow{background:#ffe19a;border-color:#d8b468}.settings>.card:not(.green):not(.purple){background:#ffe0d4;border-color:#d7aa9e}
.card .number{display:inline-block;border-radius:30px;background:#fffefabb;padding:5px 12px;color:#4843a1}
.table-pill{border:1px solid #929abd;box-shadow:0 3px 0 #ced4e6}.table-pill:nth-child(5n+1),.table-stat:nth-child(5n+1),.table-facts div:nth-child(5n+1){background:#d5e8ff}.table-pill:nth-child(5n+2),.table-stat:nth-child(5n+2),.table-facts div:nth-child(5n+2){background:#ffe0d4}.table-pill:nth-child(5n+3),.table-stat:nth-child(5n+3),.table-facts div:nth-child(5n+3){background:#e4d8ff}.table-pill:nth-child(5n+4),.table-stat:nth-child(5n+4),.table-facts div:nth-child(5n+4){background:#ffeba8}.table-pill:nth-child(5n+5),.table-stat:nth-child(5n+5),.table-facts div:nth-child(5n+5){background:#cef1e3}.table-pill:hover{background:white;outline:2px solid #6554b9}
.parent-panel{background:#4642a6}.parent-panel p{color:#f0ecff}.parent-panel .eyebrow:before{background:#ffdb64}.footer{background:#e7e1f8;border-top:2px solid #c7b8eb}
.intro{position:relative;padding-bottom:35px}.intro h1{color:#353886}.intro .eyebrow{color:#6250ad}
.check-top{background:#dce9ff;border:1px solid #b6c9e9;border-radius:12px;padding:10px 15px}.question-box{border:2px solid #bbc9e9;background:#fffefa;box-shadow:7px 7px 0 #c9b7ee}.question-equation span{color:#ed8268}.answer-input{border-color:#7768b5;background:#f2ecff}.progress-track{background:#e9e0ff}.progress-track progress{accent-color:#7964c5}.keypad button{border-color:#93b5d1;background:#dbedff;box-shadow:none}.keypad button:nth-child(3n+2){background:#e7dcff;border-color:#baa9d8}.keypad button:nth-child(3n+3){background:#ffdda8;border-color:#d1af78}.keypad button:hover{background:#fff6c9}.keypad .enter{background:#4145b8!important;border-color:#2b3190!important;color:white}.keypad .delete{background:#ffd9d0;border-color:#d2a59e}.gap-box{background:#ece4ff}.gap-icon{color:#8b5bbd}.hint-area{background:#ffebad}.feedback .correct-equation{color:#337265}.result-hero{background:#c9f1e6;border-color:#87bba9}.result-score{color:#286854}.tag{background:#c9eddf;color:#205441}.tag.retry{background:#ffe0cc;color:#824526}
.stat:nth-child(1){background:#daeaff}.stat:nth-child(2){background:#e5dbff}.stat:nth-child(3){background:#ffeba8}.table-choices input:checked+span{background:#5d4fba;border-color:#5d4fba}.table-choices span{background:#fffefa}.table-stat:hover{outline:2px solid #6554b9}.chart-scroll th{background:#d8ddff}.chart-scroll tr:nth-child(even) td{background:#eef5ff}.table-facts div{border-color:#b6c4da}
@media(max-width:720px){.hero-demo{box-shadow:6px 6px 0 #b4cff5}.question-box{box-shadow:4px 4px 0 #c9b7ee}.facts div{padding:18px!important}}
@media print{.header,.footer,.actions,.button,.text-button,.intro,.no-print,.data-tools,.toast,dialog{display:none!important}.wrap{width:100%}body{background:white;color:black;font-size:12px}.print-only{display:block}.worksheet .sheet-grid{grid-template-columns:repeat(4,1fr);gap:18px}.worksheet{break-inside:avoid}.answer-sheet{break-before:page}.review-list li,.table-facts div{break-inside:avoid}.chart-scroll{overflow:visible}table{min-width:0;font-size:10px}th,td{padding:5px}.result-hero{background:white;border:1px solid #999}body{background:white}.table-facts div,th,td{background:white!important;color:black}}
