:root{--color-bg-void: #060a14;--color-bg-primary: #0b1022;--color-bg-panel: rgba(10, 16, 34, .94);--color-bg-panel-header: rgba(16, 24, 48, .96);--color-bg-surface: rgba(20, 30, 56, .6);--color-bg-surface-hover: rgba(28, 40, 72, .7);--color-bg-surface-active: rgba(36, 52, 90, .8);--color-accent: #5baaff;--color-accent-hover: #7ec0ff;--color-accent-bright: #a8d8ff;--color-accent-dim: rgba(91, 170, 255, .15);--color-accent-glow: rgba(91, 170, 255, .35);--color-secondary: #8b6fff;--color-secondary-hover: #a48aff;--color-secondary-dim: rgba(139, 111, 255, .15);--color-secondary-glow: rgba(139, 111, 255, .35);--color-tertiary: #3df0d0;--color-tertiary-dim: rgba(61, 240, 208, .12);--color-danger: #ff4a5c;--color-danger-dim: rgba(255, 74, 92, .15);--color-danger-glow: rgba(255, 74, 92, .35);--color-success: #3dff88;--color-success-dim: rgba(61, 255, 136, .12);--color-warning: #ffb84a;--color-warning-dim: rgba(255, 184, 74, .12);--color-text-bright: #f0f4ff;--color-text: rgba(224, 232, 255, .87);--color-text-dim: rgba(160, 180, 220, .5);--color-text-muted: rgba(120, 140, 180, .35);--color-border: rgba(80, 130, 220, .2);--color-border-hover: rgba(91, 170, 255, .45);--color-border-bright: rgba(91, 170, 255, .65);--font-display: "Orbitron", sans-serif;--font-body: "Inter", sans-serif;--font-size-page-title: 2rem;--font-size-panel-title: 1.125rem;--font-size-section-title: .75rem;--font-size-body-lg: .9375rem;--font-size-body: .8125rem;--font-size-body-sm: .75rem;--font-size-caption: .6875rem;--font-size-micro: .625rem;--font-size-button: .75rem;--font-size-button-sm: .625rem;--font-size-badge: .5625rem;--font-size-stat: .875rem;--space-2xs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-base: 16px;--space-lg: 20px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 8px;--radius-pill: 999px;--shadow-panel: 0 4px 24px rgba(0, 0, 0, .5);--shadow-dialog: 0 8px 32px rgba(0, 0, 0, .6);--shadow-tooltip: 0 4px 16px rgba(0, 0, 0, .5);--glow-accent: 0 0 8px rgba(91, 170, 255, .35);--glow-accent-strong: 0 0 16px rgba(91, 170, 255, .5);--glow-accent-inset: inset 0 0 20px rgba(91, 170, 255, .05);--glow-danger: 0 0 8px rgba(255, 74, 92, .35);--glow-secondary: 0 0 8px rgba(139, 111, 255, .35);--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .3s ease;--transition-slide-in: .2s cubic-bezier(.16, 1, .3, 1);--transition-slide-out: .15s ease-in;--font-size-xs: .7rem;--font-size-sm: .8rem;--font-size-md: .95rem;--font-size-lg: 1.2rem;--font-size-xl: 1.6rem;--font-size-title: 2.4rem;--space-md-legacy: 16px;--border-radius: var(--radius-md);--panel-shadow: var(--shadow-panel)}@keyframes glow-pulse{0%,to{box-shadow:0 0 8px var(--glow-color, rgba(91, 170, 255, .2))}50%{box-shadow:0 0 16px var(--glow-color, rgba(91, 170, 255, .45))}}@keyframes slot-fill{0%{transform:scale(.9);opacity:.5}60%{transform:scale(1.02);opacity:1}to{transform:scale(1);opacity:1}}@keyframes error-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-from-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes scale-in{0%{transform:translate(-50%,-50%) scale(.95);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes scanline{0%{top:-2px}to{top:100%}}@keyframes header-breathe{0%,to{border-bottom-color:var(--color-border)}50%{border-bottom-color:var(--color-border-hover)}}@keyframes data-flow{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes stagger-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes edge-flash{0%{border-color:var(--color-accent-bright);box-shadow:0 0 20px #5baaff66}to{border-color:var(--color-border);box-shadow:var(--shadow-panel)}}@keyframes energy-sweep{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(200%) skew(-15deg)}}@keyframes select-pulse{0%{box-shadow:0 0 #5baaff99}50%{box-shadow:0 0 0 8px #5baaff00}to{box-shadow:0 0 #5baaff00}}@keyframes border-travel{0%{background-position:0% 0%}to{background-position:300% 0%}}@keyframes holo-materialize{0%{transform:scaleX(1.03) scaleY(.97);opacity:0;filter:blur(2px)}40%{transform:scaleX(.99) scaleY(1.01);opacity:1;filter:blur(0)}to{transform:scale(1);opacity:1;filter:blur(0)}}@keyframes wipe-in{0%{transform:scaleX(0);opacity:1}to{transform:scaleX(1);opacity:0}}@keyframes slide-out-right{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes scale-out{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(.95);opacity:0}}@keyframes holo-dematerialize{0%{transform:scale(1);opacity:1;filter:blur(0)}60%{transform:scaleX(.99) scaleY(1.01);opacity:.7;filter:blur(0)}to{transform:scaleX(1.03) scaleY(.97);opacity:0;filter:blur(2px)}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes value-bump{0%{transform:scale(1)}30%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes power-cycle{0%{filter:brightness(1)}30%{filter:brightness(1.4)}to{filter:brightness(1)}}@keyframes charge-release{0%{box-shadow:0 0 #5baaff99}40%{box-shadow:0 0 20px 4px #5baaff80}to{box-shadow:var(--glow-accent-strong)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes card-scan{0%{top:0}to{top:100%}}@keyframes digit-flip{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@keyframes charge-complete{0%{filter:brightness(2);box-shadow:0 0 20px var(--color-accent-bright)}50%{filter:brightness(1.5);box-shadow:0 0 8px var(--color-success)}to{filter:brightness(1);box-shadow:none}}@keyframes planet-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes planet-glow-pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}@keyframes idle-ambient{0%,to{box-shadow:0 0 #5baaff00;border-bottom-color:var(--color-border)}50%{box-shadow:0 0 12px #5baaff14;border-bottom-color:#5baaff4d}}.panel{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);font-family:var(--font-body);color:var(--color-text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:relative}.panel:before,.panel:after{content:"";position:absolute;width:12px;height:12px;pointer-events:none;z-index:1}.panel:before{top:-1px;left:-1px;border-top:2px solid var(--color-accent);border-left:2px solid var(--color-accent);border-radius:var(--radius-md) 0 0 0}.panel:after{bottom:-1px;right:-1px;border-bottom:2px solid var(--color-accent);border-right:2px solid var(--color-accent);border-radius:0 0 var(--radius-md) 0}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-base);background:var(--color-bg-panel-header);border-bottom:1px solid var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;animation:header-breathe 4s ease-in-out infinite}.panel-title{font-family:var(--font-display);font-size:var(--font-size-panel-title);font-weight:700;color:var(--color-text-bright);letter-spacing:.06em;text-transform:uppercase;line-height:1.3}.panel-close{background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-dim);cursor:pointer;font-size:var(--font-size-body-sm);padding:var(--space-xs) var(--space-sm);transition:all var(--transition-base)}.panel-close:hover{color:var(--color-danger);border-color:var(--color-danger);box-shadow:var(--glow-danger)}.panel-body{padding:var(--space-base);position:relative;overflow:hidden}.panel-body:after{content:"";position:absolute;left:0;top:-2px;width:100%;height:2px;background:linear-gradient(90deg,transparent,rgba(91,170,255,.15),transparent);animation:scanline 8s linear infinite;pointer-events:none;z-index:1}.panel-side>.panel-body,.panel-dialog>.panel-body{overflow-y:auto;flex:1;min-height:0}.panel-side{position:absolute;right:var(--space-base);top:50px;width:320px;max-height:calc(100vh - 120px);display:flex;flex-direction:column;z-index:20;pointer-events:auto;animation:slide-from-right var(--transition-slide-in),edge-flash .6s ease-out}.panel-fullscreen{position:absolute;top:0;right:0;bottom:0;left:0;background:#080c1cf7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:30;pointer-events:auto;animation:fade-in var(--transition-base);border:none;border-radius:0;box-shadow:none}.panel-fullscreen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.04) 0px,rgba(0,0,0,.04) 1px,transparent 1px,transparent 3px);pointer-events:none;z-index:1}.panel-fullscreen:after{display:none}.panel-fullscreen>.panel-header:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--color-accent-bright),transparent);transform-origin:left;animation:wipe-in .4s ease-out forwards;pointer-events:none}.panel-fullscreen>.panel-body{max-width:1200px;margin:0 auto;padding:var(--space-base);height:calc(100vh - 104px);overflow-y:auto}.panel-fullscreen>.panel-body:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(91,170,255,.02) 0px,rgba(91,170,255,.02) 1px,transparent 1px,transparent 60px),repeating-linear-gradient(60deg,rgba(91,170,255,.02) 0px,rgba(91,170,255,.02) 1px,transparent 1px,transparent 60px),repeating-linear-gradient(120deg,rgba(91,170,255,.02) 0px,rgba(91,170,255,.02) 1px,transparent 1px,transparent 60px);pointer-events:none;z-index:0}.panel-fullscreen>.panel-body>*{opacity:0;animation:stagger-in .3s ease-out forwards}.panel-fullscreen>.panel-body>*:nth-child(1){animation-delay:0ms}.panel-fullscreen>.panel-body>*:nth-child(2){animation-delay:50ms}.panel-fullscreen>.panel-body>*:nth-child(3){animation-delay:.1s}.panel-fullscreen>.panel-body>*:nth-child(4){animation-delay:.15s}.panel-fullscreen>.panel-body>*:nth-child(5){animation-delay:.2s}.panel-fullscreen>.panel-body>*:nth-child(n+6){animation-delay:.25s}.panel-dialog{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:480px;width:calc(100vw - 32px);max-height:80vh;display:flex;flex-direction:column;z-index:40;pointer-events:auto;box-shadow:var(--shadow-dialog);animation:scale-in var(--transition-base)}.modal-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:45;pointer-events:auto;animation:fade-in var(--transition-base)}.modal-overlay>.panel{max-width:480px;width:calc(100vw - 32px);max-height:80vh;overflow-y:visible;box-shadow:var(--shadow-dialog);animation:holo-materialize .25s ease-out;position:relative;left:auto;top:auto;transform:none}.btn{font-family:var(--font-display);font-size:var(--font-size-button);font-weight:600;padding:6px var(--space-base);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-accent-dim);color:var(--color-accent);cursor:pointer;transition:all var(--transition-base);letter-spacing:.04em;text-transform:uppercase;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transform:translate(-100%) skew(-15deg);transition:none;pointer-events:none}.btn:hover:before{animation:energy-sweep .4s ease-out}.btn:hover{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent);box-shadow:var(--glow-accent)}.btn:active{transform:scale(.98);box-shadow:var(--glow-accent-strong)}.btn:disabled{opacity:.4;cursor:default;pointer-events:none}.btn-primary{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent);font-weight:700}.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);box-shadow:var(--glow-accent-strong)}.btn-secondary{background:var(--color-secondary-dim);color:var(--color-secondary);border-color:#8b6fff4d}.btn-secondary:hover{background:var(--color-secondary);color:var(--color-bg-primary);border-color:var(--color-secondary);box-shadow:var(--glow-secondary)}.btn-danger{background:var(--color-danger-dim);color:var(--color-danger);border-color:#ff4a5c4d}.btn-danger:hover{background:var(--color-danger);color:var(--color-bg-primary);border-color:var(--color-danger);box-shadow:var(--glow-danger)}.btn-ghost{background:none;border-color:transparent;color:var(--color-text-dim)}.btn-ghost:hover{background:var(--color-bg-surface);border-color:var(--color-border);color:var(--color-text);box-shadow:none}.btn-xs{font-size:var(--font-size-button-sm);padding:var(--space-xs) var(--space-sm);height:24px}.btn-sm{font-size:var(--font-size-button-sm);padding:var(--space-xs) var(--space-md);height:28px}.btn-lg{font-size:var(--font-size-button);padding:var(--space-sm) var(--space-xl);height:40px;letter-spacing:.05em}.btn-icon{width:32px;height:32px;padding:0}.btn-icon.btn-xs{width:24px;height:24px}.btn-icon.btn-sm{width:28px;height:28px}.btn-icon.btn-lg{width:40px;height:40px}.section-title{font-family:var(--font-display);font-size:var(--font-size-section-title);font-weight:600;color:var(--color-text-dim);letter-spacing:.05em;text-transform:uppercase;line-height:1.4;margin-bottom:var(--space-sm);padding-bottom:var(--space-xs);position:relative}.section-title:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--color-accent-glow),rgba(91,170,255,.12),transparent);pointer-events:none}.card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);transition:all var(--transition-base)}.card:hover{background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);box-shadow:var(--glow-accent)}.card-selected{background:var(--color-bg-surface-active);border-color:var(--color-border-bright);box-shadow:var(--glow-accent),var(--glow-accent-inset);animation:select-pulse .4s ease-out}.card-disabled{opacity:.4;pointer-events:none}.card-completed{background:var(--color-success-dim);border-color:#3dff8866}.card-in-progress{background:var(--color-accent-dim);border-color:transparent;position:relative;overflow:hidden}.card-in-progress:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(90deg,var(--color-border) 0%,var(--color-accent-bright) 15%,var(--color-accent) 30%,var(--color-border) 45%,var(--color-border) 100%);background-size:300% 100%;border-radius:inherit;z-index:-1;animation:border-travel 3s linear infinite}.card-in-progress:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--color-accent-dim);border-radius:calc(var(--radius-md) - 1px);z-index:-1}.card-locked{opacity:.35}.card-fork-locked{background:var(--color-danger-dim);opacity:.35}.card-accent{border-left:3px solid var(--card-accent-color, var(--color-accent))}.badge{display:inline-flex;align-items:center;padding:2px var(--space-sm);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--font-size-badge);font-weight:500;line-height:1.2;white-space:nowrap;border:1px solid transparent}.badge-sm{padding:1px 6px;font-size:.5rem}.badge-accent{background:var(--color-accent-dim);color:var(--color-accent);border-color:#5baaff4d}.badge-success{background:var(--color-success-dim);color:var(--color-success);border-color:#3dff884d}.badge-danger{background:var(--color-danger-dim);color:var(--color-danger);border-color:#ff4a5c4d}.badge-warning{background:var(--color-warning-dim);color:var(--color-warning);border-color:#ffb84a4d}.badge-secondary{background:var(--color-secondary-dim);color:var(--color-secondary);border-color:#8b6fff4d}.badge-tertiary{background:var(--color-tertiary-dim);color:var(--color-tertiary);border-color:#3df0d04d}.badge-neutral{background:#a0b4dc14;color:var(--color-text-dim);border-color:#a0b4dc26}.progress-bar{width:100%;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.progress-bar-thick{height:8px;border-radius:4px}.progress-bar-fill{height:100%;border-radius:inherit;transition:width var(--transition-slow);background:var(--progress-color, var(--color-accent));position:relative;overflow:hidden}.progress-bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.25),transparent);border-radius:inherit;pointer-events:none}.list-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs) var(--space-md);border-bottom:1px solid rgba(80,130,220,.1);transition:background var(--transition-base);font-size:var(--font-size-body)}.list-item:hover{background:var(--color-bg-surface-hover)}.list-item:last-child{border-bottom:none}.list-item-active{border-left:3px solid var(--color-accent);background:var(--color-accent-dim)}.toggle-group{display:flex;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.toggle-group-btn{padding:var(--space-sm) var(--space-base);border:none;border-right:1px solid var(--color-border);background:transparent;font-family:var(--font-display);font-size:var(--font-size-button-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-dim);cursor:pointer;transition:all var(--transition-base)}.toggle-group-btn:last-child{border-right:none}.toggle-group-btn:hover{background:var(--color-bg-surface-hover);color:var(--color-text)}.toggle-group-btn.active{background:var(--color-accent-dim);color:var(--color-accent);box-shadow:inset 0 0 12px var(--color-accent-dim)}.segmented-control{display:flex;background:var(--color-bg-surface);border-radius:var(--radius-pill);padding:2px;border:1px solid var(--color-border)}.segmented-control-btn{padding:var(--space-xs) var(--space-md);border:none;border-radius:var(--radius-pill);background:transparent;font-family:var(--font-body);font-size:var(--font-size-body-sm);font-weight:500;color:var(--color-text-dim);cursor:pointer;transition:all var(--transition-base)}.segmented-control-btn.active{background:var(--color-accent);color:var(--color-bg-primary);box-shadow:var(--glow-accent)}.stepper{display:flex;align-items:center}.stepper-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text);font-family:var(--font-body);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.stepper-btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.stepper-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.stepper-btn:hover{background:var(--color-bg-surface-hover);border-color:var(--color-border-hover);box-shadow:var(--glow-accent)}.stepper-btn:disabled{opacity:.3;cursor:default;pointer-events:none}.stepper-value{min-width:36px;text-align:center;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);font-family:var(--font-display);font-size:var(--font-size-stat);font-weight:700;color:var(--color-text-bright);height:28px;display:flex;align-items:center;justify-content:center}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--space-sm)}.slot-empty{border:2px dashed var(--color-border);background:transparent;min-height:80px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-caption);cursor:pointer;transition:all var(--transition-base)}.slot-empty:hover{border-color:var(--color-border-hover);background:var(--color-accent-dim);color:var(--color-text-dim)}.slot-filled{border:1px solid var(--color-border);background:var(--color-bg-surface);min-height:80px;border-radius:var(--radius-md);padding:var(--space-sm);cursor:pointer;transition:all var(--transition-base);animation:slot-fill .2s ease-out}.slot-filled:hover{border-color:var(--color-border-hover);background:var(--color-bg-surface-hover);box-shadow:var(--glow-accent)}.input-styled{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-base);font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text);transition:border-color var(--transition-base),box-shadow var(--transition-base);outline:none}.input-styled::placeholder{color:var(--color-text-muted)}.input-styled:focus{border-color:var(--color-border-bright);box-shadow:var(--glow-accent)}.select-styled{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-base);padding-right:32px;font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text);cursor:pointer;transition:border-color var(--transition-base),box-shadow var(--transition-base);outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%235baaff' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.select-styled:focus{border-color:var(--color-border-bright);box-shadow:var(--glow-accent)}.tab-bar{display:flex;border-bottom:1px solid var(--color-border);gap:0}.tab-bar-item{padding:var(--space-sm) var(--space-base);font-family:var(--font-display);font-size:var(--font-size-button-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-dim);border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;transition:all var(--transition-base)}.tab-bar-item:hover{color:var(--color-text);background:var(--color-bg-surface-hover)}.tab-bar-item.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.back-button{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-display);font-size:var(--font-size-button-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-dim);background:none;border:none;cursor:pointer;padding:var(--space-xs) var(--space-sm);transition:color var(--transition-base)}.back-button:hover{color:var(--color-accent)}.tooltip{position:absolute;background:var(--color-bg-panel-header);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);max-width:280px;box-shadow:var(--shadow-tooltip);font-family:var(--font-body);font-size:var(--font-size-body-sm);color:var(--color-text);z-index:100;pointer-events:none;animation:fade-in .1s ease}.icon-sm,.icon-md,.icon-lg,.icon-xl{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1}.icon-sm{font-size:12px;width:12px;height:12px}.icon-md{font-size:16px;width:16px;height:16px}.icon-lg{font-size:20px;width:20px;height:20px}.icon-xl{font-size:24px;width:24px;height:24px}.resource-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) var(--space-base);background:var(--color-bg-panel);border-bottom:1px solid var(--color-border);font-family:var(--font-body);font-size:var(--font-size-body-sm);color:var(--color-text-dim);min-height:40px;z-index:50;position:relative;overflow:hidden}.resource-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(91,170,255,.04) 45%,rgba(91,170,255,.08) 50%,rgba(91,170,255,.04) 55%,transparent 100%);background-size:200% 100%;animation:data-flow 6s linear infinite;pointer-events:none}.resource-bar .game-title{font-family:var(--font-display);font-size:var(--font-size-body-sm);font-weight:700;color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase}.resource-bar .turn-display{font-family:var(--font-display);font-size:var(--font-size-caption);color:var(--color-text-dim)}.resource-bar-group{display:flex;align-items:center;gap:var(--space-base)}.resource-bar-stat{display:flex;align-items:center;gap:6px}.resource-bar-label{font-size:var(--font-size-caption);color:var(--color-text-dim)}.game-hud{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;padding:var(--space-base);pointer-events:none;z-index:50}.game-hud-left,.game-hud-right{display:flex;gap:var(--space-sm);pointer-events:auto}.map-legend{position:absolute;bottom:60px;right:var(--space-base);pointer-events:auto;z-index:15}.map-legend-panel{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.map-legend-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-display);font-size:var(--font-size-caption);font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:var(--space-xs) var(--space-sm);cursor:pointer;transition:color var(--transition-base)}.map-legend-toggle:hover{color:var(--color-accent)}.map-legend-content{padding:6px var(--space-sm)}.map-legend-section{margin-bottom:6px}.map-legend-section:last-child{margin-bottom:0}.map-legend-section-title{font-family:var(--font-display);font-size:var(--font-size-micro);font-weight:600;color:var(--color-text);letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}.map-legend-item{display:flex;align-items:center;font-size:var(--font-size-caption);color:var(--color-text-dim);padding:1px 0}.map-legend-swatch{width:16px;height:16px;margin-right:var(--space-sm);flex-shrink:0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-bright)}.event-description a{color:var(--color-accent);text-decoration:underline}.event-description strong{color:var(--color-text-bright)}.event-description em{font-style:italic}.event-description p{margin:0 0 var(--space-sm) 0}.event-description p:last-child{margin-bottom:0}.panel-side.panel-closing{animation:slide-out-right .15s ease-in forwards}.panel-fullscreen.panel-closing{animation:fade-out .15s ease-in forwards}.panel-dialog.panel-closing{animation:scale-out .15s ease-in forwards}.modal-overlay.panel-closing{animation:modal-fade-out .15s ease-in forwards}.modal-overlay.panel-closing>.panel{animation:holo-dematerialize .15s ease-in forwards}.value-increased{color:var(--color-success)!important;animation:value-bump .4s ease-out}.value-decreased{color:var(--color-danger)!important;animation:value-bump .4s ease-out}.hud-power-cycle{animation:power-cycle .4s ease-out}.btn-charging{animation:charge-release .3s ease-out}.spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}.spinner-sm{width:16px;height:16px;border-width:1.5px}.spinner-lg{width:32px;height:32px;border-width:3px}:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-accent),0 0 12px #5baaff4d}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-accent),var(--glow-accent-strong)}.btn-primary:focus-visible{box-shadow:0 0 0 2px var(--color-accent-bright),var(--glow-accent-strong)}.btn-danger:focus-visible{box-shadow:0 0 0 2px var(--color-danger),var(--glow-danger)}.card:focus-visible{outline:none;border-color:var(--color-border-bright);box-shadow:0 0 0 2px var(--color-accent),var(--glow-accent)}.tab-bar-item:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--color-accent),0 0 8px #5baaff33}.toggle-group-btn:focus-visible,.segmented-control-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-accent)}.input-styled:focus-visible,.select-styled:focus-visible{outline:none;border-color:var(--color-border-bright);box-shadow:var(--glow-accent)}.card:not(.card-in-progress){position:relative}.card:not(.card-in-progress):after{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--color-accent-bright),transparent);opacity:0;pointer-events:none;z-index:1}.card:not(.card-in-progress):hover:after{opacity:1;animation:card-scan .6s ease-out}.list-stagger>*{opacity:0;animation:stagger-in .2s ease-out forwards}.list-stagger>*:nth-child(1){animation-delay:0ms}.list-stagger>*:nth-child(2){animation-delay:30ms}.list-stagger>*:nth-child(3){animation-delay:60ms}.list-stagger>*:nth-child(4){animation-delay:90ms}.list-stagger>*:nth-child(5){animation-delay:.12s}.list-stagger>*:nth-child(6){animation-delay:.15s}.list-stagger>*:nth-child(7){animation-delay:.18s}.list-stagger>*:nth-child(n+8){animation-delay:.21s}.turn-flip-container{display:inline-flex;overflow:hidden;height:1.2em;vertical-align:bottom}.turn-flip-inner{display:flex;flex-direction:column;transition:none}.turn-flip-inner.flipping{animation:digit-flip .3s ease-out forwards}.progress-bar-complete .progress-bar-fill{animation:charge-complete .5s ease-out;background:var(--color-success)}.section-title:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;border-left:1px solid var(--color-accent-glow);border-bottom:1px solid var(--color-accent-glow);transform:translateY(-50%);pointer-events:none}.section-title{padding-left:14px}.resource-bar.hud-idle{animation:idle-ambient 8s ease-in-out infinite}.game-hud.hud-idle .btn{transition:all var(--transition-base),box-shadow 4s ease-in-out}.tooltip-arrow{position:absolute;width:0;height:0;border:6px solid transparent}.tooltip-arrow-down{bottom:-12px;border-top-color:var(--color-border)}.tooltip-arrow-up{top:-12px;border-bottom-color:var(--color-border)}.planet-mgmt-layout{display:grid;grid-template-columns:1fr 1fr;gap:0;height:100%}.planet-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:calc(100vh - 140px);margin:calc(-1 * var(--space-base));margin-right:0;border-radius:0}.planet-hero__starfield{position:absolute;top:0;right:0;bottom:0;left:0;background-repeat:repeat;background-size:auto;z-index:0}.planet-hero__glow{position:absolute;width:120%;height:120%;border-radius:50%;filter:blur(80px);opacity:.25;animation:planet-glow-pulse 4s ease-in-out infinite;pointer-events:none;z-index:1;top:-10%;left:-10%}.planet-hero__image{width:140%;max-width:none;aspect-ratio:1;object-fit:contain;animation:planet-bob 8s ease-in-out infinite;position:absolute;top:-20%;left:-25%;z-index:2;filter:drop-shadow(0 0 40px rgba(91,170,255,.2))}.planet-hero__info{position:relative;z-index:3;text-align:center;padding:var(--space-xl) var(--space-base) var(--space-lg);background:linear-gradient(to top,rgba(2,2,4,.95) 0%,rgba(2,2,4,.6) 60%,transparent 100%);width:100%}.planet-hero__name{font-family:var(--font-display);font-size:var(--font-size-page-title);font-weight:800;color:var(--color-text-bright);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-xs);text-shadow:0 2px 12px rgba(0,0,0,.8)}.planet-hero__subtitle{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text-dim);text-shadow:0 1px 4px rgba(0,0,0,.8)}.planet-mgmt-content{overflow-y:auto;max-height:calc(100vh - 140px);padding:0 var(--space-base) 0 var(--space-xl)}@media(max-width:1200px){.planet-mgmt-layout{grid-template-columns:1fr}.planet-hero{min-height:300px;max-height:40vh;margin:calc(-1 * var(--space-base));margin-bottom:var(--space-base)}.planet-hero__image{width:120%;top:-30%;left:-15%}.planet-mgmt-content{max-height:none;padding:0}}@media(max-height:800px){.planet-hero__name{font-size:1.5rem}.planet-hero__image{width:130%;top:-15%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:1600px){.panel-side{width:340px}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.card{padding:var(--space-base)}}@media(min-width:1920px){.panel-side{width:360px}.panel-fullscreen>.panel-body{padding:var(--space-3xl) var(--space-base);max-width:1400px}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.resource-bar-stat{font-size:var(--font-size-body)}.resource-bar .turn-display{font-size:var(--font-size-body-sm)}.btn-lg{height:44px;font-size:var(--font-size-body-sm)}}
