:root{--bg-primary:#11151d;--bg-surface:#18202c;--bg-surface-elevated:#222c3d;--border-color:#3b485d;--border-glow:#32c6c9;--neon-cyan:#32c6c9;--neon-yellow:#ffe176;--neon-magenta:#ee53ad;--neon-orange:#f49b47;--neon-green:#50be76;--neon-red:#f44355;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);width:100%;max-width:100vw;color:var(--text-primary);font-family:var(--font-family);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}.dba-app-container{box-sizing:border-box;flex-direction:column;width:100%;max-width:1440px;min-height:100vh;margin:0 auto;padding:16px;display:flex;overflow-x:hidden}.dba-meta-bar{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding:8px 12px;display:flex}.meta-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.app-branding{letter-spacing:.12em;color:var(--neon-cyan);font-size:14px;font-weight:900}.transport-badge{font-family:var(--font-mono);background:var(--bg-surface-elevated);color:var(--text-secondary);border-radius:4px;padding:3px 8px;font-size:11px}.meta-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meta-btn{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:4px;align-items:center;min-height:34px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s ease-in-out;display:flex}.meta-btn:hover{color:var(--text-primary);border-color:var(--neon-cyan)}.meta-btn.active{border-color:var(--neon-cyan);color:var(--neon-cyan);background:#32c6c926}.meta-btn.btn-reload{color:var(--neon-yellow)}.banner{font-family:var(--font-mono);border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.banner-hidden{display:none}.banner-in-flight{border:1px solid var(--neon-cyan);color:var(--neon-cyan);background:#32c6c926}.banner-warning{border:1px solid var(--neon-orange);color:var(--neon-orange);background:#f49b472e}.banner-error{border:1px solid var(--neon-red);color:var(--neon-red);background:#f4435533}.banner-action-btn{background:var(--neon-orange);color:#000;cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-weight:700}.layout-desktop .app-layout-body{grid-template-columns:280px 1fr 320px;align-items:start;gap:20px;display:grid}.layout-mobile .app-layout-body{flex-direction:column;gap:16px;display:flex}.mobile-sticky-status{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border-color);background:#18202cf2;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:sticky;top:0}.dash-identity{align-items:center;gap:8px;display:flex}.pilot-name{color:var(--neon-yellow);font-weight:700}.version-tag{background:var(--border-color);font-size:11px;font-family:var(--font-mono);border-radius:4px;padding:2px 6px}.dash-quick-metrics{gap:8px;font-size:13px;font-weight:600;display:flex}.metric-pill{background:var(--bg-surface-elevated);border-radius:4px;padding:4px 8px}.metric-pill.cash{color:var(--neon-green)}.metric-pill.fuel{color:var(--neon-yellow)}.metric-pill.hp{color:var(--neon-cyan)}.dashboard-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:16px;padding:16px;display:flex}.panel-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:baseline;padding-bottom:8px;display:flex}.pilot-title{color:var(--neon-yellow);font-size:20px}.version-badge{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.metric-group{flex-direction:column;gap:8px;display:flex}.stat-box{background:var(--bg-surface-elevated);border:1px solid #ffffff0d;border-radius:6px;padding:10px}.stat-label{color:var(--text-muted);letter-spacing:.05em;font-size:11px;font-weight:700;display:block}.cash-text{color:var(--neon-green);font-size:22px;font-weight:800;font-family:var(--font-mono)}.escrow-text{color:var(--neon-cyan);font-size:16px;font-weight:700;font-family:var(--font-mono)}.stat-progress-wrap{background:#090c12;border-radius:4px;width:100%;height:8px;margin:6px 0 2px;overflow:hidden}.progress-bar{height:100%}.fuel-bar{background:var(--neon-yellow)}.wear-bar{background:var(--neon-orange)}.progress-val{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono)}.gauge-row{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.condition-gauge{background:var(--bg-surface-elevated);border-radius:4px;padding:6px 8px}.gauge-tag{color:var(--text-muted);font-size:10px;font-weight:700}.gauge-meter{background:#090c12;border-radius:3px;height:6px;margin:4px 0;overflow:hidden}.hp-fill{background:var(--neon-cyan)}.fatigue-fill{background:var(--neon-orange)}.stress-fill{background:var(--neon-magenta)}.heat-fill{background:var(--neon-red)}.gauge-num{font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.location-summary{border-top:1px solid var(--border-color);flex-direction:column;padding-top:10px;display:flex}.loc-label{color:var(--text-muted);font-size:10px;font-weight:700}.loc-district{color:var(--text-primary);font-size:14px;font-weight:700}.loc-node{color:var(--neon-cyan);font-size:13px}.view-mode-tabs{gap:10px;width:100%;margin-bottom:12px;display:flex}.tab-btn{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-secondary);letter-spacing:.05em;cursor:pointer;touch-action:manipulation;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-size:13px;font-weight:700;transition:all .15s ease-in-out;display:flex}.tab-btn:hover{color:var(--text-primary);border-color:var(--neon-cyan)}.tab-btn.active{background:var(--bg-surface-elevated);border-color:var(--neon-cyan);color:var(--neon-cyan);box-shadow:0 0 10px #32c6c940}.scene-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:16px;padding:20px;display:flex}.scene-backdrop{background:linear-gradient(#090d14 0%,#161e2b 100%);border:1px solid #32c6c933;border-radius:6px;justify-content:center;align-items:center;height:180px;display:flex;position:relative;overflow:hidden}.neon-grid-horizon{background:repeating-linear-gradient(0deg,#0000,#0000 15px,#32c6c91a 16px),repeating-linear-gradient(90deg,#0000,#0000 30px,#32c6c91a 31px);width:100%;height:50%;position:absolute;bottom:0}.storefront-silhouette{z-index:2;text-align:center}.neon-sign{letter-spacing:.15em;color:var(--neon-cyan);text-shadow:0 0 10px #32c6c9b3,0 0 20px #32c6c966;margin-bottom:10px;font-size:26px;font-weight:900}.cruiser-svg{filter:drop-shadow(0 0 8px #ee53ad99);width:160px;height:50px}.scene-flavor{color:var(--text-secondary);font-size:14px;line-height:1.6}.breadcrumbs{align-items:center;gap:8px;margin-bottom:6px;display:flex}.district-badge{background:var(--bg-surface-elevated);border-radius:4px;padding:3px 8px;font-size:12px;font-weight:700}.node-badge{color:var(--neon-cyan);font-size:12px;font-weight:700}.active-jobs-card{border-top:1px solid var(--border-color);padding-top:14px}.jobs-title{color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:12px}.jobs-list{flex-direction:column;gap:8px;list-style:none;display:flex}.job-item{background:var(--bg-surface-elevated);border-left:3px solid var(--neon-yellow);border-radius:6px;padding:10px 14px}.job-header{justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.job-kind{color:var(--neon-yellow);font-weight:800}.job-status-badge{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:10px}.job-status-badge.scheduled{color:var(--neon-yellow);background:#ffe17633}.job-detail{color:var(--text-secondary);justify-content:space-between;font-size:13px;display:flex}.active-personal-repair-card{background:#f6d55c14;border:1px solid #f6d55c59;border-radius:6px;margin-bottom:12px;padding:12px 14px}.repair-card-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.repair-badge{font-family:var(--font-mono);letter-spacing:.08em;color:var(--neon-yellow);font-size:11px;font-weight:700}.repair-status-pill{font-family:var(--font-mono);color:var(--neon-yellow);text-transform:uppercase;background:#f6d55c33;border-radius:3px;padding:2px 6px;font-size:10px}.repair-work-explainer{color:var(--text-secondary);margin-bottom:10px;font-size:12px;line-height:1.4}.repair-metrics-grid{background:#0000004d;border:1px solid #ffffff0d;border-radius:4px;grid-template-columns:repeat(2,1fr);gap:8px;padding:8px 10px;display:grid}.repair-metric{flex-direction:column;gap:2px;display:flex}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.metric-value{font-family:var(--font-mono);color:var(--text-main);font-size:12px;font-weight:600}.metric-value.debit{color:#ff6b6b}.metric-value.reward{color:var(--neon-green)}.metric-value.countdown{color:var(--neon-cyan)}.metric-value.locked{color:var(--neon-yellow)}.btn-settle-repair{background:var(--neon-green);color:#0b0f19;width:100%;font-family:var(--font-mono);cursor:pointer;letter-spacing:.05em;border:none;border-radius:4px;margin-top:10px;padding:8px 12px;font-size:12px;font-weight:700;transition:opacity .2s}.btn-settle-repair:hover:not(:disabled){opacity:.9}.btn-settle-repair:disabled{opacity:.5;cursor:not-allowed}.active-journey-card{background:#0284c71a;border:1px solid #38bdf866}.active-journey-card.map-journey-card{margin:10px 12px}.journey-badge{color:var(--neon-cyan,#0ff)}.journey-progress-bar-container{background:#ffffff1a;border-radius:4px;height:8px;margin:8px 0;overflow:hidden}.journey-progress-bar{background:linear-gradient(90deg,#f05,#0ff);height:100%;transition:width 1s linear}.active-journey-line{stroke:#0ff;stroke-dasharray:6 4;animation:1s linear infinite journeyDash}@keyframes journeyDash{to{stroke-dashoffset:-10px}}.equip-result-banner{color:var(--neon-cyan);background:#32c6c926;border:1px solid #32c6c966;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:8px 12px;font-size:12px;display:flex}.equip-result-text{font-weight:600}.btn-close-notice{color:var(--neon-cyan);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:12px}.inventory-card{border-top:1px solid var(--border-color);padding-top:14px}.inventory-title{color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:12px}.inventory-empty-state{border:1px dashed var(--border-color);text-align:center;background:#ffffff05;border-radius:6px;padding:14px}.inventory-empty-state .no-items{color:var(--text-muted);margin:0 0 4px;font-weight:600}.empty-subtext{color:var(--text-muted);font-size:11px}.inventory-grid{flex-wrap:wrap;gap:8px;display:flex}.inventory-item-card{background:var(--bg-surface-elevated);cursor:pointer;border:1px solid #ffffff14;border-radius:6px;flex-direction:column;flex:calc(50% - 8px);gap:6px;min-width:220px;padding:10px 12px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.inventory-item-card:hover{background:#ffffff0a;border-color:#32c6c966}.inventory-item-card.selected{border-color:var(--neon-cyan);background:#32c6c90f;box-shadow:0 0 8px #32c6c940}.inventory-item-card.is-equipped{border-left:3px solid var(--neon-cyan)}.item-main-row{justify-content:space-between;align-items:center;display:flex}.item-name{color:var(--text-main);font-size:13px;font-weight:700}.item-sub-row{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.item-def-id{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.item-slot-target{font-family:var(--font-mono);font-size:11px}.item-status-row{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.btn-item-equip{border:1px solid var(--neon-cyan);color:var(--neon-cyan);font-family:var(--font-mono);cursor:pointer;background:#32c6c926;border-radius:3px;padding:4px 8px;font-size:11px;font-weight:600;transition:all .2s}.btn-item-equip:hover:not(:disabled){background:var(--neon-cyan);color:#0b0f19}.btn-item-equip.btn-replace{border-color:var(--neon-yellow);color:var(--neon-yellow);background:#f6d55c26}.btn-item-equip.btn-replace:hover:not(:disabled){background:var(--neon-yellow);color:#0b0f19}.btn-item-equip:disabled{opacity:.4;cursor:not-allowed;border-color:var(--border-color);color:var(--text-muted)}.btn-clear-selection{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;padding:2px 6px;font-size:11px}.btn-clear-selection:hover{color:var(--text-main);border-color:var(--text-secondary)}.inventory-item-badge{background:var(--bg-surface-elevated);border:1px solid #ffffff0d;border-radius:4px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.item-def{color:var(--neon-yellow);font-weight:700}.item-qty{font-family:var(--font-mono);color:var(--text-muted)}.slot-badge{border-radius:3px;padding:1px 4px;font-size:10px}.slot-badge.equipped{color:var(--neon-cyan);background:#32c6c933}.slot-badge.unequipped{background:var(--border-color);color:var(--text-muted)}.slot-badge.unowned-badge{color:var(--text-muted);background:#ffffff0d;border:1px solid #ffffff14}.inventory-title-wrap{flex-direction:column;gap:2px;display:flex}.inventory-subtitle{color:var(--text-muted);font-size:11px}.equipment-catalog-disclaimer{color:var(--text-muted);background:#32c6c90a;border:1px solid #32c6c933;border-radius:5px;align-items:flex-start;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:11px;line-height:1.45;display:flex}.equipment-catalog-disclaimer .disclaimer-icon{color:var(--neon-cyan);font-size:13px;font-weight:700}.equipment-category-nav{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.cat-nav-btn{border:1px solid var(--border-color);color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;background:#ffffff08;border-radius:4px;align-items:center;gap:5px;padding:5px 9px;font-size:11px;transition:all .15s;display:flex}.cat-nav-btn:hover{border-color:var(--neon-cyan);color:var(--text-main);background:#32c6c914}.cat-nav-btn.active{border-color:var(--neon-cyan);color:var(--neon-cyan);background:#32c6c929;font-weight:700;box-shadow:0 0 8px #32c6c940}.cat-count-badge{opacity:.85;font-size:10px}.cat-filter-toggle{align-items:center;margin-left:auto;display:flex}.btn-filter-toggle{border:1px solid var(--border-color);color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;background:#ffffff05;border-radius:3px;padding:4px 8px;font-size:10px;transition:all .2s}.btn-filter-toggle:hover{color:var(--text-main);border-color:var(--text-secondary)}.btn-filter-toggle.active{border-color:var(--neon-yellow);color:var(--neon-yellow);background:#f6d55c1a}.item-card-tier-role{flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 4px;display:flex}.tier-tag{color:var(--neon-yellow);font-family:var(--font-mono);background:#f6d55c26;border:1px solid #f6d55c66;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:700}.role-tag{color:var(--text-secondary);font-size:11px}.item-price-tag{font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;font-size:10px}.attr-grid{background:#00000040;border-radius:4px;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0;padding:6px 8px;display:grid}.attr-item{flex-direction:column;gap:1px;display:flex}.attr-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:9px}.attr-val-row{align-items:baseline;gap:4px;display:flex}.attr-value{font-family:var(--font-mono);color:var(--text-main);font-size:12px;font-weight:700}.attr-diff{font-family:var(--font-mono);font-size:10px;font-weight:700}.attr-diff.positive{color:#38ef7d}.attr-diff.negative{color:#ff6b6b}.attr-diff.neutral{color:var(--text-muted)}.comparison-summary{color:var(--text-muted);border-top:1px dashed #ffffff0f;margin-top:2px;padding-top:4px;font-size:10px;line-height:1.35}.comparison-summary strong{color:var(--text-secondary)}.comp-text.equipped-text{color:var(--neon-cyan);font-weight:600}.comp-text.empty-slot-text{color:var(--text-muted);font-style:italic}.inventory-item-card.unowned{opacity:.85;background:#ffffff04;border-color:#ffffff0a}.inventory-item-card.unowned:hover{opacity:1;border-color:#ffffff1f}.btn-item-equip.btn-unowned{color:var(--text-muted);cursor:not-allowed;opacity:.6;background:#ffffff05;border:1px solid #ffffff14}.item-qty.owned-tag{color:#38ef7d;font-size:10px;font-weight:600}.item-qty.unowned-tag{color:var(--text-muted);font-size:10px}.transit-cost-status.locked-notice{color:#ff6b6b}.map-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:14px;padding:18px;display:flex}.map-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:12px;display:flex}.map-title-wrap{flex-direction:column;gap:4px;display:flex}.map-title{color:var(--neon-cyan);flex-wrap:wrap;align-items:center;gap:8px;font-size:18px;font-weight:800;display:flex}.draft-badge{font-size:10px;font-family:var(--font-mono);color:var(--neon-orange);border:1px solid var(--neon-orange);text-transform:uppercase;background:#f49b4733;border-radius:4px;padding:2px 6px}.map-provenance{color:var(--text-muted);font-size:12px}.map-toolbar{align-items:center;gap:8px;display:flex}.map-tool-btn{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;touch-action:manipulation;border-radius:4px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:8px 12px;font-size:15px;font-weight:700;transition:all .15s ease-in-out;display:flex}.map-tool-btn:hover{border-color:var(--neon-yellow);color:var(--neon-yellow)}.map-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.view-scope-controls{background:var(--bg-surface-elevated);border:1px solid var(--border-color);border-radius:4px;gap:2px;padding:2px;display:flex}.map-scope-btn{color:var(--text-secondary);cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:5px;min-height:38px;padding:6px 12px;font-size:13px;font-weight:700;transition:all .15s ease-in-out;display:flex}.map-scope-btn:hover{color:var(--text-primary);border-color:#32c6c94d}.map-scope-btn.active{color:var(--neon-cyan);border-color:var(--neon-cyan);background:#32c6c933}.map-layer-controls-group{background:var(--bg-surface-elevated);border:1px solid var(--border-color);border-radius:4px;gap:2px;padding:2px;display:flex}.map-layer-toggle-btn{color:var(--text-secondary);cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:4px;min-height:38px;padding:6px 10px;font-size:13px;font-weight:600;transition:all .15s ease-in-out;display:flex}.map-layer-toggle-btn:hover{color:var(--text-primary);border-color:#32c6c94d}.map-layer-toggle-btn.active{color:var(--neon-cyan);background:#32c6c92e;border-color:#32c6c999}.map-viewport{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;background:#0b0f17;border:1px solid #32c6c940;border-radius:6px;width:100%;height:580px;min-height:540px;position:relative;overflow:hidden;box-shadow:inset 0 0 20px #0009}.map-viewport:active,.map-viewport.is-dragging{cursor:grabbing}.map-viewport:focus-visible{outline:2px solid var(--neon-cyan);outline-offset:-2px}.map-svg{width:100%;height:100%;display:block}.boundary-polygon{fill:#32c6c914;stroke:var(--neon-cyan);stroke-width:2.5px;stroke-linejoin:round;filter:drop-shadow(0 0 8px #32c6c966)}.highway-context-layer{pointer-events:none}.road-motorway{filter:drop-shadow(0 0 5px #38bdf873)}.road-context-primary{filter:drop-shadow(0 0 3px #32c6c94d)}.route-shield-group,.route-shield{cursor:default;pointer-events:none}.route-shield text{-webkit-user-select:none;user-select:none}.map-scale-bar{pointer-events:none;-webkit-user-select:none;user-select:none}.map-roads-layer{pointer-events:none}.road-minor{stroke:#94a3b852;stroke-width:.9px;fill:none;stroke-linecap:round;stroke-linejoin:round}.road-major{stroke:#32c6c9bf;stroke-width:1.6px;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #32c6c959)}.north-indicator{pointer-events:none;-webkit-user-select:none;user-select:none}.street-label{font-family:var(--font-mono), system-ui;text-shadow:0 0 4px #000000f2,0 0 8px #000c;pointer-events:none;-webkit-user-select:none;user-select:none}.svg-attribution{cursor:pointer;font-family:system-ui,sans-serif;transition:fill .15s ease-in-out}.svg-attribution:hover{fill:var(--neon-yellow)}.map-marker{cursor:pointer;outline:none}.map-marker .marker-pin{transition:all .15s ease-in-out}.map-marker:hover .marker-pin,.map-marker:focus .marker-pin,.map-marker.hovered .marker-pin{filter:drop-shadow(0 0 8px var(--neon-yellow));transform:scale(1.2)}.map-marker.selected .marker-pin{filter:drop-shadow(0 0 10px var(--neon-yellow))}.player-pulse{animation:2s ease-out infinite pulse-ring}@keyframes pulse-ring{0%{r:14px;opacity:.8}to{r:34px;opacity:0}}.destination-pills-wrap{flex-direction:column;gap:8px;display:flex}.destination-pills-label{color:var(--text-muted);letter-spacing:.05em;font-size:11px;font-weight:700}.destination-pills{flex-wrap:wrap;gap:8px;display:flex}.dest-pill{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;touch-action:manipulation;border-radius:6px;align-items:center;gap:6px;min-height:44px;padding:8px 12px;font-size:12px;font-weight:600;transition:all .15s ease-in-out;display:flex}.dest-pill:hover,.dest-pill.hovered{border-color:var(--neon-yellow);color:var(--text-primary)}.dest-pill.active{border-color:var(--neon-yellow);color:var(--neon-yellow);background:#ffe1761f;box-shadow:0 0 8px #ffe17640}.dest-pill.current-loc{border-color:var(--neon-cyan)}.dest-pill .loc-tag{background:var(--border-color);font-size:9px;font-family:var(--font-mono);border-radius:3px;padding:2px 4px}.dest-pill.current-loc .loc-tag{color:var(--neon-cyan);background:#32c6c940}.map-attribution-bar{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-muted);border-radius:6px;flex-direction:column;gap:4px;padding:10px 14px;font-size:11px;line-height:1.4;display:flex}.map-attribution-bar .attribution-line{color:var(--text-secondary)}.map-attribution-bar .osm-link{color:var(--neon-cyan);font-weight:600;text-decoration:underline}.map-attribution-bar .osm-link:hover{color:var(--neon-yellow)}.map-attribution-bar .attribution-disclaimer{color:var(--text-muted);opacity:.85;font-size:10px}.map-source-details{margin-top:4px;font-size:10.5px}.map-source-summary{cursor:pointer;color:var(--neon-cyan);-webkit-user-select:none;user-select:none;padding:2px 0;font-weight:600}.map-source-summary:hover{color:var(--neon-yellow)}.map-source-content{border-left:2px solid var(--neon-cyan);background:#0b0f1780;border-radius:0 4px 4px 0;flex-direction:column;gap:4px;margin-top:6px;padding:6px 10px;display:flex}.map-source-content .map-provenance{color:var(--text-secondary)}.location-details-panel{background:var(--bg-surface-elevated);border:1px solid var(--border-color);border-radius:6px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.details-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.draft-badge-pill{color:var(--neon-orange);font-size:10px;font-family:var(--font-mono);text-transform:uppercase;background:#f49b4726;border:1px solid #f49b4766;border-radius:4px;padding:2px 6px;font-weight:700}.details-services-wrap{flex-direction:column;gap:6px;display:flex}.planned-features-title{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.service-chip.planned-chip{color:var(--text-muted);background:#94a3b80d;border:1px dashed #94a3b84d}.preview-routing-note{color:var(--neon-orange);font-size:11px;font-family:var(--font-mono);margin-bottom:2px}.transit-cost-status{color:var(--neon-yellow);font-size:13px;font-family:var(--font-mono);font-weight:700}.details-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.details-title-group{align-items:baseline;gap:10px;display:flex}.details-name{color:var(--text-primary);font-size:16px;font-weight:800}.details-category{color:var(--text-muted);font-size:12px}.details-badge{font-size:10px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;border-radius:4px;padding:3px 8px}.details-badge.current{color:var(--neon-cyan);border:1px solid var(--neon-cyan);background:#32c6c933}.details-badge.destination{color:var(--neon-yellow);border:1px solid var(--neon-yellow);background:#ffe17633}.details-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.details-services{flex-wrap:wrap;gap:6px;display:flex}.service-chip{color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:3px 8px;font-size:11px}.details-footer{border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:10px;display:flex}.details-cost{color:var(--neon-yellow);font-size:13px;font-family:var(--font-mono);font-weight:700}.travel-btn{background:var(--neon-cyan);color:#000;cursor:pointer;touch-action:manipulation;border:none;border-radius:4px;min-height:44px;padding:10px 18px;font-size:13px;font-weight:800;transition:all .15s ease-in-out}.travel-btn:hover:not(:disabled){background:#4ae0e3;box-shadow:0 0 12px #32c6c980}.travel-btn:disabled{background:var(--border-color);color:var(--text-muted);cursor:not-allowed;opacity:.6}.action-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:16px}.action-heading{color:var(--text-muted);letter-spacing:.08em;border-bottom:1px solid var(--border-color);margin-bottom:12px;padding-bottom:6px;font-size:13px}.action-grid{flex-direction:column;gap:10px;display:flex}.action-btn{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;text-align:left;touch-action:manipulation;border-radius:6px;align-items:center;gap:12px;min-height:48px;padding:12px 14px;transition:all .15s ease-in-out;display:flex}.action-btn:hover:not(:disabled){border-color:var(--neon-cyan);background:#273448;box-shadow:0 0 10px #32c6c940}.action-btn:active:not(:disabled){transform:scale(.98)}.action-btn:disabled{opacity:.45;cursor:not-allowed}.key-shortcut{font-family:var(--font-mono);color:var(--neon-yellow);font-size:14px;font-weight:700}.btn-title{font-size:14px;font-weight:700;display:block}.btn-desc{color:var(--text-secondary);font-size:11px;display:block}.highlight-repair{border-color:#ee53ad80}.highlight-repair:hover:not(:disabled){border-color:var(--neon-magenta);box-shadow:0 0 12px #ee53ad4d}.history-panel{border-top:1px solid var(--border-color);margin-top:16px;padding-top:12px}.history-heading{color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:11px}.history-list{flex-direction:column;gap:6px;list-style:none;display:flex}.history-item{font-family:var(--font-mono);background:var(--bg-surface-elevated);border-radius:4px;justify-content:space-between;padding:4px 8px;font-size:11px;display:flex}.history-item.committed{border-left:2px solid var(--neon-green)}.history-item.rejected{border-left:2px solid var(--neon-red)}.no-history{color:var(--text-muted);font-size:11px;font-style:italic}.reduced-motion *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=768px){.dba-app-container{width:100%;max-width:100vw;padding:8px;overflow-x:hidden}.layout-desktop .app-layout-body,.layout-mobile .app-layout-body{flex-direction:column;gap:12px;width:100%;display:flex}.desktop-sidebar,.desktop-action-sidebar,.desktop-center-stage,.mobile-main-flow{width:100%;min-width:0;max-width:100%}.meta-left,.meta-right{flex-wrap:wrap;gap:6px}.map-viewport{height:480px;min-height:440px}.map-toolbar{justify-content:space-between;width:100%}.details-footer{flex-direction:column;align-items:stretch}.travel-btn{text-align:center;width:100%}}.transport-mode-group{align-items:center;gap:4px;display:flex}.mode-btn{font-size:11px;font-weight:700}.mode-btn.active-live{border-color:var(--neon-green);color:var(--neon-green);background:#22c55e33;box-shadow:0 0 8px #22c55e4d}.mode-btn.active-mock{border-color:var(--neon-yellow);color:var(--neon-yellow);background:#ffe17633}.account-switcher{border:1px solid var(--border-color);background:#0000004d;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;display:flex}.account-tag{color:var(--text-muted);font-size:10px;font-family:var(--font-mono);font-weight:700}.account-btn{color:var(--text-secondary);font-size:11px;font-family:var(--font-mono);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:3px 8px;transition:all .15s ease-in-out}.account-btn:hover{color:var(--text-primary);border-color:var(--border-color)}.account-btn.active{border-color:var(--neon-cyan);color:var(--neon-cyan);background:#32c6c933;font-weight:700}.character-create-panel{justify-content:center;width:100%;padding:40px 16px;display:flex}.create-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:16px;width:100%;max-width:540px;padding:28px;display:flex;box-shadow:0 8px 24px #0006}.create-title{color:var(--neon-green);letter-spacing:.05em;font-size:18px;font-weight:800}.create-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.create-form{flex-direction:column;gap:12px;display:flex}.create-label{color:var(--text-muted);font-size:11px;font-family:var(--font-mono);font-weight:700}.create-input{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--text-primary);font-size:14px;font-family:var(--font-mono);border-radius:4px;padding:10px 14px}.create-input:focus{border-color:var(--neon-cyan);outline:none;box-shadow:0 0 8px #32c6c94d}.create-btn{background:var(--neon-green);color:#000;justify-content:center;font-weight:800}.create-btn:hover:not(:disabled){background:#4ade80;box-shadow:0 0 12px #22c55e66}.contracts-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:10px;padding:14px;display:flex}.card-header-row{justify-content:space-between;align-items:center;display:flex}.btn-tiny-action{background:var(--bg-surface-elevated);border:1px solid var(--border-color);color:var(--neon-yellow);font-size:11px;font-family:var(--font-mono);cursor:pointer;border-radius:4px;padding:3px 8px;font-weight:700}.btn-tiny-action:hover:not(:disabled){border-color:var(--neon-yellow)}.contracts-list{flex-direction:column;gap:8px;display:flex}.contract-card-item{background:var(--bg-surface-elevated);border:1px solid #ffffff14;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.contract-info{flex-direction:column;gap:3px;display:flex}.contract-reward{color:var(--neon-yellow);font-size:13px}.contract-terms{color:var(--text-muted);font-size:11px}.contract-accept-btn{background:var(--neon-cyan);color:#000;min-height:36px;padding:6px 12px;font-size:12px;font-weight:700}.creator-badge{color:var(--text-muted);font-size:10px;font-family:var(--font-mono);background:#94a3b826;border-radius:4px;padding:3px 8px}.no-contracts{color:var(--text-muted);font-size:12px;font-style:italic}.materials-summary{border-top:1px solid #ffffff14;flex-direction:column;gap:6px;margin-top:10px;padding-top:8px;display:flex}.materials-list{flex-wrap:wrap;gap:6px;display:flex}.material-pill{color:var(--text-primary);background:#32c6c91a;border:1px solid #32c6c94d;border-radius:4px;gap:4px;padding:3px 8px;font-size:11px;display:flex}.no-materials{color:var(--text-muted);font-size:11px}.equipment-summary-card{background:#0f172a;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:12px;padding:12px;display:flex}.equip-summary-header{justify-content:space-between;align-items:center;display:flex}.equip-summary-title{letter-spacing:.08em;color:#94a3b8;font-size:11px;font-weight:700}.btn-manage-equip{color:#fff;cursor:pointer;background:#0284c7;border:1px solid #38bdf8;border-radius:5px;padding:4px 10px;font-size:11px;font-weight:700;transition:background .15s}.btn-manage-equip:hover{background:#0369a1}.equip-summary-slots-row{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.equip-summary-slot-chip{cursor:pointer;text-align:left;color:inherit;background:#131e33;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:2px;padding:6px 8px;font-family:inherit;display:flex}.equip-summary-slot-chip:hover{border-color:#38bdf8}.equip-summary-slot-chip.empty{opacity:.6;border-style:dashed}.slot-chip-cat{color:#94a3b8;font-size:10px}.slot-chip-name{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.slot-chip-tier{color:#38bdf8;font-size:9px;font-weight:700}.btn-map-manage-equip,.btn-manage-equip-inline{color:#38bdf8;cursor:pointer;background:#131e33;border:1px solid #38bdf8;border-radius:5px;padding:4px 10px;font-size:11px;font-weight:700}.btn-map-manage-equip:hover,.btn-manage-equip-inline:hover{background:#38bdf826}.equipment-overlay-backdrop{-webkit-backdrop-filter:blur(8px);z-index:10000;box-sizing:border-box;background:#0a0f1de0;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.equipment-overlay-dialog{color:#f1f5f9;background:#0b1120;border:1px solid #334155;border-radius:12px;flex-direction:column;width:100%;max-width:1140px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #000c,0 0 0 1px #38bdf826}.overlay-header{background:#070d19;border-bottom:1px solid #1e293b;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.overlay-title-group{flex-direction:column;gap:2px;display:flex}.overlay-title{letter-spacing:.05em;color:#38bdf8;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:700;display:flex}.overlay-subtitle{color:#94a3b8;font-size:12px;font-family:var(--font-mono,monospace)}.overlay-header-actions{align-items:center;gap:10px;display:flex}.repair-work-badge{color:#fca5a5;background:#ef444433;border:1px solid #ef444466;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:600}.btn-overlay-close{color:#e2e8f0;cursor:pointer;background:#1e293b;border:1px solid #475569;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s}.btn-overlay-close:hover{background:#334155;border-color:#64748b}.overlay-banner{border-radius:6px;justify-content:space-between;align-items:center;margin:10px 20px 0;padding:8px 12px;font-size:12px;display:flex}.equip-result-banner{color:#6ee7b7;background:#10b98126;border:1px solid #10b98166}.btn-close-notice{color:inherit;cursor:pointer;background:0 0;border:none;font-size:12px}.overlay-slots-summary-section{background:#0f172a;border-bottom:1px solid #1e293b;flex-shrink:0;padding:12px 20px}.installed-slots-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.installed-slot-card{text-align:left;cursor:pointer;color:inherit;background:#131e33;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:4px;padding:8px 10px;font-family:inherit;transition:all .15s;display:flex}.installed-slot-card:hover{background:#17253d;border-color:#38bdf8}.installed-slot-card.active-cat-slot{background:#38bdf81a;border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf8}.installed-slot-card.empty-slot{opacity:.65;border-style:dashed}.slot-card-header{color:#94a3b8;justify-content:space-between;align-items:center;font-size:11px;display:flex}.slot-tier-badge{color:#38bdf8;background:#38bdf833;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:700}.slot-card-body{flex-direction:column;display:flex}.slot-installed-name{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.slot-installed-role{color:#94a3b8;font-size:10px}.slot-empty-label{color:#64748b;font-size:11px;font-style:italic}.overlay-nav-toolbar{background:#090e1a;border-bottom:1px solid #1e293b;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 20px;display:flex}.overlay-category-tabs{flex-wrap:wrap;gap:6px;display:flex}.cat-tab-btn{color:#94a3b8;cursor:pointer;background:#131e33;border:1px solid #1e293b;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;transition:all .15s;display:flex}.cat-tab-btn:hover{color:#e2e8f0;background:#1e293b}.cat-tab-btn.active{color:#fff;background:#0284c7;border-color:#38bdf8;font-weight:600}.cat-count-pill{background:#00000059;border-radius:10px;padding:1px 6px;font-size:10px}.btn-filter-toggle{color:#cbd5e1;cursor:pointer;background:#1e293b;border:1px solid #334155;border-radius:6px;padding:5px 12px;font-size:12px;transition:all .15s}.btn-filter-toggle.active{color:#6ee7b7;background:#10b98133;border-color:#10b981}.overlay-body-split{flex:1;grid-template-columns:1fr 380px;align-items:stretch;gap:16px;min-height:0;padding:16px 20px;display:grid;overflow:hidden}.overlay-choices-column{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.choices-header-row{justify-content:space-between;align-items:center;display:flex}.column-label{letter-spacing:.05em;color:#94a3b8;font-size:12px;font-weight:700}.choices-sublabel{color:#64748b;font-size:11px}.overlay-choices-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-content:start;gap:10px;min-height:0;padding:2px;display:grid;overflow:hidden auto}.choice-card{cursor:pointer;background:#0f172a;border:1px solid #1e293b;border-radius:8px;flex-direction:column;justify-content:space-between;gap:8px;min-width:0;padding:10px;transition:all .15s;display:flex;overflow:hidden}.choice-card:hover{background:#131e33;border-color:#38bdf8}.choice-card.selected{background:#38bdf814;border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf8}.choice-card.unowned{opacity:.7;border-style:dashed}.choice-name-row{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.choice-item-name{color:#f8fafc;white-space:normal;overflow-wrap:anywhere;font-size:13px;font-weight:600}.choice-meta-row{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.tier-tag{color:#38bdf8;background:#38bdf833;border-radius:3px;padding:1px 5px;font-size:10px;font-weight:700}.role-tag{color:#cbd5e1;background:#94a3b826;border-radius:3px;padding:1px 5px;font-size:10px}.price-tag{color:#fde047;font-size:10px;font-family:var(--font-mono,monospace);background:#eab30826;border-radius:3px;padding:1px 5px}.slot-badge.unowned-badge{color:#94a3b8;background:#64748b33;border-radius:3px;padding:1px 5px;font-size:10px}.choice-action-col{margin-top:auto;padding-top:6px}.choice-action-col .btn-item-equip{width:100%;padding:5px 8px;font-size:11px}.overlay-comparison-column{min-width:0;min-height:0;overflow-y:auto}.focused-comparison-panel{background:#0f172a;border:1px solid #334155;border-radius:8px;flex-direction:column;gap:12px;padding:14px;display:flex}.comparison-heading{letter-spacing:.06em;color:#94a3b8;margin:0;font-size:12px;font-weight:700}.comparison-pair-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.comparison-card{background:#131e33;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:4px;padding:8px;display:flex}.comparison-card.installed-card{border-color:#334155}.comparison-card.selected-card{background:#0284c71a;border-color:#0284c7}.pair-sublabel{color:#64748b;letter-spacing:.05em;font-size:9px;font-weight:700}.pair-item-name{color:#f1f5f9;margin:0;font-size:12px;font-weight:600}.pair-tags{flex-wrap:wrap;gap:4px;display:flex}.comparison-attr-table{background:#070d19;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:4px;padding:8px;display:flex}.attr-table-header{color:#64748b;letter-spacing:.05em;border-bottom:1px solid #1e293b;grid-template-columns:1fr 60px 60px 50px;padding-bottom:4px;font-size:10px;font-weight:700;display:grid}.attr-table-row{border-bottom:1px solid #ffffff08;grid-template-columns:1fr 60px 60px 50px;align-items:center;padding:3px 0;font-size:11px;display:grid}.attr-table-row:last-child{border-bottom:none}.td-attr{color:#cbd5e1}.td-current{color:#94a3b8;font-family:var(--font-mono,monospace)}.td-selected{color:#f1f5f9;font-weight:600;font-family:var(--font-mono,monospace)}.delta-pill{text-align:center;font-size:10px;font-weight:700;font-family:var(--font-mono,monospace);border-radius:3px;padding:1px 4px;display:inline-block}.delta-pill.positive{color:#34d399;background:#10b98133}.delta-pill.negative{color:#f87171;background:#ef444433}.delta-pill.neutral{color:#94a3b8}.comparison-tradeoff-summary{color:#94a3b8;background:#1e293b80;border-radius:6px;align-items:flex-start;gap:6px;padding:8px;font-size:11px;display:flex}.tradeoff-icon{color:#38bdf8}.equipment-catalog-disclaimer{color:#64748b;align-items:flex-start;gap:6px;padding:4px 6px;font-size:10px;display:flex}.overlay-equip-action-box{border-top:1px solid #1e293b;flex-direction:column;gap:8px;padding-top:10px;display:flex}.overlay-equip-action-box .notice-text{color:#94a3b8;margin-bottom:6px;font-size:11px;display:block}.btn-equip-action{cursor:pointer;border-radius:6px;width:100%;padding:8px 12px;font-size:13px;font-weight:700}.btn-primary-equip{color:#fff;background:#0284c7;border:1px solid #38bdf8}.btn-primary-equip:hover{background:#0369a1}.btn-replace{color:#fff;background:#7c3aed;border:1px solid #a78bfa}.btn-unowned{color:#64748b;cursor:not-allowed;background:#1e293b;border:1px solid #334155}.comparison-placeholder{text-align:center;color:#64748b;background:#0f172a;border:1px dashed #334155;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:24px;display:flex}.placeholder-icon{font-size:28px}@media (width<=768px){.equip-summary-slots-row{grid-template-columns:repeat(3,1fr)}.equipment-overlay-backdrop{padding:0}.equipment-overlay-dialog{border:none;border-radius:0;max-width:100%;height:100vh;max-height:100vh}.overlay-header{padding:10px 14px}.overlay-title{font-size:15px}.overlay-subtitle{font-size:10px}.installed-slots-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.installed-slot-card{padding:6px}.overlay-body-split{grid-template-rows:auto minmax(100px,1fr);grid-template-columns:1fr;gap:10px;padding:8px 12px 68px}.overlay-comparison-column{grid-row:1;overflow:visible}.overlay-choices-column{grid-row:2}.overlay-choices-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.choice-card{gap:3px;padding:8px}.choice-name-row{flex-direction:column;gap:3px}.choice-item-name{font-size:12px}.choice-meta-row .price-tag,.choice-meta-row .category-tag{display:none}.focused-comparison-panel{gap:7px;padding:9px}.comparison-tradeoff-summary,.equipment-catalog-disclaimer,.overlay-equip-action-box{display:none}.comparison-card{padding:6px}.pair-tags .role-tag{display:none}.attr-table-header,.attr-table-row{grid-template-columns:minmax(70px,1fr) 52px 52px 40px}.overlay-slots-summary-section{padding:8px 12px}.overlay-nav-toolbar{gap:6px;padding:8px 12px}.overlay-category-tabs .cat-tab-btn:not(:first-child){display:none}.overlay-category-tabs{flex:0}.overlay-nav-toolbar{flex-wrap:nowrap}.overlay-slots-summary-section .section-label{font-size:13px}.attr-table-header,.attr-table-row{column-gap:4px}.installed-slot-card{min-height:38px}.choices-sublabel{display:none}.phone-persistent-action-bar{box-sizing:border-box;z-index:10001;background:#070d19;border-top:1px solid #1e293b;justify-content:space-between;align-items:center;padding:8px 12px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #00000080}.phone-selected-summary{flex-direction:column;max-width:55%;display:flex}.phone-item-name{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.phone-item-meta{color:#94a3b8;font-size:10px}.phone-actions-row{align-items:center;gap:8px;display:flex}.btn-overlay-close-phone{color:#cbd5e1;background:#1e293b;border:1px solid #475569;border-radius:5px;padding:6px 10px;font-size:11px;font-weight:600}.btn-phone-equip{padding:6px 12px;font-size:11px;font-weight:700}}.world-activity-strip{color:#94a3b8;box-sizing:border-box;background:#0a0f1d;border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;gap:12px;min-height:28px;padding:6px 16px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;display:flex}.activity-strip-left{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:10px;display:flex;overflow:hidden}.strip-badge.online-badge{color:#34d399;letter-spacing:.04em;background:#0f172a;border:1px solid #059669;border-radius:4px;align-items:center;gap:5px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.live-dot{background:#10b981;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 6px #10b981}.strip-badge.online-badge.reconnecting,.strip-badge.online-badge.connecting{color:#fbbf24;border-color:#f59e0b}.strip-badge.online-badge.offline{color:#94a3b8;border-color:#64748b}.live-dot.dot-reconnecting,.live-dot.dot-connecting{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.live-dot.dot-offline{box-shadow:none;background:#64748b}.strip-presence-summary .peer-tag{color:#38bdf8;font-weight:500}.strip-presence-summary .solo-tag{color:#64748b;font-style:italic}.activity-strip-right{text-overflow:ellipsis;white-space:nowrap;align-items:center;max-width:50%;display:flex;overflow:hidden}.activity-ticker{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;display:flex;overflow:hidden}.ticker-label{color:#f59e0b;font-size:10px;font-weight:700}.ticker-text{color:#cbd5e1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ticker-idle{color:#64748b;font-size:10px}.location-peers-row{background:#0f172a;border-left:2px solid #38bdf8;border-radius:0 4px 4px 0;flex-direction:column;gap:2px;margin-top:6px;padding:4px 8px;display:flex}.location-peers-row .peers-tag{color:#38bdf8;letter-spacing:.05em;font-size:9px;font-weight:700}.location-peers-row .peers-names{color:#e2e8f0;font-size:11px}.dest-peer-badge{color:#f0f9ff;background:#0369a1;border-radius:3px;align-items:center;margin-left:4px;padding:1px 4px;font-size:10px;font-weight:700;display:inline-flex}.dest-peers-detail{background:#0f172a;border:1px solid #1e293b;border-radius:4px;align-items:center;gap:6px;margin:6px 0;padding:6px 8px;display:flex}.dest-peers-detail .peers-label{color:#38bdf8;font-size:10px;font-weight:700}.dest-peers-detail .peers-list{color:#e2e8f0;font-size:11px}.overlay-world-badge{color:#6ee7b7;background:#064e3b;border:1px solid #059669;border-radius:4px;align-items:center;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}@media (width<=768px){.world-activity-strip{flex-direction:column;align-items:flex-start;gap:4px;padding:6px 10px}.activity-strip-right{max-width:100%}.overlay-world-badge{display:none}}.structured-dialog-backdrop{-webkit-backdrop-filter:blur(8px);z-index:10000;box-sizing:border-box;background:#0a0f1de0;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.structured-dialog{color:#f1f5f9;background:#0b1120;border:1px solid #334155;border-radius:12px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #000c,0 0 0 1px #38bdf826}.dialog-body{flex-direction:column;gap:16px;padding:16px 20px;display:flex;overflow-y:auto}.dialog-section{background:#070d19;border:1px solid #1e293b;border-radius:8px;padding:14px}.section-title{letter-spacing:.8px;color:#38bdf8;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.sub-title{letter-spacing:.6px;color:#94a3b8;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:700}.dialog-metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.dialog-metric-item{background:#0b1324;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.metric-lbl{color:#64748b;text-transform:uppercase;font-size:10px;font-weight:600}.metric-val{color:#f1f5f9;font-size:13px;font-weight:700}.metric-val.highlight{color:#38bdf8}.active-service-card{background:#0d1726;border:1px solid #1e3a5f;border-radius:8px;flex-direction:column;gap:10px;padding:12px;display:flex}.service-card-top{justify-content:space-between;align-items:center;display:flex}.service-type-badge{color:#f59e0b;font-size:11px;font-weight:700}.service-due-bar-wrap{flex-direction:column;gap:6px;display:flex}.service-countdown-line{color:#94a3b8;justify-content:space-between;font-size:11px;display:flex}.service-countdown-line .payout-quote strong{color:#34d399}.service-actions-row,.property-actions-row{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.wire-notice-box{background:#1e1b4b;border:1px solid #4338ca;border-radius:6px;padding:12px}.notice-title{letter-spacing:.6px;color:#a5b4fc;margin-bottom:4px;font-size:11px;font-weight:800;display:block}.notice-body{color:#c7d2fe;margin:0;font-size:11px;line-height:1.5}.offerings-list{flex-direction:column;gap:8px;display:flex}.offering-card{background:#0b1324;border:1px solid #1e293b;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.offering-card.disabled{opacity:.7}.offering-info{flex-direction:column;gap:2px;display:flex}.offering-name{color:#f1f5f9;font-size:12px;font-weight:700}.offering-desc{color:#94a3b8;font-size:11px}.offering-badge{border-radius:4px;padding:3px 6px;font-size:10px;font-weight:700}.offering-badge.published{color:#6ee7b7;background:#064e3b;border:1px solid #059669}.offering-badge.pending{color:#a5b4fc;background:#312e81;border:1px solid #4338ca}.contract-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:3px;display:flex}.contract-creator{color:#94a3b8;font-size:11px}.creator-name{color:#38bdf8;font-weight:700}.contract-id-badge{color:#64748b;background:#090e1a;border:1px solid #1e293b;border-radius:3px;padding:1px 4px;font-size:10px}.contract-id-text{color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.property-header-line{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.property-id-banner{background:#090e1a;border:1px solid #1e293b;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:11px;display:flex}.plot-id-full{color:#38bdf8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700}.property-details-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.prop-detail-item{background:#0b1324;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.prop-label{color:#64748b;text-transform:uppercase;font-size:10px;font-weight:600}.prop-val{color:#e2e8f0;font-size:12px}.property-disclaimer{color:#d6d3d1;background:#1c1917;border:1px solid #44403c;border-radius:6px;padding:10px 12px;font-size:11px;line-height:1.5}.property-disclaimer strong{color:#f59e0b}.property-disclaimer p{margin:4px 0 0}.plot-filters-toolbar{background:#070d19;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:8px;margin-top:10px;padding:10px 14px;display:flex}.plot-filters-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.plot-layer-toggle-wrap{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.gang-map-legends section{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:10px 0;display:flex}.gang-map-legends span{overflow-wrap:anywhere;align-items:center;gap:6px;min-width:0;display:inline-flex}.gang-map-legends .map-tint-swatch{flex-shrink:0}.map-tint-swatch{border:1px solid;border-radius:3px;width:18px;height:18px;display:inline-block}.plot-layer-checkbox-label{cursor:pointer;flex-shrink:0;align-items:center;gap:6px;display:flex}.plot-layer-title{color:#38bdf8;letter-spacing:.6px;font-size:11px;font-weight:800}.plot-counts-summary{color:#94a3b8;font-size:11px;font-weight:600}.plot-category-tabs,.plot-status-tabs{flex-wrap:wrap;gap:4px;display:flex}.plot-cat-tab,.plot-status-tab{color:#94a3b8;cursor:pointer;background:#0b1324;border:1px solid #1e293b;border-radius:4px;padding:4px 8px;font-size:10px;font-weight:600;transition:all .15s}.plot-cat-tab:hover,.plot-status-tab:hover{color:#f1f5f9;border-color:#38bdf8}.plot-cat-tab.active,.plot-status-tab.active{color:#fff;background:#0369a1;border-color:#38bdf8;font-weight:700}.plot-status-badge,.plot-category-badge{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:700}.plot-status-badge.status-available{color:#6ee7b7;background:#064e3b;border:1px solid #059669}.plot-status-badge.status-public{color:#fde68a;background:#78350f;border:1px solid #d97706}.plot-status-badge.status-unavailable{color:#d4d4d8;background:#3f3f46;border:1px solid #71717a}.plot-status-badge.status-owned{color:#c7d2fe;background:#1e1b4b;border:1px solid #4f46e5}.plot-status-badge.status-leased{color:#a5b4fc;background:#312e81;border:1px solid #6366f1}.plot-status-badge.status-for_sale{color:#fbcfe8;background:#831843;border:1px solid #db2777}.plot-status-badge.status-for_lease{color:#e9d5ff;background:#581c87;border:1px solid #9333ea}.plot-status-badge.status-transfer_offered{color:#a5f3fc;background:#0e7490;border:1px solid #0891b2}.plot-category-badge.cat-business{color:#7dd3fc;background:#0c4a6e}.plot-category-badge.cat-residential{color:#c4b5fd;background:#4c1d95}.plot-category-badge.cat-mixed{color:#6ee7b7;background:#064e3b}.plot-category-badge.cat-government{color:#fde68a;background:#78350f}.plot-category-badge.cat-open_space{color:#a7f3d0;background:#065f46}.plot-category-badge.cat-unknown{color:#a1a1aa;background:#27272a}.plot-details-section{background:#070d19;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:6px;margin-top:10px;padding:12px;display:flex}.plot-details-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plot-name-line{justify-content:space-between;align-items:center;display:flex}.plot-name-text{color:#f1f5f9;font-size:13px}.plot-area-text,.plot-uses-line,.plot-basis-line,.plot-parcel-line{color:#94a3b8;font-size:11px}.plot-uses-line strong,.plot-basis-line em{color:#e2e8f0}.plot-actions-row{gap:8px;margin-top:6px;display:flex}.property-commerce-card,.vehicle-service-card,.shop-purchase-card{background:#0d1527;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:8px;margin-top:8px;padding:12px;display:flex}.property-action-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin-top:6px;display:grid}.prop-action-btn{color:#fff;cursor:pointer;text-align:center;background:#0284c7;border:1px solid #38bdf8;border-radius:6px;padding:8px 12px;font-size:11px;font-weight:700;transition:all .15s}.prop-action-btn:hover:not(:disabled){background:#0369a1}.prop-action-btn:disabled{opacity:.5;cursor:not-allowed;border-color:#334155}.prop-action-btn.btn-cancel{background:#475569;border-color:#64748b}.prop-action-btn.btn-transfer{background:#0d9488;border-color:#14b8a6}.prop-action-btn.btn-lease{background:#7c3aed;border-color:#a855f7}.prop-input-row{align-items:center;gap:8px;margin-top:4px;display:flex}.recipient-input{color:#f1f5f9;background:#050b14;border:1px solid #334155;border-radius:4px;flex:1;padding:6px 8px;font-family:monospace;font-size:11px}.qty-control-row{align-items:center;gap:8px;display:flex}.qty-input{color:#f1f5f9;text-align:center;background:#050b14;border:1px solid #334155;border-radius:4px;width:60px;padding:4px 8px;font-size:12px}.btn-service-vehicle{color:#fff;cursor:pointer;background:#059669;border:1px solid #34d399;border-radius:6px;padding:8px 12px;font-size:11px;font-weight:700;transition:all .15s}.btn-service-vehicle:hover:not(:disabled){background:#047857}.btn-service-vehicle:disabled{opacity:.5;cursor:not-allowed}.commerce-decision{background:#101c2e;border-top:1px solid #334155;flex:none;max-height:45vh;padding:12px 20px;overflow-y:auto}.commerce-decision:empty{display:none}.commerce-decision p{overflow-wrap:anywhere;margin:6px 0;font-size:12px}.commerce-decision .dialog-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}.commerce-decision .dialog-metric-grid>div{flex-direction:column;gap:4px;font-size:12px;display:flex}.commerce-decision small{color:#a7b6c9;margin-top:8px;display:block}.plot-share-table-wrap{margin-top:12px;overflow-x:auto}.plot-share-table{border-collapse:collapse;width:100%;font-size:12px}.plot-share-table th,.plot-share-table td{text-align:left;border-bottom:1px solid #334155;padding:7px}.plot-share-table tbody th{text-transform:capitalize}.prop-input-row{flex-wrap:wrap}.prop-input-row select{color:#e2e8f0;background:#101c2e;border:1px solid #334155;max-width:100%;padding:8px;display:block}.structured-dialog .overlay-header{flex-shrink:0}.structured-dialog .dialog-body{flex:auto;min-height:0}@media (width<=768px){.structured-dialog-backdrop{padding:8px}.structured-dialog{max-height:calc(100dvh - 16px)}.commerce-decision{max-height:42dvh;padding:10px 12px}.commerce-decision .dialog-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commerce-decision button{margin-top:6px}.recipient-input{width:100%;min-width:0}}.structured-dialog-garage{max-width:820px}.btn-open-garage{white-space:nowrap}.garage-reviewed-target{border:1px solid #38bdf8;border-radius:8px;padding:8px}.car-silhouette img.cruiser-svg{object-fit:contain;width:160px;height:72px}.parts-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.parts-shop-card{background:#111827;border:1px solid #334155;border-radius:8px;min-width:0;padding:12px}.parts-shop-card h3{margin:0 0 8px;font-size:14px}.parts-shop-card p,.equipment-effects-note{font-size:12px;line-height:1.5}.parts-shop-card button{width:100%}.overlay-filter-actions{flex-wrap:wrap}@media (width<=600px){.parts-shop-grid{grid-template-columns:1fr}.garage-dialog-body{padding:12px}}.installed-slot-card{min-width:0}.slot-installed-name{overflow-wrap:anywhere}.recovery-metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.recovery-metric-card{background:#111827;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:4px;padding:12px;display:flex}.recovery-metric-lbl{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-size:11px}.recovery-metric-val{color:#f8fafc;font-size:16px;font-weight:700}.recovery-metric-sub{color:#64748b;font-size:11px}.recovery-eligibility-row{align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.recovery-eligibility-label{color:#94a3b8;font-weight:600}.recovery-eligibility-badge{border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.recovery-eligibility-badge.eligible{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.recovery-eligibility-badge.ineligible{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.recovery-eligibility-badge.unavailable{color:#94a3b8;background:#94a3b826;border:1px solid #94a3b84d}.recovery-eligibility-badge.loading{color:#facc15;background:#eab30826;border:1px solid #eab3084d}.active-recovery-card{background:#111827;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:8px;padding:14px;display:flex}.active-recovery-card.recovery-return-card{border-left:4px solid #38bdf8}.active-recovery-card.recovery-work-card{border-left:4px solid #22c55e}.recovery-card-header{justify-content:space-between;align-items:center;display:flex}.recovery-return-badge{color:#38bdf8;font-size:12px;font-weight:700}.recovery-work-badge{color:#4ade80;font-size:12px;font-weight:700}.recovery-route-desc{color:#e2e8f0;margin:0;font-size:13px}.recovery-stats-row{color:#94a3b8;justify-content:space-between;font-size:12px;display:flex}.recovery-preservation-note,.recovery-lock-note{color:#64748b;font-size:11px;line-height:1.4}.recovery-payout-summary{color:#4ade80;justify-content:space-between;font-size:13px;font-weight:600;display:flex}.recovery-cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.recovery-service-card{background:#111827;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:10px;padding:16px;display:flex}.recovery-service-header{justify-content:space-between;align-items:center;display:flex}.recovery-service-header h4{color:#f8fafc;margin:0;font-size:15px}.recovery-cost-badge,.recovery-reward-badge{border-radius:4px;padding:3px 8px;font-size:11px;font-weight:700}.recovery-cost-badge.free{color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d}.recovery-reward-badge{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.recovery-service-desc{color:#94a3b8;margin:0;font-size:12px;line-height:1.5}.recovery-service-specs{color:#cbd5e1;flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:12px;display:flex}.recovery-ineligible-box{background:#ef444414;border:1px solid #ef444433;border-radius:6px;flex-direction:column;gap:8px;padding:10px;display:flex}.recovery-reason-text{color:#fca5a5;font-size:12px;line-height:1.4}@media (width<=768px){.recovery-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recovery-cards-grid{grid-template-columns:1fr}}.gps-planned-glow{filter:drop-shadow(0 0 6px #ffe176b3);pointer-events:none}.gps-planned-line{filter:drop-shadow(0 0 4px #ffd700cc);stroke-dashoffset:0;pointer-events:none;animation:25s linear infinite gps-dash-flow}@keyframes gps-dash-flow{to{stroke-dashoffset:-100px}}.active-journey-glow{filter:drop-shadow(0 0 8px #0ffc);pointer-events:none}.active-journey-line{filter:drop-shadow(0 0 6px #0ff);stroke-dashoffset:0;pointer-events:none;animation:15s linear infinite active-trip-flow}@keyframes active-trip-flow{to{stroke-dashoffset:-100px}}.gps-origin-marker,.gps-dest-marker{pointer-events:none;filter:drop-shadow(0 2px 4px #000000b3)}.transit-vehicle-marker{pointer-events:none;filter:drop-shadow(0 2px 6px #0ffc)}.gps-navigation-bar{background:var(--bg-surface-elevated,#161f2e);border:1px solid var(--border-color,#27354a);border-left:4px solid var(--neon-yellow,#ffe176);border-radius:8px;flex-direction:column;gap:10px;margin-top:12px;padding:12px 16px;display:flex;box-shadow:0 4px 12px #00000059}.gps-navigation-bar.active-trip{background:#00ffff0d;border-left-color:#0ff}.gps-navigation-bar.unavailable{border-left-color:#ef4444}.gps-nav-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.gps-status-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.gps-status-badge.ready{color:gold;background:#ffd70026;border:1px solid #ffd70066}.gps-status-badge.current{color:#10b981;background:#10b98126;border:1px solid #10b98166}.gps-status-badge.active-trip{color:#0ff;background:#00ffff26;border:1px solid #0ff6}.gps-status-badge.unavailable{color:#f87171;background:#ef444426;border:1px solid #ef444466}.gps-version-tag{color:var(--text-muted,#94a3b8);font-size:10px;font-family:var(--font-mono,monospace);background:#0f172a99;border:1px solid #94a3b833;border-radius:3px;padding:2px 6px}.gps-nav-body{flex-direction:column;gap:6px;display:flex}.gps-hops-chain{color:#f1f5f9;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.gps-hop-item{align-items:center;gap:4px;display:inline-flex}.gps-hop-item.origin{color:#10b981}.gps-hop-item.dest{color:gold}.gps-hop-arrow{color:#64748b;font-size:11px}.gps-metrics-strip{color:#cbd5e1;flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.gps-metric-item{align-items:center;gap:4px;display:inline-flex}.gps-metric-label{color:#94a3b8;font-size:11px}.gps-metric-value{color:#fff;font-weight:700}.gps-no-commit-notice{color:#94a3b8;align-items:center;gap:4px;font-size:11px;font-style:italic;display:flex}.gps-route-legend{color:#94a3b8;border-top:1px solid #94a3b826;flex-wrap:wrap;align-items:center;gap:12px;padding-top:8px;font-size:11px;display:flex}.gps-legend-item{align-items:center;gap:5px;display:inline-flex}.gps-legend-swatch{border-radius:2px;width:14px;height:3px;display:inline-block}.gps-legend-swatch.planned{background:gold;box-shadow:0 0 4px gold}.gps-legend-swatch.active{background:#0ff;box-shadow:0 0 4px #0ff}.gps-legend-pin{color:#0b1120;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:800;display:inline-flex}.gps-legend-pin.origin{background:#10b981}.gps-legend-pin.dest{background:#f59e0b}.btn-focus-district{color:#32c6c9;cursor:pointer;background:#32c6c926;border:1px solid #32c6c9;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:700;transition:all .15s}.btn-focus-district:hover{background:#32c6c94d}@media (width<=640px){.gps-navigation-bar{gap:8px;padding:10px 12px}.gps-nav-header{flex-direction:column;align-items:flex-start}.gps-hops-chain{font-size:12px}.gps-metrics-strip{gap:8px;font-size:11px}.gps-route-legend{gap:8px;font-size:10px}}.zoom-controls-group{background:var(--bg-surface-elevated);border:1px solid var(--border-color);border-radius:4px;align-items:center;gap:4px;padding:2px;display:flex}.zoom-level-badge{font-family:var(--font-mono), system-ui;color:var(--neon-cyan);text-align:center;-webkit-user-select:none;user-select:none;min-width:44px;padding:4px 8px;font-size:12px;font-weight:700}.zoom-preset-btn{color:var(--neon-yellow)!important;background:#ffe17614!important;border-color:#ffe17666!important;padding:6px 10px!important;font-size:11px!important;font-weight:700!important}.zoom-preset-btn:hover{border-color:var(--neon-yellow)!important;background:#ffe17633!important}.map-buildings-layer{pointer-events:none}.map-building{transition:fill .15s}.parcel-boundary-group{cursor:pointer}.parcel-polygon{cursor:pointer;transition:all .15s ease-in-out}.parcel-polygon:hover{fill:#ffe1764d!important;stroke:var(--neon-yellow)!important;stroke-width:2px!important}.parcel-polygon.is-selected{filter:drop-shadow(0 0 6px #ffe17699)}.parcel-name-label{pointer-events:none;-webkit-user-select:none;user-select:none}.map-tool-btn.toggle-facility-military.active{color:#84cc16;background:#84cc162e;border-color:#84cc1699}.map-tool-btn.toggle-facility-police.active{color:#3b82f6;background:#3b82f62e;border-color:#3b82f699}.map-tool-btn.toggle-facility-fire.active{color:#ef4444;background:#ef44442e;border-color:#ef444499}.landmark-facility-tray-categories{background:#0f172a80;border:1px solid #94a3b826;border-radius:4px;flex-wrap:wrap;gap:8px;padding:4px 8px;display:flex}.plot-layer-checkbox-label.sub-cat{opacity:.9;font-size:11px}.facility-legend-icon{font-size:12px;line-height:1}.selected-landmark-card{background:#111827;border:1px solid #32c6c966;border-radius:6px;margin-bottom:12px;padding:12px 16px;box-shadow:0 4px 12px #00000080}.landmark-card-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.landmark-type-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:800}.landmark-type-badge.category-military_facility{color:#84cc16;background:#84cc1633;border:1px solid #84cc1666}.landmark-type-badge.category-police{color:#3b82f6;background:#3b82f633;border:1px solid #3b82f666}.landmark-type-badge.category-fire_station{color:#ef4444;background:#ef444433;border:1px solid #ef444466}.landmark-title{color:#f1f5f9;flex:1;margin:0;font-size:14px;font-weight:700}.btn-close-landmark{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:14px}.btn-close-landmark:hover{color:#f1f5f9}.landmark-card-body{color:#cbd5e1;font-size:12px}.landmark-card-line{margin:4px 0}.landmark-lifecycle-warning{color:#fbbf24}.landmark-source-note{color:#94a3b8;font-style:italic}.landmark-card-meta{color:#64748b;border-top:1px solid #94a3b826;margin-top:8px;padding-top:6px;font-size:11px}@media (width<=768px){.equipment-summary-card .card-header-row{flex-wrap:wrap;gap:8px;min-width:0}.equipment-summary-card .inventory-title-wrap{flex:100%;min-width:0}.equipment-summary-card .card-header-row>button{max-width:100%;min-height:44px}}.property-gang-body{color:#e2e8f0;flex-direction:column;gap:16px;display:flex}.property-gang-body .dialog-section{background:#0f172a;border:1px solid #334155;border-radius:8px;padding:14px}.property-gang-body h3{margin:0 0 12px;font-size:15px}.property-gang-body p,.property-gang-review p{line-height:1.55}.property-form-grid,.property-action-grid{flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0;display:flex}.property-form-grid label{flex:150px}.property-gang-body label,.property-actions-section label{flex-direction:column;gap:6px;display:flex}.property-gang-body input:not([type=checkbox]),.property-gang-body select,.property-form-grid input,.property-form-grid select{box-sizing:border-box;color:#f8fafc;width:100%;font:inherit;background:#020617;border:1px solid #475569;border-radius:5px;padding:10px}.principal-id,.property-deed,.quote-principals dd,.consent-card{overflow-wrap:anywhere}.property-check,.permission-checks label,.principal-select label{align-items:center;gap:8px;flex-direction:row!important;display:flex!important}.permission-list{flex-wrap:wrap;gap:7px;margin:10px 0;display:flex}.permission-list span{border:1px solid #334155;border-radius:4px;padding:4px 8px;font-size:12px}.permission-checks{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:12px 0;display:grid}.property-table-wrap{max-width:100%;margin:12px 0;overflow-x:auto}.property-table-wrap table{border-collapse:collapse;width:100%;font-size:12px}.property-table-wrap td,.property-table-wrap th{text-align:left;vertical-align:top;border-bottom:1px solid #334155;padding:10px}.property-table-wrap small{overflow-wrap:anywhere;display:block}.consent-card{border:1px solid #334155;border-radius:6px;margin:10px 0;padding:10px}.principal-select{border:1px solid #475569;flex-wrap:wrap;gap:12px;margin:12px 0;padding:12px;display:flex}.quote-principals{grid-template-columns:auto 1fr;gap:8px;display:grid}.quote-principals dt{text-transform:capitalize}.quote-principals dd{margin:0}.property-gang-review button{min-height:44px}.property-gang-body button:disabled,.property-action-grid button:disabled{opacity:.45;cursor:default}@media (width<=600px){.property-form-grid>*{flex-basis:100%}.property-action-grid button{width:100%}.quote-principals{grid-template-columns:1fr}.property-gang-body .dialog-section{padding:10px}.principal-select label{width:100%}}.property-gang-body button,.property-ownership-section button,.property-gang-review button{color:#e2e8f0;cursor:pointer;min-height:44px;font:inherit;text-align:left;background:#1e293b;border:1px solid #475569;border-radius:6px;padding:10px 14px;font-size:13px}.property-gang-body button:hover:not(:disabled),.property-ownership-section button:hover:not(:disabled),.property-gang-review button:hover:not(:disabled){background:#273448;border-color:#38bdf8}.property-gang-body button:focus-visible,.property-ownership-section button:focus-visible,.property-gang-review button:focus-visible{outline-offset:3px;outline:2px solid #38bdf8}.property-ownership-section button:disabled{opacity:.45;cursor:default}.property-gang-body .dialog-metric-grid>div,.property-ownership-section .dialog-metric-grid>div{border:1px solid #334155;border-radius:6px;flex-direction:column;gap:5px;padding:10px;font-size:13px;display:flex}.property-gang-body .dialog-metric-grid span,.property-ownership-section .dialog-metric-grid span{color:#94a3b8}.property-gang-body summary,.property-ownership-section summary{cursor:pointer;color:#7dd3fc;padding:12px 0}.property-ownership-section h3{font-size:14px}.property-ownership-section .dialog-section{margin-bottom:14px}.property-gang-body details p{font-size:13px}.garage-shell{color:#e2e8f0;min-width:0}.garage-shell button{font:inherit;cursor:pointer;color:inherit;background:#101b2b;border:1px solid #334155;border-radius:8px;padding:10px}.garage-shell button:disabled{cursor:default;opacity:.5}.garage-shell button:focus-visible{outline-offset:3px;outline:2px solid #38bdf8}.garage-current{background:#0b1523;border:1px solid #334155;border-radius:12px;align-items:center;gap:18px;margin-bottom:16px;padding:16px;display:flex}.garage-current .garage-car-art{width:160px}.garage-current h3,.garage-detail h3{color:#f8fafc;margin:6px 0}.garage-current p,.garage-detail p{color:#a5b4c5;margin:6px 0;font-size:13px;line-height:1.5}.garage-car-art{object-fit:contain;width:100%;height:96px}.garage-legacy-art{color:#94a3b8;place-items:center;height:96px;font-size:90px;line-height:1;display:grid}.garage-eyebrow{letter-spacing:.12em;color:#38bdf8;font-size:11px;font-weight:700}.garage-views{gap:8px;margin-bottom:16px;display:flex}.garage-views button[aria-pressed=true]{background:#132e42;border-color:#38bdf8}.garage-layout{grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr);gap:16px;display:grid}.garage-options{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;display:grid}.garage-shell .garage-option{text-align:left;background:#111827;min-width:0;padding:10px}.garage-shell .garage-option.selected{background:#14253a;border-color:#38bdf8}.garage-option-name{overflow-wrap:anywhere;font-size:13px;font-weight:700;display:block}.garage-option-meta{color:#94a3b8;margin-top:4px;font-size:12px;display:block}.garage-detail{background:#101827;border:1px solid #334155;border-radius:12px;min-width:0;padding:16px}.garage-ratings{border-collapse:collapse;text-align:left;width:100%;margin:14px 0;font-size:12px}.garage-ratings caption{text-align:left;color:#94a3b8;padding-bottom:8px;font-size:11px;line-height:1.4}.garage-ratings th,.garage-ratings td{border-bottom:1px solid #253248;padding:7px 4px}.garage-ratings thead{color:#94a3b8}.garage-ratings td:last-child{color:#7dd3fc;font-weight:700}.garage-costs{margin:12px 0;font-size:12px}.garage-costs div{justify-content:space-between;gap:12px;padding:5px 0;display:flex}.garage-costs dt{color:#94a3b8}.garage-costs dd{text-align:right;margin:0}.garage-shell .garage-status{color:#cbd5e1;background:#1d2638;border-radius:6px;padding:10px}.garage-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.garage-actions button{background:#123248;border-color:#38bdf8;flex:1;font-size:13px;font-weight:700}.garage-actions .garage-secondary{background:#101b2b;border-color:#475569}.garage-shell .garage-footnote{margin-top:12px;font-size:11px;line-height:1.5}@media (width<=650px){.garage-current{gap:10px;padding:10px}.garage-current .garage-car-art{width:120px;height:72px}.garage-current h3{font-size:16px}.garage-current p{font-size:11px}.garage-layout{grid-template-columns:1fr}.garage-options{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-option .garage-car-art{height:70px}.garage-detail{padding:12px}.garage-actions{background:#101827;padding:8px 0;position:sticky;bottom:0}.garage-costs div{gap:8px}.garage-shell button{min-height:42px}}.character-sheet-dialog-body,.encounters-dialog-body{color:#f1f5f9;background:#0b1120;border-radius:8px;flex-direction:column;gap:1.25rem;max-height:75vh;padding:1.25rem;display:flex;overflow-y:auto}.ce-loading{text-align:center;color:#94a3b8;padding:2rem;font-size:.95rem;font-style:italic}.ce-banner{border-left:4px solid;border-radius:6px;margin-bottom:.5rem;padding:.85rem 1rem}.ce-banner-pending{color:#cbd5e1;background:#1e293bd9;border-left-color:#f59e0b}.ce-banner-unavailable{color:#cbd5e1;background:#1e293bd9;border-left-color:#ef4444}.ce-banner-unavailable .ce-banner-title{color:#f87171}.ce-banner-title{letter-spacing:.05em;text-transform:uppercase;color:#fbbf24;margin-bottom:.35rem;font-size:.8rem;font-weight:700}.ce-banner-body{font-size:.875rem;line-height:1.4}.ce-banner-body code{color:#67e8f9;background:#0f172acc;border-radius:3px;padding:.15rem .35rem;font-size:.825rem}.ce-actor-scope{color:#94a3b8;background:#0f172a;border:1px solid #1e293b;border-radius:4px;padding:.5rem .75rem;font-size:.85rem}.ce-empty{text-align:center;color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.ce-empty-icon{margin-bottom:.75rem;font-size:2.5rem}.ce-empty-hint{color:#64748b;max-width:480px;margin-top:.5rem;font-size:.85rem}.ce-meta-bar{color:#94a3b8;background:#1e293b;border-radius:6px;flex-wrap:wrap;gap:1rem;padding:.65rem .85rem;font-size:.8rem;display:flex}.ce-meta-item strong{color:#e2e8f0}.ce-section{background:#0f172a;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.ce-section-title{letter-spacing:.05em;text-transform:uppercase;color:#67e8f9;justify-content:space-between;align-items:center;margin:0;font-size:.85rem;font-weight:700;display:flex}.ce-section-subtitle{color:#64748b;text-transform:none;font-size:.75rem;font-weight:400}.ce-abilities-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.75rem;display:grid}.ce-ability-card{text-align:center;background:#1e293b;border:1px solid #334155;border-radius:6px;flex-direction:column;align-items:center;padding:.75rem .5rem;display:flex}.ce-ability-card.ability-strength{border-color:#3b82f6}.ce-ability-name{color:#94a3b8;text-transform:uppercase;font-size:.75rem;font-weight:600}.ce-ability-score{color:#f8fafc;margin:.25rem 0;font-size:1.5rem;font-weight:700}.ce-ability-mod{color:#38bdf8;background:#38bdf81a;border-radius:4px;padding:.15rem .4rem;font-size:.8rem;font-weight:600}.ce-condition-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;display:grid}.ce-condition-card{background:#1e293b;border:1px solid #334155;border-radius:6px;padding:.75rem}.condition-stress-gauge{border-color:#f43f5e}.condition-health-gauge{border-color:#10b981}.condition-fatigue-gauge{border-color:#f59e0b}.ce-condition-label{text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem;font-size:.75rem;font-weight:700}.condition-stress-gauge .ce-condition-label{color:#fb7185}.condition-health-gauge .ce-condition-label{color:#34d399}.condition-fatigue-gauge .ce-condition-label{color:#fbbf24}.ce-condition-value{color:#f8fafc;font-size:1.25rem;font-weight:700}.ce-combat-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.ce-stat-item{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.ce-stat-label{color:#94a3b8;text-transform:uppercase;font-size:.75rem}.ce-stat-value{color:#f1f5f9;font-weight:600}.ce-history-pages{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.ce-history-pages button{color:#f1f5f9;cursor:pointer;background:#1e293b;border:1px solid #475569;border-radius:6px;padding:.55rem .8rem}.ce-history-pages button:disabled{color:#94a3b8;opacity:.6;cursor:default}.ce-history-pages button:focus-visible{outline-offset:2px;outline:2px solid #67e8f9}.ce-encounters-layout{grid-template-columns:280px minmax(0,1fr);gap:1.25rem;display:grid}@media (width<=768px){.ce-encounters-layout{grid-template-columns:minmax(0,1fr)}}.ce-encounters-list,.ce-encounter-detail,.ce-encounter-detail .ce-section{min-width:0}.ce-encounter-detail .ce-section>div{min-width:0;max-width:100%}.ce-encounters-list{flex-direction:column;gap:.5rem;display:flex}.ce-encounter-item{cursor:pointer;text-align:left;background:#1e293b;border:1px solid #334155;border-radius:6px;padding:.75rem;transition:border-color .15s,background-color .15s}.ce-encounter-item:hover{background:#243247;border-color:#67e8f9}.ce-encounter-item.active{background:#253349;border-color:#ffe176}.ce-status-badge{text-transform:uppercase;border-radius:3px;margin-bottom:.35rem;padding:.15rem .4rem;font-size:.7rem;font-weight:700;display:inline-block}.status-offered{color:#60a5fa;background:#3b82f633;border:1px solid #3b82f6}.status-committed{color:#fbbf24;background:#f59e0b33;border:1px solid #f59e0b}.status-settled{color:#34d399;background:#10b98133;border:1px solid #10b981}.status-cancelled{color:#94a3b8;background:#64748b33;border:1px solid #64748b}.ce-strikes-table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.8rem}.ce-strikes-table th{color:#94a3b8;text-align:left;background:#1e293b;border-bottom:1px solid #334155;padding:.45rem .6rem}.ce-strikes-table td{border-bottom:1px solid #1e293b;padding:.45rem .6rem}.strike-hit{color:#34d399;font-weight:700}.strike-miss{color:#94a3b8}.turf-encounters-body .encounters-dialog-body{max-height:none;padding:0;overflow:visible}.turf-contest-panel{background:#0f172a;border:1px solid #334155;border-radius:8px;margin-bottom:16px;padding:16px}.turf-contest-panel h3,.turf-contest-panel h4{color:#67e8f9;margin:0 0 12px}.turf-contest-panel p{color:#cbd5e1;font-size:.875rem;line-height:1.5}.turf-territory-summary{background:#1e293b99;border:1px solid #334155;border-radius:6px;margin:12px 0;padding:12px}.turf-territory-summary p{margin:4px 0}.turf-proposal-controls,.turf-choice-buttons{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.turf-proposal-controls select{color:#f1f5f9;background:#1e293b;border:1px solid #475569;border-radius:6px;max-width:100%;min-height:38px;padding:8px 12px;font-size:.875rem}.turf-encounters-body button{color:#f1f5f9;cursor:pointer;background:#1e293b;border:1px solid #475569;border-radius:6px;min-height:38px;padding:8px 14px;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s}.turf-encounters-body button:hover:not(:disabled){background:#334155;border-color:#64748b}.turf-encounters-body button:disabled{opacity:.55;cursor:default}.turf-encounters-body button:focus-visible,.turf-proposal-controls select:focus-visible{outline-offset:2px;outline:2px solid #67e8f9}.btn-turf-propose{color:#f0f9ff;background:#0369a1;border-color:#0284c7}.btn-turf-propose:hover:not(:disabled){background:#0284c7;border-color:#38bdf8}.btn-turf-grant{color:#f0fdf4;background:#15803d;border-color:#16a34a}.btn-turf-grant:hover:not(:disabled){background:#16a34a;border-color:#22c55e}.btn-turf-revoke{color:#fef2f2;background:#b91c1c;border-color:#dc2626}.btn-turf-revoke:hover:not(:disabled){background:#dc2626;border-color:#ef4444}.btn-encounter-offer{color:#f5f3ff;background:#7c3aed;border-color:#8b5cf6}.btn-encounter-offer:hover:not(:disabled){background:#8b5cf6;border-color:#a78bfa}.btn-turf-reconcile{color:#fffbeb;background:#d97706;border-color:#f59e0b}.btn-turf-reconcile:hover:not(:disabled){background:#f59e0b;border-color:#fbbf24}.turf-candidates{gap:12px;margin-top:12px;display:grid}.turf-candidate{background:#1e293b;border:1px solid #334155;border-radius:6px;padding:12px}.turf-candidate h5{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:0 0 6px;font-size:.95rem;display:flex}.turf-action-notice{background:#38bdf814;border-left:3px solid #38bdf8;border-radius:0 4px 4px 0;margin:8px 0;padding-top:6px;padding-bottom:6px;padding-left:10px}@media (width<=768px){.turf-proposal-controls,.turf-choice-buttons{flex-direction:column;align-items:stretch}.turf-choice-buttons button,.turf-proposal-controls select,.turf-proposal-controls button{width:100%;min-height:44px}.turf-contest-panel{padding:12px}}.robbery-exposure-body{box-sizing:border-box;width:100%;max-height:none;padding:0;overflow:visible}.robbery-exposure-panel{box-sizing:border-box;background:#0f172a;border:1px solid #334155;border-radius:8px;width:100%;max-width:100%;margin-bottom:16px;padding:16px;overflow-x:hidden}.robbery-exposure-panel h3{color:#f87171;letter-spacing:.04em;align-items:center;gap:8px;margin:0 0 8px;font-size:1.15rem;display:flex}.robbery-exposure-panel p{color:#cbd5e1;margin:0 0 10px;font-size:.875rem;line-height:1.5}.robbery-danger-banner{color:#fecaca;box-sizing:border-box;background:#dc26261f;border:1px solid #dc2626;border-left:4px solid #ef4444;border-radius:6px;width:100%;margin:12px 0 16px;padding:12px 14px;font-size:.875rem;line-height:1.5}.robbery-danger-banner strong.danger-headline{color:#f87171;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:.95rem;display:block}.robbery-danger-banner p{color:#fca5a5;margin:4px 0 0}.robbery-stat-grid{box-sizing:border-box;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;width:100%;margin:14px 0;display:grid}.exposure-stat-card{box-sizing:border-box;background:#1e293b;border:1px solid #334155;border-radius:6px;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.exposure-stat-card.exposure-at-risk{background:#ef444414;border-color:#ef4444}.exposure-stat-card.exposure-at-risk .stat-label{color:#f87171;letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:700}.exposure-stat-card .stat-stale-tag{color:#fbbf24;text-transform:none;letter-spacing:normal;font-size:.72rem;font-weight:600}.exposure-stat-card.exposure-at-risk .stat-amount{color:#ef4444;font-family:monospace;font-size:1.35rem;font-weight:700}.exposure-stat-card.exposure-protected{background:#22c55e0f;border-color:#22c55e}.exposure-stat-card.exposure-protected .stat-label{color:#4ade80;letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:700}.exposure-stat-card.exposure-protected .stat-amount{color:#22c55e;font-family:monospace;font-size:1.35rem;font-weight:700}.exposure-stat-card .stat-detail{color:#94a3b8;margin-top:2px;font-size:.75rem;line-height:1.3}.robbery-declare-form{box-sizing:border-box;flex-direction:column;gap:10px;width:100%;margin-top:14px;display:flex}.robbery-input-label{color:#f1f5f9;flex-direction:column;gap:4px;font-size:.875rem;font-weight:600;display:flex}.robbery-input-label .field-hint{color:#94a3b8;font-size:.8rem;font-weight:400}.robbery-input-row{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.robbery-input-row input{color:#f1f5f9;box-sizing:border-box;background:#1e293b;border:1px solid #475569;border-radius:6px;flex:auto;min-width:180px;max-width:100%;height:40px;min-height:40px;padding:8px 12px;font-family:monospace;font-size:1rem}.robbery-input-row input:focus-visible{outline-offset:2px;outline:2px solid #ef4444}.robbery-input-row .cents-suffix{color:#94a3b8;white-space:nowrap;font-size:.875rem}.robbery-presets{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:6px;width:100%;margin:4px 0;display:flex}.robbery-preset-btn{color:#cbd5e1;cursor:pointer;background:#1e293b;border:1px solid #475569;border-radius:4px;min-height:32px;padding:4px 10px;font-size:.8rem;font-weight:500;transition:background .15s,border-color .15s}.robbery-preset-btn:hover:not(:disabled){color:#f1f5f9;background:#334155;border-color:#64748b}.btn-robbery-declare{color:#fff;cursor:pointer;background:#b91c1c;border:1px solid #dc2626;border-radius:6px;align-self:flex-start;width:auto;min-height:40px;padding:10px 18px;font-size:.875rem;font-weight:600;transition:background .15s,border-color .15s}.btn-robbery-declare:hover:not(:disabled){background:#dc2626;border-color:#ef4444}.btn-robbery-declare:disabled,.robbery-preset-btn:disabled{opacity:.55;cursor:default}.robbery-action-notice{color:#f1f5f9;background:#38bdf814;border-left:3px solid #38bdf8;border-radius:0 4px 4px 0;margin:10px 0;padding-top:6px;padding-bottom:6px;padding-left:10px;font-size:.875rem}.robbery-reconcile-notice{background:#d977061f;border:1px solid #d97706;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:10px 0;padding:10px 12px;display:flex}.btn-robbery-reconcile{color:#fffbeb;cursor:pointer;background:#d97706;border:1px solid #f59e0b;border-radius:6px;min-height:36px;padding:6px 12px;font-size:.875rem;font-weight:500}.btn-robbery-reconcile:hover:not(:disabled){background:#f59e0b}.robbery-validation-hint{color:#f87171;margin-top:2px;font-size:.8rem}@media (width<=768px){.robbery-exposure-panel{padding:12px}.robbery-stat-grid{grid-template-columns:1fr}.robbery-input-row{flex-direction:column;align-items:stretch}.robbery-input-row input{flex:none;width:100%;min-width:0;height:44px;min-height:44px}.btn-robbery-declare{align-self:stretch;width:100%;min-height:44px}.robbery-preset-btn{text-align:center;flex:auto;min-height:40px}}.rivalry-panel{color:#e2e8f0;flex-direction:column;gap:1.25rem;font-family:inherit;display:flex}.rivalry-header{border-bottom:1px solid #1e293b;padding-bottom:.75rem}.rivalry-title{letter-spacing:.05em;color:#f8fafc;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.25rem;font-weight:700;display:flex}.rivalry-subtitle{color:#94a3b8;margin:0;font-size:.825rem}.rivalry-readonly-badge{letter-spacing:.05em;text-transform:uppercase;color:#38bdf8;background:#38bdf81a;border:1px solid #38bdf840;border-radius:4px;margin-left:auto;padding:.15rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.rivalry-pairing-box{background:#0f172a;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.pairing-summary-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.pairing-party-badge{color:#cbd5e1;background:#1e293b;border-radius:4px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;display:inline-flex}.party-kind{text-transform:uppercase;color:#38bdf8;font-weight:700}.party-id{font-family:monospace}.pairing-vs{color:#ef4444;font-size:.8rem;font-weight:800}.pairing-type-tag{color:#94a3b8;background:#94a3b826;border-radius:3px;margin-left:auto;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.pairing-controls-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.pairing-field{flex-direction:column;flex:1;gap:.25rem;min-width:140px;display:flex}.pairing-field label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.pairing-field select,.pairing-field input{color:#f8fafc;background:#020617;border:1px solid #334155;border-radius:4px;padding:.4rem .6rem;font-family:inherit;font-size:.825rem}.pairing-field select:focus,.pairing-field input:focus{border-color:#38bdf8;outline:none}.rivalry-terms-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.rivalry-term-card{background:#0f172a;border:1px solid #1e293b;border-radius:6px;flex-direction:column;gap:.75rem;padding:1rem;transition:border-color .15s;display:flex}.rivalry-term-card:hover{border-color:#334155}.term-card-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.term-title{color:#f1f5f9;letter-spacing:.025em;margin:0;font-size:.9rem;font-weight:600}.term-applicability-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:.15rem .45rem;font-size:.675rem;font-weight:700}.term-applicability-badge.applicable{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.term-applicability-badge.not-applicable{color:#94a3b8;background:#64748b26;border:1px solid #64748b4d}.term-not-applicable-display{text-align:center;background:#0f172a80;border-radius:4px;flex-direction:column;align-items:center;gap:.35rem;padding:.75rem .5rem;display:flex}.na-tag{color:#64748b;letter-spacing:.05em;font-size:1.1rem;font-weight:800;display:inline-block}.na-reason{color:#64748b;font-size:.75rem;line-height:1.3}.term-applicable-display{flex-direction:column;gap:.5rem;display:flex}.metric-row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.metric-label{color:#94a3b8;font-size:.8rem}.metric-value{color:#f8fafc;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:700}.term-ongoing-tag{color:#eab308;font-size:.75rem;font-weight:600}.term-disclosure-note{color:#64748b;border-top:1px dotted #ffffff0d;margin:.25rem 0 0;padding-top:.35rem;font-size:.7rem;line-height:1.35}.rivalry-empty-state{text-align:center;background:#0f172acc;border:1px dashed #334155;border-radius:6px;padding:1rem}.empty-title{color:#cbd5e1;margin:0 0 .25rem;font-size:.9rem;font-weight:600}.empty-description{color:#64748b;margin:0;font-size:.8rem;line-height:1.4}.rivalry-notice{color:#e2e8f0;background:#1e293b;border-radius:4px;padding:.5rem .75rem;font-size:.8rem}.rivalry-error{color:#fca5a5;background:#ef444426;border:1px solid #ef44444d;border-radius:4px;padding:.5rem .75rem;font-size:.8rem}.personal-weapons-panel{color:#f1f5f9;background:#0b1120;border-bottom:1px solid #334155;padding:16px 20px}.btn-open-personal-weapons{color:#e0f2fe;cursor:pointer;background:#0c4a6e;border:1px solid #0284c7;border-radius:6px;min-height:44px;padding:8px 12px}.personal-weapons-body{overflow:auto}.personal-weapons-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.personal-weapons-heading h3{letter-spacing:.06em;margin:0;font-size:14px}.personal-weapons-panel p{color:#cbd5e1;margin:8px 0;font-size:13px}.personal-weapons-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.personal-weapons-grid article{border:1px solid #334155;border-radius:8px;min-width:0;padding:12px}.personal-weapons-grid h4{margin:0;font-size:14px}.personal-weapons-panel button{color:#e0f2fe;cursor:pointer;background:#0c4a6e;border:1px solid #0284c7;border-radius:6px;max-width:100%;min-height:44px;padding:8px 12px}.personal-weapons-panel button:disabled{opacity:.5;cursor:default}.personal-weapon-instance{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}@media (width<=768px){.personal-weapons-panel{padding:12px}.personal-weapons-grid{grid-template-columns:1fr}}:root{--dba-bg-dark:#11151d;--dba-card-bg:#080d18f5;--dba-panel-bg:#080d1a;--dba-input-bg:#050913;--dba-border-gray:#334155;--dba-border-gray-light:#475569;--dba-blue-heading:#60a5fa;--dba-blue-label:#60a5fa;--dba-cyan-live:#22d3ee;--dba-yellow-prompt:#facc15;--dba-red-warning:#ef4444;--dba-white-caption:#e2e8f0;--dba-font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}.public-account-entry{box-sizing:border-box;min-height:100dvh;image-rendering:pixelated;color:#f1f5f9;background-color:#11151d;background-image:linear-gradient(#11151d 15%,#11151de0 58%,#11151d73 100%),radial-gradient(at 50% 40%,#11151dcc 0%,#11151d 100%),url(/scenes/citymap.png);background-position:bottom;background-repeat:no-repeat;background-size:100%;place-items:center;padding:32px 16px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:grid;position:relative;overflow-x:hidden}.public-account-card{box-sizing:border-box;color:#f1f5f9;z-index:1;background:#080d18f5;border:1px solid #334155;border-top-color:#06b6d459;border-radius:6px;width:100%;min-width:0;max-width:480px;padding:24px;position:relative;box-shadow:0 16px 36px -4px #000c,0 0 0 1px #38bdf81f,inset 0 1px #ffffff0d}.auth-system-header{letter-spacing:.1em;text-transform:uppercase;color:#64748b;border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:8px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:10px;display:flex}.auth-system-tag{color:#38bdf8;font-weight:700}.auth-system-node{color:#64748b}.auth-brand-header{text-align:center;justify-content:center;align-items:center;margin:0 0 20px;padding:0;display:flex}.auth-title-slot{letter-spacing:.1em;color:#67e8f9;text-shadow:0 0 12px #22d3ee66;text-transform:uppercase;justify-content:center;align-items:center;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:18px;font-weight:900;display:inline-flex}.auth-brand-logo{aspect-ratio:256/50;filter:drop-shadow(0 0 12px #06b6d440);max-width:100%;height:auto;display:block}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.public-account-card h1{color:#67e8f9;letter-spacing:.05em;margin-bottom:20px;font-size:18px}.public-account-card h2{letter-spacing:.08em;text-transform:uppercase;color:#60a5fa;align-items:center;gap:8px;margin:0 0 14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:15px;font-weight:700;display:flex}.public-account-card h2:before{content:"■";color:#38bdf8;font-size:9px}.auth-view-header{border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:8px;display:flex}.auth-view-header h2{margin:0}.auth-system-badge,.account-session-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:2px;padding:2px 6px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:10px}.auth-system-badge{color:#38bdf8;background:#38bdf81a;border:1px solid #38bdf840}.account-session-badge{color:#22d3ee;background:#22d3ee1a;border:1px solid #22d3ee40}.public-account-card p{color:#e2e8f0;margin:10px 0;font-size:13px;line-height:1.5}.public-account-card form,.public-account-card label{flex-direction:column;gap:8px;display:flex}.public-account-card label{color:#60a5fa;letter-spacing:.08em;text-transform:uppercase;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;font-weight:700}.prompt-arrow{color:#facc15;margin-right:4px;font-weight:900}.public-account-card form{gap:16px;margin:16px 0}.public-account-card input,.public-account-card select{box-sizing:border-box;color:#22d3ee;letter-spacing:.03em;background:#050913;border:1px solid #475569;border-radius:4px;width:100%;min-width:0;min-height:44px;padding:10px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;transition:border-color .15s,box-shadow .15s}.public-account-card input:focus-visible,.public-account-card select:focus-visible{outline-offset:2px;background:#07101e;border-color:#22d3ee;outline:2px solid #22d3ee;box-shadow:0 0 10px #22d3ee59}.public-account-card select option{color:#22d3ee;background:#0b1120;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.public-account-card button,.player-session-tools button{box-sizing:border-box;color:#f0f9ff;letter-spacing:.05em;cursor:pointer;background:#0c4a6e;border:1px solid #0284c7;border-radius:4px;min-height:44px;padding:10px 14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s}.public-account-card button:hover:not(:disabled),.player-session-tools button:hover:not(:disabled){background:#0369a1;border-color:#38bdf8;box-shadow:0 0 12px #38bdf84d}.public-account-card button:focus-visible,.player-session-tools button:focus-visible{outline-offset:2px;outline:2px solid #22d3ee}.public-account-card button:disabled{opacity:.4;cursor:default;box-shadow:none}.btn-account-submit{color:#fef08a;text-transform:uppercase;background:#0c4a6e;border:1px solid #0284c7}.btn-account-submit:hover:not(:disabled){color:#fff;background:#0284c7;border-color:#38bdf8;box-shadow:0 0 16px #38bdf866}.character-dashboard-grid{flex-direction:column;gap:16px;margin:16px 0;display:flex}.auth-panel{box-sizing:border-box;background:#080d1a;border:1px solid #334155;border-radius:4px;width:100%;padding:16px;display:block;box-shadow:inset 0 1px #ffffff0a,0 4px 12px #0006}.character-enroll-panel,.public-account-entry .character-create-panel{box-sizing:border-box;width:100%;display:block}.panel-title-bar{border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;display:flex}.panel-tag{color:#facc15;font-weight:700}.panel-title{color:#60a5fa;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.panel-count,.panel-badge{color:#22d3ee;background:#0f172a;border:1px solid #334155;border-radius:2px;padding:2px 6px;font-size:10px}.character-status-readout{box-sizing:border-box;background:#050913;border:1px solid #1e293b;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;min-width:0;max-width:100%;margin:10px 0 12px;padding:8px 10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;display:flex}.readout-label{color:#60a5fa;flex-shrink:0;font-weight:700}.readout-value{color:#64748b;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;overflow:hidden}.readout-value.is-selected{color:#22d3ee;text-shadow:0 0 8px #22d3ee66;font-weight:700}.btn-enter-game{box-sizing:border-box;color:#fef08a;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#ca8a04 0%,#a16207 100%);border:2px solid #facc15;border-radius:4px;justify-content:center;align-items:center;gap:10px;min-height:48px;margin-top:10px;padding:12px 20px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:15px;font-weight:900;transition:all .15s;display:flex;box-shadow:0 0 16px #facc1559}.btn-enter-game:before{content:"▶";color:#fef08a;font-size:12px}.btn-enter-game:hover:not(:disabled){color:#000;background:#eab308;border-color:#fef08a;transform:translateY(-1px);box-shadow:0 0 24px #facc15bf}.btn-enter-game:hover:not(:disabled):before{color:#000}.btn-enter-game:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.btn-create-player-character{color:#fef08a;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:#0f3656;border:1px solid #0284c7;border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:42px;margin-top:8px;padding:10px 16px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;font-weight:700;transition:all .15s;display:flex}.btn-create-player-character:before{content:"+";color:#facc15;font-size:14px;font-weight:900}.btn-create-player-character:hover:not(:disabled){color:#fff;background:#0284c7;border-color:#38bdf8;box-shadow:0 0 14px #38bdf866}.btn-reconcile-character{color:#fef08a;cursor:pointer;background:#0c4a6e;border:1px solid #0284c7;border-radius:4px;margin-top:8px;padding:10px 14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px}.account-session-toolbar{border-top:1px solid #1e293b;justify-content:space-between;align-items:center;gap:10px;margin-top:18px;padding-top:14px;display:flex}.account-session-toolbar button{color:#94a3b8;letter-spacing:.04em;cursor:pointer;background:#0f172a;border:1px solid #334155;border-radius:4px;min-height:38px;padding:8px 14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;transition:all .15s}.account-session-toolbar button:hover:not(:disabled){color:#60a5fa;background:#1e293b;border-color:#60a5fa}.btn-account-logout:hover:not(:disabled){color:#f87171!important;background:#ef44441f!important;border-color:#ef4444!important}.account-notice{color:#e0f2fe;overflow-wrap:anywhere;background:#082f4999;border:1px solid #334155;border-left:3px solid #06b6d4;border-radius:0 4px 4px 0;margin:14px 0;padding:12px 14px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.4}.account-notice[role=status]{color:#fecaca;background:#450a0ab3;border-color:#ef444459 #ef444459 #ef444459 #ef4444;border-left-style:solid;border-left-width:3px;box-shadow:0 0 12px #ef444440}.account-notice[role=status]:before{content:"⚠ ";color:#f87171;font-weight:900}.public-account-card nav,.player-session-tools{border-top:1px solid #1e293b;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:14px;display:flex}.public-account-card nav button{color:#94a3b8;letter-spacing:.04em;cursor:pointer;background:#080d18;border:1px solid #334155;border-radius:4px;padding:8px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;transition:all .15s}.public-account-card nav button:hover:not(:disabled){color:#f472b6;background:#db277714;border-color:#db2777;box-shadow:0 0 10px #db277733}.public-account-card nav button:focus-visible{outline-offset:2px;border-color:#22d3ee;outline:2px solid #22d3ee}.player-session-tools{margin:0;padding:8px 16px}.player-session-ended{padding:24px}@media (width<=480px){.public-account-entry{background-image:linear-gradient(#11151d 15%,#11151de6 55%,#11151d73 100%),radial-gradient(at 50% 40%,#11151dcc 0%,#11151d 100%),url(/scenes/citymap-mobile.png);background-position:bottom;background-size:cover;padding:16px 12px}.public-account-card{max-width:100%;padding:20px 16px}}.structured-dialog-password-change{max-width:480px}.password-change-body{max-width:none;box-shadow:none;border:0;border-radius:0}.password-change-body form{width:100%}.password-change-backdrop{z-index:10010}.death-screen{border-color:#ef4444;box-shadow:0 0 16px #ef444440,inset 0 1px #ffffff0d}.death-screen .panel-tag{color:#ef4444}.death-screen .panel-title{color:#f87171}.death-badge{color:#ef4444;background:#ef444426;border-color:#7f1d1d}.death-summary{background:#050913;border:1px solid #1e293b;border-radius:4px;margin:14px 0;padding:12px}.death-character-name{color:#f1f5f9;margin:0 0 8px;font-size:14px}.death-cause{color:#e2e8f0;margin:0;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:13px}.death-cause-value{color:#f87171;font-weight:700}.successor-prompt-banner{margin:14px 0}.successor-stake-notice{color:#22d3ee;background:#06b6d414;border:1px solid #06b6d440;border-radius:4px;margin:0;padding:10px 12px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;line-height:1.5}.btn-create-successor{box-sizing:border-box;color:#fef08a;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#ca8a04 0%,#a16207 100%);border:2px solid #facc15;border-radius:4px;justify-content:center;align-items:center;gap:10px;min-height:48px;margin-top:10px;padding:12px 20px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:14px;font-weight:900;transition:all .15s;display:flex;box-shadow:0 0 16px #facc1559}.btn-create-successor:hover:not(:disabled){color:#000;background:#eab308;border-color:#fef08a;transform:translateY(-1px);box-shadow:0 0 24px #facc15bf}.memorial-backdrop{z-index:10000;background:#000c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.memorial-dialog{box-sizing:border-box;color:#e2e8f0;overflow-wrap:anywhere;background:#11151d;border:1px solid #475569;border-radius:8px;width:min(100%,640px);max-height:calc(100dvh - 32px);padding:24px;font:16px/1.5 system-ui,sans-serif;overflow-y:auto}.memorial-dialog header,.memorial-dialog nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.memorial-dialog h2,.memorial-dialog h3{margin:0}.memorial-dialog button{color:#f8fafc;min-height:44px;font:inherit;cursor:pointer;background:#1e293b;border:1px solid #64748b;border-radius:4px;padding:10px 14px}.memorial-dialog button:disabled{opacity:.5;cursor:default}.memorial-dialog button:focus-visible{outline-offset:3px;outline:2px solid #22d3ee}.memorial-list{padding:0;list-style:none}.memorial-list li{border-top:1px solid #334155;padding:16px 0}.memorial-list p{margin:6px 0}
