:root{color:#20232c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--panel:#fffdf4;--ink:#20232c;--line:#20232c;--sky:#c7efff;--mint:#d7f8cf;--coral:#ff8da1;--button:#fff;--shadow:0 18px 50px #20232c29;--pop-shadow:2px 2px 0 #20232c;background:#fff7d6;font-family:Inter,ui-rounded,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{overscroll-behavior:none;-webkit-text-size-adjust:100%}body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-width:320px;min-height:100dvh;margin:0;overflow:auto}button{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}img,svg{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.app-shell{background:radial-gradient(circle at 12% 12%,#ffd93d8c 0 9%,#0000 10%),radial-gradient(circle at 87% 18%,#ff5d8f47 0 8%,#0000 9%),radial-gradient(circle at 78% 88%,#7bd88f59 0 10%,#0000 11%),linear-gradient(#c7effff5,#fff7d6eb),repeating-linear-gradient(-12deg,#ffffff40 0 16px,#0000 18px 42px);height:100dvh;padding:14px;overflow:hidden}.studio{flex-direction:column;gap:10px;width:min(1680px,100%);height:100%;margin:0 auto;display:flex}.access-shell{place-items:center;display:grid}.access-panel{border:5px solid var(--line);background:linear-gradient(135deg, #fffffff0, #fff3baf5), var(--panel);width:min(520px,100%);box-shadow:8px 8px 0 var(--line);border-radius:8px;padding:28px}.access-panel h1{margin-bottom:12px}.access-copy{color:#39433f;max-width:36rem;margin:0 0 18px;font-size:1.05rem;font-weight:800;line-height:1.35}.access-form{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.access-form input,.access-form button,.demo-codes button,.access-secondary{border:4px solid var(--line);min-height:54px;box-shadow:var(--pop-shadow);font:inherit;border-radius:8px;font-weight:900}.access-form input{min-width:0;color:var(--ink);text-transform:uppercase;background:#fff;padding:0 14px}.access-form button,.demo-codes button,.access-secondary{background:var(--mint);cursor:pointer;padding:0 18px}.access-error{color:#8c1d3d;margin:12px 0 0;font-weight:900}.demo-codes{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.demo-codes button{background:#fffdf4;min-height:44px;font-size:.9rem}.pass-meter{border:4px solid var(--line);width:fit-content;min-width:150px;min-height:86px;box-shadow:var(--pop-shadow);background:#eafff0;border-radius:8px;grid-template-columns:repeat(3,auto);place-content:center;gap:8px;margin:20px 0;font-size:2rem;font-weight:900;display:grid}.access-secondary{background:#c7efff}.topbar{justify-content:space-between;align-items:center;gap:12px;min-height:62px;display:flex}.eyebrow{color:#48635c;margin:0 0 4px;font-size:.95rem;font-weight:800}h1{letter-spacing:0;margin:0;font-size:clamp(1.8rem,2.7vw,3rem);line-height:1}h2{letter-spacing:0;margin:0 0 12px;font-size:1.45rem;line-height:1.05}.landing-shell{min-height:100dvh;color:var(--ink);background:linear-gradient(140deg,#c7effff2,#fff7d6e6),repeating-linear-gradient(-12deg,#ffffff52 0 18px,#0000 19px 46px)}.landing-hero,.how-it-works,.landing-band,.landing-footer{width:min(1180px,100% - 28px);margin:0 auto}.landing-hero{grid-template-rows:auto minmax(0,1fr);gap:28px;min-height:72vh;padding:18px 0 24px;display:grid}.landing-nav{border-bottom:4px solid #20232c2e;justify-content:space-between;align-items:center;gap:16px;min-height:52px;display:flex}.landing-nav strong{font-size:1.12rem}.landing-nav span{color:#48635c;font-weight:900}.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);align-items:center;gap:34px;display:grid}.hero-copy h1{max-width:680px;font-size:clamp(2.35rem,5vw,5.3rem);line-height:.95}.hero-copy>p:not(.eyebrow):not(.payment-note){color:#39433f;max-width:560px;margin:18px 0 0;font-size:1.22rem;font-weight:850;line-height:1.35}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero-actions button,.offer-panel button,.access-form button{border:4px solid var(--line);min-height:58px;box-shadow:5px 5px 0 var(--line);cursor:pointer;color:var(--ink);font:inherit;background:#7bd88f;border-radius:8px;padding:0 20px;font-weight:950}.offer-panel button{background:#42c2ff}.payment-note{border:3px solid var(--line);background:#fffdf4;border-radius:8px;width:fit-content;max-width:560px;margin:14px 0 0;padding:10px 12px;font-weight:900}.demo-video{border:5px solid var(--line);box-shadow:10px 10px 0 var(--line);background:#fffdf4;border-radius:8px;overflow:hidden}.video-frame{aspect-ratio:16/10;background:linear-gradient(#c7efff 0 56%,#d7f8cf 57% 100%);place-items:center;display:grid;position:relative}.video-frame svg{width:min(74%,520px);animation:3.6s ease-in-out infinite lesson-pop}.play-dot{border:4px solid var(--line);width:46px;height:46px;box-shadow:var(--pop-shadow);background:#ff5d8f;border-radius:999px;position:absolute;top:18px;left:18px}.play-dot:after{content:"";border-top:9px solid #0000;border-bottom:9px solid #0000;border-left:14px solid #fff;position:absolute;top:10px;left:15px}.lesson-caption{border:4px solid var(--line);max-width:min(340px,100% - 36px);box-shadow:var(--pop-shadow);background:#fff;border-radius:8px;padding:10px 12px;font-weight:950;position:absolute;bottom:18px;right:18px}.landing-band{grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:18px;padding:0 0 24px;display:grid}.how-it-works{padding:0 0 24px}.how-it-works h2,.section-heading h2{margin:0 0 12px;font-size:clamp(1.5rem,3vw,2.3rem)}.section-heading{margin-bottom:14px}.how-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.how-steps article{border:5px solid var(--line);box-shadow:6px 6px 0 var(--line);background:#fff;border-radius:8px;padding:18px}.how-steps strong{border:4px solid var(--line);background:#ffd93d;border-radius:999px;place-items:center;width:38px;height:38px;font-size:1.1rem;display:grid}.how-steps h3{margin:12px 0 8px;font-size:1.18rem}.how-steps p{color:#39433f;margin:0;font-weight:850;line-height:1.4}.sample-pass-preview{border:4px solid var(--line);min-height:48px;box-shadow:var(--pop-shadow);color:var(--ink);cursor:pointer;font:inherit;background:#ffd93d;border-radius:8px;margin-top:14px;padding:0 16px;font-weight:950}.schools-offered{padding:0 0 24px}.school-offer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.school-offer-card{border:5px solid var(--line);min-height:236px;box-shadow:6px 6px 0 var(--line);background:#fff;border-radius:8px;flex-direction:column;gap:8px;padding:18px;display:flex}.school-offer-card[data-school=coloring]{background:#fff1b8}.school-offer-card[data-school=habitat]{background:#d7f8cf}.school-offer-card[data-school=clock]{background:#c7efff}.school-offer-card[data-school=sorter]{background:#f4d7ff}.school-offer-icon{border:4px solid var(--line);width:52px;height:52px;box-shadow:var(--pop-shadow);background:#fff;border-radius:999px;place-items:center;display:grid}.school-offer-icon svg{stroke-width:3px;width:28px;height:28px}.school-offer-card>span:not(.school-offer-icon){color:#39433f;text-transform:uppercase;font-size:.78rem;font-weight:950}.school-offer-card h3{margin:0;font-size:1.12rem;line-height:1.1}.school-offer-card p{color:#39433f;margin:0;font-weight:850;line-height:1.35}.compact-panel{width:100%}.compact-panel .access-form{grid-template-columns:1fr}.compact-panel .access-form button{width:100%}.offer-panel,.legal-page{border:5px solid var(--line);box-shadow:8px 8px 0 var(--line);background:#fffdf4;border-radius:8px;padding:28px}.offer-panel p,.legal-page p{color:#39433f;margin:0 0 16px;font-size:1.02rem;font-weight:800;line-height:1.45}.package-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 14px;display:grid}.package-options.single-package{grid-template-columns:1fr}.offer-panel .package-option{border:4px solid var(--line);min-height:92px;box-shadow:4px 4px 0 var(--line);background:#fff;border-radius:8px;place-items:center;gap:2px;padding:8px;display:grid}.offer-panel .package-option[aria-pressed=true],.offer-panel .package-option[aria-current=true]{box-shadow:2px 2px 0 var(--line);background:#bff7d2}.package-option span{color:#39433f;font-size:.78rem;font-weight:950}.package-option strong{font-size:1.55rem;line-height:1}.package-option em{color:#39433f;font-size:.9rem;font-style:normal;font-weight:950}.package-option small{color:#39433f;font-size:.78rem;font-weight:950}.buy-school-list{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.buy-school-list li{color:#39433f;background:#fff;border:3px solid #20232c3d;border-radius:8px;align-items:center;min-height:38px;padding:6px 10px;font-size:.92rem;font-weight:950;display:flex}.buy-school-list li:before{content:"";border:3px solid var(--line);background:#7bd88f;border-radius:999px;flex:none;width:11px;height:11px;margin-right:8px}.checkout-row{align-items:end;gap:12px;margin:18px 0;display:flex}.currency-select{flex:180px;gap:6px;display:grid}.currency-select span{color:#39433f;font-size:.82rem;font-weight:950}.currency-select select{border:4px solid var(--line);width:100%;min-height:58px;box-shadow:4px 4px 0 var(--line);color:var(--ink);cursor:pointer;font:inherit;background:#fff;border-radius:8px;padding:0 12px;font-size:.96rem;font-weight:950}.checkout-row>button{flex:none}.offer-panel .payment-note{margin-top:14px}.scan-pass-button{border:4px solid var(--line);min-height:48px;box-shadow:var(--pop-shadow);cursor:pointer;color:var(--ink);font:inherit;background:#c7efff;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:0 16px;font-weight:950;display:inline-flex}.compact-panel .scan-pass-button{justify-content:center;align-items:center;width:100%;min-height:52px;margin-top:12px;display:flex}.scan-pass-button svg{stroke-width:3px;width:22px;height:22px}.qr-scanner{border:4px solid var(--line);box-shadow:var(--pop-shadow);background:#fff;border-radius:8px;margin-top:14px;padding:12px}.qr-scanner video{aspect-ratio:4/3;border:3px solid var(--line);object-fit:cover;background:#20232c;border-radius:8px;width:100%;display:block}.qr-scanner p{color:#39433f;margin:10px 0;font-weight:900}.landing-footer{flex-wrap:wrap;justify-content:center;gap:18px;padding:0 0 26px;display:flex}.text-link{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;font-weight:900;text-decoration:underline}.legal-shell{place-items:start center;min-height:100dvh;padding:28px 14px;display:grid;overflow:auto}.legal-page{width:min(820px,100%)}.legal-page h1{margin:12px 0 18px}.legal-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.pass-modal-backdrop{z-index:20;background:#0a0c16b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.pass-save-modal{border:5px solid var(--line);background:linear-gradient(135deg, #fff, #fff3ba), var(--panel);width:min(520px,100%);max-height:calc(100dvh - 36px);color:var(--ink);border-radius:8px;padding:24px;position:relative;overflow-y:auto;box-shadow:10px 10px #0000006b}.pass-save-modal h2{margin-bottom:12px;font-size:clamp(1.7rem,4vw,2.6rem)}.pass-save-modal p{color:#39433f;margin:0 0 14px;font-weight:900;line-height:1.35}.modal-close{border:3px solid var(--line);width:42px;height:42px;box-shadow:var(--pop-shadow);cursor:pointer;background:#fff;border-radius:8px;place-items:center;display:grid;position:absolute;top:12px;right:12px}.modal-close svg{stroke-width:3px;width:24px;height:24px}.pass-qr{border:4px solid var(--line);background:#fffdf4;border-radius:8px;width:min(260px,100%);margin:14px auto;display:block}.pass-code-box,.pass-link-box{border:3px solid var(--line);box-shadow:var(--pop-shadow);background:#fff;border-radius:8px}.pass-code-box{gap:2px;margin-top:12px;padding:10px 12px;display:grid}.pass-code-box span{color:#48635c;text-transform:uppercase;font-size:.76rem;font-weight:950}.pass-code-box strong{overflow-wrap:anywhere;letter-spacing:0;font-size:1.45rem}.pass-link-box{overflow-wrap:anywhere;color:#39433f;margin-top:10px;padding:10px 12px;font-size:.9rem;font-weight:850}.sample-pass-card{border:4px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin:14px 0;padding:14px;display:grid}.sample-pass-card span{color:#39433f;font-size:.78rem;font-weight:950}.sample-pass-card strong{overflow-wrap:anywhere;margin:3px 0 6px;font-size:1.32rem;display:block}.sample-pass-card p{margin:0;font-size:.92rem}.sample-qr{border:4px solid var(--line);background:#fffdf4;border-radius:8px;grid-template-columns:repeat(7,1fr);gap:3px;width:108px;height:108px;padding:8px;display:grid}.sample-qr span{background:#20232c;border-radius:2px}.sample-qr span[data-on=no]{background:0 0}.modal-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.modal-actions button{border:4px solid var(--line);min-height:48px;box-shadow:var(--pop-shadow);cursor:pointer;color:var(--ink);font:inherit;background:#7bd88f;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:950;display:inline-flex}.modal-actions svg{stroke-width:3px;width:22px;height:22px}.feedback-modal{width:min(560px,100%)}.feedback-field{gap:8px;display:grid}.feedback-field span,.feedback-meta,.feedback-note{color:#39433f;font-weight:900}.feedback-field textarea{resize:vertical;border:4px solid var(--line);width:100%;min-height:150px;box-shadow:var(--pop-shadow);color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:12px;font-weight:800;line-height:1.35}.feedback-meta{justify-content:flex-end;margin-top:8px;font-size:.82rem;display:flex}.feedback-note{margin-top:12px}.feedback-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.mode-pill{border:4px solid var(--line);background:var(--mint);min-width:84px;min-height:54px;box-shadow:5px 5px 0 var(--line);border-radius:8px;place-items:center;font-size:1.25rem;font-weight:900;animation:2.4s ease-in-out infinite gentle-bob;display:grid}.mode-pill[data-mode=pen]{background:#ffd6e0}.pass-status{border:4px solid var(--line);min-width:150px;min-height:54px;box-shadow:var(--pop-shadow);background:#fff;border-radius:8px;align-content:center;gap:2px;padding:6px 12px;display:grid}.hud-feedback-button{color:#20232c;min-height:54px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#ffd93d;border:4px solid #fffdf4;border-radius:8px;padding:0 12px;font-size:.88rem;font-weight:950}.pass-status span,.pass-status strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pass-status span{color:#48635c;font-size:.76rem;font-weight:900}.pass-status strong{font-size:1.04rem;line-height:1}.workbench{flex:1;grid-template-columns:160px minmax(0,1fr) 250px;align-items:stretch;gap:16px;min-height:0;display:grid;overflow:hidden}.coach-bubble{border:4px solid var(--line);min-height:46px;box-shadow:var(--pop-shadow);background:linear-gradient(90deg,#fff,#fff3ba);border-radius:8px;align-items:center;gap:10px;padding:8px 14px;display:flex;position:relative;overflow:hidden}.coach-bubble p{margin:0;font-size:clamp(.94rem,1.4vw,1.2rem);font-weight:900;line-height:1.05}.sparkles{color:#fff;letter-spacing:1px;background:#ff5d8f;border-radius:999px;flex:0 0 42px;place-items:center;height:30px;font-weight:900;animation:.52s ease-out sparkle-pop;display:grid}.page-picker,.controls{flex-direction:column;gap:10px;min-height:0;display:flex}.controls{scrollbar-color:#42c2ff transparent;scrollbar-width:thin;padding:4px 6px 6px 4px;overflow:hidden auto}.page-picker{scrollbar-color:#42c2ff transparent;scrollbar-width:thin;padding:3px 8px 3px 3px;overflow:hidden auto}.page-tile,.tool-button,.brush-button,.color-swatch{border:3px solid var(--line);background:var(--button);box-shadow:var(--pop-shadow);cursor:pointer;touch-action:manipulation;border-radius:8px;transition:transform .12s,box-shadow .12s,background .12s}.page-tile:active,.tool-button:active,.brush-button:active,.color-swatch:active{box-shadow:1px 1px 0 var(--line);transform:translate(3px,3px)}.page-tile[data-active=true],.tool-button[data-active=true],.brush-button[data-active=true],.color-swatch[data-active=true]{box-shadow:inset 0 0 0 4px #42c2ff, var(--pop-shadow);outline:0}.color-swatch[data-active=true]{border-color:#20232c;transform:translateY(-2px);box-shadow:0 0 0 3px #fffdf4,0 0 0 8px #ffd93d,0 0 0 12px #20232c,0 6px #00000057}.page-tile[data-active=true]{background:#eafff0}.page-tile[data-complete=true]{background:#e9f7ff}.page-tile[data-locked=true]{background:#f4f0e8;position:relative}.page-tile{background:#fffaf0;grid-template-rows:minmax(0,1fr) auto;gap:4px;width:100%;min-height:112px;padding:8px 8px 9px;display:grid;position:relative}.page-tile[data-locked=true] svg{opacity:.36}.lock-icon{border:3px solid var(--line);width:28px;height:28px;box-shadow:var(--pop-shadow);stroke-width:3px;background:#fff;border-radius:8px;padding:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.page-tile[data-lock-hover=true] .lock-icon{opacity:0;transition:opacity .13s,transform .13s;transform:translate(-50%,-56%)scale(.92)}.page-tile[data-lock-hover=true]:hover .lock-icon,.page-tile[data-lock-hover=true]:focus-visible .lock-icon{opacity:1;transform:translate(-50%,-50%)scale(1)}.page-tile svg{width:100%;height:72px;display:block}.page-tile span{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:900;line-height:1.05;display:block;overflow:hidden}.canvas-wrap{aspect-ratio:4/3;width:min(100%,133.3vh - 226.61px);min-height:0;box-shadow:var(--shadow);background:0 0;border:0;border-radius:8px;place-self:center;place-items:center;padding:0;display:grid;overflow:hidden}.coloring-svg{border:5px solid var(--line);background:var(--panel);cursor:pointer;touch-action:none;border-radius:8px;width:100%;height:100%;animation:.36s ease-out paper-in;display:block}.paper-bg{fill:#fffdf4}.color-region,.thumbnail-region{transition:fill .13s}.color-region:hover{filter:brightness(.97)}.color-region{transform-box:fill-box;transform-origin:50%}.color-region:active{animation:.24s ease-out fill-wiggle}.pen-layer{pointer-events:none}.palette{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.color-swatch{aspect-ratio:1;width:100%;min-height:48px}.palette-shuffle{color:#20232c;background:conic-gradient(from 45deg,#ff5d8f,#ffd93d,#7bd88f,#42c2ff,#7c6cff,#ff5d8f);place-items:center;display:grid}.palette-shuffle svg{stroke-width:3px;background:#fffdf4eb;border:3px solid #20232c;border-radius:999px;width:30px;height:30px;padding:5px}.toolbar{flex-direction:column;gap:10px;min-height:0;display:flex}.tool-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tool-group:last-child,.volume-buttons,.brush-sizes{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-button,.brush-button{place-items:center;min-width:0;min-height:58px;padding:8px;display:grid}.tool-button svg{stroke-width:3px;width:32px;height:32px;overflow:visible}.tool-button:disabled{cursor:not-allowed;opacity:.45}.brush-button span{background:var(--ink);border-radius:999px;display:block}.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}@media (width<=900px){.app-shell{padding:10px}.hero-grid,.how-steps,.school-offer-grid,.landing-band{grid-template-columns:1fr}.school-offer-card,.landing-hero{min-height:auto}.hero-copy h1{font-size:clamp(2rem,9vw,3.8rem)}.studio{gap:7px}.workbench{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:1fr;gap:7px}.coach-bubble{min-height:38px;padding:6px 10px}.pass-status{min-width:116px;min-height:44px;padding:5px 9px}.pass-status span{font-size:.68rem}.pass-status strong{font-size:.9rem}.coach-bubble p{font-size:.86rem}.sparkles{flex-basis:34px;height:24px;font-size:.76rem}.page-picker{scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(72px,1fr);grid-auto-flow:column;padding:3px 3px 7px;display:grid;overflow:auto hidden}.page-tile{scroll-snap-align:start;min-width:72px;min-height:72px;padding:5px}.page-tile svg{height:45px}.page-tile span{font-size:.72rem}.controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:8px;padding:2px;display:grid;overflow:visible}.palette{grid-template-columns:repeat(5,minmax(48px,1fr));gap:8px}.color-swatch{min-height:42px}.toolbar{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.tool-group,.tool-group:last-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tool-group:last-child,.volume-buttons,.brush-sizes{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-button,.brush-button{min-width:44px;min-height:44px;padding:6px}.tool-button svg{width:25px;height:25px}.canvas-wrap{aspect-ratio:4/3;width:100%;max-width:100%;height:auto;max-height:100%}.coloring-svg{width:100%;height:100%}}@media (width<=560px){.topbar{min-height:40px}.access-panel{padding:18px}.access-form{grid-template-columns:1fr}.landing-nav{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:8px 0}.hero-actions button,.offer-panel button,.access-form button,.scan-pass-button{width:100%}.checkout-row{flex-direction:column;align-items:stretch}.package-options{grid-template-columns:1fr}.sample-pass-card{text-align:center;grid-template-columns:1fr;justify-items:center}.modal-actions button{width:100%}.lesson-caption{font-size:.82rem;bottom:10px;right:10px}.offer-panel,.legal-page{padding:18px}.eyebrow{display:none}h1{font-size:1.08rem}.mode-pill{min-width:58px;min-height:34px;box-shadow:3px 3px 0 var(--line);border-width:3px;font-size:.88rem}.pass-status{min-width:74px;min-height:34px;box-shadow:3px 3px 0 var(--line);border-width:3px}.pass-status span{display:none}.pass-status strong{font-size:.8rem}.coach-bubble{min-height:34px;box-shadow:3px 3px 0 var(--line);border-width:3px}.coach-bubble p{font-size:.76rem}.sparkles{flex-basis:28px;height:20px;font-size:.65rem}.canvas-wrap{border-width:0;padding:0}.page-picker{grid-auto-columns:68px}.tool-button,.brush-button{min-height:36px;padding:5px}.color-swatch{min-height:34px}}@media (height<=720px){.app-shell{padding:8px}.topbar{min-height:34px}h1{font-size:1rem}.coach-bubble{min-height:30px;padding:4px 8px}.coach-bubble p{font-size:.72rem}.sparkles{flex-basis:24px;height:18px}.page-tile{min-height:62px}.page-tile svg{height:37px}.color-swatch,.tool-button,.brush-button{min-height:31px}}@keyframes sparkle-pop{0%{transform:scale(.55)rotate(-10deg)}70%{transform:scale(1.08)rotate(4deg)}to{transform:scale(1)rotate(0)}}@keyframes gentle-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes paper-in{0%{transform:scale(.985)}to{transform:scale(1)}}@keyframes fill-wiggle{0%{transform:scale(1)}50%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes lesson-pop{0%,to{transform:translateY(0)scale(.98)}45%{transform:translateY(-6px)scale(1.02)}}.game-shell{color:#fffdf4;background:linear-gradient(135deg,#200c3efa,#144c5cf0 46%,#53245bf5),repeating-linear-gradient(-18deg,#ffffff14 0 1px,#0000 2px 34px);padding:12px;position:relative}.game-studio{isolation:isolate;gap:10px;width:min(1500px,100%);position:relative}.cosmic-sky{z-index:-1;background:linear-gradient(#ffffff12,#0000 28%),radial-gradient(circle at 18% 22%,#ffd93d47,#0000 18%),radial-gradient(circle at 83% 24%,#ff5d8f3d,#0000 17%),radial-gradient(circle at 72% 84%,#7bd88f38,#0000 20%);border-radius:18px;position:absolute;inset:0;overflow:hidden}.sky-planet,.sky-ring,.sky-comet,.sky-star{pointer-events:none;display:block;position:absolute}.sky-planet{background:linear-gradient(135deg,#fffdf42e,#42c2ff14),#ffffff0f;border:3px solid #fffdf429;border-radius:999px;box-shadow:inset 0 0 28px #ffffff24}.sky-planet-one{width:210px;height:210px;animation:11s ease-in-out infinite drift-slow;top:14%;right:9%}.sky-planet-two{width:116px;height:116px;animation:9s ease-in-out infinite reverse drift-slow;bottom:12%;left:6%}.sky-ring{border:2px solid #fffdf41f;border-radius:999px;transform:rotate(-18deg)}.sky-ring-one{width:680px;height:360px;top:7%;left:12%}.sky-ring-two{width:460px;height:260px;bottom:5%;right:-7%}.sky-comet{background:linear-gradient(90deg,#0000,#fffdf4d1);border-radius:999px;width:170px;height:8px;animation:6.5s ease-in-out infinite comet-sweep;top:18%;left:8%;transform:rotate(-18deg)}.sky-star{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);filter:drop-shadow(0 0 10px #fffdf4d9);background:#fffdf4;width:18px;height:18px;animation:1.8s ease-in-out infinite twinkle}.sky-star-one{top:16%;left:26%}.sky-star-two{animation-delay:.5s;top:33%;right:28%}.sky-star-three{animation-delay:.9s;bottom:18%;left:73%}.game-hud{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121422a8;border:4px solid #fffdf429;border-radius:8px;min-height:70px;padding:8px;position:relative;box-shadow:0 12px 40px #00000038}.mission-title h1{color:#fffdf4;text-shadow:0 3px #00000059}.game-hud .eyebrow,.mission-label,.deck-label{color:#bfffe3;text-transform:uppercase;letter-spacing:0}.game-hud .pass-status,.game-hud .mode-pill{color:#20232c;border-color:#fffdf4}.mission-bubble{z-index:2;color:#20232c;background:linear-gradient(90deg,#fffdf4fa,#c7effff5),#fffdf4;border-color:#fffdf4;min-height:64px;box-shadow:0 10px #00000038}.mission-bubble>div{min-width:0}.mission-label,.deck-label{margin-bottom:3px;font-size:.74rem;font-weight:950;display:block}.mission-bubble .mission-label{color:#6a33d8}.game-workbench{flex:1;grid-template:"stage controls"minmax(0,1fr)"pictures controls"/minmax(0,1fr) minmax(224px,280px);gap:12px;min-height:0;display:grid;position:relative;overflow:hidden}.stage-card{background:linear-gradient(#fffdf41c,#fffdf409),#0e112494;border:4px solid #fffdf438;border-radius:8px;grid-area:stage;place-items:center;min-width:0;min-height:0;padding:16px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f,0 22px 60px #00000047}.stage-glow{background:radial-gradient(#7bd88f57,#0000 68%);border-radius:50%;height:58%;animation:3.8s ease-in-out infinite pulse-glow;position:absolute;inset:auto 8% -34%}.game-workbench .canvas-wrap{z-index:1;width:min(100%,133.3dvh - 419.895px);max-width:920px;max-height:100%;animation:.46s cubic-bezier(.18,.92,.28,1.22) stage-arrive;position:relative;box-shadow:0 0 0 8px #fffdf424,0 26px 70px #00000057}.game-workbench .coloring-svg{background:linear-gradient(#fffdf4fa,#fff7d6fa);border-color:#fffdf4}.game-workbench .paper-bg{fill:#fffdf4}.game-controls{grid-area:controls;grid-template-rows:auto minmax(236px,1fr);gap:10px;min-height:0;padding:0;display:grid;overflow:hidden auto}.control-deck,.picture-deck{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121422b8;border:4px solid #fffdf42e;border-radius:8px;box-shadow:0 14px 38px #00000042}.control-deck{min-width:0;padding:10px}.color-deck-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.color-deck-head .deck-label{margin-bottom:0}.current-color-chip{border:4px solid #fffdf4;border-radius:8px;flex:none;width:58px;height:34px;box-shadow:0 0 0 3px #20232c,0 5px #00000057}.tool-deck{min-height:0;padding:8px;overflow:visible}.picture-deck{grid-area:pictures;min-width:0;padding:7px 10px 8px;transition:padding .18s,min-height .18s}.drawer-head{justify-content:space-between;align-items:center;gap:10px;min-height:28px;display:flex}.drawer-head .deck-label{align-items:baseline;gap:8px;min-width:0;margin-bottom:0;display:flex}.drawer-head .deck-label strong{color:#fffdf4;text-overflow:ellipsis;text-transform:none;white-space:nowrap;font-size:.88rem;font-weight:850;overflow:hidden}.drawer-toggle{color:#20232c;cursor:pointer;background:#c7efff;border:3px solid #fffdf4;border-radius:8px;flex:0 0 36px;place-items:center;width:36px;height:30px;display:grid;box-shadow:0 3px #00000057}.drawer-toggle svg{stroke-width:3px;width:20px;height:20px}.game-workbench[data-picture-drawer=closed]{grid-template-rows:minmax(0,1fr) auto}.game-workbench[data-picture-drawer=closed] .canvas-wrap{width:min(100%,133.3dvh - 293.26px)}.game-workbench[data-picture-drawer=closed] .picture-deck{min-height:46px}.game-controls .palette{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.game-controls .color-swatch{aspect-ratio:auto;border-color:#fffdf4;height:clamp(44px,20dvh - 98.4px,84px);min-height:44px;box-shadow:0 4px #00000059}.game-controls .tool-button,.game-controls .brush-button,.picture-deck .page-tile{border-color:#fffdf4;box-shadow:0 4px #00000057}.game-controls .toolbar,.game-controls .tool-group{gap:6px}.game-controls .tool-button,.game-controls .brush-button{color:#20232c;background:#fffdf4;min-height:38px}.game-controls .tool-button svg{width:28px;height:28px}.picture-deck .page-picker{scroll-snap-type:x proximity;grid-auto-columns:minmax(104px,128px);grid-auto-flow:column;gap:10px;padding:2px 2px 7px;display:grid;overflow:auto hidden}.page-picker-shell{min-width:0;position:relative}.world-scroll-button{z-index:3;color:#20232c;cursor:pointer;background:#42c2ff;border:3px solid #fffdf4;border-radius:8px;place-items:center;width:48px;height:42px;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 3px #00000057}.world-scroll-button-left{left:4px}.world-scroll-button-right{right:4px}.world-scroll-button svg{stroke-width:4px;width:28px;height:28px}.picture-deck .page-tile{scroll-snap-align:start;color:#20232c;background:linear-gradient(#fff,#fff3ba);min-height:76px;padding:6px}.picture-deck .page-tile svg{height:44px}.picture-deck .thumbnail-region{opacity:.78;stroke:#4b5360;stroke-width:2.45px}.picture-deck .page-tile span{color:#28313d;font-weight:760}.picture-deck .page-tile[data-active=true]{background:linear-gradient(#c7efff,#7bd88f);transform:translateY(-2px)}.picture-deck .page-tile[data-complete=true]{background:linear-gradient(#fffdf4,#c7efff)}.color-region{filter:drop-shadow(0 0 #0000)}.game-workbench .color-region:hover{filter:brightness(1.03)drop-shadow(0 0 7px #42c2ff59)}.game-workbench .color-region:active{animation:.26s ease-out game-fill-pop}.play-mode-switch{grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px;display:grid}.play-mode-switch button{color:#20232c;min-height:54px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#fffdf4;border:4px solid #fffdf4;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:.88rem;font-weight:950;display:inline-flex}.play-mode-switch button[aria-pressed=true]{background:#7bd88f;transform:translate(2px,2px);box-shadow:1px 1px #20232c}.play-mode-switch svg{stroke-width:3px;width:22px;height:22px}.game-menu-button{color:#20232c;min-height:54px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#c7efff;border:4px solid #fffdf4;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:.9rem;font-weight:950;display:inline-flex}.game-menu-button svg{stroke-width:3px;width:22px;height:22px}.game-workbench[data-play-mode=menu],.game-workbench[data-play-mode=habitat],.game-workbench[data-play-mode=clock],.game-workbench[data-play-mode=sorter]{grid-template:"stage"minmax(0,1fr)/1fr}.game-selector{z-index:1;color:#20232c;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:min(100%,1080px);display:grid;position:relative}.game-card{color:#20232c;cursor:pointer;min-height:300px;font:inherit;text-align:left;background:linear-gradient(#fffdf4fa,#fff3baf5),#fffdf4;border:5px solid #fffdf4;border-radius:8px;grid-template-rows:auto auto auto minmax(0,1fr);align-content:start;gap:12px;padding:18px;transition:transform .14s,box-shadow .14s;display:grid;box-shadow:0 8px #00000057}.game-card:active{transform:translate(4px,4px);box-shadow:1px 1px #00000057}.game-card[data-game=coloring]{background:linear-gradient(#fffdf4,#ffd6e0)}.game-card[data-game=habitat]{background:linear-gradient(#fffdf4,#d7f8cf)}.game-card[data-game=clock]{background:linear-gradient(#fffdf4,#c7efff)}.game-card[data-game=sorter]{background:linear-gradient(#fffdf4,#fff3ba)}.game-card-icon{width:68px;height:68px;box-shadow:var(--pop-shadow);background:#fff;border:4px solid #20232c;border-radius:8px;place-items:center;display:grid}.game-card-icon svg{stroke-width:3px;width:38px;height:38px}.game-card-label{text-transform:uppercase;background:#fff;border:3px solid #20232c;border-radius:8px;width:fit-content;padding:5px 8px;font-size:.76rem;font-weight:950}.game-card strong{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1}.game-card-description{color:#39433f;font-size:1rem;font-weight:850;line-height:1.28}.habitat-game{z-index:1;width:min(100%,1040px);height:100%;min-height:0;display:grid;position:relative}.habitat-board{color:#20232c;grid-template-columns:minmax(0,1fr) minmax(210px,260px);gap:12px;min-height:0;display:grid;position:relative}.habitat-zones{grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px;min-height:0;display:grid}.habitat-zone{background:linear-gradient(180deg, color-mix(in srgb, var(--habitat-accent) 38%, #fff), #fffdf4 74%), #fffdf4;color:#20232c;cursor:pointer;touch-action:manipulation;border:4px solid #fffdf4;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:6px;min-width:0;min-height:210px;padding:10px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px #00000057}.habitat-zone:before{content:"";background:var(--habitat-accent);opacity:.55;height:78px;position:absolute;inset:auto -18px -28px;transform:rotate(-3deg)}.habitat-zone[data-accent=ocean]:before{border-radius:50% 50% 0 0}.habitat-zone[data-accent=forest]:before{clip-path:polygon(0 52%,12% 18%,22% 52%,35% 12%,50% 56%,64% 18%,74% 54%,86% 12%,100% 50%,100% 100%,0 100%)}.habitat-zone[data-accent=farm]:before{clip-path:polygon(0 40%,50% 8%,100% 40%,100% 100%,0 100%)}.habitat-zone[data-accent=polar]:before{clip-path:polygon(0 58%,12% 42%,28% 58%,44% 34%,62% 58%,78% 40%,100% 60%,100% 100%,0 100%)}.habitat-zone[data-try-again=true]{animation:.42s habitat-shake}.habitat-name,.habitat-clue,.habitat-placed{z-index:1;position:relative}.habitat-name{font-size:clamp(1rem,1.55vw,1.34rem);font-weight:950;line-height:1}.habitat-clue{color:#39433f;font-size:.78rem;font-weight:900;line-height:1.1}.habitat-placed{flex-wrap:wrap;justify-content:center;align-self:end;align-items:end;gap:6px;min-height:86px;padding-top:14px;display:flex}.placed-animal{width:52px;height:52px;box-shadow:var(--pop-shadow);background:#fff;border:3px solid #20232c;border-radius:8px;place-items:center;font-size:1.72rem;animation:.3s ease-out animal-land;display:grid}.animal-tray{color:#fffdf4;background:#121422b8;border:4px solid #fffdf438;border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:8px;min-height:0;padding:10px;display:grid}.animal-tray-head{justify-content:space-between;align-items:center;gap:8px;font-weight:950;display:flex}.animal-tray-head span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.92rem;overflow:hidden}.animal-tray-head small{color:#bfffe3;flex:none;font-size:.78rem;font-weight:950}.animal-tray-head button{color:#20232c;cursor:pointer;background:#ffd93d;border:3px solid #fffdf4;border-radius:8px;flex:none;place-items:center;width:42px;height:38px;display:grid;box-shadow:0 3px #00000057}.animal-tray-head svg{stroke-width:3px;width:21px;height:21px}.animal-list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;min-height:0;padding:2px 4px 4px 2px;display:grid;overflow-y:auto}.animal-token{color:#20232c;cursor:grab;touch-action:none;background:#fffdf4;border:3px solid #fffdf4;border-radius:8px;place-items:center;gap:2px;min-width:0;min-height:76px;display:grid;box-shadow:0 4px #00000057}.animal-token[data-dragging=true]{opacity:.28}.animal-token[aria-pressed=true]{background:#c7efff;box-shadow:0 0 0 3px #ffd93d,0 4px #00000057}.animal-token span{font-size:2rem;line-height:1}.animal-token strong,.drag-preview strong{overflow-wrap:anywhere;font-size:.78rem;line-height:1.05}.drag-preview{z-index:50;color:#20232c;pointer-events:none;background:#fffdf4;border:4px solid #20232c;border-radius:8px;place-items:center;gap:2px;width:96px;min-height:82px;margin:-42px 0 0 -48px;display:grid;position:fixed;top:0;left:0;box-shadow:8px 8px #00000057}.drag-preview span{font-size:2.25rem;line-height:1}.habitat-complete{z-index:3;color:#20232c;text-align:center;background:#fff3ba;border:5px solid #20232c;border-radius:8px;gap:12px;width:min(360px,100% - 24px);padding:18px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:10px 10px #0000005c}.habitat-complete strong{font-size:1.5rem;line-height:1}.habitat-complete span{color:#39433f;font-weight:950}.habitat-complete-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.habitat-complete button{min-height:50px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#7bd88f;border:4px solid #20232c;border-radius:8px;font-weight:950}.clock-game{z-index:1;color:#20232c;grid-template-columns:minmax(300px,1fr) minmax(240px,340px);align-items:stretch;gap:14px;width:min(100%,980px);height:100%;min-height:0;display:grid;position:relative}.clock-card,.clock-options{background:#fffdf4f5;border:4px solid #fffdf4;border-radius:8px;box-shadow:0 8px #00000057}.clock-card{grid-template-rows:auto minmax(0,1fr) auto;place-items:center;gap:8px;min-height:0;padding:14px;display:grid;position:relative}.clock-progress{color:#39433f;justify-content:flex-end;align-items:center;gap:10px;width:100%;font-weight:950;display:flex}.clock-progress button{width:42px;height:38px;box-shadow:var(--pop-shadow);color:#20232c;cursor:pointer;background:#ffd93d;border:3px solid #20232c;border-radius:8px;place-items:center;display:grid}.clock-progress svg{stroke-width:3px;width:21px;height:21px}.clock-face{aspect-ratio:1;filter:drop-shadow(0 14px 20px #20232c2e);width:min(100%,430px);max-height:100%;overflow:visible}.clock-rim{fill:#42c2ff;stroke:#20232c;stroke-width:8px}.clock-inner{fill:#fffdf4;stroke:#20232c;stroke-width:3px}.clock-number{fill:#20232c;font-size:18px;font-weight:950}.clock-tick{stroke:#20232c;stroke-linecap:round;stroke-width:2px}.clock-tick-big{stroke-width:4px}.clock-hand{stroke:#20232c;stroke-linecap:round}.clock-hand-hour{stroke-width:9px}.clock-hand-minute{stroke:#ff5d8f;stroke-width:6px}.clock-pin{fill:#ffd93d;stroke:#20232c;stroke-width:4px}.clock-question{width:min(100%,360px);box-shadow:var(--pop-shadow);text-align:center;background:#fff;border:3px solid #20232c;border-radius:8px;gap:3px;padding:12px;display:grid}.clock-question span{color:#48635c;text-transform:uppercase;font-size:.76rem;font-weight:950}.clock-question strong{font-size:clamp(1.08rem,2vw,1.5rem);line-height:1}.clock-options{grid-template-columns:1fr;align-content:center;gap:12px;min-height:0;padding:14px;display:grid}.clock-option{min-height:78px;box-shadow:var(--pop-shadow);color:#20232c;cursor:pointer;font:inherit;background:#fff;border:4px solid #20232c;border-radius:8px;font-size:clamp(1.35rem,3vw,2.2rem);font-weight:950}.clock-option:disabled{cursor:default;opacity:.65}.clock-option[data-wrong=true]{background:#ffd6e0;animation:.42s habitat-shake}.clock-option:active:not(:disabled){transform:translate(3px,3px);box-shadow:1px 1px #20232c}.clock-complete{z-index:3;color:#20232c;text-align:center;background:#fff3ba;border:5px solid #20232c;border-radius:8px;gap:12px;width:min(360px,100% - 24px);padding:18px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:10px 10px #0000005c}.clock-complete strong{font-size:1.45rem;line-height:1}.clock-complete button{min-height:50px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#7bd88f;border:4px solid #20232c;border-radius:8px;font-weight:950}.sorter-game{z-index:1;width:min(100%,1040px);height:100%;min-height:0;display:grid;position:relative}.sorter-board{color:#20232c;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:12px;min-height:0;display:grid;position:relative}.sorter-buckets{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;min-height:0;display:grid}.sorter-bucket{background:linear-gradient(180deg, color-mix(in srgb, var(--bucket-accent) 34%, #fff), #fffdf4 76%), #fffdf4;color:#20232c;cursor:pointer;touch-action:manipulation;border:4px solid #fffdf4;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:6px;min-width:0;min-height:190px;padding:10px;display:grid;position:relative;overflow:hidden;box-shadow:0 5px #00000057}.sorter-bucket:before{content:"";background:var(--bucket-accent);opacity:.36;border:4px solid #20232c;border-top:0;border-radius:0 0 18px 18px;height:58px;position:absolute;inset:auto 12px 10px}.sorter-bucket[data-try-again=true]{animation:.42s habitat-shake}.sorter-bucket-label,.sorter-bucket-clue,.sorter-placed{z-index:1;position:relative}.sorter-bucket-label{font-size:clamp(1rem,1.55vw,1.34rem);font-weight:950;line-height:1}.sorter-bucket-clue{color:#39433f;font-size:.78rem;font-weight:900;line-height:1.1}.sorter-placed{flex-wrap:wrap;justify-content:center;align-self:end;align-items:end;gap:6px;min-height:86px;padding-top:14px;display:flex}.sorter-placed-item{width:52px;height:52px;box-shadow:var(--pop-shadow);background:#fff;border:3px solid #20232c;border-radius:8px;place-items:center;animation:.3s ease-out animal-land;display:grid}.sorter-tray{color:#fffdf4;background:#121422b8;border:4px solid #fffdf438;border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:8px;min-height:0;padding:10px;display:grid}.sorter-tray-head{justify-content:space-between;align-items:center;gap:8px;font-weight:950;display:flex}.sorter-tray-head span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.92rem;overflow:hidden}.sorter-tray-head small{color:#bfffe3;flex:none;font-size:.78rem;font-weight:950}.sorter-tray-head button{color:#20232c;cursor:pointer;background:#ffd93d;border:3px solid #fffdf4;border-radius:8px;flex:none;place-items:center;width:42px;height:38px;display:grid;box-shadow:0 3px #00000057}.sorter-tray-head svg{stroke-width:3px;width:21px;height:21px}.sorter-list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;min-height:0;padding:2px 4px 4px 2px;display:grid;overflow-y:auto}.sorter-token{color:#20232c;cursor:grab;touch-action:none;background:#fffdf4;border:3px solid #fffdf4;border-radius:8px;place-items:center;gap:3px;min-width:0;min-height:84px;display:grid;box-shadow:0 4px #00000057}.sorter-token[data-dragging=true]{opacity:.28}.sorter-token[aria-pressed=true]{background:#c7efff;box-shadow:0 0 0 3px #ffd93d,0 4px #00000057}.sorter-token strong,.sorter-drag-preview strong{overflow-wrap:anywhere;text-align:center;font-size:.76rem;line-height:1.05}.sorter-shape{background:var(--sorter-color);border:3px solid #20232c;width:42px;height:42px;display:block;box-shadow:2px 2px #20232c59}.sorter-shape[data-size=small]{width:30px;height:30px}.sorter-shape[data-size=big]{width:54px;height:54px}.sorter-shape[data-shape=circle]{border-radius:999px}.sorter-shape[data-shape=triangle]{border-right:25px solid #0000;border-bottom:46px solid var(--sorter-color);width:0;height:0;box-shadow:none;filter:drop-shadow(2px 2px #20232c59);background:0 0;border-left:25px solid #0000}.sorter-shape[data-shape=triangle][data-size=small]{border-bottom-width:34px;border-left-width:18px;border-right-width:18px}.sorter-shape[data-shape=triangle][data-size=big]{border-bottom-width:58px;border-left-width:32px;border-right-width:32px}.sorter-shape[data-shape=rectangle]{border-radius:6px;width:50px;height:36px}.sorter-shape[data-shape=rectangle][data-size=small]{width:36px;height:26px}.sorter-shape[data-shape=rectangle][data-size=big]{width:62px;height:44px}.sorter-emoji{font-size:2rem;line-height:1}.sorter-drag-preview{z-index:50;color:#20232c;pointer-events:none;background:#fffdf4;border:4px solid #20232c;border-radius:8px;place-items:center;gap:4px;width:106px;min-height:92px;margin:-46px 0 0 -53px;display:grid;position:fixed;top:0;left:0;box-shadow:8px 8px #00000057}.sorter-complete{z-index:3;color:#20232c;text-align:center;background:#fff3ba;border:5px solid #20232c;border-radius:8px;gap:12px;width:min(360px,100% - 24px);padding:18px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:10px 10px #0000005c}.sorter-complete strong{font-size:1.5rem;line-height:1}.sorter-complete span{color:#39433f;font-weight:950}.sorter-complete-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sorter-complete button{min-height:50px;box-shadow:var(--pop-shadow);cursor:pointer;font:inherit;background:#7bd88f;border:4px solid #20232c;border-radius:8px;font-weight:950}@media (width<=980px){.game-shell{padding:8px;overflow:hidden}.game-hud{min-height:52px}.game-workbench{grid-template:"stage"minmax(0,1fr)"controls""pictures"/1fr;gap:8px}.stage-card{padding:9px}.game-workbench .canvas-wrap{width:min(100%,133.3dvh - 442.556px);max-width:100%}.game-workbench[data-picture-drawer=closed] .canvas-wrap{width:min(100%,133.3dvh - 317.254px)}.game-controls{grid-template-rows:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:visible}.game-controls .palette{grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:7px}.game-controls .toolbar,.game-controls .tool-group,.game-controls .tool-group:last-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.game-controls .tool-group:last-child,.game-controls .volume-buttons,.game-controls .brush-sizes{grid-template-columns:repeat(3,minmax(0,1fr))}.game-controls .color-swatch,.game-controls .tool-button,.game-controls .brush-button{min-height:42px}.game-controls .color-swatch{aspect-ratio:1;height:auto;min-height:58px}.play-mode-switch{grid-template-columns:repeat(3,48px)}.play-mode-switch button{min-height:46px;padding:0}.play-mode-switch span{display:none}.game-menu-button{min-height:46px;padding:0 10px;font-size:.82rem}.game-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-card{min-height:220px;padding:14px}.game-card-icon{width:56px;height:56px}.game-card-icon svg{width:31px;height:31px}.habitat-board{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.habitat-zones{grid-template-columns:repeat(5,minmax(92px,1fr));padding-bottom:5px;overflow-x:auto}.habitat-zone{min-height:170px}.animal-tray{min-height:142px}.animal-list{grid-template-columns:repeat(5,minmax(78px,1fr));overflow:auto hidden}.animal-token{min-height:72px}.clock-game{grid-template-rows:minmax(320px,1fr) auto;grid-template-columns:1fr;gap:8px}.clock-card{padding:10px}.clock-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px}.clock-option{min-height:58px;font-size:1.18rem}.sorter-board{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.sorter-buckets{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.sorter-bucket,.sorter-tray{min-height:150px}.sorter-list{grid-template-columns:repeat(4,minmax(78px,1fr));overflow:auto hidden}.sorter-token{min-height:76px}.picture-deck .page-picker{grid-auto-columns:minmax(76px,96px)}.picture-deck .page-tile{min-height:70px}.picture-deck .page-tile svg{height:42px}}@media (width<=560px){.game-shell{height:auto;min-height:100dvh;overflow-y:auto}.game-studio{gap:6px;height:auto;min-height:calc(100dvh - 16px)}.game-hud{grid-template-columns:minmax(0,1fr) auto;min-height:42px;padding:5px}.mission-title h1{font-size:1rem}.mission-bubble{min-height:44px}.mission-label,.deck-label{font-size:.62rem}.stage-card{padding:6px}.game-workbench{flex:none;grid-template-rows:auto auto auto;overflow:visible}.game-workbench .canvas-wrap,.game-workbench[data-picture-drawer=closed] .canvas-wrap{width:100%}.control-deck,.picture-deck{border-width:3px;padding:6px}.drawer-head{min-height:24px}.drawer-head .deck-label strong{font-size:.74rem}.drawer-toggle{border-width:2px;flex-basis:32px;width:32px;height:26px}.game-controls{grid-template-columns:1fr;gap:6px}.game-controls .palette{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.game-controls .toolbar,.game-controls .tool-group{gap:5px}.game-controls .toolbar{grid-template-columns:1fr}.tool-deck{overflow-y:auto}.game-controls .color-swatch,.game-controls .tool-button,.game-controls .brush-button{border-width:3px;min-height:34px}.game-controls .color-swatch{aspect-ratio:1;height:auto;min-height:64px}.play-mode-switch{grid-template-columns:repeat(3,36px);gap:5px}.play-mode-switch button{border-width:3px;min-height:36px}.play-mode-switch svg{width:20px;height:20px}.game-menu-button{border-width:3px;min-height:36px;padding:0 8px;font-size:.72rem}.game-menu-button svg{width:18px;height:18px}.game-selector{grid-template-columns:1fr;gap:8px}.game-card{border-width:3px;grid-template-rows:auto auto auto;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;min-height:150px;padding:12px}.game-card-icon{border-width:3px;grid-row:1/span 3;width:54px;height:54px}.game-card-label{border-width:2px;width:fit-content;padding:3px 6px;font-size:.66rem}.game-card strong{font-size:1.12rem}.game-card-description{font-size:.82rem}.habitat-board{gap:7px}.habitat-zones{grid-template-columns:repeat(5,minmax(112px,1fr));gap:7px}.habitat-zone{border-width:3px;min-height:156px;padding:8px}.habitat-name{font-size:.96rem}.habitat-clue{font-size:.68rem}.placed-animal{width:42px;height:42px;font-size:1.36rem}.animal-tray{border-width:3px;min-height:136px;padding:7px}.animal-list{grid-template-columns:repeat(5,minmax(72px,1fr));gap:6px}.animal-token{border-width:3px;min-height:66px}.animal-token span{font-size:1.72rem}.clock-game{grid-template-rows:auto auto}.clock-card{border-width:3px;gap:6px;padding:8px}.clock-face{width:min(100%,300px)}.clock-options{border-width:3px;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.clock-option{border-width:3px;min-height:52px;font-size:1.12rem}.sorter-board{gap:7px}.sorter-buckets{grid-template-columns:repeat(2,minmax(124px,1fr));gap:7px}.sorter-bucket{border-width:3px;min-height:136px;padding:8px}.sorter-bucket-label{font-size:.96rem}.sorter-bucket-clue{font-size:.68rem}.sorter-placed-item{width:42px;height:42px}.sorter-tray{border-width:3px;min-height:138px;padding:7px}.sorter-list{grid-template-columns:repeat(4,minmax(72px,1fr));gap:6px}.sorter-token{border-width:3px;min-height:70px}.sorter-shape{transform:scale(.82)}.sorter-emoji{font-size:1.72rem}.picture-deck .page-picker{grid-auto-columns:68px;gap:7px}.picture-deck .page-tile{border-width:3px;min-height:62px}.picture-deck .page-tile svg{height:36px}}@media (height<=720px){.game-hud{min-height:42px;padding:5px}.mission-bubble{min-height:38px;padding:5px 8px}.game-workbench{gap:7px}.control-deck,.picture-deck{padding:6px}.game-controls .color-swatch,.game-controls .tool-button,.game-controls .brush-button{min-height:34px}.picture-deck .page-tile{min-height:60px}}@keyframes drift-slow{0%,to{transform:translate(0,0)}50%{transform:translate(12px,-10px)}}@keyframes comet-sweep{0%,38%{opacity:0;transform:translate(-80px)rotate(-18deg)}52%{opacity:1}76%,to{opacity:0;transform:translate(460px)rotate(-18deg)}}@keyframes twinkle{0%,to{opacity:.45;transform:scale(.82)rotate(0)}50%{opacity:1;transform:scale(1.08)rotate(24deg)}}@keyframes pulse-glow{0%,to{opacity:.72;transform:scaleX(.92)}50%{opacity:1;transform:scaleX(1.04)}}@keyframes stage-arrive{0%{opacity:0;transform:translateY(14px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes game-fill-pop{0%{transform:scale(1)}58%{transform:scale(1.055)}to{transform:scale(1)}}@keyframes habitat-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes animal-land{0%{opacity:0;transform:translateY(-10px)scale(.86)}to{opacity:1;transform:translateY(0)scale(1)}}
