:root{--bg-dark: #1a120e;--bg-panel: #2b201a;--bg-slot: #150f0b;--border-gold: #cfaa6e;--border-gold-dim: #8a6a3b;--text-main: #e8dcc5;--text-dim: #b09a80;--text-highlight: #ffcc00;--font-main: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}html,body,#scene-root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{background-color:#000;font-family:var(--font-main);color:var(--text-main);-webkit-user-select:none;user-select:none}#app-container{display:flex;width:100vw;height:100vh}#game-view{flex:3;position:relative;background-color:#111;overflow:hidden}.item-qty{position:absolute;bottom:1px;right:2px;font-size:10px;color:#fff;font-weight:700;text-shadow:1px 1px 0 #000;pointer-events:none}.drag-source-dim{opacity:.3}.pointer-events-none{pointer-events:none!important}.raid-timer{position:absolute;top:10px;left:50%;transform:translate(-50%);font-size:24px;font-weight:700;color:#fff;text-shadow:0 0 5px #000,0 0 10px #000;pointer-events:none;z-index:1000;font-family:monospace}.raid-timer.timer-warning{color:#fc0}.raid-timer.timer-critical{color:#f44;animation:pulse-red 1s infinite}@keyframes pulse-red{0%{transform:translate(-50%) scale(1);opacity:1}50%{transform:translate(-50%) scale(1.1);opacity:.8}to{transform:translate(-50%) scale(1);opacity:1}}#ui-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}#ui-menubar{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:auto;z-index:20}.menu-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--text-highlight);cursor:pointer;background:#140f0ae6;border:2px solid var(--border-gold-dim);border-radius:6px;box-shadow:0 0 10px #000000b3;-webkit-user-select:none;user-select:none}.menu-toggle:hover,#ui-menubar.open .menu-toggle{border-color:var(--border-gold);filter:brightness(1.2)}.menu-items{display:none;flex-direction:column;gap:6px;background:#140f0ae6;padding:8px;border:2px solid var(--border-gold-dim);border-radius:8px;box-shadow:0 0 15px #000c}#ui-menubar.open .menu-items{display:flex}.menu-btn-off{opacity:.55}.home-hold{position:absolute;bottom:150px;left:50%;transform:translate(-50%);min-width:220px;padding:8px 16px;background:#1e160eeb;border:2px solid var(--border-gold-dim);border-radius:6px;color:var(--text-main);font-style:italic;text-align:center;pointer-events:none;z-index:30;box-shadow:0 0 12px #000c}.home-hold.hidden{display:none}.home-hold-bar{margin-top:6px;height:6px;background:#00000080;border-radius:3px;overflow:hidden}.home-hold-fill{width:0;height:100%;background:var(--text-highlight);transition-property:width;transition-timing-function:linear}.menu-btn{min-width:130px;height:34px;padding:0 10px;gap:8px;box-sizing:border-box;background:linear-gradient(to bottom,#3d2e24,#2b201a);border:1px solid var(--border-gold-dim);border-radius:4px;color:var(--text-main);display:flex;flex-direction:row;justify-content:flex-start;align-items:center;cursor:pointer;font-size:11px;text-transform:uppercase;box-shadow:inset 0 0 5px #00000080;transition:all .1s}.menu-btn:hover{background:linear-gradient(to bottom,#4e3b2f,#3d2e24);filter:brightness(1.2);border-color:var(--border-gold)}.menu-btn .hotkey{font-size:14px;font-weight:700;color:var(--text-highlight);width:14px;text-align:center;text-shadow:1px 1px 0 #000}.ui-window{position:absolute;background:var(--bg-panel);border:2px solid var(--border-gold);border-radius:6px;box-shadow:0 10px 30px #000c,inset 0 0 20px #00000080;display:flex;flex-direction:column;pointer-events:auto;min-width:200px;color:var(--text-main);z-index:100}.window-header{background:linear-gradient(to bottom,#3d2e24,#251d18);padding:8px 10px;font-weight:700;text-align:center;border-bottom:2px solid var(--border-gold-dim);text-transform:uppercase;color:var(--text-highlight);text-shadow:1px 1px 0 #000;cursor:move;display:flex;justify-content:space-between;align-items:center;border-radius:4px 4px 0 0;font-size:14px;letter-spacing:1px}.window-content{padding:10px;display:flex;gap:10px}.window-controls{display:flex;gap:5px}.window-btn{width:18px;height:18px;background:#3a1a1a;border:1px solid #5a2a2a;color:#eb7a7a;font-size:18px;line-height:16px;text-align:center;cursor:pointer;border-radius:3px;justify-content:center;align-items:center}.window-btn:hover{background:#d33;color:#fff;border-color:#f55}#inventory-grid,#bag-grid,#loot-grid,.doll-grid{background-color:var(--bg-dark);border:1px solid var(--border-gold-dim);padding:0 2px 2px 0;box-shadow:inset 0 0 10px #000;border-radius:4px;max-width:fit-content}#inventory-grid,#bag-grid,#loot-grid,.inventory-grid{display:grid;gap:1px;position:relative;min-width:fit-content}#inventory-panel,#bag-panel,#loot-panel,.grid-container{position:relative}.grid-cell,.slot{width:40px;height:40px;background-color:var(--bg-slot);border:1px solid #3a2a20;box-shadow:inset 0 0 5px #000;border-radius:3px;position:relative}.slot{display:flex;justify-content:center;align-items:center;color:#6a5a40;font-weight:700;font-size:16px;text-transform:uppercase;text-shadow:1px 1px 0 #000}.slot>.item{width:100%;height:100%;position:relative}.slot:empty:after{content:attr(data-label);color:#5a4a35}.slot[style*=--slot-icon]:empty:after{content:"";width:72%;height:72%;background:var(--slot-icon) center / contain no-repeat;image-rendering:pixelated;filter:grayscale(1) brightness(.9);opacity:.22}.slot:hover,.grid-cell:hover{border-color:#6a5a40}.valid-drop{background-color:#64ff6466!important;box-shadow:inset 0 0 10px #5eff5e;position:relative;z-index:20}.invalid-drop{background-color:#ff646466!important;box-shadow:inset 0 0 10px #ff5e5e;position:relative;z-index:20}.item,.item-icon{border-radius:2px;box-shadow:1px 1px 3px #00000080;font-family:inherit;font-weight:700;text-shadow:1px 1px 0 #000;background:linear-gradient(135deg,#3d3020,#2a2015);border:1px solid #4a3a28;display:flex;justify-content:center;align-items:center;overflow:hidden}.item img{max-width:100%;max-height:100%;object-fit:contain}.item.unrevealed{cursor:pointer;background:linear-gradient(135deg,#282828,#1a1a1a)}.btn-small{background:linear-gradient(to bottom,#4a3a30,#2b201a);border:1px solid var(--border-gold-dim);color:var(--text-dim);font-size:11px;padding:3px 8px;cursor:pointer;border-radius:3px;text-transform:uppercase}.btn-small:hover{color:var(--text-main);border-color:var(--border-gold);background:linear-gradient(to bottom,#5a4a35,#3b251a)}.stat-box{width:60px;font-size:11px;color:var(--text-dim);padding:2px}.stat-box span{display:block;color:var(--text-main);font-size:13px;font-weight:700}.doll-grid{display:grid;grid-template-areas:".     head  ." "neck  body  ." "main  legs  off" "glo   feet  r1" "r2    belt  bag";gap:5px;justify-content:center;padding:10px}#tooltip{display:none;background:#0a0805f2;border:1px solid var(--border-gold);border-radius:4px;box-shadow:0 5px 20px #000000e6;padding:10px;font-size:13px;max-width:600px;width:max-content;pointer-events:none;z-index:99999;color:var(--text-main);position:fixed}.tooltip-container{display:flex;flex-direction:row;gap:10px}.tooltip-col{display:flex;flex-direction:column;min-width:180px;padding:0}.tooltip-divider-vert{width:1px;background:var(--border-gold);height:auto;margin:0 5px;opacity:.5}.tooltip-section{padding:0;margin-bottom:5px}.tooltip-header{font-weight:700;font-size:1.1em;color:var(--text-highlight);margin-bottom:2px}.tooltip-sub{font-size:.9em;color:#888;margin-bottom:5px}.tooltip-desc{font-style:italic;color:#aaa;margin-bottom:8px;font-size:.95em;line-height:1.3}.tooltip-stat{color:var(--text-dim)}.tooltip-stats{display:grid;grid-template-columns:1fr;gap:2px}.stat-diff-pos{color:#5eff5e;font-weight:700;font-size:.9em;margin-left:5px}.stat-diff-neg{color:#ff5e5e;font-weight:700;font-size:.9em;margin-left:5px}#window-minimap{background:#140f0acc}#window-minimap .window-content{background:transparent}#unified-inventory-layout{display:flex;gap:10px;align-items:flex-start}#unified-inventory-layout.sidebar-layout,#unified-inventory-layout.sidebar-layout #left-col,#unified-inventory-layout.sidebar-layout #inventory-right-col{width:100%}#main-inventory-container,#equipment-panel-container{background:#0003;border-radius:4px;padding:5px;max-width:max-content}#inventory-right-col{display:flex;flex-direction:column;gap:10px}.docked-panel{background:#2b201a80;border:1px solid var(--border-gold-dim);border-radius:4px;padding:4px;margin-top:5px}.docked-panel #bag-grid,.docked-panel #loot-grid{margin:0;box-shadow:none;pointer-events:auto}#window-inventory{width:auto;max-width:800px;min-width:fit-content}.scanning{animation:scan-pulse .5s infinite alternate;border:1px solid #00ffff!important;box-shadow:0 0 10px #0ff;position:relative;z-index:30}@keyframes scan-pulse{0%{box-shadow:0 0 5px #0ff;filter:brightness(1)}to{box-shadow:0 0 15px #0ff;filter:brightness(1.5)}}.hidden{display:none!important}.drag-ghost{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;opacity:.8}.docked-panel{display:block}.docked-panel.hidden{display:none!important}#docked-stash-grid{display:grid;gap:1px;max-height:400px;overflow-y:auto;border:1px solid #4a3a28;background:#1a120e;padding:2px}.stash-wallet{margin-bottom:5px;border-bottom:1px solid #4a3a28;padding-bottom:5px}.loot-header{font-size:12px;color:var(--border-gold);margin-bottom:8px;font-weight:700;text-transform:uppercase;letter-spacing:1px;text-shadow:1px 1px 2px #000}.dock-zone{background:#140f0af2;display:flex;flex-direction:column;padding:10px;box-shadow:0 0 20px #000}#dock-left{border-right:2px solid var(--border-gold)}#dock-right{border-left:2px solid var(--border-gold)}.ui-window.docked-right .window-header{border-radius:0;cursor:default}#dock-left #docked-loot{display:block;background:none;border:none}#debug-info{position:fixed;top:10px;right:10px;background:#000000b3;color:#0f0;font-family:monospace;font-size:11px;padding:5px;border:1px solid #004400;z-index:10000;pointer-events:none;white-space:pre;min-width:100px}#app-container{display:flex;width:100vw;height:100vh;overflow:hidden}#game-view{flex:1;position:relative}#unified-inventory-layout{display:flex;gap:10px}#left-col,#inventory-right-col,#inventory-far-right-col,#docking-area-main,#docking-area-side{display:flex;flex-direction:column;gap:10px}.panel-header{margin:0 0 5px;color:#888;font-size:11px;text-transform:uppercase;display:flex;justify-content:space-between}#stats-panel{background:#0000004d;padding:5px;border-radius:4px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;font-size:11px;color:#ccc}.stat-value-hp{color:#d66}.stat-value-mp{color:#66d}.slot[data-slot]{background-size:60%;background-position:center;background-repeat:no-repeat;opacity:1}.slot[data-slot]:after{content:none}.slot[data-slot=head]{grid-area:head}.slot[data-slot=neck]{grid-area:neck}.slot[data-slot=body]{grid-area:body}.slot[data-slot=main_hand]{grid-area:main}.slot[data-slot=legs]{grid-area:legs}.slot[data-slot=off_hand]{grid-area:off}.slot[data-slot=hands]{grid-area:glo}.slot[data-slot=feet]{grid-area:feet}.slot[data-slot=ring1]{grid-area:r1}.slot[data-slot=ring2]{grid-area:r2}.slot[data-slot=belt]{grid-area:belt}.slot[data-slot=bag]{grid-area:bag}#loot-title{color:#dcb15d;display:none;font-size:1.1em;margin:5px 0;text-align:center}.loot-controls,#loot-controls{display:flex;gap:6px;margin-bottom:8px;justify-content:flex-start;padding:4px;background:#0000004d;border-radius:4px}.loot-btn,#btn-reveal-all,#btn-loot-all{font-size:11px;padding:4px 10px;background:linear-gradient(180deg,#3a2a20,#2a1a10);color:var(--text-main);border:1px solid var(--border-gold-dim);cursor:pointer;font-weight:500;border-radius:4px;text-shadow:1px 1px 1px #000;transition:all .15s ease;font-family:var(--font-main)}.loot-btn:hover,#btn-reveal-all:hover,#btn-loot-all:hover{background:linear-gradient(180deg,#4a3a30,#3a2a20);border-color:var(--border-gold);box-shadow:0 0 4px #cfaa6e4d}.loot-btn:active,#btn-reveal-all:active,#btn-loot-all:active{background:linear-gradient(180deg,#2a1a10,#1a0a00);transform:translateY(1px)}#btn-loot-all,#btn-loot-all-docked{background:linear-gradient(180deg,var(--border-gold) 0%,#a68a4e 100%);color:#fff;border-color:#e8c888;font-weight:700}#btn-loot-all:hover,#btn-loot-all-docked:hover{background:linear-gradient(180deg,#e8c888 0%,var(--border-gold) 100%);box-shadow:0 0 6px #e8c88880}#window-minimap .window-content{padding:0!important;width:fit-content;height:fit-content;overflow:hidden}.corpse-layout-container{display:flex!important;flex-direction:row;gap:10px;background:transparent;border:none;align-items:flex-start}.corpse-left-col{background:#0003;border-radius:4px;padding:5px}.dock-wrapper{display:none;border-top:1px solid #554400;padding-top:5px;overflow:visible}.dock-wrapper.visible{display:block!important}.sort-btn{font-size:18px;text-align:center;width:20px;cursor:pointer}.slot-placeholder{background-size:60%;background-position:center;background-repeat:no-repeat;opacity:.3}.item-fitted{width:100%;height:100%}.slot{position:relative}.item-positioned{position:absolute;top:0;left:0;z-index:5}.dynamic-grid{display:grid;grid-template-columns:repeat(var(--cols),40px);grid-template-rows:repeat(var(--rows),40px);padding:0 2px 2px 0;position:relative}.item-dynamic{position:absolute;z-index:5;pointer-events:auto;cursor:grab;--cell: 40px;--gap: 1px;width:calc(var(--item-w) * var(--cell) - 1px);height:calc(var(--item-h) * var(--cell) - 1px);left:calc(var(--item-x) * (var(--cell) + var(--gap)) + 1px);top:calc(var(--item-y) * (var(--cell) + var(--gap)) + 1px)}.tooltip-label{color:#888;font-size:10px;margin-bottom:2px;text-transform:uppercase;font-weight:700}.item-unrevealed-style{background:#222!important;color:#555;display:flex!important;justify-content:center;align-items:center;font-size:24px}.item.unrevealed{text-align:center;align-content:center}.item-emoji{display:flex!important;justify-content:center;align-items:center;font-size:24px}.item-image{background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important}.item-colored{background-color:var(--bg-color)}.item-rarity{border:1px solid var(--border-color)!important}.item-interact{cursor:grab}.item-no-interact{cursor:default}.item-default-bg{background-color:#333}.window-btn.small{width:15px;height:15px;font-size:14px;line-height:14px}.tooltip-stat-value{color:#fff}.tooltip-sub{color:#888;font-size:10px;margin-bottom:5px}.tooltip-desc{color:#aaa;font-style:italic;margin-top:5px}.tooltip-header{color:var(--name-color, #fff)}#tooltip{position:fixed;top:0;left:0;z-index:9999;background:#0f1216f2;border:1px solid var(--border-gold-dim);box-shadow:0 8px 24px #000c,0 0 10px #0006 inset;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:6px;padding:10px 12px;pointer-events:none;color:#e0e0e0;font-size:13px;line-height:1.4;max-width:320px;min-width:200px;white-space:normal;transition:opacity .1s ease-in-out,transform .05s linear;display:block;opacity:1;visibility:visible}#tooltip.tooltip-wide{max-width:500px}#tooltip.hidden{opacity:0;visibility:hidden;pointer-events:none}.tooltip-header{font-family:Cinzel,serif;font-size:1.1em;font-weight:700;margin-bottom:2px;color:var(--name-color, #fff);text-shadow:0 2px 4px rgba(0,0,0,.8);border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4px}.tooltip-sub{font-size:.85em;color:#888;margin-bottom:8px;font-style:italic}.tooltip-stats{background:#0000004d;border-radius:4px;padding:6px;margin-top:6px}.tooltip-container{display:flex;gap:10px}.tooltip-col{flex:1}.tooltip-divider-vert{width:1px;background:#444;margin:0 5px}.tooltip-title{font-weight:700;font-size:1.1em;color:var(--border-gold);margin-bottom:4px}.tooltip-rarity{font-size:.9em;margin-bottom:4px;text-transform:capitalize}.tooltip-desc{font-style:italic;font-size:.9em;color:#aaa;margin-bottom:8px;line-height:1.2}.tooltip-stats{border-top:1px solid #444;padding-top:4px;margin-top:4px}.tooltip-stat{display:flex;justify-content:space-between;font-size:.9em;color:#ddd}.tooltip-label{font-size:.8em;color:#888;text-transform:uppercase;margin-bottom:4px;border-bottom:1px solid #333}.corpse-layout-container{display:flex;gap:15px;padding:10px;background:#0003;align-items:flex-start}.corpse-left-col{display:flex;flex-direction:column;gap:5px;min-width:140px}.corpse-grid{position:relative;display:grid;grid-template-columns:repeat(var(--cols),40px);grid-template-rows:repeat(var(--rows),40px);gap:0;background:var(--bg-dark);border:1px solid var(--border-gold-dim);box-shadow:inset 0 0 10px #000;padding:2px;border-radius:4px}.loot-header{font-size:11px;font-weight:700;color:var(--border-gold-dim);margin-bottom:4px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid #332211;padding-bottom:2px}.doll-grid{display:grid;grid-template-columns:repeat(3,40px);grid-template-rows:repeat(4,40px);gap:4px;justify-content:center;background:#0003;padding:6px;border-radius:4px;border:1px solid #3a2a20}.slot-placeholder{background-size:24px;background-position:center;background-repeat:no-repeat;opacity:.4;transition:opacity .2s}.slot-placeholder:hover{opacity:.6}.item-fitted{width:38px!important;height:38px!important;margin:1px;position:relative!important}.item-unknown{width:100%;height:100%;display:flex;justify-content:center;align-items:center;font-size:24px;font-weight:700;color:#a0a0a0;background:repeating-linear-gradient(45deg,#2b201a,#2b201a 10px,#362a22 10px 20px);text-shadow:0 0 5px rgba(0,0,0,.8);cursor:pointer;animation:unknown-pulse 2s infinite ease-in-out}@keyframes unknown-pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.item.scanning:after{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:#0ffc;box-shadow:0 0 10px #0ff,0 0 20px #0ff;animation:scan-line 1s infinite linear;pointer-events:none;z-index:10}.item.scanning{border:1px solid #00ffff}@keyframes scan-line{0%{top:0%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.item-positioned{grid-row-start:calc(var(--y, 0) + 1);grid-column-start:calc(var(--x, 0) + 1);grid-column-end:span var(--w, 1);grid-row-end:span var(--h, 1);justify-self:stretch;align-self:stretch}.context-menu{position:fixed;z-index:1000;background:linear-gradient(135deg,#3a2a20,#2b201a);border:2px solid var(--border-gold);border-radius:6px;box-shadow:0 4px 12px #000c;min-width:120px;padding:4px 0;font-family:inherit}.context-menu-option{padding:8px 12px;cursor:pointer;color:#d4c4a8;font-size:14px;transition:background .15s}.context-menu-option:hover{background:linear-gradient(90deg,rgba(212,175,55,.3),transparent);color:#fff}.qty{position:absolute;bottom:2px;right:4px;font-size:11px;font-weight:700;color:#fff;background-color:#0009;padding:1px 4px;border-radius:4px;box-shadow:0 1px 2px #00000080;pointer-events:none;z-index:10}.dock-zone{flex:0 0 auto;position:relative;z-index:5;display:flex;flex-direction:column}.dock-zone.hidden{display:none!important}.docked-content{position:static!important;width:100%!important;height:auto!important;flex:1;box-shadow:none!important;border-radius:0!important;left:auto!important;top:auto!important;transform:none!important;margin:0!important}.scene-container{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#1a120e,#2b201a);z-index:100;justify-content:center;align-items:center;flex-direction:column}.scene-game{display:flex!important;flex-direction:row!important;width:100vw;height:100vh;overflow:hidden}.scene-subtitle{color:var(--text-dim);margin-top:-10px;margin-bottom:30px}.home-content{text-align:center}.home-actions{display:flex;flex-direction:column;gap:20px;align-items:center}.stash-container{background:var(--bg-panel);border:2px solid var(--border-gold-dim);border-radius:8px;padding:20px;min-width:300px}.stash-grid{display:grid;grid-template-columns:repeat(4,60px);gap:8px;margin-top:15px}.stash-item{background:var(--bg-slot);border:1px solid var(--border-gold-dim);border-radius:4px;padding:8px;display:flex;flex-direction:column;align-items:center;font-size:12px;cursor:pointer;transition:transform .2s,border-color .2s}.stash-item:hover{transform:scale(1.05);border-color:var(--border-gold)}.empty-stash,.loading,.no-bounties{color:var(--text-dim);font-style:italic;padding:20px}.city-content{text-align:center;padding:20px}.city-grid{display:flex;gap:30px;margin:30px 0;flex-wrap:wrap;justify-content:center}.city-panel{background:var(--bg-panel);border:2px solid var(--border-gold-dim);border-radius:12px;padding:25px;min-width:280px;max-width:350px}.city-panel h2{margin-top:0;color:var(--text-highlight);border-bottom:1px solid var(--border-gold-dim);padding-bottom:10px}.map-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.btn-map{background:linear-gradient(180deg,#3a2a20,#2b1f18);border:1px solid var(--border-gold-dim);color:var(--text-main);padding:15px 25px;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s}.btn-map:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-map:hover:not(:disabled){background:linear-gradient(180deg,#4a3a2e,#3b2f28);border-color:var(--border-gold);transform:translate(5px)}.bounty-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto}.bounty-card{background:var(--bg-slot);border:1px solid #8a3030;border-radius:8px;padding:15px;text-align:left}.bounty-header{display:flex;justify-content:space-between;margin-bottom:8px}.nemesis-name{color:#f66;font-weight:700}.bounty-time{color:#fa0;font-size:12px}.bounty-location{font-size:12px;color:var(--text-dim);margin-bottom:8px}.bounty-reward{font-size:12px;font-weight:700;margin-bottom:6px}.bounty-loot{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.loot-item{background:#3a2a20;padding:2px 6px;border-radius:3px;font-size:11px}.loot-more{color:var(--text-dim);font-size:11px}.btn-hunt{background:linear-gradient(180deg,#8a3030,#5a2020);border:1px solid #aa4040;color:#fff;padding:8px 20px;border-radius:4px;cursor:pointer;width:100%;font-weight:700;transition:all .2s}.btn-hunt:hover{background:linear-gradient(180deg,#aa4040,#7a3030)}.btn-primary{background:linear-gradient(180deg,var(--border-gold) 0%,#a08050 100%);border:none;color:#1a1a1a;padding:15px 40px;border-radius:8px;font-size:18px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-primary:hover{transform:scale(1.05);box-shadow:0 5px 20px #cfaa6e66}.btn-secondary{background:transparent;border:2px solid var(--border-gold-dim);color:var(--text-main);padding:12px 30px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{border-color:var(--border-gold);background:#cfaa6e1a}.btn-large{margin-top:20px}.instance-warning{display:none;position:fixed;top:80px;left:50%;transform:translate(-50%);background:linear-gradient(180deg,#aa3030,#662020);border:2px solid #ff4040;border-radius:8px;padding:15px 30px;z-index:2000}.warning-content{display:flex;align-items:center;gap:15px;color:#fff}.warning-icon{font-size:24px}.warning-text{font-weight:700}.warning-time{font-size:18px;font-weight:700;color:#fc0}.item-img{width:100%;height:100%;object-fit:contain;display:block}.warning-flash{animation:warning-pulse 1s ease-in-out infinite}@keyframes warning-pulse{0%,to{box-shadow:0 0 10px #ff404080}50%{box-shadow:0 0 25px #ff4040cc}}.home-layout{display:flex;flex-direction:column;width:100%;max-width:1200px;height:100%;padding:20px}.home-header{text-align:center;margin-bottom:20px}.home-header h1{margin:0;color:var(--text-highlight)}.home-main{display:flex;flex:1;gap:30px;overflow-y:auto;justify-content:center}.home-player-section{display:flex;flex-direction:column;gap:15px}.home-stash-section{display:flex;flex-direction:column}#home-equipment-panel,#home-inventory-panel,#home-stash-panel{background:var(--bg-panel);border:2px solid var(--border-gold-dim);border-radius:8px;padding:10px}#home-equipment-panel .window-header,#home-inventory-panel .window-header,#home-stash-panel .window-header{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border-gold-dim);color:var(--text-highlight);font-weight:700}.stash-hint{font-size:11px;color:var(--text-dim);margin-bottom:10px}#home-equipment-doll .doll-grid{display:grid;grid-template-columns:repeat(3,50px);gap:4px}.inventory-content{position:relative}.home-footer{text-align:center;padding-top:20px}#scene-root{width:100%;height:100%}.scene-home{display:flex!important;background:linear-gradient(135deg,#1a120e,#2b201a)}.home-layout{width:100%;height:100%;display:flex;flex-direction:column;padding:20px}.home-header{text-align:center;padding-bottom:20px}.home-header h1{font-size:32px;color:var(--text-highlight);margin-bottom:5px}.home-main{flex:1;display:flex;gap:20px;justify-content:center;align-items:flex-start;overflow:auto;padding:10px}.home-panel{background:var(--bg-panel);border:2px solid var(--border-gold-dim);border-radius:8px;padding:15px;min-width:200px}.home-panel .panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border-gold-dim)}.home-panel .panel-header h3{margin:0;color:var(--text-highlight);font-size:14px;text-transform:uppercase}.home-character{width:250px}.home-equipment .doll-grid{display:grid;grid-template-columns:repeat(3,44px);gap:4px;justify-content:center}.home-stats .stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;font-size:12px}.home-inventory{min-width:350px}.home-bag-section{margin-top:15px;padding-top:15px;border-top:1px solid var(--border-gold-dim)}.home-stash{min-width:350px}.inventory-grid-container{position:relative}.inventory-grid-container .inventory-grid{display:grid;gap:1px;position:relative}.scene-city{display:flex!important;background:linear-gradient(135deg,#151825,#252840)}.city-layout{width:100%;height:100%;display:flex;flex-direction:column;padding:20px}.city-header{text-align:center;padding-bottom:20px}.city-header h1{font-size:32px;color:var(--text-highlight)}.city-main{flex:1;display:flex;flex-wrap:wrap;min-height:0;overflow-y:auto;gap:30px;justify-content:center;align-items:flex-start}.city-panel{background:var(--bg-panel);border:2px solid var(--border-gold-dim);border-radius:12px;padding:25px;min-width:300px}.city-footer{text-align:center;padding-top:20px}.travel-options{display:flex;flex-direction:column;gap:10px}.travel-option{background:var(--bg-slot);border:1px solid var(--border-gold-dim);border-radius:8px;padding:15px;cursor:pointer;transition:all .2s;text-align:left}.travel-option:hover{border-color:var(--border-gold);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.travel-option .map-icon{font-size:24px}.travel-option .map-name{font-weight:700;color:var(--text-highlight);margin-left:10px}.travel-option .map-desc{display:block;font-size:12px;color:var(--text-dim);margin-top:5px}.scene-game{display:flex!important;background:#000;position:relative;flex-flow:row;height:100%}.scene-game #game-view{flex:1;position:relative;height:100%;overflow:hidden}.scene-game #game-view canvas{display:block}.scene-home .ui-window{position:absolute!important;cursor:default!important}.scene-home .ui-window .window-header{cursor:default}.scene-home .home-main{display:flex;align-items:center;justify-content:flex-start;padding-left:50px}.scene-home .home-info{max-width:300px}.scene-home .home-info-content{color:var(--text-dim);margin-bottom:20px;line-height:1.6}.scene-home .home-info-content kbd{background:var(--bg-darker);padding:2px 6px;border-radius:3px;border:1px solid var(--border-gold-dim);font-family:monospace}.scene-home .home-actions{margin-top:30px}.corpse-layout-container{display:flex;gap:10px;align-items:flex-start}.corpse-left-col{display:flex;flex-direction:column;gap:5px}.corpse-right-col{display:flex;flex-direction:column;gap:10px}.rarity-common{color:#fff}.rarity-uncommon{color:#1eff00}.rarity-rare{color:#0070dd}.rarity-epic{color:#a335ee}.rarity-legendary{color:#ff8000}#wallet-grid{display:flex;flex-direction:row;gap:5px;background-color:#2b201a;padding:5px;border:1px solid #4a3a28;border-radius:4px;margin-top:5px;min-height:50px}#wallet-grid .grid-cell{border-color:#7d6537;background:#00000080;width:40px;height:40px}#wallet-grid .grid-cell:hover{border-color:gold}.home-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.home-layout-container{position:relative;z-index:1}.scene-settlement .home-layout-container{pointer-events:none}.vein-window{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));background:#1d1916;border:2px solid #5a4a3a;border-radius:6px;padding:12px;color:#e8d9b5;font-family:monospace;z-index:5000;box-shadow:0 6px 24px #0009;pointer-events:auto}.vein-props{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.vein-props:empty{display:none}.vein-prop:disabled{opacity:.45;cursor:default}.vein-window.choosing .vein-tools,.vein-window.choosing .vein-bar{display:none}.vein-ores{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin-bottom:8px;font-size:12px}.vein-ores-label{opacity:.8}.vein-ore{padding:1px 6px 1px 4px;border-radius:3px;background:#2e2620;border-left:6px solid var(--ore, #777)}.vein-ore.taken{opacity:.55;text-decoration:line-through}.vein-ores-done{flex-basis:100%;color:#f0d27a}.vein-tools{display:flex;gap:6px;margin-bottom:8px}.vein-tool{flex:1;padding:4px 6px;font:12px monospace;background:#3a2f27;color:#e8d9b5;border:1px solid #15110e;border-radius:3px;cursor:pointer}.vein-tool.active{background:#6b5440;border-color:#f0d27a}.vein-window.creaking{border-color:#b8442c;animation:vein-creak .25s infinite alternate}@keyframes vein-creak{0%{transform:translate(-50%,-50%)}to{transform:translate(calc(-50% + 1px),calc(-50% - 1px))}}.vein-title{font-size:16px;margin-bottom:8px}.vein-bar{position:relative;height:18px;background:#3a2f27;border-radius:3px;overflow:hidden;margin-bottom:8px}.vein-bar-fill{height:100%;background:linear-gradient(90deg,#b8442c,#c9a050);transition:width .2s}.vein-bar-text{position:absolute;inset:0;text-align:center;font-size:12px;line-height:18px}.vein-grid{display:grid;gap:3px;margin-bottom:8px}.vein-cell{aspect-ratio:1;border:1px solid #15110e;border-radius:3px;font:11px monospace;color:#f2e6c8;padding:0;cursor:pointer}.vein-cell.covered{background:linear-gradient(#8a7259,#6a5642);border-color:#2b221b;box-shadow:inset 0 2px #a88d6e,inset 0 -3px #4a3c2f}.vein-cell.covered:hover{background:linear-gradient(#a08568,#7c6550)}.vein-cell.rock{background:#110e0c;border-color:#000;box-shadow:inset 0 2px 4px #000;cursor:default;display:flex;align-items:center;justify-content:center;gap:3px}.vein-cell.fresh{animation:vein-fresh .35s ease-out}@keyframes vein-fresh{0%{box-shadow:0 0 0 2px #f0d27a,inset 0 0 8px #f0d27a}to{box-shadow:inset 0 2px 4px #000}}.vein-cell.rock.blur{color:#9a8c76}.vein-cell.crack{background:#2a1512;color:#e0583a;cursor:default}.vein-cell.hollow{background:#000;cursor:default}.vein-cell.ore{cursor:default}.vein-cell.whole{outline:2px solid #f0d27a;outline-offset:-2px}.vein-cell:disabled{cursor:default;opacity:.85}.vein-status{min-height:2.6em;font-size:12px;margin-bottom:8px}.vein-buttons{text-align:right}.mine-floor{position:absolute;top:12px;left:50%;transform:translate(-50%);background-color:#000000a6;color:#e8d9b5;padding:4px 14px;border-radius:4px;font-family:monospace;font-size:14px;pointer-events:none;z-index:50}.interaction-prompt{position:absolute;bottom:100px;left:50%;transform:translate(-50%);background-color:#000c;color:#fff;padding:10px 20px;border-radius:5px;font-size:16px;font-family:monospace;display:block;pointer-events:none;z-index:100}.docked-loot-header{margin:-4px -4px 5px;border-radius:4px 4px 0 0}.inventory-controls-container{margin-bottom:5px;display:flex;gap:5px}#btn-dock-side,#instance-warning{display:flex}#extraction-progress{display:block}.stat-warning{color:#fc0!important;font-weight:700}.stat-critical{color:#f44!important;font-weight:700;animation:pulse-red 1s infinite}.death-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:#64000080;display:flex;justify-content:center;align-items:center;color:#fff;font-size:48px;font-weight:700;z-index:9999}.city-side{display:flex;flex-direction:column;gap:20px}.city-service{display:flex;flex-direction:column;gap:8px}.service-row b{color:var(--text-highlight)}.service-note{font-size:12px;opacity:.7}.service-error{color:#ff6b6b;font-size:13px}.rebuild-next{display:flex;flex-direction:column;gap:6px;margin:6px 0}.cost-ok{color:#7ddc7d;margin-left:auto}.cost-missing{color:#ff9b6b;margin-left:auto}.service-locked{opacity:.85;font-style:italic}.city-service button{background:var(--bg-slot);color:inherit;border:1px solid var(--border-gold-dim);border-radius:6px;padding:8px 12px;cursor:pointer}.city-service button:hover:not(:disabled){border-color:var(--text-highlight)}.city-service button:disabled{opacity:.5;cursor:not-allowed}.city-merchant{max-width:380px}.shop-group{margin-top:6px;font-size:12px;font-weight:700;text-transform:uppercase;opacity:.8}.shop-list{display:flex;flex-direction:column;gap:4px;max-height:420px;overflow-y:auto}.shop-row{display:flex;align-items:center;gap:8px}.shop-icon{width:28px;height:28px;object-fit:contain;image-rendering:pixelated;flex:none;text-align:center}.shop-name{flex:1;font-size:13px}.city-service .shop-row button{padding:4px 8px;font-size:12px;white-space:nowrap}.context-menu-option.danger{color:#ff6b6b}.quest-row{display:flex;align-items:center;gap:8px;font-size:13px}.quest-text{flex:1}.quest-done{opacity:.55}.quest-check{color:#7ddc7d;font-size:18px;padding:0 8px}.board-head{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#b8a888;margin-bottom:6px}.board-group{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-highlight);margin:8px 0 4px}.board-card{border:1px solid var(--border-gold-dim);border-radius:6px;background:#00000040;padding:8px 10px;margin-bottom:6px}.board-card.quest-ready{border-color:#7ddc7d}.board-card.quest-done{opacity:.55}.board-card-who{display:flex;justify-content:space-between;color:var(--text-highlight)}.board-card-reward{color:#ffd76a}.board-card-note{font-style:italic;font-size:12px;color:#cbb994;margin:2px 0 6px}.board-card-need{display:flex;gap:8px;align-items:center}.board-card-what{flex:1;min-width:0}.board-bar{position:relative;display:flex;height:14px;margin:4px 0 2px;background:#00000073;border:1px solid var(--border-gold-dim);border-radius:3px;overflow:hidden}.board-bar-carried{background:#6fbf5f}.board-bar-home{background:#6fbf5f66}.board-bar-text{position:absolute;inset:0;text-align:center;font-size:11px;line-height:14px;color:#fff;text-shadow:0 0 2px #000}.board-card-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:6px}.board-card-actions .board-main{min-width:96px}.board-done-toggle{background:none;border:none;color:#b8a888;cursor:pointer;padding:4px 0;margin-top:4px}.settlement-dialog{position:absolute;top:70px;right:24px;width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 160px);display:flex;flex-direction:column;background:#1a120ef5;border:1px solid var(--border-gold-dim);border-radius:8px;z-index:150;box-shadow:0 6px 24px #0009}.settlement-dialog.hidden,.settlement-dialog .hidden,.settlement-message.hidden{display:none}.settlement-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font-weight:700;color:var(--text-highlight);border-bottom:1px solid var(--border-gold-dim)}.settlement-dialog-header.npc-head{align-items:flex-start;gap:10px}.npc-portrait{flex:0 0 56px;width:56px;height:56px;border:1px solid var(--border-gold-dim);border-radius:6px;background:#00000059;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:30px}.npc-portrait img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.npc-who{flex:1;min-width:0}.npc-name{display:block;margin-bottom:4px}.npc-line{font-weight:400;font-style:italic;font-size:13px;color:#e8d9b8;line-height:1.35}.npc-topics{display:flex;flex-wrap:wrap;gap:4px;padding:6px 12px 0;border-bottom:1px solid var(--border-gold-dim)}.npc-topic{background:#00000040;border:1px solid var(--border-gold-dim);border-bottom:none;border-radius:5px 5px 0 0;color:#cbb994;padding:4px 10px;font-size:13px;cursor:pointer;margin-bottom:-1px}.npc-topic:hover{color:var(--text-highlight)}.npc-topic.active{background:#1a120ef5;color:var(--text-highlight);border-color:var(--border-gold);border-bottom:1px solid rgba(26,18,14,.96)}.npc-error{margin:6px 12px 0}.settlement-dialog-body{overflow-y:auto;padding:8px 12px}.settlement-dialog .city-panel{background:none;border:none;padding:0;margin:0 0 8px}.settlement-message{position:absolute;top:90px;left:50%;transform:translate(-50%);max-width:min(560px,calc(100vw - 32px));background:#000000bf;color:#ffe9a8;padding:8px 16px;border-radius:6px;z-index:140;text-align:center}.scene-settlement #game-view{position:absolute;inset:0;z-index:0;overflow:hidden}.scene-settlement #game-view canvas{display:block}.hotbar{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:4px;pointer-events:none;z-index:5}.hotbar-slot{position:relative;width:42px;height:42px;background:#140f0ad9;border:2px solid var(--border-gold-dim);border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:22px}.hotbar-slot img{max-width:34px;max-height:34px;image-rendering:pixelated}.hotbar-worn{border-color:gold;box-shadow:0 0 6px #ffd70099}.hotbar-gone{opacity:.5}.hotbar-key{position:absolute;top:1px;left:3px;font-size:10px;color:#c9b48a}.hotbar-qty{position:absolute;bottom:1px;right:3px;font-size:10px;color:#fff;text-shadow:0 0 2px #000}.crafting-window{width:360px}.crafting-window .window-content{display:block;max-height:min(60vh,calc(100vh - 200px));overflow-y:auto;padding:8px}.crafting-status{min-height:1.2em;font-size:12px;margin-bottom:6px}.crafting-ok{color:#8fd88f}.crafting-error{color:#e07a6a}.crafting-empty{color:#998;font-style:italic}.crafting-recipe{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center;padding:6px;border:1px solid #4a3d2c;border-radius:4px;margin-bottom:6px;background:#00000040}.crafting-out{display:flex;align-items:center;gap:6px;font-weight:700;color:#e8dcc0}.crafting-qty{color:#c9b98f;font-weight:400}.crafting-needs{grid-column:1;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;color:#c9c0a8}.crafting-need{display:inline-flex;align-items:center;gap:3px}.crafting-short{color:#e07a6a}.crafting-icon{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;font-size:16px}.crafting-icon img{max-width:20px;max-height:20px;image-rendering:pixelated}.crafting-recipe button{grid-column:2;grid-row:1 / span 2;padding:4px 12px;cursor:pointer}.crafting-heading{margin:10px 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:1px;opacity:.7}.crafting-away{opacity:.55}.crafting-recipe button:disabled{opacity:.45;cursor:default}.crafting-station{display:flex;justify-content:space-between;align-items:center;padding:4px 6px;margin-bottom:6px;border:1px solid #6b5a3a;border-radius:4px;color:#e8dcc0;font-weight:700}.crafting-station.hidden{display:none}.crafting-reading{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:4px 6px;margin-bottom:6px;border:1px solid #3f5470;border-radius:4px;color:#c8d6ea;font-size:12px}.crafting-reading.hidden{display:none}.crafting-reading button{padding:2px 8px;cursor:pointer;font-size:11px}.crafting-tier{font-size:10px;font-weight:400;padding:0 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}.crafting-tier-2{background:#8a5a2b;color:#ffe2c0}.crafting-tier-3{background:#5b6470;color:#e6ecf2}.crafting-tier-4{background:#6a3f8a;color:#f0dcff}.crafting-mastery{display:flex;flex-direction:column;gap:2px;padding:4px 6px;margin-bottom:6px;background:#ffffff0a;border-radius:4px;font-size:12px}.crafting-mastery.hidden{display:none}.crafting-mastery-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.crafting-mastery-row button{padding:0 8px;cursor:pointer;font-size:11px}.crafting-mastery-points{color:#ffd27a;font-size:11px}.quality-pip{position:absolute;top:1px;left:1px;width:9px;height:9px;pointer-events:none;clip-path:polygon(0 0,100% 0,0 100%);z-index:2}.quality-crude{background:#7d6a5a}.quality-fine{background:#8fc1ea}.quality-masterwork{background:#f2c94c;box-shadow:0 0 4px #f2c94c}.tooltip-range{color:#8a8a8a;font-size:11px}.quality-text-crude .tooltip-stat-value{color:#b39b86}.quality-text-fine .tooltip-stat-value{color:#8fc1ea}.quality-text-masterwork .tooltip-stat-value{color:#f2c94c}.chest-note{font-size:12px;opacity:.75;margin:4px 0 6px;max-width:260px}#docked-stash .btn-pick-up{width:auto;padding:0 6px;margin-left:auto}#docked-stash #btn-stack-chest{width:auto;padding:0 6px;white-space:nowrap}.furnace-fuel,.furnace-got{font-size:12px;margin-bottom:6px}.furnace-got{color:#f0d27a}.furnace-job{display:flex;align-items:center;gap:8px;justify-content:space-between;background:#2e2620;padding:6px 8px;border-radius:3px;margin-bottom:8px;font-size:12px}.furnace-list{display:flex;flex-direction:column;gap:4px;max-height:50vh;overflow-y:auto;margin-bottom:8px}.furnace-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;padding:3px 0;border-bottom:1px solid #2e2620}.furnace-row.cannot{opacity:.5}.furnace-n{display:flex;gap:4px;flex-shrink:0}.furnace-go,.furnace-take{padding:2px 8px;font:12px monospace}.intro-overlay{position:fixed;inset:0;z-index:99999;background-color:#000;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;font-family:var(--font-main);color:var(--text-main);-webkit-user-select:none;user-select:none;opacity:1;transition:opacity .6s ease-out}.intro-overlay.intro-fade-out{opacity:0;pointer-events:none}.intro-letterbox-bar{width:100%;z-index:10;background:#090706;display:flex;box-sizing:border-box}.intro-bar-top{height:52px;align-items:center;justify-content:flex-end;padding:0 24px;border-bottom:1px solid rgba(207,170,110,.15)}.intro-skip-btn{background:#1e1611bf;border:1px solid rgba(207,170,110,.35);color:#cfaa6e;font-family:inherit;font-size:13px;padding:6px 14px;border-radius:4px;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.intro-skip-btn:hover{background:#3c2c20e6;border-color:#e8b04b;color:#fff}.intro-viewport{flex:1;position:relative;width:100%;display:flex;align-items:center;justify-content:center;background:#050403;overflow:hidden}.intro-slide-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;image-rendering:auto;transition:opacity .5s ease-in-out;filter:drop-shadow(0 10px 25px rgba(0,0,0,.9))}.intro-bar-bottom{min-height:124px;flex-direction:column;align-items:center;justify-content:center;padding:16px 28px 20px;background:linear-gradient(180deg,#090706,#040302);border-top:1px solid rgba(207,170,110,.2);text-align:center}.intro-subtitle{max-width:900px;width:100%;font-size:19px;line-height:1.6;color:#f3ede2;text-shadow:0 2px 6px rgba(0,0,0,.95);min-height:60px;display:flex;align-items:center;justify-content:center;font-style:italic}.intro-action-hint{margin-top:8px;font-size:12px;color:#8a7a68;text-transform:uppercase;letter-spacing:1px;transition:opacity .3s ease}.btn-story{width:100%;background:#1e1611b3;border:1px solid rgba(207,170,110,.35);color:#cfaa6e;padding:7px 12px;font-family:inherit;font-size:13px;cursor:pointer;border-radius:4px;transition:all .15s ease;text-align:center}.btn-story:hover{background:#3c2c20e6;border-color:#e8b04b;color:#fff}.quests-window{width:360px;max-width:calc(100vw - 32px);max-height:min(600px,calc(100vh - 100px));z-index:105}.quests-window-content{display:flex;flex-direction:column;padding:10px;gap:10px;max-height:calc(100vh - 160px);overflow:hidden}.quests-tabs{display:flex;gap:6px;border-bottom:1px solid rgba(207,170,110,.2);padding-bottom:8px}.quest-tab-btn{background:#0006;border:1px solid rgba(207,170,110,.3);color:var(--text-dim);padding:4px 10px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .15s ease}.quest-tab-btn:hover{background:#cfaa6e26;color:var(--text-highlight)}.quest-tab-btn.active{background:#cfaa6e40;border-color:var(--border-gold);color:var(--text-highlight);font-weight:700}.quests-body{display:flex;flex-direction:column;gap:14px;overflow-y:auto;max-height:480px;padding-right:4px}.quest-section,.quest-cards-list{display:flex;flex-direction:column;gap:8px}.quest-card{background:#00000059;border:1px solid rgba(207,170,110,.2);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:6px}.quest-card.quest-ready{border-color:#7ddc7d99;background:#28462833}.quest-card.quest-done{opacity:.6}.quest-card-header{display:flex;align-items:center;gap:8px}.quest-card-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.quest-card-main{flex:1;min-width:0}.quest-card-title{font-size:13px;font-weight:700;color:var(--text-highlight)}.quest-card-reward{font-size:11px;color:#d8c27a}.quest-card-unlocks{font-size:12px;color:#7ddc7d;font-weight:400}.quest-card-desc{font-size:12px;color:var(--text-dim);line-height:1.35}.quest-badge{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500;white-space:nowrap}.quest-badge-progress{background:#cfaa6e33;color:#e2c08d}.quest-badge-ready{background:#50b4504d;color:#7ddc7d;font-weight:700;animation:pulse-ready 2s infinite ease-in-out}@keyframes pulse-ready{0%,to{box-shadow:0 0 2px #7ddc7d66}50%{box-shadow:0 0 8px #7ddc7dcc}}.quest-badge-done{background:#64646440;color:#8fa090}.quest-progress-track{width:100%;height:6px;background:#00000080;border-radius:3px;overflow:hidden;border:1px solid rgba(255,255,255,.05)}.quest-progress-fill{height:100%;background:linear-gradient(to right,#cf9230,#e2b34a);transition:width .3s ease}.quest-progress-fill.ready{background:linear-gradient(to right,#459a45,#7ddc7d)}.quest-progress-count{font-size:11px;color:var(--text-dim);text-align:right}.quest-costs-list{display:flex;flex-direction:column;gap:4px;margin-top:4px}.quest-cost-row{display:flex;align-items:center;gap:6px;font-size:12px}.quest-cost-name{flex:1;color:var(--text-main)}.quest-reset-timer{margin-top:4px;font-size:12px}.quest-all-done-note{color:#7ddc7d;font-weight:500}.anvil-up,.anvil-broke{font-size:12px;margin-bottom:6px}.anvil-up{color:#8fd18f}.anvil-broke{color:#e07a5f}.quest-tab-new{color:#ffcf5a;font-weight:700}.quest-ended-list{display:flex;flex-direction:column;gap:4px}.quest-ended{display:flex;align-items:baseline;gap:6px;font-size:12px}.quest-ended .quest-text{flex:1}.quest-ended.quest-failed .quest-check{color:#e07070}.quest-ended.quest-abandoned{opacity:.6}.quest-ended.quest-new{background:#ffcf5a14}.quest-ended-status{font-size:11px;opacity:.8}.quest-new-tag{color:#ffcf5a}.quest-reason{opacity:.7}.quest-card-footer{margin-top:6px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.quest-hint-ready{font-size:11px;color:#7ddc7d}.quest-card.quest-boss{border-color:#c9a640}.quest-note{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:2000;max-width:min(480px,calc(100vw - 32px));padding:8px 14px;border-radius:6px;background:#14100aeb;border:1px solid #8a7040;color:#f0e6d0;font-size:13px;pointer-events:none}.quest-note-done{border-color:#5fa85f}.quest-note-failed{border-color:#b05050}.quest-have-where{opacity:.75;font-size:11px}.toasts{position:fixed;top:56px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;width:min(520px,calc(100vw - 32px));z-index:20000;pointer-events:none}.toast{pointer-events:auto;cursor:pointer;background:#1a120ef2;color:#ffe9a8;border:1px solid var(--border-gold-dim);border-radius:6px;padding:10px 14px;text-align:center;box-shadow:0 4px 16px #00000080}.start-menu{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,#2b201a,#1a120e 55%,#0d0907);overflow-y:auto}.start-panel{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:min(360px,100%);color:#e8dcc4;font:15px/1.4 system-ui,-apple-system,sans-serif}.start-logo{width:100%;height:auto;margin-bottom:12px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.55))}.start-title{text-align:center;font-size:18px;color:#ffd27a;margin-bottom:4px}.start-status,.start-note,.start-version{text-align:center;color:#e8dcc4b3;font-size:13px}.start-version{margin-top:14px;font:12px/1 monospace;color:#cfaa6e99}.start-btn{padding:11px 14px;border:1px solid rgba(207,170,110,.45);border-radius:4px;background:#1e1610e6;color:#e8dcc4;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}.start-btn:hover:not(:disabled),.start-btn:focus-visible{background:#cfaa6e2e;border-color:#cfaa6e;outline:none}.start-btn:disabled{opacity:.5;cursor:default}.start-primary{background:#6b4a24;border-color:#cfaa6e;color:#fff;font-weight:700}.start-quiet{background:none;border-color:transparent;color:#e8dcc4a6}.start-lang{font-size:18px;padding:16px}.start-form{display:flex;flex-direction:column;gap:8px}.start-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#e8dcc4cc}.start-form input{padding:9px 10px;border:1px solid rgba(207,170,110,.35);border-radius:3px;background:#120c08;color:#fff;font:15px system-ui,sans-serif}.start-form input:focus{outline:none;border-color:#cfaa6e}.start-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.start-google{display:flex;justify-content:center;min-height:44px}.start-error{text-align:center;color:#ff8a7a;font-size:13px}.start-busy{text-align:center;color:#ffd27a;font-size:13px}.settings-overlay{position:fixed;inset:0;z-index:9500;display:flex;align-items:center;justify-content:center;padding:16px;background:#0009}.settings-panel{display:flex;flex-direction:column;width:min(560px,100%);max-height:min(86vh,900px);background:#1a120e;border:1px solid rgba(207,170,110,.45);border-radius:6px;color:#e8dcc4;font:14px/1.4 system-ui,-apple-system,sans-serif;box-shadow:0 10px 30px #0009}.settings-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(207,170,110,.25);color:#ffd27a;font-size:16px}.settings-close{background:none;border:none;color:#e8dcc4;font-size:18px;cursor:pointer}.settings-body{overflow-y:auto;padding:8px 14px 14px}.settings-group{margin:14px 0 6px;color:#ffd27a;font-weight:700}.settings-sub{margin:10px 0 4px;color:#e8dcc499;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.settings-note{color:#e8dcc4a6;font-size:12px;margin-bottom:6px}.settings-row{display:grid;grid-template-columns:1fr 100px 100px 84px;gap:6px;align-items:center;padding:2px 0}.settings-action{overflow:hidden;text-overflow:ellipsis}.settings-bind,.settings-lang,.settings-reset{padding:5px 8px;border:1px solid rgba(207,170,110,.35);border-radius:3px;background:#120c08;color:#e8dcc4;font:inherit;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-bind:hover,.settings-lang:hover,.settings-reset:hover{border-color:#cfaa6e}.settings-bind.listening{border-color:#ffd27a;color:#ffd27a;animation:settings-blink 1s ease-in-out infinite}@keyframes settings-blink{50%{background:#cfaa6e33}}.settings-langs{display:flex;gap:8px}.settings-lang.active{border-color:#cfaa6e;background:#cfaa6e33}.settings-reset{margin-top:10px}@media(max-width:480px){.settings-row{grid-template-columns:1fr 72px 72px 64px}}.settings-bind.pad{color:#b9d4ff}.settings-pad{color:#e8dcc4cc}.settings-pad.on{color:#9fe0a0}.pad-cursor{position:fixed;left:0;top:0;width:22px;height:22px;margin:-3px 0 0 -3px;pointer-events:none;z-index:2147483000;background:no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M3 2 L3 18 L7.5 14 L10.5 20.5 L13.5 19 L10.5 12.8 L16.5 12.5 Z' fill='%23ffd27a' stroke='%23120c08' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");filter:drop-shadow(0 1px 2px rgba(0,0,0,.7))}.pad-cursor.hidden{display:none}.character-window{width:320px;max-width:calc(100vw - 32px);z-index:105}.character-body{display:flex;flex-direction:column;gap:8px;padding:10px;max-height:calc(100vh - 160px);overflow-y:auto;font-size:12px;color:#ccc}.char-level{display:flex;align-items:center;gap:8px;color:#e8d9a8;font-weight:700}.char-xp,.char-use{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.char-xp-fill{height:100%;background:#c9a640}.char-xp-text{font-weight:400;color:#999;font-size:11px}.char-points{color:#8fd18f}.char-attrs{display:flex;flex-direction:column;gap:8px}.char-attr{background:#0000004d;border-radius:4px;padding:6px 8px;display:flex;flex-direction:column;gap:4px}.char-attr-head{display:flex;align-items:center;gap:8px}.char-attr-name{flex:1;color:#eee;font-weight:700;cursor:help}.char-attr-value{font-size:15px;color:#e8d9a8;min-width:2ch;text-align:right}.char-attr-plus{padding:0 8px;min-height:22px;line-height:20px}.char-attr-desc,.char-use-note{font-size:11px;color:#999}.char-use{flex:none;height:4px}.char-use-fill{height:100%;background:#6fa3d6}.char-derived{display:grid;grid-template-columns:1fr auto;gap:2px 12px}.char-derived b{font-weight:400;color:#eee;text-align:right}.stats-load,.char-load{display:flex;align-items:center;gap:8px;font-size:11px;color:#ccc}.load-bar{position:relative;flex:1;height:16px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:3px;overflow:hidden}.load-fill{height:100%;background:linear-gradient(#6f9a52,#557a3d);transition:width .2s}.load-heavy .load-fill{background:linear-gradient(#d6b03a,#a8861f)}.load-over .load-fill{background:linear-gradient(#d65050,#a12f2f);animation:pulse-red 1s infinite}.load-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;text-shadow:0 1px 2px #000;font-size:11px}.char-skill{display:flex;align-items:center;justify-content:space-between;gap:8px}.char-skill .btn{padding:0 8px;min-height:22px}.char-skills{display:flex;flex-direction:column;gap:3px}.vein-window{--vein-scale: 1;--vein-cell-size: 32px;box-sizing:border-box;width:min(400px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border-radius:2px;background:#211b17}.vein-wall-frame{position:relative;width:max-content;max-width:none;box-sizing:border-box;margin:4px auto 10px;border:calc(16px * var(--vein-scale)) solid #4a3426;border-image:url(/assets/ui/vein-v1/prop-frame.png) 16 stretch;background:#171310;overflow:hidden}.vein-window.choosing .vein-wall-frame,.vein-window.unavailable .vein-wall-frame{display:none}.vein-grid{gap:0;width:max-content;margin:0;isolation:isolate}.vein-cell{position:relative;width:var(--vein-cell-size);height:var(--vein-cell-size);aspect-ratio:1;border:0;border-radius:0;overflow:hidden;background:#4a4039;box-shadow:none;touch-action:manipulation}.vein-cell.covered,.vein-cell.covered:hover,.vein-cell.rock,.vein-cell.crack,.vein-cell.hollow,.vein-cell.ore{background:#302721;box-shadow:none}.vein-art{position:absolute;inset:0;display:block;image-rendering:pixelated;pointer-events:none;z-index:0}.vein-cell .vein-art+.vein-art{z-index:1}.vein-cell.rock{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:1px;padding:2px}.vein-piece-edge{position:absolute;inset:1px;z-index:2;border-style:solid;border-color:var(--mineral-colour, #82b3b8);pointer-events:none;opacity:.8}.vein-cell.whole{outline:none}.vein-cell.whole .vein-piece-edge{border-color:#75644d;opacity:.5}.vein-cell:after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none}.vein-cell.aim:after,.vein-cell:focus-visible:after{border:2px solid #f4d891;background:#f4d89124}.vein-cell:focus-visible{outline:none}.vein-cell:disabled{opacity:1}.vein-tool,.vein-prop{display:flex;align-items:center;justify-content:center;gap:7px}.vein-tool img,.vein-prop img{width:24px;height:24px;object-fit:contain;image-rendering:pixelated}.vein-ore{display:inline-flex;align-items:center;gap:3px;border-left-width:2px}.vein-ore img{width:20px;height:20px;object-fit:contain;image-rendering:pixelated}.vein-falling-dust{display:none;position:absolute;inset:0;z-index:5;pointer-events:none;background:url(/assets/ui/vein-v1/dust.png) repeat;image-rendering:pixelated}.vein-window.creaking .vein-falling-dust{display:block;opacity:.2;animation:vein-dust 1.2s linear infinite}.vein-window.collapsed .vein-falling-dust{display:block;opacity:.7;animation:vein-collapse .65s ease-out both}.vein-cell.fresh:after{background:url(/assets/ui/vein-v1/impact.png) center / 100% 100%;image-rendering:pixelated;animation:vein-chip .35s ease-out both}.vein-window.creaking{animation-duration:.5s}@keyframes vein-chip{0%{opacity:1}to{opacity:0;transform:translateY(4px)}}@keyframes vein-dust{0%{background-position:0 -32px}to{background-position:0 32px}}@keyframes vein-collapse{0%{background-position:0 -64px;opacity:0}40%{opacity:.8}to{background-position:0 32px;opacity:.5}}@media(min-width:740px)and (min-height:690px){.vein-window{--vein-scale: 2;--vein-cell-size: 64px;width:736px}}@media(prefers-reduced-motion:reduce){.vein-window.creaking,.vein-window .vein-cell.fresh,.vein-window .vein-falling-dust,.vein-window .vein-cell.fresh:after{animation:none}.vein-cell.fresh:after{opacity:0}}.vein-window.braced .vein-wall-frame{border-image-source:url(/assets/ui/vein-v1/prop-braced.png)}.vein-preview{margin:0;min-height:100dvh;background:#171b17}#preview-controls{position:relative;z-index:6000;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:10px;background:#30271e;color:#ead7b7;font:13px system-ui}#preview-controls small{flex-basis:100%;text-align:center}#preview-controls button,#preview-controls select{padding:5px;background:#4d4030;color:#fff0d1;border:1px solid #998063}.vein-preview .vein-window{top:calc(50% + 32px);max-height:calc(100dvh - 100px)}@media(min-width:1000px)and (min-height:690px){.vein-window:not(.choosing):not(.unavailable){--vein-scale: 2;--vein-cell-size: 64px;display:grid;grid-template-columns:704px minmax(180px,1fr);grid-template-rows:auto auto auto auto 1fr auto;gap:8px 12px;width:min(980px,calc(100vw - 24px))}.vein-window .vein-title{grid-column:1 / -1;grid-row:1;margin:0}.vein-window .vein-wall-frame{grid-column:1;grid-row:2 / 7;margin:0}.vein-window .vein-bar{grid-column:2;grid-row:2;margin:0}.vein-window .vein-ores{grid-column:2;grid-row:3;align-content:start;margin:0}.vein-window .vein-tools{grid-column:2;grid-row:4;flex-direction:column;margin:0}.vein-window .vein-props{grid-column:2;grid-row:4}.vein-window .vein-status{grid-column:2;grid-row:5;margin:0}.vein-window .vein-buttons{grid-column:2;grid-row:6;align-self:end}.vein-window .vein-buttons button{width:100%}}@media(min-width:740px)and (max-width:999px)and (max-height:899px){.vein-window{--vein-scale: 1;--vein-cell-size: 32px;width:400px}}.vein-window.hidden{display:none!important}.effects-bar{position:absolute;top:44px;left:50%;transform:translate(-50%);display:flex;gap:4px;z-index:1000}.effect-square{position:relative;width:28px;height:28px;border:2px solid;border-radius:4px;background:#14100ccc;display:flex;align-items:center;justify-content:center;overflow:hidden;pointer-events:auto}.effect-square.effect-debuff{background:#3c0e0ed9}.effect-icon{font-size:16px;line-height:1}.effect-shade{position:absolute;left:0;top:0;width:100%;background:#0000008c;pointer-events:none}.effect-time{position:absolute;right:1px;bottom:0;font:700 10px monospace;color:#fff;text-shadow:0 0 2px #000,0 0 2px #000}.vein-window.choosing,.vein-window.unavailable{width:min(440px,calc(100vw - 24px))}.vein-window .vein-prop,.vein-window .vein-leave{padding:7px 10px;border:1px solid #8e7555;border-radius:2px;background:#453728;color:#f0dfbd;font:12px monospace;cursor:pointer}.vein-window .vein-prop:hover,.vein-window .vein-leave:hover{background:#62503a}.vein-window .vein-prop:disabled{opacity:.45;cursor:default}.vein-cell .vein-hint,.vein-cell .vein-uncertain{position:absolute;inset:0;z-index:3;display:block;padding:0;background:none;border:0;border-radius:0;text-shadow:none;pointer-events:none}.vein-cell .vein-hint .vein-art{z-index:3}.vein-cell.single-hint .vein-hint.ore .vein-art{transform:translate(calc(6px * var(--vein-scale)),calc(7px * var(--vein-scale)))}.vein-cell.single-hint .vein-hint.crack .vein-art{transform:translate(calc(6px * var(--vein-scale)),calc(-10px * var(--vein-scale)))}.vein-cell.single-hint .vein-hint.air .vein-art{transform:translate(calc(-10px * var(--vein-scale)))}.vein-window,.vein-help-panel{border:8px solid transparent;border-image:url(/assets/ui/vein-v1/ui-panel.png) 4 fill / 8px;border-radius:0;color:#e7d5b1;box-shadow:0 12px 40px #0009}.vein-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.vein-heading .vein-title{margin:0}.vein-window .vein-tool,.vein-window .vein-prop,.vein-window .vein-leave,.vein-help-toggle,.vein-help-close{border:6px solid transparent;border-image:url(/assets/ui/vein-v1/ui-button.png) 4 fill / 6px;border-radius:0;background:#352a20;color:#f0dfbd;cursor:pointer;font:inherit;font-size:12px;min-height:38px;box-sizing:border-box}.vein-window .vein-tool.active{border-image-source:url(/assets/ui/vein-v1/ui-button-active.png);color:#ffe49c}.vein-window button:focus-visible,.vein-help-close:focus-visible{outline:2px solid #ffe49c;outline-offset:2px}.vein-window .vein-tool:hover,.vein-window .vein-prop:hover,.vein-window .vein-leave:hover,.vein-help-toggle:hover,.vein-help-close:hover{filter:brightness(1.18)}.vein-help-toggle,.vein-help-close{--vein-scale: 1;flex:0 0 40px;width:40px;height:40px;padding:0;display:grid;place-content:center}.vein-window .vein-bar{height:32px;border:4px solid transparent;border-image:url(/assets/ui/vein-v1/ui-panel.png) 4 fill / 4px;border-radius:0;box-sizing:border-box;background:#161310}.vein-bar-fill{background:#c9a050 url(/assets/ui/vein-v1/ui-meter-amber.png) repeat-x left center / 48px 24px;image-rendering:pixelated}.vein-bar[data-tone=danger] .vein-bar-fill{background-image:url(/assets/ui/vein-v1/ui-meter-danger.png);background-color:#a34832}.vein-bar[data-tone=worn] .vein-bar-fill{filter:saturate(.65)}.vein-bar-text{display:grid;place-content:center;line-height:24px;color:#fff0cf;text-shadow:1px 1px #17120e,-1px -1px #17120e,1px -1px #17120e,-1px 1px #17120e;font-weight:700}.vein-ore{border:4px solid transparent;border-image:url(/assets/ui/vein-v1/ui-panel.png) 4 fill / 4px;border-radius:0;padding:3px 5px}.vein-status{margin-top:10px;padding:8px 10px;border-top:2px solid #695136;line-height:1.5;color:#e7c892}.vein-status:empty{min-height:0;padding:0;border:0;margin:0}.vein-help-layer{position:fixed;inset:0;z-index:5100;display:grid;place-items:center;padding:16px;background:#0c0b09c9;pointer-events:auto;box-sizing:border-box}.vein-help-layer.hidden{display:none!important}.vein-help-panel{width:min(580px,100%);max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:16px;background:#211b17;font-size:14px;line-height:1.5}.vein-help-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px}.vein-help-panel h2{font-size:20px;color:#f1d49a;margin:0}.vein-help-panel h3{font-size:15px;color:#e4bd77;margin:18px 0 5px}.vein-help-panel p{margin:4px 0 8px}.vein-help-legend{list-style:none;padding:0;margin:18px 0}.vein-help-legend li{display:grid;grid-template-columns:36px 1fr;gap:10px;margin:14px 0}.vein-help-legend strong{color:#f0dfbd}.vein-help-symbol{--vein-scale: 1;position:relative;width:32px;height:32px;background:#3c342a}.vein-help-symbol .vein-art{position:absolute;inset:0}.vein-help-symbol.ore .vein-art{transform:translate(6px,7px)}.vein-help-symbol.crack .vein-art{transform:translate(6px,-10px)}.vein-help-symbol.air .vein-art{transform:translate(-10px)}.vein-help-rock{padding-top:12px;border-top:2px solid #695136;color:#bba783}@media(min-width:1000px)and (min-height:690px){.vein-window .vein-heading{grid-column:1 / -1;grid-row:1;margin:0}.vein-window .vein-status{grid-column:1 / -1;grid-row:7}}.vein-help-toggle,.vein-help-close{position:relative}.vein-help-toggle .vein-art,.vein-help-close .vein-art{inset:3px;width:32px;height:32px}.vein-preview #preview-controls{z-index:5001}
