:root{--cream:#fbf3e2;--cream2:#f3e6c8;--wood:#7a5638;--wood2:#5b3e27;--ink:#3a2a1a;--olive:#688549;--olive-light:#82a45c;--green:#5fae45;--gold:#ffd54a;--red:#e5574a;--glass:#1c16108c;font-family:Nunito,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--ink);-webkit-user-select:none;user-select:none;touch-action:none;overscroll-behavior:none;background:#0d1a26;margin:0;overflow:hidden}#app{touch-action:none;position:fixed;inset:0}canvas{touch-action:none;display:block}.hidden{display:none!important}button{font:inherit;cursor:pointer;background:var(--cream2);color:var(--wood2);box-shadow:0 3px 0 var(--wood), 0 6px 14px #0000002e;border:0;border-radius:14px;padding:10px 18px;font-weight:800;transition:transform .12s,box-shadow .12s,background .2s}button:hover:not(:disabled){box-shadow:0 5px 0 var(--wood), 0 10px 18px #0003;transform:translateY(-2px)}button:active:not(:disabled){box-shadow:0 1px 0 var(--wood);transform:translateY(2px)}button.primary{color:#fff;text-shadow:0 1px #00000040;background:linear-gradient(#7cc95c,#57a33c);box-shadow:0 3px #3d7a28,0 6px 14px #0003}button:disabled{opacity:.5;cursor:default}button.small{border-radius:10px;padding:6px 12px;font-size:13px}#loading{z-index:50;text-align:center;color:#fff;background:linear-gradient(#0a142859,#0a14288c),url(/art/loading.jpg) 50%/cover no-repeat,radial-gradient(at 50% 120%,#f7b26a 0%,#e0805a 25%,#3c5d8e 60%,#142542 100%);place-items:center;transition:opacity .8s;display:grid;position:fixed;inset:0}#loading.gone{opacity:0;pointer-events:none}#loading h1{text-shadow:0 4px #00000040;margin:0 0 24px;font-family:"Baloo 2",Nunito,sans-serif;font-size:clamp(40px,7vw,76px);line-height:.9}#loading .bar{background:#fff3;border-radius:10px;width:min(360px,80vw);height:14px;margin:0 auto 10px;position:relative;overflow:hidden}#loading .bar i{background:linear-gradient(90deg,#ffe08a,#ffb347);border-radius:10px;width:0;height:100%;transition:width .4s ease-out;display:block}#loading .bar:after{content:"";will-change:transform;background:linear-gradient(90deg,#0000,#ffffff73,#0000);width:40%;animation:1.1s linear infinite load-sweep;position:absolute;inset:0}@keyframes load-sweep{0%{transform:translate(-100%)}to{transform:translate(250%)}}#loading small{opacity:.85;font-weight:700}#menu{z-index:20;background:linear-gradient(90deg,#0a14288c,#0a142800 60%);flex-direction:column;justify-content:center;align-items:flex-start;padding:0 8vw;transition:opacity .8s;display:flex;position:fixed;inset:0}#menu.gone{opacity:0;pointer-events:none}#menu .logo small{color:#ffe3a3;letter-spacing:.25em;text-transform:uppercase;font-size:14px;font-weight:800}#menu h1{color:#fff;text-shadow:0 5px #c26a3c,0 10px 30px #0006;margin:4px 0 30px;font-family:"Baloo 2",Nunito,sans-serif;font-size:clamp(52px,8vw,104px);line-height:.85}#menu .buttons{flex-direction:column;gap:14px;width:min(280px,80vw);display:flex}#menu .buttons button{padding:14px 22px;font-size:20px}#menu .credit{color:#ffffffb3;font-size:12px;position:absolute;bottom:16px;left:8vw}#hud{pointer-events:none;z-index:5;position:fixed;inset:0}#hud svg{width:100%;height:100%;display:block}#hud .card{color:var(--ink);background:linear-gradient(#fffaeef5,#f7ecd4f5);border-radius:16px;padding:8px 12px;box-shadow:inset 0 0 0 2px #ffffff8c,0 3px #7a56388c,0 10px 24px #00000038}#hud .tl{z-index:7;flex-direction:column;gap:8px;width:auto;max-width:260px;display:flex;position:absolute;top:14px;left:14px}#hud .tl-top{align-items:center;gap:8px;display:flex}#hud .status{border-radius:12px;grid-template-rows:auto auto;grid-template-columns:26px 1fr;align-content:center;align-items:center;gap:2px 6px;width:146px;height:40px;padding:4px 8px;display:grid}#hud .status .wx{background:radial-gradient(circle at 35% 30%,#fff,#e8f2fb 70%);border-radius:50%;grid-row:1/3;width:26px;height:26px;padding:3px;box-shadow:inset 0 -2px #00000014,0 2px 6px #0000001f}#hud .status .clockt{align-items:baseline;gap:5px;line-height:1;display:flex}#hud .status .time{font-variant-numeric:tabular-nums;color:var(--wood2);font-size:14px;font-weight:900;line-height:1}#hud .status .day{color:#3a2a1a99;font-size:10px;font-weight:800;line-height:1}#hud .level{align-items:center;gap:5px;line-height:1;display:flex}#hud .level .lv{flex:0 0 17px;width:17px;height:17px;position:relative}#hud .level .lv i{color:#6a4210;place-items:center;padding-top:1px;font-size:8.5px;font-style:normal;font-weight:900;display:grid;position:absolute;inset:0}#hud .xpbar{background:#7a563826;border-radius:5px;flex:1;height:5px;overflow:hidden;box-shadow:inset 0 1px 2px #00000026}#hud .xpbar i{background:linear-gradient(90deg,#ffe27a,#ffb347);border-radius:5px;height:100%;transition:width .5s;display:block}#hud .qbtn{min-width:46px;height:40px;color:var(--wood2);pointer-events:auto;touch-action:none;background:linear-gradient(#fffaeef5,#f7ecd4f5);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:2px 7px;font-size:9px;font-weight:900;line-height:1.1;display:flex;position:relative;box-shadow:inset 0 0 0 2px #ffffff8c,0 3px #7a56388c,0 8px 18px #00000038}#hud .qbtn.on{background:var(--gold);box-shadow:0 2px #b57410}#hud .qbtn.pulse{animation:.7s pulse}#hud .qbtn .qb-icon{width:15px;height:15px;display:block}#hud .qbtn .qb-dist{color:#fff;font-variant-numeric:tabular-nums;background:linear-gradient(#e8a43a,#c98320);border-radius:8px;padding:1px 5px;font-size:9px;font-style:normal;font-weight:900;position:absolute;top:-5px;right:-6px;box-shadow:0 1px 3px #00000059}#hud .qbtn .qb-dist:empty{display:none}body:not(.is-touch) #hud .tl{max-width:340px}body:not(.is-touch) #hud .tl-top>:not(.helpbtn){zoom:1.3}#hud .helpbtn.setbtn{left:64px}body.is-touch #hud .setbtn{display:none}#hud .quest{pointer-events:auto;width:268px;padding:10px 13px 11px;animation:.18s ease-out pop;display:none;position:relative}#hud.showquest .quest{display:block}#hud .quest .qhead{align-items:center;gap:6px;margin-bottom:4px;display:flex}#hud .quest .qicon{background:var(--wood);color:#fff;border-radius:6px;flex:0 0 20px;width:20px;height:20px;padding:3px}#hud .quest small{color:var(--wood);text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;font-weight:900}#hud .quest .qdist{color:#fff;font-variant-numeric:tabular-nums;background:linear-gradient(#e8a43a,#c98320);border-radius:10px;margin-left:auto;padding:1px 8px;font-size:11px;font-weight:900}#hud .quest .qdist:empty{display:none}#hud .quest .qhintbtn{color:var(--wood2);box-shadow:none;background:#7a563824;border-radius:10px;align-items:center;gap:3px;margin-left:auto;padding:2px 8px 2px 5px;font-size:11px;font-weight:900;display:inline-flex}#hud .quest .qdist:not(:empty)+.qhintbtn{margin-left:4px}#hud .quest .qhintbtn.on{background:#fff0b8;box-shadow:inset 0 0 0 1.5px #d99b26}#hud .quest .qhintbtn svg{width:14px;height:14px}#hud .quest .qclose{width:22px;height:22px;color:var(--wood2);box-shadow:none;background:#7a563826;border-radius:50%;place-items:center;padding:0;font-size:11px;line-height:1;display:inline-grid}#hud .quest .qtitle-row{justify-content:space-between;align-items:baseline;gap:6px;display:flex}#hud .quest b.qt{color:var(--wood2);font-size:15px;line-height:1.25}#hud .quest .qprog{font-variant-numeric:tabular-nums;color:var(--olive);background:#68854924;border-radius:6px;flex-shrink:0;padding:1px 6px;font-size:11px;font-weight:800}#hud .quest .qprog.done{color:#fff;background:var(--olive)}#hud .quest .qbody{overflow:hidden}#hud .quest p.qd{color:#3a2a1ad1;margin:2px 0 7px;font-size:12.5px;line-height:1.35}#hud .quest .qbar{background:#7a563826;border-radius:4px;height:5px;overflow:hidden}#hud .quest .qbar i{background:linear-gradient(90deg,#8fd16a,#4f9e35);height:100%;transition:width .5s;display:block}#hud .quest .qhint{color:#4a3216;background:#ffe27a47;border:1px solid #c98a1059;border-radius:10px;align-items:flex-start;gap:6px;margin-top:7px;padding:6px 9px;font-size:11.5px;font-weight:700;line-height:1.35;display:flex}#hud .quest .qhint svg{flex:0 0 15px;width:15px;height:15px;margin-top:1px}#hud .quest.pulse{animation:.7s pulse}@keyframes pulse{30%{transform:scale(1.04);box-shadow:0 0 0 4px #ffd54ab3,0 10px 24px #00000038}}#hud .tr{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;top:14px;right:14px}#hud .tr-row{align-items:flex-start;gap:8px;display:flex}#hud .minimap-wrap{flex-direction:column;align-items:flex-end;gap:4px;display:flex}#hud .quickbar{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;border:1px solid #fff8e829;border-radius:13px;gap:5px;padding:5px;display:none;box-shadow:0 6px 18px #00000038}body.is-touch #hud .quickbar{display:flex}#hud .quickbar button{min-width:44px;height:44px;color:var(--wood2);box-shadow:0 2px 0 var(--wood);background:#fbf4e4eb;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px 6px;font-size:10px;font-weight:900;display:flex}#hud .quickbar button.on{background:var(--gold);box-shadow:0 2px #b57410}#hud .quickbar button svg{width:18px;height:18px}#hud .minimap{border:3.5px solid var(--cream);pointer-events:auto;cursor:pointer;border-radius:50%;width:148px;height:148px;transition:transform .2s,box-shadow .2s;box-shadow:0 0 0 1.5px #785538a6,0 6px 20px #120e0842}#hud .minimap:hover{box-shadow:0 0 0 2px var(--gold), 0 8px 24px #120e0852;transform:scale(1.03)}#hud .fps{color:#ffffffd9;text-shadow:0 1px 2px #000;font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}#hud .fps:empty{display:none}#hud .saveicon{color:#fff;opacity:0;filter:drop-shadow(0 1px 2px #0009);width:22px;height:22px}#hud .saveicon.show{animation:1.6s saveflash}@keyframes saveflash{20%,70%{opacity:1}}#hud .bottom{flex-direction:column;align-items:center;gap:6px;transition:opacity .25s,transform .25s;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}#hud .bottom.dim{opacity:0;pointer-events:none;transform:translate(-50%,24px)}#hud .prompt{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);opacity:0;pointer-events:none;cursor:pointer;background:#fbf4e4f2;border:1px solid #7855384d;border-radius:11px;padding:6px 14px 6px 8px;font-size:13.5px;font-weight:700;transition:opacity .16s,transform .16s;transform:translateY(6px)scale(.97);box-shadow:inset 0 1px #ffffffbf,0 4px 14px #0003}#hud .prompt.show{opacity:1;pointer-events:auto;transform:none}#hud .prompt:hover{background:#fff9ec}#hud .prompt:active{transform:translateY(1px)}#hud .prompt b{background:var(--wood2);min-width:24px;height:24px;color:var(--cream);border-radius:6px;place-items:center;margin-right:7px;padding:0 6px;font-size:12px;font-weight:800;display:inline-grid;box-shadow:0 1.5px #00000059}#hud .prompt .warn{color:var(--red);font-weight:800}#hud .itemname{color:#fff8e8;text-shadow:0 1px 4px #000000bf;opacity:0;letter-spacing:.01em;height:16px;font-size:13.5px;font-weight:800}#hud .itemname.show{animation:1.8s forwards itemname}@keyframes itemname{0%{opacity:0;transform:translateY(4px)}12%,70%{opacity:1;transform:none}to{opacity:0}}#hud .dock{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;background:linear-gradient(#281e148c,#19120cb3);border-radius:16px;flex-direction:column;padding:7px 8px;display:flex;box-shadow:inset 0 0 0 1px #ffffff1f,0 12px 28px #0000004d}#hud .vitals{pointer-events:auto;background:0 0;justify-content:space-between;align-items:center;width:100%;margin-bottom:-1px;padding:0 4px;display:flex}#hud .vital-bar{align-items:center;gap:2px;display:flex}#hud .vital-bar.food{flex-direction:row-reverse}#hud .v-icon{filter:drop-shadow(0 1.5px 2px #0009);flex:0 0 18px;width:18px;height:18px;transition:transform .15s;position:relative}#hud .v-icon svg{width:100%;height:100%;overflow:visible}#hud .v-icon.heart .bg{fill:#1a0c0eb8;stroke:#1e0b0d;stroke-width:2.2px}#hud .v-icon.heart .fg{fill:#ff3838;stroke:#a81818;stroke-width:1px;transition:opacity .15s}#hud .v-icon.heart .shine{fill:#ffffffd1;stroke:none}#hud .v-icon.drum .bg{fill:#1a100ab8;stroke:#1e120a;stroke-width:2.2px}#hud .v-icon.drum .bone{fill:#f5ebd6;stroke:#5b3e27;stroke-width:1px}#hud .v-icon.drum .fg{fill:#ff9f2e;stroke:#9c470c;stroke-width:1px;transition:opacity .15s}#hud .v-icon.drum .shine{fill:#fff4d2c7;stroke:none}#hud .v-icon[data-state=empty] .fg,#hud .v-icon[data-state=empty] .shine,#hud .v-icon.drum[data-state=empty] .bone{opacity:0}#hud .v-icon.heart[data-state=half] .fg{clip-path:inset(0 50% 0 0)}#hud .v-icon.drum[data-state=half] .fg,#hud .v-icon.drum[data-state=half] .shine{clip-path:inset(0 44% 0 0)}#hud .vital-bar.low .v-icon:nth-child(odd){animation:.32s infinite alternate vital-jitter}#hud .vital-bar.low .v-icon:nth-child(2n){animation:.32s .16s infinite alternate vital-jitter}#hud .vital-bar.hurt .v-icon.heart .bg{stroke:#fff;fill:#ff9a9a}#hud .vital-bar.hurt{animation:.28s ease-out vital-hurt}#hud .vital-bar.heal .v-icon[data-state=full],#hud .vital-bar.heal .v-icon[data-state=half]{animation:1.1s ease-in-out infinite vital-heal}@keyframes vital-jitter{0%{transform:translateY(-1px)}to{transform:translateY(1.5px)}}@keyframes vital-hurt{0%,to{transform:none}30%{transform:translate(-3px)scale(1.06)}65%{transform:translate(3px)}}@keyframes vital-heal{50%{filter:drop-shadow(0 0 4px #ff7878bf);transform:translateY(-2px)}}#hud.damage-flash:after{content:"";pointer-events:none;z-index:2;background:radial-gradient(#e5393500 45%,#e539357a 100%);animation:.42s ease-out forwards dmg-vignette;position:fixed;inset:0}@keyframes dmg-vignette{0%{opacity:1}to{opacity:0}}@keyframes blink{50%{opacity:.5}}#hud .hotbar{gap:5px;display:flex}.slot{cursor:pointer;border-radius:10px;place-items:center;width:50px;height:50px;transition:transform .15s,box-shadow .15s,background .15s;display:grid;position:relative}#hud .hotbar .slot{background:#fbf4e41f;box-shadow:inset 0 0 0 1px #fbf4e438}#hud .hotbar .slot:hover{background:#fbf4e438;transform:translateY(-1px)}#hud .hotbar .slot:has(img){background:#fbf4e4e6;box-shadow:inset 0 0 0 1px #78553838,0 1px 3px #00000024}.slot img{object-fit:contain;pointer-events:none;filter:drop-shadow(0 1.5px 2px #00000038);width:38px;height:38px;transition:transform .15s}#hud .hotbar .slot:hover img{transform:scale(1.05)}.slot i{color:var(--wood2);font-variant-numeric:tabular-nums;background:#fbf4e4e0;border-radius:4px;padding:1px 3px;font-size:11.5px;font-style:normal;font-weight:900;line-height:1;position:absolute;bottom:2px;right:4px}.slot .k{color:#fbf4e48c;font-size:9.5px;font-weight:800;line-height:1;position:absolute;top:3px;left:5px}.slot:has(img) .k{color:#5439227a}#hud .hotbar .slot.sel{box-shadow:inset 0 0 0 2px var(--gold), 0 0 0 1px #54392259, 0 5px 12px #00000047;background:#fffaecf5;transform:translateY(-3px)}#hud .hotbar .slot.sel:not(:has(img)){background:#fbf4e43d}#hud .hotbar .slot.switch-pop{animation:.2s ease-out slot-pop}@keyframes slot-pop{0%{transform:translateY(-1px)scale(.94)}60%{transform:translateY(-4px)scale(1.04)}to{transform:translateY(-3px)scale(1)}}#hud .helpbtn{pointer-events:auto;width:40px;height:40px;color:var(--wood2);border-radius:50%;padding:7px;transition:opacity .25s,transform .25s;position:fixed;bottom:16px;left:16px}#hud .hints{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffffe6;opacity:0;background:#19120c9e;border-radius:16px;grid-template-columns:auto auto;gap:4px 14px;padding:10px 14px;font-size:12px;transition:all .25s;display:grid;position:absolute;bottom:66px;left:16px;transform:translateY(10px)}#hud.showhints .hints{opacity:1;transform:none}#hud.building .hints,#hud.building .helpbtn{opacity:0;pointer-events:none;transform:translateY(10px)}#hud .hints b{text-align:center;color:#ffe9b0;background:#ffffff29;border-radius:5px;min-width:20px;margin-right:4px;padding:0 5px;display:inline-block}#hud .qarrow{opacity:0;width:0;height:0;transition:opacity .2s;position:absolute;top:0;left:0}#hud .qarrow.show{opacity:1}#hud .qarrow svg{filter:drop-shadow(0 2px 4px #00000080);width:36px;height:36px;animation:1s ease-in-out infinite alternate bob;position:absolute;top:-18px;left:-18px}#hud .qarrow span{text-align:center;color:#fff;text-shadow:0 1px 3px #000;width:60px;font-size:12px;font-weight:900;position:absolute;top:20px;left:-30px}@keyframes bob{to{margin-top:-4px}}#hud .toasts{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;top:34%;right:16px}.toast{background:var(--cream);box-shadow:0 3px 0 var(--wood), 0 6px 14px #0003;border-radius:14px;align-items:center;gap:8px;padding:4px 12px 4px 6px;font-weight:700;animation:.3s cubic-bezier(.2,1.6,.4,1) toastin;display:flex}.toast img{width:34px;height:34px}.toast b{color:#3d8a28;font-size:17px}.toast em{color:#3a2a1a8c;font-size:12px;font-style:normal}.toast.text{padding:8px 14px}.toast.out{opacity:0;transition:all .35s;transform:translate(30px)}.toast.bump{animation:.25s bump}@keyframes toastin{0%{opacity:0;transform:translate(40px)scale(.8)}}@keyframes bump{50%{transform:scale(1.12)}}#hud .banner{text-align:center;color:#fff;opacity:0;padding:14px 40px 16px;position:absolute;top:13%;left:50%;transform:translate(-50%)}#hud .banner:before{content:"";z-index:-1;background:radial-gradient(#1e140a73,#1e140a00 70%);border-radius:22px;position:absolute;inset:0}#hud .banner b{text-shadow:0 3px #c26a3c,0 8px 24px #00000073;font-family:"Baloo 2",Nunito,sans-serif;font-size:46px;line-height:1;display:block}#hud .banner small{text-shadow:0 2px 6px #0009;font-size:17px;font-weight:800}#hud .banner.show{animation:3.6s forwards banner}@keyframes banner{0%{opacity:0;transform:translate(-50%,20px)scale(.9)}10%,80%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-12px)}}#hud .msg{color:#fff;opacity:0;white-space:nowrap;background:#3a2a1ae6;border-radius:12px;padding:8px 18px;font-weight:700;position:absolute;bottom:230px;left:50%;transform:translate(-50%);box-shadow:0 6px 16px #00000040}#hud .msg.show{animation:2.8s forwards msg}@keyframes msg{0%{opacity:0;transform:translate(-50%,10px)}10%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}#hud .ring{width:0;height:0;display:none;position:absolute;top:0;left:0}#hud .ring:before,#hud .ring i{content:"";box-sizing:border-box;border-radius:50%;width:30px;height:30px;position:absolute;top:-15px;left:-15px}#hud .ring:before{border:2px solid #fffc;box-shadow:0 0 4px #0000004d}#hud .ring i{border:2px solid #ffd54ad9}#hud .ring.hot:before{border-color:#8cff6a;box-shadow:0 0 8px #8cff6a}#hud .fishui{position:absolute;top:38%;left:50%;transform:translate(-50%)}#hud .fishui>*{display:none}#hud .fishui.bite .bite{background:var(--gold);width:64px;height:64px;color:var(--ink);border-radius:50%;place-items:center;font-size:44px;font-weight:900;animation:.25s infinite alternate bite;display:grid;box-shadow:0 0 0 4px #fff,0 8px 20px #00000059}@keyframes bite{to{transform:scale(1.18)rotate(8deg)}}#hud .fishui.reel .reel{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;text-align:center;background:#19120cb3;border-radius:16px;width:340px;padding:10px 14px;display:block}#hud .reel label{font-size:12px;font-weight:700}#hud .reel .tension,#hud .reel .progress{background:#fff3;border-radius:8px;height:12px;margin-top:8px;overflow:hidden}#hud .reel .tension i{background:linear-gradient(90deg,#ffd54a,#ff9a3a);height:100%;display:block}#hud .reel .tension i.danger{background:var(--red);animation:.3s infinite blink}#hud .reel .progress i{background:linear-gradient(90deg,#6fe08a,#3d8a28);height:100%;display:block}#hud .buildbar{pointer-events:auto;z-index:6;width:min(1100px,96vw);transition:transform .35s cubic-bezier(.2,1.2,.4,1);position:absolute;bottom:16px;left:50%;transform:translate(-50%,140%)}#hud .buildbar.show{transform:translate(-50%)}#hud .bhead{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#19120cb8;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 14px;width:fit-content;max-width:100%;margin:0 0 8px;padding:8px 14px;font-size:13px;display:flex}#hud .bhead b{color:#ffe9b0;font-size:16px}#hud .bhead em{color:#ffb4a8;font-style:normal;font-weight:800}#hud .bactions{align-items:center;gap:6px;margin-left:auto;display:none}body.is-touch #hud .bactions{display:flex}#hud .bactions .bact{border-radius:10px;padding:5px 10px;font-size:12px}#hud .brow{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(#281e148c,#19120cb3);border-radius:20px;align-items:stretch;gap:6px;padding:10px;display:flex}#hud .cards{scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;flex:1;gap:8px;padding:6px 2px 4px;display:flex;overflow-x:auto}#hud .cards::-webkit-scrollbar{display:none}#hud .bnav{border-radius:12px;flex:0 0 36px;padding:0;font-size:26px;line-height:1}#hud .bnav:disabled{opacity:.25}#hud .btabs{gap:6px;margin:0 0 6px;display:flex}#hud .btabs button{opacity:.8;border-radius:12px;padding:5px 14px;font-size:13px}#hud .btabs button.on{opacity:1;box-shadow:0 0 0 3px var(--gold), 0 3px 0 var(--wood)}#hud .bup{color:#fff;background:#19120cb8;border-radius:14px;align-items:center;gap:10px;width:fit-content;max-width:100%;margin:0 0 6px;padding:6px 10px;font-size:13px;display:none}#hud .bup.show{display:flex}#hud .bup b{color:#ffe9b0;margin-right:6px}#hud .bup .costs{margin:0;display:inline-flex}#hud .bup .cost{background:#fff8e8eb}#hud .bup-btn{color:#fff;background:linear-gradient(#86d665,#57a33c);border-radius:10px;padding:4px 12px;font-size:13px}.bcard{background:var(--cream);text-align:center;cursor:pointer;box-shadow:0 3px 0 var(--wood);border-radius:14px;flex:0 0 112px;padding:6px;transition:transform .12s}.bcard:hover{transform:translateY(-4px)}.bcard img{object-fit:contain;width:64px;height:64px}.bcard b{font-size:13px;display:block}.bcard.sel{box-shadow:0 0 0 3px var(--gold), 0 3px 0 var(--wood)}.bcard.poor{opacity:.75}.bcard.locked{filter:grayscale();opacity:.55}.bcard .lock{font-size:12px;font-weight:800}.costs{flex-wrap:wrap;justify-content:center;gap:3px;margin-top:3px;display:flex}.cost{background:#7a56381a;border-radius:8px;align-items:center;padding:0 4px 0 1px;font-size:11px;font-weight:800;display:inline-flex}.cost img{width:20px;height:20px}.cost i{font-style:normal}.cost.ok{color:#3d8a28}.cost.no{color:var(--red)}.costs.big{justify-content:flex-start;margin:14px 0}.costs.big .cost{padding:2px 8px 2px 2px;font-size:15px}.costs.big .cost img{width:34px;height:34px}#hud .floats .float{color:#fff27a;text-shadow:0 2px #b06a20,0 4px 10px #0006;white-space:nowrap;margin-left:-30px;font-family:"Baloo 2",Nunito,sans-serif;font-size:26px;font-weight:900;position:absolute;top:0;left:0}#tooltip{z-index:40;pointer-events:none;background:var(--wood2);color:#fff;opacity:0;border-radius:12px;max-width:240px;padding:8px 12px;font-size:13px;transition:opacity .12s;position:fixed;top:0;left:0;box-shadow:0 8px 20px #0000004d}#tooltip.show{opacity:1}#tooltip b{color:#ffe9b0}#tooltip small{opacity:.85;margin-top:2px;display:block}#panel{z-index:25;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f141e59;place-items:center;animation:.2s fadein;display:grid;position:fixed;inset:0}@keyframes fadein{0%{opacity:0}}#panel .sheet{background:var(--cream);width:min(720px,94vw);max-height:86vh;box-shadow:0 0 0 6px var(--cream2), 0 0 0 9px var(--wood), 0 24px 60px #00000073;touch-action:pan-y;-webkit-overflow-scrolling:touch;border-radius:24px;padding:22px 26px;animation:.3s cubic-bezier(.2,1.4,.4,1) pop;position:relative;overflow:auto}@keyframes pop{0%{opacity:0;transform:scale(.9)translateY(20px)}}#panel h2{min-height:36px;color:var(--wood2);align-items:center;margin:0 48px 8px 0;font-family:"Baloo 2",Nunito,sans-serif;font-size:32px;line-height:1.1;display:flex}#panel .close{border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid;position:absolute;top:14px;right:14px}#panel .sub{color:#3a2a1aa6;margin:0 0 12px;font-size:13px}.pager{color:var(--wood);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:14px;margin-top:12px;font-weight:800;display:flex}.pager button{width:38px;padding:4px 0;font-size:20px;line-height:1}.invgrid{grid-template-columns:repeat(8,minmax(0,62px));justify-content:center;gap:7px;display:grid}.invgrid .slot{aspect-ratio:1;background:#fff8ea;width:auto;height:auto}.invgrid .slot.hb{background:#fff0cc}.invgrid .slot.pick{box-shadow:0 0 0 3px var(--gold);transform:scale(1.06)}.invgrid .slot{box-shadow:inset 0 -3px #7a56382e,inset 0 0 0 1.5px #7a56381f}.invgrid .slot.empty{background:#7a56380f}.invgrid .slot:hover{transform:translateY(-2px)}.invgrid .slot.dragging{opacity:.4}.invgrid .slot.over{box-shadow:0 0 0 3px #8fd16a}.invgrid .slot .k{color:#3a2a1a73}.invgrid.hbrow{background:#ffd54a2e;border-radius:16px;padding:8px;box-shadow:inset 0 0 0 2px #e8a43a59}.invlabel{text-transform:uppercase;letter-spacing:.1em;color:var(--wood);justify-content:space-between;margin:10px 0 6px;font-size:13px;display:flex}.invlabel span{letter-spacing:0;color:#3a2a1a8c}.desc{background:var(--cream2);border-radius:14px;min-height:64px;margin-top:12px;padding:10px 14px}.drow{align-items:center;gap:12px;display:flex}.drow img{width:56px;height:56px}.drow p{margin:2px 0 0;font-size:14px}.desc button{margin-top:8px}.recipes{flex-direction:column;gap:8px;display:flex}.recipe{background:#fff8ea;border-radius:16px;align-items:center;gap:12px;padding:8px 12px;display:flex;box-shadow:inset 0 -3px #7a563826}.recipe.can{background:#f0fbe6}.recipe .out{background:var(--cream2);border-radius:12px;flex:0 0 60px;place-items:center;width:60px;height:60px;display:grid;position:relative}.recipe .out img{width:50px;height:50px}.recipe .out i{font-style:normal;font-weight:900;position:absolute;bottom:0;right:4px}.recipe .info{flex:1}.recipe .info b{font-size:16px}.recipe .info small{color:#3a2a1ab3;display:block}.recipe .costs{justify-content:flex-start}.station{font-size:12px;font-weight:800}.station.ok{color:#3d8a28}.station.no{color:var(--red)}.tabs{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.tabs button{box-shadow:0 2px 0 var(--wood);padding:6px 14px;font-size:14px}.tabs button.on{background:var(--wood);color:#fff}.jq{background:#fff8ea;border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:6px;padding:8px 10px;display:flex}.jq span{text-align:center;width:24px;font-weight:900}.jq b{display:block}.jq small{color:#3a2a1ab3}.jq.done{opacity:.6}.jq.done span{color:#3d8a28}.jq.now{box-shadow:0 0 0 2px var(--gold);background:#fff0cc}.collect{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.cc{text-align:center;opacity:.55;background:#fff8ea;border-radius:14px;padding:8px}.cc.got{opacity:1;background:#f0fbe6}.cc img{filter:grayscale()brightness(.4);width:54px;height:54px}.cc.got img{filter:none}.cc .emo{font-size:36px;display:block}.cc b{font-size:13px;display:block}.cc small{color:#3a2a1a99;font-size:11px}.jnote{border-left:4px solid var(--wood);background:#fffdf5;border-radius:8px;margin-bottom:8px;padding:10px 14px;font-style:italic}.jnote.locked{opacity:.45}#bigmap{aspect-ratio:1;width:100%;max-width:560px;box-shadow:0 0 0 4px var(--cream2), 0 0 0 7px var(--wood), 0 10px 24px #3a2a1a40;border-radius:18px;margin:8px auto;display:block}.maplegend{color:var(--wood2);flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:12px 0 4px;font-size:12px;font-weight:800;display:flex}.maplegend span{background:var(--cream2);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.maplegend .lg{border:1.5px solid #4a2f1c;width:12px;height:12px;display:inline-block}.maplegend .lg.you{clip-path:polygon(50% 0,100% 100%,50% 75%,0 100%);background:#ffd54a;border:0}.maplegend .lg.npc{background:#ff9a3a;border-radius:50%}.maplegend .lg.goal{clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);background:#ffd54a;border:0}.maplegend .lg.house{background:#b5683f;border-radius:3px}.maplegend .lg.crate{background:#c98a4a;width:10px;height:10px}.settings{gap:12px;margin:10px 0 18px;display:grid}.settings label{grid-template-columns:180px 1fr;align-items:center;gap:10px;font-weight:700;display:grid}.settings label.row{display:flex}.settings label.vol{grid-template-columns:180px 1fr 48px}.settings label.vol b{text-align:right;font-variant-numeric:tabular-nums;color:var(--wood)}.settings select{appearance:none;font:inherit;color:var(--wood2);cursor:pointer;box-shadow:inset 0 0 0 2px var(--cream2), 0 2px 0 #7a563859;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a5638' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 12px center/16px no-repeat;border:0;border-radius:12px;padding:8px 40px 8px 14px;font-weight:700}.settings select:focus{box-shadow:inset 0 0 0 2px var(--gold), 0 2px 0 #7a563859;outline:none}.settings input[type=range]{appearance:none;cursor:pointer;background:linear-gradient(90deg, #e8a43a, #c98320) 0 / var(--fill,50%) 100% no-repeat, #7a56382e;border-radius:6px;height:10px}.settings input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--wood);background:#fff;border-radius:50%;width:22px;height:22px;box-shadow:0 2px 4px #00000040}.settings input[type=range]::-moz-range-thumb{border:3px solid var(--wood);background:#fff;border-radius:50%;width:18px;height:18px}.settings input[type=checkbox]{appearance:none;width:22px;height:22px;box-shadow:inset 0 0 0 2px var(--cream2), 0 2px 0 #7a563859;cursor:pointer;background:#fff;border-radius:7px;place-items:center;margin:0 8px 0 0;display:grid}.settings input[type=checkbox]:checked{background:#6fbf4a;box-shadow:inset 0 0 0 2px #4f9e35}.settings input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:14px;font-weight:900}#panel .buttons{flex-wrap:wrap;gap:10px;display:flex}.controls{background:var(--cream2);border-radius:14px;margin-top:18px;padding:6px 14px;font-size:13px}.controls h3{margin:6px 0}.lhsteps{flex-direction:column;gap:8px;margin-top:10px;display:flex}.lh{opacity:.6;background:#fff8ea;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.lh span{background:var(--cream2);border-radius:50%;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.lh b{display:block}.lh.done{opacity:.75}.lh.done span{background:var(--green);color:#fff}.lh.now{opacity:1;box-shadow:0 0 0 2px var(--gold);background:#fff0cc}#dialogue{z-index:9;background:var(--cream);width:min(720px,92vw);box-shadow:0 0 0 5px var(--cream2), 0 0 0 8px var(--wood), 0 20px 50px #0006;cursor:pointer;border-radius:22px;min-height:130px;padding:26px 26px 14px 150px;animation:.3s cubic-bezier(.2,1.4,.4,1) pop;position:fixed;bottom:40px;left:50%;transform:translate(-50%)}#dialogue .portrait{object-fit:cover;width:116px;height:116px;box-shadow:0 0 0 4px var(--cream2), 0 0 0 7px var(--wood), 0 8px 18px #0000004d;background:radial-gradient(circle at 50% 35%,#fff6df,#f0d9a8);border-radius:50%;animation:.5s ease-in-out infinite alternate talk;position:absolute;bottom:14px;left:18px}@keyframes talk{to{transform:translateY(-2px)rotate(-1deg)}}#dialogue .who{color:#fff;background:linear-gradient(#ff9f5a,#e0703a);border-radius:14px;padding:6px 18px;font-size:17px;font-weight:900;position:absolute;top:-18px;left:150px;box-shadow:0 3px #a64a20}#dialogue p{min-height:58px;margin:0;font-size:19px;font-weight:600;line-height:1.5}#dialogue small{text-align:right;color:#3a2a1a80;font-weight:700;animation:1.2s infinite blink;display:block}#note{z-index:12;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f141e73;place-items:center;animation:.3s fadein;display:grid;position:fixed;inset:0}#note .paper{background:#fbf0d4 repeating-linear-gradient(#0000 0 31px,#7a56381f 31px 32px);border-radius:6px;width:min(560px,92vw);padding:30px 36px 24px;animation:.4s cubic-bezier(.2,1.4,.4,1) pop;transform:rotate(-1deg);box-shadow:0 20px 50px #00000073,inset 0 0 60px #a06e2840}#note h2{color:var(--wood2);margin:0 0 10px;font-family:"Baloo 2",Nunito,sans-serif}#note pre{white-space:pre-wrap;color:#4a3420;margin:0 0 18px;font-family:Patrick Hand,Segoe Print,cursive;font-size:20px;line-height:32px}#fade{z-index:30;opacity:0;pointer-events:none;background:#050810;transition:opacity 1.2s;position:fixed;inset:0}#fade.on{opacity:1}.touch-only{display:none}body.is-touch .touch-only{display:flex}#hud.building #touch-actions{opacity:0;pointer-events:none}#touch-joy{left:max(34px, calc(env(safe-area-inset-left,0px) + 28px));bottom:max(32px, calc(env(safe-area-inset-bottom,0px) + 26px));pointer-events:auto;touch-action:none;z-index:4;flex-direction:column;align-items:center;gap:4px;margin:-14px;padding:14px;position:absolute}#touch-joy .joy-ring{background:radial-gradient(circle,#fff8e82e 0%,#19120c7a 100%);border:2.5px solid #fff8e86b;border-radius:50%;place-items:center;width:96px;height:96px;transition:border-color .2s,box-shadow .2s;display:grid;position:relative;box-shadow:0 6px 18px #0000004d,inset 0 0 12px #00000040}#touch-joy.active .joy-ring{border-color:#ffd54abf}#touch-joy.sprint .joy-ring{border-color:#8cff6a;box-shadow:0 0 16px #8cff6a73,inset 0 0 12px #8cff6a33}#touch-joy .jt{background:#fff8e859;border-radius:50%;width:6px;height:6px;position:absolute}#touch-joy .jt.n{top:7px;left:50%;transform:translate(-50%)}#touch-joy .jt.s{bottom:7px;left:50%;transform:translate(-50%)}#touch-joy .jt.w{top:50%;left:7px;transform:translateY(-50%)}#touch-joy .jt.e{top:50%;right:7px;transform:translateY(-50%)}#touch-joy .joy-knob{width:40px;height:40px;box-shadow:0 3px 0 var(--wood), 0 6px 12px #00000059;pointer-events:none;background:radial-gradient(circle at 35% 30%,#fff8ea,#e8cfa0);border-radius:50%;transition:background .15s}#touch-joy.sprint .joy-knob{background:radial-gradient(circle at 35% 30%,#fffbe0,#ffd54a)}#touch-joy .joy-label{display:none}#touch-actions{right:max(18px, calc(env(safe-area-inset-right,0px) + 14px));bottom:max(18px, calc(env(safe-area-inset-bottom,0px) + 14px));pointer-events:none;touch-action:none;z-index:4;width:144px;height:144px;transition:opacity .25s;position:absolute}#touch-actions .tbtn{pointer-events:auto;width:46px;height:46px;color:var(--wood2);box-shadow:0 3px 0 var(--wood), 0 6px 16px #00000052;touch-action:none;background:#fff8e8eb;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;font-size:9.5px;font-weight:900;display:flex;position:absolute}#touch-actions .tbtn svg{width:18px;height:18px}#touch-actions .tbtn.pressed,#touch-actions .tbtn:active{box-shadow:0 1px 0 var(--wood);transform:translateY(2px)scale(.95)}#touch-actions .act-main{width:66px;height:66px;box-shadow:0 4px 0 var(--wood), 0 8px 20px #00000061;background:linear-gradient(#fff8ea,#f3e2be);font-size:10.5px;bottom:12px;right:8px}#touch-actions .act-main svg{width:24px;height:24px}#touch-actions .act-jump{bottom:6px;right:86px}#touch-actions .act-run{bottom:64px;right:72px}#touch-actions .act-eat{background:#fff0cc;border:2px solid #e8a43a;bottom:88px;right:12px}#touch-actions .act-run.on{background:var(--gold);color:var(--ink);box-shadow:0 0 0 3px #fff,0 3px #b57410}#touch-actions .act-main.ready{color:#fff;background:linear-gradient(#86d665,#57a33c);box-shadow:0 0 0 3px #fffc,0 4px #3d7a28,0 8px 22px #57a33c8c}#touch-actions .act-main.urgent{color:var(--ink);background:linear-gradient(#ffe27a,#ff9a3a);animation:.35s infinite alternate pulse-urgent}@keyframes pulse-urgent{to{transform:scale(1.1);box-shadow:0 0 0 5px #fff,0 0 24px #ffd54a}}body.is-touch #hud .tl{top:8px;left:max(10px, env(safe-area-inset-left,10px));gap:6px;width:auto;max-width:260px}body.is-touch #hud .card{border-radius:14px;padding:6px 10px}body.is-touch #hud .status{border-radius:12px;padding:4px 8px}body.is-touch #hud .quest{border-radius:14px;width:250px;padding:7px 10px 8px;animation:.18s ease-out pop;display:none}body.is-touch #hud.showquest .quest{display:block}body.is-touch #hud .quest .qclose{place-items:center;display:inline-grid}body.is-touch #hud .quest .qhead{margin-bottom:2px}body.is-touch #hud .quest .qicon{flex:0 0 18px;width:18px;height:18px}body.is-touch #hud .quest small{font-size:10px}body.is-touch #hud .quest b.qt{font-size:13px}body.is-touch #hud .quest .qprog{padding:1px 5px;font-size:9.5px}body.is-touch #hud .quest p.qd{margin:1px 0 5px;font-size:11px;line-height:1.25}body.is-touch #hud .quest .qhint{margin-top:5px;padding:4px 7px;font-size:10.5px;line-height:1.25}body.is-touch #hud .quest .qhint svg{flex:0 0 13px;width:13px;height:13px}body.is-touch #hud .helpbtn{flex:0 0 32px;width:32px;height:32px;margin-left:4px;padding:5px;position:static}body.is-touch #hud .hints{top:54px;bottom:auto;left:max(10px, env(safe-area-inset-left,10px));z-index:8;grid-template-columns:1fr;max-width:min(320px,65vw);padding:8px 10px;font-size:11px}body.is-touch #hud .tr{top:8px;right:max(10px, env(safe-area-inset-right,10px))}body.is-touch #hud .tr-row{gap:6px}body.is-touch #hud .quickbar{border-radius:11px;gap:4px;padding:3px 4px}body.is-touch #hud .quickbar button{border-radius:8px;gap:1px;min-width:36px;height:34px;padding:2px 5px;font-size:8.5px}body.is-touch #hud .quickbar button svg{width:14px;height:14px}body.is-touch #hud .minimap{border-width:3.5px;width:84px;height:84px}body.is-touch #hud .bottom{bottom:max(6px, env(safe-area-inset-bottom,6px));gap:4px}body.is-touch #hud .prompt{display:none}body.is-touch #hud .itemname{height:14px;font-size:12px}body.is-touch #hud .dock{border-radius:16px;gap:4px;padding:5px 7px 6px}body.is-touch #hud .vitals{gap:8px;padding:0 1px}body.is-touch #hud .vital-bar{gap:1.5px}body.is-touch #hud .v-icon{flex:0 0 13.5px;width:13.5px;height:13.5px}body.is-touch #hud .hotbar{gap:4px}body.is-touch .slot{border-radius:10px;width:38px;height:38px}body.is-touch .slot img{width:30px;height:30px}body.is-touch .slot i{font-size:10.5px;bottom:1px;right:3px}body.is-touch .slot .k{font-size:8px;top:2px;left:4px}body.is-touch #hud .toasts{right:max(10px, env(safe-area-inset-right,10px));gap:4px;top:108px}body.is-touch #hud .toast:nth-last-child(n+4){display:none}body.is-touch .toast{box-shadow:0 2px 0 var(--wood), 0 4px 10px #0000002e;border-radius:9px;gap:4px;padding:2px 8px 2px 3px;font-size:11px}body.is-touch .toast img{width:20px;height:20px}body.is-touch .toast b{font-size:12px}body.is-touch .toast em{font-size:9.5px}body.is-touch .toast.text{padding:4px 9px}body.is-touch #hud .banner{max-width:70vw;padding:6px 20px 8px;top:16%}body.is-touch #hud .banner b{text-shadow:0 2px #c26a3c,0 4px 12px #00000073;font-size:24px}body.is-touch #hud .banner small{font-size:11px}body.is-touch #hud .msg{border-radius:9px;padding:5px 12px;font-size:11.5px;bottom:96px}body.is-touch #hud .floats .float{margin-left:-20px;font-size:17px}body.is-touch #hud .buildbar{bottom:max(6px, env(safe-area-inset-bottom,6px));width:auto;left:calc(max(34px, env(safe-area-inset-left,0px) + 28px) + 110px);right:max(10px, env(safe-area-inset-right,10px));transform:translateY(140%)}body.is-touch #hud .buildbar.show{transform:none}body.is-touch #hud .buildbar.picked .brow,body.is-touch #hud .buildbar.picked .btabs{display:none}body.is-touch #hud .btabs{gap:4px;margin-bottom:4px}body.is-touch #hud .btabs button{border-radius:8px;padding:3px 9px;font-size:10.5px}body.is-touch #hud .bup{border-radius:10px;gap:6px;margin-bottom:4px;padding:3px 7px;font-size:10.5px}body.is-touch #hud .bup-btn{border-radius:7px;padding:3px 8px;font-size:10.5px}#hud .bact.pick{display:none}body.is-touch #hud .buildbar.picked .bact.pick{display:inline-block}body.is-touch #hud .buildbar.picked .bdesc{display:none}body.is-touch #hud .bhead{border-radius:10px;gap:4px 8px;margin-bottom:4px;padding:4px 8px;font-size:10.5px}body.is-touch #hud .bhead b{font-size:11.5px}body.is-touch #hud .bactions{gap:4px}body.is-touch #hud .bactions .bact{border-radius:7px;padding:3px 7px;font-size:10.5px}body.is-touch #hud .brow{border-radius:12px;gap:4px;padding:5px}body.is-touch #hud .bnav{border-radius:8px;flex:0 0 24px;font-size:16px}body.is-touch .bcard{border-radius:9px;flex:0 0 72px;padding:4px}body.is-touch .bcard img{width:32px;height:32px}body.is-touch .bcard b{font-size:10px;line-height:1.15}body.is-touch .bcard .lock{font-size:9.5px}body.is-touch .cost{border-radius:5px;padding:0 3px 0 1px;font-size:9.5px}body.is-touch .cost img{width:14px;height:14px}body.is-touch #menu h1{margin-bottom:14px;font-size:clamp(32px,6.5vw,56px)}body.is-touch #menu .buttons{gap:7px;width:min(200px,65vw)}body.is-touch #menu .buttons button{border-radius:10px;padding:8px 14px;font-size:14px}body.is-touch #panel .sheet{width:min(450px,86vw);max-height:88vh;box-shadow:0 0 0 3px var(--cream2), 0 0 0 5px var(--wood), 0 12px 32px #00000073;border-radius:14px;padding:10px 14px 12px}body.is-touch #panel[data-kind=map] .sheet{text-align:center;width:min(320px,80vw)}body.is-touch #panel h2{min-height:26px;margin:0 34px 8px 0;font-size:16px;line-height:1.15}body.is-touch #panel[data-kind=map] h2{justify-content:center;margin:0 28px 6px}body.is-touch #panel .close{width:24px;height:24px;font-size:11px;top:8px;right:10px}body.is-touch #panel .sub{margin:0 0 5px;font-size:10px;line-height:1.25}body.is-touch #panel button:not(.close){box-shadow:0 2px 0 var(--wood), 0 3px 8px #00000026;border-radius:8px;padding:5px 10px;font-size:11px}body.is-touch #panel button.primary{box-shadow:0 2px #3d7a28,0 3px 8px #0000002e}body.is-touch #panel button.small{border-radius:7px;padding:3px 8px;font-size:10.5px}body.is-touch .pager{gap:8px;margin-top:6px;font-size:11px}body.is-touch .pager button{width:24px!important;padding:2px 0!important;font-size:14px!important}body.is-touch .invlabel{margin:4px 0 3px;font-size:10px}body.is-touch .invgrid{grid-template-columns:repeat(8,minmax(0,35px));gap:4px}body.is-touch .invgrid.hbrow{border-radius:10px;padding:4px}body.is-touch .invgrid .slot{border-radius:8px}body.is-touch .invgrid .slot img{width:25px;height:25px}body.is-touch .invgrid .slot i{font-size:9px;bottom:1px;right:2px}body.is-touch .invgrid .slot .k{font-size:7.5px;top:1px;left:3px}body.is-touch .desc{border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:36px;margin-top:6px;padding:5px 8px;font-size:10.5px;display:flex}body.is-touch .drow{flex:1;gap:7px}body.is-touch .drow img{width:28px;height:28px}body.is-touch .drow b{font-size:11px}body.is-touch .drow p{margin:1px 0 0;font-size:10px;line-height:1.2}body.is-touch .desc button{flex-shrink:0;margin-top:0}body.is-touch .recipes{gap:5px}body.is-touch .recipe{border-radius:10px;gap:7px;padding:5px 8px}body.is-touch .recipe .out{border-radius:8px;flex:0 0 34px;width:34px;height:34px}body.is-touch .recipe .out img{width:26px;height:26px}body.is-touch .recipe .out i{font-size:9px;right:2px}body.is-touch .recipe .info b{font-size:11.5px}body.is-touch .recipe .info small{font-size:9.5px;line-height:1.2}body.is-touch .station{font-size:9.5px}body.is-touch .tabs{gap:4px;margin:4px 0 6px}body.is-touch .tabs button{border-radius:7px!important;padding:4px 8px!important;font-size:10.5px!important}body.is-touch .jq{border-radius:9px;gap:6px;margin-bottom:4px;padding:5px 8px;font-size:11px}body.is-touch .jq span{width:16px;font-size:10.5px}body.is-touch .jq small{font-size:10px;line-height:1.2}body.is-touch .collect{grid-template-columns:repeat(4,1fr);gap:5px}body.is-touch .cc{border-radius:9px;padding:4px}body.is-touch .cc img{width:28px;height:28px}body.is-touch .cc .emo{font-size:18px}body.is-touch .cc b{font-size:10px}body.is-touch .cc small{font-size:8.5px}body.is-touch .jnote{border-radius:6px;margin-bottom:5px;padding:6px 8px;font-size:10.5px}body.is-touch #bigmap{aspect-ratio:1;width:min(180px,48vh);max-width:180px;box-shadow:0 0 0 2.5px var(--cream2), 0 0 0 4.5px var(--wood);border-radius:12px;margin:4px auto 6px}body.is-touch .settings{gap:5px;margin:4px 0 8px;font-size:11px}body.is-touch .settings label{grid-template-columns:110px 1fr;gap:6px}body.is-touch .settings label.vol{grid-template-columns:110px 1fr 32px}body.is-touch .settings select{background-position:right 7px center;background-size:11px;border-radius:7px;padding:3px 22px 3px 8px;font-size:10.5px}body.is-touch .settings input[type=range]{height:6px}body.is-touch .settings input[type=range]::-webkit-slider-thumb{border-width:2px;width:14px;height:14px}body.is-touch .settings input[type=checkbox]{border-radius:4px;width:15px;height:15px;margin-right:5px}body.is-touch .settings input[type=checkbox]:checked:after{font-size:10px}body.is-touch #panel .buttons{gap:5px}body.is-touch .controls{border-radius:8px;margin-top:6px;padding:4px 8px;font-size:9.5px;line-height:1.25}body.is-touch .controls h3{margin:2px 0;font-size:10.5px}body.is-touch .controls p{margin:2px 0}body.is-touch .lhsteps{gap:4px;margin-top:6px}body.is-touch .lh{border-radius:9px;gap:7px;padding:5px 8px;font-size:10.5px}body.is-touch .lh span{width:20px;height:20px;font-size:10px}body.is-touch .costs.big{margin:6px 0}body.is-touch .costs.big .cost{padding:1px 5px 1px 2px;font-size:10.5px}body.is-touch .costs.big .cost img{width:18px;height:18px}body.is-touch #dialogue{width:min(460px,88vw);min-height:68px;box-shadow:0 0 0 3px var(--cream2), 0 0 0 5px var(--wood), 0 12px 28px #0006;border-radius:14px;padding:10px 12px 8px 78px;bottom:8px}body.is-touch #dialogue .portrait{width:56px;height:56px;box-shadow:0 0 0 2.5px var(--cream2), 0 0 0 4.5px var(--wood);bottom:8px;left:10px}body.is-touch #dialogue .who{border-radius:8px;padding:2px 10px;font-size:11px;top:-11px;left:78px}body.is-touch #dialogue p{min-height:32px;font-size:12px;line-height:1.3}body.is-touch #dialogue small{font-size:9.5px}body.is-touch #note .paper{touch-action:pan-y;background-image:repeating-linear-gradient(#0000 0 21px,#7a56381f 21px 22px);width:min(380px,86vw);max-height:86vh;padding:14px 18px 12px;overflow:auto}body.is-touch #note h2{margin:0 0 4px;font-size:15px}body.is-touch #note pre{margin:0 0 8px;font-size:13px;line-height:21px}body.is-touch #note button{border-radius:8px;padding:5px 12px;font-size:11px}#rotate-overlay{z-index:120;text-align:center;color:#fff;background:radial-gradient(at 50% 80%,#2a4d6e 0%,#0d1a26 85%);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}#rotate-overlay .rot-card{background:var(--cream);width:100%;max-width:380px;color:var(--ink);box-shadow:0 0 0 6px var(--cream2), 0 0 0 10px var(--wood), 0 24px 60px #0000008c;border-radius:26px;flex-direction:column;align-items:center;gap:12px;padding:28px 24px 24px;display:flex}#rotate-overlay .rot-icon{background:var(--wood2);color:#fff;border-radius:50%;place-items:center;width:78px;height:78px;padding:14px;display:grid;box-shadow:0 6px 16px #00000040}#rotate-overlay .rot-icon svg{width:100%;height:100%;animation:2.2s ease-in-out infinite rotate-phone}@keyframes rotate-phone{0%,15%{transform:rotate(0)}50%,80%{transform:rotate(-90deg)}to{transform:rotate(0)}}#rotate-overlay h2{color:var(--wood2);margin:4px 0 0;font-family:"Baloo 2",Nunito,sans-serif;font-size:26px;line-height:1.15}#rotate-overlay p{color:#3a2a1ad9;margin:0;font-size:14px;line-height:1.45}#rotate-overlay .rot-tip{text-align:left;color:#4a3216;background:#fff3cc;border:1.5px solid #e0a82e;border-radius:14px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}#rotate-overlay .rot-tip svg{flex:0 0 20px;width:20px;height:20px;margin-top:1px}#rotate-overlay .rot-fs{width:100%;margin-top:4px;padding:12px 18px;font-size:16px}
