:root{font-family:Segoe UI,system-ui,sans-serif;color:#214e40;background:#b7dec7;font-weight:700}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:2px solid #fff9;border-radius:16px;background:#fff8e9;color:#285743;padding:13px 18px;touch-action:none;box-shadow:0 4px 0 #183d3925}button:active{transform:translateY(2px)}button:focus-visible,a:focus-visible{outline:3px solid #f0aa2c;outline-offset:3px}[hidden]{display:none!important}#scene{display:block;width:100vw;height:100dvh;touch-action:none}header{position:fixed;left:78px;right:18px;top:14px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.brand{font-size:25px;font-weight:900;letter-spacing:.06em;text-shadow:0 2px #fff8}.brand small{display:block;font-size:9px;letter-spacing:.15em}header button{pointer-events:auto}.stats{position:fixed;top:78px;left:20px;display:flex;gap:14px;padding:12px 18px;background:#fff9e9ed;border:2px solid #fff9;border-radius:18px;font-size:14px}.mission{position:fixed;left:20px;top:140px;background:#204d40e8;color:#fff7de;border-radius:4px 22px 22px 22px;padding:16px 20px;max-width:300px;pointer-events:none}.mission>*{display:block}.mission small{font-size:9px;letter-spacing:.15em;color:#b9e9bb}.mission strong{margin:8px 0;font-size:15px}.mission span{font-size:11px;line-height:1.8;color:#cce0ca}#toast{position:fixed;top:32%;left:50%;translate:-50% 0;background:#fff5d9ed;border:2px solid white;border-radius:18px;padding:14px 20px;text-align:center;max-width:90%;width:max-content;pointer-events:none;opacity:0;transition:opacity .2s}#toast.show{opacity:1}#interact{position:fixed;left:50%;bottom:140px;translate:-50% 0;background:#ffe398;color:#514526;z-index:2;min-width:190px}.movement{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:20px;text-align:center;user-select:none}.movement button{padding:0;width:54px;height:50px;margin:3px;background:#f7fff1cc;font-size:22px}.actions{position:fixed;right:20px;bottom:max(28px,env(safe-area-inset-bottom));display:flex;align-items:end;gap:9px}.actions button{font-size:24px;min-width:66px;padding:12px}.actions small{display:block;font-size:9px;margin-top:5px}#shoot{background:#ffe298;min-width:104px;min-height:88px;border-radius:28px}.hint{position:fixed;bottom:5px;left:50%;translate:-50% 0;font-size:10px;width:max-content;pointer-events:none}#overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:#153c4470;backdrop-filter:blur(5px);padding:18px;overflow:auto}.card{width:min(500px,100%);max-height:100%;overflow:auto;background:linear-gradient(145deg,#fffbed,#e3f4df);padding:28px 32px;border:2px solid #fff;border-radius:30px;text-align:center;box-shadow:0 20px 70px #143c4550}.eyebrow{font-size:9px;letter-spacing:.16em}.hero{font-size:55px}h1{font-size:48px;line-height:1.02;margin:8px 0 18px;letter-spacing:-.05em}h1 em{color:#36865f;font-style:normal}.card p{font-size:13px;line-height:1.6}.instructions{background:#fff8;padding:4px 16px;margin:16px 0;border-radius:18px;text-align:left}.instructions p{font-size:11px}.primary{display:block;width:100%;background:#267452;color:white;min-height:50px}.card a{display:block;font-size:12px;color:#3e795a;margin-top:18px}#restart{width:100%;margin-top:12px}dialog{border:2px solid #fff;border-radius:26px;color:#285743;background:#fffbed;padding:26px;width:min(450px,94vw);max-height:90dvh;overflow:auto}dialog::backdrop{background:#193f4866;backdrop-filter:blur(4px)}dialog p{font-size:13px;line-height:1.6}.wares{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wares button{font-size:13px;padding:16px 8px}.wares strong{display:block;margin-top:7px;color:#a27624;font-size:12px}dialog small{display:block;font-size:10px;margin-top:16px}#shopMessage{min-height:22px}#error{position:fixed;inset:0;background:#fff;padding:100px 30px;z-index:20}
@media(max-width:600px){header{top:10px;right:12px}.brand{font-size:20px}.brand small{font-size:7px}.stats{top:72px;left:12px;right:12px;justify-content:space-around;gap:5px;font-size:12px;padding:10px 6px}.mission{top:127px;left:12px;padding:12px 14px;max-width:260px}.mission strong{font-size:12px}.mission span{font-size:10px}.movement{left:8px;bottom:25px}.movement button{width:42px;height:44px;margin:2px}.actions{right:10px;gap:5px;bottom:27px;flex-wrap:wrap;width:158px;justify-content:end}.actions button{min-width:54px;padding:8px;font-size:19px}.actions small{font-size:8px}#shoot{min-width:148px;min-height:52px;padding:6px}#shoot small{display:inline;margin-left:6px}#interact{bottom:166px;min-width:170px;font-size:13px}.hint{display:none}.card{padding:22px}.hero{font-size:36px}h1{font-size:38px}}
@media(max-height:520px) and (min-width:601px){.stats{top:14px;left:auto;right:85px}.mission{top:78px;max-width:260px;padding:12px}.movement button{width:43px;height:40px}.card{padding:18px}.hero{display:none}h1{font-size:30px}h1 br{display:none}.instructions{margin:8px 0}.instructions p{margin:6px 0}#interact{bottom:125px}}

@media(pointer:coarse),(max-width:700px){.movement{scale:var(--teo-control-scale,1);transform-origin:bottom left;left:max(10px,env(safe-area-inset-left))}.actions{scale:var(--teo-control-scale,1);transform-origin:bottom right;right:max(12px,env(safe-area-inset-right))}.movement button,.actions button{min-height:44px;min-width:44px}.mission{max-width:calc(100vw - 86px)}#toast{font-size:12px;padding:8px 12px}.card,dialog{touch-action:pan-y}}
@media(max-height:500px) and (pointer:coarse){.mission{top:65px;left:80px;max-width:230px;padding:7px 10px}.mission span{display:none}.stats{left:auto;right:80px;top:12px;font-size:11px;padding:8px}.actions{display:flex;flex-wrap:nowrap;width:auto}.actions button{min-width:44px;padding:6px}#shoot{min-width:70px}.movement button{height:40px;min-height:40px}.card{max-height:90dvh}}
@media(max-width:600px) and (min-height:501px){.movement{scale:1}.movement button{width:clamp(44px,calc(40px * var(--teo-control-scale,1)),52px);height:clamp(44px,calc(40px * var(--teo-control-scale,1)),52px);margin:2px}.actions{scale:1;width:158px}.actions button{min-width:clamp(44px,calc(44px * var(--teo-control-scale,1)),58px);min-height:clamp(44px,calc(44px * var(--teo-control-scale,1)),58px)}#shoot{min-width:148px;min-height:clamp(52px,calc(48px * var(--teo-control-scale,1)),64px)}}
@media(pointer:coarse),(max-width:700px){body[data-to-game="Choinka"] #to-merchant{top:max(118px,calc(env(safe-area-inset-top) + 110px))}}
@media(max-height:500px) and (pointer:coarse){body[data-to-game="Choinka"] #to-merchant{top:max(72px,calc(env(safe-area-inset-top) + 64px))}}
