@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#254e43;background:#e9f3e7;font-synthesis:none;--ink:#254e43;--green:#2b694f;--cream:#fffcf0;--muted:#728778}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button,a,select,input{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #e9ad31;outline-offset:4px}button:not(:disabled):hover{filter:brightness(1.035);transform:translateY(-2px)}button:not(:disabled):active{transform:translateY(1px)}button{transition:transform .15s,filter .15s}a{color:inherit;text-decoration:none}#game{position:absolute!important;inset:0;width:100%;height:100%;overflow:hidden;outline:none;touch-action:none}#game canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.hud-canvas{pointer-events:none;z-index:2}veno-shell{display:none!important}#app{position:fixed;inset:0;pointer-events:none;z-index:10}#app>*{pointer-events:auto}.topbar{height:94px;padding:22px 4.8%;display:flex;justify-content:space-between;align-items:center;position:absolute;inset:0 0 auto;z-index:4}.wordmark{font-family:Outfit,sans-serif;font-size:27px;letter-spacing:1px;font-weight:900;display:flex;align-items:center;gap:10px}.wordmark .o{color:#8bba4b}.wordmark small{font-family:DM Sans;font-size:10px;letter-spacing:2.7px;font-weight:600;border-left:1px solid #b6cbbb;padding:4px 0 4px 14px;margin-left:5px}.top-actions{display:flex;gap:9px;align-items:center}.pill,.icon-button{border:1px solid #c6d8c9;background:#ffffff70;border-radius:50px;min-height:44px;padding:10px 18px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:9px}.icon-button{width:44px;padding:10px;font-size:18px}.language-select{max-width:150px;border:0;background:transparent;color:var(--ink);font-size:12px;cursor:pointer;outline-offset:10px}.home{position:absolute;inset:0;pointer-events:none!important}.home-content{position:absolute;left:8.2%;top:19%;width:36%;max-width:520px;pointer-events:auto}.eyebrow{font-size:10px;font-weight:800;letter-spacing:3px;color:#628270;display:flex;gap:10px;align-items:center}.eyebrow:before{content:"";width:24px;height:2px;background:#8bb19a}.logo-crop{position:relative;width:100%;aspect-ratio:1.8;overflow:hidden;mix-blend-mode:multiply;margin:21px 0 5px}.logo-crop img{mix-blend-mode:multiply;position:absolute;width:113.2%;max-width:none;left:-10.5%;top:-42%}.tagline{font-size:clamp(16px,1.45vw,22px);line-height:1.55;max-width:360px;color:#688272;margin:18px 0 24px}.primary{display:flex;align-items:center;justify-content:center;gap:20px;border-radius:15px;background:#2c684e;color:#fffced;font-family:Outfit,Arial,sans-serif;min-height:60px;padding:16px 28px;font-size:20px;font-weight:600;box-shadow:0 5px #1e513d,0 12px 24px #37684b1a}.primary .arrow{font-size:23px;margin-left:auto}.home-content .primary{width:92%;max-width:355px}.sub-link{display:inline-flex;align-items:center;gap:10px;margin-top:24px;font-size:13px;font-weight:600;color:#587965;padding:5px 0;background:none}.home-cards{position:absolute;bottom:6.5%;left:8.2%;right:8.2%;display:flex;gap:15px;pointer-events:auto;max-width:1000px}.home-card{flex:1;display:flex;gap:15px;align-items:center;min-height:82px;border-radius:18px;border:1px solid #ffffffb0;background:#fffdf2d9;padding:16px 20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left;box-shadow:0 5px 20px #4a765510}.card-icon{font-size:26px;width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#ecf1da}.home-card:nth-child(2) .card-icon{background:#f9e7cf}.home-card:nth-child(3) .card-icon{background:#dfece6}.home-card strong{font:600 16px Outfit,sans-serif;display:block}.home-card small{display:block;font-size:10px;color:#789080;margin-top:5px}.home-card .chevron{margin-left:auto;color:#87a38d}.scene-label{position:absolute;right:10%;top:72%;font-size:10px;letter-spacing:3px;font-weight:700;color:#688571}.footer{position:absolute;bottom:15px;left:4.8%;right:4.8%;display:flex;justify-content:space-between;font-size:9px;color:#769281;letter-spacing:1.3px;pointer-events:none!important}.modal-wrap{position:absolute;inset:0;background:#e8efdf96;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;place-items:center;padding:85px 20px 35px;overflow:auto}.modal{width:min(820px,100%);max-height:100%;overflow:auto;background:#fffdf3;border:1px solid #fff;border-radius:30px;padding:32px;box-shadow:0 24px 90px #2a4d3c22}.modal.narrow{max-width:480px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:15px}.modal h1{font:700 clamp(24px,3vw,34px) "Outfit",sans-serif;margin:0}.modal p{color:#78907f;line-height:1.6;font-size:14px}.modal .eyebrow{margin-bottom:9px}.close{background:#eef1e5;border-radius:50%;min-width:42px;height:42px;font-size:24px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.mode-card{padding:24px 18px;border:1px solid #dce6d7;border-radius:20px;background:#f6f7eb;text-align:left;min-height:172px}.mode-card:nth-child(2n){background:#f9edd9}.mode-card:nth-child(3n){background:#eaf0f3}.mode-card .mode-icon{font-size:31px;display:block;margin-bottom:13px}.mode-card strong{font:600 20px Outfit,sans-serif}.mode-card p{font-size:12px;margin:8px 0 0}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #e6ebdf}.row>span{font-size:14px;font-weight:600}.row select{max-width:50%;background:#edf2e5;border:1px solid #d9e3d2;border-radius:10px;color:var(--ink);padding:10px}.toggle{appearance:none;width:43px;height:25px;background:#ccd8c8;border-radius:20px;position:relative;cursor:pointer;flex-shrink:0}.toggle:before{content:"";position:absolute;left:4px;top:4px;width:17px;height:17px;border-radius:50%;background:#fff;transition:left .12s}.toggle:checked{background:#397555}.toggle:checked:before{left:22px}.button-row{display:flex;gap:12px;margin-top:24px}.button-row>*{flex:1}.secondary{border-radius:13px;border:1px solid #d2dfcd;background:#f1f4e7;min-height:48px;padding:12px 20px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.stage-world{margin-top:24px}.stage-world h2{font:600 20px Outfit,sans-serif;margin:0 0 12px}.stages{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.stage{aspect-ratio:1;border:1px solid #d9e3d0;background:#f0f4e3;border-radius:16px;font-size:23px;font-weight:700}.stage small{display:block;font-size:10px;color:#b69031;margin-top:6px}.stage.unlocked{background:#e0ecd5}.tutorial-step{display:flex;align-items:center;gap:18px;margin:20px 0}.tutorial-step b{font-size:30px;width:48px;flex-shrink:0;text-align:center}.tutorial-step p{margin:0;color:#56755e}.result{text-align:center}.result .stars{font-size:38px;color:#e7b749;letter-spacing:10px;margin:12px 0 20px}.result h1{font-size:30px}.result-score{font:800 65px Outfit,sans-serif;margin:12px 0 5px}.result-stats{display:grid;grid-template-columns:repeat(2,1fr);text-align:left;gap:15px;background:#f0f3e5;padding:20px;border-radius:16px;margin-top:20px}.result-stats small{display:block;font-size:11px;color:#7d907b;margin-bottom:6px}.result-stats b{font-size:20px}.result .primary{width:100%;margin-top:24px}.muted{color:#879681;font-size:12px}.ticket{background:#f8e9bf;color:#96712e;border-radius:20px;padding:8px 14px;font-size:12px;font-weight:700}.swatch{height:62px;display:grid;place-items:center;font-size:37px;margin-bottom:8px}.skin-card{border:1px solid #dae4d2;border-radius:17px;padding:16px;text-align:center;background:#f3f5e9}.skin-card button{width:100%;margin-top:10px}.skin-card h3{margin:0;font-size:13px}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);background:#244f40;color:#fff;border-radius:15px;padding:15px 24px;font-size:13px;z-index:50;max-width:90%;text-align:center}.game-controls{position:absolute;top:24px;left:4%;right:4%;display:flex;justify-content:space-between;pointer-events:none!important}.game-controls>div{display:flex;gap:8px;pointer-events:auto}.game-controls .pill{font-size:11px}.loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font:700 32px Outfit,sans-serif;letter-spacing:7px;gap:30px}.loading span{font-size:10px;letter-spacing:8px}.demo-controls{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:8px;opacity:0;transition:opacity .2s}.demo-controls:focus-within,body:hover .demo-controls{opacity:1}.clean .demo-controls{display:none}.record-progress{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:30}.stage-info{display:flex;justify-content:center;gap:22px;padding:18px;background:#f1f4e6;border-radius:15px;font-weight:700}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.studio-art{background:#e4edde;border-radius:20px;padding:30px 10px;display:flex;flex-direction:column;justify-content:center}.studio-art .logo-crop{margin:0}.studio-art p{text-align:center}.help-text{font-size:11px!important;color:#879581!important}.save-warning{position:fixed;bottom:8px;left:15px;font-size:10px;z-index:20;color:#aa6850}.play-legend{position:absolute;bottom:25px;left:30px;font-size:11px;color:#6f8977}.link-small{background:transparent;font-size:11px;text-decoration:underline;padding:10px}.error-screen{margin:10vh auto;padding:30px;width:min(90%,600px);background:#fff9e9;border-radius:20px;pointer-events:auto}input[type=range]{accent-color:#367357;max-width:160px}.primary.small{min-height:48px;font-size:16px;padding:12px 20px}@media(min-width:1800px){.home-content{top:22%}.home-cards{max-width:1150px}.topbar{padding-top:35px}.home-content .primary{max-width:430px}.tagline{font-size:25px;max-width:430px}}@media(max-width:850px){.topbar{padding:18px 5%;height:78px}.wordmark{font-size:23px}.wordmark small{display:none}.home-content{left:6%;width:40%;top:23%}.home-cards{left:6%;right:6%;bottom:7%;gap:10px}.home-card{padding:13px;gap:9px}.home-card small{display:none}.home-card strong{font-size:14px}.card-icon{width:34px;height:34px;font-size:23px}.scene-label{display:none}.home-content .primary{font-size:17px}.tagline{font-size:15px}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-aspect-ratio:4/5){.topbar{height:72px}.top-actions .pill{padding:8px 10px}.top-actions{gap:6px}.language-select{max-width:110px}.home-content{left:8%;width:84%;top:44%;text-align:center;max-width:none}.home-content .eyebrow{display:none}.logo-crop{width:76%;margin:0 auto;max-height:150px}.tagline{font-size:15px;max-width:100%;margin:9px 0 16px}.home-content .primary{width:80%;margin:auto;min-height:52px;font-size:19px}.sub-link{margin-top:16px}.home-cards{left:6%;right:6%;bottom:6%;gap:8px}.home-card{min-height:72px;padding:10px 7px;display:flex;flex-direction:column;gap:6px;text-align:center;border-radius:15px}.home-card .chevron{display:none}.card-icon{background:transparent!important;width:auto;height:25px;font-size:22px}.home-card strong{font-size:11px}.home-card small{display:none}.footer{font-size:8px;bottom:12px}.modal-wrap{padding:76px 12px 20px}.modal{padding:22px 18px;border-radius:24px}.modal h1{font-size:26px}.mode-card{padding:17px 14px;min-height:165px}.mode-card strong{font-size:18px}.mode-card p{font-size:11px}.stages{grid-template-columns:repeat(3,1fr)}.stage{aspect-ratio:1.3}.studio-grid{grid-template-columns:1fr}.studio-art{display:none}.game-controls{top:17px}.game-controls .pill{font-size:10px;padding:8px 12px}.result-score{font-size:55px}.play-legend{display:none}.modal .button-row{flex-wrap:wrap}.primary{font-size:17px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}#game [tabindex]{outline:none}.logo-crop img{filter:brightness(1.12)}.logo-crop{border-radius:22px}
