@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fredoka:wght@400;500;600;700&display=swap');
:root{--ink:#243e48;--muted:#728083;--orange:#ed6a32;--paper:#f8f5eb;--blue:#247eb4;--line:#e2e2d5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,canvas:focus-visible,input:focus-visible{outline:3px solid #247eb4;outline-offset:4px}header{height:94px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4.5%}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:800;line-height:1.2;letter-spacing:1.3px}.brand b{display:block;font-size:22px;letter-spacing:.2px;font-family:Fredoka,sans-serif}.brand-icon{background:var(--orange);border-radius:13px;transform:rotate(-8deg);color:white;font-size:42px;width:47px;height:49px;text-align:center;line-height:44px}.header-right{display:flex;align-items:center;gap:12px}.play-label{font-size:11px;font-weight:800;letter-spacing:1.8px;margin-right:25px}.round{border:1px solid var(--line);border-radius:25px;background:transparent;padding:11px 16px;font-size:14px;font-weight:600}.icon-only{width:42px;padding:11px 0}main{max-width:1600px;margin:auto;padding:32px 4.5% 20px}.title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#758482}h1{font-family:Fredoka,sans-serif;font-size:42px;font-weight:500;line-height:1.1;margin:8px 0 0;letter-spacing:-1.2px}em{font-style:normal;color:var(--orange)}.stats{display:flex;gap:17px;align-items:center}.stats strong{display:block;font-family:Fredoka,sans-serif;font-size:27px;font-weight:500}.stats span:not(#flips){display:block;font-size:11px;color:#748183}.stats small{font-size:18px;color:#96a19f}.stats-divider{height:36px;width:1px;background:var(--line);margin:0 4px}.coin-icon{width:42px;height:42px;background:#ffcf53;border:3px solid #f1b52e;border-radius:50%;box-shadow:inset 0 0 0 3px #ffdf7e;color:#b4800f;display:grid;place-items:center;font-size:24px;transform:rotate(-12deg)}.flip-ring{border:4px solid #dce3d9;border-radius:50%;height:40px;width:40px;display:grid;place-items:center;font-size:25px;color:#709787}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 247px;gap:21px}.play-panel{position:relative;background:#c8e6ef;border-radius:19px;overflow:hidden;min-height:430px;border:1px solid #afcfd4;display:flex;flex-direction:column}.world-top{position:absolute;z-index:2;top:16px;left:20px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:10px}.world-label{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#426c78;display:flex;align-items:center;gap:7px}.world-label i{height:7px;width:7px;border-radius:50%;background:#4c9f89}.world-top>div{display:flex;gap:6px}.world-btn{border:1px solid #ffffff90;background:#ffffffa0;backdrop-filter:blur(10px);border-radius:9px;font-size:11px;font-weight:700;padding:8px 11px}.world-btn span{font-size:9px;margin-left:5px;opacity:.65}.world-btn.active{background:#f6fbec;color:#417b5e}.world-btn[aria-pressed=true]#scope{background:#ffe8b8}#game{display:block;width:100%;height:420px;flex:1;touch-action:none}.world-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;background:#fcfcf0bd;backdrop-filter:blur(8px);border-top:1px solid #ffffff80;padding:13px 19px;font-size:11px}.gentle{color:#69847b}#toast{position:absolute;bottom:60px;left:50%;transform:translateX(-50%);background:#fffef4ed;box-shadow:0 3px 15px #3e544215;color:#4f7067;padding:10px 19px;border-radius:30px;font-size:12px;text-align:center;pointer-events:none;white-space:nowrap;transition:opacity .3s}.toybox{background:#fefdf7;border:1px solid var(--line);border-radius:19px;padding:21px 17px 13px}.toybox .eyebrow{font-size:9px;letter-spacing:1.4px}.toybox h2{font-family:Fredoka,sans-serif;font-size:24px;font-weight:500;margin:5px 0}.toybox h2 span{float:right;color:var(--orange)}.toybox p{font-size:11px;color:var(--muted);margin:6px 0 17px}.tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tools button{border:1px solid #e5e8de;background:#f8f8f0;border-radius:11px;min-height:81px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:3px;transition:.15s}.tools button:hover{transform:translateY(-2px);border-color:#e3a270}.tools button>span{font-size:26px;line-height:29px;color:#ee8551}.tools button:nth-child(2)>span{color:#4594b5}.tools button:nth-child(3)>span{color:#efb63d}.tools button:nth-child(4)>span{color:#6a9c86}.tools button:nth-child(5)>span{color:#c690c3;text-shadow:4px 1px #e3b0d4,-3px 3px #c4a1d8}.tools button b{font-size:12px;font-weight:700}.tools button small{font-size:9px;color:#8b938b}.tools button.selected{background:#fff0df;border-color:#f2af7d;box-shadow:inset 0 0 0 1px #f2af7d}.toybox-footer{font-size:10px;color:#8a958a;margin-top:16px;text-align:center}.toybox-footer span{font-size:20px;color:#99b098;vertical-align:middle;margin-right:5px}.undo{width:100%;font-size:11px;border:0;background:none;margin-top:10px;color:#567e79}.undo:disabled{opacity:.4;cursor:default}.section-label{display:flex;align-items:center;gap:13px;margin:26px 0 12px}.section-label h2{font-family:Fredoka,sans-serif;font-size:20px;font-weight:500;margin:0}.section-label>span{font-size:11px;color:#929991}#vehicle-list{display:grid;grid-template-columns:repeat(6,1fr);gap:11px}.vehicle-card{position:relative;text-align:left;display:flex;align-items:center;gap:7px;background:#fffdf8;border:1px solid var(--line);border-radius:12px;padding:12px 8px;min-width:0;transition:.2s}.vehicle-card:hover{transform:translateY(-3px)}.vehicle-card.selected{border-color:#eaa66a;background:#fff0db;box-shadow:inset 0 0 0 1px #eaa66a}.vehicle-card.selected:after{content:'✓';position:absolute;right:7px;top:5px;font-size:9px;color:#c27235}.vehicle-card canvas{width:60px;height:44px;min-width:0}.vehicle-card b{display:block;font-size:12px}.vehicle-card small{font-size:9px;display:block;color:#808b87;margin-top:3px;white-space:nowrap}.controls{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:15px}.key-hints{display:flex;align-items:center;gap:24px;color:#7e8b87;font-size:11px}.key-hints>span{display:flex;align-items:center;gap:5px}kbd{display:inline-block;border:1px solid #dadfd6;border-bottom-width:3px;background:#fffef8;padding:5px 8px;border-radius:5px;font:10px 'DM Sans',sans-serif;color:#637b77}.reward-hint b{color:#af954f;font-weight:500}.music-button{display:flex;align-items:center;gap:11px;border:0;background:none;text-align:left;font-size:11px}.music-button small{display:block;font-size:9px;color:#8b978e;margin-top:3px}.spotify-icon{font-size:26px;background:#dce9d8;color:#527a52;width:32px;height:32px;line-height:28px;border-radius:50%;text-align:center}.welcome{position:absolute;inset:0;z-index:3;background:#e1f0e125;display:flex;align-items:center;padding-left:7%}.welcome.hidden{display:none}.welcome-card{padding:24px 29px 22px;background:#fffdf2f5;border:2px solid white;box-shadow:0 12px 40px #31574915;border-radius:19px;transform:rotate(-2deg);width:290px}.hello-sticker{font-size:9px;letter-spacing:1.8px;font-weight:800;color:#799287}.welcome h2{font:500 46px/.98 Fredoka,sans-serif;margin:15px 0}.welcome p{font-size:13px;line-height:1.6;color:#7e9187;margin-bottom:19px}.primary{display:flex;justify-content:space-between;align-items:center;gap:16px;text-decoration:none;border:0;background:var(--orange);color:white;font-size:15px;font-weight:700;border-radius:10px;padding:14px 18px;box-shadow:0 3px #c85129}.welcome .primary{width:100%}.voice-note{display:block;text-align:center;font-size:9px;color:#8b968b;margin-top:13px}.touch-controls{display:flex;justify-content:center;gap:10px;margin-top:16px}.touch-controls button{min-width:65px;background:#fffdf5;border:1px solid #d9dfd2;border-bottom-width:3px;border-radius:12px;padding:9px 20px;font-size:16px;touch-action:none}.touch-controls #flip{background:#fbe7c6;color:#b07131}dialog{border:1px solid #e0e4d9;background:var(--paper);border-radius:20px;color:var(--ink);max-width:510px;width:calc(100% - 32px);padding:35px;box-shadow:0 20px 90px #29484b44}dialog::backdrop{background:#17353d80;backdrop-filter:blur(5px)}dialog h2{font:500 31px/1.1 Fredoka,sans-serif;margin:12px 0 18px}dialog p,dialog li{font-size:14px;line-height:1.6;color:#667d78}dialog ol{padding-left:19px}dialog li{margin-bottom:9px}dialog label{font-size:12px}dialog .close{position:absolute;top:10px;right:13px;background:none;border:none;font-size:25px}dialog .music-note,dialog #voice-status{font-size:11px}.playlist-form{display:flex;gap:6px;margin-top:8px}.playlist-form input{min-width:0;flex:1;padding:10px;border:1px solid #c9d5ca;border-radius:7px;font:12px inherit}.playlist-form button{background:#527e61;border:0;border-radius:7px;color:white;padding:8px 15px}iframe{border:0;width:100%;border-radius:12px;margin-top:12px}
@media(min-width:1600px){#game{height:500px}}@media(max-width:1100px){.game-layout{grid-template-columns:minmax(0,1fr) 220px}.play-label{display:none}.vehicle-card{flex-direction:column;text-align:center;gap:2px}.vehicle-card canvas{width:70px}.key-hints{gap:12px}.world-label{font-size:8px}.world-btn{font-size:10px;padding:7px}.gentle{display:none}}@media(max-width:760px){header{height:75px;padding:0 5%}.brand b{font-size:18px}.brand-icon{width:38px;height:40px;font-size:34px;line-height:37px}.brand{font-size:10px}.round{padding:9px 11px}.round span{display:none}main{padding:24px 4%}.title-row{gap:15px}.eyebrow{font-size:8px}h1{font-size:29px}.stats{gap:8px}.stats strong{font-size:21px}.stats span:not(#flips){font-size:8px}.stats .coin-icon{width:30px;height:30px;font-size:18px}.stats-divider{margin:0;height:27px}.flip-ring{display:none}.game-layout{grid-template-columns:1fr;gap:15px}.play-panel{min-height:370px}#game{height:370px}.world-top{left:10px;right:10px;top:10px}.world-label{font-size:7px;letter-spacing:.6px}.world-btn{padding:7px 6px;font-size:9px}.toybox{padding:15px}.toybox-heading{display:inline-block}.toybox .eyebrow{display:none}.toybox h2{font-size:21px;margin:0}.toybox h2 span{display:none}.toybox p{display:inline-block;float:right;margin:7px 0;font-size:10px}.tools{grid-template-columns:repeat(6,1fr);gap:5px;margin-top:10px}.tools button{min-height:66px}.tools button b{font-size:9px}.tools button small{display:none}.toybox-footer{display:none}.undo{margin-top:8px}.section-label{margin-top:22px}#vehicle-list{grid-template-columns:repeat(3,1fr);gap:7px}.vehicle-card{flex-direction:row;padding:9px 7px;text-align:left}.vehicle-card canvas{width:53px;height:38px}.vehicle-card b{font-size:11px}.vehicle-card small{font-size:8px}.key-hints{flex-wrap:wrap;gap:8px;font-size:9px}.reward-hint{display:none!important}.music-button{font-size:10px;gap:6px}.music-button small{font-size:8px}.controls{margin-top:15px}.welcome-card{width:230px;padding:20px}.welcome h2{font-size:37px}.welcome{padding-left:6%}#toast{font-size:10px;max-width:90%;white-space:normal;width:max-content;padding:9px 14px}.world-bottom{font-size:10px}.section-label>span{font-size:10px}}

/* Keep the controls legible for little builders. */
.tools button b,.vehicle-card b{font-size:14px}.tools button small,.vehicle-card small{font-size:12px}.tools button{min-height:90px}.toybox p,.toybox-footer,.undo,.world-bottom,.world-btn,.key-hints,.section-label>span,.music-button,.music-button small{font-size:12px}.eyebrow,.toybox .eyebrow,.world-label,.voice-note,.hello-sticker{font-size:12px}.stats span:not(#flips){font-size:12px}.world-label{letter-spacing:.7px}.vehicle-card{flex-direction:column;text-align:center}.world-btn span{font-size:10px}.world-top{left:15px;right:12px}#game{height:445px}.toybox p{line-height:1.5}.toybox .tools small{display:none}
@media(max-width:760px){.play-panel{min-height:0}#game{height:auto;aspect-ratio:1200/650}.world-label{display:none}.world-top{justify-content:flex-end}.world-bottom{padding:9px 12px}.title-row>.stats{gap:7px}.stats span:not(#flips){font-size:10px}.stats .coin-icon{display:none}.title-row h1{font-size:30px}.title-row .eyebrow{font-size:9px}.tools{grid-template-columns:repeat(3,1fr)}.tools button{min-height:72px}.tools button b{font-size:13px}.toybox p{font-size:12px}.vehicle-card b{font-size:14px}.vehicle-card small{font-size:12px;white-space:normal}.vehicle-card{flex-direction:column;text-align:center}.section-label>span{font-size:12px}.welcome-card{width:220px;padding:15px 20px}.welcome h2{font-size:32px;margin:10px 0}.welcome p{font-size:12px;margin:10px 0}.hello-sticker,.voice-note{font-size:10px}.welcome .primary{padding:11px 14px}.welcome{padding:45px 0 35px 5%}.welcome-card{transform:rotate(-2deg) scale(.9);transform-origin:left center}.controls{align-items:flex-start}.key-hints{font-size:12px}.music-button{font-size:12px}.music-button small{font-size:10px}.section-label{gap:8px}.world-btn{font-size:11px}.world-btn span{font-size:9px}}
.radio-panel{margin:20px 0;background:#fffdf6;border:1px solid #dce2d7;border-radius:18px;padding:24px}.radio-panel[hidden]{display:none}.radio-heading{display:flex;justify-content:space-between;align-items:center}.radio-heading h2{font:500 27px Fredoka,sans-serif;margin:5px 0 12px}.radio-heading>button{border:0;background:none;font-size:26px}.radio-panel p{font-size:14px;line-height:1.55;color:#647c73}.song-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0}.song-list button,.radio-actions>button:not(.primary),.full-song button{border:1px solid #d6dfd1;background:#f1f5e9;border-radius:10px;padding:12px;font-size:14px;text-align:left;line-height:1.4}.song-list button[aria-pressed=true]{border-color:#ee9c63;background:#fff0df}.radio-now{display:flex;gap:12px;align-items:center;margin:19px 0 12px}.radio-now img{border-radius:8px}.radio-now a{font-weight:700;font-size:15px;color:#345d4e;text-decoration:none}.radio-now span{display:block;font-size:12px;color:#74897d;margin-top:4px}.radio-panel audio{width:100%;height:44px}.radio-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.radio-actions .primary{box-shadow:none}.radio-panel #radio-status{min-height:22px;font-size:13px}.full-song{display:flex;gap:20px;align-items:center}.full-song a{color:#286446;font-weight:700;font-size:14px}.radio-panel details{margin-top:18px;font-size:14px}.radio-panel summary{cursor:pointer}.radio-panel label{display:block;margin:12px 0 8px}.radio-panel .music-note{font-size:12px}.radio-panel iframe{height:152px}.vehicle-card canvas{width:100px;height:66px}#vehicle-list{grid-template-columns:repeat(5,minmax(0,1fr))}.vehicle-card small{white-space:normal} @media(max-width:1000px){#vehicle-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.song-list{grid-template-columns:1fr}.radio-panel{padding:18px}.full-song{flex-wrap:wrap;gap:10px}#vehicle-list{grid-template-columns:repeat(3,minmax(0,1fr))}.vehicle-card canvas{width:90px;height:60px}}

.radio-panel [hidden]{display:none!important}

#video-player{width:min(100%,560px)}#video-player iframe{width:100%;height:auto;aspect-ratio:16/9;min-height:200px}#video-link{display:inline-block;margin-top:10px;color:#286446;font-size:14px;font-weight:700}

.moon-mission{position:absolute;top:62px;left:20px;z-index:2;display:grid;gap:7px;width:230px;padding:10px 14px;border:1px solid #ffffff99;border-radius:12px;background:#152b58e8;color:#fff;font-size:13px}.moon-mission[hidden]{display:none}.moon-mission progress{width:100%;height:9px;accent-color:#ffc65b}.world-label{max-width:45%}@media(max-width:600px){.moon-mission{top:67px;left:12px;width:210px;font-size:12px}}

.moon-mode .world-label{color:#173d69;background:#f7fbffd9;padding:5px 8px;border-radius:7px}
