html,body{margin:0;padding:0;overflow:hidden;width:100vw;height:100vh}.card,[class*=panel] .card,[class*=Panel] .card{max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.game-main-col>div:not(.game-layout):not([class*=chat]){width:fit-content;max-width:100%}.game-notification,.game-info-box{width:fit-content;max-width:100%;display:inline-flex;flex-direction:column}.game-movement{width:100%}.game-weather-inline,.game-feelings,.game-action-result,.game-prospect-result,.game-extract-result{width:fit-content;max-width:100%}*{word-wrap:break-word;overflow-wrap:break-word}p,span,div,td,th,li,label{word-break:break-word}[class*=card],[class*=panel],[class*=Panel]{overflow-x:hidden}.game-nearby-bar{display:flex;gap:8px;flex-wrap:wrap;padding:4px 8px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;font-size:11px;font-family:var(--font-ui);align-items:center}.game-nearby-bar .nearby-item{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:3px;background:var(--bg-card);white-space:nowrap}.game-nearby-bar .nearby-follower{border-left:2px solid var(--accent)}.game-nearby-bar .nearby-player{border-left:2px solid #4caf50}.game-nearby-bar .nearby-weather{border-left:2px solid #ff9800}.game-panel-toggles{display:flex;gap:2px;flex-wrap:wrap}.panel-toggle{font-size:10px;padding:2px 6px;opacity:.5}.panel-toggle--active{opacity:1}.game-layout{display:flex;gap:8px;flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 8px 8px}.game-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;border-bottom:1px solid var(--border);font-size:13px}.game-main-col{flex:1;min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.game-side-panel{width:320px;flex-shrink:0;overflow-y:auto}.game-workspace-divider{height:2px;background:var(--border);margin:4px 0;flex-shrink:0}.game-side-panel>*{width:100%;box-sizing:border-box}.game-system-messages{max-height:120px;overflow-y:auto;overflow-x:hidden;font-size:12px;padding:4px;border:1px solid var(--border);border-radius:4px;background:var(--bg-secondary);scroll-behavior:smooth}.game-system-messages::-webkit-scrollbar{width:4px}.game-system-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.game-actions-busy .senses-action-btn,.game-actions-busy .senses-action-gather,.game-actions-busy button[class*=action]:not([class*=turn]):not([class*=move]):not([class*=direction]){pointer-events:none;opacity:.4;cursor:not-allowed}.senses-action-btn:active,.senses-action-gather:active,.crafting-item:active,.crafting-try-btn:active,.mining-worker-btn:active,.mining-prospect-btn:active,.econ-btn:active,.econ-buy-btn:active,.settle-btn:active,.placement-option:active,.placement-build-btn:active,button.primary:active{transform:scale(.95);box-shadow:0 0 0 3px #6366f166;transition:transform .05s,box-shadow .05s}.senses-action-btn:focus-visible,.senses-action-gather:focus-visible,.crafting-item:focus-visible,.crafting-try-btn:focus-visible,.mining-worker-btn:focus-visible,.econ-btn:focus-visible,.econ-buy-btn:focus-visible,.settle-btn:focus-visible,button.primary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px #6366f140}.game-side-toggle{display:none}@media(max-width:768px){.game-layout{flex-direction:column}.game-main-col{min-width:0;width:100%}.game-side-panel{position:fixed;top:0;right:0;bottom:0;width:85vw;max-width:360px;z-index:100;background:var(--bg-primary);box-shadow:-4px 0 16px #00000080;transform:translate(100%);transition:transform .25s ease;overflow-y:auto;padding:8px}.game-side-panel.open{transform:translate(0)}.game-side-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:99}.game-side-backdrop.open{display:block}.game-side-toggle{display:inline-flex;align-items:center;justify-content:center;position:fixed;bottom:16px;right:16px;width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;font-size:20px;border:none;z-index:101;box-shadow:0 2px 8px #0000004d;cursor:pointer}.game-panel-toggles{gap:4px}.game-panel-toggles button{font-size:12px;padding:6px 10px;min-height:36px}.game-header{padding:6px 10px;font-size:12px;flex-wrap:wrap}}.game-root{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;flex-direction:column;font-family:var(--font-ui);background:var(--bg-primary);transition:background 1.5s ease;overflow:hidden}.game-root--fire-strong{background:linear-gradient(180deg,#1a0e05 0%,#0f0a04 40%,var(--bg-primary) 100%)}.game-root--fire-medium{background:linear-gradient(180deg,#150b04 0%,#0d0903 40%,var(--bg-primary) 100%)}.game-root--fire-subtle{background:linear-gradient(180deg,#100903 0%,#0b0802 40%,var(--bg-primary) 100%)}@keyframes fadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes fire-flicker{0%,to{opacity:1}25%{opacity:.85}50%{opacity:.95}75%{opacity:.8}}.game-fire-overlay{animation:fire-flicker 3s ease-in-out infinite}.tooltip{background:var(--bg-secondary);border:1px solid var(--border-focus);border-radius:var(--radius-sm);padding:8px 12px;font-family:var(--font-ui);font-size:13px;color:var(--text-primary);max-width:280px;line-height:1.4;pointer-events:none;box-shadow:0 4px 12px #00000080}.tooltip-title{font-weight:700;color:var(--accent);margin-bottom:4px;font-size:14px}.tooltip-stat{display:flex;justify-content:space-between;padding:2px 0;font-size:12px}.tooltip-stat-label{color:var(--text-muted)}.tooltip-stat-value{color:var(--text-primary);font-weight:600}.tooltip-divider{border:none;border-top:1px solid var(--border);margin:6px 0}.tooltip-flavor{font-family:var(--font-body);font-style:italic;color:var(--text-muted);font-size:12px;margin-top:4px}.item-tooltip-prop-true{color:var(--success)}.item-tooltip-actions,.player-tooltip-actions{font-size:11px;color:var(--text-muted)}.location-tooltip-type{font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.location-tooltip-actions{font-size:11px;color:var(--text-muted)}.action-tooltip-disabled{font-size:12px;color:var(--danger);margin-top:4px}.action-tooltip-cost{color:var(--warning);font-weight:700}.animal-tooltip-threat{text-transform:capitalize;font-weight:700}.animal-tooltip-actions{font-size:11px;color:var(--text-muted)}.senses-panel{display:flex;flex-direction:column;gap:12px;transition:filter .5s,background .5s;border-radius:var(--radius);padding:4px;width:fit-content;max-width:100%}.senses-empty{color:var(--text-muted);font-size:13px;font-style:italic;padding:16px}.senses-sight{display:flex;flex-direction:column;gap:10px}.senses-time{display:flex;align-items:center;gap:8px;font-family:var(--font-ui)}.senses-time-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.senses-visibility-warn{font-size:10px;padding:2px 6px;border-radius:3px;background:#f59e0b26;color:var(--warning);border:1px solid rgba(245,158,11,.25)}.senses-description{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--text-primary)}.senses-entity{color:var(--accent);cursor:pointer;border-bottom:1px dotted var(--accent-dim);transition:color .15s}.senses-entity:hover{color:var(--accent-hover)}.senses-card-group{display:flex;flex-direction:column;gap:6px}.senses-group-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-family:var(--font-ui);font-weight:700}.senses-cards{display:flex;flex-wrap:wrap;gap:6px}.senses-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;min-width:140px;max-width:220px;flex:1 1 140px;cursor:default;transition:border-color .15s}.senses-card:hover{border-color:var(--border-focus)}.senses-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.senses-card-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-ui)}.senses-card-distance{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.senses-card-name{font-size:14px;font-weight:600;margin-bottom:2px;word-wrap:break-word;overflow-wrap:break-word}.senses-card-desc{font-size:12px;color:var(--text-secondary);line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.senses-threat{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-ui);margin-top:4px}.senses-card-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.senses-action-btn{font-size:11px;padding:2px 8px;border-radius:3px;display:flex;flex-direction:column;align-items:center;gap:1px;transition:transform .08s,box-shadow .08s,background .1s}.senses-action-gather{border-color:var(--success);color:var(--success)}.senses-action-gather:hover:not(:disabled){background:#22c55e1a;border-color:var(--success)}.senses-card-water{border-left:3px solid var(--info, #2196f3)}.senses-card-water .senses-action-btn{background:#3b82f626;border-color:var(--info, #2196f3);color:var(--info, #2196f3);font-size:12px;padding:4px 12px;font-weight:600}.senses-card-water .senses-action-btn:hover:not(:disabled){background:#3b82f64d}.senses-action-label{white-space:nowrap}.senses-action-cost{font-size:9px;color:var(--text-muted);font-family:var(--font-mono)}.senses-card-building{border-left:3px solid var(--warning)}.senses-production{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.senses-production-rate{font-size:10px;font-family:var(--font-mono);color:var(--success);padding:1px 5px;background:#22c55e14;border-radius:2px;border:1px solid rgba(34,197,94,.15)}.senses-disabled-hint{display:flex;flex-direction:column;gap:2px;margin-top:4px}.senses-disabled-action{font-size:10px;color:var(--text-muted);font-style:italic;cursor:default}.senses-ambient{display:flex;flex-wrap:wrap;gap:4px 8px;padding:6px 8px;background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border)}.senses-ambient-item{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-family:var(--font-body);font-style:italic;white-space:nowrap;padding:1px 6px;background:var(--bg-card, #252545);border-radius:3px}.senses-ambient-icon{font-style:normal;font-size:10px}.senses-ambient-text{color:var(--text-secondary)}.senses-ambient-dir{font-size:9px;font-family:var(--font-mono);font-style:normal;color:var(--text-muted)}.senses-dist-close{color:var(--text-primary)}.senses-dist-near{color:var(--text-secondary)}.senses-dist-far,.senses-dist-distant,.senses-intensity-faint{color:var(--text-muted)}.senses-intensity-moderate{color:var(--text-secondary)}.senses-intensity-strong{color:var(--text-primary)}.senses-intensity-overwhelming{color:var(--warning);font-weight:600}.senses-touch{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-size:11px;font-family:var(--font-ui);color:var(--text-muted);background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border);width:fit-content}.senses-touch-item{text-transform:capitalize}.senses-touch-sep{color:var(--border)}.senses-pain{font-family:var(--font-mono);font-weight:700}.senses-card-unidentified{border-left:3px solid var(--text-muted);opacity:.85}.senses-card-unidentified .senses-card-name{font-style:italic;color:var(--text-muted)}.senses-card-hints{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.senses-hint{font-size:10px;font-style:italic;color:var(--text-secondary);padding:1px 6px;background:#ffffff0a;border-radius:3px;border:1px dashed var(--border)}.game-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;min-height:0}.game-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border);font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;-webkit-user-select:none;user-select:none;flex-shrink:0}.game-card-header.clickable{cursor:pointer}.game-card-header.clickable:hover{background:var(--bg-card-hover)}.game-card-title{display:flex;align-items:center;gap:8px}.game-card-chevron{font-size:10px;color:var(--text-muted);width:14px}.game-card-header-right{font-size:12px;font-weight:400;color:var(--text-muted)}.game-card-body{padding:12px 14px;flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--border) transparent;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.game-card.collapsed{min-height:auto}.game-card.collapsed .game-card-header{border-bottom:none}.combat-panel{display:flex;flex-direction:column;gap:8px}.combat-status{padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.combat-meter{display:flex;align-items:center;gap:8px;margin-bottom:4px}.combat-meter:last-child{margin-bottom:0}.combat-meter-label{width:28px;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--text-muted)}.combat-meter-track{flex:1;height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.combat-meter-fill{height:100%;border-radius:4px;transition:width .3s ease,background .3s}.combat-meter-value{width:28px;text-align:right;font-family:var(--font-mono);font-size:12px;font-weight:700}.combat-injuries{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.combat-injury-tag{font-size:10px;font-family:var(--font-ui);padding:2px 6px;border-radius:3px;background:#ef444426;color:var(--danger);border:1px solid rgba(239,68,68,.25)}.combat-targets{display:flex;flex-direction:column;gap:4px}.combat-target{display:flex;justify-content:space-between;align-items:center;width:100%;padding:6px 10px;text-align:left}.combat-target.selected{border-color:var(--accent);background:var(--bg-card-hover)}.combat-target-name{font-size:13px;font-weight:600}.combat-target-type{font-size:10px;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em}.combat-body-parts{margin-top:8px}.combat-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.combat-body-part-list{display:flex;flex-wrap:wrap;gap:4px}.combat-body-part{font-size:11px;padding:3px 8px}.combat-body-part.selected{border-color:var(--accent);background:var(--accent-dim);color:#fff}.combat-actions{display:flex;flex-direction:column;gap:4px}.combat-action{display:flex;justify-content:space-between;align-items:center;width:100%;padding:6px 10px;text-align:left}.combat-action.disabled{opacity:.4;cursor:not-allowed}.combat-action-label{font-size:13px;font-weight:600}.combat-action-cost{font-family:var(--font-mono);font-size:11px}.combat-log{max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.combat-log-entry{padding:6px 0;border-bottom:1px solid var(--border)}.combat-log-entry:last-of-type{border-bottom:none}.combat-log-narrative{font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--text-primary)}.combat-log-meta{display:flex;gap:8px;margin-top:3px;font-family:var(--font-mono);font-size:11px}.combat-log-result{font-weight:700;text-transform:uppercase}.combat-log-damage{color:var(--danger);font-weight:700}.combat-log-part{color:var(--text-muted)}.combat-log-injury{color:var(--warning);font-style:italic}.combat-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui)}.crafting-panel{display:flex;flex-direction:column;gap:8px;width:fit-content;max-width:100%}.crafting-discovery{background:linear-gradient(135deg,#6366f11f,#a855f71f);border:1px solid var(--accent);border-radius:var(--radius);padding:16px;text-align:center;animation:discovery-glow 2s ease-in-out infinite}@keyframes discovery-glow{0%,to{box-shadow:0 0 8px #6366f133}50%{box-shadow:0 0 20px #6366f166}}.crafting-discovery-title{font-size:18px;font-weight:700;color:var(--accent);margin-bottom:8px;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.1em}.crafting-discovery-narrative{font-family:var(--font-body);font-size:14px;line-height:1.6;color:var(--text-primary);margin-bottom:8px}.crafting-discovery-item{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--accent-hover);margin-bottom:12px}.crafting-discovery-name-input{display:flex;gap:8px}.crafting-result{padding:10px 14px;border-radius:var(--radius);border:1px solid var(--border)}.crafting-result.success{border-color:var(--success);background:#22c55e14}.crafting-result.failure{border-color:var(--danger);background:#ef444414}.crafting-result-label{font-size:12px;font-weight:700;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.crafting-result.success .crafting-result-label{color:var(--success)}.crafting-result.failure .crafting-result-label{color:var(--danger)}.crafting-result-narrative{font-family:var(--font-body);font-size:13px;line-height:1.5;color:var(--text-secondary)}.crafting-result-item{font-size:13px;margin-top:4px;font-family:var(--font-ui);color:var(--text-primary)}.crafting-selected{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:8px;min-height:36px;padding:4px;border:2px dashed transparent;border-radius:var(--radius);transition:border-color .15s,background .15s}.crafting-dropzone-empty{border-color:var(--border);justify-content:center}.crafting-dropzone-active{border-color:var(--accent)!important;background:#6366f114}.crafting-dropzone-hint{font-size:11px;color:var(--text-muted);font-style:italic;font-family:var(--font-ui)}.crafting-item[draggable=true]{cursor:grab}.crafting-item[draggable=true]:active{cursor:grabbing;opacity:.6}.crafting-selected-item{display:inline-flex;align-items:center}.crafting-plus{color:var(--text-muted);font-family:var(--font-mono);font-size:14px;margin:0 4px}.crafting-chip{font-size:12px;font-family:var(--font-ui);padding:3px 8px;border-radius:3px;background:var(--accent-dim);color:#fff;cursor:pointer}.crafting-chip:hover{background:var(--accent)}.crafting-try-btn{width:100%;margin-bottom:8px}.crafting-divider{border:none;border-top:1px solid var(--border);margin:4px 0 8px}.crafting-inventory{display:flex;flex-wrap:wrap;gap:4px}.crafting-item{display:flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.crafting-item:hover{border-color:var(--accent);background:var(--bg-card-hover, rgba(99, 102, 241, .06));box-shadow:0 0 0 1px var(--accent)}.crafting-item.selected{border-color:var(--accent);background:var(--accent-dim, rgba(99, 102, 241, .15));box-shadow:0 0 0 2px var(--accent)}.crafting-item-name{font-weight:600}.crafting-item-qty{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.crafting-recipes{display:flex;flex-direction:column;gap:4px}.crafting-recipe{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid var(--border)}.crafting-recipe:last-child{border-bottom:none}.crafting-recipe-info{display:flex;flex-direction:column}.crafting-recipe-name{font-size:13px;font-weight:600}.crafting-recipe-meta{font-size:11px;color:var(--text-muted);font-family:var(--font-ui)}.crafting-teach-btn{font-size:11px;padding:3px 10px}.crafting-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui)}.dh-list{display:flex;flex-direction:column;gap:8px}.dh-entry{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary);transition:border-color .15s}.dh-entry:hover{border-color:var(--border-focus)}.dh-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.dh-category{font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-ui);font-weight:700}.dh-year{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.dh-name{font-size:15px;font-weight:700;margin-bottom:2px}.dh-desc{font-size:12px;color:var(--text-secondary);line-height:1.4;font-family:var(--font-body);margin-bottom:4px}.dh-credit{font-size:11px;color:var(--text-muted);font-family:var(--font-ui)}.dh-discoverer{color:var(--accent);cursor:pointer}.dh-discoverer:hover{color:var(--accent-hover);text-decoration:underline}.dh-empty{color:var(--text-muted);font-size:13px;font-style:italic;font-family:var(--font-body);padding:8px 0}.lb-tabs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.lb-tab{font-size:11px;padding:4px 10px;border-radius:3px;text-transform:uppercase;letter-spacing:.03em}.lb-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.lb-list{display:flex;flex-direction:column}.lb-row{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s;font-size:13px}.lb-row:last-child{border-bottom:none}.lb-row:hover{background:var(--bg-card-hover)}.lb-self{background:#6366f114;border-left:2px solid var(--accent);padding-left:6px}.lb-rank{width:28px;text-align:center;flex-shrink:0}.lb-rank-num{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.lb-medal{font-size:14px}.lb-name{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-value{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--accent);display:flex;align-items:baseline;gap:3px}.lb-unit{font-size:10px;font-weight:400;color:var(--text-muted);text-transform:lowercase}.lb-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.injury-panel{display:flex;flex-direction:column;gap:12px;width:fit-content;max-width:100%}.injury-panel.bleeding{animation:bleed-pulse 2s ease-in-out infinite}@keyframes bleed-pulse{0%,to{box-shadow:none}50%{box-shadow:inset 0 0 8px #ef444426}}.injury-blood-warning{font-family:var(--font-ui);font-size:12px;font-weight:700;color:var(--danger);text-align:center;padding:6px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm)}.injury-blood-warning.critical{animation:pulse-critical 1s ease-in-out infinite}.injury-body-diagram{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto auto auto;gap:4px;padding:8px;justify-items:center}.body-part{width:60px;padding:6px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;cursor:default;transition:border-color .2s,background .15s;position:relative}.body-part:hover{background:var(--bg-card-hover)}.body-part.injured{border-width:2px}.body-part.disabled{opacity:.4}.body-part-label{font-family:var(--font-ui);font-size:9px;font-weight:600;text-transform:uppercase;color:var(--text-muted)}.body-part-count{font-family:var(--font-mono);font-size:14px;font-weight:700;margin-top:2px}.body-part-bleed{position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--danger);animation:pulse-critical 1s ease-in-out infinite}.body-part-lost{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:24px;font-weight:700;color:var(--danger);opacity:.6}.injury-list{display:flex;flex-direction:column;gap:6px}.injury-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:12px}.injury-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;border-left:3px solid var(--text-muted)}.injury-minor{border-left-color:var(--text-muted)}.injury-moderate{border-left-color:var(--warning)}.injury-severe{border-left-color:var(--warmth)}.injury-critical{border-left-color:var(--danger)}.injury-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.injury-type{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.injury-location{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.injury-details{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.injury-severity{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.injury-tag{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;padding:1px 5px;border-radius:3px}.injury-tag.bleeding{background:#ef444426;color:var(--danger)}.injury-tag.infected{background:#a855f726;color:var(--fatigue)}.injury-age{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.injury-healing{display:flex;align-items:center;gap:6px;margin-bottom:6px}.injury-healing-track{flex:1;height:3px;background:#ffffff0f;border-radius:2px;overflow:hidden}.injury-healing-fill{height:100%;background:var(--success);border-radius:2px;transition:width .6s ease}.injury-healing-label{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:60px;text-align:right}.injury-modifiers{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.injury-mod{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px}.injury-mod.negative{background:#ef44441a;color:var(--danger)}.injury-mod.positive{background:#22c55e1a;color:var(--success)}.injury-treatments{display:flex;gap:4px;flex-wrap:wrap}.injury-treat-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.injury-treat-btn:disabled{opacity:.4;cursor:not-allowed}.chat-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;position:relative}.chat-scroll-down{position:absolute;bottom:40px;left:50%;transform:translate(-50%);background:var(--accent, #6c63ff);color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:16px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0006}.chat-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.chat-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s;font-family:var(--font-ui);position:relative}.chat-tab:hover{color:var(--text-secondary);background:transparent}.chat-tab.active{color:var(--text-primary)}.chat-tab-badge{position:absolute;top:2px;right:4px;font-size:9px;font-weight:700;background:var(--danger);color:#fff;border-radius:8px;padding:0 4px;min-width:14px;text-align:center;line-height:14px}.chat-messages{flex:1;min-height:0;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.chat-empty{color:var(--text-muted);font-style:italic;font-size:13px;padding:12px 0}.chat-message{font-size:13px;line-height:1.4}.chat-proximity-whisper{opacity:.55;font-style:italic}.chat-proximity-whisper .chat-text{color:var(--text-muted)}.chat-proximity-talk .chat-text{color:var(--text-primary)}.chat-proximity-shout{font-weight:700}.chat-proximity-shout .chat-text{color:var(--warning);font-size:14px}.chat-proximity-party .chat-text{color:var(--info)}.chat-proximity-clan .chat-text{color:var(--success)}.chat-sender-plain{font-family:var(--font-ui);font-weight:700;font-size:12px;margin-right:6px;color:var(--text-secondary)}.chat-sender-link{font-family:var(--font-ui);font-weight:700;font-size:12px;margin-right:6px;color:var(--accent);cursor:pointer;transition:color .15s}.chat-sender-link:hover{color:var(--accent-hover);text-decoration:underline}.chat-text{font-family:var(--font-body)}.chat-input-row{display:flex;gap:4px;padding:8px;border-top:1px solid var(--border);flex-shrink:0;align-items:center}.chat-channel-select{font-size:11px;padding:4px 6px;min-width:70px;font-weight:600;text-transform:uppercase}.chat-whisper-target{font-size:11px;padding:4px 6px;min-width:100px}.chat-input{flex:1;font-size:13px;padding:6px 10px}.chat-send{padding:6px 12px;font-size:12px;font-weight:600}.survival-meter{padding:4px 0}.survival-meter-header{display:flex;align-items:center;gap:6px;font-family:var(--font-ui);font-size:12px;margin-bottom:3px}.survival-meter-label{color:var(--text-secondary);flex:1;text-transform:uppercase;letter-spacing:.05em;font-weight:600;font-size:11px}.survival-meter-value{color:var(--text-primary);font-weight:700;font-size:12px;min-width:36px;text-align:right}.survival-meter-track{height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.survival-meter-fill{height:100%;border-radius:3px;transition:width .6s ease}.survival-meter.critical .survival-meter-fill{animation:pulse-critical 1s ease-in-out infinite}.survival-meter.low .survival-meter-value{color:var(--warning)}.survival-meter.critical .survival-meter-value{color:var(--danger)}.stats-panel{display:flex;flex-direction:column;gap:8px}.stats-character{padding:8px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.stats-character-name{font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--text-primary)}.stats-character-info{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.stats-meters{display:flex;flex-direction:column;gap:2px}.stats-grid{display:flex;flex-direction:column;gap:6px}.stat-row{display:flex;align-items:center;gap:8px}.stat-label{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent);width:32px;text-align:right}.stat-bar-track{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.stat-bar-fill{height:100%;background:var(--accent-dim);border-radius:3px;transition:width .4s ease}.stat-value{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--text-primary);width:24px;text-align:right}.stats-skills{display:flex;flex-direction:column;gap:4px}.stats-empty{color:var(--text-muted);font-style:italic;font-size:13px;padding:8px 0}.skill-category{margin-bottom:6px}.skill-category-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:4px 0 2px;border-bottom:1px solid var(--border);margin-bottom:4px}.skill-row{display:flex;justify-content:space-between;align-items:center;padding:3px 4px;border-radius:var(--radius-sm);cursor:default;transition:background .1s}.skill-row:hover{background:var(--bg-card-hover)}.skill-name{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary)}.skill-level{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--text-primary)}.map-locked{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;text-align:center}.map-locked-icon{font-size:32px;color:var(--text-muted);margin-bottom:8px;font-family:var(--font-mono);opacity:.5}.map-locked-text{font-family:var(--font-body);font-size:13px;color:var(--text-muted);font-style:italic;max-width:200px}.map-container{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}.map-cardinal{position:absolute;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent);z-index:1}.map-north{top:-2px;left:50%;transform:translate(-50%)}.map-south{bottom:24px;left:50%;transform:translate(-50%)}.map-east{right:-4px;top:50%;transform:translateY(-50%)}.map-west{left:-4px;top:50%;transform:translateY(-50%)}.map-grid{font-family:var(--font-mono);font-size:12px;line-height:1;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 8px;overflow:auto;max-height:320px;-webkit-user-select:none;user-select:none}.map-row{display:flex;white-space:nowrap}.map-cell{display:inline-block;width:14px;height:14px;text-align:center;line-height:14px;cursor:default;transition:background .1s}.map-cell:hover{background:#ffffff0f}.map-terrain{cursor:pointer}.map-player{color:var(--warning);font-weight:700;text-shadow:0 0 4px var(--warning);animation:player-pulse 2s ease-in-out infinite}.map-landmark{color:var(--accent);font-weight:700;cursor:pointer}.map-fog{color:transparent;background:#ffffff05}@keyframes player-pulse{0%,to{opacity:1}50%{opacity:.6}}.map-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;font-family:var(--font-ui);font-size:10px;color:var(--text-muted)}.map-legend-item{display:flex;align-items:center;gap:3px}.map-legend-item span:first-child{font-family:var(--font-mono);font-size:12px;font-weight:700;width:14px;text-align:center}.trade-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.trade-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.trade-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);position:relative}.trade-tab:hover{color:var(--text-secondary);background:transparent}.trade-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.trade-tab-badge{position:absolute;top:2px;right:4px;font-size:9px;font-weight:700;background:var(--danger);color:#fff;border-radius:8px;padding:0 4px;min-width:14px;text-align:center;line-height:14px}.trade-content{flex:1;overflow-y:auto;padding:12px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.trade-target-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.trade-label{font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.trade-target-select{flex:1;font-size:12px;padding:4px 8px}.trade-section-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:6px;margin-top:8px}.trade-inventory{display:flex;flex-direction:column;gap:2px;max-height:160px;overflow-y:auto;scrollbar-width:thin}.trade-inv-item{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.trade-inv-item:hover{background:var(--bg-card-hover)}.trade-inv-item.selected{background:#6366f11f;border-left:2px solid var(--accent);padding-left:6px}.trade-inv-name{font-family:var(--font-ui);font-size:12px;color:var(--text-primary);flex:1}.trade-inv-qty{font-size:11px;color:var(--text-muted);font-weight:600}.trade-selected-summary{font-family:var(--font-ui);font-size:11px;color:var(--accent);font-weight:600;padding:6px 0}.trade-propose-btn{width:100%;padding:8px;font-size:12px;font-weight:700;background:var(--accent);border-color:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.04em;margin-top:8px}.trade-propose-btn:hover{background:var(--accent-hover)}.trade-propose-btn:disabled{opacity:.4;cursor:not-allowed}.trade-active{padding:4px 0}.trade-active-header{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.trade-active-status{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary);margin-bottom:12px}.trade-cancel-btn{width:100%;padding:6px;font-size:11px;font-weight:600;background:transparent;border-color:var(--danger);color:var(--danger);margin-top:12px}.trade-item-list{display:flex;flex-wrap:wrap;gap:4px}.trade-item-tag{display:inline-block;font-family:var(--font-ui);font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);background:#6366f11f;color:var(--accent);border:1px solid rgba(99,102,241,.2)}.trade-item-tag.request{background:#f973161f;color:var(--warmth);border-color:#f9731633}.trade-empty-text{font-style:italic;color:var(--text-muted);font-size:12px}.trade-status{font-weight:700;font-size:11px;text-transform:uppercase}.trade-status-pending{color:var(--warning)}.trade-status-accepted,.trade-status-completed{color:var(--success)}.trade-status-rejected{color:var(--danger)}.trade-status-countered{color:var(--info)}.trade-status-expired{color:var(--text-muted)}.trade-proposal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:8px}.trade-proposal-from{font-family:var(--font-ui);font-size:13px;color:var(--text-secondary);margin-bottom:8px}.trade-proposal-actions{display:flex;gap:4px;margin-top:10px}.trade-accept-btn,.trade-reject-btn,.trade-counter-btn{flex:1;padding:6px;font-size:11px;font-weight:700;text-transform:uppercase}.trade-accept-btn{background:var(--success);border-color:var(--success);color:#fff}.trade-reject-btn{background:transparent;border-color:var(--danger);color:var(--danger)}.trade-counter-btn{background:transparent;border-color:var(--info);color:var(--info)}.trade-empty{color:var(--text-muted);font-style:italic;font-size:13px;padding:12px 0;text-align:center}.trade-history-entry{padding:8px 0;border-bottom:1px solid var(--border)}.trade-history-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.trade-history-player{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.trade-history-time{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.trade-history-detail{display:flex;flex-direction:column;gap:2px;font-family:var(--font-ui);font-size:12px}.trade-history-gave{color:var(--danger)}.trade-history-got{color:var(--success)}.trade-offer-section{margin-bottom:6px}.settle-panel{display:flex;flex-direction:column;gap:8px}.settle-tabs{display:flex;gap:4px}.settle-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.settle-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.settle-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.settle-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.settle-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.settle-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.settle-btn:hover:not(:disabled){background:var(--accent);color:#fff}.settle-btn:disabled{opacity:.4;cursor:default}.settle-dash{display:flex;flex-direction:column;gap:8px}.settle-header{display:flex;justify-content:space-between;align-items:flex-start}.settle-name-block{display:flex;flex-direction:column}.settle-name{font-size:14px;font-weight:700}.settle-tier{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.settle-founded{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.settle-pop{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.settle-pop-label{font-size:11px;color:var(--text-muted)}.settle-pop-value{font-size:18px;font-weight:700;font-family:var(--font-mono)}.settle-meters{display:flex;flex-direction:column;gap:4px}.settle-buildings-summary{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.settle-count{font-size:14px;font-weight:700;font-family:var(--font-mono)}.settle-operational{font-size:10px;color:var(--text-muted)}.settle-building-list{display:flex;flex-direction:column;gap:6px}.settle-building{padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px}.settle-building.offline{opacity:.5;border-style:dashed}.settle-building-header{display:flex;justify-content:space-between;align-items:center}.settle-building-name{font-size:11px;font-weight:600}.settle-building-type{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:1px 5px;border:1px solid var(--border);border-radius:var(--radius-sm)}.settle-building-meta{display:flex;gap:8px;font-size:10px;font-family:var(--font-mono)}.settle-building-level{color:var(--accent)}.settle-building-status.on{color:var(--success)}.settle-building-status.off{color:var(--danger)}.settle-building-year{color:var(--text-muted)}.settle-building-bonus{margin-top:2px}.settle-bonus-chip{font-size:9px;padding:2px 6px;border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);cursor:default}.settle-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.settle-resource{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm)}.settle-resource-name{font-size:10px;text-transform:capitalize;color:var(--text-primary)}.settle-resource-amount{font-size:11px;font-weight:600;font-family:var(--font-mono);color:var(--accent)}.agri-panel{display:flex;flex-direction:column;gap:8px}.agri-tabs{display:flex;gap:4px}.agri-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.agri-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.agri-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.agri-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.agri-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.agri-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.agri-btn:hover:not(:disabled){background:var(--accent);color:#fff}.agri-btn:disabled{opacity:.4;cursor:default}.agri-plots{display:flex;flex-direction:column;gap:8px}.agri-plot{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.agri-plot.dead{opacity:.5;border-color:var(--danger)}.agri-plot-header{display:flex;justify-content:space-between;align-items:center}.agri-crop-type{font-size:12px;font-weight:600;text-transform:capitalize}.agri-crop-state{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.agri-plot-location{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.agri-progress-row{display:flex;align-items:center;gap:8px}.agri-progress-bar{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.agri-progress-fill{height:100%;border-radius:3px;transition:width .4s ease}.agri-progress-pct{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:32px;text-align:right}.agri-plot-badges{display:flex;gap:4px;flex-wrap:wrap}.agri-badge{font-size:9px;padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted)}.agri-badge.active{border-color:var(--success);color:var(--success)}.agri-badge.warn{border-color:var(--danger);color:var(--danger)}.agri-badge.yield{border-color:var(--accent);color:var(--accent)}.agri-animals{display:flex;flex-direction:column;gap:8px}.agri-animal{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.agri-animal-header{display:flex;justify-content:space-between;align-items:center}.agri-animal-name{font-size:12px;font-weight:600}.agri-animal-type{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm)}.agri-animal-stats{display:flex;align-items:center;gap:12px}.agri-animal-age{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.agri-animal-badges{display:flex;gap:4px}.agri-products{padding-top:4px;border-top:1px solid var(--border)}.agri-product{display:flex;gap:8px;align-items:center;padding:2px 0}.agri-product-type{font-size:11px;font-weight:600;text-transform:capitalize}.agri-product-qty{font-size:10px;font-family:var(--font-mono);color:var(--accent)}.agri-product-interval{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.wild-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.wild-list{display:flex;flex-direction:column;gap:8px}.wild-animal{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.wild-animal.deadly{border-color:var(--danger);animation:wild-pulse 2s ease-in-out infinite}@keyframes wild-pulse{0%,to{border-color:var(--danger)}50%{border-color:#f33;box-shadow:0 0 6px #ff33334d}}.wild-animal-header{display:flex;justify-content:space-between;align-items:center}.wild-animal-type{font-size:12px;font-weight:600;text-transform:capitalize}.wild-threat{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.wild-animal-desc{font-size:11px;color:var(--text-muted);font-style:italic}.wild-animal-meta{display:flex;gap:8px}.wild-distance{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.wild-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.wild-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.wild-btn:hover:not(:disabled){background:var(--accent);color:#fff}.wild-btn:disabled{opacity:.4;cursor:default}.cave-panel{display:flex;flex-direction:column;gap:8px}.cave-tabs{display:flex;gap:4px}.cave-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.cave-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.cave-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.cave-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px;display:block}.cave-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.cave-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.cave-btn:hover:not(:disabled){background:var(--accent);color:#fff}.cave-btn:disabled{opacity:.4;cursor:default}.cave-env{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.cave-room-dash{display:flex;flex-direction:column;gap:8px}.cave-room-header{display:flex;justify-content:space-between;align-items:center}.cave-room-name{font-size:14px;font-weight:700}.cave-room-depth{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);padding:1px 6px;border:1px solid var(--border);border-radius:var(--radius-sm)}.cave-hazards{display:flex;flex-direction:column;gap:4px}.cave-hazard-chips{display:flex;flex-wrap:wrap;gap:4px}.cave-hazard-chip{font-size:9px;padding:2px 6px;border:1px solid;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.cave-hazard-chip.small{font-size:8px;padding:1px 4px}.cave-creatures{display:flex;flex-direction:column;gap:4px}.cave-creature-list{display:flex;flex-wrap:wrap;gap:4px}.cave-creature-chip{font-size:10px;padding:2px 6px;border:1px solid var(--warning);border-radius:var(--radius-sm);color:var(--warning);text-transform:capitalize}.cave-room-resources{display:flex;flex-direction:column;gap:4px}.cave-resource-row{display:flex;align-items:center;gap:8px;padding:2px 0}.cave-resource-name{font-size:10px;min-width:70px;text-transform:capitalize;color:var(--text-primary)}.cave-resource-bar{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.cave-resource-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease}.cave-exits{display:flex;flex-direction:column;gap:4px}.cave-exit-btns{display:flex;flex-wrap:wrap;gap:4px}.cave-exit-btn{font-size:10px;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:all .15s}.cave-exit-btn:hover{border-color:var(--accent);color:var(--accent)}.cave-map-list{display:flex;flex-direction:column;gap:4px}.cave-map-room{padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px}.cave-map-room.current{border-color:var(--accent);border-width:2px}.cave-map-room.unexplored{opacity:.4;border-style:dashed}.cave-map-room-header{display:flex;justify-content:space-between;align-items:center}.cave-map-room-name{font-size:11px;font-weight:600}.cave-map-room-depth{font-size:9px;font-family:var(--font-mono);color:var(--text-muted)}.cave-map-hazards{display:flex;gap:3px}.cave-all-resources{display:flex;flex-direction:column;gap:4px}.cave-resource-entry{display:flex;align-items:center;gap:8px;padding:3px 0}.cave-resource-room{font-size:9px;color:var(--text-muted);font-family:var(--font-mono);min-width:60px}.crime-panel{display:flex;flex-direction:column;gap:.5rem}.crime-tabs{display:flex;gap:.25rem}.crime-tab{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem}.crime-tab.active{background:var(--bg-primary);color:var(--text-primary);border-bottom-color:var(--bg-primary)}.crime-empty{color:var(--text-muted);font-style:italic;padding:1rem}.crime-list{display:flex;flex-direction:column;gap:.5rem}.crime-card,.bounty-card,.trial-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.crime-header,.bounty-header,.trial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.crime-type{font-weight:600;text-transform:capitalize}.crime-year{color:var(--text-muted);font-size:.8rem}.crime-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:.25rem}.crime-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.crime-details{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted)}.crime-bounty-amount{color:var(--warning);font-weight:600}.crime-reported{color:var(--accent)}.bounty-target{font-weight:600;color:var(--danger)}.bounty-amount{font-weight:700;color:var(--warning);font-size:1.1rem}.bounty-meta{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}.trial-accused{font-weight:600}.trial-status-pending{color:var(--text-muted)}.trial-status-in_progress{color:var(--warning)}.trial-status-concluded{color:var(--success)}.trial-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.trial-verdict{padding:.5rem;border-radius:4px;font-weight:700;text-align:center;margin-top:.5rem}.trial-verdict.guilty{background:#ef444426;color:var(--danger)}.trial-verdict.innocent{background:#22c55e26;color:var(--success)}.trial-sentence{font-weight:400;font-size:.85rem}.trial-vote{display:flex;gap:.5rem;margin-top:.5rem}.crime-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.crime-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.crime-btn:hover:not(:disabled){background:var(--bg-hover)}.crime-btn:disabled{opacity:.5;cursor:not-allowed}.diplo-panel{display:flex;flex-direction:column;gap:.5rem}.diplo-tabs{display:flex;gap:.25rem}.diplo-tab{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem}.diplo-tab.active{background:var(--bg-primary);color:var(--text-primary);border-bottom-color:var(--bg-primary)}.diplo-empty{color:var(--text-muted);font-style:italic;padding:1rem}.diplo-list{display:flex;flex-direction:column;gap:.5rem}.diplo-treaty,.diplo-war,.diplo-sanction{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.diplo-treaty-header,.diplo-war-header,.diplo-sanction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.diplo-treaty-type{font-weight:600;color:var(--accent)}.diplo-treaty-expires{color:var(--warning);font-size:.8rem}.diplo-treaty-parties{color:var(--text-primary);font-size:.9rem;margin-bottom:.25rem}.diplo-treaty-terms{color:var(--text-secondary);font-size:.85rem;font-style:italic;margin-bottom:.25rem}.diplo-treaty-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--text-muted)}.diplo-war-title{font-weight:600}.diplo-war-casus{color:var(--text-secondary);font-style:italic;font-size:.85rem;margin:.25rem 0}.diplo-war-stats{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary)}.diplo-war-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.diplo-sanction-type{font-weight:600;color:var(--warning);text-transform:capitalize}.diplo-sanction-year{color:var(--text-muted);font-size:.8rem}.diplo-sanction-parties{color:var(--text-primary);font-size:.9rem}.diplo-sanction-reason{color:var(--text-secondary);font-size:.85rem;font-style:italic}.diplo-relation{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px}.diplo-relation-name{font-weight:500}.diplo-relation-status{font-size:.85rem;text-transform:capitalize}.diplo-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.diplo-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.diplo-btn:hover:not(:disabled){background:var(--bg-hover)}.diplo-btn:disabled{opacity:.5;cursor:not-allowed}.diplo-btn.dangerous{color:var(--danger);border-color:var(--danger)}.guild-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.guild-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.guild-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.guild-tab:hover{color:var(--text-secondary);background:transparent}.guild-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.guild-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.guild-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.guild-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.guild-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:6px 12px;font-size:12px;width:100%}.guild-btn-danger{font-size:10px;padding:3px 8px;text-transform:uppercase;font-weight:600;background:transparent;border-color:var(--danger);color:var(--danger)}.guild-header{padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:8px}.guild-name{font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--text-primary)}.guild-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin:2px 0 6px}.guild-stats-row{display:flex;gap:12px;margin-bottom:6px}.guild-stat{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.guild-monopoly{font-family:var(--font-ui);font-size:11px;color:var(--warning);font-weight:600}.guild-members{display:flex;flex-direction:column;gap:4px}.guild-member{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-radius:var(--radius-sm);transition:background .1s}.guild-member:hover{background:var(--bg-card-hover)}.guild-member-info{display:flex;align-items:center;gap:6px}.guild-member-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.guild-member-dot.online{background:var(--success);box-shadow:0 0 4px var(--success)}.guild-member-dot.offline{background:var(--text-muted)}.guild-member-name{font-family:var(--font-ui);font-size:13px;color:var(--text-primary)}.guild-member-rank{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.guild-member-actions{display:flex;gap:4px}.guild-leave-btn{margin-top:12px;width:100%;font-size:11px;padding:6px;background:transparent;border-color:var(--danger);color:var(--danger);font-weight:600;text-transform:uppercase}.guild-apprentices{display:flex;flex-direction:column;gap:6px}.apprentice-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.apprentice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.apprentice-skill{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.apprentice-year{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.apprentice-parties{display:flex;gap:12px;margin-bottom:6px}.apprentice-master,.apprentice-student{font-family:var(--font-ui);font-size:11px;color:var(--text-secondary)}.apprentice-progress{display:flex;align-items:center;gap:6px}.apprentice-progress-track{flex:1;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.apprentice-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .6s ease}.apprentice-progress-label{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:32px;text-align:right}.guild-hall{padding:4px 0}.hall-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.hall-name{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--text-primary)}.hall-tier{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent)}.hall-location{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.hall-features{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.hall-feature-tag{font-family:var(--font-ui);font-size:10px;padding:2px 6px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:3px;color:var(--accent)}.hall-actions{display:flex;gap:4px;flex-wrap:wrap}.guild-browse{display:flex;flex-direction:column;gap:8px}.guild-found-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.guild-found-title{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.guild-found-form{display:flex;flex-direction:column;gap:6px}.guild-found-input{font-size:13px;padding:6px 10px}.guild-browse-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.guild-browse-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.guild-browse-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.guild-browse-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase}.guild-browse-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.apprentice-panel{display:flex;flex-direction:column;gap:.5rem}.apprentice-empty{color:var(--text-muted);font-style:italic;padding:1rem}.apprentice-list{display:flex;flex-direction:column;gap:.5rem}.apprentice-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.apprentice-card.apprentice-abandoned{opacity:.5}.apprentice-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.apprentice-names{display:flex;gap:.4rem;align-items:center}.apprentice-student{font-weight:600}.apprentice-arrow{color:var(--text-muted);font-size:.8rem}.apprentice-master{color:var(--accent);font-weight:500}.apprentice-skill{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.4rem}.apprentice-skill-name{text-transform:capitalize}.apprentice-xp{color:var(--success);font-weight:600;font-size:.85rem}.apprentice-progress-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.apprentice-bar{flex:1;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.apprentice-bar-fill{height:100%;border-radius:4px;transition:width .3s}.apprentice-pct{font-size:.8rem;color:var(--text-muted);min-width:3ch;text-align:right}.apprentice-recipes{margin-bottom:.4rem}.apprentice-recipes-label{font-size:.8rem;color:var(--text-muted);display:block;margin-bottom:.2rem}.apprentice-recipe-list{display:flex;flex-wrap:wrap;gap:.25rem}.apprentice-recipe{font-size:.75rem;padding:.15rem .4rem;border-radius:3px;text-transform:capitalize}.apprentice-recipe.learned{background:#22c55e26;color:var(--success)}.apprentice-recipe.pending{background:var(--bg-tertiary);color:var(--text-muted)}.apprentice-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted);align-items:center}.apprentice-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.apprentice-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.apprentice-btn:hover:not(:disabled){background:var(--bg-hover)}.apprentice-btn:disabled{opacity:.5;cursor:not-allowed}.apprentice-btn.dangerous{color:var(--danger);border-color:var(--danger)}.knowledge-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.knowledge-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.knowledge-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.knowledge-tab:hover{color:var(--text-secondary);background:transparent}.knowledge-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.knowledge-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.knowledge-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.knowledge-btn{font-size:11px;padding:4px 10px;font-weight:600;text-transform:uppercase}.knowledge-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.knowledge-btn-sm{font-size:10px;padding:2px 8px;font-weight:600;text-transform:uppercase}.knowledge-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.knowledge-item:hover{background:var(--bg-card-hover)}.knowledge-item.unreadable{opacity:.5;cursor:not-allowed}.knowledge-item-type{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent);min-width:48px}.knowledge-item-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.knowledge-item-author{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.knowledge-reader{display:flex;flex-direction:column;height:100%}.reader-header{padding-bottom:8px;border-bottom:1px solid var(--border);margin-bottom:12px}.reader-back{font-size:11px;padding:2px 8px;margin-bottom:6px;color:var(--accent);background:transparent;border:none;cursor:pointer;font-family:var(--font-ui)}.reader-back:hover{text-decoration:underline;background:transparent}.reader-title{font-family:var(--font-body);font-size:18px;font-weight:700;color:var(--text-primary)}.reader-author{font-family:var(--font-ui);font-size:12px;color:var(--text-muted);margin-top:2px}.reader-body{flex:1;overflow-y:auto}.reader-text{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--text-primary);white-space:pre-wrap}.reader-unreadable{font-family:var(--font-body);font-size:14px;color:var(--text-muted);font-style:italic;text-align:center;padding:24px}.reader-actions{padding-top:8px;border-top:1px solid var(--border);display:flex;gap:4px;flex-shrink:0}.library-search{display:flex;gap:4px;margin-bottom:8px}.library-search-input{flex:1;font-size:12px;padding:6px 10px}.library-entry{padding:8px 10px;border-bottom:1px solid var(--border)}.library-entry.locked{opacity:.5}.library-entry-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.library-entry-meta{display:flex;gap:8px;font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-top:2px}.library-entry-locked{font-family:var(--font-ui);font-size:10px;color:var(--danger);margin-top:2px}.law-form{display:flex;flex-direction:column;gap:6px}.law-title-input{font-size:13px;padding:6px 10px}.law-content-input{font-size:13px;padding:6px 10px;resize:vertical;font-family:var(--font-body)}.law-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:6px}.law-card.enforceable{border-left:3px solid var(--accent)}.law-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.law-title{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.law-enforceable-badge{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#6366f11f;color:var(--accent)}.law-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.law-content{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.recipe-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:6px}.recipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.recipe-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.recipe-author{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.recipe-ingredients{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.recipe-ingredient{font-family:var(--font-ui);font-size:11px;padding:2px 6px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:3px;color:var(--accent)}.recipe-desc{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);line-height:1.4}.sub-panel{display:flex;flex-direction:column;gap:.5rem}.sub-active-banner{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);padding:.4rem .75rem;border-radius:4px;font-size:.85rem;color:var(--accent)}.sub-addiction-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);padding:.4rem .75rem;border-radius:4px;font-size:.85rem;color:var(--danger)}.sub-withdrawal{font-weight:700}.sub-addiction-row{display:flex;align-items:center;gap:.5rem}.sub-withdrawing{color:var(--danger);font-size:.8rem;font-weight:600}.sub-empty{color:var(--text-muted);font-style:italic;padding:1rem}.sub-list{display:flex;flex-direction:column;gap:.5rem}.sub-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.sub-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.sub-name-block{display:flex;flex-direction:column}.sub-name{font-weight:600}.sub-cat{font-size:.8rem;text-transform:capitalize}.sub-risk{font-size:.8rem;color:var(--warning)}.sub-desc{color:var(--text-secondary);font-size:.85rem;font-style:italic;margin-bottom:.4rem}.sub-effects{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.4rem}.sub-effects span{font-size:.75rem;padding:.15rem .4rem;border-radius:3px}.sub-effects .positive{background:#22c55e26;color:var(--success)}.sub-effects .negative{background:#ef444426;color:var(--danger)}.sub-footer{display:flex;gap:.75rem;align-items:center;font-size:.8rem;color:var(--text-muted)}.sub-duration{color:var(--text-secondary)}.sub-od{color:var(--danger)}.sub-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.sub-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.sub-btn:hover:not(:disabled){background:var(--bg-hover)}.sub-btn:disabled{opacity:.5;cursor:not-allowed}.religion-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.religion-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.religion-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.religion-tab:hover{color:var(--text-secondary);background:transparent}.religion-tab.active{color:var(--text-primary);border-bottom-color:var(--fatigue)}.religion-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.religion-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.religion-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.religion-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:6px 14px;font-size:12px;margin-top:8px;width:100%}.religion-btn-sm{font-size:10px;padding:2px 8px;background:transparent;border:1px dashed var(--border);color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);margin-top:4px}.religion-player-faith{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#a855f70f;border:1px solid rgba(168,85,247,.15);border-radius:var(--radius-sm);margin-bottom:8px}.religion-your-label{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.religion-your-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--fatigue)}.religion-list{display:flex;flex-direction:column;gap:8px}.religion-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.religion-card.yours{border-color:var(--fatigue);border-left:3px solid var(--fatigue)}.religion-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.religion-name{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--text-primary)}.religion-followers{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.religion-tenets{margin:6px 0}.religion-tenet{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);line-height:1.5;padding:2px 0}.religion-card-actions{display:flex;gap:4px;margin-top:6px}.religion-temples{display:flex;flex-direction:column;gap:6px}.temple-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.temple-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.temple-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.temple-tier{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent)}.temple-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.temple-actions{display:flex;gap:4px;flex-wrap:wrap}.religion-laws{display:flex;flex-direction:column;gap:6px}.religion-law{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.religion-law.binding{border-left:3px solid var(--fatigue)}.religion-law-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.religion-law-title{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.religion-law-binding{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;padding:1px 6px;border-radius:3px;background:#a855f71f;color:var(--fatigue)}.religion-law-faith{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:4px}.religion-law-content{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.religion-law-penalty{font-family:var(--font-ui);font-size:11px;color:var(--danger);margin-top:4px;font-weight:600}.religion-found{padding:4px 0}.found-title{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.found-form{display:flex;flex-direction:column;gap:6px}.found-label{font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:4px}.found-input{font-size:13px;padding:6px 10px}.found-symbol{max-width:80px;font-size:18px;text-align:center;font-weight:700}.econ-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.econ-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.econ-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.econ-tab:hover{color:var(--text-secondary);background:transparent}.econ-tab.active{color:var(--text-primary);border-bottom-color:var(--warning)}.econ-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.econ-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.econ-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.econ-btn-cancel{font-size:10px;padding:3px 8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.econ-btn-danger{font-size:10px;padding:3px 8px;text-transform:uppercase;font-weight:600;background:transparent;border-color:var(--danger);color:var(--danger)}.econ-wallet{display:flex;flex-direction:column;gap:4px}.econ-currency{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:var(--radius-sm);transition:background .1s}.econ-currency:hover{background:var(--bg-card-hover)}.econ-currency.untrusted{opacity:.6;border-left:2px solid var(--warning)}.econ-currency-info{display:flex;align-items:center;gap:8px}.econ-currency-symbol{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--warning);min-width:24px;text-align:center}.econ-currency-name{font-family:var(--font-ui);font-size:13px;color:var(--text-primary)}.econ-currency-amount{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--text-primary)}.econ-market-search{margin-bottom:8px}.econ-search-input{width:100%;font-size:12px;padding:6px 10px}.econ-listing{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--border)}.econ-listing-info{display:flex;align-items:center;gap:6px}.econ-listing-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.econ-listing-qty{font-size:11px;color:var(--text-muted)}.econ-listing-right{display:flex;align-items:center;gap:8px}.econ-listing-price{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--warning)}.econ-buy-btn{font-size:10px;padding:3px 10px;font-weight:700;text-transform:uppercase;background:var(--accent);border-color:var(--accent);color:#fff}.econ-buy-btn:hover{background:var(--accent-hover)}.econ-banking{display:flex;flex-direction:column;gap:6px}.econ-bank-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.econ-bank-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.econ-bank-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.econ-bank-rate{font-family:var(--font-mono);font-size:11px;color:var(--success)}.econ-bank-balance{display:flex;justify-content:space-between;margin-bottom:6px}.econ-bank-label{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.econ-bank-amount{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--text-primary)}.econ-bank-form{display:flex;gap:4px;align-items:center;margin-top:6px}.econ-bank-input{width:80px;font-size:12px;padding:4px 8px}.econ-contracts{display:flex;flex-direction:column;gap:6px}.econ-contract{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;border-left:3px solid var(--text-muted)}.econ-contract-active{border-left-color:var(--info)}.econ-contract-fulfilled{border-left-color:var(--success)}.econ-contract-breached{border-left-color:var(--danger)}.econ-contract-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.econ-contract-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.econ-contract-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.econ-contract-parties{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:4px}.econ-contract-terms{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);line-height:1.4;margin-bottom:4px;white-space:pre-wrap}.econ-contract-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-bottom:6px}.econ-contract-actions{display:flex;gap:4px}.econ-loans{display:flex;flex-direction:column;gap:6px}.econ-loan{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.econ-loan-active{border-left:3px solid var(--warning)}.econ-loan-paid{border-left:3px solid var(--success);opacity:.6}.econ-loan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.econ-loan-parties{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary)}.econ-loan-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.econ-loan-details{display:flex;gap:12px;margin-bottom:2px}.econ-loan-amount{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--text-primary)}.econ-loan-rate{font-family:var(--font-mono);font-size:11px;color:var(--warning)}.econ-loan-meta{font-size:11px;color:var(--text-muted);display:flex;align-items:center}.econ-currencies{display:flex;flex-direction:column;gap:6px}.econ-currency-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.econ-currency-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.econ-currency-card-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.econ-currency-card-backing{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.econ-currency-card-stats{display:flex;gap:12px;font-size:11px;color:var(--text-secondary);margin-bottom:4px}.econ-currency-card-stat{display:flex;gap:4px}.econ-exchange-toggle{font-size:10px;padding:2px 8px;background:transparent;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:4px}.econ-exchange-toggle:hover{color:var(--text-secondary);border-color:var(--text-muted)}.econ-exchange-rates{padding:6px 0;display:flex;flex-direction:column;gap:2px}.econ-exchange-row{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);padding:2px 0}.econ-commodities{display:flex;flex-direction:column;gap:4px}.econ-commodity{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border)}.econ-commodity-info{display:flex;align-items:center;gap:8px}.econ-commodity-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.econ-commodity-supply{font-size:10px;text-transform:uppercase;letter-spacing:.04em}.econ-commodity-price{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:12px}.econ-commodity-trend{font-size:11px;font-weight:600}.econ-commodity-base{font-size:10px}.ent-panel{display:flex;flex-direction:column;gap:.5rem}.ent-morale-banner{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);padding:.5rem .75rem;border-radius:4px;font-size:.9rem;color:var(--text-secondary)}.ent-morale-value{color:var(--success);font-weight:700}.ent-filters{display:flex;gap:.25rem}.ent-filter{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);padding:.3rem .6rem;cursor:pointer;font-size:.8rem;text-transform:capitalize;border-radius:3px}.ent-filter.active{background:var(--bg-primary);color:var(--text-primary)}.ent-empty{color:var(--text-muted);font-style:italic;padding:1rem}.ent-list{display:flex;flex-direction:column;gap:.5rem}.ent-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.ent-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.ent-name-block{display:flex;flex-direction:column}.ent-name{font-weight:600}.ent-type{font-size:.8rem;color:var(--text-muted);text-transform:capitalize}.ent-morale{color:var(--success);font-weight:600;font-size:.9rem}.ent-desc{color:var(--text-secondary);font-size:.85rem;font-style:italic;margin-bottom:.25rem}.ent-details{display:flex;gap:.75rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.ent-recurring{color:var(--accent)}.ent-req{color:var(--warning)}.ent-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.8rem}.ent-year{color:var(--text-muted)}.ent-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.ent-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.ent-btn:hover:not(:disabled){background:var(--bg-hover)}.ent-btn:disabled{opacity:.5;cursor:not-allowed}.prop-panel{display:flex;flex-direction:column;gap:.5rem}.prop-empty{color:var(--text-muted);font-style:italic;padding:1rem}.prop-list{display:flex;flex-direction:column;gap:.5rem}.prop-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.prop-card.prop-ended{opacity:.6}.prop-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.prop-method-block{display:flex;flex-direction:column}.prop-method{font-weight:600;text-transform:capitalize}.prop-creator{font-size:.8rem;color:var(--text-muted)}.prop-status.active{color:var(--success);font-size:.85rem}.prop-status.ended{color:var(--text-muted);font-size:.85rem}.prop-message{color:var(--text-primary);font-style:italic;margin-bottom:.2rem}.prop-spin{color:var(--text-secondary);font-size:.85rem;margin-bottom:.4rem}.prop-stats{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.prop-winning{color:var(--success);font-weight:600}.prop-losing{color:var(--danger);font-weight:600}.prop-meta{display:flex;gap:.75rem;font-size:.8rem;color:var(--text-muted)}.prop-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.prop-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.prop-btn:hover:not(:disabled){background:var(--bg-hover)}.prop-btn:disabled{opacity:.5;cursor:not-allowed}.esp-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.esp-counter-intel{padding:6px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.esp-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.esp-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.esp-tab:hover{color:var(--text-secondary);background:transparent}.esp-tab.active{color:var(--text-primary);border-bottom-color:var(--fatigue)}.esp-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.esp-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.esp-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.esp-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:6px 12px;font-size:12px;width:100%;margin-top:6px}.esp-btn:disabled{opacity:.4;cursor:not-allowed}.esp-btn-abort{font-size:10px;padding:3px 8px;text-transform:uppercase;font-weight:600;background:transparent;border-color:var(--danger);color:var(--danger)}.esp-back{font-size:11px;padding:2px 8px;color:var(--accent);background:transparent;border:none;cursor:pointer;font-family:var(--font-ui);margin-bottom:8px}.esp-back:hover{text-decoration:underline;background:transparent}.esp-input{font-size:13px;padding:6px 10px;width:100%}.esp-textarea{font-size:13px;padding:6px 10px;width:100%;resize:vertical;font-family:var(--font-body)}.esp-select{font-size:12px;padding:4px 8px}.esp-intel{display:flex;flex-direction:column;gap:6px}.esp-report-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:background .15s}.esp-report-card:hover{background:var(--bg-card-hover)}.esp-report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.esp-report-cat{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.esp-reliability{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.esp-report-summary{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.esp-report-footer{display:flex;justify-content:space-between;font-family:var(--font-ui);font-size:10px;color:var(--text-muted)}.esp-report-detail{padding:4px 0}.esp-report-title{font-family:var(--font-ui);font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.esp-report-meta{display:flex;gap:8px;font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:4px}.esp-report-target{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary);margin-bottom:8px}.esp-report-body{font-family:var(--font-body);font-size:14px;color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.esp-actionable{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--success);text-transform:uppercase;margin-top:8px;padding:4px 8px;background:#22c55e14;border-radius:var(--radius-sm);display:inline-block}.esp-ops{display:flex;flex-direction:column;gap:6px}.esp-op-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.esp-op-compromised{border-color:var(--danger)}.esp-op-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.esp-op-type{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary);text-transform:capitalize}.esp-op-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.esp-op-target{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.esp-op-bars{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.esp-op-bar{display:flex;align-items:center;gap:6px}.esp-op-bar-label{font-family:var(--font-ui);font-size:9px;font-weight:600;text-transform:uppercase;color:var(--text-muted);min-width:48px}.esp-op-bar-track{flex:1;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.esp-op-bar-fill{height:100%;border-radius:2px;transition:width .4s ease}.esp-op-bar-fill.progress{background:var(--info)}.esp-op-bar-fill.risk{background:var(--warning)}.esp-op-bar-fill.risk.high{background:var(--danger);animation:pulse-critical 1s ease-in-out infinite}.esp-op-bar-value{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:28px;text-align:right}.esp-op-actions{display:flex;gap:4px;flex-wrap:wrap}.esp-sabotage{display:flex;flex-direction:column;gap:6px}.esp-sab-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.esp-sab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.esp-sab-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.esp-sab-difficulty{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.esp-sab-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase;margin-bottom:4px}.esp-sab-impact{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);margin-bottom:6px}.esp-propaganda{display:flex;flex-direction:column;gap:8px}.esp-prop-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.esp-prop-form-label{font-family:var(--font-ui);font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted)}.esp-campaign{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.esp-campaign-active{border-left:3px solid var(--info)}.esp-campaign-concluded{opacity:.7}.esp-campaign-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.esp-campaign-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.esp-campaign-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--info)}.esp-campaign-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:4px}.esp-campaign-message{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);line-height:1.4;margin-bottom:6px;font-style:italic;white-space:pre-wrap}.esp-campaign-stats{display:flex;gap:12px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.esp-morale-up{color:var(--success)}.esp-morale-down{color:var(--danger)}.edu-panel{display:flex;flex-direction:column;gap:.5rem}.edu-empty{color:var(--text-muted);font-style:italic;padding:1rem}.edu-list{display:flex;flex-direction:column;gap:.5rem}.edu-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.edu-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.4rem}.edu-name-block{display:flex;flex-direction:column}.edu-name{font-weight:600}.edu-type{font-size:.8rem}.edu-year{color:var(--text-muted);font-size:.8rem}.edu-enrollment{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary);margin:.4rem 0}.edu-subjects{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.4rem}.edu-subject{font-size:.75rem;padding:.15rem .4rem;background:var(--bg-tertiary);border-radius:3px;color:var(--text-secondary);text-transform:capitalize}.edu-bonuses{display:flex;gap:.75rem;font-size:.85rem;margin-bottom:.4rem}.edu-bonus{color:var(--success);font-weight:500}.edu-tuition{color:var(--warning)}.edu-recipes{font-size:.8rem;color:var(--text-muted);margin-bottom:.4rem}.edu-card-actions{display:flex;gap:.5rem}.edu-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.edu-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.edu-btn:hover:not(:disabled){background:var(--bg-hover)}.edu-btn:disabled{opacity:.5;cursor:not-allowed}.trade-panel{display:flex;flex-direction:column;gap:.5rem}.trade-empty{color:var(--text-muted);font-style:italic;padding:1rem}.trade-list{display:flex;flex-direction:column;gap:.5rem}.trade-route-card{background:var(--bg-secondary);border:1px solid var(--border);padding:.75rem;border-radius:4px}.trade-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.trade-route-name{font-weight:600}.trade-revenue{color:var(--success);font-weight:700}.trade-path{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.9rem}.trade-from,.trade-to{color:var(--text-primary)}.trade-arrow{color:var(--accent);font-weight:700}.trade-stats{display:flex;gap:.75rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.4rem}.trade-meters{display:flex;gap:.5rem;margin-bottom:.4rem}.trade-goods{display:flex;gap:1rem;margin-bottom:.4rem}.trade-goods-col{display:flex;flex-direction:column;gap:.15rem;flex:1}.trade-goods-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.trade-good{font-size:.85rem;color:var(--text-secondary);text-transform:capitalize}.trade-caravans{margin-bottom:.4rem}.trade-caravans-label{font-size:.8rem;color:var(--text-muted);display:block;margin-bottom:.3rem}.trade-caravan{margin-bottom:.3rem}.trade-caravan-bar{position:relative;height:6px;background:var(--bg-tertiary);border-radius:3px;margin-bottom:.2rem}.trade-caravan-pos{position:absolute;width:8px;height:8px;border-radius:50%;top:-1px;transform:translate(-50%)}.trade-caravan-info{display:flex;gap:.75rem;font-size:.8rem;color:var(--text-secondary)}.trade-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem}.trade-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);padding:.4rem .75rem;cursor:pointer;font-size:.85rem;border-radius:4px}.trade-btn:hover:not(:disabled){background:var(--bg-hover)}.trade-btn:disabled{opacity:.5;cursor:not-allowed}.mining-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.mining-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.mining-tab{flex:1;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s}.mining-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.mining-tab:hover{color:var(--text-primary)}.mining-content{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:8px}.mining-empty{color:var(--text-muted);font-size:13px;font-style:italic;padding:16px 0;text-align:center}.mining-deposit{padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:4px}.mining-deposit-header{display:flex;justify-content:space-between;align-items:center}.mining-deposit-type{font-size:13px;font-weight:600;color:var(--text-primary)}.mining-deposit-depth{font-size:11px;color:var(--text-muted)}.mining-deposit-bar{height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.mining-deposit-fill{height:100%;background:var(--accent);border-radius:2px}.mining-deposit-qty{font-size:11px;color:var(--text-secondary)}.mining-mine{padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:4px}.mining-mine-header{display:flex;justify-content:space-between;align-items:center}.mining-mine-name{font-size:13px;font-weight:600;color:var(--text-primary)}.mining-mine-status{font-size:11px;padding:2px 6px;border-radius:4px}.mining-mine-status.active{color:var(--success);background:#43d9bd1a}.mining-mine-status.exhausted{color:var(--danger);background:#ff63841a}.mining-mine-status.idle{color:var(--text-muted);background:#ffffff0d}.mining-mine-stats{display:flex;gap:12px;font-size:11px;color:var(--text-secondary)}.mining-mine-stat{display:flex;gap:4px}.mining-mine-stat-label{color:var(--text-muted)}.mining-mine-workers{display:flex;gap:4px;align-items:center;margin-top:4px}.mining-worker-input{width:48px;font-size:11px;padding:2px 6px}.mining-worker-btn{font-size:10px;padding:2px 8px}.mining-tool{padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;display:flex;justify-content:space-between;align-items:center}.mining-tool-name{font-size:12px;color:var(--text-primary)}.mining-tool-bonus{font-size:11px;color:var(--success);font-weight:600}.mining-prospect-btn{padding:8px 16px;font-size:12px;font-weight:700;background:var(--accent);border-color:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.04em;width:100%}.mining-prospect-btn:hover{background:var(--accent-hover)}.mining-prospect-btn:disabled{opacity:.5;cursor:not-allowed}.naval-panel{display:flex;flex-direction:column;gap:8px}.naval-tabs{display:flex;gap:4px}.naval-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.naval-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.naval-meters{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.naval-meter{display:flex;align-items:center;gap:8px}.naval-meter-label{width:40px;font-size:11px;font-family:var(--font-mono);font-weight:700;color:var(--text-muted)}.naval-meter-track{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.naval-meter-fill{height:100%;border-radius:3px;transition:width .3s}.naval-meter-value{width:50px;text-align:right;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.naval-stats{display:flex;flex-wrap:wrap;gap:8px 16px;margin-bottom:8px}.naval-stat{display:flex;gap:6px;font-size:12px}.naval-stat-label{color:var(--text-muted);font-family:var(--font-ui)}.naval-stat-value{font-family:var(--font-mono);font-weight:600}.naval-port{margin-top:8px;padding:8px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm)}.naval-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-family:var(--font-ui);font-weight:700;margin-bottom:4px}.naval-port-services{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.naval-service-tag{font-size:10px;padding:2px 6px;border-radius:3px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-ui)}.naval-dock-btn{width:100%;font-size:12px;margin-top:4px}.naval-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.naval-action-btn{font-size:12px;padding:4px 12px}.naval-cargo-list{display:flex;flex-direction:column;gap:2px}.naval-cargo-item{display:flex;align-items:center;gap:8px;padding:4px 6px;border-bottom:1px solid var(--border);font-size:13px}.naval-cargo-item:last-child{border-bottom:none}.naval-cargo-name{flex:1;font-weight:600}.naval-cargo-qty{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.naval-cargo-weight{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.naval-nav{display:flex;flex-direction:column;gap:10px}.naval-nav-info{display:flex;gap:16px}.naval-compass{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;max-width:200px;margin:0 auto}.naval-dir{font-size:12px;padding:6px 4px;font-weight:700;font-family:var(--font-mono)}.naval-dir.current{background:var(--accent);border-color:var(--accent);color:#fff}.naval-stars{margin-top:8px}.naval-star{display:flex;justify-content:space-between;padding:3px 0;font-size:12px;border-bottom:1px solid var(--border)}.naval-star:last-child{border-bottom:none}.naval-star-name{font-weight:600}.naval-star-info{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.naval-combat-log{max-height:250px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.naval-combat-entry{padding:6px 0;border-bottom:1px solid var(--border)}.naval-combat-entry:last-child{border-bottom:none}.naval-combat-narrative{font-family:var(--font-body);font-size:13px;line-height:1.5}.naval-combat-meta{display:flex;gap:8px;font-family:var(--font-mono);font-size:11px;margin-top:2px}.naval-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.siege-panel{display:flex;flex-direction:column;gap:8px}.siege-war-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);font-size:13px;font-family:var(--font-ui);animation:pulse-critical 3s infinite}.siege-war-icon{font-size:16px}.siege-war-text{flex:1}.siege-war-year{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.siege-tabs{display:flex;gap:4px}.siege-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.siege-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.siege-sides{display:flex;align-items:flex-start;gap:12px}.siege-vs{font-size:18px;font-weight:700;color:var(--text-muted);align-self:center;padding:8px 0}.siege-faction-side{flex:1}.siege-faction-label{font-size:13px;font-weight:700;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.siege-faction-total{font-size:20px;font-weight:700;font-family:var(--font-mono);margin-bottom:6px}.siege-faction-row{display:flex;align-items:center;gap:6px;padding:2px 0;font-size:12px;border-bottom:1px solid var(--border)}.siege-faction-row:last-child{border-bottom:none}.siege-faction-name{flex:1;font-weight:600}.siege-faction-count{font-family:var(--font-mono);color:var(--text-secondary)}.siege-faction-morale{font-family:var(--font-mono);font-size:11px}.siege-player-side{margin-top:8px;font-size:12px;font-family:var(--font-ui);color:var(--text-secondary);text-align:center}.siege-weapon-list{display:flex;flex-direction:column;gap:6px}.siege-weapon{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.siege-weapon:hover{border-color:var(--border-focus)}.siege-weapon.selected{border-color:var(--accent)}.siege-weapon-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.siege-weapon-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.siege-weapon-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:2px}.siege-weapon-status.loaded{color:var(--success);background:#22c55e1f}.siege-weapon-status.unloaded{color:var(--text-muted)}.siege-weapon-name{font-size:14px;font-weight:600;margin-bottom:3px}.siege-weapon-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.siege-weapon-health{display:flex;align-items:center;gap:6px}.siege-hp-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.siege-hp-fill{height:100%;border-radius:2px;transition:width .3s}.siege-hp-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.siege-weapon-expanded{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.siege-target-label{font-size:11px;font-family:var(--font-ui);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.siege-target-list{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.siege-target-btn{font-size:11px;padding:3px 8px;color:var(--danger);border-color:var(--danger)}.siege-target-btn:hover{background:#ef44441f}.siege-weapon-actions{display:flex;flex-wrap:wrap;gap:4px}.siege-action-btn{font-size:11px;padding:3px 10px}.siege-fort-list{display:flex;flex-direction:column;gap:6px}.siege-fort{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.siege-fort.breached{border-color:var(--danger);opacity:.7}.siege-fort-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.siege-fort-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.siege-fort-breached{font-size:9px;font-family:var(--font-mono);font-weight:700;color:var(--danger);animation:pulse-critical 1.5s infinite}.siege-fort-name{font-size:14px;font-weight:600;margin-bottom:3px}.siege-fort-stats{font-size:11px;color:var(--text-secondary);font-family:var(--font-ui);margin-bottom:4px}.siege-fort-health{display:flex;align-items:center;gap:6px}.siege-log{max-height:300px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.siege-log-entry{display:flex;gap:8px;padding:4px 0;border-bottom:1px solid var(--border);font-size:12px}.siege-log-entry:last-child{border-bottom:none}.siege-log-type{font-family:var(--font-mono);font-weight:700;font-size:10px;text-transform:uppercase;min-width:50px}.siege-log-text{font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.siege-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.culture-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.culture-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.culture-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.culture-tab:hover{color:var(--text-secondary);background:transparent}.culture-tab.active{color:var(--text-primary);border-bottom-color:var(--morale)}.culture-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.culture-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.culture-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.culture-btn:disabled{opacity:.4;cursor:not-allowed}.create-art-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.create-art-label{font-family:var(--font-ui);font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.create-art-types{display:flex;flex-wrap:wrap;gap:4px}.create-art-btn{font-size:10px;padding:4px 10px;text-transform:capitalize;font-weight:600;border-width:2px}.art-grid{display:flex;flex-direction:column;gap:6px}.art-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:background .15s,border-color .15s}.art-card:hover{background:var(--bg-card-hover);border-color:var(--border-focus)}.art-card-type{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;margin-bottom:2px}.art-card-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.art-card-artist{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.art-card-quality{font-family:var(--font-ui);font-size:10px;color:var(--text-secondary);margin-top:2px}.art-detail{padding:4px 0}.art-detail-back{font-size:11px;padding:2px 8px;color:var(--accent);background:transparent;border:none;cursor:pointer;font-family:var(--font-ui);margin-bottom:8px}.art-detail-back:hover{text-decoration:underline;background:transparent}.art-detail-title{font-family:var(--font-body);font-size:18px;font-weight:700;color:var(--text-primary)}.art-detail-artist{font-family:var(--font-ui);font-size:12px;color:var(--text-muted);margin:2px 0}.art-detail-type{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;margin-bottom:8px}.art-detail-desc{font-family:var(--font-body);font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.art-detail-materials{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.art-material-tag{font-family:var(--font-ui);font-size:10px;padding:2px 6px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:3px;color:var(--accent)}.art-detail-stats{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.art-stat{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary)}.art-display-options{margin-top:8px}.art-display-label{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:4px}.culture-museums{display:flex;flex-direction:column;gap:6px}.museum-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.museum-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.museum-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.museum-count{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.museum-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.museum-actions{display:flex;gap:4px;margin-top:6px}.culture-music{display:flex;flex-direction:column;gap:6px}.instrument-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.instrument-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.instrument-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.instrument-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase}.instrument-actions{display:flex;gap:4px;flex-wrap:wrap}.culture-influence{display:flex;flex-direction:column;gap:8px}.influence-row{padding:8px 0;border-bottom:1px solid var(--border)}.influence-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.influence-settlement{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.influence-dominant{font-family:var(--font-ui);font-size:11px;color:var(--morale);font-weight:600}.influence-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-top:2px}.vehicle-panel{display:flex;flex-direction:column;gap:8px}.vehicle-tabs{display:flex;gap:4px}.vehicle-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.vehicle-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.vehicle-dash{padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0000004d}.vehicle-dash-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.vehicle-dash-name{font-size:14px;font-weight:700}.vehicle-dash-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.vehicle-dash-gear{font-size:20px;font-weight:700;font-family:var(--font-mono);color:var(--accent);text-align:center;min-width:32px}.vehicle-gauges{display:flex;gap:12px;margin-bottom:8px}.vehicle-gauge{flex:1;text-align:center}.vehicle-gauge-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.vehicle-gauge-value{font-size:22px;font-weight:700;font-family:var(--font-mono);line-height:1.1}.vehicle-gauge-unit{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.vehicle-meters{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.vehicle-meter{display:flex;align-items:center;gap:6px}.vehicle-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:44px}.vehicle-meter-track{flex:1;height:5px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.vehicle-meter-fill{height:100%;border-radius:2px;transition:width .3s}.vehicle-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:36px;text-align:right}.vehicle-warnings{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.vehicle-warning{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:2px;color:var(--danger);background:#ef44441f;animation:pulse-critical 2s infinite}.vehicle-actions{display:flex;flex-wrap:wrap;gap:4px}.vehicle-btn{font-size:11px;padding:3px 10px}.flight-panel{display:flex;flex-direction:column;gap:8px}.flight-instruments{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.flight-instrument{padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;background:#0003}.flight-instrument-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.flight-instrument-value{font-size:18px;font-weight:700;font-family:var(--font-mono);line-height:1.2}.flight-instrument-unit{font-size:9px;color:var(--text-muted);font-family:var(--font-mono)}.flight-status{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.flight-phase{font-size:11px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.flight-phase.grounded{color:var(--text-muted)}.flight-phase.taxiing{color:var(--warning)}.flight-phase.takeoff{color:var(--accent)}.flight-phase.cruising{color:var(--success)}.flight-phase.landing{color:var(--warning)}.flight-phase.emergency{color:var(--danger);animation:pulse-critical 1.5s infinite}.flight-dest{font-size:12px;color:var(--text-secondary);font-family:var(--font-ui)}.flight-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.airport-section{display:flex;flex-direction:column;gap:8px}.airport-name{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.airport-schedule{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.airport-schedule-header{display:flex;padding:4px 8px;background:#6366f114;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.airport-col-flight{flex:1}.airport-col-dest{flex:2}.airport-col-time,.airport-col-status{flex:1;text-align:right}.airport-row{display:flex;padding:5px 8px;font-size:12px;border-bottom:1px solid var(--border);align-items:center}.airport-row:last-child{border-bottom:none}.airport-flight-num{flex:1;font-family:var(--font-mono);font-weight:600}.airport-flight-dest{flex:2}.airport-flight-time{flex:1;text-align:right;font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.airport-flight-status{flex:1;text-align:right;font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.airport-flight-status.on-time{color:var(--success)}.airport-flight-status.delayed{color:var(--warning)}.airport-flight-status.cancelled{color:var(--danger)}.airport-flight-status.boarding{color:var(--accent)}.airport-flight-status.departed{color:var(--text-muted)}.airport-flight-status.arrived{color:var(--info)}.airport-book-btn{font-size:11px;padding:3px 8px;margin-left:6px}.gps-panel{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0003}.gps-coords{display:flex;gap:12px;margin-bottom:8px}.gps-coord{font-family:var(--font-mono);font-size:13px}.gps-coord-label{font-size:9px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-ui)}.gps-route{padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:6px}.gps-route-dest{font-size:13px;font-weight:600;margin-bottom:2px}.gps-route-info{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.gps-route-next{font-size:12px;color:var(--accent);font-family:var(--font-ui)}.gps-route-progress{display:flex;align-items:center;gap:6px;margin-top:4px}.gps-progress-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.gps-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s}.gps-progress-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.gps-pois{display:flex;flex-direction:column;gap:3px}.gps-poi{display:flex;justify-content:space-between;font-size:11px;padding:2px 0;border-bottom:1px solid var(--border)}.gps-poi:last-child{border-bottom:none}.gps-poi-name{font-weight:600}.gps-poi-dist{font-family:var(--font-mono);color:var(--text-secondary)}.vehicle-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.vehicle-card{padding:8px 10px;background:var(--bg-card, rgba(255,255,255,.03));border:1px solid var(--border, rgba(255,255,255,.08));border-radius:var(--radius, 4px);transition:border-color .15s}.vehicle-card:hover{border-color:var(--accent)}.vehicle-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.vehicle-card-type{font-size:10px;text-transform:uppercase;color:var(--text-muted);letter-spacing:.03em}.vehicle-card-era{font-size:10px;color:var(--success)}.vehicle-card-name{font-size:13px;font-weight:600}.factory-panel{display:flex;flex-direction:column;gap:8px}.factory-tabs{display:flex;gap:4px}.factory-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.factory-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.factory-list{display:flex;flex-direction:column;gap:6px}.factory-card{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.factory-card:hover{border-color:var(--border-focus)}.factory-card.selected{border-color:var(--accent)}.factory-card.offline{opacity:.6}.factory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.factory-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.factory-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:2px}.factory-status.running{color:var(--success);background:#22c55e1f}.factory-status.idle{color:var(--warning);background:#f59e0b1f}.factory-status.offline{color:var(--danger);background:#ef44441f}.factory-name{font-size:14px;font-weight:600;margin-bottom:3px}.factory-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.factory-efficiency{display:flex;align-items:center;gap:6px}.factory-eff-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.factory-eff-fill{height:100%;border-radius:2px;transition:width .3s}.factory-eff-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.factory-lines{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.factory-line-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.factory-line{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:12px;border-bottom:1px solid var(--border)}.factory-line:last-child{border-bottom:none}.factory-line-product{flex:1;font-weight:600}.factory-line-rate{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.factory-line-progress{width:60px;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.factory-line-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .5s}.factory-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.factory-btn{font-size:11px;padding:3px 10px}.power-grid{display:flex;flex-direction:column;gap:8px}.power-summary{display:flex;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.power-stat{flex:1;text-align:center}.power-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.power-stat-value{font-size:18px;font-weight:700;font-family:var(--font-mono)}.power-stat-unit{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.power-load-bar{height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden;margin-top:6px}.power-load-fill{height:100%;border-radius:3px;transition:width .3s}.power-source-list{display:flex;flex-direction:column;gap:4px}.power-source{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}.power-source-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.power-source-dot.active{background:var(--success);box-shadow:0 0 4px var(--success)}.power-source-dot.inactive{background:var(--text-muted)}.power-source-name{flex:1;font-weight:600}.power-source-output{font-family:var(--font-mono);color:var(--text-secondary)}.power-source-type{font-size:9px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-ui)}.railroad-list{display:flex;flex-direction:column;gap:6px}.railroad-route{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.railroad-route-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.railroad-route-name{font-size:13px;font-weight:600}.railroad-route-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.railroad-route-status.active{color:var(--success)}.railroad-route-status.building{color:var(--warning)}.railroad-route-status.blocked{color:var(--danger)}.railroad-stops{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-bottom:4px}.railroad-stop{font-size:11px;padding:2px 6px;border:1px solid var(--border);border-radius:2px;font-family:var(--font-ui)}.railroad-connector{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.railroad-meta{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.railroad-progress{margin-top:4px;display:flex;align-items:center;gap:6px}.railroad-progress-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.railroad-progress-fill{height:100%;background:var(--warning);border-radius:2px;transition:width .3s}.railroad-progress-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.telegraph-section{display:flex;flex-direction:column;gap:8px}.telegraph-compose{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.telegraph-compose-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.telegraph-input{width:100%;padding:6px 8px;font-size:12px;font-family:var(--font-mono);margin-bottom:4px;resize:none}.telegraph-dest{width:100%;padding:6px 8px;font-size:12px;margin-bottom:6px}.telegraph-send-row{display:flex;justify-content:space-between;align-items:center}.telegraph-cost{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.telegraph-send-btn{font-size:12px;padding:4px 14px}.telegraph-messages{max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.telegraph-msg{padding:6px 0;border-bottom:1px solid var(--border);font-size:12px}.telegraph-msg:last-child{border-bottom:none}.telegraph-msg-header{display:flex;justify-content:space-between;margin-bottom:2px}.telegraph-msg-from{font-weight:600;font-size:11px}.telegraph-msg-time{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.telegraph-msg-text{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);line-height:1.4}.factory-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.corp-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.corp-header{padding:8px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.corp-name{font-family:var(--font-ui);font-size:16px;font-weight:700;color:var(--text-primary)}.corp-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin:2px 0 6px}.corp-stock-summary{display:flex;align-items:center;gap:8px;margin-bottom:6px}.corp-price{font-family:var(--font-mono);font-size:18px;font-weight:700;color:var(--text-primary)}.corp-change{font-family:var(--font-mono);font-size:13px;font-weight:700}.corp-change.up{color:var(--success)}.corp-change.down{color:var(--danger)}.corp-mcap{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.corp-found-section{padding:10px;border-bottom:1px solid var(--border);flex-shrink:0}.corp-found-label{font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px}.corp-found-form{display:flex;flex-direction:column;gap:6px}.corp-input{font-size:13px;padding:6px 10px}.corp-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.corp-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:6px 12px;font-size:12px}.corp-btn:disabled{opacity:.4;cursor:not-allowed}.corp-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.corp-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);position:relative}.corp-tab:hover{color:var(--text-secondary);background:transparent}.corp-tab.active{color:var(--text-primary);border-bottom-color:var(--warning)}.corp-tab-alert{color:var(--danger);font-weight:700;margin-left:4px}.corp-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.corp-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.stock-table-header{display:flex;align-items:center;padding:4px 8px;font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:4px}.stock-row{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.03);font-family:var(--font-mono);font-size:12px}.stock-row:hover{background:var(--bg-card-hover)}.stock-col-symbol{flex:1;font-weight:700}.stock-symbol{color:var(--accent);cursor:default}.stock-col-price{width:50px;text-align:right;color:var(--text-primary)}.stock-col-change{width:50px;text-align:right;font-weight:600}.stock-col-change.up{color:var(--success)}.stock-col-change.down{color:var(--danger)}.stock-col-vol{width:40px;text-align:right;color:var(--text-muted);font-size:10px}.stock-col-range{width:60px;text-align:right;color:var(--text-muted);font-size:10px}.stock-col-action{display:flex;align-items:center;gap:2px;margin-left:8px}.stock-qty-input{width:40px;font-size:10px;padding:2px 4px;text-align:center}.stock-buy{font-size:9px;padding:2px 6px;font-weight:700;background:var(--success);border-color:var(--success);color:#fff;text-transform:uppercase}.stock-sell{font-size:9px;padding:2px 6px;font-weight:700;background:transparent;border-color:var(--danger);color:var(--danger);text-transform:uppercase}.stock-shareholders{margin-top:12px;padding-top:8px;border-top:1px solid var(--border)}.shareholders-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.shareholder-row{display:flex;align-items:center;gap:8px;padding:3px 4px;font-family:var(--font-ui);font-size:12px}.shareholder-name{flex:1;color:var(--text-primary)}.shareholder-type{font-size:10px;color:var(--text-muted);text-transform:uppercase}.shareholder-pct{font-family:var(--font-mono);font-weight:700;color:var(--accent);min-width:40px;text-align:right}.shareholder-shares{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:60px;text-align:right}.corp-news{display:flex;flex-direction:column;gap:6px}.news-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:background .15s}.news-card:hover{background:var(--bg-card-hover)}.news-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.news-category{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.news-source{font-family:var(--font-ui);font-size:10px;color:var(--text-muted)}.news-title{font-family:var(--font-body);font-size:14px;font-weight:700;color:var(--text-primary);line-height:1.3}.news-content{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);line-height:1.5;margin-top:8px;padding-top:8px;border-top:1px solid var(--border);white-space:pre-wrap}.corp-labor{display:flex;flex-direction:column;gap:6px}.union-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.union-card.striking{border-color:var(--danger);animation:pulse-critical 2s ease-in-out infinite}.union-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.union-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.union-strike-badge{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:3px;background:#ef444426;color:var(--danger);animation:pulse-critical 1s ease-in-out infinite}.union-meta{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.union-demands{margin:6px 0}.union-demands-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--warmth);margin-bottom:4px}.union-demand{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);padding:2px 0}.union-actions{display:flex;gap:4px;margin-top:6px}.corp-org{padding:4px 0}.org-node{margin-bottom:2px}.org-member{display:flex;align-items:center;gap:8px;padding:4px 8px;border-left:2px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;transition:background .1s}.org-member:hover{background:var(--bg-card-hover)}.org-title{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent);min-width:80px}.org-name{font-family:var(--font-ui);font-size:12px;color:var(--text-primary)}.indwar-panel{display:flex;flex-direction:column;gap:8px}.indwar-tabs{display:flex;gap:4px}.indwar-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.indwar-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.indwar-weapon-list{display:flex;flex-direction:column;gap:6px}.indwar-weapon{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.indwar-weapon:hover{border-color:var(--border-focus)}.indwar-weapon.selected{border-color:var(--accent)}.indwar-weapon-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.indwar-weapon-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.indwar-ammo{font-size:9px;font-family:var(--font-mono);font-weight:700}.indwar-ammo.low{color:var(--danger)}.indwar-ammo.ok{color:var(--text-secondary)}.indwar-weapon-name{font-size:14px;font-weight:600;margin-bottom:3px}.indwar-weapon-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.indwar-weapon-condition{display:flex;align-items:center;gap:6px}.indwar-cond-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.indwar-cond-fill{height:100%;border-radius:2px;transition:width .3s}.indwar-cond-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.indwar-weapon-expanded{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.indwar-weapon-actions{display:flex;flex-wrap:wrap;gap:4px}.indwar-action-btn{font-size:11px;padding:3px 10px}.indwar-vehicle-list{display:flex;flex-direction:column;gap:6px}.indwar-vehicle{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.indwar-vehicle.destroyed{border-color:var(--danger);opacity:.6}.indwar-vehicle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.indwar-vehicle-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.indwar-vehicle-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:2px}.indwar-vehicle-status.operational{color:var(--success);background:#22c55e1f}.indwar-vehicle-status.damaged{color:var(--warning);background:#f59e0b1f}.indwar-vehicle-status.destroyed{color:var(--danger);background:#ef44441f}.indwar-vehicle-name{font-size:14px;font-weight:600;margin-bottom:3px}.indwar-vehicle-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.indwar-vehicle-meters{display:flex;flex-direction:column;gap:4px}.indwar-meter{display:flex;align-items:center;gap:6px}.indwar-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:40px}.indwar-meter-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.indwar-meter-fill{height:100%;border-radius:2px;transition:width .3s}.indwar-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:32px;text-align:right}.indwar-vehicle-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.indwar-artillery-section{display:flex;flex-direction:column;gap:8px}.indwar-artillery{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.indwar-artillery:hover{border-color:var(--border-focus)}.indwar-artillery.selected{border-color:var(--accent)}.indwar-arty-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.indwar-arty-caliber{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.indwar-arty-ready{font-size:9px;font-family:var(--font-mono);font-weight:700}.indwar-arty-ready.ready{color:var(--success)}.indwar-arty-ready.loading{color:var(--warning)}.indwar-arty-ready.cooldown{color:var(--text-muted)}.indwar-arty-name{font-size:14px;font-weight:600;margin-bottom:3px}.indwar-arty-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.indwar-targeting{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.indwar-target-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.indwar-target-grid{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.indwar-target-btn{font-size:11px;padding:3px 8px;color:var(--danger);border-color:var(--danger)}.indwar-target-btn:hover{background:#ef44441f}.indwar-target-btn.selected{background:#ef444433}.indwar-fire-btn{font-size:12px;padding:6px 16px;width:100%;color:#fff;background:var(--danger);border-color:var(--danger)}.indwar-fire-btn:disabled{opacity:.4;cursor:not-allowed}.indwar-battlefield{display:flex;flex-direction:column;gap:8px}.indwar-battle-header{display:flex;justify-content:space-between;align-items:center}.indwar-battle-name{font-size:14px;font-weight:700}.indwar-battle-phase{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:2px}.indwar-battle-phase.active{color:var(--danger);background:#ef44441f;animation:pulse-critical 3s infinite}.indwar-battle-phase.ceasefire{color:var(--warning);background:#f59e0b1f}.indwar-battle-phase.ended{color:var(--text-muted)}.indwar-front-lines{display:flex;gap:12px}.indwar-front-side{flex:1}.indwar-front-label{font-size:11px;font-weight:700;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.indwar-unit{display:flex;align-items:center;gap:6px;padding:3px 0;font-size:12px;border-bottom:1px solid var(--border)}.indwar-unit:last-child{border-bottom:none}.indwar-unit-name{flex:1;font-weight:600}.indwar-unit-strength{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.indwar-unit-morale{font-family:var(--font-mono);font-size:10px}.indwar-front-vs{font-size:18px;font-weight:700;color:var(--text-muted);align-self:center;padding:8px 0}.indwar-battle-log{max-height:200px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.indwar-battle-entry{display:flex;gap:8px;padding:3px 0;border-bottom:1px solid var(--border);font-size:12px}.indwar-battle-entry:last-child{border-bottom:none}.indwar-battle-result{font-family:var(--font-mono);font-weight:700;font-size:10px;text-transform:uppercase;min-width:50px}.indwar-battle-text{font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.indwar-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.science-panel{display:flex;flex-direction:column;gap:8px}.science-tabs{display:flex;gap:4px}.science-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.science-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.science-telescope{display:flex;flex-direction:column;gap:8px}.science-sky{position:relative;background:radial-gradient(ellipse at center,var(--bg-secondary) 0%,var(--bg-primary) 100%);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;min-height:140px;overflow:hidden}.science-sky-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#fff6;font-family:var(--font-ui);margin-bottom:8px}.science-star-field{display:flex;flex-wrap:wrap;gap:8px}.science-celestial{padding:6px 10px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-sm);background:#ffffff0a;cursor:pointer;transition:border-color .15s,background .15s}.science-celestial:hover{border-color:#ffffff4d;background:#ffffff14}.science-celestial.selected{border-color:var(--accent);background:#6366f126}.science-celestial-name{font-size:13px;font-weight:600;color:#e0e0ff}.science-celestial-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#fff6;font-family:var(--font-ui)}.science-celestial-mag{font-size:10px;font-family:var(--font-mono);color:#ffffff80}.science-observation{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.5}.science-obs-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.science-obs-actions{display:flex;gap:4px;margin-top:6px}.science-obs-btn{font-size:11px;padding:3px 10px}.science-microscope{display:flex;flex-direction:column;gap:8px}.science-specimen-list{display:flex;flex-direction:column;gap:6px}.science-specimen{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.science-specimen:hover{border-color:var(--border-focus)}.science-specimen.selected{border-color:var(--accent)}.science-specimen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.science-specimen-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.science-specimen-zoom{font-size:9px;font-family:var(--font-mono);color:var(--text-muted)}.science-specimen-name{font-size:14px;font-weight:600;margin-bottom:3px}.science-specimen-desc{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.science-specimen-findings{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.science-finding{display:flex;align-items:center;gap:6px;padding:2px 0;font-size:11px}.science-finding-label{font-weight:600;color:var(--text-secondary)}.science-finding-value{font-family:var(--font-mono);color:var(--text-muted)}.science-chemistry{display:flex;flex-direction:column;gap:8px}.science-workbench{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#6366f108}.science-workbench-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:6px}.science-reagent-slots{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.science-reagent-slot{display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px dashed var(--border);border-radius:var(--radius-sm);font-size:12px;min-width:60px;min-height:28px}.science-reagent-slot.filled{border-style:solid;border-color:var(--accent);background:#6366f114}.science-reagent-remove{font-size:10px;padding:0 3px;color:var(--text-muted);cursor:pointer;border:none;background:none}.science-reagent-remove:hover{color:var(--danger)}.science-combine-btn{font-size:12px;padding:6px 16px;width:100%}.science-combine-btn:disabled{opacity:.4;cursor:not-allowed}.science-available-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.science-element-grid{display:flex;flex-wrap:wrap;gap:4px}.science-element-chip{font-size:11px;padding:3px 8px;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-primary);transition:border-color .15s}.science-element-chip:hover{border-color:var(--accent)}.science-element-chip.in-slot{opacity:.4;cursor:default}.science-result{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:4px}.science-result.success{border-color:var(--success);background:#22c55e0f}.science-result.failure{border-color:var(--danger);background:#ef44440f}.science-result-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-ui);margin-bottom:4px}.science-result.success .science-result-label{color:var(--success)}.science-result.failure .science-result-label{color:var(--danger)}.science-result-narrative{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.science-result-product{margin-top:6px;font-size:13px;font-weight:700}.science-discovery{padding:12px;border:2px solid var(--accent);border-radius:var(--radius);background:#6366f114;text-align:center;animation:pulse-critical 2s infinite}.science-discovery-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-family:var(--font-ui);margin-bottom:4px}.science-discovery-name{font-size:18px;font-weight:700;margin-bottom:6px}.science-name-input{width:100%;padding:6px 8px;font-size:13px;margin-bottom:6px}.science-name-btn{font-size:12px;padding:4px 14px}.science-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:3px}.science-table-cell{padding:4px;border:1px solid var(--border);border-radius:2px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.science-table-cell:hover{border-color:var(--border-focus)}.science-table-cell.undiscovered{opacity:.3;cursor:default}.science-table-cell.player-discovered{border-color:var(--accent);background:#6366f114}.science-table-symbol{font-size:16px;font-weight:700;font-family:var(--font-mono);line-height:1.2}.science-table-name{font-size:8px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.science-table-number{font-size:8px;font-family:var(--font-mono);color:var(--text-muted)}.science-table-stats{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:6px}.science-journal{max-height:350px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.science-journal-entry{padding:6px 0;border-bottom:1px solid var(--border)}.science-journal-entry:last-child{border-bottom:none}.science-journal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.science-journal-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-mono);font-weight:700}.science-journal-year{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.science-journal-title{font-size:13px;font-weight:600;margin-bottom:2px}.science-journal-text{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.science-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.digital-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.digital-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.digital-tab{flex:1;padding:6px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);min-width:50px}.digital-tab:hover{color:var(--text-secondary);background:transparent}.digital-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.digital-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.digital-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.digital-input{font-size:13px;padding:6px 10px;width:100%;margin-bottom:6px}.digital-textarea{font-size:13px;padding:6px 10px;width:100%;resize:vertical;font-family:var(--font-body);margin-bottom:6px}.digital-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.digital-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.digital-btn:disabled{opacity:.4;cursor:not-allowed}.browser-bar{display:flex;gap:4px;margin-bottom:8px}.browser-url{flex:1;font-family:var(--font-mono);font-size:12px;padding:6px 10px}.browser-go{font-size:11px;padding:6px 12px;font-weight:600}.browser-back{font-size:11px;padding:2px 8px;color:var(--accent);background:transparent;border:none;cursor:pointer;font-family:var(--font-ui)}.browser-back:hover{text-decoration:underline;background:transparent}.browser-page{padding:4px 0}.browser-page-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.browser-page-title{font-family:var(--font-body);font-size:16px;font-weight:700;color:var(--text-primary);flex:1}.browser-page-views{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.browser-page-author{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.browser-page-content{font-family:var(--font-body);font-size:14px;color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.browser-create{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.browser-create-label{font-family:var(--font-ui);font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.browser-pages-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin:8px 0 6px}.browser-page-card{padding:8px 10px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.browser-page-card:hover{background:var(--bg-card-hover)}.browser-page-card-title{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.browser-page-card-url{font-family:var(--font-mono);font-size:10px;color:var(--accent)}.browser-page-card-meta{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);margin-top:2px}.digital-phone{display:flex;justify-content:center;padding:12px}.phone-screen{width:240px;background:var(--bg-primary);border:2px solid var(--border);border-radius:16px;padding:8px}.phone-status-bar{display:flex;justify-content:space-between;padding:4px 8px;font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-bottom:8px}.phone-app-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:4px}.phone-app{display:flex;flex-direction:column;align-items:center;cursor:pointer;position:relative;padding:4px;border-radius:var(--radius-sm);transition:background .1s}.phone-app:hover{background:var(--bg-card-hover)}.phone-app-icon{font-size:24px;margin-bottom:2px}.phone-app-badge{position:absolute;top:0;right:4px;font-size:9px;font-weight:700;background:var(--danger);color:#fff;border-radius:8px;padding:0 4px;min-width:14px;text-align:center;line-height:14px}.phone-app-name{font-family:var(--font-ui);font-size:9px;color:var(--text-muted);text-align:center}.digital-social{display:flex;flex-direction:column;gap:8px}.social-compose{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.social-input{width:100%;font-size:13px;padding:6px 10px;resize:none;font-family:var(--font-body);border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);border-radius:var(--radius-sm)}.social-compose-footer{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.social-char-count{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.social-post{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.social-post-author{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--accent);margin-bottom:4px}.social-post-content{font-family:var(--font-body);font-size:13px;color:var(--text-primary);line-height:1.5;margin-bottom:6px}.social-post-actions{display:flex;gap:12px;align-items:center}.social-like{font-size:11px;padding:2px 8px;font-weight:600;background:transparent;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-family:var(--font-ui);border-radius:var(--radius-sm)}.social-like.liked{color:var(--morale);border-color:var(--morale)}.social-comments{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.digital-shop{display:flex;flex-direction:column;gap:6px}.shop-product{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.shop-product.out-of-stock{opacity:.5}.shop-product-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.shop-product-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.shop-product-price{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--warning)}.shop-product-meta{display:flex;justify-content:space-between;font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:6px}.digital-crypto{display:flex;flex-direction:column;gap:6px}.crypto-portfolio{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:4px}.crypto-portfolio-label{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);text-transform:uppercase}.crypto-portfolio-value{font-family:var(--font-mono);font-size:18px;font-weight:700;color:var(--text-primary)}.crypto-asset{padding:8px 10px;border-bottom:1px solid var(--border)}.crypto-asset-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.crypto-symbol{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--accent);min-width:40px}.crypto-name{font-family:var(--font-ui);font-size:12px;color:var(--text-secondary);flex:1}.crypto-price{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text-primary)}.crypto-change{font-family:var(--font-mono);font-size:11px;font-weight:600;min-width:50px;text-align:right}.crypto-change.up{color:var(--success)}.crypto-change.down{color:var(--danger)}.crypto-holdings{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin-bottom:4px}.crypto-trade{display:flex;gap:4px;align-items:center}.crypto-amount{width:60px;font-size:11px;padding:3px 6px;text-align:center}.crypto-buy{font-size:9px;padding:3px 8px;font-weight:700;background:var(--success);border-color:var(--success);color:#fff;text-transform:uppercase}.crypto-sell{font-size:9px;padding:3px 8px;font-weight:700;background:transparent;border-color:var(--danger);color:var(--danger);text-transform:uppercase}.digital-printer{display:flex;flex-direction:column;gap:8px}.printer-jobs{margin-bottom:8px}.printer-jobs-label,.printer-blueprints-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.printer-job{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;margin-bottom:4px}.printer-printing{border-left:3px solid var(--info)}.printer-complete{border-left:3px solid var(--success)}.printer-failed{border-left:3px solid var(--danger)}.printer-job-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.printer-job-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.printer-job-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--info)}.printer-progress{display:flex;align-items:center;gap:6px;margin-bottom:4px}.printer-progress-track{flex:1;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.printer-progress-fill{height:100%;background:var(--info);border-radius:2px;transition:width .6s ease}.printer-progress-label{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.printer-job-material{font-family:var(--font-ui);font-size:10px;color:var(--text-muted)}.printer-blueprint{display:flex;align-items:center;gap:8px;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.03)}.printer-bp-name{font-family:var(--font-ui);font-size:12px;font-weight:600;color:var(--text-primary);flex:1}.printer-bp-material{font-family:var(--font-ui);font-size:10px;color:var(--text-muted)}.printer-bp-time{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);min-width:40px;text-align:right}.modtech-panel{display:flex;flex-direction:column;gap:8px}.modtech-tabs{display:flex;gap:4px}.modtech-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.modtech-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.modtech-radio{display:flex;flex-direction:column;gap:8px}.modtech-dial{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0003}.modtech-dial-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.modtech-freq{font-size:22px;font-weight:700;font-family:var(--font-mono);text-align:center;color:var(--accent);margin-bottom:4px}.modtech-freq-unit{font-size:10px;color:var(--text-muted)}.modtech-station-name{font-size:13px;font-weight:600;text-align:center;margin-bottom:2px}.modtech-station-type{font-size:10px;color:var(--text-muted);text-align:center;font-family:var(--font-ui)}.modtech-station-list{display:flex;flex-direction:column;gap:4px}.modtech-station{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.modtech-station:hover{border-color:var(--border-focus)}.modtech-station.tuned{border-color:var(--accent);background:#6366f10f}.modtech-on-air{width:8px;height:8px;border-radius:50%;flex-shrink:0}.modtech-on-air.live{background:var(--success);box-shadow:0 0 4px var(--success)}.modtech-on-air.off{background:var(--text-muted)}.modtech-station-info{flex:1}.modtech-station-info-name{font-size:12px;font-weight:600}.modtech-station-info-freq{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.modtech-station-genre{font-size:9px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-ui)}.modtech-broadcast{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.modtech-broadcast-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.modtech-broadcast-input{width:100%;padding:6px 8px;font-size:12px;margin-bottom:4px;resize:none}.modtech-broadcast-row{display:flex;justify-content:space-between;align-items:center}.modtech-broadcast-cost{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.modtech-broadcast-btn{font-size:11px;padding:3px 10px}.modtech-tv{display:flex;flex-direction:column;gap:8px}.modtech-screen{padding:12px;border:2px solid var(--border);border-radius:var(--radius-sm);background:#0006;min-height:80px}.modtech-screen-channel{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#fff6;font-family:var(--font-ui);margin-bottom:4px}.modtech-screen-title{font-size:14px;font-weight:700;color:#e0e0e0;margin-bottom:4px}.modtech-screen-desc{font-size:12px;color:#fff9;font-family:var(--font-body);line-height:1.4}.modtech-screen-empty{color:#ffffff4d;font-size:12px;font-style:italic;text-align:center;padding:20px 0}.modtech-channel-strip{display:flex;gap:4px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.modtech-channel-btn{font-size:11px;padding:4px 10px;white-space:nowrap;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-primary);cursor:pointer;transition:border-color .15s}.modtech-channel-btn:hover{border-color:var(--border-focus)}.modtech-channel-btn.active{border-color:var(--accent);background:#6366f11a}.modtech-program-list{display:flex;flex-direction:column;gap:3px}.modtech-program{display:flex;align-items:center;gap:8px;padding:4px 8px;border-bottom:1px solid var(--border);font-size:12px;cursor:pointer}.modtech-program:last-child{border-bottom:none}.modtech-program:hover{background:#6366f10a}.modtech-program.watching{background:#6366f114}.modtech-program-time{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);min-width:44px}.modtech-program-name{flex:1;font-weight:600}.modtech-program-cat{font-size:9px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-ui)}.modtech-phone{display:flex;flex-direction:column;gap:8px}.modtech-phone-status{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.modtech-phone-state{font-size:11px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.modtech-phone-state.idle{color:var(--text-muted)}.modtech-phone-state.ringing{color:var(--warning);animation:pulse-critical 1s infinite}.modtech-phone-state.connected{color:var(--success)}.modtech-phone-state.busy{color:var(--danger)}.modtech-phone-caller{flex:1;font-size:12px;color:var(--text-secondary)}.modtech-phone-duration{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.modtech-dialpad{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.modtech-dial-display{font-size:18px;font-family:var(--font-mono);text-align:center;padding:6px;margin-bottom:6px;min-height:30px;border-bottom:1px solid var(--border)}.modtech-dial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}.modtech-dial-key{padding:8px;font-size:16px;font-family:var(--font-mono);font-weight:700;text-align:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-primary);cursor:pointer;transition:background .1s}.modtech-dial-key:hover{background:#6366f114}.modtech-dial-key:active{background:#6366f126}.modtech-phone-actions{display:flex;gap:4px}.modtech-call-btn{flex:1;font-size:12px;padding:6px;color:#fff;background:var(--success);border-color:var(--success)}.modtech-hangup-btn{flex:1;font-size:12px;padding:6px;color:#fff;background:var(--danger);border-color:var(--danger)}.modtech-contacts{display:flex;flex-direction:column;gap:3px}.modtech-contact{display:flex;align-items:center;gap:8px;padding:4px 8px;border-bottom:1px solid var(--border);font-size:12px;cursor:pointer}.modtech-contact:last-child{border-bottom:none}.modtech-contact:hover{background:#6366f10a}.modtech-contact-name{flex:1;font-weight:600}.modtech-contact-number{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.modtech-terminal{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.modtech-terminal-header{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;background:#6366f114;font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.modtech-terminal-screen{background:#0a0e1a;padding:8px;min-height:180px;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#333 transparent}.modtech-terminal-line{font-family:var(--font-mono);font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-all}.modtech-terminal-line.input{color:#7dd3fc}.modtech-terminal-line.output{color:#a3e635}.modtech-terminal-line.error{color:#f87171}.modtech-terminal-line.system{color:#a78bfa}.modtech-terminal-input-row{display:flex;align-items:center;gap:4px;padding:6px 8px;background:#0a0e1a;border-top:1px solid #222}.modtech-terminal-prompt{font-family:var(--font-mono);font-size:12px;color:#7dd3fc;flex-shrink:0}.modtech-terminal-cmd{flex:1;background:none;border:none;outline:none;font-family:var(--font-mono);font-size:12px;color:#e2e8f0;padding:0}.modtech-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.nuclear-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.nuclear-panel.meltdown-active{animation:meltdown-glow 1.5s ease-in-out infinite}@keyframes meltdown-glow{0%,to{box-shadow:inset 0 0 20px #ff00001a}50%{box-shadow:inset 0 0 40px #ff000040}}.nuclear-alert{padding:8px 12px;font-family:var(--font-ui);font-size:12px;font-weight:700;text-transform:uppercase;text-align:center;flex-shrink:0;animation:pulse-critical 1s ease-in-out infinite}.nuclear-alert.meltdown{background:#ff000026;border-bottom:2px solid var(--danger);color:var(--danger)}.nuclear-alert.radiation{background:#ef444414;border-bottom:2px solid var(--danger);color:var(--danger)}.nuclear-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.nuclear-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.nuclear-tab:hover{color:var(--text-secondary);background:transparent}.nuclear-tab.active{color:var(--text-primary);border-bottom-color:var(--warning)}.nuclear-tab-launch{color:var(--danger)}.nuclear-tab-launch.active{border-bottom-color:var(--danger)}.nuclear-tab-warn{color:var(--danger);font-weight:700;margin-left:4px}.nuclear-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.nuclear-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.nuclear-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.nuclear-btn:disabled{opacity:.4;cursor:not-allowed}.nuclear-reactors{display:flex;flex-direction:column;gap:8px}.reactor-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px}.reactor-meltdown{border-color:var(--danger);animation:pulse-critical 1s ease-in-out infinite}.reactor-overloaded{border-color:var(--warning)}.reactor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.reactor-name{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--text-primary)}.reactor-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.reactor-gauges{margin-bottom:8px}.reactor-risk{display:flex;align-items:center;gap:6px;margin-bottom:6px}.reactor-risk-label{font-family:var(--font-ui);font-size:9px;font-weight:600;text-transform:uppercase;color:var(--text-muted);min-width:60px}.reactor-risk-track{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.reactor-risk-fill{height:100%;border-radius:3px;background:var(--success);transition:width .4s ease}.reactor-risk-fill.elevated{background:var(--warning)}.reactor-risk-fill.critical{background:var(--danger);animation:pulse-critical 1s ease-in-out infinite}.reactor-risk-value{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--text-primary);min-width:28px;text-align:right}.reactor-rods{display:flex;justify-content:space-between;align-items:center;padding:4px 0;margin-bottom:6px}.reactor-rods-label{font-family:var(--font-ui);font-size:11px;color:var(--text-muted)}.reactor-rods-value{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--accent)}.reactor-actions{display:flex;gap:4px;flex-wrap:wrap}.reactor-btn{font-size:10px;padding:4px 10px;text-transform:uppercase;font-weight:600}.reactor-btn.dangerous{border-color:var(--danger);color:var(--danger)}.nuclear-radiation{display:flex;flex-direction:column;gap:6px}.rad-zone{padding:8px 10px;border-left:3px solid var(--text-muted);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-card);margin-bottom:2px}.rad-safe{border-left-color:var(--success)}.rad-low{border-left-color:var(--warning)}.rad-moderate{border-left-color:var(--warmth)}.rad-high{border-left-color:var(--danger)}.rad-lethal{border-left-color:var(--danger);background:#ff00000a}.rad-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.rad-location{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.rad-level{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.rad-details{display:flex;gap:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin-bottom:4px}.rad-bar{height:3px;background:#ffffff0f;border-radius:2px;overflow:hidden}.rad-bar-fill{height:100%;border-radius:2px;transition:width .4s ease}.nuclear-shelters{display:flex;flex-direction:column;gap:6px}.shelter-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.shelter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.shelter-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary)}.shelter-capacity{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.shelter-days{font-family:var(--font-ui);font-size:11px;color:var(--warning);font-weight:600;margin:4px 0}.shelter-actions{display:flex;gap:4px;margin-top:6px}.nuclear-launch{padding:4px 0}.launch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.launch-warheads{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--danger)}.launch-unauthorized{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--danger);text-transform:uppercase}.launch-targets-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.launch-targets{margin-bottom:12px}.launch-target{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,border-color .15s;margin-bottom:4px}.launch-target:hover{background:var(--bg-card-hover)}.launch-target.selected{border-color:var(--danger);background:#ef44440f}.launch-target-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.launch-target-dist,.launch-target-pop{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.launch-sequence{padding:12px 0}.launch-confirm-steps{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.launch-step{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);padding:4px 8px;border-left:2px solid var(--border)}.launch-step.active{color:var(--danger);border-left-color:var(--danger);font-weight:700}.launch-buttons{display:flex;gap:8px}.launch-btn{flex:2;padding:12px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--bg-card);border:2px solid var(--danger);color:var(--danger)}.launch-btn:hover{background:#ef444414}.launch-btn.final{background:var(--danger);color:#fff;animation:pulse-critical .5s ease-in-out infinite;font-size:18px}.launch-abort{flex:1;padding:12px;font-size:12px;font-weight:700;text-transform:uppercase;background:transparent;border:1px solid var(--text-muted);color:var(--text-muted)}.launch-abort:hover{border-color:var(--text-secondary);color:var(--text-secondary);background:transparent}.launch-final-warning{font-family:var(--font-body);font-size:14px;color:var(--danger);text-align:center;margin-top:12px;font-weight:700;line-height:1.4}.biotech-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.biotech-panel.operating{box-shadow:inset 0 0 15px #3b82f614}.biotech-lab-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.biotech-lab-level{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase}.biotech-research-pts{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--success)}.biotech-alert{padding:8px 12px;font-family:var(--font-ui);font-size:12px;font-weight:700;text-transform:uppercase;text-align:center;flex-shrink:0;background:#ef444414;border-bottom:2px solid var(--danger);color:var(--danger);animation:biotech-pulse 1s ease-in-out infinite}.biotech-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.biotech-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.biotech-tab:hover{color:var(--text-secondary);background:transparent}.biotech-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.biotech-tab-warn{color:var(--accent);font-size:8px;margin-left:4px;vertical-align:middle}.biotech-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.biotech-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.biotech-sequencing{display:flex;flex-direction:column;gap:6px}.gene-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;cursor:pointer;transition:border-color .15s,background .15s}.gene-card:hover{background:var(--bg-card-hover)}.gene-card.selected{border-color:var(--accent)}.gene-card.sequenced{border-left:3px solid var(--success)}.gene-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.gene-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.gene-chromosome{font-family:var(--font-mono);font-size:10px;color:var(--text-muted)}.gene-function{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);margin-bottom:6px}.gene-progress{display:flex;align-items:center;gap:6px;margin-top:6px}.gene-progress-track{flex:1;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.gene-progress-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .4s ease}.gene-progress-label{font-family:var(--font-mono);font-size:11px;color:var(--accent);min-width:28px;text-align:right}.gene-status-badge{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:2px;display:inline-block;margin-top:4px}.gene-status-badge.sequenced{background:#22c55e1a;color:var(--success)}.gene-sequence-btn{font-size:10px;padding:3px 10px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-top:6px}.gene-details{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.gene-traits{margin-bottom:6px}.gene-traits-label,.gene-mutations-label{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:4px}.gene-trait-list{display:flex;gap:4px;flex-wrap:wrap}.gene-trait{font-family:var(--font-ui);font-size:11px;padding:2px 6px;background:#ffffff0a;border:1px solid var(--border);border-radius:2px;color:var(--text-secondary)}.gene-mutations{display:flex;flex-direction:column;gap:2px}.gene-mutation{font-family:var(--font-mono);font-size:11px;cursor:help;padding:1px 0}.biotech-modifications{display:flex;flex-direction:column;gap:8px}.mod-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.mod-card.mod-in_progress{border-color:var(--accent)}.mod-card.mod-failed{border-color:var(--danger)}.mod-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.mod-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.mod-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.mod-target{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin-bottom:4px}.mod-description{font-family:var(--font-body);font-size:12px;color:var(--text-secondary);margin-bottom:8px}.mod-meters{margin-bottom:8px}.mod-requirements,.mod-effects{margin-bottom:6px}.mod-req-label,.mod-effects-label{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:3px}.mod-req,.mod-effect{font-family:var(--font-ui);font-size:11px;display:inline-block;padding:2px 6px;margin:1px 2px;border-radius:2px}.mod-req{background:#ef44440f;border:1px solid rgba(239,68,68,.15);color:var(--warning)}.mod-effect{background:#22c55e0f;border:1px solid rgba(34,197,94,.15);color:var(--success)}.mod-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.mod-btn{font-size:10px;padding:4px 10px;text-transform:uppercase;font-weight:600}.mod-btn.dangerous{border-color:var(--danger);color:var(--danger)}.mod-btn:disabled{opacity:.4;cursor:not-allowed}.biotech-surgery{display:flex;flex-direction:column;gap:8px}.proc-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.proc-card.proc-in_progress{border-color:var(--accent);animation:biotech-operating 2s ease-in-out infinite}.proc-card.proc-failed{border-color:var(--danger)}.proc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.proc-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.proc-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.proc-meta{display:flex;gap:10px;font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.proc-type{text-transform:capitalize}.proc-difficulty{font-weight:600}.proc-patient{color:var(--text-secondary)}.proc-progress{display:flex;align-items:center;gap:6px;margin-bottom:8px}.proc-progress-track{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.proc-progress-fill{height:100%;border-radius:3px;background:var(--accent);transition:width .4s ease}.proc-progress-fill.active{animation:biotech-progress-pulse 1.5s ease-in-out infinite}.proc-progress-label{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--text-primary);min-width:28px;text-align:right}.proc-risks,.proc-effects{margin:6px 0}.proc-risks-label,.proc-effects-label{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:3px}.proc-risk{font-family:var(--font-ui);font-size:11px;display:inline-block;padding:2px 6px;margin:1px 2px;background:#ef44440f;border:1px solid rgba(239,68,68,.15);border-radius:2px;color:var(--danger)}.proc-effect{font-family:var(--font-ui);font-size:11px;display:inline-block;padding:2px 6px;margin:1px 2px;background:#22c55e0f;border:1px solid rgba(34,197,94,.15);border-radius:2px;color:var(--success)}.proc-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.proc-btn{font-size:10px;padding:4px 10px;text-transform:uppercase;font-weight:600}.proc-btn.dangerous{border-color:var(--danger);color:var(--danger)}.proc-btn:disabled{opacity:.4;cursor:not-allowed}.biotech-therapy{display:flex;flex-direction:column;gap:8px}.therapy-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.therapy-card.therapy-administering{border-color:var(--accent)}.therapy-card.therapy-rejected{border-color:var(--danger)}.therapy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.therapy-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary)}.therapy-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.therapy-meta{display:flex;gap:10px;font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.therapy-condition{color:var(--text-secondary)}.therapy-delivery{font-weight:600;color:var(--accent)}.therapy-meters{margin-bottom:8px}.therapy-doses{display:flex;align-items:center;gap:6px;margin-bottom:6px}.therapy-doses-label{font-family:var(--font-ui);font-size:9px;font-weight:700;text-transform:uppercase;color:var(--text-muted);min-width:40px}.therapy-dose-track{display:flex;gap:3px;flex:1}.therapy-dose-pip{width:10px;height:10px;border-radius:2px;background:#ffffff0f;border:1px solid var(--border)}.therapy-dose-pip.administered{background:var(--success);border-color:var(--success)}.therapy-dose-count{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);min-width:28px;text-align:right}.therapy-warning{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--danger);padding:4px 8px;background:#ef44440f;border-radius:var(--radius-sm);margin-bottom:6px;animation:biotech-pulse 1.5s ease-in-out infinite}.therapy-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.therapy-btn{font-size:10px;padding:4px 10px;text-transform:uppercase;font-weight:600}.therapy-btn.dangerous{border-color:var(--danger);color:var(--danger)}.therapy-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes biotech-pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes biotech-operating{0%,to{box-shadow:inset 0 0 8px #3b82f60d}50%{box-shadow:inset 0 0 16px #3b82f61a}}@keyframes biotech-progress-pulse{0%,to{opacity:1}50%{opacity:.7}}.advmil-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.advmil-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.advmil-tab{flex:1;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-ui)}.advmil-tab:hover{color:var(--text-secondary);background:transparent}.advmil-tab.active{color:var(--text-primary);border-bottom-color:var(--danger)}.advmil-content{flex:1;overflow-y:auto;padding:8px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.advmil-empty{color:var(--text-muted);font-style:italic;font-size:13px;text-align:center;padding:16px}.advmil-btn{font-size:10px;padding:3px 8px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.advmil-btn.dangerous{border-color:var(--danger);color:var(--danger)}.advmil-btn.dangerous:hover{background:#ef444414}.advmil-btn:disabled{opacity:.4;cursor:not-allowed}.advmil-drones{display:flex;flex-direction:column;gap:6px}.drone-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.drone-destroyed{opacity:.4}.drone-jammed{border-color:var(--warning);border-style:dashed}.drone-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.drone-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.drone-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase}.drone-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.drone-meters{margin-bottom:6px}.drone-actions{display:flex;gap:4px;flex-wrap:wrap}.advmil-orbital{display:flex;flex-direction:column;gap:8px}.orbital-confirm{background:#ef44440f;border:2px solid var(--danger);border-radius:var(--radius);padding:12px;margin-bottom:8px;text-align:center}.orbital-confirm-text{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--danger);margin-bottom:4px}.orbital-confirm-warning{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.orbital-confirm-buttons{display:flex;gap:8px;justify-content:center}.orbital-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.orbital-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.orbital-name{font-family:var(--font-ui);font-size:13px;font-weight:700;color:var(--text-primary);flex:1}.orbital-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase}.orbital-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.orbital-status-ready{color:var(--success)}.orbital-status-charging{color:var(--warning)}.orbital-status-cooldown{color:var(--info)}.orbital-status-offline{color:var(--text-muted)}.orbital-meta{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);margin-bottom:6px}.orbital-targets{margin-top:8px}.orbital-targets-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.orbital-target{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--radius-sm);transition:background .1s}.orbital-target:hover{background:var(--bg-card-hover)}.orbital-target-name{font-family:var(--font-ui);font-size:12px;color:var(--text-primary);flex:1}.orbital-target-collateral{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.advmil-exosuit{padding:4px 0}.exo-warnings{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.exo-warning{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--warning);padding:4px 8px;background:#f59e0b14;border-radius:var(--radius-sm)}.exo-meters{margin-bottom:8px}.exo-multipliers{display:flex;gap:12px;margin-bottom:12px;padding:8px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.exo-mult{display:flex;flex-direction:column;align-items:center;flex:1}.exo-mult-label{font-family:var(--font-ui);font-size:9px;font-weight:600;text-transform:uppercase;color:var(--text-muted)}.exo-mult-value{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--accent)}.exo-systems-label{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.exo-system{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.exo-system:hover{background:var(--bg-card-hover)}.exo-system-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.exo-system-name{font-family:var(--font-ui);font-size:12px;color:var(--text-primary);flex:1}.exo-system-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase}.exo-system-power{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);min-width:28px;text-align:right}.advmil-emp{display:flex;flex-direction:column;gap:8px}.emp-confirm{background:#a855f70f;border:2px solid var(--fatigue);border-radius:var(--radius);padding:12px;margin-bottom:8px;text-align:center}.emp-confirm-text{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--fatigue);margin-bottom:4px}.emp-confirm-warning{font-family:var(--font-ui);font-size:11px;color:var(--text-muted);margin-bottom:8px}.emp-confirm-buttons{display:flex;gap:8px;justify-content:center}.emp-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.emp-ready{border-left:3px solid var(--fatigue)}.emp-spent{opacity:.4}.emp-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.emp-name{font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.emp-type{font-family:var(--font-ui);font-size:10px;color:var(--text-muted);text-transform:uppercase}.emp-status{font-family:var(--font-ui);font-size:10px;font-weight:700;text-transform:uppercase;color:var(--fatigue)}.emp-radius{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);margin-bottom:4px}.emp-side-effects{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.emp-effect-tag{font-family:var(--font-ui);font-size:9px;padding:1px 6px;background:#a855f714;border:1px solid rgba(168,85,247,.15);border-radius:3px;color:var(--fatigue)}.emp-detonate{width:100%;padding:8px;font-size:12px;margin-top:6px;background:var(--danger);border-color:var(--danger);color:#fff}.space-panel{display:flex;flex-direction:column;gap:8px}.space-tabs{display:flex;gap:4px}.space-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.space-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.space-launch{display:flex;flex-direction:column;gap:8px}.space-launch-vehicle{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0000004d}.space-launch-name{font-size:14px;font-weight:700;margin-bottom:2px}.space-launch-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:6px}.space-launch-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:6px}.space-launch-meters{display:flex;flex-direction:column;gap:4px}.space-meter{display:flex;align-items:center;gap:6px}.space-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:48px}.space-meter-track{flex:1;height:5px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.space-meter-fill{height:100%;border-radius:2px;transition:width .3s}.space-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:36px;text-align:right}.space-countdown{text-align:center;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0006}.space-countdown-label{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.space-countdown-value{font-size:32px;font-weight:700;font-family:var(--font-mono)}.space-countdown-value.go{color:var(--success)}.space-countdown-value.warning{color:var(--warning)}.space-countdown-value.critical{color:var(--danger);animation:pulse-critical 1s infinite}.space-checklist{display:flex;flex-direction:column;gap:3px}.space-check-item{display:flex;align-items:center;gap:6px;font-size:12px;padding:3px 0}.space-check-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.space-check-dot.pass{background:var(--success);box-shadow:0 0 4px var(--success)}.space-check-dot.fail{background:var(--danger)}.space-check-dot.pending{background:var(--text-muted)}.space-check-name{flex:1}.space-check-status{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.space-launch-btn{font-size:14px;font-weight:700;padding:10px;width:100%;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--success);border-color:var(--success)}.space-launch-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--text-muted);border-color:var(--text-muted)}.space-launch-btn.abort{background:var(--danger);border-color:var(--danger)}.space-orbital{display:flex;flex-direction:column;gap:8px}.space-orbit-display{position:relative;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:radial-gradient(ellipse at center,var(--bg-secondary) 0%,var(--bg-primary) 100%);min-height:120px}.space-planet-label{text-align:center;font-size:14px;font-weight:700;color:#7dd3fc;margin-bottom:8px}.space-orbit-info{display:grid;grid-template-columns:1fr 1fr;gap:6px}.space-orbit-stat{text-align:center}.space-orbit-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#fff6;font-family:var(--font-ui)}.space-orbit-stat-value{font-size:14px;font-weight:700;font-family:var(--font-mono);color:#e0e0ff}.space-orbit-stat-unit{font-size:9px;color:#ffffff4d;font-family:var(--font-mono)}.space-satellites{display:flex;flex-direction:column;gap:4px;margin-top:6px}.space-satellite{display:flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-size:12px;color:#c0c4ff}.space-sat-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.space-sat-dot.active{background:var(--success);box-shadow:0 0 3px var(--success)}.space-sat-dot.inactive{background:var(--text-muted)}.space-sat-name{flex:1;font-weight:600}.space-sat-type{font-size:9px;text-transform:uppercase;color:#fff6;font-family:var(--font-ui)}.space-station{display:flex;flex-direction:column;gap:8px}.space-station-header{display:flex;justify-content:space-between;align-items:center}.space-station-name{font-size:14px;font-weight:700}.space-station-pop{font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.space-module-list{display:flex;flex-direction:column;gap:6px}.space-module{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.space-module.damaged{border-color:var(--danger)}.space-module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.space-module-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.space-module-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.space-module-status.operational{color:var(--success)}.space-module-status.damaged{color:var(--danger);animation:pulse-critical 2s infinite}.space-module-status.offline{color:var(--text-muted)}.space-module-name{font-size:13px;font-weight:600;margin-bottom:3px}.space-module-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.space-station-resources{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.space-resource-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.space-station-actions{display:flex;flex-wrap:wrap;gap:4px}.space-btn{font-size:11px;padding:3px 10px}.space-surface{display:flex;flex-direction:column;gap:8px}.space-surface-header{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0003}.space-surface-body{font-size:14px;font-weight:700;margin-bottom:2px}.space-surface-region{font-size:11px;color:var(--text-secondary);font-family:var(--font-ui)}.space-terrain-desc{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.space-surface-pois{display:flex;flex-direction:column;gap:4px}.space-surface-poi{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;cursor:pointer;transition:border-color .15s}.space-surface-poi:hover{border-color:var(--border-focus)}.space-poi-type{font-size:9px;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-ui);min-width:50px}.space-poi-name{flex:1;font-weight:600}.space-poi-dist{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.space-surface-actions{display:flex;flex-wrap:wrap;gap:4px}.space-hud{padding:12px;border:2px solid rgba(125,211,252,.3);border-radius:var(--radius);background:#00000080;position:relative}.space-hud:before{content:"HUD";position:absolute;top:-8px;left:12px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#7dd3fc80;font-family:var(--font-mono);background:var(--bg-secondary);padding:0 4px}.space-hud-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.space-hud-stat{text-align:center;padding:4px}.space-hud-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#7dd3fc99;font-family:var(--font-ui)}.space-hud-stat-value{font-size:16px;font-weight:700;font-family:var(--font-mono);color:#7dd3fc}.space-hud-stat-unit{font-size:9px;color:#7dd3fc66;font-family:var(--font-mono)}.space-hud-meters{display:flex;flex-direction:column;gap:4px}.space-hud-alert{margin-top:6px;padding:4px 8px;font-size:11px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;text-align:center;color:var(--danger);background:#ef44441f;border-radius:2px;animation:pulse-critical 1.5s infinite}.space-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.colony-panel{display:flex;flex-direction:column;gap:8px}.colony-tabs{display:flex;gap:4px}.colony-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.colony-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.colony-dash{display:flex;flex-direction:column;gap:8px}.colony-header{display:flex;justify-content:space-between;align-items:center}.colony-name{font-size:14px;font-weight:700}.colony-location{font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.colony-pop-bar{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;gap:12px;align-items:center}.colony-pop-stat{text-align:center}.colony-pop-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.colony-pop-stat-value{font-size:18px;font-weight:700;font-family:var(--font-mono)}.colony-pop-stat-unit{font-size:9px;color:var(--text-muted);font-family:var(--font-mono)}.colony-life-support{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.colony-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.colony-meters{display:flex;flex-direction:column;gap:4px}.colony-meter{display:flex;align-items:center;gap:6px}.colony-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:56px}.colony-meter-track{flex:1;height:5px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.colony-meter-fill{height:100%;border-radius:2px;transition:width .3s}.colony-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:36px;text-align:right}.colony-meter.critical .colony-meter-label,.colony-meter.critical .colony-meter-value{color:var(--danger)}.colony-resources{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.colony-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.colony-resource{display:flex;justify-content:space-between;font-size:11px;padding:2px 0}.colony-resource-name{font-weight:600}.colony-resource-amount{font-family:var(--font-mono);color:var(--text-secondary)}.colony-resource-rate{font-size:9px;font-family:var(--font-mono)}.colony-resource-rate.positive{color:var(--success)}.colony-resource-rate.negative{color:var(--danger)}.colony-actions{display:flex;flex-wrap:wrap;gap:4px}.colony-btn{font-size:11px;padding:3px 10px}.colony-alert{padding:6px 10px;font-size:11px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;color:var(--danger);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);animation:pulse-critical 2s infinite}.mining-section{display:flex;flex-direction:column;gap:6px}.mining-op{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.mining-op.depleted{opacity:.5}.mining-op-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.mining-op-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.mining-op-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.mining-op-status.active{color:var(--success)}.mining-op-status.idle{color:var(--warning)}.mining-op-status.depleted{color:var(--text-muted)}.mining-op-name{font-size:13px;font-weight:600;margin-bottom:3px}.mining-op-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.mining-yield{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.mining-yield-chip{font-size:10px;padding:2px 6px;border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono)}.mining-depletion{display:flex;align-items:center;gap:6px}.mining-dep-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.mining-dep-fill{height:100%;border-radius:2px;transition:width .3s}.mining-dep-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.mining-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.mfg-section{display:flex;flex-direction:column;gap:6px}.mfg-facility{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.mfg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.mfg-type{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.mfg-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.mfg-status.producing{color:var(--success)}.mfg-status.idle{color:var(--warning)}.mfg-status.offline{color:var(--text-muted)}.mfg-name{font-size:13px;font-weight:600;margin-bottom:3px}.mfg-queue{display:flex;flex-direction:column;gap:3px;margin-top:4px}.mfg-queue-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.mfg-queue-item{display:flex;align-items:center;gap:6px;font-size:12px;padding:2px 0}.mfg-queue-name{flex:1;font-weight:600}.mfg-queue-qty{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.mfg-queue-progress{width:50px;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.mfg-queue-fill{height:100%;background:var(--accent);border-radius:2px}.mfg-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.terra-section{display:flex;flex-direction:column;gap:8px}.terra-planet{padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0003;text-align:center}.terra-planet-name{font-size:16px;font-weight:700;margin-bottom:2px}.terra-planet-phase{font-size:10px;font-family:var(--font-mono);text-transform:uppercase;margin-bottom:8px}.terra-overall{margin-bottom:8px}.terra-overall-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:2px}.terra-overall-track{height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.terra-overall-fill{height:100%;border-radius:4px;transition:width .5s;background:linear-gradient(90deg,var(--danger) 0%,var(--warning) 40%,var(--success) 100%)}.terra-overall-pct{font-size:12px;font-family:var(--font-mono);font-weight:700;margin-top:2px}.terra-params{display:flex;flex-direction:column;gap:4px}.terra-param{display:flex;align-items:center;gap:6px}.terra-param-name{font-size:11px;font-family:var(--font-ui);min-width:80px}.terra-param-current{font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);min-width:50px}.terra-param-arrow{font-size:10px;color:var(--text-muted)}.terra-param-target{font-size:11px;font-family:var(--font-mono);color:var(--success)}.terra-param-bar{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.terra-param-fill{height:100%;border-radius:2px;transition:width .3s}.terra-projects{display:flex;flex-direction:column;gap:4px}.terra-project{display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}.terra-project-name{flex:1;font-weight:600}.terra-project-effect{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.terra-project-progress{width:50px;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.terra-project-fill{height:100%;background:var(--success);border-radius:2px}.genship-section{display:flex;flex-direction:column;gap:8px}.genship-header{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#0000004d}.genship-name{font-size:14px;font-weight:700;margin-bottom:2px}.genship-mission{font-size:11px;color:var(--text-secondary);font-family:var(--font-ui);margin-bottom:4px}.genship-journey{display:flex;gap:12px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.genship-journey-progress{margin-top:6px;display:flex;align-items:center;gap:6px}.genship-progress-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.genship-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s}.genship-progress-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.genship-gen{display:flex;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.genship-gen-stat{flex:1;text-align:center}.genship-gen-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.genship-gen-stat-value{font-size:16px;font-weight:700;font-family:var(--font-mono)}.genship-decks{display:flex;flex-direction:column;gap:4px}.genship-deck{display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}.genship-deck.sealed{opacity:.5;border-color:var(--danger)}.genship-deck-name{flex:1;font-weight:600}.genship-deck-pop{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.genship-deck-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.genship-deck-status.habitable{color:var(--success)}.genship-deck-status.sealed{color:var(--danger)}.genship-deck-status.restricted{color:var(--warning)}.genship-actions{display:flex;flex-wrap:wrap;gap:4px}.colony-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.starmap-panel{display:flex;flex-direction:column;gap:8px}.starmap-tabs{display:flex;gap:4px}.starmap-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.starmap-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.starmap-display{position:relative;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:radial-gradient(ellipse at 40% 50%,#080c24,#000);min-height:160px}.starmap-sector-label{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#ffffff4d;font-family:var(--font-ui);margin-bottom:8px}.starmap-star-list{display:flex;flex-direction:column;gap:4px}.starmap-star{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s,background .15s}.starmap-star:hover{border-color:#ffffff40;background:#ffffff0a}.starmap-star.selected{border-color:var(--accent);background:#6366f11a}.starmap-star.visited{border-left:2px solid var(--success)}.starmap-star-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.starmap-star-info{flex:1}.starmap-star-name{font-size:12px;font-weight:600;color:#e0e0ff}.starmap-star-meta{font-size:10px;font-family:var(--font-mono);color:#fff6}.starmap-star-dist{font-size:11px;font-family:var(--font-mono);color:#ffffff80}.starmap-star-detail{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:6px}.starmap-detail-name{font-size:14px;font-weight:700;margin-bottom:4px}.starmap-detail-stats{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.starmap-detail-desc{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.starmap-detail-planets{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.starmap-planet-chip{font-size:10px;padding:2px 6px;border:1px solid var(--border);border-radius:2px;font-family:var(--font-mono)}.ftl-section{display:flex;flex-direction:column;gap:8px}.ftl-calc{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#6366f108}.ftl-calc-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:6px}.ftl-route{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:600}.ftl-route-arrow{color:var(--accent)}.ftl-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:8px}.ftl-stat{text-align:center}.ftl-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.ftl-stat-value{font-size:16px;font-weight:700;font-family:var(--font-mono)}.ftl-stat-unit{font-size:9px;color:var(--text-muted);font-family:var(--font-mono)}.ftl-risk{display:flex;align-items:center;gap:6px;margin-bottom:8px}.ftl-risk-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:32px}.ftl-risk-track{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.ftl-risk-fill{height:100%;border-radius:3px;transition:width .3s}.ftl-risk-pct{font-size:11px;font-family:var(--font-mono);font-weight:700;min-width:32px;text-align:right}.ftl-jump-btn{font-size:14px;font-weight:700;padding:10px;width:100%;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--accent);border-color:var(--accent)}.ftl-jump-btn:disabled{opacity:.4;cursor:not-allowed}.ftl-fuel{display:flex;align-items:center;gap:6px}.ftl-fuel-track{flex:1;height:5px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.ftl-fuel-fill{height:100%;border-radius:2px;transition:width .3s}.ftl-fuel-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.colship-section{display:flex;flex-direction:column;gap:8px}.colship-card{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.colship-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.colship-name{font-size:14px;font-weight:700}.colship-class{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.colship-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:6px}.colship-meters{display:flex;flex-direction:column;gap:4px}.colship-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.icomms-section{display:flex;flex-direction:column;gap:8px}.icomms-compose{padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.icomms-compose-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.icomms-dest{width:100%;padding:6px 8px;font-size:12px;margin-bottom:4px}.icomms-input{width:100%;padding:6px 8px;font-size:12px;font-family:var(--font-mono);margin-bottom:4px;resize:none}.icomms-send-row{display:flex;justify-content:space-between;align-items:center}.icomms-delay{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.icomms-send-btn{font-size:11px;padding:3px 10px}.icomms-messages{max-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.icomms-msg{padding:6px 0;border-bottom:1px solid var(--border)}.icomms-msg:last-child{border-bottom:none}.icomms-msg-header{display:flex;justify-content:space-between;margin-bottom:2px}.icomms-msg-from{font-size:11px;font-weight:600}.icomms-msg-delay{font-size:9px;font-family:var(--font-mono);color:var(--text-muted)}.icomms-msg-text{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4}.starmap-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.galactic-panel{display:flex;flex-direction:column;gap:8px}.galactic-tabs{display:flex;gap:4px}.galactic-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.galactic-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.fleet-section{display:flex;flex-direction:column;gap:6px}.fleet-ship{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.fleet-ship.flagship{border-color:var(--accent)}.fleet-ship.destroyed{opacity:.5;border-color:var(--danger)}.fleet-ship-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.fleet-ship-class{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.fleet-ship-role{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:2px}.fleet-ship-role.flagship{color:var(--accent);background:#6366f11f}.fleet-ship-role.escort{color:var(--info)}.fleet-ship-role.support{color:var(--success)}.fleet-ship-role.scout{color:var(--warning)}.fleet-ship-name{font-size:13px;font-weight:600;margin-bottom:3px}.fleet-ship-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.fleet-ship-meters{display:flex;flex-direction:column;gap:3px}.fleet-meter{display:flex;align-items:center;gap:6px}.fleet-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:40px}.fleet-meter-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.fleet-meter-fill{height:100%;border-radius:2px;transition:width .3s}.fleet-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:32px;text-align:right}.fleet-ship-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.fleet-formation{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.fleet-formation-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.fleet-formation-options{display:flex;flex-wrap:wrap;gap:4px}.fleet-formation-btn{font-size:11px;padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-primary);cursor:pointer;transition:border-color .15s}.fleet-formation-btn:hover{border-color:var(--border-focus)}.fleet-formation-btn.active{border-color:var(--accent);background:#6366f11a}.senate-section{display:flex;flex-direction:column;gap:8px}.senate-session{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;justify-content:space-between;align-items:center}.senate-session-label{font-size:12px;font-weight:600}.senate-session-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.senate-session-status.in-session{color:var(--success)}.senate-session-status.recess{color:var(--text-muted)}.senate-proposal{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.senate-proposal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.senate-proposal-id{font-size:9px;font-family:var(--font-mono);color:var(--text-muted)}.senate-proposal-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.senate-proposal-status.voting{color:var(--warning)}.senate-proposal-status.passed{color:var(--success)}.senate-proposal-status.failed,.senate-proposal-status.vetoed{color:var(--danger)}.senate-proposal-title{font-size:13px;font-weight:600;margin-bottom:2px}.senate-proposal-desc{font-size:12px;font-family:var(--font-body);color:var(--text-secondary);line-height:1.4;margin-bottom:4px}.senate-proposal-by{font-size:10px;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:6px}.senate-vote-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;margin-bottom:4px}.senate-vote-for{background:var(--success)}.senate-vote-against{background:var(--danger)}.senate-vote-abstain{background:var(--text-muted)}.senate-vote-counts{display:flex;justify-content:space-between;font-size:10px;font-family:var(--font-mono);margin-bottom:6px}.senate-vote-for-count{color:var(--success)}.senate-vote-against-count{color:var(--danger)}.senate-vote-abstain-count{color:var(--text-muted)}.senate-vote-actions{display:flex;gap:4px}.senate-vote-btn{flex:1;font-size:11px;padding:4px;text-transform:uppercase}.senate-vote-btn.for{color:var(--success);border-color:var(--success)}.senate-vote-btn.for:hover{background:#22c55e1f}.senate-vote-btn.against{color:var(--danger);border-color:var(--danger)}.senate-vote-btn.against:hover{background:#ef44441f}.senate-vote-btn.abstain{color:var(--text-muted)}.diplo-section{display:flex;flex-direction:column;gap:6px}.diplo-faction{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.diplo-faction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.diplo-faction-name{font-size:13px;font-weight:600}.diplo-relation{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;padding:1px 4px;border-radius:2px}.diplo-relation.allied{color:var(--success);background:#22c55e1f}.diplo-relation.friendly{color:var(--info)}.diplo-relation.neutral{color:var(--text-muted)}.diplo-relation.hostile{color:var(--warning);background:#f59e0b1f}.diplo-relation.war{color:var(--danger);background:#ef44441f;animation:pulse-critical 3s infinite}.diplo-faction-desc{font-size:11px;color:var(--text-secondary);font-family:var(--font-ui);margin-bottom:4px}.diplo-standing{display:flex;align-items:center;gap:6px;margin-bottom:4px}.diplo-standing-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.diplo-standing-fill{height:100%;border-radius:2px}.diplo-standing-value{font-size:10px;font-family:var(--font-mono);min-width:28px;text-align:right}.diplo-actions{display:flex;flex-wrap:wrap;gap:4px}.galecon-section{display:flex;flex-direction:column;gap:8px}.galecon-summary{display:flex;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.galecon-stat{flex:1;text-align:center}.galecon-stat-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui)}.galecon-stat-value{font-size:16px;font-weight:700;font-family:var(--font-mono)}.galecon-stat-unit{font-size:9px;color:var(--text-muted);font-family:var(--font-mono)}.galecon-routes{display:flex;flex-direction:column;gap:4px}.galecon-route{display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}.galecon-route-name{flex:1;font-weight:600}.galecon-route-vol{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.galecon-route-profit{font-family:var(--font-mono);font-size:11px;font-weight:700}.galecon-route-profit.positive{color:var(--success)}.galecon-route-profit.negative{color:var(--danger)}.mcds-section{display:flex;flex-direction:column;gap:8px}.mcds-header{padding:10px;border:1px solid #ffc72c;border-radius:var(--radius-sm);background:#ffc72c0f;display:flex;justify-content:space-between;align-items:center}.mcds-logo{font-size:20px;font-weight:900;color:#ffc72c;font-family:var(--font-ui)}.mcds-slogan{font-size:10px;color:var(--text-muted);font-style:italic;font-family:var(--font-body)}.mcds-franchise{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.mcds-franchise-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.mcds-franchise-name{font-size:13px;font-weight:600}.mcds-franchise-status{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase}.mcds-franchise-status.open{color:var(--success)}.mcds-franchise-status.closed{color:var(--text-muted)}.mcds-franchise-status.drive-thru{color:#ffc72c}.mcds-franchise-loc{font-size:10px;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.mcds-stats{display:flex;gap:10px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:4px}.mcds-meter{display:flex;align-items:center;gap:6px}.mcds-meter-label{font-size:10px;font-family:var(--font-ui);color:var(--text-muted);min-width:56px}.mcds-meter-track{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.mcds-meter-fill{height:100%;border-radius:2px;transition:width .3s}.mcds-meter-value{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.mcds-menu{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.mcds-menu-item{font-size:10px;padding:2px 6px;border:1px solid rgba(255,199,44,.3);border-radius:2px;color:#ffc72c;font-family:var(--font-mono)}.mcds-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.galactic-btn{font-size:11px;padding:3px 10px}.galactic-empty{color:var(--text-muted);font-size:12px;font-style:italic;font-family:var(--font-ui);padding:8px 0}.alien-panel{display:flex;flex-direction:column;gap:8px}.alien-tabs{display:flex;gap:4px}.alien-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.alien-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.alien-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.alien-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.alien-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.alien-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.alien-btn:hover:not(:disabled){background:var(--accent);color:#fff}.alien-btn:disabled{opacity:.4;cursor:default}.alien-btn.accept{border-color:var(--success);color:var(--success)}.alien-btn.accept:hover{background:var(--success);color:#fff}.alien-btn.reject{border-color:var(--danger);color:var(--danger)}.alien-btn.reject:hover{background:var(--danger);color:#fff}.contact-dash{display:flex;flex-direction:column;gap:8px}.contact-header{display:flex;justify-content:space-between;align-items:center}.contact-species{font-size:14px;font-weight:700}.contact-disposition{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.contact-timer{font-size:11px;color:var(--warning);padding:4px 8px;border:1px solid var(--warning);border-radius:var(--radius-sm);text-align:center;animation:timer-pulse 1.5s ease-in-out infinite}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}.contact-timer-value{font-weight:700;font-family:var(--font-mono)}.contact-signal{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.contact-signal-text{font-size:12px;color:var(--text-primary);font-style:italic}.contact-language{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.contact-decode-bar{height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden;margin:4px 0}.contact-decode-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease}.contact-decode-pct{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.contact-glyphs{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.contact-glyph{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:14px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:default}.contact-glyph.decoded{border-color:var(--success);color:var(--success);background:#00ff000d}.contact-glyph.unknown{color:var(--text-muted);opacity:.5}.contact-choices{display:flex;flex-direction:column;gap:6px}.contact-choice{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);text-align:left;cursor:pointer;transition:border-color .15s}.contact-choice:hover{border-color:var(--accent)}.contact-choice-header{display:flex;justify-content:space-between;align-items:center}.contact-choice-label{font-size:12px;font-weight:600}.contact-choice-tone{font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.contact-choice-desc{font-size:11px;color:var(--text-muted)}.contact-choice-stats{display:flex;gap:12px;font-size:10px;font-family:var(--font-mono)}.contact-choice-risk{color:var(--danger)}.contact-choice-reward{color:var(--success)}.trade-dash{display:flex;flex-direction:column;gap:8px}.trade-header{display:flex;justify-content:space-between;align-items:center}.trade-species{font-size:14px;font-weight:700}.trade-trust{font-size:12px;font-weight:600;font-family:var(--font-mono)}.trade-embargo{font-size:11px;color:var(--danger);padding:6px 10px;border:1px solid var(--danger);border-radius:var(--radius-sm);text-align:center;animation:timer-pulse 2s ease-in-out infinite}.trade-offers{display:flex;flex-direction:column;gap:8px}.trade-offer{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;gap:8px;align-items:center}.trade-offer-side{flex:1;min-width:100px}.trade-offer-arrow{font-size:18px;color:var(--text-muted);padding:0 4px}.trade-item{font-size:12px;font-family:var(--font-mono);color:var(--text-primary)}.trade-offer-meta{width:100%;display:flex;justify-content:space-between;font-size:10px}.trade-fairness{font-weight:600}.trade-expires{color:var(--text-muted);font-family:var(--font-mono)}.trade-offer-buttons{width:100%;display:flex;gap:6px}.xeno-dash{display:flex;flex-direction:column;gap:8px}.xeno-header{display:flex;justify-content:space-between;align-items:center}.xeno-lab-level{font-size:12px;font-weight:600}.xeno-rp{font-size:12px;font-weight:600;color:var(--accent);font-family:var(--font-mono)}.xeno-specimens{display:flex;flex-direction:column;gap:8px}.xeno-specimen{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.xeno-spec-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.xeno-spec-name{font-size:12px;font-weight:600}.xeno-spec-category{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm)}.xeno-spec-danger{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.xeno-spec-origin{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.xeno-spec-progress-row{display:flex;align-items:center;gap:8px}.xeno-spec-bar{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.xeno-spec-bar-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease}.xeno-spec-pct{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:32px;text-align:right}.xeno-spec-traits{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.xeno-trait-chip{font-size:9px;padding:2px 6px;border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent)}.reverse-dash{display:flex;flex-direction:column;gap:8px}.reverse-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.reverse-power{font-size:14px;font-weight:700;font-family:var(--font-mono);color:var(--accent)}.reverse-techs{display:flex;flex-direction:column;gap:8px}.reverse-tech{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.reverse-tech-header{display:flex;justify-content:space-between;align-items:center}.reverse-tech-name{font-size:12px;font-weight:600}.reverse-tech-cat{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm)}.reverse-tech-origin{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.reverse-tech-diff{font-size:11px;color:var(--text-primary)}.reverse-diff-trivial{color:var(--success)}.reverse-diff-moderate{color:var(--warning)}.reverse-diff-advanced{color:var(--accent)}.reverse-diff-impossible{color:var(--danger);font-weight:700}.reverse-breakthroughs{padding-top:4px;border-top:1px solid var(--border)}.reverse-breakthrough{font-size:11px;color:var(--success);padding:2px 0}.reverse-breakthrough:before{content:"✓";font-weight:700}.mega-panel{display:flex;flex-direction:column;gap:8px}.mega-tabs{display:flex;gap:4px}.mega-tab{flex:1;font-size:11px;padding:6px 8px;text-transform:uppercase;letter-spacing:.03em}.mega-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.mega-empty{font-size:12px;color:var(--text-muted);font-style:italic;padding:12px 0}.mega-section-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-family:var(--font-ui);margin-bottom:4px}.mega-actions{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.mega-btn{font-size:11px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;transition:background .15s}.mega-btn:hover:not(:disabled){background:var(--accent);color:#fff}.mega-btn:disabled{opacity:.4;cursor:default}.dyson-dash{display:flex;flex-direction:column;gap:8px}.dyson-header{display:flex;justify-content:space-between;align-items:center}.dyson-star{display:flex;align-items:baseline;gap:6px}.dyson-star-name{font-size:14px;font-weight:700}.dyson-star-class{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);padding:1px 5px;border:1px solid var(--border);border-radius:var(--radius-sm)}.dyson-energy{display:flex;align-items:baseline;gap:3px}.dyson-energy-value{font-size:16px;font-weight:700;font-family:var(--font-mono);color:var(--warning)}.dyson-energy-unit{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.dyson-enclosure{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center}.dyson-ring-visual{width:120px;height:120px;margin:4px 0}.dyson-ring-svg{width:100%;height:100%}.dyson-integrity{padding:4px 0}.dyson-segments{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.dyson-segment-grid{display:flex;flex-direction:column;gap:6px}.dyson-segment{padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm)}.dyson-segment.damaged{border-color:var(--danger)}.dyson-segment.complete{border-color:var(--success);opacity:.8}.dyson-seg-header{display:flex;justify-content:space-between;align-items:center}.dyson-seg-name{font-size:11px;font-weight:600}.dyson-seg-status{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.dyson-seg-bar{height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden;margin-top:4px}.dyson-seg-bar-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease}.ring-dash{display:flex;flex-direction:column;gap:8px}.ring-header{display:flex;justify-content:space-between;align-items:flex-start}.ring-name-block{display:flex;flex-direction:column}.ring-name{font-size:14px;font-weight:700}.ring-diameter{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.ring-stats{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.ring-stat{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.ring-pop{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.ring-pop-bar{height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden;margin:4px 0}.ring-pop-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease}.ring-pop-text{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.ring-zones{display:flex;flex-direction:column;gap:6px}.ring-zone{padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.ring-zone.dimmed{opacity:.5}.ring-zone-header{display:flex;justify-content:space-between;align-items:center;gap:6px}.ring-zone-name{font-size:11px;font-weight:600}.ring-zone-biome{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:1px 5px;border:1px solid var(--border);border-radius:var(--radius-sm)}.ring-zone-status{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-left:auto}.ring-zone-pop{display:flex;align-items:center;gap:8px}.ring-zone-pop-bar{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.ring-zone-pop-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease}.ring-zone-pop-text{font-size:9px;font-family:var(--font-mono);color:var(--text-muted);min-width:80px;text-align:right}.mega-projects{display:flex;flex-direction:column;gap:8px}.mega-project{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:4px}.mega-proj-header{display:flex;justify-content:space-between;align-items:center}.mega-proj-name{font-size:12px;font-weight:600}.mega-proj-phase{font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.mega-proj-type{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.mega-proj-progress-row{display:flex;align-items:center;gap:8px}.mega-proj-bar{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.mega-proj-bar-fill{height:100%;border-radius:3px;transition:width .4s ease}.mega-proj-pct{font-size:10px;font-family:var(--font-mono);color:var(--text-muted);min-width:32px;text-align:right}.mega-proj-eta{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.mega-proj-resources{padding-top:4px;border-top:1px solid var(--border)}.mega-resource-row{display:flex;align-items:center;gap:8px;padding:2px 0}.mega-resource-name{font-size:10px;min-width:60px;color:var(--text-primary)}.mega-resource-bar{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.mega-resource-bar-fill{height:100%;border-radius:2px;transition:width .4s ease}.mega-resource-text{font-size:9px;font-family:var(--font-mono);min-width:80px;text-align:right}.mega-resource-text.sufficient{color:var(--success)}.mega-resource-text.deficit{color:var(--warning)}.tech-comparison-panel{display:flex;flex-direction:column;gap:8px}.tech-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);padding-bottom:4px}.tech-tab{padding:6px 12px;font-size:12px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;position:relative}.tech-tab.active{color:var(--accent);border-bottom:2px solid var(--accent)}.tech-tab:hover:not(.active){color:var(--text-secondary)}.tech-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:4px;font-size:10px;font-weight:600;background:var(--accent);color:#fff;border-radius:8px}.tech-content{padding:4px 0}.tech-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:13px;font-style:italic}.tech-section-desc{padding:4px 8px 8px;font-size:12px;color:var(--text-secondary)}.tech-current-eon{padding:6px 8px;font-size:13px;color:var(--text-secondary)}.tech-era-grid{display:flex;flex-direction:column;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.tech-era-header{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1px;background:var(--bg-card);padding:6px 8px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.tech-era-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1px;background:var(--bg-secondary);padding:5px 8px;font-size:12px}.tech-era-row:hover{background:var(--bg-card)}.tech-era-label{color:var(--text-primary);font-weight:500}.tech-era-count{text-align:center;font-size:12px}.tech-era-col{text-align:center}.tech-era-col:first-child{text-align:left}.tech-list{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0}.tech-tag{display:inline-block;padding:3px 8px;font-size:11px;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;color:var(--text-primary);cursor:default}.tech-tag:hover{background:var(--bg-card-hover);border-color:var(--border-focus)}.tech-tag.banned{border-color:var(--danger);color:var(--danger);opacity:.7;text-decoration:line-through}.tech-learnable-card{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;cursor:default;width:100%}.tech-learnable-card.ready{border-left:3px solid var(--success)}.tech-learnable-card.locked{opacity:.6;border-left:3px solid var(--text-muted)}.tech-learnable-card:hover{background:var(--bg-card-hover)}.tech-learnable-name{flex:1;color:var(--text-primary);font-weight:500}.tech-learnable-era{font-size:10px;color:var(--text-muted)}.tech-learnable-locked{font-size:10px;color:var(--danger);font-style:italic}.tech-foreign-card{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:var(--radius-sm);font-size:12px;cursor:default;width:100%}.tech-foreign-card:hover{background:var(--bg-card-hover)}.tech-foreign-name{flex:1;color:var(--text-primary);font-weight:500}.tech-foreign-era{font-size:10px;color:var(--text-muted)}.tech-foreign-holders{font-size:10px;color:var(--info)}.tech-religion-card{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;width:100%}.tech-religion-card.banned{border-left:3px solid var(--danger)}.tech-religion-card.bonus{border-left:3px solid var(--success)}.tech-religion-card.required{border-left:3px solid var(--accent)}.tech-religion-name{flex:1;color:var(--text-primary);font-weight:500}.tech-religion-modifier{font-size:11px;color:var(--success);font-weight:600}.tech-religion-source{font-size:10px;color:var(--text-muted);font-style:italic}.tech-religion-reason{font-size:10px;color:var(--text-secondary);width:100%;margin-top:2px}.tech-tree-panel{display:flex;flex-direction:column;gap:6px}.tt-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);padding-bottom:4px}.tt-tab{padding:5px 10px;font-size:11px;background:transparent;border:none;color:var(--text-muted);cursor:pointer}.tt-tab.active{color:var(--accent);border-bottom:2px solid var(--accent)}.tt-tab:hover:not(.active){color:var(--text-secondary)}.tt-summary{display:flex;align-items:center;gap:10px;padding:4px 8px;font-size:11px;font-family:var(--font-ui)}.tt-eon{color:var(--text-secondary);font-weight:600}.tt-count{padding:1px 6px;border-radius:3px;font-size:10px}.tt-known{color:var(--success)}.tt-learnable{color:var(--info)}.tt-hinted{color:var(--text-muted)}.tt-canvas-wrapper{position:relative;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);overflow:hidden}.tt-canvas{width:100%;height:360px;cursor:grab;-webkit-user-select:none;user-select:none}.tt-canvas:active{cursor:grabbing}.tt-edge{fill:none;stroke:var(--border);stroke-width:1.5;opacity:.6}.tt-node:hover rect:first-of-type{filter:brightness(1.2)}.tt-node-selected rect{filter:brightness(1.1)}.tt-zoom-controls{position:absolute;bottom:8px;right:8px;display:flex;align-items:center;gap:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 4px}.tt-zoom-btn{padding:2px 8px;font-size:11px;border:none;background:transparent;color:var(--text-secondary)}.tt-zoom-btn:hover{color:var(--text-primary)}.tt-zoom-level{font-size:10px;color:var(--text-muted);font-family:var(--font-mono);min-width:36px;text-align:center}.tt-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:13px;font-style:italic}.tt-detail{border-top:1px solid var(--border);padding-top:6px}.tt-detail-body{display:flex;flex-direction:column;gap:4px}.tt-detail-row{display:flex;justify-content:space-between;font-size:12px;padding:2px 0}.tt-detail-label{color:var(--text-muted)}.tt-detail-value{color:var(--text-primary);font-weight:500}.tt-status-known{color:var(--success)}.tt-status-learnable{color:var(--info)}.tt-status-hinted{color:var(--text-muted);font-style:italic}.tt-detail-desc{font-size:12px;color:var(--text-secondary);font-style:italic;padding:4px 0}.tt-detail-hint{font-size:12px;color:var(--warning);font-style:italic;padding:4px 0}.tt-learn-btn{padding:6px 12px;font-size:12px;background:var(--info);border-color:var(--info);color:#fff;margin-top:4px}.tt-learn-btn:hover{background:#2563eb}.tt-research{margin-top:4px}.tt-progress-bar{width:100%;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden;margin:4px 0}.tt-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s}.tt-religion-badge{font-size:11px;padding:4px 8px;border-radius:3px;margin-top:4px}.tt-religion-banned{background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.2)}.tt-religion-bonus{background:#22c55e1a;color:var(--success);border:1px solid rgba(34,197,94,.2)}.tt-religion-required{background:#6366f11a;color:var(--accent);border:1px solid rgba(99,102,241,.2)}.tt-legend{display:flex;gap:12px;padding:4px 8px;font-size:10px;color:var(--text-muted);font-family:var(--font-ui)}.tt-legend-item{display:flex;align-items:center;gap:4px}.tt-legend-dot{display:inline-block;width:8px;height:8px;border-radius:2px}.tt-dot-known{background:var(--bg-card);border:2px solid var(--success)}.tt-dot-learnable{background:var(--bg-secondary);border:2px solid var(--info);opacity:.65}.tt-dot-hinted{background:var(--bg-primary);border:2px dashed var(--text-muted);opacity:.5}.placement-panel{padding:8px;font-size:13px}.placement-header{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--text-primary)}.placement-active{color:var(--accent);font-weight:400;font-size:12px}.placement-catalog{display:flex;flex-direction:column;gap:4px}.placement-option{text-align:left;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:12px;cursor:pointer;transition:background .15s}.placement-option:hover{background:var(--bg-tertiary, #333);border-color:var(--accent)}.placement-confirm{padding:12px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px}.placement-confirm-title{font-size:14px;font-weight:600;margin-bottom:4px;color:var(--text-primary)}.placement-confirm-desc{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.placement-name-input{width:100%;padding:6px 10px;margin-bottom:8px;background:var(--bg-primary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:12px}.placement-confirm-btns{display:flex;gap:6px}.placement-build-btn{flex:1;padding:8px;background:var(--accent);color:#fff;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer}.placement-build-btn:hover{background:var(--accent-hover)}.placement-cancel-btn{flex:1;padding:8px;background:var(--bg-tertiary, #333);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;font-size:12px;cursor:pointer}.placement-map-area{margin-top:8px}.placement-map-grid{display:grid;grid-template-columns:repeat(11,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:4px;overflow:hidden;position:relative}.placement-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);font-size:10px;position:relative;transition:background .1s}.placement-cell.hover:not(.occupied){background:var(--accent-dim, rgba(108, 99, 255, .15));outline:2px solid var(--accent);outline-offset:-2px}.placement-cell.occupied{background:var(--bg-tertiary, #333)}.placement-player{color:var(--accent);font-weight:700;font-size:12px}.placement-building{color:var(--warning);font-weight:700}.placement-ghost{color:var(--accent);opacity:.5;font-size:12px;font-weight:600}.placement-radius{position:absolute;border-radius:50%;pointer-events:none;border:1px dashed rgba(255,255,255,.3)}.placement-info{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);padding:4px 0;margin-top:4px}.placement-radius-label{font-weight:600}@media(max-width:768px){.placement-option{min-height:44px;font-size:13px;padding:10px 14px}.placement-build-btn,.placement-cancel-btn{min-height:44px;font-size:14px}.placement-cell{min-width:24px;min-height:24px}}.fst-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#080810f2;z-index:1000}[data-theme=light] .fst-backdrop{background:#f5f5f7f2}.fst-canvas-container{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.fst-canvas{width:100%;height:100%;cursor:grab}.fst-canvas:active{cursor:grabbing}.fst-close{position:absolute;top:16px;right:16px;width:40px;height:40px;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;font-size:18px;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s;z-index:1002}.fst-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.fst-search{position:absolute;top:16px;left:16px;width:250px;padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-ui);color:var(--text-primary);outline:none;z-index:1002;transition:border-color .15s}.fst-search:focus{border-color:var(--accent)}.fst-search::placeholder{color:var(--text-muted)}.fst-era-pills{position:absolute;top:16px;left:50%;transform:translate(-50%);display:flex;gap:4px;z-index:1002;flex-wrap:wrap;justify-content:center;max-width:80vw}.fst-era-pill{padding:3px 8px;font-size:9px;font-family:var(--font-ui);font-weight:600;border-radius:12px;cursor:pointer;border:none;text-transform:uppercase;letter-spacing:.05em;transition:background .15s,color .15s}.fst-era-pill.inactive{background:var(--bg-card);color:var(--text-muted)}.fst-era-pill.inactive:hover{background:var(--bg-card-hover);color:var(--text-secondary)}.fst-zoom{position:absolute;bottom:16px;right:16px;display:flex;flex-direction:column;gap:4px;z-index:1002}.fst-zoom button{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:background .15s}.fst-zoom button:hover{background:var(--bg-card-hover);border-color:var(--border-focus)}.fst-zoom button:active{transform:scale(.95)}.fst-legend{position:absolute;bottom:16px;left:16px;display:flex;gap:12px;align-items:center;font-size:10px;font-family:var(--font-ui);color:var(--text-muted);background:#080810cc;padding:6px 12px;border-radius:var(--radius-sm);z-index:1002}[data-theme=light] .fst-legend{background:#f5f5f7d9}.fst-legend-item{display:flex;align-items:center;gap:4px}.fst-legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.fst-legend-dot.known{background:var(--success)}.fst-legend-dot.adjacent{border:2px solid var(--accent);background:transparent}.fst-legend-dot.researching{border:2px solid var(--warning);background:transparent}.fst-legend-dot.fog{background:var(--text-muted);opacity:.3}.fst-detail{position:absolute;right:16px;top:60px;width:280px;max-height:calc(100vh - 120px);overflow-y:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;z-index:1002;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.fst-detail::-webkit-scrollbar{width:4px}.fst-detail::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.fst-detail-name{font-family:var(--font-ui);font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.fst-detail-era{display:inline-block;padding:2px 8px;font-size:9px;font-weight:600;border-radius:10px;text-transform:uppercase;letter-spacing:.05em;color:#fff;margin-bottom:8px}.fst-detail-section{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.fst-detail-section-label{font-size:9px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.fst-detail-list{font-size:11px;color:var(--text-secondary);line-height:1.6}.fst-detail-list li{margin-left:12px;list-style:disc}.fst-detail-progress{margin-top:6px}.fst-detail-progress-bar{height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden;margin-top:4px}.fst-detail-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .6s ease}.fst-detail-contributors{font-size:10px;color:var(--text-muted);margin-top:4px}.fst-detail-known-by{font-size:10px;color:var(--success);margin-top:4px}.fst-show-filter{position:absolute;top:50px;left:16px;display:flex;gap:4px;z-index:1002}.fst-show-filter button{padding:3px 8px;font-size:9px;font-family:var(--font-ui);border-radius:12px;border:none;cursor:pointer;transition:background .15s}.fst-show-filter button.active{background:var(--accent);color:#fff}.fst-show-filter button:not(.active){background:var(--bg-card);color:var(--text-muted)}@media(max-width:768px){.fst-search{width:calc(100vw - 80px);left:8px;top:8px}.fst-close{top:8px;right:8px;width:36px;height:36px}.fst-era-pills{top:48px;left:8px;transform:none;max-width:calc(100vw - 16px);overflow-x:auto}.fst-detail{right:8px;top:auto;bottom:60px;width:calc(100vw - 16px);max-height:40vh}.fst-zoom button{width:44px;height:44px}.fst-legend{left:8px;bottom:8px;font-size:9px;gap:8px}}:root{--bg-primary: #080810;--bg-secondary: #101018;--bg-card: #181824;--bg-card-hover: #242434;--bg-input: #131320;--bg-tertiary: #2a2a3a;--border: #2e2e44;--border-focus: #5050a0;--text-primary: #eaeaf2;--text-secondary: #a0a0b8;--text-muted: #6e6e88;--accent: #7c7fff;--accent-hover: #9b9eff;--accent-dim: #4f46e5;--danger: #ef4444;--warning: #f59e0b;--success: #22c55e;--info: #3b82f6;--health: #ef4444;--hunger: #f59e0b;--thirst: #3b82f6;--stamina: #22c55e;--warmth: #f97316;--fatigue: #a855f7;--morale: #ec4899;--font-body: "Georgia", "Times New Roman", serif;--font-mono: "Fira Code", "Cascadia Code", "Consolas", monospace;--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius: 8px;--radius-sm: 4px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{font-family:var(--font-ui);cursor:pointer;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);padding:8px 16px;border-radius:var(--radius-sm);transition:background .15s,border-color .15s}button:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-focus)}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}input,select,textarea{font-family:var(--font-ui);background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);padding:8px 12px;border-radius:var(--radius-sm);outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px}[data-theme=light]{--bg-primary: #f5f5f7;--bg-secondary: #eaeaef;--bg-card: #ffffff;--bg-card-hover: #f0f0f5;--bg-input: #f8f8fb;--border: #d0d0d8;--border-focus: #9090b0;--text-primary: #1a1a2e;--text-secondary: #505068;--text-muted: #8080a0;--accent: #4f46e5;--accent-hover: #6366f1;--accent-dim: #3730a3;--bg-tertiary: #d8d8e0;--health: #dc2626;--hunger: #d97706;--thirst: #2563eb;--stamina: #16a34a;--warmth: #ea580c;--fatigue: #9333ea;--morale: #db2777}@keyframes pulse-critical{0%,to{opacity:1}50%{opacity:.5}}.draggable-panel.minimized *,[hidden] *{animation-play-state:paused!important}@media(max-width:768px){.senses-panel{padding:8px;font-size:14px}.senses-poi-grid{grid-template-columns:1fr!important}.senses-poi-card{min-height:44px}.senses-player-actions,.senses-animal-actions{flex-wrap:wrap;gap:4px}.senses-player-actions button,.senses-animal-actions button{min-height:44px;font-size:12px;flex:1;min-width:80px}.senses-ambient{flex-direction:column}.senses-touch{flex-wrap:wrap;gap:4px}.stats-panel{padding:6px}.stats-core-grid{grid-template-columns:repeat(2,1fr)!important;gap:4px}.stats-skills-list{max-height:200px}.inv-panel{padding:6px}.inv-sort-btns{flex-wrap:wrap;gap:4px}.inv-sort-btns button{min-height:36px}.inv-item{padding:8px}.inv-item-actions{flex-wrap:wrap;gap:4px}.inv-item-actions button{min-height:44px;font-size:12px}.chat-panel{padding:4px}.chat-tabs{flex-wrap:wrap;gap:2px}.chat-tab{min-height:36px;font-size:11px;padding:4px 8px}.chat-input-row{gap:4px}.chat-input-row input{min-height:44px}.chat-input-row button{min-height:44px;min-width:60px}.combat-panel{padding:6px}.combat-actions{flex-wrap:wrap;gap:4px}.combat-action-btn{min-height:50px;font-size:13px;flex:1;min-width:70px}.combat-targets{flex-direction:column;gap:4px}.combat-target{min-height:44px}.combat-body-parts{grid-template-columns:repeat(2,1fr)!important;gap:4px}.crafting-inventory{gap:4px}.crafting-item{min-height:44px;padding:8px 12px}.crafting-try-btn{min-height:50px;font-size:14px}.trade-panel{padding:6px}.trade-tabs{flex-wrap:wrap;gap:2px}.trade-tab{min-height:36px;font-size:11px}.trade-proposal{flex-direction:column;gap:8px}.trade-offer-items,.trade-request-items{min-height:80px}.trade-action-btns{flex-direction:column;gap:4px}.trade-action-btns button{min-height:44px}.map-grid{font-size:10px}.map-cell{min-width:24px;min-height:24px}.map-legend{flex-wrap:wrap;gap:4px;font-size:10px}.settlement-panel{padding:6px}.settlement-buildings{grid-template-columns:1fr!important}.settlement-build-btn{min-height:44px;font-size:12px}.agri-plots,.agri-animals{grid-template-columns:1fr!important}.agri-btn{min-height:44px;font-size:12px}.lb-tabs{flex-wrap:wrap;gap:2px}.lb-tab{min-height:36px;font-size:11px}button{min-height:36px}.diplo-tabs,.crime-tabs,.ent-filters,.nuclear-tabs,.factory-tabs,.naval-tabs,.vehicle-tabs,.knowledge-tabs,.econ-tabs,.cave-tabs{flex-wrap:wrap;gap:4px}.diplo-tab,.crime-tab,.ent-filter,.nuclear-tab,.factory-tab,.naval-tab,.vehicle-tab,.knowledge-tab,.econ-tab,.cave-tab{font-size:11px;padding:6px 10px;min-height:44px}.diplo-panel{padding:4px}.diplo-treaty-parties{font-size:12px}.diplo-relation{flex-direction:column;gap:6px}.diplo-relation-actions{flex-wrap:wrap;gap:4px}.diplo-btn{min-height:44px;font-size:12px;padding:8px 12px}.diplo-war-stats{flex-direction:column;gap:2px}.crime-panel{padding:4px}.crime-card-actions{flex-wrap:wrap;gap:4px}.crime-btn,.bounty-card button{min-height:44px;font-size:12px}.trial-vote{flex-direction:column;gap:4px}.apprentice-panel{padding:4px}.apprentice-names{flex-direction:column;gap:2px}.apprentice-recipe-list{flex-wrap:wrap}.apprentice-btn{min-height:44px;font-size:12px}.edu-panel{padding:4px}.edu-header{flex-direction:column;gap:4px}.edu-bonuses{flex-wrap:wrap;gap:6px}.edu-subjects{flex-wrap:wrap}.edu-btn{min-height:44px;font-size:12px;width:100%}.ent-panel{padding:4px}.ent-header{flex-direction:column;gap:4px}.ent-details{flex-wrap:wrap;gap:6px;font-size:11px}.ent-btn{min-height:44px;font-size:12px}.sub-panel{padding:4px}.sub-header{flex-direction:column;gap:4px}.sub-effects{flex-wrap:wrap;gap:4px}.sub-footer{flex-direction:column;gap:4px}.sub-btn{min-height:44px;font-size:12px;width:100%}.prop-panel{padding:4px}.prop-stats{flex-wrap:wrap;gap:4px;font-size:11px}.prop-meta{flex-wrap:wrap;gap:6px}.prop-btn{min-height:44px;font-size:12px}.trade-panel{padding:4px}.trade-goods{flex-direction:column;gap:4px}.trade-stats{flex-wrap:wrap;gap:6px;font-size:11px}.trade-btn{min-height:44px;font-size:12px;width:100%}.naval-panel{padding:4px}.naval-stats{flex-direction:column;gap:4px}.naval-compass{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.naval-dir,.naval-action-btn{min-height:44px;font-size:12px}.vehicle-panel{padding:4px}.vehicle-gauges{flex-direction:column;gap:8px}.flight-instruments{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.vehicle-btn{min-height:44px;font-size:12px}.airport-schedule{overflow-x:auto}.airport-row{min-width:400px}.knowledge-panel{padding:4px}.knowledge-item{flex-direction:column;gap:2px}.reader-body{font-size:13px;line-height:1.5}.knowledge-btn{min-height:44px;font-size:12px}.law-form{gap:8px}.law-content-input{min-height:120px}.econ-panel{padding:4px}.econ-listing{flex-direction:column;gap:4px}.econ-listing-right{flex-direction:row;justify-content:space-between}.econ-btn,.econ-buy-btn{min-height:44px;font-size:12px}.econ-bank-form{flex-direction:column;gap:4px}.factory-panel{padding:4px}.factory-stats{flex-direction:column;gap:2px;font-size:11px}.factory-btn{min-height:44px;font-size:12px}.railroad-stops{flex-wrap:wrap}.telegraph-compose{gap:6px}.nuclear-panel{padding:4px}.rad-details{flex-wrap:wrap;gap:6px;font-size:11px}.reactor-btn{min-height:44px;font-size:12px}.power-summary{flex-direction:column;gap:8px}.cave-panel{padding:4px}.cave-hazard-chips,.cave-creature-list{flex-wrap:wrap}.cave-exit-btns{flex-direction:column;gap:4px}.cave-btn,.cave-exit-btn{min-height:44px;font-size:12px}.weather-stats{flex-direction:column;gap:6px}.weather-mods{grid-template-columns:1fr 1fr;gap:4px}.injury-body-diagram{transform:scale(.85);transform-origin:top center}.injury-treat-btn{min-height:44px;font-size:12px}}
