:root{--serif:ui-serif, "New York", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--paper:#f3ead6;--card:#fbf6ea;--ink:#1f2a22;--muted:#6b6653;--spot:#2f7a4c;--spot2:#d99a33;--felt:#2d3a2c;--tray1:#8a5a2e;--tray2:#6e4522;--cream:#f1e4c8;--cream-dim:#cbb690;--wood-ink:#24170c;--oak:#c9985c;--oak-dark:#6e4522;--oak-edge:#4a2d15;--brass-hi:#f5dc8a;--brass:#d4a93b;--brass-lo:#9a7414;--brass-ink:#3a2708;--danger:#d9543b;--spot-lt:color-mix(in srgb, var(--spot) 58%, var(--cream));--spot2-lt:color-mix(in srgb, var(--spot2) 70%, var(--cream));--lift:0 5px 0 var(--oak-edge), 0 9px 16px #00000073;--lift-sm:0 3px 0 var(--oak-edge), 0 6px 10px #0006;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{font-family:var(--serif);color:var(--cream);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-variant-numeric:lining-nums tabular-nums;background:#3b2415}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}#app{position:fixed;inset:0;overflow:hidden}.scenery{z-index:0;pointer-events:none;background-color:#3b2415;background-image:radial-gradient(ellipse 80% 55% at 50% 12%, #ffd69638, transparent 70%), radial-gradient(ellipse at 50% 50%, transparent 55%, #0000008c 100%), var(--bench-tex);background-size:100% 100%,100% 100%,512px 256px;position:absolute;inset:0;overflow:hidden}.scenery .print,.scenery .reg{display:none}.twinkle{animation:3.2s ease-in-out infinite twinkle}@keyframes twinkle{50%{opacity:.25}}.screen{z-index:1;padding:calc(var(--safe-top) + 14px) 16px calc(var(--safe-bottom) + 14px);animation:screen-in .38s var(--ease-out) both;flex-direction:column;align-items:center;display:flex;position:absolute;inset:0}.screen.leaving{pointer-events:none;animation:.2s ease-in both screen-out}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}}@keyframes screen-out{to{opacity:0;transform:translateY(-6px)}}.kicker{letter-spacing:2.6px;text-transform:uppercase;color:var(--spot2-lt);font-size:12px;font-weight:700}.oak{background-color:var(--oak);background-image:var(--oak-tex);color:var(--wood-ink);background-size:512px 128px}.felt{background-color:var(--felt);background-image:var(--felt-tex), radial-gradient(ellipse at 50% 0%, #ffffff12, transparent 70%);background-size:128px 128px,100% 100%}.btn{letter-spacing:.4px;min-height:58px;color:var(--wood-ink);background-color:var(--oak);background-image:linear-gradient(180deg, #fff0d259, #0000000f), var(--oak-tex);box-shadow:var(--lift), inset 0 1px 0 #fff5dc99, inset 0 -2px 0 #5a320f40;background-size:100% 100%,512px 128px;border-radius:9px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-size:21px;font-weight:700;transition:transform 90ms,box-shadow 90ms;display:inline-flex;position:relative}.btn:active{box-shadow:0 1px 0 var(--oak-edge), 0 3px 6px #0006, inset 0 1px 0 #fff5dc99;transform:translateY(4px)}.btn:focus-visible{outline:3px solid var(--spot2-lt);outline-offset:4px}.btn svg{width:20px;height:20px}.btn-primary{color:var(--spot);text-shadow:0 1px #fff5dc80;font-size:23px}.btn-primary .sub{color:var(--wood-ink);text-shadow:none}.btn-soft{color:var(--wood-ink)}.btn-ghost{box-shadow:none;color:var(--cream-dim);text-underline-offset:4px;background:0 0;min-height:44px;font-size:17px;font-style:italic;text-decoration:underline;text-decoration-thickness:1px}.btn-ghost:active{box-shadow:none;transform:none}.btn-icon{width:48px;height:48px;color:var(--wood-ink);background-color:var(--oak);background-image:linear-gradient(180deg, #fff0d259, #0000000f), var(--oak-tex);box-shadow:var(--lift-sm), inset 0 1px 0 #fff5dc99;background-size:100% 100%,512px 128px;border-radius:9px;place-items:center;transition:transform 90ms,box-shadow 90ms;display:grid}.btn-icon:active{box-shadow:0 0 0 var(--oak-edge), inset 0 1px 0 #fff5dc99;transform:translateY(3px)}.btn-icon svg{width:22px;height:22px}.btn[disabled]{opacity:.5;pointer-events:none}.btn-stack{flex-direction:column;gap:1px;line-height:1.1}.btn .sub{opacity:.8;letter-spacing:0;font-size:13px;font-style:italic;font-weight:400;display:block}.pill,.nameplate,.toast{color:var(--brass-ink);background:linear-gradient(180deg, var(--brass-hi), var(--brass) 55%, var(--brass-lo));box-shadow:0 2px #5c430b,0 5px 10px #0006,inset 0 1px #fffadccc,inset 0 -1px #5a3c0566}.pill{border-radius:6px;align-items:center;gap:6px;height:36px;padding:0 14px 0 12px;font-size:17px;font-weight:700;display:inline-flex;position:relative}.pill:before,.pill:after{content:"";background:radial-gradient(circle at 35% 35%,#fff2c2,#7a5a12);border-radius:50%;width:4px;height:4px;margin-top:-2px;position:absolute;top:50%}.pill:before{left:4px}.pill:after{right:4px}.pill svg{width:18px;height:18px}.icon-star,.icon-coin{color:#8a5e05}.pills{gap:8px;display:flex}.panel,.goal,.journey-strip,.shop-item,.stat-grid,.reward{color:var(--cream);background-color:var(--felt);background-image:var(--felt-tex);border:3px solid var(--oak);box-shadow:inset 0 0 0 1px #00000059, inset 0 2px 6px #00000073, 0 3px 0 var(--oak-edge), 0 6px 12px #00000059;background-size:128px 128px}.home{justify-content:space-between}.home-top{justify-content:space-between;align-items:center;width:100%;max-width:480px;display:flex}.home-hero{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;width:100%;max-width:420px;display:flex}.masthead{flex-direction:column;align-items:center;width:100%;display:flex}.masthead .rules{display:none}.masthead .edition{width:100%;color:var(--cream-dim);justify-content:space-between;padding:0 6px 8px;font-size:13px;font-style:italic;display:flex}.stick{background-color:var(--felt);background-image:var(--felt-tex);box-shadow:0 0 0 4px var(--tray2), 0 0 0 10px var(--tray1), 0 0 0 12px var(--oak-edge), 0 14px 30px #0000008c;background-size:128px;border-radius:6px;padding:10px 14px 12px;position:relative}.logo{justify-content:center;gap:2px;display:flex}.logo+.logo{margin-top:2px}.logo canvas{animation:drop .7s var(--ease-spring) both;display:block}@keyframes drop{0%{opacity:0;transform:translateY(-160px)rotate(-6deg)}55%{opacity:1}}.tagline{color:var(--cream-dim);text-align:center;margin-top:10px;font-size:18px;font-style:italic}.home-actions{flex-direction:column;gap:14px;width:100%;max-width:380px;display:flex}.home-actions .row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.journey-strip{width:100%;max-width:300px;animation:fade-up .5s .6s var(--ease-out) both;border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.journey-strip .top{justify-content:space-between;align-items:baseline;font-size:16px;font-weight:700;display:flex}.journey-strip .top span:last-child{color:var(--cream-dim);align-items:center;gap:4px;font-size:14px;display:inline-flex}.journey-strip .top svg{width:15px;height:15px;color:var(--brass)}.journey-strip .dots{grid-template-columns:repeat(10,1fr);gap:5px;display:grid}.journey-strip .dots i{background:#00000059;border-radius:2px;height:9px;box-shadow:inset 0 1px 1px #00000080}.journey-strip .dots i.on{background:var(--spot-lt);box-shadow:none}.journey-strip .dots i.cur{background:var(--brass);box-shadow:0 0 8px var(--brass)}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}}.map{padding:0}.map-top{z-index:3;padding:calc(var(--safe-top) + 12px) 16px 22px;background:linear-gradient(#28160af2 45%,#0000);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.map-scroll{-webkit-overflow-scrolling:touch;padding:calc(var(--safe-top) + 86px) 0 calc(var(--safe-bottom) + 30px);position:absolute;inset:0;overflow:hidden auto}.world{flex-direction:column;align-items:center;width:100%;max-width:460px;margin:0 auto 34px;padding:0 18px;display:flex;position:relative}.nameplate{z-index:2;border-radius:6px;align-items:center;gap:12px;margin-bottom:-16px;padding:8px 18px;font-size:20px;display:flex;position:relative}.nameplate b{font-weight:700}.nameplate .no,.nameplate .st{letter-spacing:1.5px;text-transform:uppercase;opacity:.75;align-items:center;gap:3px;font-size:12px;font-weight:700;display:inline-flex}.nameplate .st svg{width:13px;height:13px}.plate-frame{background-color:var(--oak);background-image:var(--oak-tex);width:100%;box-shadow:0 0 0 2px var(--oak-edge), inset 0 0 0 2px #fff0d259, 0 12px 26px #0000008c;background-size:512px 128px;border-radius:6px;padding:12px}.plate{aspect-ratio:400/820;border-radius:2px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0006,inset 0 0 30px #50321440}.plate .plate-art{width:100%;height:100%;position:absolute;inset:0}.plate:after{content:"";background-image:var(--paper-tex-light);mix-blend-mode:multiply;opacity:.6;pointer-events:none;background-size:256px;position:absolute;inset:0}.plate.locked .plate-art{filter:grayscale(.85)contrast(.8)brightness(.95);opacity:.75}.plate .trail{z-index:1;width:100%;height:100%;position:absolute;inset:0}.plate .trail path{fill:none;stroke-width:3px;stroke-dasharray:2 10;stroke-linecap:round;opacity:.75}.blurb{color:var(--cream-dim);text-align:center;margin-top:12px;font-size:16px;font-style:italic}.world-gate{color:var(--spot2-lt);text-align:center;margin-top:6px;font-size:15px;font-weight:700}.map-foot{text-align:center;color:var(--cream-dim);padding:4px 0 16px;font-style:italic}.node{z-index:2;width:50px;height:50px;color:var(--wood-ink);background-color:var(--oak);background-image:linear-gradient(180deg, #fff0d266, #0000000d), var(--oak-tex);box-shadow:0 4px 0 var(--oak-edge), 0 7px 12px #00000073, inset 0 1px 0 #fff5dc99;background-size:100% 100%,512px 128px;border-radius:8px;place-items:center;margin:-25px 0 0 -25px;font-size:25px;font-weight:700;transition:transform 90ms;display:grid;position:absolute}.node:active{transform:translateY(3px)}.node .num{line-height:1}.node.done .num{color:var(--p-spot,var(--spot))}.node.current{box-shadow:0 4px 0 var(--oak-edge), 0 0 0 4px var(--p-spot2,var(--spot2)), 0 0 22px 4px var(--p-spot2,var(--spot2)), inset 0 1px 0 #fff5dc99;animation:1.6s ease-in-out infinite bob}.node.locked{color:#3c4046;background:linear-gradient(#b7bcc2,#8d939a);box-shadow:0 4px #52575e,0 6px 10px #0006,inset 0 1px #ffffff80}.node.boss{width:64px;height:64px;margin:-32px 0 0 -32px;font-size:30px}.node .crown{width:30px;height:21px;color:var(--brass);filter:drop-shadow(0 2px 0 var(--brass-lo)) drop-shadow(0 3px 3px #0006);position:absolute;top:-22px}.node .lock{width:20px;height:20px}.node .nstars{gap:1px;display:flex;position:absolute;bottom:-19px}.node .nstars svg{color:#28190a8c;width:15px;height:15px}.node .nstars svg path{stroke:#fff5dccc;stroke-width:1.5px}.node .nstars svg.on{color:var(--brass)}.node .nstars svg.on path{stroke:var(--brass-lo)}@keyframes bob{50%{transform:translateY(-5px)}}.game{padding-left:12px;padding-right:12px}.hud{flex-direction:column;gap:10px;width:100%;max-width:480px;display:flex}.hud-row{align-items:center;gap:12px;display:flex}.hud-title{flex:1;min-width:0}.hud-title .lvl{color:var(--spot2-lt);letter-spacing:2.2px;text-transform:uppercase;font-size:11px;font-weight:700}.hud-title .name{white-space:nowrap;text-overflow:ellipsis;color:var(--cream);font-size:24px;font-weight:700;line-height:1.05;overflow:hidden}.score-box{text-align:right}.score-box .score{color:var(--cream);text-shadow:0 2px #0006;font-size:32px;font-weight:700;line-height:1}.score-box .score.bump{animation:.24s ease-out bump}@keyframes bump{40%{color:var(--brass-hi);transform:translateY(-3px)}}.score-box .best{color:var(--cream-dim);margin-top:3px;font-size:13px;font-style:italic}.meter{background:#00000073;border-radius:3px;height:10px;position:relative;box-shadow:inset 0 1px 2px #0009,0 1px #ffdcaa1f}.meter .fill{background:linear-gradient(180deg, var(--brass-hi), var(--brass) 60%, var(--brass-lo));width:0;transition:width .42s var(--ease-out);border-radius:3px;position:absolute;top:0;bottom:0;left:0}.meter .mark{color:#2a1a0c;width:22px;height:22px;transition:color .25s, transform .25s var(--ease-spring);margin:-11px 0 0 -11px;position:absolute;top:50%}.meter .mark svg{width:100%;height:100%}.meter .mark svg path{stroke:var(--brass);stroke-width:1.6px}.meter .mark.on{color:var(--brass-hi);filter:drop-shadow(0 0 6px var(--brass));transform:scale(1.18)rotate(-8deg)}.goals{flex-wrap:wrap;gap:8px;display:flex}.goal{cursor:pointer;text-align:left;border-radius:8px;flex:1 1 0;align-items:center;gap:10px;min-width:130px;padding:6px 12px 6px 8px;transition:background-color .25s;display:flex;position:relative}.goal .info{text-align:center;width:15px;height:15px;color:var(--brass-ink);background:radial-gradient(circle at 35% 30%, var(--brass-hi), var(--brass) 60%, var(--brass-lo));border-radius:50%;font-size:11px;font-style:italic;font-weight:700;line-height:15px;position:absolute;top:4px;right:6px}.goal:active{transform:translateY(2px)}.goal.pulse{animation:.36s ease-out goal-pulse}@keyframes goal-pulse{40%{transform:translateY(-3px)}}.goal.done{background-color:color-mix(in srgb, var(--spot) 55%, var(--felt))}.goal .ring{flex:none;width:38px;height:38px;position:relative}.goal .ring svg{width:38px;height:38px;transform:rotate(-90deg)}.goal .ring circle{fill:none;stroke-width:3.5px}.goal .ring .bg{stroke:#0006}.goal .ring .fg{stroke:var(--brass);transition:stroke-dashoffset .42s var(--ease-out)}.goal .ring .ic{color:var(--cream);place-items:center;font-size:17px;font-weight:700;display:grid;position:absolute;inset:0}.goal .ring .ic svg{width:18px;height:18px;color:var(--brass-hi);transform:none}.goal.done .ring .ic{color:var(--brass-ink)}.goal.done .ring .ic:before{content:"";background:var(--brass);z-index:-1;border-radius:50%;position:absolute;inset:5px}.goal .gtext{min-width:0}.goal .gtext b{font-size:17px;font-weight:700;line-height:1.1;display:block}.goal .gtext span{color:var(--cream-dim);font-size:13px;font-style:italic;display:block}.goal.timer .clock{letter-spacing:.5px;font-size:24px}.goal.timer.urgent{background-color:color-mix(in srgb, var(--danger) 45%, var(--felt))}.goal.timer.urgent .clock,.goal.timer.urgent .ring .ic{color:#ffd7c9}.goal.timer.urgent .ring .fg{stroke:#ff8a70}.board-wrap{flex:1;justify-content:center;align-items:center;width:100%;max-width:480px;min-height:0;margin:14px 0 12px;display:flex;position:relative}.board-wrap canvas{touch-action:none;background:radial-gradient(ellipse at 50% 20%, color-mix(in srgb, var(--felt) 86%, #fff 14%), var(--felt) 70%);box-shadow:0 0 0 3px var(--tray2), 0 0 0 9px var(--tray1), 0 0 0 11px var(--oak-edge), 0 18px 34px 8px #0000008c;border-radius:6px;display:block}.word-pill{z-index:5;letter-spacing:3px;color:#221a10;background-color:#f6eedb;background-image:var(--paper-tex-light);opacity:0;min-width:120px;height:46px;transition:opacity .12s, transform .18s var(--ease-spring), color .15s;pointer-events:none;background-size:256px;border-radius:3px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:25px;font-weight:700;display:flex;position:absolute;top:-8px;left:50%;transform:translate(-50%,-50%)rotate(-1.5deg)scale(.9);box-shadow:0 6px 14px #00000073,0 1px #0003}.word-pill.show{opacity:1;transform:translate(-50%,-50%)rotate(-1.5deg)scale(1)}.word-pill.valid{color:var(--spot)}.word-pill .pts{letter-spacing:0;color:#5a4a30;font-size:16px;font-style:italic}.word-pill.bad{color:var(--danger);text-decoration:line-through;animation:.3s pill-shake}@keyframes pill-shake{25%,75%{margin-left:-6px}50%{margin-left:6px}}.start-banner{z-index:6;text-align:center;color:#221a10;background-color:#f6eedb;background-image:var(--paper-tex-light);min-width:230px;animation:stamp-in .38s var(--ease-spring) both;pointer-events:none;background-size:256px;border-radius:3px;padding:16px 26px 18px;transition:opacity .35s,transform .35s;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)rotate(-2deg);box-shadow:0 12px 28px #0000008c}.start-banner:before{content:"";background:radial-gradient(circle at 35% 35%,#ff9d8a,#9a2a1a);border-radius:50%;width:16px;height:16px;margin-left:-8px;position:absolute;top:-9px;left:50%;box-shadow:0 2px 3px #0006}.start-banner.out{opacity:0;transform:translate(-50%,-60%)rotate(-2deg)}.start-banner .k{letter-spacing:2.4px;text-transform:uppercase;color:var(--spot);margin-bottom:4px;font-size:12px;font-weight:700}.start-banner .g{font-size:22px;font-weight:700;line-height:1.25}@keyframes stamp-in{0%{opacity:0;transform:translate(-50%,-50%)rotate(-2deg)scale(1.5)}60%{opacity:1}}.status-chips{pointer-events:none;z-index:4;justify-content:center;gap:8px;display:flex;position:absolute;bottom:-6px;left:0;right:0}.status-chip{height:30px;color:var(--brass-ink);background:linear-gradient(180deg, var(--brass-hi), var(--brass) 55%, var(--brass-lo));animation:stamp-chip .3s var(--ease-spring) both;border-radius:5px;align-items:center;gap:6px;padding:0 12px;font-size:15px;font-weight:700;display:inline-flex;box-shadow:0 2px #5c430b,0 4px 8px #00000073}.status-chip svg{width:15px;height:15px}.status-chip.frozen{color:#13244a;background:linear-gradient(#d9e8ff,#8fb3ea 60%,#5c80bd);box-shadow:0 2px #2e4c85,0 4px 8px #00000073}.status-chip.flood{color:#2a0a04;background:linear-gradient(#ffc2b3,#e0664d 60%,#a73a25);box-shadow:0 2px #6e2213,0 4px 8px #00000073}@keyframes stamp-chip{0%{opacity:0;transform:scale(1.4)}}.dock{justify-content:center;gap:12px;width:100%;max-width:480px;padding-top:8px;display:flex}.booster{width:70px;height:64px;color:var(--wood-ink);background-color:var(--oak);background-image:linear-gradient(180deg, #fff0d259, #0000000f), var(--oak-tex);box-shadow:var(--lift), inset 0 1px 0 #fff5dc99;background-size:100% 100%,512px 128px;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:3px;transition:transform 90ms,box-shadow 90ms;display:flex;position:relative}.booster svg{width:26px;height:26px;color:var(--wood-ink)}.booster:active{box-shadow:0 1px 0 var(--oak-edge), inset 0 1px 0 #fff5dc99;transform:translateY(4px)}.booster .label{color:#24170cbf;font-size:12px;font-style:italic;line-height:1}.booster .count{min-width:24px;height:24px;color:var(--brass-ink);background:radial-gradient(circle at 35% 30%, var(--brass-hi), var(--brass) 60%, var(--brass-lo));border-radius:99px;place-items:center;padding:0 6px;font-size:13px;font-weight:700;display:grid;position:absolute;top:-9px;right:-9px;box-shadow:0 2px #5c430b,0 3px 6px #0006}.booster .count.buy{background:radial-gradient(circle at 35% 30%, #fff, var(--cream) 60%, var(--cream-dim))}.booster.armed{box-shadow:0 9px 0 var(--oak-edge), 0 0 0 3px var(--spot2-lt), 0 14px 22px #00000073;transform:translateY(-4px)}.backdrop{z-index:20;background:#0f08038c;justify-content:center;align-items:flex-end;animation:.22s both fade-in;display:flex;position:fixed;inset:0}.backdrop.leaving{animation:.2s both fade-out}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.drawer{width:100%;max-width:480px;margin:0 8px calc(var(--safe-bottom) + 10px);background-color:var(--oak);background-image:linear-gradient(180deg, #fff0d240, #0000001a), var(--oak-tex);box-shadow:0 0 0 2px var(--oak-edge), inset 0 1px 0 #fff5dc99, 0 -10px 50px #00000080;animation:sheet-in .38s var(--ease-out) both;background-size:100% 100%,512px 128px;border-radius:10px;padding:11px}.drawer:before{content:"";background:linear-gradient(180deg, var(--brass-hi), var(--brass-lo));border-radius:0 0 8px 8px;width:56px;height:12px;margin:-3px auto 8px;display:block;box-shadow:0 2px #5c430b,0 3px 5px #0006}.backdrop.leaving .drawer{animation:.2s ease-in both sheet-out}@keyframes sheet-in{0%{transform:translateY(70%)}}@keyframes sheet-out{to{opacity:0;transform:translateY(40%)}}@media (height>=700px) and (width>=700px){.backdrop{align-items:center}.drawer{margin-bottom:0}}.sheet{color:var(--cream);background-color:var(--felt);background-image:var(--felt-tex), radial-gradient(ellipse at 50% 0%, #ffffff14, transparent 60%);background-size:128px 128px,100% 100%;border-radius:5px;flex-direction:column;gap:16px;max-height:84vh;padding:24px 18px 18px;display:flex;position:relative;overflow-y:auto;box-shadow:inset 0 0 0 1px #00000073,inset 0 4px 14px #0000008c}.sheet h1{text-align:center;color:var(--cream);text-shadow:0 2px #0006;font-size:34px;font-weight:700;line-height:1.05}.sheet .kicker{text-align:center}.sheet p.lead{text-align:center;color:var(--cream-dim);font-size:17px;font-style:italic}.sheet .actions{flex-direction:column;gap:14px;margin-top:6px;display:flex}.sheet .actions .row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.goal-list{flex-direction:column;gap:9px;display:flex}.goal-list .goal{min-width:0}.big-stars{justify-content:center;align-items:flex-end;gap:6px;height:92px;display:flex}.big-stars svg{color:#00000059;width:68px;height:68px}.big-stars svg path{stroke:#ffe6b459;stroke-width:1px}.big-stars svg:nth-child(2){width:86px;height:86px}.big-stars svg.on{color:var(--brass);animation:star-stamp .42s var(--ease-spring) both;filter:drop-shadow(0 3px 0 var(--brass-lo)) drop-shadow(0 0 12px #f5dc8a80)}.big-stars svg.on path{stroke:var(--brass-hi)}@keyframes star-stamp{0%{opacity:0;transform:scale(1.8)rotate(-20deg)}to{transform:rotate(-4deg)}}.final-score{text-align:center;color:var(--cream);text-shadow:0 3px #00000073;font-size:54px;font-weight:700;line-height:1}.final-score small{color:var(--spot2-lt);letter-spacing:2.4px;text-transform:uppercase;text-shadow:none;margin-top:8px;font-size:12px;font-weight:700;display:block}.rewards{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.reward{animation:stamp-chip .36s var(--ease-spring) both;border-radius:6px;align-items:center;gap:7px;padding:7px 13px;font-weight:700;display:inline-flex}.reward svg{width:20px;height:20px;color:var(--brass)}.stat-grid{border-radius:6px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.stat{text-align:center;padding:10px 6px}.stat+.stat{border-left:2px solid #c9985c80}.stat b{font-size:19px;font-weight:700;display:block}.stat span{color:var(--cream-dim);text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:700}.shop-list{flex-direction:column;gap:10px;display:flex}.shop-item{border-radius:8px;align-items:center;gap:14px;padding:10px 12px;display:flex}.shop-item .bi{background:radial-gradient(circle at 35% 30%, var(--brass-hi), var(--brass) 60%, var(--brass-lo));border-radius:50%;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 2px #5c430b}.shop-item .bi svg{width:24px;height:24px;color:var(--brass-ink)}.shop-item .desc{flex:1;min-width:0}.shop-item .desc b{font-size:18px;font-weight:700;display:block}.shop-item .desc span{color:var(--cream-dim);font-size:14px;font-style:italic}.shop-item .own{color:var(--cream-dim);font-size:13px}.shop-item .btn{min-height:44px;padding:0 12px;font-size:17px}.setting{border-bottom:1px dashed #c9985c59;justify-content:space-between;align-items:center;gap:16px;padding:10px 2px;font-size:18px;font-weight:700;display:flex}.setting input[type=range]{width:55%;accent-color:var(--brass)}.toggle{background:#00000073;border-radius:99px;width:54px;height:30px;transition:background .18s;position:relative;box-shadow:inset 0 1px 3px #0009}.toggle:after{content:"";background:radial-gradient(circle at 35% 30%, var(--brass-hi), var(--brass) 60%, var(--brass-lo));width:24px;height:24px;transition:transform .2s var(--ease-spring);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 3px #00000080}.toggle.on{background:color-mix(in srgb, var(--spot) 70%, var(--felt))}.toggle.on:after{transform:translate(24px)}.rule{text-align:center;font-size:17px;line-height:1.4}.counts{grid-template-columns:1fr 1fr;gap:10px;display:grid}.counts .col{background:#00000047;border-radius:6px;padding:10px 12px;box-shadow:inset 0 1px 3px #00000080}.counts .col b{letter-spacing:2px;text-transform:uppercase;margin-bottom:6px;font-size:12px;display:block}.counts .yes b{color:var(--spot-lt)}.counts .no b{color:#f0a08c}.counts .li{margin-bottom:5px;padding-left:14px;font-size:14px;line-height:1.35;position:relative}.counts .yes .li:before{content:"✓";color:var(--spot-lt);font-weight:700;position:absolute;left:0}.counts .no .li:before{content:"✕";color:#f0a08c;font-weight:700;position:absolute;left:0}.counts .col:only-child{grid-column:1/-1}.intro-art{justify-content:center;display:flex}.howto-row{align-items:center;gap:14px;display:flex}.howto-row canvas{flex:none}.howto-row p{font-size:16px;line-height:1.35}.howto-row p b{color:var(--spot2-lt);font-weight:700}.toast{z-index:30;left:50%;top:calc(var(--safe-top) + 16px);animation:stamp-chip .3s var(--ease-spring) both;border-radius:6px;padding:10px 18px;font-size:16px;font-weight:700;position:fixed;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}@media (height<=700px){.goal{padding:4px 10px 4px 6px}.goal .ring,.goal .ring svg{width:32px;height:32px}.booster{width:62px;height:56px}.hud{gap:8px}}
