:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#29433a;background:#f8f8f1;font-synthesis:none;text-rendering:optimizeLegibility;font-weight:500;--ink: #29433a;--muted: #7c8d82;--green: #4e9571;--deep: #287354}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 85% 0%,#fff0d2 0,transparent 31%),#f8f8f1}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:4px solid #f4b64f;outline-offset:3px}.shell{width:min(100% - 48px,1120px);margin:auto;padding:24px 0 34px}.topbar,.top-actions,.brand{display:flex;align-items:center}.topbar{justify-content:space-between}.brand{gap:10px;color:var(--ink);font-size:17px;font-weight:900;text-decoration:none;letter-spacing:-.4px}.brand>span:last-child{display:grid;gap:1px}.brand small{color:#9aab9d;font-size:8px;letter-spacing:1.6px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:15px;background:#ffe9a9;font-size:22px}.top-actions{gap:11px}.star-pill,.icon-btn,.parent-trigger{min-height:46px;border:1px solid #ecece3;background:#fff;border-radius:16px;box-shadow:0 4px 12px #29433a08}.star-pill{display:flex;align-items:center;gap:6px;padding:0 15px;color:#80621b;font-size:14px;font-weight:900}.star-pill span{font-size:17px}.icon-btn,.parent-trigger{min-width:46px;font-size:20px}.parent-trigger{font-size:18px}.welcome{position:relative;display:flex;align-items:center;min-height:250px;margin:30px 0 28px;padding:30px 42px;overflow:hidden;border:1px solid #dfead8;border-radius:34px;background:linear-gradient(105deg,#e9f2df 0% 48%,#dcecd8);box-shadow:0 14px 35px #34513c0c}.welcome-copy-block{position:relative;z-index:2}.eyebrow{margin:0 0 10px;color:#769b72;font-size:10px;font-weight:900;letter-spacing:1.6px}.welcome .eyebrow{display:flex;align-items:center;gap:7px}.sun-dot{width:8px;height:8px;border-radius:50%;background:#edb64c;box-shadow:0 0 0 4px #f8dfa6}.welcome h1{margin:0;color:#304b3d;font-size:clamp(31px,4vw,44px);font-weight:900;line-height:1.12;letter-spacing:-1.7px}.welcome h1 span{color:#52946d}.welcome-copy{margin:10px 0 0;color:#75877b;font-size:14px}.hero-note{display:inline-flex;align-items:center;gap:7px;margin-top:20px;padding:9px 13px;border:1px solid #dce8d6;border-radius:30px;background:#ffffffa8;color:#65846a;font-size:10px;font-weight:800}.hero-note span{font-size:14px}.hero-scene{position:absolute;inset:0 0 0 48%;overflow:hidden}.hero-island{position:absolute;right:7%;bottom:-79px;width:345px;height:205px;border:12px solid #d5e7c9;border-radius:50%;background:#bdd8a9;box-shadow:inset 0 10px #d7e8c5}.hero-island:before{position:absolute;top:30px;left:25px;width:78px;height:23px;border-radius:50%;background:#d4e7c2;content:"";transform:rotate(-12deg)}.hero-dino{position:absolute;z-index:2;top:-68px;left:105px;font-size:112px;filter:drop-shadow(0 10px 3px #55784a35);animation:dino-bob 3s ease-in-out infinite}.hero-tree{position:absolute;z-index:1;font-size:62px;filter:drop-shadow(0 7px 2px #55784a28)}.tree-one{top:-49px;left:15px;transform:rotate(-9deg)}.tree-two{top:-55px;right:10px;font-size:57px;transform:rotate(7deg)}.hero-flower{position:absolute;right:72px;top:35px;font-size:26px}.hero-cloud{position:absolute;z-index:1;font-size:48px;opacity:.8;filter:saturate(.65)}.cloud-one{right:42%;top:26px}.cloud-two{right:9%;top:40px;font-size:37px}.hero-spark{position:absolute;z-index:2;color:#e3ae46;font-size:24px}.spark-one{top:74px;right:33%}.spark-two{right:19%;top:113px}.hero-wave{position:absolute;right:0;bottom:-27px;width:100%;height:67px;border-radius:50% 45% 0 0;background:#cbe2c2;opacity:.65;transform:rotate(-3deg)}.hero-badge{position:absolute;z-index:2;right:37px;bottom:23px;padding:8px 12px;border:1px solid #dce8d6;border-radius:22px;background:#ffffffc7;color:#6f8c71;font-size:8px;font-weight:900;letter-spacing:1px}.hero-badge b{margin-left:4px;color:#d6a13d;font-size:13px}@keyframes dino-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:0 2px 14px}.section-heading .eyebrow{margin-bottom:4px}.section-heading h2{margin:0;font-size:21px;font-weight:900;letter-spacing:-.7px}.game-count{padding:7px 11px;border:1px solid #e9ede3;border-radius:20px;background:#fff;color:#7b8b7f;font-size:10px;font-weight:800}.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.game-card{position:relative;display:flex;min-height:195px;flex-direction:column;align-items:flex-start;overflow:hidden;padding:15px 16px 13px;border:1px solid #29433a0d;border-radius:23px;text-align:left;box-shadow:0 5px 16px #233a3209;transition:transform .18s ease,box-shadow .18s ease;touch-action:manipulation}.game-card:after{position:absolute;top:-29px;right:-26px;width:90px;height:90px;border:1px solid #ffffff80;border-radius:50%;content:""}.game-card:active{transform:scale(.975)}.game-card:disabled{filter:saturate(.65);cursor:default}.game-number{position:absolute;top:13px;right:15px;z-index:1;color:#52685c80;font-size:9px;font-weight:900;letter-spacing:.8px}.game-icon-wrap{position:relative;display:grid;width:61px;height:61px;place-items:center;margin:1px 0 10px;border:1px solid #ffffffa6;border-radius:21px;background:#ffffff70;box-shadow:0 4px 12px #29433a08}.game-icon{font-size:35px;filter:drop-shadow(0 3px 1px #29433a15)}.icon-glint{position:absolute;top:5px;right:5px;color:#d1a34f;font-size:10px}.game-title{font-size:14px;font-weight:900;letter-spacing:-.3px}.game-subtitle{margin-top:3px;color:#687a70;font-size:10px}.game-progress{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:auto;padding-top:11px;color:#587f65;font-size:9px;font-weight:900}.game-progress b{display:grid;width:23px;height:23px;place-items:center;border-radius:50%;background:#ffffff9c;font-size:13px}.lavender{background:#eee9f7}.peach{background:#fae9dc}.mint{background:#e3f1e6}.sky{background:#e3eef6}.lemon{background:#f6f0d5}.pink{background:#f7e4e8}.lilac{background:#eee5f3}.green{background:#e4efd9}footer{display:flex;align-items:center;justify-content:center;gap:9px;margin:23px 0 0;color:#97a299;font-size:10px}.footer-flower{color:#d5ad5c;font-size:14px}.play-shell{width:min(100% - 32px,760px);margin:auto;padding:22px 0}.play-top{display:flex;align-items:center;justify-content:space-between;gap:18px}.back-btn{min-width:48px;min-height:48px;border:1px solid #ecece3;border-radius:16px;background:#fff;box-shadow:0 3px 10px #233a3210;font-size:22px}.round-track{display:flex;flex:1;max-width:300px;gap:7px}.round-track i{height:8px;flex:1;border-radius:8px;background:#e1e8dc}.round-track i.done{background:#74b28a}.play-stars{padding:10px 14px;border:1px solid #f1ebd3;border-radius:15px;background:#fff;color:#80621b;font-weight:900}.play-card{display:flex;min-height:min(650px,calc(100dvh - 110px));flex-direction:column;align-items:center;margin:20px 0;padding:29px;border:1px solid #edf0e7;border-radius:30px;background:radial-gradient(ellipse at 50% 30%,#f3f8ec 0,#fff 48%);text-align:center;box-shadow:0 14px 40px #34513c0c}.mini-label{padding:7px 12px;border:1px solid #e8eee2;border-radius:20px;background:#f7f9f3;color:#77917d;font-size:11px;font-weight:900}.play-card h1{max-width:560px;margin:14px 0;font-size:clamp(22px,3vw,30px);line-height:1.35;letter-spacing:-.5px}.question-art{display:grid;min-height:160px;place-items:center;color:#38533c;font-size:clamp(60px,12vw,94px);letter-spacing:5px;filter:drop-shadow(0 8px 4px #38533c13)}.choices{display:grid;width:min(100%,520px);grid-template-columns:repeat(4,minmax(64px,1fr));gap:12px;margin:12px auto}.choice{min-height:91px;border:2px solid #edf1e8;border-radius:23px;background:#f7f9f3;font-size:43px;box-shadow:0 4px 10px #283f3307;transition:transform .12s,background .12s,border-color .12s}.choice:active{transform:scale(.95);border-color:#cfe3c9;background:#e9f3e5}.choice:disabled{opacity:.7}.feedback{min-height:28px;margin:13px 0 3px;color:#4e9a70;font-weight:900}.hint-button{margin-top:auto;padding:12px 18px;border:1px solid #f4e6bd;border-radius:20px;background:#fff5d8;color:#826a36;font-weight:800}.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(100px,145px));gap:13px;margin:auto}.memory-card{width:100%;aspect-ratio:1;border:2px solid #e7ecdf;border-radius:22px;background:#edf3e7;font-size:47px;box-shadow:0 4px 10px #283f3310}.memory-card.revealed{border-color:#f4d78b;background:#fff4d6}.complete{display:flex;min-height:100dvh;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.confetti{font-size:75px}.complete h1{margin:6px 0;font-size:42px}.complete p{color:#708078}.big-stars{margin:14px;font-size:37px}.primary-btn,.secondary-btn{min-height:53px;padding:0 25px;border:0;border-radius:18px;font-weight:900}.primary-btn{background:#428d68;color:#fff;box-shadow:0 5px 12px #408a6525}.secondary-btn{margin:10px;background:#edf3e9}.parent-shell{width:min(100% - 32px,680px);margin:auto;padding:22px 0 35px}.parent-card{margin-top:22px;padding:30px;border:1px solid #edf0e7;border-radius:28px;background:#fff;box-shadow:0 10px 35px #34513c0b}.parent-card h1{margin:0 0 20px;font-size:30px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats div{display:flex;flex-direction:column;gap:5px;padding:14px 8px;border-radius:18px;background:#f3f6ec;text-align:center}.stats b{font-size:17px}.stats small,.small-note{color:#829087;font-size:11px}.parent-card h2{margin:25px 0 12px;font-size:16px}.limit-label,.email-form label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:800}.limit-label select,.email-form input{height:48px;padding:0 13px;border:1px solid #dfe8dd;border-radius:14px;background:#fff;font:inherit}.email-form{display:grid;gap:13px}.email-form .primary-btn{justify-self:start}.sync-message{min-height:20px;color:#53886b;font-size:13px}.parent-home{margin-left:0}.rest-overlay{position:fixed;z-index:5;inset:0;display:grid;place-items:center;padding:20px;background:#263d3788;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.rest-overlay section{width:min(100%,390px);padding:30px 24px;border-radius:28px;background:#fff;text-align:center}.rest-overlay section>div{font-size:54px}.rest-overlay h2{margin:12px 0 5px;font-size:23px}.rest-overlay p{margin:0 0 20px;color:#73847c}@media(min-width:900px){.shell{padding-top:30px}.welcome{margin-top:37px}.game-card{min-height:205px}.game-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #233a3216}}@media(max-width:700px){.shell{width:min(100% - 28px,540px);padding-top:14px}.welcome{min-height:220px;margin:20px 0 24px;padding:24px 20px;border-radius:27px}.welcome h1{font-size:30px}.welcome-copy{max-width:200px;font-size:12px}.hero-scene{inset:0 0 0 44%;opacity:.88}.hero-island{right:-62px;bottom:-70px;transform:scale(.75);transform-origin:bottom right}.hero-dino{left:94px}.hero-badge{right:14px;bottom:13px;font-size:7px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.game-card{min-height:175px;padding:13px;border-radius:20px}.game-icon-wrap{width:54px;height:54px;border-radius:18px}.game-icon{font-size:32px}.game-title{font-size:13px}.game-subtitle{font-size:9px}.play-shell{width:min(100% - 22px,580px);padding-top:12px}.play-card{min-height:calc(100dvh - 83px);margin-top:14px;padding:22px 15px;border-radius:24px}.choice{min-height:80px;font-size:39px}.choices{gap:8px}.question-art{min-height:130px}.round-track{gap:4px}.parent-card{padding:23px 18px}}@media(orientation:landscape)and (max-height:560px){.play-shell{padding:10px 0}.play-card{min-height:calc(100dvh - 78px);margin:10px 0;padding:12px 20px}.play-card h1{margin:6px 0}.question-art{min-height:76px;font-size:64px}.choice{min-height:64px;font-size:35px}.hint-button{padding:8px 16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.sprite,.glyph{display:block;width:100%;height:100%;overflow:visible}.glyph{fill:none;color:#587d68}.brand-mark .glyph{width:28px;height:28px}.sound-toggle .glyph,.parent-trigger .glyph{width:24px;height:24px;margin:auto}.reward-mark{display:inline-grid;width:19px;height:19px;place-items:center}.reward-mark svg{width:100%;height:100%;fill:#e8b84f}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.game-icon-glyph{width:40px;height:40px;color:#558b6b}.game-icon-art{width:57px;height:57px;filter:drop-shadow(0 7px 5px #344e3423)}.icon-glint{z-index:2}.blue{background:#dfedf2}.builder-card{background:linear-gradient(140deg,#dcebf2,#e9f1dc)}.hero-dino .sprite{width:128px;height:128px}.hero-tree .sprite{width:64px;height:64px}.hero-flower{color:#e2ae62}.hero-cloud{width:64px;height:23px;border-radius:20px;background:#fff9e8}.hero-cloud:before,.hero-cloud:after{position:absolute;bottom:7px;width:28px;height:28px;border-radius:50%;background:inherit;content:""}.hero-cloud:before{left:10px}.hero-cloud:after{left:29px;width:22px;height:22px}.note-spark{color:#dcab54}.play-card .hint-button{display:inline-flex;align-items:center;gap:8px}.hint-button .glyph{width:22px;height:22px}.question-art{display:flex;width:100%;align-items:center;justify-content:center;gap:14px}.question-art .sprite{width:min(112px,22vw);height:min(112px,22vw)}.question-art.count-art{flex-wrap:wrap;align-content:center;gap:4px}.question-art.count-art .sprite{width:70px;height:70px}.choices{grid-template-columns:repeat(4,minmax(70px,1fr))}.choice{display:grid;place-items:center;padding:8px}.choice .sprite{width:min(67px,100%);height:auto;aspect-ratio:1}.count-objects{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}.count-objects .sprite{width:32px;height:32px}.choice b{color:#496b58;font-size:15px}.letter-tile{display:grid;width:82px;height:82px;place-items:center;border:5px solid #fff;border-radius:25px;background:linear-gradient(145deg,#a7cbbb,#6f9e86);color:#fff;font-size:52px;font-weight:900;box-shadow:0 8px 16px #38533c20}.memory-card{display:grid;place-items:center}.memory-art{width:76%;height:76%}.card-back{display:grid;width:56px;height:56px;place-items:center;border:2px solid #fff8;border-radius:18px;background:linear-gradient(145deg,#8fb8aa,#65927b);color:#fff;font-size:34px;font-weight:900}.confetti{display:grid;width:104px;height:104px;place-items:center;border-radius:32px;background:#f7e9bb;color:#d6a94d;font-size:78px}.big-stars{display:flex;gap:7px}.big-stars svg{width:37px;height:37px;fill:#e8b84f}.rest-moon{width:54px;height:54px;margin:auto;border-radius:50%;background:#f1d58e;box-shadow:inset -12px 4px #fff}.hero-3d-preview{position:absolute;z-index:1;inset:-8px -3% -13px -2%;overflow:hidden;border-radius:45%;background:linear-gradient(180deg,#c9e5e5,#d9edd3 64%,#92c590)}.hero-3d-preview.three-ready .builder-webgl{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}.hero-scene.preview-ready .hero-island,.hero-scene.preview-ready .hero-cloud,.hero-scene.preview-ready .hero-spark,.hero-scene.preview-ready .hero-wave{display:none}.hero-scene.preview-ready .hero-3d-preview{inset:-24px -2% -16px -5%;border-radius:0;background:transparent}.hero-scene.preview-ready .hero-badge{z-index:5}.welcome{min-height:270px;border:1px solid #d8e7d7;background:radial-gradient(ellipse at 86% 16%,#fff3ce 0 8%,transparent 8.5%),linear-gradient(110deg,#edf6e7,#e9f3e4 42%,#cde9df);box-shadow:0 20px 52px #385c4513,inset 0 1px #fff}.welcome-copy-block{max-width:470px}.welcome h1{font-size:clamp(34px,4.3vw,50px);text-shadow:0 2px #ffffff74}.welcome-copy{font-size:15px}.hero-note{border-color:#d3e4d5;background:#ffffffc9;box-shadow:0 6px 15px #3a62450d}.hero-badge{bottom:20px;padding:10px 15px;border:1px solid #ffffff;background:#ffffffdf;box-shadow:0 9px 20px #41624813;color:#537b60}.section-heading{margin-bottom:17px}.section-heading h2{font-size:23px;color:#2e4b3d}.game-count{padding:9px 14px;border-color:#e1e9db;background:linear-gradient(145deg,#fff,#f4f7ef);box-shadow:0 5px 13px #304c3508}.game-card{min-height:215px;padding:18px 18px 15px;border:1px solid #ffffffd1;border-radius:27px;box-shadow:0 9px 22px #304e3d10,inset 0 1px #fff}.game-card:after{top:-39px;right:-32px;width:110px;height:110px;border:1px solid #ffffffa8;background:#ffffff15}.game-icon-wrap{width:68px;height:68px;margin-bottom:12px;border:1px solid #ffffffd6;border-radius:23px;background:linear-gradient(145deg,#ffffffc9,#ffffff6e);box-shadow:0 8px 18px #304c350c,inset 0 1px #fff}.game-icon-glyph{width:44px;height:44px;color:#4f8865;filter:drop-shadow(0 4px 2px #2e644122)}.game-icon-art{width:63px;height:63px}.game-title{font-size:15px}.game-subtitle{font-size:10px}.game-progress{padding-top:12px;font-size:10px}.game-progress b{width:27px;height:27px;color:#548161;box-shadow:0 4px 10px #29433a0c}.builder-card{background:radial-gradient(circle at 88% 9%,#ffffff8a 0 9%,transparent 10%),linear-gradient(145deg,#d9ecdf,#d5e8ef)}.game-card:hover{box-shadow:0 17px 32px #233a321a}footer{margin-top:28px;font-size:11px}@media(max-width:700px){.welcome{min-height:223px;padding:21px 19px}.welcome h1{font-size:32px}.welcome-copy{font-size:11px}.hero-scene.preview-ready .hero-3d-preview{inset:-8px -4% -10px -9%}.game-card{min-height:183px;padding:14px 13px 12px;border-radius:23px}.game-icon-wrap{width:57px;height:57px;border-radius:19px}.game-icon-glyph{width:37px;height:37px}.game-icon-art{width:52px;height:52px}.game-title{font-size:13px}}.ornament{display:block;width:100%;height:100%;fill:currentColor}.note-spark{display:inline-block;width:12px;height:12px;color:#d8a64a}.hero-spark{width:19px;height:19px}.hero-spark .ornament{color:#e3ae46}.hero-flower{width:26px;height:26px;color:#dfaa60}.icon-glint{width:11px;height:11px}.icon-glint .ornament{color:#d1a34f}.footer-flower{width:14px;height:14px;color:#d5ad5c}.confetti svg{width:78px;height:78px;fill:#d6a94d}.builder-shell{width:min(100% - 32px,1180px);min-height:100dvh;margin:auto;padding:16px 0 22px}.builder-top{display:flex;align-items:center;gap:15px}.builder-top .back-btn,.sound-round{display:grid;min-width:54px;min-height:54px;place-items:center;border:1px solid #e5ece1;border-radius:19px;background:#fff;box-shadow:0 4px 14px #29433a0b}.builder-top .back-btn .glyph{width:30px;height:30px}.builder-heading{flex:1}.builder-heading h1{margin:4px 0 0;color:#304b3d;font-size:clamp(20px,3vw,28px);letter-spacing:-.7px}.builder-heading .mini-label{padding:0;border:0;background:none;color:#8d9d88;font-size:9px;letter-spacing:1.2px}.sound-round{width:54px}.sound-round .glyph{width:27px;height:27px}.builder-scene{position:relative;min-height:360px;margin:14px 0 16px;overflow:hidden;border:1px solid #dce8dc;border-radius:30px;background:linear-gradient(#cfe7e6 0 42%,#a8d0bf 42% 100%);box-shadow:0 14px 35px #304b3d12}.scene-sun{position:absolute;top:25px;right:11%;width:65px;height:65px;border-radius:50%;background:#ffe0a0;box-shadow:0 0 0 14px #ffedc145}.scene-hills{position:absolute;inset:auto -8% 18%;height:130px;border-radius:50% 50% 0 0;background:#93bd90;transform:rotate(-3deg)}.scene-hills:after{position:absolute;inset:25px -5% auto 40%;height:110px;border-radius:50% 50% 0 0;background:#80b48a;content:"";transform:rotate(8deg)}.scene-water{position:absolute;inset:auto -8% -55px;height:95px;border-radius:50% 50% 0 0;background:#79b8c4}.scene-label{position:absolute;z-index:1;top:18px;left:22px;display:flex;width:calc(100% - 44px);justify-content:space-between;color:#547c70;font-size:9px;font-weight:900;letter-spacing:1.2px}.scene-level{padding:7px 11px;border-radius:20px;background:#ffffffe0;letter-spacing:0}.build-board{position:relative;z-index:2;display:grid;width:min(72vw,630px);grid-template-columns:repeat(6,1fr);gap:5px;margin:74px auto 30px;padding:12px;border:1px solid #ffffffa0;border-radius:23px;background:#ffffff42;box-shadow:0 17px 30px #34553c20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transform:rotate(-2deg)}.builder-canvas{display:none}.build-board.three-ready{display:block;aspect-ratio:1.48;padding:0;overflow:hidden;border-radius:23px}.build-board.three-ready .build-cell{display:none}.build-board.three-ready .builder-webgl{position:absolute;inset:0;display:block;width:100%;height:100%;border-radius:inherit;cursor:pointer;touch-action:manipulation}.build-cell{position:relative;display:grid;min-width:0;aspect-ratio:1.2;place-items:center;overflow:visible;padding:0;border:1px solid #ffffff65;border-radius:10px;background:linear-gradient(145deg,#c5dda6,#a9ce90);box-shadow:inset 0 -4px #84b78055,0 2px 4px #456d3d15;transition:transform .12s,background .12s;touch-action:manipulation}.build-cell:nth-child(3n){background:linear-gradient(145deg,#cce1ad,#b3d198)}.build-cell:active{transform:scale(.94)}.build-cell.selected{z-index:3;outline:3px solid #fff0b0;outline-offset:1px}.build-cell.occupied{background:linear-gradient(145deg,#b5d493,#96c283)}.placed-art{position:absolute;z-index:1;bottom:6px;width:122%;height:122%;filter:drop-shadow(0 7px 3px #365d3433);transform:rotate(var(--item-turn,0deg))}.cell-plus{width:10px;height:10px;border:1px dashed #fff9;border-radius:50%;opacity:.6}.builder-controls{padding:18px 19px 13px;border:1px solid #ebeee4;border-radius:25px;background:#fff;box-shadow:0 8px 24px #34513c0a}.build-tray-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.build-tray-head .eyebrow{margin-bottom:4px}.build-tray-head p{margin:0;color:#87928b;font-size:11px}.mode-switch{min-height:40px;padding:0 14px;border:1px solid #e1eadb;border-radius:15px;background:#f3f7ee;color:#66856c;font-size:11px;font-weight:850}.build-tray{display:grid;grid-template-columns:repeat(10,minmax(65px,1fr));gap:8px;margin-top:13px;overflow-x:auto;padding:1px 1px 6px}.build-item{display:grid;min-width:65px;min-height:86px;justify-items:center;align-content:center;gap:2px;padding:6px 3px;border:1px solid #edf0e8;border-radius:17px;background:#f8faf5;color:#61766a;font-size:9px;font-weight:800;white-space:nowrap}.build-item.active{border-color:#94bf92;background:#eaf4e4;box-shadow:0 0 0 2px #d9ebd4;color:#3f7654}.tray-art{width:53px;height:53px}.builder-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.build-actions{display:flex;gap:6px}.tool-button{display:flex;min-height:44px;align-items:center;gap:5px;padding:0 11px;border:1px solid #e8ede3;border-radius:14px;background:#fff;color:#71877a;font-size:10px;font-weight:800}.tool-button:disabled{opacity:.45;cursor:default}.tool-button .glyph{width:19px;height:19px}.goal-track{display:flex;gap:8px}.goal-dot{display:grid;width:37px;height:37px;place-items:center;border:1px solid #e8ede3;border-radius:13px;background:#f7f9f3;opacity:.55}.goal-dot .sprite{width:29px;height:29px}.goal-dot.current{border-color:#e9c874;background:#fff3ce;opacity:1}.goal-dot.done{border-color:#a8d0a7;background:#e7f3e4;opacity:1}.builder-feedback{min-height:20px;margin:11px 0 0;color:#548363;font-size:12px;font-weight:850;text-align:center}@media(max-width:700px){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-shell{width:min(100% - 20px,620px);padding-top:10px}.builder-scene{min-height:300px;margin-top:10px;border-radius:24px}.build-board{width:min(91vw,510px);gap:4px;margin-top:66px;padding:9px}.build-board.three-ready{width:min(91vw,510px);aspect-ratio:1.35;padding:0}.build-cell{border-radius:8px}.placed-art{width:130%;height:130%;bottom:4px}.builder-controls{padding:14px 12px 10px;border-radius:21px}.build-tray{display:flex;gap:7px}.build-item{min-width:68px}.builder-bottom{align-items:flex-start;flex-direction:column}.build-actions{width:100%;justify-content:space-between}.goal-track{align-self:center}.tool-button{flex:1;justify-content:center}.question-art .sprite{width:min(86px,20vw);height:min(86px,20vw)}.choices{grid-template-columns:repeat(2,minmax(80px,1fr));width:min(100%,390px)}}@media(orientation:landscape)and (max-height:560px){.builder-shell{width:min(100% - 24px,1240px);padding:8px 0}.builder-top .back-btn,.sound-round{min-width:44px;min-height:44px}.builder-scene{float:left;width:58%;min-height:calc(100dvh - 88px);margin:9px 2% 0 0}.build-board{width:min(48vw,570px);margin-top:60px}.build-board.three-ready{width:min(48vw,570px);aspect-ratio:1.5}.builder-controls{overflow:hidden;margin-top:9px;padding:12px}.build-tray{grid-template-columns:repeat(5,minmax(65px,1fr));max-height:218px;overflow-y:auto}.builder-bottom{margin-top:6px}}.builder-shell{width:min(100% - 36px,1320px);padding-top:20px;background:radial-gradient(ellipse at 50% 20%,#f4fbff 0,#f8faf2 52%,#f7f7ed)}.builder-top{gap:17px}.builder-top .back-btn{border:0;background:linear-gradient(145deg,#fff,#e9f2e4);box-shadow:0 7px 18px #354d3a14,inset 0 1px #fff}.builder-top .back-btn .glyph{color:#4e8a69}.builder-heading .mini-label{color:#719879;letter-spacing:1.8px}.builder-heading h1{font-size:clamp(23px,3.2vw,34px);color:#294a3d}.builder-level{display:flex;align-items:center;gap:9px;padding:9px 13px 9px 15px;border:1px solid #e2ebdb;border-radius:18px;background:#ffffffbc;color:#829184;font-size:9px;font-weight:900;letter-spacing:.8px}.builder-level b{display:grid;width:29px;height:29px;place-items:center;border-radius:11px;background:#dcebd1;color:#4b7e5a;font-size:13px}.sound-round{border-color:#e7ebdd;box-shadow:0 7px 18px #354d3a12}.builder-scene{min-height:590px;margin:18px 0 19px;overflow:hidden;border:1px solid #bfdfdb;border-radius:37px;background:radial-gradient(ellipse at 78% 24%,#fff1bf 0 5%,transparent 5.5%),linear-gradient(180deg,#84c9db,#b9e2df 43%,#9bcf9c 44%,#7dbd87);box-shadow:0 26px 65px #345d541c,inset 0 1px #ffffffb3}.builder-scene:before{position:absolute;z-index:1;top:35px;left:12%;width:68px;height:23px;border-radius:30px;background:#ffffffbc;box-shadow:19px -11px 0 1px #ffffffa8,40px 0 0 -2px #ffffffa8;content:"";opacity:.85}.builder-scene:after{position:absolute;z-index:1;top:112px;right:9%;width:47px;height:16px;border-radius:25px;background:#ffffffa8;box-shadow:14px -8px #ffffff92,30px 1px 0 -2px #ffffff92;content:""}.scene-sun{top:38px;right:18%;width:76px;height:76px;background:#ffe4a1;box-shadow:0 0 0 15px #fff0c540,0 0 55px #fff0b8a0}.scene-hills{z-index:1;inset:auto -12% 13% -10%;height:185px;border-radius:49% 51% 0 0;background:linear-gradient(180deg,#8fc68c,#6fae7e)}.scene-hills:after{top:22px;left:34%;height:150px;background:linear-gradient(180deg,#78b77e,#62a575)}.scene-hills.hill-back{z-index:0;bottom:20%;height:160px;background:linear-gradient(180deg,#aad29b,#91c58c);transform:rotate(4deg)}.scene-hills.hill-front{bottom:11%;height:160px;background:linear-gradient(180deg,#8cc787,#72b47f);transform:rotate(-4deg)}.scene-label{z-index:4;top:22px;left:26px;color:#527f79;font-size:9px;letter-spacing:1.7px}.scene-level{padding:9px 14px;border:1px solid #ffffffbd;background:#ffffffd9;color:#608a77;box-shadow:0 6px 15px #3c6c5814}.builder-mission{position:absolute;z-index:4;top:74px;left:25px;display:flex;width:min(295px,42%);min-height:102px;align-items:center;gap:12px;overflow:hidden;padding:13px 15px;border:1px solid #ffffffd9;border-radius:24px;background:linear-gradient(130deg,#fffffff0,#f4fbf0df);box-shadow:0 14px 32px #355f501d,inset 0 1px #fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mission-art-wrap{display:grid;width:65px;height:65px;flex:0 0 65px;place-items:center;overflow:hidden;border:1px solid #ffffff;border-radius:21px;background:linear-gradient(145deg,#e0f0dc,#c9e5db);box-shadow:inset 0 -5px #93c59b30}.mission-art{width:57px;height:57px}.mission-town{width:45px;height:45px;color:#59886b}.mission-copy{position:relative;z-index:1;display:grid;gap:3px}.mission-copy small{color:#92a18f;font-size:8px;font-weight:900;letter-spacing:1.1px;text-transform:uppercase}.mission-copy strong{color:#395e49;font-size:13px;font-weight:950}.mission-copy>span{color:#8d9b91;font-size:9px}.mission-glow{position:absolute;right:-18px;bottom:-35px;width:95px;height:95px;border-radius:50%;background:#d9efbb88;filter:blur(8px)}.scene-glint{position:absolute;z-index:1;width:8px;height:8px;border-radius:50%;background:#fff8d6;box-shadow:0 0 0 5px #fff5ca40,0 0 24px #fff3c6}.glint-a{top:182px;right:30%}.glint-b{top:123px;right:39%;width:5px;height:5px}.build-board{z-index:3;width:min(72vw,760px);margin-top:173px;margin-bottom:27px;padding:14px;gap:6px;border:1px solid #ffffffc9;border-radius:29px;background:linear-gradient(145deg,#ffffff6b,#e8f8df54);box-shadow:0 24px 50px #355a4529,inset 0 1px #ffffffd9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transform:rotate(-1deg)}.build-cell{border:1px solid #f2ffdcad;border-radius:13px;background:linear-gradient(150deg,#c7e6a8,#99cd8e);box-shadow:inset 0 -5px #69a87642,0 5px 10px #416a4140}.build-cell:nth-child(3n){background:linear-gradient(145deg,#d1e9ac,#afd38e)}.build-cell.occupied{background:linear-gradient(145deg,#c5e8a3,#98ca87)}.build-board.three-ready{width:min(72vw,760px);margin-top:173px;aspect-ratio:1.72;padding:0;border-radius:29px;background:#8ccbd2}.builder-webgl{background:linear-gradient(180deg,#8acfe2 0,#d4eee0 80%,#9ac888)}.scene-water{z-index:2;bottom:-88px;height:142px;background:repeating-linear-gradient(175deg,#6ab3c2 0 17px,#79c1c8 17px 31px,#69adbd 31px 44px);opacity:.86}.builder-controls{position:relative;z-index:5;padding:21px 23px 16px;border:1px solid #e8ecdf;border-radius:29px;background:linear-gradient(155deg,#fff,#fbfcf7);box-shadow:0 17px 40px #34513c11,inset 0 1px #fff}.build-tray-head .eyebrow{color:#739576;font-size:9px;letter-spacing:1.8px}.build-tray-head p{color:#89968b;font-size:11px}.mode-switch{min-height:44px;padding:0 17px;border:1px solid #d8e9d3;border-radius:16px;background:linear-gradient(140deg,#f1f8e9,#e4f1e4);color:#4f805e;box-shadow:inset 0 1px #fff}.build-tray{grid-template-columns:repeat(10,minmax(74px,1fr));gap:10px;margin-top:16px}.build-item{min-width:74px;min-height:101px;gap:3px;border:1px solid #e9eee4;border-radius:20px;background:linear-gradient(150deg,#fff,#f4f7ef);color:#5d7464;box-shadow:0 5px 12px #344e3508,inset 0 1px #fff;transition:transform .16s,border-color .16s,box-shadow .16s}.build-item:active{transform:scale(.95)}.build-item.active{border-color:#81b77c;background:linear-gradient(145deg,#f2fae8,#dfefdc);box-shadow:0 0 0 3px #cde5c8,0 10px 20px #6e9e6221,inset 0 1px #fff;color:#3d7653}.tray-art{width:63px;height:63px;filter:drop-shadow(0 7px 4px #39544021)}.build-actions{gap:9px}.tool-button{min-height:47px;gap:7px;padding:0 14px;border-color:#e6ebdf;border-radius:16px;background:linear-gradient(145deg,#fff,#f7f9f4);box-shadow:0 4px 10px #304c3508;color:#5c7965}.goal-track{gap:9px}.goal-dot{width:43px;height:43px;border-radius:15px;background:#f4f7ef}.goal-dot .sprite{width:34px;height:34px}.goal-dot.current{border-color:#efcf77;background:linear-gradient(145deg,#fff5d5,#ffebaf);box-shadow:0 0 0 3px #fff0c3,0 7px 15px #ae853020}.goal-dot.done{border-color:#9dc998;background:linear-gradient(145deg,#eff9df,#dbefd9)}.builder-feedback{min-height:21px;margin-top:13px;color:#4d8a64;font-size:12px}@media(max-width:700px){.builder-shell{width:min(100% - 18px,620px);padding-top:10px}.builder-top{gap:9px}.builder-top .back-btn,.sound-round{min-width:47px;min-height:47px;border-radius:16px}.builder-level{gap:5px;padding:7px 8px;font-size:7px;letter-spacing:.3px}.builder-level b{width:25px;height:25px}.builder-heading h1{font-size:20px}.builder-heading .mini-label{font-size:7px}.builder-scene{min-height:415px;margin:11px 0 13px;border-radius:26px}.scene-label{top:15px;left:15px;width:calc(100% - 30px);font-size:7px}.scene-level{padding:7px 10px}.builder-mission{top:56px;left:13px;width:min(250px,68%);min-height:76px;gap:8px;padding:8px 10px;border-radius:19px}.mission-art-wrap{width:51px;height:51px;flex-basis:51px;border-radius:16px}.mission-art{width:47px;height:47px}.mission-copy small{font-size:7px}.mission-copy strong{font-size:11px}.mission-copy>span{font-size:8px}.scene-sun{top:56px;right:10%;width:53px;height:53px}.scene-glint{display:none}.build-board{width:min(91vw,510px);margin-top:150px;margin-bottom:22px;padding:9px;gap:4px;border-radius:21px}.build-board.three-ready{width:min(91vw,510px);margin-top:150px;aspect-ratio:1.42;border-radius:21px}.build-cell{border-radius:8px}.placed-art{width:130%;height:130%;bottom:4px}.builder-controls{padding:15px 12px 11px;border-radius:23px}.build-tray-head .eyebrow{font-size:8px}.build-tray-head p{font-size:9px}.mode-switch{min-height:38px;padding:0 12px;font-size:10px}.build-tray{display:flex;gap:7px;margin-top:12px}.build-item{min-width:72px;min-height:88px;border-radius:17px;font-size:8px}.tray-art{width:55px;height:55px}.builder-bottom{gap:9px;margin-top:8px}.build-actions{gap:6px}.tool-button{min-height:42px;padding:0 8px;font-size:9px}.goal-dot{width:37px;height:37px;border-radius:12px}.goal-dot .sprite{width:29px;height:29px}}@media(orientation:landscape)and (max-height:560px){.builder-scene{min-height:calc(100dvh - 90px)}.builder-mission{top:58px}.build-board,.build-board.three-ready{margin-top:132px}}
