:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#e7f1f4;background:#081827;--gold:#e9bd70}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 75% 10%,#224959 0,transparent 48%),radial-gradient(ellipse at 10% 80%,#21335d 0,transparent 50%),#081827;min-height:100dvh}button,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}a{color:#bedee6}button,a,summary,select{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--gold)}button{background:#1a3b51;color:#d9edf1;border:1px solid #658999;border-radius:7px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:650}button:hover:not(:disabled){background:#2a5267}.primary{background:#e5bb71;color:#102b3a;border-color:#ffe0a6;box-shadow:0 4px #806134;font-weight:800}.primary:hover:not(:disabled){background:#f0cd8c}.mast{max-width:1320px;margin:auto;padding:15px 26px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #506d7c55}.mast>a:last-child{font-size:12px;text-decoration:none}.brand{display:flex;align-items:center;gap:9px;color:#eef5f6;text-decoration:none;font-size:16px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.brand img{background:#fff;border-radius:5px;padding:3px}.brand small{display:block;font-size:7px;font-weight:500;letter-spacing:0;margin-top:4px}main{max-width:1260px;margin:auto;padding:20px 26px 50px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.1}p{line-height:1.7}.eyebrow{font-size:10px;letter-spacing:.16em;color:#b4d0d8;font-weight:800}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:50px 0}.hero h1{font-size:clamp(60px,7vw,96px);margin-bottom:20px;letter-spacing:-.06em}.hero h1 span{display:block;color:#eac587}.hero p:not(.eyebrow){max-width:440px;color:#bfd6df;font-size:17px}.hero label{display:block;font-size:12px;color:#b6d0da;max-width:400px;margin:25px 0 18px}.hero select{display:block;width:100%;background:#102c40;color:#e5f1f4;border:1px solid #608498;border-radius:6px;padding:12px;margin-top:9px;min-height:46px}.hero button{margin:0 10px 10px 0}.hero-prisms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;transform:perspective(700px) rotateX(12deg) rotateY(-9deg) rotate(5deg);filter:drop-shadow(0 24px 22px #0008)}.hero-tile{aspect-ratio:1;position:relative;display:grid;place-items:center;isolation:isolate}.hero-tile b{position:relative;z-index:1;font:750 clamp(16px,2.4vw,29px) system-ui;white-space:nowrap;text-shadow:0 2px #001827}.crystal{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 4px 1px #00101e99)}.tone-0{--tile:#2e9c9c}.tone-1{--tile:#307fb1}.tone-2{--tile:#bd8d44}.tone-3{--tile:#b16c53}.tone-4{--tile:#5e69b2}.tone-5{--tile:#7998a9}.intro-stats{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;padding:19px 25px;background:#17384b;border:1px solid #4a7385;border-radius:7px;color:#b9d7df;font-size:13px;margin-bottom:30px}.rules,.review,.game-exam-fit{background:#102b3d;border:1px solid #456c80;border-radius:7px;padding:18px 23px;margin:22px 0;color:#b9d1dd;font-size:13px;line-height:1.8}.rules summary,.review summary,.game-exam-fit summary{cursor:pointer;color:#e4eff1;font-weight:700}.rules li{margin:9px 0}.game-exam-fit dt{font-weight:750;color:#e7d6ab;margin-top:12px}.game-exam-fit dd{margin-left:0}.review article{display:inline-block;vertical-align:top;width:49%;padding:18px 20px 0 0}.review h3{font:700 16px/1.6 system-ui;color:#e0d4af}.review p{font-size:12px}.error{background:#573a33;border:1px solid #c69879;color:#ffebd9;padding:17px;border-radius:6px;margin:15px 0}.game-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.game-nav>span{font-size:10px;letter-spacing:.1em;color:#b3d0dc}.game-nav button{background:#102c3d;display:flex;align-items:center;gap:7px;font-size:11px}.game-nav button svg{width:19px;height:19px;color:#e6bf73}.hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:19px}.hud>div{background:linear-gradient(#1b3a4e,#102a3d);border:1px solid #5a7b8f;border-radius:5px;padding:10px 17px;min-width:0}.hud small{display:block;font-size:8px;letter-spacing:.12em;color:#9abfce;margin-bottom:5px}.hud b{font-size:23px;font-variant-numeric:tabular-nums}.lives{display:flex;gap:5px;align-items:center}.lives i svg{display:block;width:17px;height:17px}.lives i svg path{fill:#d28d74;stroke:#edb699}.lives .empty svg path{fill:none;stroke:#678393}.lives b{font-size:14px;color:#d0e4eb;margin-left:6px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}.playfield{background:linear-gradient(135deg,#1e3f53,#0b2339);border:1px solid #7c9ba8;border-bottom:7px solid #041521;border-radius:9px;padding:15px;box-shadow:0 20px 50px #0005}.board-top{display:flex;justify-content:space-between;gap:10px;padding:2px 2px 13px;color:#b5d5df;font-size:11px}.board-top b{font-size:10px;font-weight:600;color:#ead3a3}.board{position:relative;display:grid;grid-template-rows:repeat(6,minmax(0,1fr));gap:5px;background:radial-gradient(ellipse at 30% 0,#1c4e67,transparent 70%),#031725;padding:8px;border:1px solid #426781;border-radius:7px;box-shadow:inset 0 6px 20px #0009;touch-action:none}.board-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.tile{position:relative;display:grid;place-items:center;aspect-ratio:1;min-height:0;min-width:0;padding:0;background:transparent!important;border:0;transition:transform .15s,filter .15s;isolation:isolate;overflow:visible;touch-action:none}.tile strong{position:relative;z-index:2;color:#f6f8f2;font:700 clamp(11px,1.6vw,21px)/1.1 system-ui;letter-spacing:-.045em;white-space:nowrap;text-shadow:0 2px 2px #041323;pointer-events:none}.tile:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.2)}.tile.selected{filter:brightness(1.3);outline:2px solid #ffdc97;outline-offset:0;border-radius:9px;transform:scale(1.04);z-index:3}.tile.suggested{outline:3px solid #f4d69a;outline-offset:0;border-radius:8px;box-shadow:0 0 20px #ffda7180;z-index:3}.tile.iced:after{content:"";position:absolute;z-index:1;inset:0;border:2px solid #a4e5f0;border-radius:10px;background:linear-gradient(135deg,#c3f6ff33,transparent 35%,#a3deed22 65%,#c3f6ff44);box-shadow:inset 0 0 13px #c7f2ff55;pointer-events:none}.ice-corner{position:absolute;top:3px;right:5px;color:#dafaff;font-size:12px;z-index:3}.tile.burst{animation:tile-burst .4s ease-out}@keyframes tile-burst{0%{transform:scale(.68);filter:brightness(2)}60%{transform:scale(1.08)}to{transform:scale(1)}}.feedback{min-height:43px;font-size:12px;color:#d1e4e9;margin:14px 2px 9px;line-height:1.65}.tools{display:flex;gap:9px}.tools button{flex:1;display:flex;gap:7px;align-items:center;justify-content:center;font-size:11px;padding:10px}.tools svg{width:20px;height:20px;color:#e0c48f}.pulse-rows{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-bottom:10px}.pulse-rows button{font-size:10px;padding:7px}.mission{background:#102c40;border:1px solid #527a8e;padding:25px;border-radius:6px}.mission h1{font-size:29px;margin-bottom:16px}.mission>p:not(.eyebrow){font-size:13px;color:#bdd3df}.targets article{padding:17px 0;border-top:1px solid #406275}.targets strong{font:750 25px system-ui;color:#e8d09b}.targets span{display:block;font-size:11px;color:#bad6e1;margin:9px 0}.meter{height:6px;border-radius:3px;background:#315166;overflow:hidden}.meter i{display:block;height:100%;background:linear-gradient(90deg,#619ba9,#d6be7a)}.hint-note{font-size:11px!important;border-top:1px solid #385e73;padding-top:18px}.help-count{font-size:10px!important;color:#9dbece!important}.lesson{display:inline-block;font-size:12px;margin:9px 0;text-underline-offset:3px}.outcome{padding:20px 0 0;border-top:1px solid #8a7660;margin-top:20px}.outcome h2{font-size:24px;color:#f2d8a4}.outcome p:not(.eyebrow){font-size:12px;color:#c4d7e2}.outcome.lost>.eyebrow{color:#f0b49d}.outcome-actions{display:flex;flex-direction:column;gap:10px}.outcome-actions button{font-size:12px}.shop-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:25px;background:#061827ed;backdrop-filter:blur(8px)}.shop-card{max-width:500px;background:#15374b;border:1px solid #719bab;border-radius:9px;padding:30px;box-shadow:0 20px 80px #0005}.shop-card h2{font-size:33px}.shop-card>strong{font-size:25px;color:#e6c488}.shop-card p:not(.eyebrow){font-size:13px;color:#b8d2df}.shop-card button{display:block;width:100%;margin-top:14px}.skip,.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;clip-path:none;z-index:50;top:0;left:0;padding:12px;background:#fff;color:#122d41}@media(min-width:1400px){.tile strong{font-size:22px}}@media(max-width:850px){.play-layout{grid-template-columns:minmax(0,1fr) 240px;gap:15px}.mission{padding:18px}.mission h1{font-size:25px}.lives{gap:2px}.lives i svg{width:13px;height:13px}.lives b{margin-left:3px;font-size:12px}.hero{gap:30px}.tile strong{font-size:14px}}@media(max-width:650px){.mast{padding:12px 14px}.brand{font-size:14px}.brand small{font-size:6px}.brand img{width:28px;height:28px}.mast>a:last-child{font-size:10px}main{padding:16px 12px 30px}.hero{grid-template-columns:1fr;padding:20px 0;gap:32px}.hero h1{font-size:65px}.hero-prisms{max-width:360px;margin:0 auto 20px;gap:5px}.hero-tile b{font-size:20px}.hero p:not(.eyebrow){font-size:15px}.hero button{width:100%}.intro-stats{padding:16px;gap:12px;font-size:11px}.play-layout{display:flex;flex-direction:column;gap:15px}.playfield{width:100%;padding:8px;border-bottom-width:5px}.mission{width:100%;padding:19px}.mission h1{font-size:26px}.mission .targets{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mission>p:not(.eyebrow){margin-bottom:12px}.board{padding:5px;gap:3px}.board-row{gap:3px}.tile strong{font-size:12px}.tile .crystal{filter:drop-shadow(0 2px 1px #00101e99)}.board-top{font-size:9px;padding:3px 4px 11px;gap:5px}.board-top b{font-size:8px}.hud{gap:5px;margin-bottom:12px}.hud>div{padding:9px 7px}.hud small{font-size:7px;letter-spacing:.04em}.hud b{font-size:19px}.lives{gap:1px;flex-wrap:wrap}.lives i svg{width:10px;height:10px}.lives b{font-size:10px;margin:0 0 0 2px}.game-nav{gap:6px}.game-nav>span{font-size:8px;letter-spacing:0;max-width:100px;text-align:center}.game-nav button{padding:8px;font-size:10px}.feedback{font-size:11px;min-height:40px}.tools button{font-size:10px;padding:8px 5px;gap:5px}.tools svg{width:17px;height:17px}.review article{width:100%}.rules,.review,.game-exam-fit{padding:16px;font-size:12px}.ice-corner{font-size:9px;top:1px;right:3px}.pulse-rows button{padding:6px 2px;font-size:9px}.shop-overlay{padding:16px}.shop-card{padding:23px}.shop-card h2{font-size:29px}}@media(prefers-reduced-motion:reduce){.tile,.tile.burst{animation:none;transition:none}.tile:hover:not(:disabled){transform:none}.hero-prisms{transform:none}}@media(min-width:651px){body.in-game main{padding-top:12px}body.in-game .mast{padding-block:10px}body.in-game .game-nav{margin-bottom:10px}body.in-game .hud{max-width:900px;margin:0 auto 13px}body.in-game .hud>div{padding-block:7px}body.in-game .play-layout{grid-template-columns:minmax(0,580px) 290px;justify-content:center;gap:20px}body.in-game .playfield{width:100%;max-width:min(580px,calc(100dvh - 265px));justify-self:center;padding:10px}body.in-game .feedback{min-height:26px;margin:9px 2px 7px;font-size:11px;line-height:1.5}body.in-game .tools button{min-height:38px;font-size:10px;padding:7px}body.in-game .board-top{padding-bottom:10px;font-size:10px}}.board{container-type:inline-size}.tile strong{font-size:clamp(10px,2.8cqw,18px)}.board-goals{display:none}body.in-game .hud{position:sticky;top:0;z-index:9;background:#0b2334ed;padding-block:5px;backdrop-filter:blur(8px)}@media(max-width:650px){.board-goals{display:flex;gap:7px;margin-bottom:10px}.board-goals>span{flex:1;padding:7px 9px;border:1px solid #91acac;background:#254557;color:#d1e6e9;font-size:10px;border-radius:4px}.board-goals b{color:#efd49f;margin-right:6px;font-size:13px}}.fraction-reference{display:block;width:100%;max-width:260px;height:auto;margin:4px 0 10px}.session-paused .board{visibility:hidden}.session-overlay{z-index:60}.session-overlay .shop-card button{margin:6px 3px}.first-play{padding:25px;border:1px solid #799ca9;background:linear-gradient(135deg,#163b4c,#10283b);border-radius:9px;box-shadow:0 16px 40px #00101b44}.first-play h2{font-size:27px;line-height:1.15;color:#f0d6a4;margin:0 0 12px}.first-play p{font-size:13px;color:#c8dfe5;line-height:1.6}.first-play .eyebrow{font-size:9px}.demo-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0;padding:12px;border:1px solid #446979;background:#041b2b;border-radius:7px}.demo-tile{position:relative;min-height:76px;aspect-ratio:1.2;padding:10px 5px;border:3px solid #c9e5ed60;border-top-color:#d5eff2b0;border-bottom-width:8px;background:var(--tile)!important;color:#fff!important;box-shadow:inset 0 0 0 4px #01172533;font:750 clamp(13px,2vw,24px) system-ui;letter-spacing:-.04em;border-radius:6px}.demo-tile.next{outline:3px solid #f2d18c;outline-offset:3px}.demo-tile.next:after{content:"NEXT";position:absolute;left:50%;bottom:-16px;transform:translate(-50%);font:800 8px system-ui;background:#e7c17b;color:#143345;padding:3px 7px;border-radius:3px}.demo-tile.selected{box-shadow:0 0 0 4px #eaca91,inset 0 0 0 4px #01172533}.demo-tile.matched{opacity:1;outline:2px solid #d7f7df;border-color:#b5dfc8}.demo-equivalence{font:750 clamp(15px,2vw,21px)/1.6 system-ui;color:#eed09a;background:#082135;border:1px solid #71949f;padding:12px;text-align:center;margin:12px 0}.demo-message{min-height:42px;font-weight:700;color:#eed09a!important}.demo-key{font-size:11px!important}.first-play>button{margin-top:10px}.guide-overlay{z-index:70;overflow:auto;align-items:safe center}.guide-overlay .first-play{width:min(100%,520px);max-height:calc(100dvh - 40px);overflow:auto}.guide-overlay .primary{width:100%;margin-top:15px}.quick-learning{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0 12px}.quick-learning button{font-size:11px;padding:9px;min-height:40px}.quick-learning span{flex-basis:100%;font-size:10px;color:#bdd6df}.tile.neighbor{outline:2px dashed #e6cf9e;outline-offset:-2px;border-radius:8px}.targets small{display:block;font-size:11px;line-height:1.6;color:#b7d5df;margin-top:7px}.board-top{font-weight:750}.hero .first-play p{font-size:13px}.hero .first-play h2{font-size:27px}.hero .first-play button{margin:0}.hero .demo-tile{min-height:65px}.game-nav{flex-wrap:wrap}@media(max-width:650px){.hero .first-play{padding:18px;width:100%}.hero .demo-board{gap:7px;padding:9px}.hero .demo-tile{width:auto;min-height:63px;font-size:17px}.guide-overlay{padding:12px}.guide-overlay .first-play{padding:19px;max-height:calc(100dvh - 24px)}.guide-overlay .demo-tile{font-size:17px;min-height:60px}.first-play h2{font-size:25px}.quick-learning button{flex:1;font-size:10px}.game-nav>span{max-width:none}.targets strong{font-size:21px}}.guide-goals{margin:16px 0;padding:14px;border:1px solid #658b99;background:#0a273b;border-radius:6px}.guide-goals h3{font-size:17px;color:#e6cf9c;margin:0 0 12px}.guide-goals>div{display:flex;gap:12px;align-items:center;margin:9px 0;font-size:12px;color:#c1d9e4}.guide-goals b{min-width:50px;font-size:18px;color:#ecd09a}.guide-goals .ice-key{min-width:35px;padding:4px;border:2px solid #adf0f5;text-align:center;color:#d2f3f6;background:#38687f}
