:root{--green:#5cc85c;--green-light:#7ee87e;--green-pale:#004000;--green-dark:#002000;--orange:#e8782c;--orange-light:#f89848;--yellow:#f8d020;--red:#e84060;--brown:#a86828;--brown-light:#c88038;--cream:#ffffff0f;--cream-dark:#ffffff1f;--sand:#e8a828;--sand-dark:#b88020;--blue:#3088e8;--blue-light:#58b8f8;--purple:#8848c8;--teal:#30a860;--lava:#e84060;--lava-light:#f88868;--sky:#58b8f8;--sky-light:#3088e8;--leaf:#5cc85c;--rock:#787878;--accent:#f8d020;--accent-light:#ffe848;--text:#f0f0f0;--text-light:#b8b8c0;--text-dim:#808090;--shadow:#00000080;--shadow-strong:#000c;--glow:#ffffff14;--glow-strong:#ffffff26;--glow-orange:#e8782c33;--panel:#0c1018;--panel-light:#141c28;--panel-border:#ffffff1a;--radius:8px;--radius-sm:6px;--radius-blob:12px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{height:100%;overflow:hidden}@supports (height:100dvh){html,body{height:100dvh}}body{color:var(--text);-webkit-user-select:none;user-select:none;touch-action:manipulation;image-rendering:pixelated;background:#080c14;font-family:VT323,monospace}h1,h2,h3,.btn,.game-title,.hub-card-title,.game-score{font-family:"Press Start 2P",cursive}canvas{image-rendering:pixelated;image-rendering:crisp-edges}body:after{content:" ";z-index:999;pointer-events:none;background:linear-gradient(#12101000 50%,#00000005 50%) 0 0/100% 2px;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#app{-webkit-overflow-scrolling:touch;width:100%;height:100%;padding-top:var(--sat);padding-bottom:var(--sab);position:relative;overflow:hidden auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flash{0%,to{opacity:1}50%{opacity:0}}@keyframes wiggle{0%,to{transform:translate(-2px)}50%{transform:translate(2px)}}@keyframes popIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes confettiFall{to{opacity:0;transform:translateY(100vh)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.screen{min-height:100%;padding:20px 20px 40px;animation:.25s ease-out fadeIn;position:relative}.screen.no-atmosphere{padding-bottom:0}.screen.no-atmosphere:before{display:none}.screen:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(#0000 0%,#080c1499 40%,#080c14f2 100%);height:140px;position:fixed;bottom:0;left:0;right:0}.screen:after{display:none}.pixel-border{border:4px solid #fff;border-radius:0;box-shadow:4px 4px #00000080}.btn{cursor:pointer;text-transform:uppercase;letter-spacing:.5px;color:#fff;background:#444;border:3px solid #fff;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-family:inherit;font-size:.75rem;font-weight:400;transition:transform .1s,box-shadow .1s;display:inline-flex;position:relative;box-shadow:4px 4px #00000080}.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #00000080}.btn:active{transform:translate(2px,2px);box-shadow:0 0 #00000080}.btn-primary{background:var(--green);color:#000;border-color:#fff}.btn-orange{background:var(--orange);color:#fff;border-color:#fff}.btn-blue{background:var(--blue);color:#fff;border-color:#fff}.btn-back{color:#fff;background:#333;border:2px solid #fff;padding:6px 14px;font-size:.65rem;box-shadow:3px 3px #00000080}.game-header{z-index:1;border-bottom:1px solid #ffffff1a;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:14px;display:flex;position:relative}.game-title{color:#fff;text-shadow:0 2px 8px #0006;letter-spacing:1px;flex:1;font-size:.9rem}.game-score{color:var(--yellow);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;border:1px solid #ffffff1a;padding:6px 14px;font-size:.7rem}.panel,.hub-card,.site-card,.museum-card,.detail-card,.modal-card{background:var(--panel);border:3px solid #fff;border-radius:0;position:relative;box-shadow:4px 4px #00000080}.hub-hero-banner,.hub-hero-map,.scene-header{border-radius:var(--radius-blob);background:var(--panel);border:1px solid #ffffff14;overflow:hidden;box-shadow:0 4px 30px #0006}.hub-hero-overlay .hub-subtitle{color:#ffffffb3;letter-spacing:3px;text-transform:uppercase;margin-top:8px;font-size:.85rem}.hub-progress-panel{text-align:center;background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-blob);z-index:1;max-width:500px;margin:20px auto;padding:16px 20px;position:relative;box-shadow:0 4px 20px #0000004d}.hub-challenge-tag{border-radius:var(--radius-sm);color:var(--text-light);background:#ffffff0a;border:1px solid #ffffff14;padding:5px 10px;font-size:.6rem}.hub-challenge-categories{z-index:1;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:16px;display:flex;position:relative}.hub-stats{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:24px;display:flex}.hub-stat{background:var(--panel);border-radius:var(--radius-sm);border:1px solid var(--panel-border);color:var(--text-light);padding:8px 14px;font-size:.8rem;box-shadow:0 2px 8px #0003}.hub-stat span{color:var(--yellow)}.hub-grid{z-index:1;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;max-width:800px;margin:0 auto;padding-bottom:30px;display:grid;position:relative}.hub-card{background:var(--panel);border-radius:var(--radius-blob);cursor:pointer;border:1px solid var(--panel-border);text-align:center;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s;position:relative;overflow:hidden;box-shadow:0 4px 16px #00000040}.hub-card:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(at 50% 0,#ffffff08 0%,#0000 60%);position:absolute;top:0;bottom:0;left:0;right:0}.hub-card:hover{border-color:#ffffff26;transform:translateY(-4px);box-shadow:0 8px 28px #00000059}.hub-card:active{transform:scale(.97);box-shadow:0 2px 8px #0000004d}.hub-card-scene{border-bottom:1px solid var(--panel-border);width:100%}.hub-card-scene svg{width:100%;height:auto;display:block}.hub-card-title{letter-spacing:1px;color:var(--text);margin-top:10px;margin-bottom:3px;padding:0 10px;font-size:.7rem;font-weight:800;position:relative}.hub-card-desc{color:var(--text-dim);padding:0 10px 12px;font-size:.8rem;font-weight:600;line-height:1.35;position:relative}.map-container{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius-blob);max-width:850px;margin:0 auto;padding:8px;position:relative;box-shadow:0 4px 30px #0006}.map-svg{width:100%;height:auto}.map-region{cursor:pointer;stroke:#ffffff4d;stroke-width:1px}.map-region:hover{filter:brightness(1.3)}.map-label{fill:#fff;text-anchor:middle;pointer-events:none;font-family:"Press Start 2P",cursive;font-size:10px}.sites-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;max-width:750px;margin:0 auto;display:grid}.site-card{background:var(--panel);cursor:pointer;border:1px solid var(--panel-border);border-radius:var(--radius-blob);align-items:center;gap:14px;padding:16px;transition:transform .15s,box-shadow .15s;display:flex;position:relative}.site-card:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0000004d}.site-card.locked{opacity:.4;filter:grayscale(.5)}.site-card.collected{border-left:4px solid var(--green)}.site-icon{border-radius:var(--radius);background:#ffffff0a;border:1px solid #ffffff14;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.4rem;display:flex}.site-name{color:#fff;font-family:"Press Start 2P",cursive;font-size:.65rem}.site-meta{color:var(--text-light);font-size:.85rem}.museum-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;max-width:750px;margin:0 auto;display:grid}.museum-card{background:var(--panel);text-align:center;cursor:pointer;border:1px solid var(--panel-border);border-radius:var(--radius-blob);padding:12px;transition:transform .15s}.museum-card:hover{transform:translateY(-3px)}.museum-card.undiscovered{opacity:.25}.museum-card-name{color:#fff;font-family:"Press Start 2P",cursive;font-size:.5rem;line-height:1.4}.museum-progress-bar,.dig-progress{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;width:100%;height:20px;position:relative;overflow:hidden}.museum-progress-fill,.dig-progress-bar{background:linear-gradient(90deg, var(--blue), var(--blue-light));border-radius:10px;height:100%;transition:width .3s}.dig-progress-bar{background:linear-gradient(90deg, var(--orange), var(--orange-light))}.detail-card h2{color:var(--green);margin-bottom:16px;font-family:"Press Start 2P",cursive;font-size:.9rem}.detail-tag{color:#fff;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid #ffffff14;padding:4px 12px;font-size:.75rem}.detail-fact{color:var(--text-light);border-radius:var(--radius);background:#ffffff08;border:1px solid #ffffff0f;margin-bottom:24px;padding:16px;font-family:VT323,monospace;font-size:1.2rem;line-height:1.5}.guess-display{background:var(--panel);border:1px solid var(--panel-border);border-radius:var(--radius);justify-content:center;align-items:center;width:280px;height:240px;margin-bottom:24px;display:flex}.guess-btn{background:var(--panel);cursor:pointer;color:#fff;border-radius:var(--radius-sm);border:1px solid #ffffff26;padding:14px 10px;font-family:"Press Start 2P",cursive;font-size:.55rem;transition:transform .1s,border-color .15s}.guess-btn:hover{border-color:#ffffff4d;transform:translateY(-2px)}.guess-btn.correct{border-color:var(--green);color:var(--green)}.guess-btn.wrong{border-color:var(--red);color:var(--red);opacity:.4}.match-card-front{border-radius:var(--radius);background:#ffffff0a;border:1px solid #ffffff1a}.match-card-back{background:var(--panel);border-radius:var(--radius);border:1px solid #ffffff1a}.color-swatch{border-radius:var(--radius-sm);border:2px solid #fff3;width:32px;height:32px}.color-swatch.active{box-shadow:0 0 0 3px var(--panel), 0 0 0 5px #fff6;transform:scale(1.15)}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.confetti{z-index:200;pointer-events:none;animation:linear forwards confettiFall;position:fixed;border-radius:2px!important;width:6px!important;height:6px!important}.site-badge{background:var(--panel);border-radius:var(--radius-sm);border:1px solid #ffffff1a;padding:4px 8px;font-family:"Press Start 2P",cursive;font-size:.5rem}.site-badge.new{color:var(--green);border-color:#5cc85c4d}.site-badge.found{color:var(--orange);border-color:#e8782c4d}.hub-screen{padding:0!important}.hub-screen:before{display:none}.hub-top{background:linear-gradient(#0c1420 0%,#080c14 100%);border-bottom:1px solid #ffffff0f;padding:20px 24px 16px}.hub-top-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.hub-title{color:#ffd93d;letter-spacing:2px;text-shadow:0 2px 8px #ffd93d40;margin:0;font-family:"Press Start 2P",cursive;font-size:1.1rem}.hub-top-btns{gap:8px;display:flex}.hub-btn-explore{color:#fff;cursor:pointer;letter-spacing:.5px;background:linear-gradient(135deg,#5cc85c,#48a848);border:none;border-radius:8px;padding:10px 20px;font-family:"Press Start 2P",cursive;font-size:.55rem;transition:transform .12s;box-shadow:0 3px 12px #5cc85c4d}.hub-btn-explore:hover{transform:translateY(-2px)}.hub-btn-explore:active{transform:translateY(1px)}.hub-btn-multi{color:var(--blue-light);cursor:pointer;background:#3088e826;border:1px solid #3088e84d;border-radius:8px;padding:10px 16px;font-family:"Press Start 2P",cursive;font-size:.55rem;transition:transform .12s,background .15s}.hub-btn-multi:hover{background:#3088e840;transform:translateY(-2px)}.hub-progress{align-items:center;gap:12px;margin-top:12px;display:flex}.hub-prog-bar{background:#ffffff14;border-radius:3px;flex:1;height:5px;overflow:hidden}.hub-prog-fill{background:linear-gradient(90deg, var(--blue), var(--blue-light));border-radius:3px;height:100%;transition:width .4s}.hub-prog-label{color:#ffffff73;white-space:nowrap;font-family:VT323,monospace;font-size:.85rem}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;max-width:700px;margin:24px auto;padding:0 24px;display:grid}.hub-tile{cursor:pointer;-webkit-appearance:none;appearance:none;color:inherit;font:inherit;background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px 8px 12px;transition:transform .1s,background .12s,border-color .12s;display:flex}.hub-tile:hover{border-color:var(--accent,#ffffff26);background:#ffffff0f;transform:translateY(-3px)}.hub-tile:active{transform:translateY(1px)}.hub-tile-icon{filter:drop-shadow(0 2px 6px #0000004d);font-size:1.8rem;line-height:1}.hub-tile-name{color:var(--accent,#fff);letter-spacing:.5px;text-align:center;font-family:"Press Start 2P",cursive;font-size:.45rem;line-height:1.3}.hub-focused{outline-offset:2px;outline:2px solid #ffd93d}@media (max-width:480px){.hub-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:0 12px}.hub-title{font-size:.85rem}.hub-btn-explore{padding:8px 14px;font-size:.45rem}.hub-btn-multi{padding:8px 12px;font-size:.45rem}.game-title{font-size:.75rem}.guess-btn{font-size:.45rem}}.shape-stage{z-index:1;max-width:720px;margin:0 auto;position:relative}.shape-banner{text-align:center;background:linear-gradient(#ffffff1a,#ffffff08);border:2px solid #ffffff1f;border-radius:16px;flex-direction:column;align-items:center;gap:3px;margin-bottom:12px;padding:10px 18px;display:flex}.shape-banner-title{color:var(--yellow);letter-spacing:1px;font-family:"Press Start 2P",cursive;font-size:.72rem}.shape-banner-sub{color:var(--text-light);font-size:1.05rem;font-weight:700}.shape-progress{background:#ffffff14;border:1px solid #ffffff14;border-radius:6px;height:10px;margin-bottom:12px;overflow:hidden}.shape-progress-fill{background:linear-gradient(90deg,#ff9f43,#ffd93d,#6bcb77);border-radius:6px;height:100%;transition:width .3s}.shape-board{grid-template-columns:repeat(var(--shape-cols,4), 1fr);background:radial-gradient(circle at 18% 8%,#ffffff59,#0000 42%),linear-gradient(160deg,#f3dfb8 0%,#e4c795 60%,#d8b77e 100%);border:5px solid #b88020;border-radius:24px;gap:clamp(8px,2vw,16px);margin-bottom:16px;padding:clamp(10px,2.5vw,20px);display:grid;box-shadow:0 7px #00000059,inset 0 2px #ffffffa6,inset 0 -4px #78501440}.shape-slot{aspect-ratio:1;cursor:pointer;-webkit-appearance:none;appearance:none;touch-action:manipulation;background:#ffffff47;border:2px solid #78501e29;border-radius:18px;justify-content:center;align-items:center;padding:0;transition:transform .12s,background .15s,box-shadow .15s;display:flex;position:relative;box-shadow:inset 0 4px #7850141f}.shape-slot:not(.filled):hover{background:#ffffff7a;transform:translateY(-2px)}.shape-slot.filled,.shape-slot.filled:disabled{opacity:1;cursor:default;background:#ffffff8c;box-shadow:inset 0 0 0 3px #6bcb7773,inset 0 4px #78501414}.shape-slot.just-placed .shape-slot-svg{animation:.4s cubic-bezier(.2,1.7,.5,1) shapePop}.shape-slot.hint{animation:1.2s ease-in-out infinite shapeSlotGlow}.shape-slot.drop-target{background:#ffffffc7;transform:scale(1.04);box-shadow:inset 0 0 0 4px #ffd93dcc,0 0 18px #ffd93d80}.shape-slot.wrong,.shape-slot.nudge{animation:.4s shapeShake}.shape-slot-svg{pointer-events:none;width:78%;height:78%;display:block}.shape-tray-wrap{margin-bottom:10px}.shape-tray{background:#ffffff0d;border:3px dashed #ffffff29;border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(8px,2vw,14px);min-height:104px;padding:12px 16px;display:flex}.shape-tray-empty{color:var(--green);font-family:"Press Start 2P",cursive;font-size:.62rem}.shape-piece{cursor:grab;touch-action:none;-webkit-appearance:none;appearance:none;filter:drop-shadow(0 5px #00000047);background:0 0;border:0;border-radius:18px;width:clamp(64px,13vw,90px);height:clamp(64px,13vw,90px);padding:0;transition:transform .12s,filter .12s}.shape-piece:hover{filter:drop-shadow(0 8px #00000038);transform:translateY(-4px)scale(1.05)}.shape-piece:active{cursor:grabbing;transform:scale(.95)}.shape-piece.selected{filter:drop-shadow(0 0 .6rem #ffd93dd9)drop-shadow(0 5px #00000047)}.shape-piece.selected .shape-piece-svg,.shape-piece.hint .shape-piece-svg{animation:.95s ease-in-out infinite shapeBob}.shape-piece.dragging{opacity:.25}.shape-piece-svg{pointer-events:none;width:100%;height:100%;display:block}.shape-drag-ghost{pointer-events:none;z-index:500;filter:drop-shadow(0 14px 10px #00000059);width:clamp(74px,15vw,104px);height:clamp(74px,15vw,104px);position:fixed;top:0;left:0;transform:translate(-50%,-50%)scale(1.08)rotate(-4deg)}.shape-drag-ghost .shape-piece-svg{width:100%;height:100%;display:block}.shape-tip{text-align:center;min-height:1.4em;color:var(--text-dim);font-size:1.05rem;font-weight:700}.shape-complete-bar{background:#6bcb771a;border:3px solid #6bcb7759;border-radius:20px;flex-direction:column;align-items:center;gap:10px;margin-bottom:10px;padding:18px;animation:.3s ease-out popIn;display:flex}.shape-complete-emoji{font-size:2.2rem;line-height:1}.shape-complete-text{color:var(--green);letter-spacing:1px;font-family:"Press Start 2P",cursive;font-size:.65rem}@keyframes shapePop{0%{opacity:.4;transform:scale(.35)}70%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@keyframes shapeShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)rotate(-2deg)}40%{transform:translate(6px)rotate(2deg)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes shapeSlotGlow{0%,to{background:#ffffff4d;box-shadow:inset 0 0 0 2px #ffd93d00,inset 0 4px #7850141f}50%{background:#ffffffad;box-shadow:inset 0 0 0 4px #ffd93dd9,inset 0 4px #7850141f}}@keyframes shapeBob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (max-width:480px){.shape-board{border-width:4px;border-radius:18px}.shape-slot{border-radius:12px}.shape-banner-title{font-size:.6rem}.shape-banner-sub,.shape-tip{font-size:.95rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body:after{display:none!important}}:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}:focus:not(:focus-visible){outline:none}.sr-skip{z-index:1000;background:var(--yellow);color:#000;border:3px solid #fff;padding:8px 16px;font-family:"Press Start 2P",cursive;font-size:.7rem;position:absolute;top:0;left:-9999px}.sr-skip:focus{top:8px;left:8px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kid-screen{--kid-cream:#fff7e6;--kid-ink:#3a2410;width:100%;max-width:1100px;height:100%;min-height:0;max-height:100%;padding:max(clamp(8px, 1.6vmin, 20px), env(safe-area-inset-top,0px)) max(clamp(8px, 1.8vmin, 24px), env(safe-area-inset-right,0px)) max(clamp(8px, 1.6vmin, 20px), env(safe-area-inset-bottom,0px)) max(clamp(8px, 1.8vmin, 24px), env(safe-area-inset-left,0px));z-index:2;flex-direction:column;gap:clamp(6px,1.4vmin,14px);margin:0 auto;animation:.25s ease-out fadeIn;display:flex;position:relative;overflow:hidden}.kid-screen:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 18% 0,#ffd93d1f,#0000 46%),radial-gradient(circle at 88% 100%,#4d96ff24,#0000 46%);position:absolute;top:0;bottom:0;left:0;right:0}.kid-top{flex:none;align-items:center;gap:clamp(8px,1.5vmin,14px);min-width:0;display:flex}.kid-back{color:#fff;cursor:pointer;background:#333;border:3px solid #fff;border-radius:clamp(12px,2.2vmin,18px);flex:none;justify-content:center;align-items:center;width:clamp(42px,7vmin,58px);height:clamp(42px,7vmin,58px);padding:0;font-family:"Press Start 2P",cursive;font-size:clamp(.6rem,1.8vmin,.9rem);transition:transform .1s,box-shadow .1s;display:flex;box-shadow:0 4px #00000073}.kid-back:hover{transform:translateY(-2px);box-shadow:0 6px #0006}.kid-back:active{transform:translateY(2px);box-shadow:0 1px #0006}.kid-heading{flex:auto;align-items:center;gap:clamp(6px,1.2vmin,10px);min-width:0;display:flex}.kid-emoji{font-size:clamp(1.1rem,3.4vmin,1.9rem);line-height:1}.kid-title{letter-spacing:.5px;color:var(--yellow);white-space:nowrap;text-overflow:ellipsis;font-family:"Press Start 2P",cursive;font-size:clamp(.52rem,1.7vmin,.95rem);overflow:hidden}.kid-level{color:#fff;white-space:nowrap;background:#ffffff12;border:1px solid #ffffff29;border-radius:10px;flex:none;padding:clamp(5px,1.1vmin,9px) clamp(8px,1.8vmin,14px);font-family:"Press Start 2P",cursive;font-size:clamp(.42rem,1.3vmin,.68rem)}.kid-main{flex-direction:column;flex:auto;gap:clamp(6px,1.4vmin,14px);min-height:0;display:flex}.kid-prompt{color:#fff;width:100%;font:inherit;cursor:pointer;background:linear-gradient(#ffffff21,#ffffff0a);border:2px solid #ffffff29;border-radius:clamp(14px,2.6vmin,22px);flex:none;justify-content:center;align-items:center;gap:clamp(6px,1.2vmin,12px);padding:clamp(8px,1.6vmin,15px) clamp(12px,2.4vmin,26px);transition:background .15s,transform .1s;display:flex;box-shadow:0 4px #0000003d}.kid-prompt:hover{background:linear-gradient(#ffffff2e,#ffffff0f)}.kid-prompt:active{transform:translateY(2px)}.kid-prompt-text{text-align:center;font-size:clamp(1rem,2.7vmin,1.65rem);font-weight:700;line-height:1.18}.kid-prompt-letter{color:var(--yellow);vertical-align:-.08em;margin:0 .12em;font-family:VT323,monospace;font-size:1.55em;line-height:.9;display:inline-block}.kid-speaker{opacity:.85;font-size:clamp(1rem,2.4vmin,1.5rem)}.kid-stage{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.kid-count-board{background:radial-gradient(circle at 28% 8%,#ffffff61,#0000 54%),radial-gradient(#78501417 1.6px,#0000 2.1px) 0 0/26px 26px,linear-gradient(160deg,#f3dfb8 0%,#e4c795 60%,#d8b77e 100%);border:5px solid #b88020;border-radius:clamp(16px,3vmin,28px);justify-content:center;align-items:center;width:100%;height:100%;min-height:0;max-height:100%;padding:clamp(8px,2vmin,22px);display:flex;overflow:hidden;box-shadow:0 7px #00000059,inset 0 2px #ffffffa6,inset 0 -4px #78501438}.kid-egg-grid{grid-template-columns:repeat(var(--egg-cols,5), var(--egg-size,clamp(34px, 8.5vmin, 72px)));place-content:center;justify-items:center;gap:clamp(4px,1.2vmin,12px);width:100%;max-height:100%;display:grid}.kid-egg{filter:drop-shadow(0 3px #5a361038);width:100%;height:auto;display:block}.kid-bundle-grid{flex-direction:column;justify-content:center;align-items:center;gap:clamp(8px,2vmin,18px);width:100%;max-height:100%;display:flex}.kid-bundle-row,.kid-loose-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(4px,1vmin,10px);width:100%;display:flex}.kid-bundle{filter:drop-shadow(0 3px #5a361038);width:clamp(44px,8vmin,64px);height:auto;display:block}.kid-egg-loose{width:clamp(30px,6.5vmin,58px);max-width:none;max-height:none}.kid-play-panel{background:radial-gradient(circle at 28% 8%,#ffffff61,#0000 54%),radial-gradient(#78501417 1.6px,#0000 2.1px) 0 0/26px 26px,linear-gradient(160deg,#f3dfb8 0%,#e4c795 60%,#d8b77e 100%);border:5px solid #b88020;border-radius:clamp(18px,3.4vmin,32px);justify-content:center;align-items:center;width:100%;height:100%;min-height:0;max-height:100%;padding:clamp(10px,2.6vmin,28px);display:flex;overflow:hidden;box-shadow:0 7px #00000059,inset 0 2px #ffffffa6,inset 0 -4px #78501438}.kid-number-panel{flex-direction:column;gap:clamp(12px,3vmin,26px)}.kid-letter-panel{flex-direction:column;gap:clamp(10px,2.4vmin,20px)}.kid-number-board{flex-direction:column;justify-content:center;align-items:center;gap:clamp(10px,2.4vmin,22px);width:100%;display:flex}.kid-number-line{justify-content:center;gap:clamp(4px,1.4vmin,14px);width:100%;display:flex}.kid-number-tile{aspect-ratio:1;width:clamp(52px,14.5vmin,126px);color:var(--kid-ink);background:var(--kid-cream);font-variant-numeric:tabular-nums;letter-spacing:-.04em;border:4px solid #b88020;border-radius:clamp(12px,2.4vmin,22px);justify-content:center;align-items:center;padding:0;font-family:VT323,monospace;font-size:clamp(1.5rem,6vmin,3.6rem);line-height:1;display:flex;box-shadow:0 6px #00000047,inset 0 2px #fff}.kid-number-tile.missing{color:#8a5720;background:#f7e9c9;border-style:dashed;box-shadow:inset 0 0 0 2px #b8802024}.kid-number-tile.missing.revealed{color:#2e7d32;background:#e7f8e7;border-style:solid;border-color:#4caf50;animation:.45s cubic-bezier(.2,1.7,.5,1) kidPop}.kid-number-caption{text-align:center;color:#7a4e1a;min-height:1.2em;font-size:clamp(.95rem,2.6vmin,1.45rem);font-weight:700}.kid-number-caption strong{color:#c1356f}.kid-letter-focus{justify-content:center;align-items:center;display:flex}.kid-letter-focus-char{aspect-ratio:1;color:#c1356f;background:radial-gradient(circle at 30% 18%,#fff 0%,#fff7e6 58%,#ffe3f0 100%);border:6px solid #ff6fb5;border-radius:clamp(24px,5vmin,48px);justify-content:center;align-items:center;width:clamp(130px,29vmin,280px);font-family:VT323,monospace;font-size:clamp(4.4rem,22vmin,13rem);line-height:1;display:flex;box-shadow:0 10px #0000004d,inset 0 4px #fff}.kid-letter-line{justify-content:center;gap:clamp(4px,1.4vmin,14px);width:100%;display:flex}.kid-letter-tile{aspect-ratio:1;width:clamp(62px,17vmin,148px);color:var(--kid-ink);background:var(--kid-cream);border:4px solid #ff6fb5;border-radius:clamp(12px,2.4vmin,22px);justify-content:center;align-items:center;font-family:VT323,monospace;font-size:clamp(2.4rem,10.5vmin,5.8rem);line-height:1;display:flex;box-shadow:0 6px #00000047,inset 0 2px #fff}.kid-letter-tile.missing{color:#c1356f;background:#fbe3ef;border-style:dashed;box-shadow:inset 0 0 0 2px #ff6fb529}.kid-letter-tile.missing.revealed{color:#2e7d32;background:#e7f8e7;border-style:solid;border-color:#4caf50;animation:.45s cubic-bezier(.2,1.7,.5,1) kidPop}.kid-choices{grid-template-columns:repeat(var(--choices,3), minmax(0, 1fr));flex:none;gap:clamp(8px,1.8vmin,18px);width:100%;max-width:900px;margin:0 auto;display:grid}.kid-choice{min-height:clamp(64px,13vh,132px);color:var(--kid-ink);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;appearance:none;background:linear-gradient(#fffdf5 0%,#ffe9b8 100%);border:4px solid #fff;border-radius:clamp(14px,2.6vmin,24px);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:clamp(4px,1vmin,10px);transition:transform .1s,box-shadow .1s,border-color .12s,background .15s;display:flex;position:relative;box-shadow:0 6px #00000052,inset 0 2px #fff}.kid-choice:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 9px #0000004d,inset 0 2px #fff}.kid-choice:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #00000059,inset 0 2px #fff}.kid-choice:disabled{cursor:default;opacity:.88}.kid-choice-main{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-family:VT323,monospace;font-size:clamp(2rem,7vmin,4.2rem);line-height:1}.kid-choice-sub{color:#8a5720;font-family:VT323,monospace;font-size:clamp(.78rem,2.1vmin,1.2rem);line-height:1}.kid-letter-choice .kid-choice-main{font-size:clamp(2.4rem,9.6vmin,5.4rem)}.kid-choice.correct,.kid-choice.correct:disabled{opacity:1;background:linear-gradient(#e9ffe9 0%,#b8f0b8 100%);border-color:#4caf50;animation:.42s cubic-bezier(.2,1.7,.5,1) kidPop}.kid-choice.wrong{border-color:#e84060;animation:.4s kidShake}.kid-choice.hint{animation:1.25s ease-in-out infinite kidGlow}.kid-foot{flex:none;justify-content:center;align-items:center;min-height:clamp(16px,3vmin,28px);display:flex}.kid-progress{align-items:center;gap:clamp(4px,.9vmin,8px);display:flex}.kid-dot{aspect-ratio:1;background:#ffffff29;border:1px solid #ffffff24;border-radius:50%;width:clamp(7px,1.5vmin,12px)}.kid-dot.done{background:var(--green);border-color:var(--green)}.kid-dot.active{background:var(--yellow);border-color:#fff;transform:scale(1.35);box-shadow:0 0 10px #ffd93d99}.kid-modal{text-align:center;max-width:430px;padding:clamp(16px,3vmin,28px)}.kid-modal-emoji{margin-bottom:8px;font-size:clamp(2.4rem,6vmin,3.4rem);line-height:1}.kid-modal-title{color:var(--green);margin-bottom:10px;font-family:"Press Start 2P",cursive;font-size:clamp(.8rem,2.4vmin,1.1rem)}.kid-modal-stars{letter-spacing:.2em;margin-bottom:10px;font-size:clamp(1.8rem,5vmin,2.6rem)}.kid-modal-text{color:var(--text-light);margin-bottom:16px;font-size:clamp(1rem,2.6vmin,1.25rem);font-weight:700;line-height:1.35}.kid-modal-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.kid-stars{letter-spacing:.15em}@media (max-height:520px){.kid-screen{gap:4px;padding-top:6px;padding-bottom:6px}.kid-main{gap:5px}.kid-top{gap:8px}.kid-back{width:38px;height:38px;font-size:.5rem}.kid-title{font-size:.5rem}.kid-prompt{padding:5px 12px}.kid-prompt-text{font-size:.95rem}.kid-choice{border-width:3px;min-height:54px}.kid-choice-main{font-size:1.9rem}.kid-letter-choice .kid-choice-main{font-size:2.2rem}.kid-egg{width:100%}.kid-egg-grid{--egg-size:30px}.kid-bundle{width:44px}.kid-egg-loose{width:24px}.kid-number-tile{width:clamp(44px,10.5vmin,74px)}.kid-letter-tile{width:clamp(46px,11vmin,76px)}.kid-letter-focus-char{width:clamp(86px,20vmin,150px);font-size:clamp(3rem,13vmin,6rem)}.kid-foot{min-height:12px}}@keyframes kidPop{0%{opacity:.5;transform:scale(.55)}70%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@keyframes kidShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)rotate(-1.5deg)}40%{transform:translate(6px)rotate(1.5deg)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes kidGlow{0%,to{box-shadow:0 6px #00000052,inset 0 2px #fff}50%{box-shadow:0 0 0 4px #ffd93dd9,0 6px #00000052,inset 0 2px #fff}}
