:root{--bg: #0b1a1e;--panel: #10262b;--panel-2: #163238;--ink: #ecfeff;--ink-dim: #8bb3b8;--accent: #2dd4bf;--good: #4ade80;--bad: #fb7185;--gold: #fbbf24;--line: #1f4750;--radius: 22px;--pad: clamp(16px, 3.2cqh, 26px)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{background:var(--bg);color:var(--ink);font-family:"Baloo 2",Segoe UI Rounded,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:manipulation}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}#stage{height:100dvh;display:grid;place-items:center}#app{position:relative;width:100%;height:100dvh;container-type:size;background:radial-gradient(120% 60% at 50% -10%,#123b40 0%,transparent 60%),var(--bg);display:flex;flex-direction:column;overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}body.framed{background:radial-gradient(80% 80% at 20% 0%,#0f2a30 0%,transparent 60%),radial-gradient(80% 80% at 100% 100%,#0f2a30 0%,transparent 55%),#061214}body.framed #app{border-radius:38px;border:1px solid var(--line);box-shadow:0 30px 80px #0009,0 0 0 8px #0a2025}body.framed[data-view=phone] #app{width:min(400px,94vw);height:min(820px,92dvh)}body.framed[data-view=ipad-p] #app{width:min(700px,94vw);height:min(933px,92dvh)}body.framed[data-view=ipad-l] #app{width:min(1120px,94vw);height:min(840px,80dvh)}.view-switcher{position:fixed;top:14px;right:14px;display:flex;gap:6px;background:#0a2025cc;border:1px solid var(--line);border-radius:999px;padding:5px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10}.view-btn{padding:6px 12px;border-radius:999px;color:var(--ink-dim);font-size:13px;font-weight:700}.view-btn.is-active{background:var(--accent);color:#04222b}.screen{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--pad);gap:12px;animation:screen-in .28s cubic-bezier(.2,.9,.3,1)}@keyframes screen-in{0%{opacity:0;transform:translateY(10px) scale(.99)}}.btn{border-radius:var(--radius);padding:16px 22px;font-weight:800;font-size:18px;letter-spacing:.02em;transition:transform .08s ease,filter .15s ease}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg,var(--accent),#99f6e4 70%);color:#032420;box-shadow:0 6px 22px #2dd4bf59}.btn-ghost{background:var(--panel);color:var(--ink-dim);border:1px solid var(--line);font-weight:700}.icon-btn{width:42px;height:42px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:var(--ink-dim);font-size:17px;flex:none}.home{text-align:center;gap:10px;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.home-header{flex:none;position:relative;padding-top:clamp(2px,1.2cqh,16px)}.sound-switch{position:absolute;top:0;right:0;z-index:5;display:inline-flex;align-items:center;gap:7px;padding:4px}.sound-switch-icon{font-size:16px;line-height:1}.sound-switch-track{position:relative;width:46px;height:27px;border-radius:999px;background:var(--line);border:1px solid color-mix(in srgb,var(--line) 70%,#000);transition:background .2s ease}.sound-switch-knob{position:absolute;top:2px;left:2px;width:21px;height:21px;border-radius:50%;background:#ecfeff;box-shadow:0 1px 3px #0006;transition:left .2s cubic-bezier(.2,1.4,.4,1)}.sound-switch.is-on .sound-switch-track{background:var(--accent)}.sound-switch.is-on .sound-switch-knob{left:21px}.home-scroll{flex:none;display:flex;flex-direction:column;gap:14px;padding:4px 2px}.logo-mark{font-size:clamp(30px,6cqh,48px);display:block;animation:bounce 1.8s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-8px) rotate(4deg)}}.logo{display:inline-flex;line-height:.95;margin-top:2px;max-width:100%;white-space:nowrap;font-size:clamp(38px,13cqw,66px);font-weight:900;letter-spacing:.01em}.logo-step{background:linear-gradient(115deg,#14b8a6,#2dd4bf);-webkit-background-clip:text;background-clip:text;color:transparent}.logo-kick{background:linear-gradient(115deg,#2dd4bf,#99f6e4);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 6px 22px rgba(45,212,191,.25))}.tagline{color:var(--ink-dim);font-weight:700;margin-top:6px;font-size:14px}.subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subject-tile{position:relative;background:linear-gradient(160deg,var(--panel-2),var(--panel));border:2px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:var(--radius);padding:clamp(14px,3cqh,26px) 12px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:transform .09s ease,border-color .15s ease,box-shadow .15s ease}.tile-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,var(--gold),#fcd34d);color:#3a2c00;font-size:11px;font-weight:900;letter-spacing:.01em;padding:4px 9px;border-radius:999px;box-shadow:0 3px 10px #00000052;transform:rotate(3deg)}.subject-tile:hover{border-color:var(--accent);box-shadow:0 0 26px color-mix(in srgb,var(--accent) 30%,transparent)}.subject-tile:active{transform:scale(.95)}.tile-emoji{font-size:clamp(34px,6cqh,52px)}.tile-name{font-size:21px;font-weight:900;letter-spacing:.02em}.tile-blurb{font-size:13px;color:var(--ink-dim);font-weight:600}.tile-best{margin-top:6px;font-size:12.5px;font-weight:800;color:var(--accent)}.book-bar{display:flex;align-items:center;gap:12px;width:100%;background:linear-gradient(160deg,var(--panel-2),var(--panel));border:2px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:var(--radius);padding:12px 16px;text-align:left;transition:transform .09s ease,border-color .15s ease}.book-bar:hover{border-color:var(--accent)}.book-bar:active{transform:scale(.98)}.book-bar-icon{font-size:30px;flex:none}.book-bar-text{display:flex;flex-direction:column;flex:none;min-width:92px}.book-bar-title{font-weight:900;font-size:16px}.book-bar-sub{font-size:12.5px;color:var(--ink-dim);font-weight:700}.book-bar-bar{flex:1;height:12px;border-radius:99px;background:var(--bg);overflow:hidden}.book-bar-fill{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),#99f6e4);transition:width .4s ease}.home-footer{flex:none;display:flex;align-items:center;justify-content:center;gap:10px}.sound-toggle{width:44px;height:44px;border-radius:14px;background:var(--panel);border:1px solid var(--line);font-size:20px}.footer-spacer{flex:1}.credit{font-size:11px;letter-spacing:.24em;color:#4a6b70;font-weight:700}.mem-grid{flex:1;min-height:0;display:grid;gap:8px;align-content:center;justify-content:center;padding:2px;overflow:hidden}.mem-card{width:100%;height:100%;border-radius:clamp(8px,calc(var(--card, 44px) * .18),16px);border:1px solid var(--line);background:var(--panel-2);display:grid;place-items:center;font-size:calc(var(--card, 44px) * .5);line-height:1;transition:transform .1s ease,background .2s ease,opacity .2s ease,border-color .2s ease}.mem-card:active{transform:scale(.95)}.mem-face{display:none}.mem-back{opacity:.4}.mem-card.flipped{background:color-mix(in srgb,var(--accent) 20%,var(--panel-2));border-color:var(--accent)}.mem-card.flipped .mem-face,.mem-card.matched .mem-face{display:block;animation:pop .32s cubic-bezier(.2,2,.4,1)}.mem-card.flipped .mem-back,.mem-card.matched .mem-back{display:none}.mem-card.matched{background:color-mix(in srgb,var(--good) 22%,var(--panel));border-color:var(--good);opacity:.7}.mem-counter{color:var(--ink-dim);font-weight:800}@keyframes miss-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.miss{animation:miss-shake .36s}.sort-board,.tap-board,.maze-board,.mensa-board{flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;justify-content:center}.tap-prompt{text-align:center;font-size:clamp(20px,3.4cqh,30px);font-weight:900;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;flex:none}.tap-prompt-target{font-size:clamp(34px,7cqh,60px)}.sort-tray{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-content:center;flex:1;min-height:0}.sort-item{font-size:clamp(30px,7cqh,54px);width:clamp(56px,12cqh,88px);height:clamp(56px,12cqh,88px);border-radius:16px;border:2px solid var(--line);background:var(--panel-2);display:grid;place-items:center;transition:transform .1s ease,border-color .15s ease}.sort-item.selected{border-color:var(--accent);transform:scale(1.07)}.sort-bins{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:none}.sort-bin{min-height:clamp(74px,12cqh,112px);border-radius:var(--radius);border:2px dashed var(--line);background:var(--panel);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.sort-bin.armed{border-color:var(--accent)}.sort-bin.shake{animation:miss-shake .36s}.sort-bin-emoji{font-size:clamp(28px,5cqh,40px)}.sort-bin-label{font-weight:900;color:var(--ink-dim)}.tap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(52px,11cqh,82px),1fr));gap:8px;align-content:center;flex:1;min-height:0}.tap-cell{aspect-ratio:1;border-radius:14px;border:1px solid var(--line);background:var(--panel-2);font-size:clamp(24px,6cqh,46px);display:grid;place-items:center}.tap-cell.got{background:color-mix(in srgb,var(--good) 24%,var(--panel));border-color:var(--good)}.order-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-content:center;flex:1;min-height:0}.order-tile{position:relative;width:clamp(58px,12cqh,92px);height:clamp(58px,12cqh,92px);border-radius:16px;border:2px solid var(--line);background:var(--panel-2);font-size:clamp(24px,5cqh,40px);font-weight:900;display:grid;place-items:center;font-variant-numeric:tabular-nums}.order-tile.done{background:color-mix(in srgb,var(--accent) 22%,var(--panel));border-color:var(--accent)}.order-rank{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#04222b;font-size:13px;font-weight:900;display:grid;place-items:center}.maze-board{align-items:center}.maze-grid{display:grid;gap:3px;width:min(86cqw,52cqh);aspect-ratio:1;background:var(--line);padding:3px;border-radius:12px;flex:none}.maze-cell{background:var(--panel-2);border-radius:4px;display:grid;place-items:center;font-size:clamp(14px,5cqw,30px)}.maze-cell.wall{background:#06171b}.maze-cell.goal{background:color-mix(in srgb,var(--accent) 22%,var(--panel-2))}.maze-pad{display:grid;grid-template-columns:repeat(3,clamp(48px,9cqh,62px));grid-template-rows:repeat(2,clamp(48px,9cqh,62px));gap:8px;flex:none;grid-template-areas:".  up  ." "left down right"}.maze-up{grid-area:up}.maze-down{grid-area:down}.maze-left{grid-area:left}.maze-right{grid-area:right}.maze-btn{border-radius:14px;border:1px solid var(--line);background:var(--panel-2);font-size:22px;color:var(--ink);transition:transform .08s ease,background .15s ease}.maze-btn:active{transform:scale(.93);background:color-mix(in srgb,var(--accent) 22%,var(--panel-2))}.mensa-board{align-items:center;justify-content:center}.mensa-target{flex:none}.mensa-target-svg{width:clamp(120px,22cqh,200px);height:auto;background:var(--panel);border-radius:18px;padding:8px;border:1px solid var(--line)}.mensa-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex:none;width:100%}.mensa-choice{aspect-ratio:1;border-radius:16px;border:2px solid var(--line);background:var(--panel-2);display:grid;place-items:center;padding:8px;transition:transform .1s ease,border-color .15s ease,background .15s ease}.mensa-choice.selected{border-color:var(--accent);transform:scale(1.05)}.mensa-choice.correct{border-color:var(--good);background:color-mix(in srgb,var(--good) 20%,var(--panel))}.mensa-choice-svg{width:100%;height:auto}.backup-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;background:#040c0eb8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px}.backup-panel{width:min(420px,94%);max-height:88%;overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:10px}.backup-head{display:flex;align-items:center;justify-content:space-between}.backup-title{font-weight:900;font-size:18px}.backup-sub{color:var(--ink-dim);font-size:13px;line-height:1.4}.backup-code{width:100%;min-height:66px;resize:none;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);padding:10px;word-break:break-all}.backup-hr{height:1px;background:var(--line);margin:6px 0}.backup-msg{font-size:13px;color:var(--accent);min-height:18px;text-align:center}.circ-launch{position:relative;display:flex;align-items:center;gap:12px;width:100%;background:linear-gradient(160deg,#163238,#10262b);border:2px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:var(--radius);padding:12px 16px;text-align:left;transition:transform .09s ease,border-color .15s ease,box-shadow .15s ease}.circ-launch:hover{border-color:var(--accent);box-shadow:0 0 26px color-mix(in srgb,var(--accent) 26%,transparent)}.circ-launch:active{transform:scale(.98)}.circ-launch-icon{font-size:30px;flex:none}.circ-launch-text{display:flex;flex-direction:column;flex:1}.circ-launch-title{font-weight:900;font-size:17px}.circ-launch-sub{font-size:12.5px;color:var(--ink-dim);font-weight:700}.circ-launch-badge{flex:none;background:var(--gold);color:#3a2c00;font-size:10px;font-weight:900;letter-spacing:.1em;padding:3px 8px;border-radius:999px}.circuits{padding-top:12px}.circ-counter{color:var(--ink-dim);font-weight:800;font-variant-numeric:tabular-nums}.circ-goal{flex:none;display:flex;align-items:center;justify-content:center;gap:10px;background:color-mix(in srgb,var(--accent) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:var(--radius);padding:12px;font-weight:900;font-size:clamp(16px,3cqh,20px)}.circ-goal-icon{font-size:24px}.circ-board{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(6px,1.6cqh,14px)}.circ-wire{color:color-mix(in srgb,var(--accent) 60%,var(--line));font-size:20px;line-height:1}.circ-switches{display:flex;gap:16px}.circ-switch{width:clamp(84px,22cqw,120px);height:clamp(44px,6cqh,56px);border-radius:999px;background:var(--panel);border:2px solid var(--line);position:relative;display:flex;align-items:center;transition:background .15s ease,border-color .15s ease}.circ-switch.on{background:linear-gradient(135deg,var(--accent),#5eead4);border-color:var(--accent)}.circ-knob{position:absolute;left:5px;width:clamp(34px,4.6cqh,44px);height:clamp(34px,4.6cqh,44px);border-radius:50%;background:#eaf6f5;box-shadow:0 2px 6px #0006;transition:left .16s cubic-bezier(.3,1.4,.5,1)}.circ-switch.on .circ-knob{left:calc(100% - clamp(34px,4.6cqh,44px) - 5px)}.circ-switch-label{position:absolute;width:100%;text-align:center;font-weight:900;font-size:12px;letter-spacing:.06em;color:var(--ink);pointer-events:none}.circ-switch.on .circ-switch-label{color:#032420}.circ-gate{display:flex;flex-direction:column;align-items:center;gap:3px;background:linear-gradient(160deg,var(--panel-2),var(--panel));border:2px solid color-mix(in srgb,var(--accent) 55%,var(--line));border-radius:18px;padding:10px 22px;min-width:140px}.circ-gate-name{font-size:clamp(26px,5cqh,38px);font-weight:900;letter-spacing:.04em;color:var(--accent)}.circ-gate-sub{font-size:11.5px;font-weight:700;color:var(--ink-dim);text-align:center}.circ-bulb{font-size:clamp(60px,16cqh,96px);line-height:1;filter:grayscale(1) brightness(.6);opacity:.55;transition:filter .15s ease,opacity .15s ease,transform .15s ease}.circ-bulb.lit{filter:none;opacity:1;transform:scale(1.06);animation:bulb-glow 1.4s ease-in-out infinite}@keyframes bulb-glow{50%{filter:drop-shadow(0 0 22px rgba(251,191,36,.75))}}.circ-footer{flex:none;display:flex;flex-direction:column;align-items:center;gap:10px}.circ-hint{font-weight:800;color:var(--accent);min-height:20px}.circ-next{display:none;width:100%}.circ-next.show{display:block;animation:pop .4s cubic-bezier(.2,2.2,.4,1)}.game{padding-top:12px}.game-header{display:flex;align-items:center;gap:10px;min-height:42px}.hud-subject{font-weight:800;color:var(--ink-dim);font-size:15px}.hud-spacer{flex:1}.hud-counter{color:var(--ink-dim);font-weight:800;font-variant-numeric:tabular-nums}.hud-score{font-size:26px;font-weight:900;min-width:58px;text-align:right;font-variant-numeric:tabular-nums}.hud-streak{font-weight:800;color:var(--gold)}.pop{animation:pop .3s cubic-bezier(.2,2.2,.4,1)}@keyframes pop{40%{transform:scale(1.35)}}.game-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:clamp(14px,3cqh,30px)}.game-prompt{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(10px,2cqh,18px);animation:prompt-in .3s cubic-bezier(.2,1.4,.4,1)}@keyframes prompt-in{0%{opacity:0;transform:scale(.85)}}.prompt-expr{font-size:clamp(52px,13cqh,110px);font-weight:900;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-align:center}.prompt-word{font-size:clamp(28px,6.5cqh,52px);font-weight:900;text-align:center;text-wrap:balance;padding:0 12px;line-height:1.1}.prompt-count{display:grid;justify-content:center;justify-items:center;align-content:center;gap:clamp(5px,1.4cqh,12px);max-width:94%}.count-item{font-size:clamp(26px,6cqh,52px);line-height:1}.prompt-swatch{display:grid;place-items:center}.swatch-svg{width:clamp(150px,32cqh,300px);height:auto}.prompt-clock{display:grid;place-items:center;width:100%}.clock-svg{width:min(72cqw,46cqh,340px);height:auto;filter:drop-shadow(0 10px 26px rgba(0,0,0,.45))}.prompt-coins{display:grid;justify-content:center;justify-items:center;align-content:center;gap:clamp(8px,2cqh,16px);max-width:94%}.coin{border-radius:50%;display:grid;place-items:center;font-weight:900;color:#3a2c00;border:2px solid rgba(0,0,0,.18);box-shadow:0 3px 8px #00000073,inset 0 2px 4px #ffffff73}.coin-1{width:clamp(40px,8.5cqh,60px);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#e6ab72,#b06f37);font-size:clamp(11px,2.2cqh,15px)}.coin-10{width:clamp(36px,7.5cqh,54px);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#eef2f6,#aeb8c4);font-size:clamp(10px,2cqh,14px)}.coin-5{width:clamp(50px,10.5cqh,74px);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#eef2f6,#aeb8c4);font-size:clamp(13px,2.6cqh,18px)}.coin-25{width:clamp(56px,12cqh,84px);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#eef2f6,#aeb8c4);font-size:clamp(14px,2.8cqh,20px)}.prompt-fraction{display:grid;place-items:center;width:100%}.fraction-svg{width:min(66cqw,42cqh,300px);height:auto;filter:drop-shadow(0 10px 26px rgba(0,0,0,.45))}.prompt-picture{display:flex;flex-direction:column;align-items:center;gap:8px}.picture-emoji{font-size:clamp(96px,30cqh,240px);line-height:1;filter:drop-shadow(0 12px 30px rgba(0,0,0,.45))}.picture-caption{font-size:clamp(18px,3cqh,26px);font-weight:800;color:var(--ink-dim)}.prompt-sequence{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(8px,2cqh,18px)}.seq-item{font-size:clamp(40px,10cqh,78px);line-height:1}.seq-q{display:grid;place-items:center;width:clamp(52px,12cqh,96px);height:clamp(52px,12cqh,96px);border-radius:20px;border:3px dashed var(--accent);color:var(--accent);font-weight:900;animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.08);opacity:.7}}.game-choices{display:grid;gap:12px;flex:none}.choices-text,.choices-emoji,.choices-pile{grid-template-columns:1fr 1fr}.choice-pile{min-height:clamp(90px,16cqh,156px);padding:10px;display:grid;place-items:center}.pile{display:grid;gap:3px;justify-content:center;align-content:center}.pile-item{font-size:clamp(13px,3.2cqh,24px);line-height:1}.choice{border-radius:var(--radius);border:2px solid var(--line);background:linear-gradient(160deg,var(--panel-2),var(--panel));transition:transform .07s ease,border-color .12s ease,background .12s ease,opacity .2s ease}.choice:active:not(:disabled){transform:scale(.96)}.choice-text{min-height:clamp(64px,10cqh,84px);padding:10px 16px;font-size:clamp(22px,4cqh,32px);font-weight:900;font-variant-numeric:tabular-nums}.choice-emoji{min-height:clamp(80px,13cqh,120px);display:grid;place-items:center;font-size:clamp(40px,9cqh,66px)}.choice.is-correct{background:linear-gradient(160deg,#14532d,#166534);border-color:var(--good);box-shadow:0 0 26px #4ade8066;animation:pop .3s cubic-bezier(.2,2.2,.4,1)}.choice.is-wrong{background:linear-gradient(160deg,#4c1d2b,#581c30);border-color:var(--bad)}.choice.is-dim{opacity:.35}.shake{animation:shake .35s ease}@keyframes shake{20%{transform:translate(-7px)}45%{transform:translate(6px)}70%{transform:translate(-4px)}90%{transform:translate(2px)}}@container (aspect-ratio > 1.15){.game-body{flex-direction:row;align-items:center}.game-prompt,.game-choices{flex:1;min-width:0}.home{max-width:940px;width:100%;margin:0 auto}.subject-grid{grid-template-columns:repeat(4,1fr)}}.juice-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:40}.flash-word{position:absolute;left:50%;top:26%;transform:translate(-50%,-50%) rotate(var(--tilt, 0deg));font-size:clamp(34px,7cqh,56px);font-weight:900;letter-spacing:.02em;white-space:nowrap;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.35),0 0 28px rgba(45,212,191,.7);pointer-events:none;z-index:41;animation:flash-pop .75s cubic-bezier(.2,1.6,.4,1) forwards}@keyframes flash-pop{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--tilt)) scale(.3)}22%{opacity:1;transform:translate(-50%,-50%) rotate(var(--tilt)) scale(1.18)}70%{opacity:1;transform:translate(-50%,-50%) rotate(var(--tilt)) scale(1)}to{opacity:0;transform:translate(-50%,-56%) rotate(var(--tilt)) scale(.92)}}.score-fly{position:absolute;transform:translate(-50%,-50%);font-size:24px;font-weight:900;color:var(--gold);text-shadow:0 1px 6px rgba(0,0,0,.6);pointer-events:none;z-index:41;opacity:1;font-variant-numeric:tabular-nums;transition:transform .6s cubic-bezier(.3,.7,.3,1),opacity .6s ease}.sticker-unlock{width:100%;max-width:460px;margin-top:4px;padding:14px;border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));display:flex;flex-direction:column;align-items:center;gap:8px;animation:badge-in .5s cubic-bezier(.2,1.6,.4,1)}.sticker-unlock-label{font-weight:900;letter-spacing:.04em;color:var(--accent)}.sticker-unlock-row{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.sticker-unlock-emoji{font-size:40px;animation:pop .5s cubic-bezier(.2,2.2,.4,1)}.sticker-unlock.tappable{cursor:pointer;font:inherit;color:inherit;text-align:center;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,border-color .12s ease,background .12s ease}.sticker-unlock.tappable:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--panel))}.sticker-unlock.tappable:active{transform:scale(.98)}.sticker-unlock-hint{font-size:13px;font-weight:700;color:var(--accent);opacity:.85}.book{gap:14px}.book-header{display:flex;align-items:center;gap:12px;flex:none}.book-title{display:flex;flex-direction:column}.book-title-main{font-size:22px;font-weight:900}.book-title-sub{font-size:13px;color:var(--ink-dim);font-weight:700}.seg-toggle{display:flex;gap:4px;flex:none;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:4px}.seg-btn{flex:1;padding:9px 12px;border-radius:999px;font-weight:800;font-size:13.5px;color:var(--ink-dim);transition:background .12s ease,color .12s ease}.seg-btn.is-active{background:var(--accent);color:#032420}.sticker-empty{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:20px}.sticker-empty-emoji{font-size:60px;animation:bounce 1.8s ease-in-out infinite}.sticker-empty-title{font-size:20px;font-weight:900}.sticker-empty-sub{font-size:14px;font-weight:600;color:var(--ink-dim);max-width:30ch;text-wrap:balance}.sticker.show-name{aspect-ratio:auto;padding:12px 6px 10px;gap:5px}.sticker-name{font-size:11.5px;font-weight:800;color:var(--ink-dim);line-height:1.1;text-align:center}.book-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:18px;padding-bottom:8px}.sticker-page{display:flex;flex-direction:column;gap:8px}.page-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.page-headings{display:flex;flex-direction:column;gap:1px}.page-source{font-size:11px;font-weight:700;color:var(--ink-dim)}.page-name{font-weight:900;font-size:16px}.page-count{font-size:13px;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}.sticker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.sticker{aspect-ratio:1;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.sticker.earned{background:linear-gradient(160deg,var(--panel-2),var(--panel));border:2px solid color-mix(in srgb,var(--accent) 50%,var(--line));box-shadow:0 0 16px color-mix(in srgb,var(--accent) 18%,transparent)}button.sticker.earned{cursor:pointer;transition:transform .08s ease,box-shadow .15s ease}button.sticker.earned:hover{box-shadow:0 0 22px color-mix(in srgb,var(--accent) 32%,transparent)}button.sticker.earned:active{transform:scale(.92)}.sticker.locked{background:var(--bg);border:2px dashed var(--line);opacity:.7}.sticker-emoji{font-size:clamp(30px,8cqw,46px)}.sticker-lock{font-size:22px;filter:grayscale(1);opacity:.5}.sticker-need{font-size:11px;font-weight:800;color:var(--ink-dim);font-variant-numeric:tabular-nums}@container (aspect-ratio > 1.15){.sticker-grid{grid-template-columns:repeat(8,1fr)}}.results{justify-content:space-between}.results-main{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;padding-top:clamp(10px,4cqh,40px)}.badge{width:clamp(130px,26cqh,190px);aspect-ratio:1;border-radius:50%;border:4px solid var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:radial-gradient(80% 80% at 30% 25%,var(--panel-2),var(--panel));box-shadow:0 14px 40px #00000080;animation:badge-in .5s cubic-bezier(.2,1.6,.4,1)}@keyframes badge-in{0%{opacity:0;transform:scale(.4) rotate(-12deg)}}.badge-emoji{font-size:clamp(48px,10cqh,76px)}.badge-label{font-weight:900;letter-spacing:.06em;font-size:clamp(14px,2.4cqh,18px)}.new-best{color:var(--gold);font-weight:900;letter-spacing:.14em;animation:pop .5s cubic-bezier(.2,2.2,.4,1)}.final-score{font-size:clamp(56px,11cqh,88px);font-weight:900;line-height:1;font-variant-numeric:tabular-nums}.final-caption{display:block;font-size:14px;font-weight:700;color:var(--ink-dim);letter-spacing:.2em;text-transform:uppercase}.stat-row{display:flex;gap:10px;width:100%;max-width:460px}.stat{flex:1;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 8px;display:flex;flex-direction:column;gap:2px}.stat-value{font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}.stat-label{font-size:11px;color:var(--ink-dim);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.results-actions{flex:none;display:flex;flex-direction:column;gap:10px}.results-actions .btn{width:100%}
