:root{--font-pixel:system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{color:#fff;background:#000;width:100%;height:100%;font-family:system-ui,sans-serif;overflow:hidden}#viewport{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}#stage{transform-origin:50%;background:#111;width:1280px;height:720px;position:relative;overflow:hidden}.game-mode{display:none;position:absolute;inset:0}.game-mode.visible{display:block}.game-mode img{image-rendering:pixelated}#mode-scene{transition:opacity .3s}#mode-scene.nav-fading-out{opacity:0}#mode-scene.nav-fading-in{opacity:0;transition:opacity .4s}.scene-root{width:100%;height:100%;position:relative}.scene-background{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scene-object{image-rendering:pixelated;position:absolute}.scene-hover-label{color:#fff;pointer-events:none;opacity:0;white-space:nowrap;background:#000000bf;border-radius:4px;padding:4px 10px;font-size:14px;transition:opacity .12s;position:absolute;transform:translate(-50%)}.scene-object[data-interactive=true]{cursor:pointer}.scene-object[data-interactive=true]:hover+.scene-hover-label,.scene-hover-label.visible{opacity:1}.scene-zones-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.scene-zone{fill:#0000;stroke:none;pointer-events:all;cursor:default}.scene-zone[data-interactive=true]{cursor:pointer}.scene-zone[data-show-outline=true][data-interactive=true]:hover{stroke:#ffd250a6;stroke-width:2px;fill:#ffd25012}.scene-hover-label--zone{transform:translate(-50%,-50%)}.ui-overlay{pointer-events:none;z-index:40;position:absolute;inset:0}.ui-overlay>*{pointer-events:auto}.context-menu{min-width:200px;font-family:var(--font-pixel);z-index:50;background:#1a1410;border:2px solid #4a3d28;animation:.12s ease-out menu-in;position:absolute}.context-menu-header{color:#c8b89a;border-bottom:1px solid #4a3d28;padding:8px 12px;font-size:14px}.context-menu-option{cursor:pointer;color:#b8a888;width:100%;font:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;display:flex}.context-menu-option:hover,.context-menu-option:focus-visible{color:#e8d8b0;background:#ffd2641a}@keyframes menu-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.examine-modal{z-index:60;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.examine-modal[hidden]{display:none}.examine-modal-backdrop{background:#000000a6;position:absolute;inset:0}.examine-modal-panel{width:calc(100% - 48px);max-width:600px;font-family:var(--font-pixel);color:#e8d8b0;background:#1a1410;border:2px solid #4a3d28;padding:24px;position:relative}.examine-modal-body{white-space:pre-line;margin-bottom:20px;line-height:1.5}.examine-modal-close{color:#c8b89a;cursor:pointer;font:inherit;background:0 0;border:2px solid #4a3d28;padding:8px 16px}.examine-modal-close:hover,.examine-modal-close:focus-visible{color:#e8d8b0;background:#ffd2641a}.main-menu{justify-content:center;align-items:flex-start;width:100%;height:100%;padding-top:140px;display:flex}.main-menu-panel{min-width:280px;font-family:var(--font-pixel);background:#1a1410;border:2px solid #4a3d28;flex-direction:column;align-items:center;gap:20px;padding:32px 40px 28px;animation:.12s ease-out menu-in;display:flex}.main-menu-title{color:#e8d8b0;letter-spacing:.08em;text-align:center;font-size:28px;font-weight:700}.main-menu-start{color:#c8b89a;cursor:pointer;min-width:180px;font:inherit;background:0 0;border:2px solid #4a3d28;padding:12px 24px;font-size:16px}.main-menu-start:hover:not(:disabled),.main-menu-start:focus-visible:not(:disabled){color:#e8d8b0;background:#ffd2641a}.main-menu-start:disabled{opacity:.45;cursor:not-allowed;color:#7a6e58}.main-menu-version{color:#8a7a62;text-align:center;font-size:13px}.menu-button{z-index:30;color:#c8b89a;cursor:pointer;font-family:var(--font-pixel);background:#1a1410;border:2px solid #4a3d28;padding:8px 14px;font-size:14px;position:absolute;top:12px;left:12px}.menu-button:hover,.menu-button:focus-visible{color:#e8d8b0;background:#ffd2641a}.menu-button[hidden]{display:none}.dev-panel{z-index:70;width:min(420px,100% - 48px);max-height:calc(100% - 80px);font-family:var(--font-pixel);color:#e8d8b0;background:#1a1410;border:2px solid #4a3d28;flex-direction:column;gap:12px;padding:16px;animation:.12s ease-out menu-in;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dev-panel-header{color:#c8b89a;font-size:15px;font-weight:700}.dev-panel-search-row{align-items:center;gap:8px;display:flex}.dev-panel-search-label{color:#b8a888;white-space:nowrap;font-size:14px}.dev-panel-search{color:#e8d8b0;min-width:0;font:inherit;background:#0f0c0a;border:2px solid #4a3d28;flex:1;padding:8px 10px;font-size:14px}.dev-panel-search:focus-visible{border-color:#8a7a58;outline:none}.dev-panel-list{flex-direction:column;gap:4px;min-height:0;max-height:360px;display:flex;overflow-y:auto}.dev-panel-row{cursor:pointer;color:#b8a888;width:100%;font:inherit;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dev-panel-row:hover,.dev-panel-row:focus-visible{color:#e8d8b0;background:#ffd2641a}.dev-panel-row-name{flex:1;min-width:0}.dev-panel-current{color:#8a7a62;white-space:nowrap;font-size:13px}.dev-panel-footer{color:#8a7a62;text-align:center;font-size:12px}.ui-screen{position:absolute}.ui-screen-bg{object-fit:fill;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;position:absolute;inset:0}.ui-zone{position:absolute}.ui-zone--button{cursor:pointer;pointer-events:all}.ui-zone--item-slot{pointer-events:all}.ui-item-icon{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;pointer-events:none}.ui-item-tooltip{color:#e8d8b0;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:1;background:#000000d9;max-width:240px;margin-bottom:6px;padding:6px 10px;font-size:13px;line-height:1.35;transition:opacity .12s,visibility .12s;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.ui-zone--item-slot:hover .ui-item-tooltip{opacity:1;visibility:visible}#mode-inventory.visible{background:#0a0806eb;flex-direction:column;padding:24px;display:flex;overflow:hidden}.inventory-header{color:#c8b89a;font-family:var(--font-pixel);border-bottom:2px solid #4a3d28;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;font-size:18px;display:flex}.inventory-close{color:#c8b89a;cursor:pointer;font:inherit;background:0 0;border:2px solid #4a3d28;padding:6px 12px;font-size:14px}.inventory-close:hover,.inventory-close:focus-visible{color:#e8d8b0;background:#ffd2641a}.inventory-grid{flex:1;grid-template-columns:repeat(auto-fill,88px);gap:16px;display:grid;overflow-y:auto}.inventory-tile{flex-direction:column;align-items:center;gap:4px;display:flex}.inventory-icon{width:64px;height:64px;image-rendering:pixelated;background:#1a1410;border:2px solid #4a3d28;justify-content:center;align-items:center;display:flex}.inventory-icon img{object-fit:contain;width:100%;height:100%}.inventory-icon-fallback{color:#4a3d28;justify-content:center;align-items:center;width:100%;height:100%;font-size:24px;display:flex}.inventory-tile:hover .inventory-icon{border-color:#c8b89a}.inventory-tile-label{color:#b8a888;font-size:11px;font-family:var(--font-pixel);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:80px;overflow:hidden}.inventory-tile-qty{color:#e8d8b0;font-size:11px;font-family:var(--font-pixel)}.inventory-empty{color:#6a5a48;font-family:var(--font-pixel);padding:32px;font-size:14px}.pickup-toast{color:#e8d8b0;font-family:var(--font-pixel);z-index:60;pointer-events:none;background:#1a1410;border:2px solid #4a3d28;align-items:center;gap:10px;padding:8px 16px;font-size:14px;animation:.2s ease-out toast-in;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.pickup-toast-icon{width:24px;height:24px;image-rendering:pixelated}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}
