:root{font-family:Courier New,ui-monospace,monospace;color:#fff7df;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit}.menu-page{min-height:100vh;overflow-x:hidden;background:#79d2ec;image-rendering:pixelated}.menu-scene{isolation:isolate;position:relative;min-height:100svh;overflow:hidden;padding:clamp(18px,3vh,38px) 18px clamp(104px,16vh,184px);display:grid;justify-items:center;background:linear-gradient(#78d1ed,#91e4f2 51%,#72cdbb)}.pixel-sky,.forest-backdrop,.meadow-stage{pointer-events:none}.pixel-sky{position:absolute;inset:0;z-index:-4;overflow:hidden}.forest-backdrop{position:absolute;inset:0;z-index:-3;background:url(/assets/forest-parallax-CEXSrFEE.png) center bottom / cover no-repeat;image-rendering:pixelated}.forest-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#84d5f130 0%,transparent 48%,#0b5f6240 100%)}.cloud{position:absolute;width:clamp(120px,16vw,260px);height:clamp(24px,3vw,46px);background:#fffdf0d9;box-shadow:10px 8px #a7e6ec70,30px -18px #fffdf0d9,64px -23px #fffdf0d9,97px -9px #fffdf0d9;image-rendering:pixelated;animation:drift 35s linear infinite}.cloud-one{top:19%;left:-15%}.cloud-two{top:31%;left:56%;scale:.7;animation-delay:-15s;animation-duration:44s}.cloud-three{top:12%;left:76%;scale:.52;animation-delay:-29s;animation-duration:39s}.world-label,.coin-balance{position:absolute;top:clamp(17px,2.7vw,34px);z-index:2;margin:0;color:#fffaf0;font-size:clamp(.62rem,1vw,.82rem);font-weight:900;letter-spacing:.12em;text-shadow:2px 2px #46708c}.world-label{left:clamp(18px,3vw,48px)}.coin-balance{right:clamp(18px,3vw,48px);padding:10px 14px;border:3px solid #f7d170;background:#62494b;box-shadow:inset 0 0 0 2px #8e6551,3px 3px #3d3545}.coin-balance span{color:#ffe47f}.menu-content{position:relative;z-index:1;width:min(480px,100%);text-align:center;animation:menu-enter .55s both ease-out}.menu-header{display:grid;justify-items:center}.eyebrow{margin:0 0 clamp(8px,1.6vh,16px);color:#fffbed;font-size:clamp(.67rem,1.25vw,.88rem);font-weight:900;letter-spacing:.22em;text-shadow:2px 2px #46708c}.menu-header h1{margin:0;color:#ffdc79;font-family:Impact,Arial Black,sans-serif;font-size:clamp(3rem,8vw,5.85rem);font-weight:900;line-height:.77;letter-spacing:-.065em;transform:scaleY(1.05);-webkit-text-stroke:clamp(2px,.35vw,5px) #6c3b42;text-shadow:0 5px #bf745c,0 9px #f6e4c2,0 13px #70516a}.menu-header h1 b{color:#ec98a5;font-size:.86em}.menu-header h1 span{display:inline-block}.rescue-sign{width:min(268px,76%);margin:clamp(20px,3.2vh,30px) 0 0;padding:9px 13px;color:#fff1d6;font-size:clamp(1.15rem,3vw,1.65rem);font-weight:900;letter-spacing:.17em;background:#9b5a60;border:3px solid #faedc8;box-shadow:0 4px #6b454e,inset 0 0 0 2px #c87f75;transform:rotate(-2deg)}.intro{max-width:440px;margin:clamp(19px,2.6vh,28px) auto 0;color:#fff8e5;font-size:clamp(.73rem,1.55vw,.94rem);font-weight:900;line-height:1.45;text-shadow:2px 2px #4a7181}.menu-actions{width:min(364px,100%);margin:clamp(23px,3.2vh,31px) auto 0}.button{position:relative;border:3px solid #694337;border-radius:5px;color:#fff2d6;cursor:pointer;font-weight:900;letter-spacing:.12em;text-shadow:2px 2px #67433b;background:linear-gradient(#f7cf94 0 20%,#d79769 21% 58%,#bd7957 59% 100%);box-shadow:inset 0 0 0 3px #f7d9a1,inset 0 -4px #a35e4b,0 6px #674137,0 10px #40303d66;transition:translate .15s ease,filter .15s ease}.button:hover,.button:focus-visible{translate:0 -2px;filter:brightness(1.08);outline:3px solid #fff3c980}.button:active{translate:0 3px;box-shadow:inset 0 0 0 3px #f7d9a1,inset 0 -3px #a35e4b,0 3px #674137}.button-play{width:100%;min-height:67px;font-size:clamp(1.2rem,3vw,1.6rem)}.button-play span:first-child{margin-right:13px;color:#fff4bc}.button-play span:last-child{margin-left:13px;font-size:.72em}.secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.button-secondary{min-height:52px;font-size:clamp(.75rem,1.5vw,.92rem)}.character-area{margin-top:clamp(20px,3.2vh,29px)}.character-area h2{margin:0 0 10px;color:#fff8e5;font-size:clamp(.68rem,1.3vw,.82rem);letter-spacing:.17em;text-shadow:2px 2px #497082}.character-picker{display:grid;grid-template-columns:repeat(2,minmax(0,150px));justify-content:center;gap:14px}.character-card{min-height:137px;padding:7px;border:4px solid #805d4d;color:#63433b;cursor:pointer;background:#fff7dc;box-shadow:inset 0 0 0 3px #e3d7b9,0 5px #574049;transition:translate .15s ease,filter .15s ease}.character-card:hover,.character-card:focus-visible{translate:0 -3px;outline:3px solid #ffe495aa}.character-card.is-selected{border-color:#9e513e;box-shadow:inset 0 0 0 3px #fff0af,0 5px #6a3f3a,0 0 0 4px #ffd8708c}.card-frame{display:grid;height:82px;place-items:end center;overflow:hidden;background:linear-gradient(#c8eced,#f5eab9)}.card-frame img{width:78px;height:78px;object-fit:contain;object-position:center bottom;image-rendering:pixelated;filter:drop-shadow(2px 3px #725a4d66)}.is-selected .card-frame img{animation:bubu-bob .85s ease-in-out infinite alternate}.character-copy{display:grid;gap:2px;padding-top:5px}.character-copy strong{font-size:.88rem;letter-spacing:.08em}.character-copy small{color:#856e65;font-family:Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800}.character-card:disabled{cursor:not-allowed;filter:grayscale(.85);opacity:.63}.character-card:disabled:hover{translate:none}.selection-message{min-height:1.3em;margin:13px 0 0;color:#fff9e7;font-size:clamp(.7rem,1.2vw,.82rem);font-weight:900;text-shadow:2px 2px #4b7181}.meadow-stage{position:absolute;z-index:-1;inset:auto 0 0;height:clamp(158px,24vh,267px);overflow:hidden}.meadow-grass{position:absolute;inset:auto 0 64px;height:35px;background:repeating-linear-gradient(90deg,#4f9b4f 0 8px,#6dc356 8px 28px,#539e4b 28px 39px);border-top:6px solid #1a694b;box-shadow:0 -8px #8fe165,0 8px #255d46}.meadow-dirt{position:absolute;inset:auto 0 0;height:64px;background:linear-gradient(#b76d4b 0 12px,#c87d54 13px 100%);border-top:5px solid #6d493e}.meadow-dirt:after{content:"";position:absolute;inset:17px 0 0;opacity:.45;background:radial-gradient(#8e573f 2px,transparent 3px) 0 0 / 30px 18px}.stage-tree,.stage-shrub{position:absolute;bottom:65px;image-rendering:pixelated;transform-origin:bottom center;animation:foliage 4.5s ease-in-out infinite alternate}.stage-tree-left{left:max(-10px,3vw);width:clamp(106px,14vw,195px)}.stage-tree-right{right:max(-18px,2vw);width:clamp(125px,18vw,235px);animation-delay:-1.7s}.stage-shrub{width:clamp(70px,10vw,140px);bottom:54px}.shrub-one{left:16%}.shrub-two{right:19%;animation-delay:-2.3s}.info-dialog{width:min(390px,calc(100% - 30px));padding:35px 32px 28px;border:4px solid #f5d58b;color:#563d3f;text-align:center;background:#fff4d9;box-shadow:0 18px 70px #34294177}.info-dialog::backdrop{background:#24455d99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.info-dialog h2{margin:9px 0;color:#9b5a60;font-family:Impact,sans-serif;letter-spacing:.04em}.info-dialog p{line-height:1.5}.dialog-icon{font-size:2.5rem}.dialog-close{position:absolute;top:8px;right:12px;border:0;color:#8a5b55;background:transparent;cursor:pointer;font-size:1.9rem}kbd{padding:2px 5px;border:1px solid #b98e6b;background:#f9e6bf}@keyframes drift{to{translate:calc(100vw + 360px) 0}}@keyframes menu-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes bubu-bob{to{transform:translateY(-5px)}}@keyframes foliage{to{transform:rotate(1.3deg) translateY(-2px)}}@media(max-width:600px){.menu-scene{min-height:100svh;padding-top:72px;padding-bottom:159px}.world-label{display:none}.coin-balance{top:14px;right:14px;font-size:.57rem;padding:8px 10px}.cloud-two{left:48%}.cloud-three{display:none}.menu-header h1{font-size:clamp(2.55rem,16vw,4rem)}.rescue-sign{margin-top:19px}.intro{max-width:330px}.menu-actions{margin-top:20px}.button-play{min-height:58px}.character-card{min-height:126px}.card-frame{height:73px}.card-frame img{width:70px;height:70px}.meadow-stage{height:147px}.meadow-grass{bottom:54px}.meadow-dirt{height:54px}.stage-tree-right{width:125px;right:-28px}.stage-tree-left{width:105px;left:-25px}.stage-shrub{display:none}}@media(max-height:760px)and (min-width:601px){.menu-scene{padding-top:18px;padding-bottom:104px}.eyebrow{margin-bottom:8px}.rescue-sign{margin-top:17px}.intro{margin-top:15px}.menu-actions,.character-area{margin-top:17px}.meadow-stage{height:135px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
