*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#111b19;color:#f2f7f0;font-family:system-ui,Arial;touch-action:none}canvas{display:block;width:100%;height:100%}button,input{font:inherit}button{background:#348c56;border:1px solid #7ac88e;color:white;border-radius:9px;padding:10px 13px;cursor:pointer;font-weight:700;touch-action:none}button:disabled{opacity:.36}button.secondary{background:#293d35}.overlay{position:fixed;inset:0;background:rgba(9,18,15,.94);z-index:10;display:flex;justify-content:center;align-items:center;padding:14px;overflow:auto}.overlay[hidden],#hud[hidden],#mineProgress[hidden]{display:none!important}.panel{background:#192d25;border:1px solid #426e52;padding:25px;border-radius:17px;width:min(430px,96vw);max-height:96dvh;overflow:auto;box-shadow:0 15px 50px #0008}.panel h1{font-size:30px;letter-spacing:1px;margin:0}.panel h1 span{color:#7bdb90}.panel p{color:#c1d6c7;line-height:1.5}.panel input:not([type=range]){display:block;width:100%;background:#10221a;border:1px solid #4b7958;border-radius:8px;padding:13px;color:white;margin:16px 0}.panel>button{width:100%;margin:5px 0}.panel small{display:block;color:#9cb5a6;margin-top:12px}.wide{width:min(690px,96vw)}.panelHeader{display:flex;align-items:center;justify-content:space-between}#top{position:fixed;top:8px;left:8px;right:8px;display:flex;align-items:center;gap:5px;flex-wrap:wrap;z-index:3}#top>span,#top>button{background:#152b22d9;border:1px solid #49654e;border-radius:8px;padding:7px 9px;font-size:12px}#top button{background:#2b6645}#status{flex:1;min-width:100px}#crosshair{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);font-size:28px;text-shadow:1px 1px black;pointer-events:none}#hotbar{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:3px;max-width:95vw;overflow:auto;z-index:2}.slot{background:#17271fdc;min-width:54px;padding:5px;font-size:9px;border:2px solid #667d6c}.slot.active{border-color:#ffe68d}.swatch{width:21px;height:21px;margin:auto auto 3px;border:1px solid #fff5}#touch{display:none}#stick{position:fixed;bottom:80px;left:18px;width:125px;height:125px;border-radius:50%;border:3px solid #ffffff88;background:#ffffff24;z-index:4}#knob{position:absolute;left:40px;top:40px;width:40px;height:40px;background:#a2eab9aa;border-radius:50%;pointer-events:none}#actions{position:fixed;right:10px;bottom:83px;display:grid;grid-template-columns:repeat(2,70px);gap:8px;z-index:4}#actions button{height:55px;font-size:12px;background:#22583dc9}#inventoryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.invSlot{display:flex;align-items:center;gap:6px;text-align:left;background:#244332;font-size:12px;padding:9px 6px}.invSlot strong{margin-left:auto}.colorChip{display:inline-block;width:16px;height:16px;flex-shrink:0;border:1px solid #fff5}#recipes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}#recipes button{font-size:12px;text-align:left;background:#285e40}#mineProgress{position:fixed;top:54%;left:40%;width:20%;height:8px;background:#222;border:1px solid white;z-index:3}#mineFill{height:100%;width:0;background:#77e18c}#notice{position:fixed;top:60px;left:12px;color:#9ee8b0}input[type=range]{width:100%}@media(pointer:coarse){#touch{display:block}#hotbar{bottom:5px;max-width:65vw}.slot{min-width:45px}#top>span,#top>button{font-size:10px;padding:6px}}@media(max-height:440px){#stick{bottom:45px;width:95px;height:95px}#knob{left:27px;top:27px}#actions{bottom:48px}#actions button{height:40px}#hotbar{bottom:3px}.panel{padding:12px}}