:root{color-scheme:dark;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f3f5ff;background:#090e20}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 100% 0%,#26175b 0,transparent 35%),radial-gradient(ellipse at 0 45%,#10334455,transparent 40%),#090e20;min-height:100vh}a{color:inherit}button,input{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}[hidden]{display:none!important}.shell{max-width:750px;margin:auto;padding:30px 18px 22px}.topbar{position:relative;min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:26px}.brand{font-size:22px;font-weight:850;text-decoration:none;letter-spacing:.03em}.brand span{color:#ffcd50;margin-left:3px}.topbar h1{font-size:21px;margin:20px 0 5px;letter-spacing:-.03em}.topbar p{font-size:13px;color:#aebcd7;margin:0}.home-brain{width:110px;filter:drop-shadow(0 0 22px #8646eb55);flex-shrink:0}.parent-return{position:absolute;top:-20px;right:0;font-size:12px}.scoreboard{padding:16px;border:1px solid #4a496b;border-radius:22px;background:linear-gradient(145deg,#1e203d,#14182c);margin-bottom:28px}.scoreboard h2{font-size:12px;color:#ddd4f2;text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px}.achievement-pair{display:flex;justify-content:space-between;gap:16px}.achievement-pair>div{display:flex;align-items:baseline;gap:8px}.achievement-pair>div:last-child{display:block}.achievement-pair strong{font-size:29px;line-height:1.2}.achievement-pair>div:last-child strong{color:#ffd15b}.achievement-pair span{font-size:11px;color:#aebcd7}.achievement-pair>div:last-child span{display:block}.weekly-line{display:flex;align-items:center;gap:12px;font-size:11px;color:#b0bdd5;margin-top:14px;min-height:20px}.scoreboard-goal-track{height:6px;background:#383954;border-radius:10px;overflow:hidden;flex:1}#game-goal-fill,#scoreboard-goal-fill{display:block;height:100%;background:#ffca4b;border-radius:10px}#home-goal-percent{color:#f4d17d;font-weight:700;margin-left:auto}.score-details{margin-top:9px;font-size:12px;color:#aebcd7}.score-details>summary{font-size:10px;color:#8d9ab6}.score-details h3{font-size:13px;color:#e2dcf3}.scoreboard button{background:#ffc950;color:#29213b;border:0;border-radius:8px;padding:10px;min-height:42px}.scoreboard input{max-width:100%;padding:10px}.scoreboard form label{display:block}.scoreboard-week,.scoreboard-bottom>div{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.scoreboard-bottom strong,.scoreboard small{display:block}.scoreboard-note{font-size:11px;line-height:1.5}.achievement-details{margin-top:10px}.subject-section h2{font-size:19px;letter-spacing:-.025em;margin:0 0 9px}.subject-section>p{color:#acb8d3;font-size:13px;margin:0 0 25px}.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subject-card{text-align:left;text-decoration:none;border-radius:22px;padding:22px 15px 15px;min-width:0;display:flex;flex-direction:column;align-items:stretch;color:#f4feff;border:1px solid #328da2;background:linear-gradient(145deg,#0d4459,#0d1c34);box-shadow:0 12px 24px #0002}.subject-card img{height:80px;width:80px;align-self:center;object-fit:contain;margin:0 0 20px}.subject-card h3{font-size:26px;line-height:1.18;margin:0 0 16px;letter-spacing:-.03em}.subject-card p{font-size:14px;color:#bddde6;line-height:1.45;margin:0 0 25px;min-height:42px}.subject-open{display:flex;justify-content:center;align-items:center;gap:12px;background:#6ee5e8;color:#073341;border-radius:10px;font-weight:800;padding:12px 5px;font-size:16px;margin-top:auto;min-height:48px}.math-choice{background:linear-gradient(145deg,#512c1d,#251926);border-color:#ae6b35;color:#fff5e9}.math-choice p{color:#e6c3ad}.math-choice .subject-open{background:#ffc36b;color:#472408}.math-art{height:80px;width:80px;align-self:center;position:relative;margin-bottom:20px;display:block}.math-art b{display:block;position:absolute;top:4px;left:6px;border:1px solid #d59b5a;border-radius:12px;background:#855031;color:#ffd393;font-size:36px;width:58px;height:58px;text-align:center;font-style:normal}.math-art i{display:block;position:absolute;bottom:0;right:0;background:#5e3e36;border:1px solid #d99750;color:#ffd190;border-radius:9px;font-size:28px;width:38px;height:38px;text-align:center;font-style:normal}.home-secondary{margin:22px 0}.home-secondary>summary{text-align:center;list-style:none;color:#b8c3dd;padding:12px;font-size:14px}.home-secondary>summary::after{content:' ›'}.home-secondary[open]>summary::after{content:' ⌄'}.export-nav{border-top:1px solid #293048;text-align:center;padding:23px 0}.export-nav a{font-size:12px;color:#a3b0ca;text-decoration:none}footer{text-align:center;font-size:10px;color:#8391ad;padding:0 10px}.section{border:1px solid #39415a;border-radius:18px;padding:18px;margin-top:20px;background:#121b30}.section h2{font-size:23px}.section h3{font-size:18px}.section-heading{display:flex;justify-content:space-between;gap:10px}.eyebrow,.count,.card-kicker,.math-featured-kicker{font-size:10px;color:#9db4cd}.lesson-grid,.math-lesson-list{display:grid;gap:12px}.lesson-card,.math-lesson-item{display:flex;gap:12px;align-items:center;text-decoration:none;background:#1b2d43;border:1px solid #31556c;border-radius:14px;padding:14px}.science-icon-art{width:50px;height:50px}.card-content,.math-lesson-item{display:flex;flex-direction:column;align-items:flex-start}.card-content strong{font-size:18px}.card-meta,.card-progress,.card-best,.math-lesson-item span{font-size:12px;color:#bed1e0}.card-arrow{margin-left:auto}.math-featured{background:#243449;padding:16px;border-radius:14px;margin:14px 0}.math-featured-action,.math-launch,.math-assessment-row a,.panel-close{display:inline-block;background:#ffc36b;color:#422a15;border:0;border-radius:9px;padding:12px;text-decoration:none;font-weight:700}.math-other-heading{font-size:11px}.math-more{border-top:1px solid #39415a;margin-top:22px;padding-top:16px}.math-more summary{padding:10px 0;color:#bbc5dd}.math-assessment-row small{display:block;margin-top:10px}.math-card{margin-top:20px}.math-schedule li{margin:12px 0}.math-schedule li span{display:block}.math-schedule ul{padding-left:20px}.section p{line-height:1.5;color:#bcc9dc}.panel-close{font-size:12px}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ffe093;outline-offset:4px}.subject-card:hover{filter:brightness(1.08)}@media(min-width:600px){.shell{padding-top:40px}.topbar h1{font-size:30px}.home-brain{width:140px}.subject-card{padding:25px}.subject-card h3{font-size:32px}.subject-card p{min-height:25px}.achievement-pair{justify-content:flex-start;gap:70px}}@media(max-width:350px){.shell{padding-left:12px;padding-right:12px}.home-brain{width:84px}.topbar h1{font-size:18px}.brand{font-size:19px}.subject-grid{gap:10px}.subject-card{padding:16px 12px 12px}.subject-card h3{font-size:23px}.subject-card p{font-size:12px}.achievement-pair>div{display:block}.achievement-pair span{display:block}.subject-section h2{font-size:17px}}

/* v42: retain subject identity after opening Math and Past lessons. */
#math-panel .math-featured,#math-panel .math-lesson-item{background:linear-gradient(145deg,#512c1d,#251926);border:1px solid #ae6b35}
#math-panel :is(.math-featured-kicker,.math-lesson-item span,.math-featured p){color:#e6c3ad}
#math-panel .math-featured h3,#math-panel .math-lesson-item strong{color:#fff5e9}
#past-panel .lesson-card{background:linear-gradient(145deg,#0d4459,#0d1c34);border-color:#328da2}
