*{margin:0;padding:0;box-sizing:border-box}:root{--surface-game: #05070a;--surface-scrim: rgba(8, 10, 15, .82);--surface-panel: rgba(15, 18, 25, .75);--surface-inventory: #1c212c;--surface-inventory-header: #131720;--surface-card: #151922;--surface-slot: #11141c;--surface-slot-hover: #262d3a;--surface-button: #2a313e;--surface-button-hover: #3b4556;--surface-button-active: #1d222c;--text-primary: #f8fafc;--text-inventory: #e2e8f0;--text-muted: #94a3b8;--text-xp: #38bdf8;--text-disabled: #64748b;--border-default: #334155;--border-panel: #475569;--border-slot: #334155;--border-selected: #38bdf8;--border-owned: #22c55e;--border-inset-dark: #0f172a;--border-inset-light: #475569;--accent-success: #22c55e;--accent-error: #ef4444;--accent-xp: #38bdf8;--accent-gold: #f59e0b;--accent-glow: rgba(56, 189, 248, .35);--cost-wood: #eab308;--cost-iron: #cbd5e1;--armor-tier-0: #2f67d8;--armor-tier-1: #8b5a2b;--armor-tier-2: #b0b0b0;--armor-tier-3: #e6c200;--armor-tier-4: #4ae0e0;--armor-tier-5: #3d2a4a;--gear-tier-color: var(--armor-tier-0);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--hotbar-slot-size: clamp(36px, 10vw, 46px);--inventory-slot-size: clamp(32px, 8.8vw, 44px);--inventory-output-slot-size: clamp(44px, 11vw, 54px);--tree-node-size: clamp(56px, 5.5vw, 72px);--tree-gap: clamp(8px, 1.4vw, 16px);--tree-edge: 2px;--affordance-exp: var(--accent-xp);--affordance-resource: #e6c200;--state-owned: var(--border-owned);--state-pending: #c9a227;--state-locked: var(--text-disabled);--panel-command-width: min(1180px, calc(100vw - 2 * var(--space-4)));--panel-command-max-block: calc(100dvh - 136px) ;--motion-fast: .12s}html,body{width:100%;height:100%;overflow:hidden;font-family:Courier New,Consolas,monospace;background:var(--surface-game);user-select:none}#app{width:100%;height:100%}canvas{display:block}.game-portal{min-height:100%;display:grid;place-items:center;padding:clamp(20px,5vw,64px);color:var(--text-primary);background:radial-gradient(circle at 18% 18%,rgba(56,189,248,.14),transparent 34%),radial-gradient(circle at 82% 78%,rgba(34,197,94,.09),transparent 32%),linear-gradient(145deg,#05070a,#0b111b 58%,#080b10);overflow:auto;user-select:text}.portal-card{width:min(680px,100%);padding:clamp(28px,5vw,52px);border:1px solid var(--border-panel);border-radius:12px;background:#131720f0;box-shadow:0 24px 80px #0000008c}.portal-eyebrow{margin-bottom:12px;color:var(--accent-xp);font-size:12px;font-weight:700;letter-spacing:.18em}.portal-card h1{font-size:clamp(36px,7vw,68px);line-height:.95;letter-spacing:-.05em;text-transform:uppercase}.portal-lead{margin-top:18px;color:var(--text-muted);font-size:16px;line-height:1.6}.portal-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}.game-portal button,.game-portal input{min-height:48px;border:1px solid var(--border-panel);border-radius:5px;background:var(--surface-button);color:var(--text-primary);font:inherit}.game-portal button{padding:0 18px;cursor:pointer;font-weight:700;letter-spacing:.04em}.game-portal button:hover:not(:disabled),.game-portal button:focus-visible{background:var(--surface-button-hover);border-color:var(--accent-xp)}.game-portal button:disabled,.game-portal input:disabled{cursor:wait;opacity:.55}.game-portal .portal-primary{border-color:var(--accent-xp);background:#075985}.portal-join{margin-top:26px}.portal-join label{display:block;margin-bottom:8px;color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.portal-join>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.portal-join input{width:100%;padding:0 14px;color:var(--accent-gold);font-size:20px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.portal-notice{margin-top:26px;padding:12px 14px;border-left:3px solid var(--accent-gold);background:#f59e0b14;color:var(--text-muted);font-size:12px;line-height:1.5}.portal-notice strong{color:var(--accent-gold)}.portal-status{min-height:20px;margin-top:16px;color:var(--accent-xp);font-size:13px}.portal-status[data-error=true]{color:#fca5a5}.blocking-screen .portal-card{text-align:center}.blocking-detail{margin-top:18px;color:var(--text-disabled);font-size:13px;line-height:1.5}#connection-status{position:fixed;top:12px;right:12px;z-index:95;max-width:min(420px,calc(100vw - 24px));padding:7px 10px;border:1px solid var(--border-default);border-radius:4px;background:#080a0fe0;color:var(--text-muted);font-size:11px;line-height:1.35;pointer-events:none}#connection-status[data-phase=connected]{border-color:var(--accent-success);color:#bbf7d0}#connection-status[data-phase=rejected],#connection-status[data-phase=config_error]{border-color:var(--accent-error);color:#fecaca}@media(max-width:560px){.portal-actions,.portal-join>div{grid-template-columns:1fr}}.overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface-scrim);backdrop-filter:blur(6px);color:var(--text-primary);z-index:100;cursor:pointer;text-align:center;padding:var(--space-4)}.overlay-content{width:min(680px,calc(100vw - 32px));background:var(--surface-inventory);border:2px solid var(--border-panel);box-shadow:0 12px 32px #000000bf,inset 0 1px #ffffff1a;border-radius:6px;padding:var(--space-5);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);pointer-events:auto}.overlay h1{font-size:32px;font-weight:700;letter-spacing:2px;color:var(--text-primary);text-transform:uppercase;margin-bottom:0}.overlay .instructions{width:100%;font-size:13px;line-height:1.6;background:var(--surface-card);padding:var(--space-4);border:1px solid var(--border-default);border-radius:4px;text-align:left}.controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4);margin-top:var(--space-2)}.control-item{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--text-inventory)}.keycap{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;background:var(--surface-button);border:1px solid var(--border-panel);border-bottom-width:2px;border-radius:3px;color:var(--accent-xp);font-weight:700;font-size:11px}.overlay .click-hint,.overlay-play-btn{margin-top:var(--space-2);display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);background:#0369a1;border:1px solid #38bdf8;border-radius:4px;color:#fff;font-size:16px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:background .15s ease}.overlay-play-btn:hover{background:#0c4a6e}.overlay.game-over h1{color:var(--accent-error)}.overlay.game-over .overlay-play-btn{background:#b91c1c;border-color:#f87171}@keyframes blink{50%{opacity:.3}}#crosshair{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;color:#ffffffd9;font-size:22px;text-shadow:0 0 2px #000}#hud{position:fixed;left:50%;bottom:10px;transform:translate(-50%);z-index:10;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:6px}#hearts{font-size:20px;text-shadow:0 0 3px #000}#chest-timer,#chest-prompt{min-height:18px;color:var(--text-primary);background:var(--surface-panel);border:2px solid var(--border-default);border-radius:4px;padding:var(--space-1) var(--space-3);font-size:13px;font-weight:700;line-height:1.3;text-shadow:1px 1px 0 var(--surface-game)}#chest-timer:empty,#chest-prompt:empty{display:none}#chest-prompt{border-color:var(--accent-xp)}#arena-status{position:fixed;left:12px;top:12px;z-index:10;pointer-events:none;color:var(--text-primary);background:var(--surface-panel);border:2px solid var(--border-default);border-radius:4px;padding:var(--space-2) var(--space-3);font-size:13px;font-weight:700;line-height:1.3;text-shadow:1px 1px 0 #000}#hud-resources{position:fixed;top:36px;left:12px;z-index:20;font:12px/1.3 Courier New,monospace;color:#e8e8e8;text-shadow:1px 1px 0 #000;pointer-events:none}#hotbar{display:flex;gap:2px;background:#00000073;padding:3px;border-radius:4px}.hotbar-slot{width:var(--hotbar-slot-size);height:var(--hotbar-slot-size);border:2px solid var(--border-slot);background:var(--surface-slot);position:relative;border-radius:3px}.hotbar-slot.selected{border-color:var(--border-selected);box-shadow:0 0 6px #ffffffb3}.hotbar-slot canvas{width:100%;height:100%;image-rendering:pixelated}.slot-count{position:absolute;right:2px;bottom:0;color:var(--text-primary);font-size:13px;font-weight:700;text-shadow:1px 1px 0 #000;pointer-events:none}.inv-screen{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-4);background:transparent;pointer-events:none}.inv-panel{width:max-content;max-width:min(640px,calc(100vw - 2 * var(--space-4)));background:#1a1f2b;border:2px solid var(--border-panel);box-shadow:0 10px 25px #000000b3;border-radius:6px;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:auto;color:#f1f5f9}.inv-header-row,.forge-header-row{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--border-default);padding-bottom:var(--space-2)}.inv-panel h2,.forge-panel h2{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:1px}.inv-header-hint,.forge-hint{font-size:11px;color:var(--text-muted);font-weight:700}.forge-role-note{margin:0;padding:var(--space-2) var(--space-3);font-size:11px;font-weight:700;line-height:1.35;color:var(--text-muted);background:var(--surface-card);border:1px solid var(--border-default);border-radius:4px}.inv-section{background:var(--surface-card);border:1px solid var(--border-default);border-radius:4px;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.inv-section-title,.forge-section-title{font-size:11px;font-weight:700;color:var(--accent-xp);letter-spacing:1px}.inv-hotbar-label{font-size:10px;font-weight:700;color:var(--text-muted);margin-top:var(--space-2);margin-bottom:var(--space-1)}.stat-diff-badge{display:inline-block;margin-left:4px;padding:1px 4px;background:#22c55e33;border:1px solid #22c55e;border-radius:3px;color:#4ade80;font-size:10px;font-weight:700}.shop-screen{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:120px var(--space-4) var(--space-4);background:transparent;pointer-events:none}.shop-panel{pointer-events:auto;width:var(--panel-command-width);max-width:var(--panel-command-width);height:var(--panel-command-max-block);max-height:var(--panel-command-max-block);overflow:hidden;background:var(--surface-inventory);border:var(--tree-edge) solid var(--border-panel);border-radius:6px;padding:var(--space-4);color:var(--text-primary);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:0 12px 40px #000000bf}.shop-panel h2{font-size:18px}.shop-xp{color:var(--text-xp);font-size:14px;font-weight:700}.shop-list{display:flex;flex-direction:column;gap:var(--space-2);min-height:0;max-height:none;overflow:auto;flex:1 1 auto}.shop-section-tabs{display:flex;flex-wrap:wrap;gap:var(--space-1);border-bottom:var(--tree-edge) solid var(--border-default);padding-bottom:var(--space-1);flex-shrink:0}.shop-section-tab{padding:6px 12px;border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;cursor:pointer;border-radius:3px;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.shop-section-tab:hover{background:var(--surface-button-hover)}.shop-section-tab:focus-visible{outline:var(--tree-edge) solid var(--affordance-resource);outline-offset:2px}.shop-section-tab.is-active{background:var(--surface-button-hover);border-color:var(--affordance-resource);color:var(--affordance-resource);box-shadow:inset 0 -2px 0 var(--affordance-resource);font-weight:700}.shop-section-tab[aria-selected=false]{opacity:.85}.shop-resources{flex-shrink:0}.shop-upgrade{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-3);min-height:58px;padding:var(--space-3);border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.shop-upgrade:hover:not(:disabled),.shop-upgrade:focus-visible:not(:disabled){background:var(--surface-button-hover);outline:2px solid var(--accent-xp);outline-offset:2px}.shop-upgrade:active:not(:disabled){transform:translateY(1px)}.shop-upgrade:disabled{cursor:not-allowed;opacity:.55}.shop-upgrade-name{font-size:14px;font-weight:700}.shop-upgrade-description{grid-column:1 / -1;font-size:12px}.shop-upgrade-cost{font-size:13px;font-weight:700;color:var(--accent-xp)}.shop-hint{font-size:12px;font-weight:700}.slot-grid{display:grid;gap:3px}.ui-slot{width:var(--inventory-slot-size);height:var(--inventory-slot-size);background:var(--surface-button);border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);position:relative;cursor:pointer}.ui-slot:hover{background:var(--surface-button-hover)}.ui-slot canvas{width:100%;height:100%;image-rendering:pixelated;pointer-events:none}.item-tooltip{position:fixed;z-index:10050;pointer-events:none;min-width:120px;max-width:220px;padding:var(--space-2);background:var(--surface-panel);border:2px solid var(--border-default);color:var(--text-primary);font-family:Courier New,monospace;font-size:12px;font-weight:700;line-height:1.3}.item-tooltip-name{margin-bottom:var(--space-1);color:var(--text-primary)}.item-tooltip-row{display:flex;justify-content:space-between;gap:var(--space-3)}.item-tooltip-label{color:var(--text-disabled)}.item-tooltip-value{color:var(--accent-xp)}.craft-row{display:flex;align-items:center;gap:var(--space-3)}.craft-arrow{font-size:26px;color:var(--text-inventory)}.output-slot{width:var(--inventory-output-slot-size);height:var(--inventory-output-slot-size)}.inv-body{display:flex;align-items:flex-end;gap:var(--space-3)}.inv-grids{display:flex;flex-direction:column;gap:0}.inv-trash{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:0;font-size:22px;font-weight:700;color:var(--text-inventory);background:color-mix(in srgb,var(--surface-button) 80%,#5a1a1a);border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark)}.inv-trash:hover{background:color-mix(in srgb,var(--surface-button-hover) 70%,#8b2222);color:#ffb4b4}#cursor-stack{position:fixed;z-index:200;width:40px;height:40px;pointer-events:none;display:none}#cursor-stack canvas{width:100%;height:100%;image-rendering:pixelated}#cursor-stack .slot-count{font-size:14px}@media(max-width:640px){.inv-panel{max-width:calc(100vw - 2 * var(--space-2));padding:var(--space-3);margin:0 auto}}.forge-screen{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:100px var(--space-4) var(--space-4);background:transparent;pointer-events:none}.forge-panel{pointer-events:auto;width:var(--panel-command-width);max-width:var(--panel-command-width);height:var(--panel-command-max-block);max-height:var(--panel-command-max-block);overflow:hidden;background:var(--surface-inventory);border:var(--tree-edge) solid var(--border-panel);border-radius:6px;padding:0;color:var(--text-inventory);display:flex;flex-direction:column;gap:0;box-shadow:0 12px 32px #000000a6}.forge-panel .forge-header-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--space-4);padding:18px 24px;border-bottom:var(--tree-edge) solid var(--border-default)}.forge-panel .forge-header-row h2{font-size:21px;letter-spacing:.09em;white-space:nowrap}.forge-exp{color:var(--text-xp);font-size:18px;font-weight:700;letter-spacing:.08em;justify-self:center;white-space:nowrap}.forge-progress-summary{align-self:center;justify-self:end;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.forge-body{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(280px,.9fr);gap:0;min-height:0;flex:1 1 auto;overflow:hidden}.forge-tree-host,.forge-inspector-host{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.forge-inspector-host{border-left:var(--tree-edge) solid var(--border-default);background:var(--surface-card);padding:20px 22px;overflow-y:auto}.forge-stats-heading{font-size:13px;margin-bottom:var(--space-2);border-bottom:1px solid var(--border-default);padding-bottom:var(--space-1);display:flex;justify-content:space-between}.forge-stats-empty{color:var(--text-muted);font-style:italic;padding:var(--space-2) 0}.forge-stats,.forge-stats-inner{min-height:0;color:var(--text-primary);font-size:12px}.forge-stats-table{display:grid;gap:var(--space-1);margin-top:var(--space-2)}.forge-stats-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-1)}.forge-stats-header{font-weight:700;color:var(--affordance-exp)}.forge-hint,.shop-hint{font-size:12px;font-weight:700;color:var(--text-muted);flex-shrink:0}.forge-panel>.forge-hint{min-height:48px;display:flex;align-items:center;padding:10px 24px;border-top:var(--tree-edge) solid var(--border-default);letter-spacing:.025em}.shop-resources{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);font-size:13px;font-weight:700;color:var(--text-primary)}.shop-cost-wood{color:var(--cost-wood)}.shop-cost-iron{color:var(--cost-iron)}.shop-cost-gold{color:var(--affordance-resource)}.shop-cost-dia{color:var(--armor-tier-4)}.shop-cost-net{color:var(--armor-tier-5)}.shop-cost-coins{color:var(--accent-gold)}.shop-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:var(--tree-edge) solid var(--border-panel);border-radius:4px;background:var(--surface-card);color:var(--text-primary)}.shop-row[data-state=ready]{border-color:var(--affordance-exp);box-shadow:inset 3px 0 0 var(--affordance-exp)}.shop-row[data-state=locked]{opacity:1;background:var(--surface-slot);border-color:var(--border-default);border-style:dashed}.shop-row-top{display:flex;align-items:center;gap:var(--space-2)}.shop-row-badge{flex:0 0 auto;padding:2px 6px;border:1px solid var(--affordance-exp);border-radius:3px;font-size:10px;font-weight:700;text-transform:uppercase;color:var(--affordance-exp);background:var(--surface-slot)}.shop-row .shop-upgrade-name{flex:1;font-size:14px;font-weight:700;color:var(--text-primary)}.shop-row .shop-upgrade-description{font-size:12px;line-height:1.35;color:var(--text-muted)}.shop-row-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);font-size:12px}.shop-row-stock,.shop-row-status{font-size:12px;color:var(--text-muted)}.shop-row .shop-upgrade-cost{font-size:13px;font-weight:700;color:var(--affordance-exp)}.shop-row .shop-upgrade{display:block;width:100%;min-height:36px;margin-top:2px;color:var(--text-primary);background:var(--surface-button);border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark)}.shop-row .shop-upgrade:disabled{opacity:.65;color:var(--text-muted)}.shop-gear-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.9fr);gap:var(--tree-gap);min-height:0;flex:1 1 auto;overflow:hidden}.shop-panel>h2,.shop-panel>.shop-resources,.shop-panel>.shop-armor-preview,.shop-panel>.shop-section-tabs,.shop-panel>.shop-hint{flex-shrink:0}.shop-gear-body>.upgrade-tree{min-width:0;min-height:0;overflow:auto}.shop-gear-body>.upgrade-tree-inspector{position:relative;min-width:0;min-height:0;overflow:auto;border:var(--tree-edge) solid var(--border-default);background:var(--surface-card);padding:var(--space-3);display:flex;flex-direction:column}#hud-tool-levels{position:fixed;top:160px;left:12px;z-index:40;display:flex;flex-direction:column;gap:2px;pointer-events:none;font-size:11px;font-variant-numeric:tabular-nums;color:var(--text-primary);text-shadow:0 1px 2px #000}.hud-tool-level{padding:1px 6px;background:var(--surface-panel);border:1px solid var(--border-inset-dark)}.hud-tool-level[data-selected=true]{border-color:var(--border-selected);color:var(--text-highlight, var(--text-primary))}#hud-armor,.hud-armor-badge{position:fixed;top:132px;left:12px;z-index:40;pointer-events:none;padding:2px 8px;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary);text-shadow:0 1px 2px #000;background:var(--surface-panel);border:1px solid var(--gear-tier-color, var(--border-inset-dark));border-left:4px solid var(--gear-tier-color, var(--armor-tier-0));border-radius:2px}#hud-actions{position:fixed;top:56px;left:8px;z-index:40;display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-1);width:min(320px,calc(100vw - 16px));pointer-events:auto}#hud-actions button,#hud-wolves button{min-height:24px;padding:2px var(--space-1);border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 10px/1.15 Courier New,monospace;cursor:pointer}#hud-actions button[data-selected=true]{outline:2px solid var(--accent-xp);background:var(--surface-button-hover)}#hud-actions button:disabled,#hud-wolves button:disabled{cursor:not-allowed;opacity:.58}#hud-right-container{position:fixed;top:48px;right:8px;z-index:40;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);pointer-events:none}#hud-wolves{display:grid;gap:var(--space-1);width:min(280px,calc(100vw - 16px));pointer-events:auto}#turret-ammo-pool{position:fixed;bottom:72px;left:8px;z-index:40;padding:4px 6px;background:var(--surface-panel);color:var(--text-primary);font:700 10px/1.2 Courier New,monospace;border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);pointer-events:none;display:flex;flex-direction:column;gap:2px}#turret-placement-status{position:fixed;bottom:96px;left:8px;z-index:40;padding:2px var(--space-1);background:var(--surface-panel);color:var(--text-primary);font:700 10px/1.15 Courier New,monospace;border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);pointer-events:none}.hud-wolf-row{display:block;padding:var(--space-1);background:var(--surface-panel);color:var(--text-primary);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}#hud-buffs{position:fixed;bottom:72px;right:8px;z-index:40;display:grid;gap:var(--space-1);width:min(200px,calc(100vw - 16px));pointer-events:none}.hud-buff-row{display:block;padding:2px var(--space-1);background:var(--surface-panel);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;font-variant-numeric:tabular-nums;border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);white-space:nowrap;text-shadow:0 1px 2px #000}.ally-manage-screen{position:fixed;inset:0;z-index:120;display:none;align-items:center;justify-content:center;padding:120px var(--space-4) var(--space-4);background:transparent;pointer-events:none}.ally-manage-panel{pointer-events:auto;width:var(--panel-command-width);max-width:var(--panel-command-width);height:var(--panel-command-max-block);max-height:var(--panel-command-max-block);overflow:hidden;background:var(--surface-inventory);border:var(--tree-edge) solid var(--border-default);border-radius:6px;padding:var(--space-4);color:var(--text-inventory);display:flex;flex-direction:column;gap:var(--space-3)}.ally-manage-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);flex-shrink:0}.ally-manage-header h2{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.ally-manage-resources{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ally-resource-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 6px;background:var(--surface-button);border:1px solid var(--border-default);border-radius:4px;font:700 11px/1.2 Courier New,monospace;color:var(--text-primary)}.ally-resource-badge.res-xp{color:var(--affordance-exp)}.ally-resource-badge.res-iron{color:var(--cost-iron)}.ally-resource-badge.res-wood{color:var(--cost-wood)}.ally-manage-tabs{display:flex;flex-wrap:wrap;gap:var(--space-1);border-bottom:var(--tree-edge) solid var(--border-default);padding-bottom:var(--space-1);flex-shrink:0}.ally-tab-btn{padding:6px 12px;border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;cursor:pointer;border-radius:3px;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.ally-tab-btn:hover{background:var(--surface-button-hover)}.ally-tab-btn:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.ally-tab-btn.is-active{background:var(--surface-button-hover);border-color:var(--affordance-exp);color:var(--affordance-exp);box-shadow:inset 0 -2px 0 var(--affordance-exp)}.ally-manage-body{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;flex:1 1 auto;overflow:auto}.ally-section{display:flex;flex-direction:column;gap:var(--space-2);min-height:0}.ally-section-title{font-size:13px;font-weight:700;color:var(--affordance-exp);margin-top:var(--space-1);display:flex;align-items:center;gap:var(--space-2)}.ally-manage-workspace{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(0,1.4fr);gap:var(--tree-gap);min-height:0;flex:1 1 auto}.ally-manage-roster{display:flex;flex-direction:column;gap:var(--space-1);min-height:0;max-height:100%;overflow:auto;border:var(--tree-edge) solid var(--border-default);background:var(--surface-slot);padding:var(--space-2)}.ally-manage-detail{display:flex;flex-direction:column;gap:var(--space-2);min-height:0;overflow:auto;border:var(--tree-edge) solid var(--border-default);background:var(--surface-card);padding:var(--space-3)}.ally-roster-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:40px;padding:var(--space-2);border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;text-align:left;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.ally-roster-item img{width:28px;height:28px;image-rendering:pixelated;flex-shrink:0}.ally-roster-item:hover{background:var(--surface-button-hover)}.ally-roster-item:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.ally-roster-item.is-selected{border-color:var(--affordance-exp);box-shadow:inset 3px 0 0 var(--affordance-exp);color:var(--affordance-exp)}.ally-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface-button);border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);color:var(--text-primary)}.ally-card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.ally-card-title{font-size:13px;font-weight:700}.ally-card-stats{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:11px;color:var(--text-muted)}.ally-card-controls{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}.ally-manage-panel select,.ally-card select{padding:4px 8px;background:var(--surface-button);color:var(--text-primary);border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);font:700 11px/1.2 Courier New,monospace;cursor:pointer}.ally-manage-panel select option{background:var(--surface-inventory);color:var(--text-primary)}.ally-card-controls button,.ally-manage-tracks button,.ally-manage-craft,.ally-manage-close{min-height:28px;padding:4px 8px;border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;cursor:pointer;text-shadow:0 1px 1px #000;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.ally-card-controls button:hover:not(:disabled),.ally-manage-tracks button:hover:not(:disabled),.ally-manage-craft:hover:not(:disabled),.ally-manage-close:hover:not(:disabled),.ally-manage-panel select:hover:not(:disabled){background:var(--surface-button-hover)}.ally-card-controls button:focus-visible:not(:disabled),.ally-manage-tracks button:focus-visible:not(:disabled),.ally-manage-craft:focus-visible:not(:disabled),.ally-manage-close:focus-visible:not(:disabled),.ally-manage-panel select:focus-visible:not(:disabled){outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.ally-card-controls button:disabled,.ally-manage-tracks button:disabled,.ally-manage-craft:disabled,.ally-manage-panel select:disabled{cursor:not-allowed;opacity:.5;background:var(--surface-button);color:var(--state-locked)}.ally-manage-tracks{display:flex;flex-wrap:wrap;gap:var(--space-1)}.ally-manage-craft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2)}.ally-manage-craft{display:flex;flex-direction:column;justify-content:center;width:100%;margin:0;text-align:left}.ally-manage-qty{display:flex;gap:var(--space-1)}.ally-manage-qty-btn{padding:4px 10px;border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 11px/1.2 Courier New,monospace;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.ally-manage-qty-btn:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.ally-manage-qty-btn[data-selected=true]{border-color:var(--affordance-exp);background:var(--surface-button-hover);color:var(--affordance-exp);box-shadow:inset 0 -2px 0 var(--affordance-exp)}.ally-manage-empty{padding:var(--space-2);background:var(--surface-slot);border:1px dashed var(--border-panel);color:var(--text-muted);font-size:12px;text-align:center}.ally-manage-close{width:100%;margin-top:var(--space-2);text-align:center;flex-shrink:0}.ally-manage-subhead{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:var(--space-1)}#hud-chest-upgrades{display:grid;gap:var(--space-1);width:min(220px,calc(100vw - 16px));pointer-events:none;font:700 11px/1.2 Courier New,monospace;font-variant-numeric:tabular-nums;color:var(--text-primary);text-shadow:0 1px 2px #000}.hud-chest-upgrade-row{padding:2px var(--space-1);background:var(--surface-panel);border:2px solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){#hud-chest-upgrades{width:min(160px,calc(100vw - 16px));font-size:10px}}@media(max-width:376px){#hud-chest-upgrades{width:min(140px,calc(100vw - 8px))}}.ally-turret-automation,.ally-manage-automation{display:flex;flex-direction:column;gap:var(--space-1);width:100%;padding:var(--space-1) 0;border-top:1px dashed var(--border-inset-dark)}.turret-toggle{display:inline-flex;align-items:center;gap:var(--space-1);font:700 10px/1.2 Courier New,monospace;color:var(--text-primary);cursor:pointer}.turret-toggle input[type=checkbox]{width:14px;height:14px;accent-color:var(--affordance-exp);cursor:pointer}.turret-auto-buy-group{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2)}.turret-material-group{display:flex;flex-wrap:wrap;gap:var(--space-1)}.turret-material-load{min-height:24px;padding:2px 6px;border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 10px/1.2 Courier New,monospace;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.turret-material-load:hover:not(:disabled),.turret-material-load:focus-visible:not(:disabled){background:var(--surface-button-hover)}.turret-material-load:focus-visible:not(:disabled){outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.turret-material-load:disabled{cursor:not-allowed;opacity:.5;color:var(--state-locked)}.hub-backdrop{position:fixed;inset:0;background:var(--surface-scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:110;display:none}.hub-header{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:130;display:flex;flex-wrap:nowrap;justify-content:center;gap:var(--space-2);max-width:calc(100vw - 2 * var(--space-4));width:max-content;background:var(--surface-inventory-header);border:var(--tree-edge) solid var(--border-panel);border-radius:6px;padding:var(--space-1) var(--space-2);box-shadow:0 8px 24px #000000b3;pointer-events:auto}.hub-tab-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px 12px;background:var(--surface-button);border:var(--tree-edge) solid var(--border-default);border-radius:4px;color:var(--text-muted);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.hub-tab-btn:hover{background:var(--surface-button-hover);color:var(--text-primary)}.hub-tab-btn:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.hub-tab-btn.is-active{background:var(--surface-button-hover);border-color:var(--affordance-exp);color:var(--affordance-exp);box-shadow:inset 0 -2px 0 var(--affordance-exp)}.hub-tab-label{letter-spacing:.04em;text-transform:uppercase}.hub-tab-keycap{display:inline-flex;align-items:center;justify-content:center;min-width:1.4em;padding:1px 5px;border:1px solid var(--border-panel);border-bottom-width:2px;border-radius:3px;background:var(--surface-slot);color:var(--text-primary);font:700 10px/1.2 Courier New,monospace}.hub-tab-btn.is-active .hub-tab-keycap{border-color:var(--affordance-exp);color:var(--affordance-exp)}.menu-btn{background:var(--surface-button);color:var(--text-primary);border:1px solid var(--border-default);padding:var(--space-3) var(--space-6);border-radius:4px;font-weight:700;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease;font-size:16px;letter-spacing:1px}.menu-btn:hover{background:var(--surface-button-hover)}.menu-btn:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.shop-section-title{font-size:12px;font-weight:700;margin:10px 0 4px;letter-spacing:.04em;text-transform:uppercase;color:var(--affordance-exp)}.shop-panel h2{color:var(--text-primary)}.shop-hint{color:var(--text-muted)}.shop-armor-preview{margin:6px 0 8px;padding:8px 10px;border:1px solid var(--affordance-resource);border-radius:4px;font-size:12px;font-weight:700;color:var(--text-primary);background:var(--surface-card);border-left:4px solid var(--gear-tier-color, var(--affordance-resource));flex-shrink:0}.shop-armor-preview-head{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.shop-armor-preview-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.gear-tier-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;border:1px solid var(--border-panel);background:var(--surface-slot);color:var(--text-primary);font-size:12px;font-weight:700;line-height:1.2}.gear-tier-chip--sword{border-color:var(--border-selected)}.gear-tier-chip--armor{border-color:var(--gear-tier-color, var(--border-panel));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gear-tier-color, transparent) 35%,transparent)}.gear-tier-swatch{width:12px;height:12px;border-radius:2px;flex-shrink:0;background:var(--gear-tier-color, var(--armor-tier-0));border:1px solid var(--text-primary);box-shadow:0 0 0 1px #000}.gear-tier-label{white-space:nowrap}.upgrade-tree{display:flex;flex-direction:column;min-width:0;min-height:0}.upgrade-tree--journal{flex:1 1 auto;height:100%}.forge-journal-layout{display:grid;grid-template-columns:minmax(220px,.82fr) minmax(0,1.38fr);min-width:0;min-height:0;height:100%}.forge-journal-paths{display:flex;flex-direction:column;gap:4px;min-width:0;overflow-y:auto;padding:16px 14px;border-right:var(--tree-edge) solid var(--border-default);background:color-mix(in srgb,var(--surface-slot) 55%,var(--surface-inventory))}.forge-journal-path{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;padding:9px 10px;border:var(--tree-edge) solid transparent;border-radius:3px;background:transparent;color:var(--text-primary);font:700 12px/1.25 Courier New,monospace;text-align:left;cursor:pointer;transition:opacity var(--motion-fast) ease,filter var(--motion-fast) ease}.forge-journal-path:hover{background:var(--surface-button-hover)}.forge-journal-path:focus-visible{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.forge-journal-path[data-path-active="1"]{border-color:var(--affordance-exp);background:color-mix(in srgb,var(--affordance-exp) 9%,var(--surface-button));box-shadow:inset 4px 0 color-mix(in srgb,var(--affordance-exp) 65%,transparent)}.forge-journal-path-icon{width:42px;height:42px;image-rendering:pixelated;pointer-events:none}.forge-journal-path-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.forge-journal-path-copy strong{overflow:hidden;color:var(--text-primary);font-size:13px;letter-spacing:.035em;text-overflow:ellipsis;white-space:nowrap}.forge-journal-path-copy span{overflow:hidden;color:var(--text-muted);font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.forge-journal-path-count{align-self:start;color:var(--affordance-exp);font-size:11px;white-space:nowrap}.forge-journal-journey{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0;overflow-y:auto;padding:18px 20px 14px;scrollbar-gutter:stable}.forge-journal-goal{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;min-height:54px;padding:2px 0 12px;border-bottom:1px solid var(--border-default)}.forge-journal-goal-kicker{grid-row:1 / span 2;align-self:start;padding:4px 6px;border:1px solid var(--affordance-resource);color:var(--affordance-resource);font-size:9px;font-weight:800;letter-spacing:.08em}.forge-journal-goal strong{color:var(--text-primary);font-size:14px;letter-spacing:.035em}.forge-journal-goal-progress{color:var(--text-muted);font-size:10px;line-height:1.35}.forge-journal-steps{display:grid;gap:7px;min-width:0;margin-left:12px;padding-left:18px;border-left:var(--tree-edge) solid var(--border-panel)}.forge-journal-node.upgrade-tree-node{display:grid;grid-template-columns:42px minmax(0,1fr) auto;grid-template-areas:"icon label status" "icon description status";align-items:center;justify-content:stretch;gap:2px 10px;min-height:56px;padding:7px 10px;text-align:left}.forge-journal-node .upgrade-tree-node-mark,.forge-journal-node .upgrade-tree-node-rank{display:none}.forge-journal-node .upgrade-tree-node-icon{grid-area:icon;width:38px;height:38px}.forge-journal-node .upgrade-tree-node-label{grid-area:label;color:var(--text-primary);font-size:13px;letter-spacing:.02em}.forge-journal-node-description{grid-area:description;overflow:hidden;color:var(--text-muted);font-size:10px;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.forge-journal-node-status{grid-area:status;align-self:center;justify-self:end;padding:3px 5px;border:1px solid var(--border-panel);color:var(--text-muted);font-size:8px;letter-spacing:.045em;white-space:nowrap}.forge-journal-node[data-tree-state=available] .forge-journal-node-status{border-color:var(--affordance-exp);color:var(--affordance-exp)}.forge-screen .forge-journal-node.upgrade-tree-node[data-tree-state=unaffordable]{border-color:var(--border-panel);border-style:solid;background:color-mix(in srgb,var(--surface-slot) 62%,var(--surface-button));color:var(--text-primary)}.forge-screen .forge-journal-node.upgrade-tree-node[data-tree-state=unaffordable] .forge-journal-node-status{border-color:var(--border-panel);color:var(--text-muted)}.forge-journal-node[data-tree-state=owned] .forge-journal-node-status,.forge-journal-node[data-tree-state=maxed] .forge-journal-node-status{border-color:var(--state-owned);color:var(--state-owned)}.forge-screen .forge-journal-node.upgrade-tree-node[data-tree-selected="1"]{border-color:var(--affordance-exp);background:color-mix(in srgb,var(--affordance-exp) 8%,var(--surface-button));box-shadow:inset 0 0 0 1px var(--text-primary)}.forge-journal-next{margin-top:auto;padding-top:10px;border-top:1px solid var(--border-default);color:var(--text-muted);font-size:10px;font-weight:700;line-height:1.35}.forge-journal-offstage-nodes{display:none}.upgrade-tree-graph{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:var(--tree-gap);min-width:0;width:100%;overflow-x:auto;overflow-y:visible;padding:var(--space-1);scrollbar-gutter:stable}.upgrade-tree-branch{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);min-width:0;flex:1 1 0}.upgrade-tree-branch-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);text-align:center;padding-bottom:var(--space-1);border-bottom:1px solid var(--border-default)}.upgrade-tree-connector{width:2px;align-self:center;flex:0 0 10px;background:repeating-linear-gradient(to bottom,var(--border-panel) 0 4px,transparent 4px 7px);opacity:.85}.upgrade-tree-node{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;width:100%;min-height:var(--tree-node-size);padding:var(--space-2) var(--space-1);border:var(--tree-edge) solid var(--border-default);border-radius:4px;background:var(--surface-button);color:var(--text-primary);font:700 10px/1.15 Courier New,monospace;cursor:pointer;text-align:center;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease,filter var(--motion-fast) ease}.upgrade-tree-node:hover{background:var(--surface-button-hover)}.upgrade-tree-node:focus-visible,.upgrade-tree-node[data-tree-focused="1"]{outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px;z-index:1}.upgrade-tree-node[data-tree-selected="1"]{box-shadow:inset 0 0 0 2px var(--text-primary)}.upgrade-tree-node-mark{position:absolute;top:3px;left:4px;min-width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-panel);background:var(--surface-slot);font-size:9px;line-height:1;color:var(--text-primary)}.upgrade-tree-node-icon{width:32px;height:32px;image-rendering:pixelated;pointer-events:none}.upgrade-tree-node-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upgrade-tree-node-rank{font-size:9px;color:var(--text-muted)}.upgrade-tree-node[data-tree-state=locked-prerequisite]{color:var(--state-locked);border-style:dashed;opacity:.78;filter:grayscale(.35)}.upgrade-tree-node[data-tree-state=locked-prerequisite] .upgrade-tree-node-mark{content:"L";border-style:dashed}.upgrade-tree-node[data-tree-state=unaffordable]{border-color:var(--accent-error);border-style:double;color:var(--text-muted)}.upgrade-tree-node[data-tree-state=unaffordable] .upgrade-tree-node-mark{border-color:var(--accent-error);color:var(--accent-error)}.upgrade-tree-node[data-tree-state=available]{border-color:var(--affordance-exp);box-shadow:0 0 0 1px color-mix(in srgb,var(--affordance-exp) 40%,transparent)}.forge-screen .upgrade-tree-node[data-tree-state=available]{border-color:var(--affordance-exp)}.shop-screen .upgrade-tree-node[data-tree-state=available]{border-color:var(--affordance-resource);box-shadow:0 0 0 1px color-mix(in srgb,var(--affordance-resource) 35%,transparent)}.shop-screen .upgrade-tree-node[data-tree-state=available] .upgrade-tree-node-mark{border-color:var(--affordance-resource);color:var(--affordance-resource)}.forge-screen .upgrade-tree-node[data-tree-state=available] .upgrade-tree-node-mark{border-color:var(--affordance-exp);color:var(--affordance-exp)}.upgrade-tree-node[data-tree-state=pending]{border-color:var(--state-pending);border-style:dotted;animation:tree-pending-pulse var(--motion-fast) ease-in-out infinite alternate}.upgrade-tree-node[data-tree-state=pending] .upgrade-tree-node-mark{border-style:dotted;color:var(--state-pending)}.upgrade-tree-node[data-tree-state=owned],.upgrade-tree-node[data-tree-owned-like="1"][data-tree-state=owned]{border-color:var(--state-owned);background:color-mix(in srgb,var(--state-owned) 12%,var(--surface-button))}.upgrade-tree-node[data-tree-state=owned] .upgrade-tree-node-mark{border-color:var(--state-owned);color:var(--state-owned)}.upgrade-tree-node[data-tree-state=current]{border-color:var(--text-primary);border-width:3px;background:color-mix(in srgb,var(--affordance-exp) 14%,var(--surface-button))}.upgrade-tree-node[data-tree-state=current] .upgrade-tree-node-mark{background:var(--text-primary);color:var(--surface-game);border-color:var(--text-primary)}.upgrade-tree-node[data-tree-state=maxed]{border-color:var(--state-owned);border-style:solid;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,color-mix(in srgb,var(--state-owned) 18%,transparent) 4px,color-mix(in srgb,var(--state-owned) 18%,transparent) 8px),var(--surface-button)}.upgrade-tree-node[data-tree-state=maxed] .upgrade-tree-node-mark{border-color:var(--state-owned);color:var(--state-owned);font-weight:900}@keyframes tree-pending-pulse{0%{opacity:.82;filter:brightness(1)}to{opacity:1;filter:brightness(1.08)}}.upgrade-tree-inspector{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;min-height:0;color:var(--text-primary);font-size:12px}.upgrade-tree-inspector--journal{height:100%;gap:12px}.forge-journal-inspector-heading{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;padding-bottom:14px;border-bottom:var(--tree-edge) solid var(--border-default)}.forge-journal-inspector-heading .upgrade-tree-inspector-title{flex:1 1 170px;font-size:17px;line-height:1.2;letter-spacing:.05em;text-transform:uppercase}.forge-journal-inspector-rank{margin:0;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.05em}.forge-journal-inspector-cost{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 0 12px;border-bottom:1px dashed var(--border-default);color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.05em}.forge-journal-inspector-cost strong{color:var(--affordance-exp);font-size:14px;text-align:right}.forge-journal-inspector-stats{display:grid;gap:10px}.forge-journal-inspector-stat{display:grid;gap:7px}.forge-journal-inspector-stat-label{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.035em}.forge-journal-inspector-stat-values{display:grid;grid-template-columns:1fr 1fr;gap:8px}.forge-journal-inspector-stat-values>span{display:flex;flex-direction:column;gap:4px;min-width:0;padding:8px;border-left:var(--tree-edge) solid var(--border-default);background:color-mix(in srgb,var(--surface-slot) 72%,transparent)}.forge-journal-inspector-stat-values small{color:var(--text-muted);font-size:8px;font-weight:700;letter-spacing:.04em}.forge-journal-inspector-stat-values strong{color:var(--text-primary);font-size:15px}.forge-journal-inspector-stat-values [data-stat-next="1"]{color:var(--state-owned)}.forge-journal-inspector-context{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:12px 0;border-top:1px dashed var(--border-default);border-bottom:1px dashed var(--border-default)}.forge-journal-inspector-context img{width:32px;height:32px;image-rendering:pixelated}.forge-journal-inspector-context p{margin:0;color:var(--text-muted);font-size:10px;line-height:1.45}.upgrade-tree-inspector--journal .upgrade-tree-inspector-reason{margin:0;padding:8px 10px;border-left:var(--tree-edge) solid var(--state-pending);background:color-mix(in srgb,var(--state-pending) 8%,transparent);color:var(--text-muted)}.upgrade-tree-inspector--journal .upgrade-tree-purchase-cta{min-height:52px;margin-top:auto;font-size:13px;letter-spacing:.035em}.forge-journal-inspector-remaining{margin:-4px 0 0;color:var(--text-muted);font-size:10px;font-weight:700;text-align:center}.upgrade-tree-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.upgrade-tree-inspector-empty{color:var(--text-muted);font-style:italic;padding:var(--space-2) 0;border:1px dashed var(--border-panel);background:color-mix(in srgb,var(--surface-slot) 80%,transparent)}.upgrade-tree-inspector-header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);border-bottom:1px solid var(--border-default);padding-bottom:var(--space-2)}.upgrade-tree-inspector-icon{width:40px;height:40px;image-rendering:pixelated;flex-shrink:0}.upgrade-tree-inspector-title{font-size:14px;font-weight:700;flex:1 1 auto}.upgrade-tree-inspector-state{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border:1px solid var(--border-panel);background:var(--surface-slot)}.upgrade-tree-inspector-rank{font-size:12px;font-weight:700;color:var(--affordance-exp)}.upgrade-tree-inspector-costs,.upgrade-tree-inspector-requirements{display:flex;flex-direction:column;gap:2px;margin:0;padding-left:1.1em}.upgrade-tree-inspector-stats{display:grid;gap:var(--space-1)}.upgrade-tree-inspector-stat-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-1)}.upgrade-tree-inspector-reason{color:var(--text-muted);font-size:11px;line-height:1.35}.upgrade-tree-purchase-cta{margin-top:auto;position:sticky;bottom:0;z-index:2;min-height:40px;width:100%;padding:var(--space-2) var(--space-3);border:var(--tree-edge) solid;border-color:var(--border-inset-dark) var(--border-inset-light) var(--border-inset-light) var(--border-inset-dark);background:var(--surface-button);color:var(--text-primary);font:700 13px/1.2 Courier New,monospace;cursor:pointer;transition:opacity var(--motion-fast) ease,transform var(--motion-fast) ease}.forge-screen .upgrade-tree-purchase-cta:not(:disabled){border-color:var(--affordance-exp);color:var(--affordance-exp);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--affordance-exp) 30%,transparent)}.shop-screen .upgrade-tree-purchase-cta:not(:disabled){border-color:var(--affordance-resource);color:var(--affordance-resource);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--affordance-resource) 30%,transparent)}.upgrade-tree-purchase-cta:hover:not(:disabled){background:var(--surface-button-hover);transform:translateY(-1px)}.upgrade-tree-purchase-cta:active:not(:disabled){transform:translateY(0)}.upgrade-tree-purchase-cta:focus-visible:not(:disabled){outline:var(--tree-edge) solid var(--affordance-exp);outline-offset:2px}.upgrade-tree-purchase-cta:disabled{cursor:not-allowed;opacity:1;color:var(--text-muted);background:var(--surface-slot);border-style:dashed;border-color:var(--border-panel);text-shadow:none}@media(min-width:1024px){.forge-body{grid-template-columns:minmax(0,2.1fr) minmax(280px,.9fr)}.shop-gear-body,.ally-manage-workspace{grid-template-columns:minmax(0,1.55fr) minmax(240px,.9fr)}}@media(max-width:1023px)and (min-width:768px){.forge-body{grid-template-columns:minmax(0,1.7fr) minmax(220px,.9fr);gap:0}.shop-gear-body{grid-template-columns:minmax(0,1.2fr) minmax(200px,.95fr);gap:var(--space-2)}.ally-manage-workspace{grid-template-columns:minmax(140px,.85fr) minmax(0,1.3fr);gap:var(--space-2)}.upgrade-tree-graph{gap:var(--space-2)}.upgrade-tree-node{min-width:0}.forge-journal-layout{grid-template-columns:minmax(175px,.75fr) minmax(0,1.25fr)}.forge-journal-path{grid-template-columns:38px minmax(0,1fr);min-height:62px}.forge-journal-path-icon{width:34px;height:34px}.forge-journal-path-count{display:none}}@media(max-width:767px){.forge-screen,.shop-screen,.ally-manage-screen{padding:160px var(--space-3) var(--space-3);align-items:flex-start}.forge-panel,.shop-panel,.ally-manage-panel{width:min(100%,calc(100vw - 2 * var(--space-3)));max-width:min(100%,calc(100vw - 2 * var(--space-3)));height:auto;max-height:calc(100dvh - 168px);padding:var(--space-3);overflow-x:hidden;overflow-y:auto}.forge-panel{padding:0}.forge-panel .forge-header-row{grid-template-columns:1fr auto;gap:6px 12px;padding:14px 16px}.forge-panel .forge-header-row h2{grid-column:1 / -1;font-size:17px}.forge-exp{justify-self:start;font-size:15px}.forge-progress-summary{font-size:10px}.forge-body,.shop-gear-body,.ally-manage-workspace{grid-template-columns:1fr;overflow:visible;flex:1 1 auto;min-height:0}.forge-tree-host,.forge-inspector-host,.shop-gear-body>.upgrade-tree,.shop-gear-body>.upgrade-tree-inspector,.ally-manage-roster,.ally-manage-detail{max-height:none;overflow:visible}.forge-inspector-host{padding:16px;border-top:var(--tree-edge) solid var(--border-default);border-left:0}.forge-journal-layout{grid-template-columns:1fr;height:auto}.forge-journal-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;border-right:0;border-bottom:var(--tree-edge) solid var(--border-default)}.forge-journal-path{grid-template-columns:36px minmax(0,1fr);min-height:60px}.forge-journal-path-icon{width:32px;height:32px}.forge-journal-path-count{display:none}.forge-journal-journey{padding:14px;overflow:visible}.forge-journal-node.upgrade-tree-node{grid-template-columns:36px minmax(0,1fr);grid-template-areas:"icon label" "icon description" "status status"}.forge-journal-node-status{justify-self:start;margin-top:3px}.forge-panel>.forge-hint{padding:10px 16px}.forge-hint,.shop-hint{white-space:normal;overflow-wrap:anywhere;line-height:1.35}.shop-section-tabs{gap:var(--space-1)}.shop-section-tab{padding:6px 10px;font-size:10px}.shop-list{flex:1 1 auto;max-height:none}.upgrade-tree-graph{flex-direction:column;flex-wrap:nowrap}.upgrade-tree-branch{flex-direction:row;flex-wrap:wrap;align-items:stretch;min-width:0}.upgrade-tree-branch-label{flex:1 0 100%;text-align:left}.upgrade-tree-connector{display:none}.upgrade-tree-node{flex:1 1 calc(50% - var(--space-2));min-width:0;max-width:100%}.hub-header{top:8px;gap:var(--space-1);padding:var(--space-1)}.hub-tab-btn{padding:5px 8px;font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.upgrade-tree-node[data-tree-state=pending]{animation:none}.upgrade-tree-purchase-cta:hover:not(:disabled),.upgrade-tree-purchase-cta:active:not(:disabled){transform:none}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.expedition-console-screen,.run-draft-screen,.run-summary-screen{position:fixed;inset:0;z-index:120;align-items:center;justify-content:center;padding:112px var(--space-4) var(--space-4);background:var(--surface-scrim);color:var(--text-primary);backdrop-filter:blur(8px);overflow:hidden}.expedition-console-shell,.run-draft-panel,.run-summary-panel{width:min(1240px,calc(100vw - 2 * var(--space-4)));max-height:calc(100dvh - 132px);background:var(--surface-inventory);border:2px solid var(--border-panel);border-radius:6px;box-shadow:0 18px 60px #000000d1;overflow:hidden}.expedition-console-shell{height:min(820px,calc(100dvh - 132px));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.expedition-console-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-default);background:var(--surface-inventory-header)}.expedition-kicker{display:block;margin-bottom:var(--space-1);color:var(--accent-gold);font-size:10px;font-weight:700;letter-spacing:.18em}.expedition-console-header h2,.run-draft-panel h2,.run-summary-panel h2{font-size:clamp(20px,2.4vw,32px);letter-spacing:.04em}.expedition-console-meta,.run-draft-panel header p,.run-summary-panel header p{margin-top:var(--space-1);color:var(--text-muted);font-size:12px}.expedition-console-close,.expedition-console-nav button,.expedition-open-draft,.run-draft-actions button,.run-summary-next button,.expedition-project-card button{min-height:36px;padding:7px 12px;color:var(--text-inventory);font:700 11px/1.2 inherit;background:var(--surface-button);border:2px solid var(--border-default);border-radius:4px;cursor:pointer}.expedition-console-close:hover,.expedition-console-nav button:hover,.expedition-open-draft:hover:not(:disabled),.run-draft-actions button:hover:not(:disabled),.run-summary-next button:hover,.expedition-project-card button:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent-xp);background:var(--surface-button-hover)}.expedition-console-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);padding:var(--space-2) var(--space-5);background:var(--surface-card);border-bottom:1px solid var(--border-default)}.expedition-console-nav button.is-active{color:var(--accent-xp);border-color:var(--accent-xp);box-shadow:inset 0 -2px 0 var(--accent-xp)}.expedition-console-body,.expedition-view{min-width:0;min-height:0;overflow:hidden}.expedition-view{height:100%;padding:var(--space-4);overflow-y:auto;overscroll-behavior:contain}.expedition-view[hidden]{display:none}.expedition-console-hint{padding:8px var(--space-5);color:var(--text-muted);font-size:10px;text-align:right;border-top:1px solid var(--border-default);background:var(--surface-inventory-header)}.expedition-build-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);background:var(--surface-card)}.expedition-build-summary h3,.expedition-build-detail h3,.expedition-project-heading h3,.run-summary-panel h3{margin-bottom:var(--space-1);font-size:14px}.expedition-build-summary p,.expedition-project-heading p,.expedition-project-card p,.expedition-build-detail p{color:var(--text-muted);font-size:11px;line-height:1.45}.expedition-open-draft:not(:disabled){color:var(--surface-game);background:var(--accent-xp);border-color:var(--accent-xp)}.expedition-build-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.28fr);gap:var(--space-3);min-width:0}.expedition-build-board{display:grid;grid-template-columns:repeat(5,minmax(138px,1fr));gap:var(--space-2);min-width:0;overflow-x:auto;padding-bottom:var(--space-2)}.expedition-build-lane{display:flex;flex-direction:column;gap:var(--space-2);min-width:138px;padding:var(--space-2);background:var(--surface-inventory-header);border:1px solid var(--border-default)}.expedition-build-lane h4{color:var(--accent-xp);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.expedition-build-card{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-height:58px;padding:7px;color:var(--text-muted);text-align:left;background:var(--surface-slot);border:1px solid var(--border-default);border-radius:3px;cursor:pointer}.expedition-build-card:hover,.expedition-build-card[aria-pressed=true]{color:var(--text-primary);border-color:var(--accent-xp)}.expedition-build-card.is-active{border-color:var(--accent-success)}.expedition-build-card.is-capstone{margin-top:auto;border-width:2px;border-color:var(--accent-gold)}.expedition-build-card-icon,.expedition-build-detail-icon{width:34px;height:34px;image-rendering:pixelated}.expedition-build-card span span{display:block;margin-top:3px;color:var(--text-muted);font-size:9px}.expedition-build-card strong{display:block;font-size:10px;line-height:1.2;overflow-wrap:anywhere}.expedition-build-card>span{min-width:0}.expedition-build-detail{align-self:start;position:sticky;top:0;padding:var(--space-4);border:1px solid var(--border-panel);background:var(--surface-card)}.expedition-build-detail-icon{width:56px;height:56px;margin-bottom:var(--space-2)}.expedition-build-detail-note{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-default)}.expedition-build-trophies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}.expedition-build-trophies section{padding:var(--space-2) var(--space-3);border:1px solid var(--border-default);background:var(--surface-card)}.expedition-trophy-row,.expedition-trophy-row span{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:10px}.expedition-trophy-icon,.expedition-project-icon{width:28px;height:28px;image-rendering:pixelated}.expedition-embedded-host .shop-screen--embedded,.expedition-embedded-host .ally-manage-screen--embedded{position:static;inset:auto;width:100%;min-height:0;padding:0;background:transparent;pointer-events:auto}.expedition-embedded-host .shop-panel,.expedition-embedded-host .ally-manage-panel{width:100%;max-width:none;height:auto;max-height:none;min-height:520px;box-shadow:none}.expedition-view--squad{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:var(--space-3)}.expedition-project-host{min-width:0}.expedition-project-heading,.expedition-project-card{padding:var(--space-3);border:1px solid var(--border-default);background:var(--surface-card)}.expedition-project-list{display:grid;gap:var(--space-2);margin-top:var(--space-2)}.expedition-project-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-2)}.expedition-project-card[data-project-complete="1"]{border-color:var(--accent-success)}.expedition-project-card button{width:100%;margin-top:var(--space-2)}.run-draft-screen{z-index:140;padding-top:var(--space-4)}.run-draft-panel{width:min(980px,calc(100vw - 2 * var(--space-4)));padding:var(--space-5);overflow-y:auto}.run-draft-panel header{margin-bottom:var(--space-4);text-align:center}.run-draft-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.run-draft-card{position:relative;min-width:0;min-height:260px;padding:var(--space-4);color:var(--text-inventory);text-align:left;background:var(--surface-card);border:2px solid var(--border-default);border-radius:5px;cursor:pointer}.run-draft-card:hover,.run-draft-card.is-selected{border-color:var(--accent-xp);box-shadow:0 0 22px var(--accent-glow)}.run-draft-card kbd{position:absolute;top:var(--space-2);right:var(--space-2);min-width:24px;padding:3px;color:var(--accent-xp);text-align:center;border:1px solid var(--border-panel);background:var(--surface-slot)}.run-draft-card img{display:block;width:64px;height:64px;margin:4px auto var(--space-3);image-rendering:pixelated}.run-draft-card-path{color:var(--accent-gold);font-size:9px;letter-spacing:.12em}.run-draft-card h3{margin:var(--space-1) 0 var(--space-2);font-size:15px}.run-draft-card p{color:var(--text-muted);font-size:11px;line-height:1.45}.run-draft-card-delta{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-default)}.run-draft-status{min-height:34px;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--text-muted);text-align:center;border:1px solid var(--border-default)}.run-draft-status[data-action-state=rejected],.run-draft-status[data-action-state=stale]{color:var(--accent-error);border-color:var(--accent-error)}.run-draft-status[data-action-state=pending],.run-draft-status[data-action-state=reconnecting]{color:var(--accent-gold);border-color:var(--accent-gold)}.run-draft-actions{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-3)}.run-draft-confirm:not(:disabled){color:var(--surface-game);background:var(--accent-xp);border-color:var(--accent-xp)}.run-summary-screen{z-index:145;padding-top:var(--space-4)}.run-summary-panel{width:min(860px,calc(100vw - 2 * var(--space-4)));padding:var(--space-5);overflow-y:auto}.run-summary-panel>header{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-default)}.run-summary-facts,.run-summary-counters{display:grid;gap:1px;margin-bottom:var(--space-4);background:var(--border-default);border:1px solid var(--border-default)}.run-summary-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.run-summary-counters{grid-template-columns:repeat(3,minmax(0,1fr))}.run-summary-facts dt,.run-summary-facts dd,.run-summary-counters>div,.run-summary-counters>h3{margin:0;padding:var(--space-2);background:var(--surface-card)}.run-summary-facts dt,.run-summary-counters span{color:var(--text-muted);font-size:10px}.run-summary-facts dd{color:var(--accent-xp);font-weight:700}.run-summary-build,.run-summary-next{margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--border-default);background:var(--surface-card)}.run-summary-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-1) var(--space-3);margin-bottom:var(--space-2);color:var(--text-muted);font-size:11px}.run-summary-counters>h3{grid-column:1 / -1}.run-summary-counters>div{display:flex;flex-direction:column;gap:var(--space-1)}.run-summary-next button{margin:var(--space-2) var(--space-2) 0 0}#hud-run-progress{position:fixed;top:48px;left:50%;z-index:24;transform:translate(-50%);min-height:30px;padding:5px 10px;color:var(--accent-xp);font:700 11px/1.2 inherit;background:var(--surface-inventory-header);border:1px solid var(--border-panel);border-radius:3px;cursor:pointer}#hud-run-progress[data-pending-picks]:not([data-pending-picks="0"]){color:var(--surface-game);background:var(--accent-gold);border-color:var(--accent-gold)}#hud-run-trophies{position:fixed;top:84px;left:50%;z-index:24;display:flex;gap:4px;transform:translate(-50%)}#hud-run-trophies img{image-rendering:pixelated;background:var(--surface-inventory-header);border:1px solid var(--border-default)}@media(max-width:900px){.expedition-view--squad,.expedition-build-workspace{grid-template-columns:1fr}.expedition-build-detail{position:static}.expedition-build-board{grid-template-columns:repeat(5,minmax(120px,1fr))}.expedition-build-lane{min-width:120px}.expedition-build-card strong{font-size:9px}.run-summary-facts,.run-summary-counters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.hub-header{width:calc(100vw - 2 * var(--space-2));max-width:none;gap:3px}.hub-tab-btn{flex:1 1 0;min-width:0;justify-content:center;gap:3px;padding:5px 3px;font-size:9px}.hub-tab-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expedition-console-screen,.run-draft-screen,.run-summary-screen{align-items:flex-start;padding:58px var(--space-2) var(--space-2)}.run-draft-screen,.run-summary-screen{padding-top:var(--space-2)}.expedition-console-shell{width:calc(100vw - 2 * var(--space-2));height:calc(100dvh - 66px);max-height:calc(100dvh - 66px)}.expedition-console-header{padding:var(--space-3)}.expedition-console-meta{font-size:10px}.expedition-console-nav,.expedition-view{padding:var(--space-2)}.expedition-build-summary{align-items:stretch;flex-direction:column}.expedition-build-board{grid-template-columns:1fr;overflow-x:hidden}.expedition-build-lane{min-width:0}.expedition-build-trophies,.run-summary-paths{grid-template-columns:1fr}.expedition-embedded-host .shop-panel,.expedition-embedded-host .ally-manage-panel{width:100%;max-width:none;min-height:0;padding:var(--space-2)}.run-draft-panel,.run-summary-panel{width:calc(100vw - 2 * var(--space-2));max-height:calc(100dvh - 2 * var(--space-2));padding:var(--space-3)}.run-draft-cards{grid-template-columns:1fr}.run-draft-card{min-height:0}.run-draft-actions{align-items:stretch;flex-direction:column}.run-summary-facts,.run-summary-counters{grid-template-columns:1fr}#hud-run-progress{top:42px;max-width:calc(100vw - 16px);white-space:nowrap}}@media(prefers-reduced-motion:reduce){.run-draft-card,#hud-run-progress{animation:none!important;transform:none}#hud-run-progress{left:50%;transform:translate(-50%)}}.overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:var(--space-4);color:var(--text-primary);background:var(--surface-scrim)}.overlay-content,.multiplayer-room-shell{width:min(620px,100%);border:1px solid var(--border-panel);border-radius:6px;background:var(--surface-panel);box-shadow:0 18px 54px #00000073}.overlay-content{max-height:calc(100dvh - (2 * var(--space-4)));overflow-y:auto;padding:var(--space-5);text-align:center}.overlay .menu-btn,.overlay .overlay-play-btn{width:100%;min-height:36px;padding:8px 12px;color:var(--text-primary);font:inherit;font-weight:700;cursor:pointer;border:1px solid var(--border-default);border-radius:4px;background:var(--surface-button)}.overlay .menu-btn:hover:not(:disabled),.overlay .overlay-play-btn:hover:not(:disabled){background:var(--surface-button-hover)}.overlay .menu-btn:disabled,.overlay .overlay-play-btn:disabled{cursor:not-allowed;color:var(--text-disabled)}.multiplayer-room-shell{margin:var(--space-4) 0;padding:var(--space-4);text-align:left}.multiplayer-room-heading{color:var(--accent-gold);font-size:13px;font-weight:700;letter-spacing:1px}.multiplayer-room-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:var(--space-3) 0}.multiplayer-room-meta div{display:flex;gap:var(--space-2);min-width:0}.multiplayer-room-meta dt{color:var(--text-muted)}.multiplayer-room-meta dd{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-player-list{display:grid;gap:var(--space-1);margin:var(--space-2) 0 var(--space-3)}.room-player-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.room-player-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-inventory)}.room-player-row .menu-btn{width:auto;min-height:28px;padding:4px 8px;font-size:11px}.multiplayer-room-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.multiplayer-room-actions [data-room-control=leave]{grid-column:1 / -1}.room-control-confirm{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--accent-error);border-radius:4px;background:var(--surface-card)}.room-control-confirm p+p{margin-top:var(--space-2);color:var(--text-muted)}.room-control-confirm div{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.room-control-status{min-height:1.2em;margin-top:var(--space-2);color:var(--text-muted)}
