:root{--color-bg-base: #0b0d12;--color-bg-surface: #11141c;--color-bg-elevated: #181d28;--color-bg-hover: #1e2532;--color-bg-active: #232c3d;--color-bg-overlay: rgba(8, 10, 16, .78);--color-border-subtle: rgba(255, 255, 255, .06);--color-border-default: rgba(255, 255, 255, .1);--color-border-strong: rgba(255, 255, 255, .18);--color-border-focus: #ffd866;--color-fg-primary: #e7eaf0;--color-fg-secondary: #a8b3c4;--color-fg-tertiary: #6b7488;--color-fg-muted: #4a5365;--color-fg-inverse: #0b0d12;--color-accent-amber: #ffd866;--color-accent-amber-soft: rgba(255, 216, 102, .16);--color-accent-amber-hover: #ffe085;--color-accent-amber-active: #f0c648;--color-accent-blue: #7ad1ff;--color-accent-green: #7fe1a3;--color-accent-red: #ff8a5b;--color-faction-concord: #4f6896;--color-faction-trust: #c8d0d8;--color-faction-iron-quorum: #8a8a8e;--color-faction-cartographers: #6da06b;--color-faction-drift-compact: #c8a85a;--color-faction-resurfaced: #2a2a32;--color-faction-neutral: #ff8a5b;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;--font-display: 32px;--font-title: 20px;--font-subtitle: 14px;--font-body: 14px;--font-small: 12px;--font-tiny: 10px;--line-tight: 1.2;--line-body: 1.5;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 14px;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.4, 0, 1, 1);--motion-hover: .1s;--motion-click: 80ms;--motion-modal: .16s;--motion-scene: .2s;--ink: #060608;--ink-2: #0c0d11;--brass: #e8b24a;--brass-bright: #ffdb93;--brass-dim: #b88a36;--teal: #62b6a6;--ember: #d2693f;--paper: #ece4d2;--paper-dim: #9a9286;--paper-mute: #5e5a52;--font-serif: "Fraunces", Georgia, "Times New Roman", serif;--font-data: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0;margin:0}input,textarea,select{font:inherit;color:inherit}.btn{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--font-body);font-weight:500;font-family:var(--font-sans);font-feature-settings:"cv11","ss01","ss03";border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;user-select:none;white-space:nowrap;transition:background var(--motion-hover) var(--ease-default),transform var(--motion-click) var(--ease-default),border-color var(--motion-hover) var(--ease-default),box-shadow var(--motion-hover) var(--ease-default),color var(--motion-hover) var(--ease-default)}.btn:focus{outline:none}.btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn[disabled]{cursor:not-allowed;pointer-events:none;opacity:.45}.btn--primary{background:var(--color-accent-amber);color:var(--color-fg-inverse);font-weight:600}.btn--primary:hover{background:var(--color-accent-amber-hover);transform:translateY(-1px);box-shadow:0 4px 14px #ffd86638}.btn--primary:active{background:var(--color-accent-amber-active);transform:translateY(0)}.btn--secondary{background:transparent;color:var(--color-fg-primary);border-color:var(--color-border-default)}.btn--secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.btn--secondary:active{background:var(--color-bg-active)}.btn--ghost{background:transparent;color:var(--color-fg-secondary);border-color:var(--color-border-subtle)}.btn--ghost:hover{background:var(--color-bg-hover);color:var(--color-fg-primary);border-color:var(--color-border-default)}.btn--destructive{background:transparent;color:var(--color-accent-red);border-color:#ff8a5b4d}.btn--destructive:hover{background:#ff8a5b1a;border-color:var(--color-accent-red)}.btn--sm{padding:var(--space-1) var(--space-3);font-size:var(--font-small)}.btn--lg{padding:var(--space-3) var(--space-5);font-size:var(--font-subtitle)}.btn--block{width:100%;justify-content:space-between}.kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 var(--space-1);font-family:var(--font-mono);font-size:var(--font-tiny);font-weight:500;background:#ffffff14;color:var(--color-fg-secondary);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);box-shadow:inset 0 -1px #00000040;letter-spacing:.02em;white-space:nowrap}.btn--primary .kbd{background:#0000002e;color:#000000b8;border-color:#0003;box-shadow:inset 0 -1px #0000002e}.kbd--multi{gap:var(--space-1)}@media(hover:none)and (pointer:coarse){.kbd{display:none}}.badge{display:inline-flex;align-items:center;padding:1px var(--space-2);font-size:var(--font-tiny);font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid transparent}.badge--info{background:#7ad1ff26;color:var(--color-accent-blue);border-color:#7ad1ff4d}.badge--success{background:#7fe1a326;color:var(--color-accent-green);border-color:#7fe1a34d}.badge--warning{background:var(--color-accent-amber-soft);color:var(--color-accent-amber);border-color:#ffd8664d}.badge--danger{background:#ff8a5b26;color:var(--color-accent-red);border-color:#ff8a5b4d}.badge--neutral{background:#ffffff0f;color:var(--color-fg-secondary);border-color:var(--color-border-default)}.list{display:flex;flex-direction:column;gap:2px;outline:none}.list-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:background var(--motion-hover) ease;outline:none}.list-row:hover{background:var(--color-bg-hover)}.list-row[aria-selected=true]{background:var(--color-bg-elevated);border-color:var(--color-border-default);box-shadow:inset 3px 0 0 var(--color-accent-amber)}.list-row[aria-disabled=true]{opacity:.5;cursor:not-allowed}.list-row-main{flex:1;min-width:0}.list-row-title{font-weight:500;color:var(--color-fg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-row-meta{font-size:var(--font-small);color:var(--color-fg-secondary);margin-top:2px}.list-row-side{display:flex;align-items:center;gap:var(--space-3);color:var(--color-fg-tertiary);font-size:var(--font-small)}.ui-overlay-root{position:absolute;inset:0;pointer-events:none;font-family:var(--font-sans);color:var(--color-fg-primary)}.modal-backdrop{position:absolute;inset:0;background:var(--color-bg-overlay);backdrop-filter:blur(6px) saturate(.8);-webkit-backdrop-filter:blur(6px) saturate(.8);pointer-events:auto;animation:backdropEnter var(--motion-modal) ease-out}.modal-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:480px;max-width:min(900px,92vw);max-height:86vh;display:flex;flex-direction:column;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);box-shadow:0 0 0 1px #0006,0 24px 60px #00000080,0 4px 12px #0000004d;overflow:hidden;animation:modalEnter var(--motion-modal) var(--ease-default)}.modal-card--wide{min-width:720px}.modal-card--full{min-width:0;max-width:96vw;width:96vw;max-height:92vh;height:92vh}.modal-header{padding:var(--space-5) var(--space-5) var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.modal-header-title{font-size:var(--font-title);font-weight:600;color:var(--color-fg-primary);margin:0;line-height:var(--line-tight);letter-spacing:.01em}.modal-header-subtitle{font-size:var(--font-subtitle);color:var(--color-fg-secondary);margin:var(--space-2) 0 0;line-height:var(--line-body)}.modal-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5)}.modal-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border-subtle);background:#0000002e;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.modal-footer--between{justify-content:space-between}.input{display:block;width:100%;padding:var(--space-2) var(--space-3);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-fg-primary);font-size:var(--font-body);font-family:var(--font-sans);transition:border-color var(--motion-hover) ease}.input:focus{outline:none;border-color:var(--color-border-focus)}.input::placeholder{color:var(--color-fg-tertiary)}.slider{-webkit-appearance:none;appearance:none;width:100%;height:4px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--color-accent-amber);border-radius:50%;cursor:pointer;transition:transform var(--motion-hover) ease}.slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider::-moz-range-thumb{width:16px;height:16px;background:var(--color-accent-amber);border-radius:50%;cursor:pointer;border:none}.toggle{position:relative;display:inline-block;width:36px;height:20px;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:10px;cursor:pointer;transition:background var(--motion-hover) ease}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--color-fg-tertiary);border-radius:50%;transition:transform var(--motion-hover) ease,background var(--motion-hover) ease}.toggle[aria-checked=true]{background:var(--color-accent-amber-soft);border-color:var(--color-accent-amber)}.toggle[aria-checked=true]:after{transform:translate(16px);background:var(--color-accent-amber)}.surface-title{font-size:var(--font-title);font-weight:600;letter-spacing:.01em;color:var(--color-fg-primary)}.surface-subtitle{font-size:var(--font-subtitle);color:var(--color-fg-secondary)}.surface-section-title{font-size:var(--font-small);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-fg-tertiary);margin-bottom:var(--space-2)}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.split-2{display:grid;grid-template-columns:minmax(280px,1fr) 2fr;gap:var(--space-5);min-height:0}.split-3{display:grid;grid-template-columns:1fr 2fr 1fr;gap:var(--space-4);min-height:0}.button-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}@keyframes backdropEnter{0%{opacity:0}to{opacity:1}}@keyframes modalEnter{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.flight-prompt{position:absolute;left:50%;bottom:48px;transform:translate(-50%);pointer-events:none;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#080a10b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-fg-primary);font-size:var(--font-body);z-index:5}.sof-title{--sof-ink: #060608;--sof-ink-2: #0c0d11;--sof-brass: #e8b24a;--sof-brass-bright: #ffdb93;--sof-teal: #62b6a6;--sof-ember: #d2693f;--sof-paper: #ece4d2;--sof-paper-dim: #9a9286;--sof-paper-mute: #5e5a52;--sof-disp: "Fraunces", Georgia, "Times New Roman", serif;--sof-mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;position:absolute;inset:0;pointer-events:auto;overflow:hidden;background:var(--sof-ink);color:var(--sof-paper);-webkit-font-smoothing:antialiased;isolation:isolate}.sof-title__void{position:absolute;inset:0;z-index:0;background:radial-gradient(120% 80% at 68% 46%,rgba(232,178,74,.1),transparent 55%),radial-gradient(90% 70% at 50% 118%,rgba(210,105,63,.16),transparent 60%),radial-gradient(140% 100% at 50% -20%,rgba(98,182,166,.05),transparent 55%),linear-gradient(180deg,#07070a,#0a0a0e 55%,#060608)}.sof-title__void:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 240px 60px #000000d9;pointer-events:none}.sof-orrery{position:absolute;z-index:1;top:50%;left:70%;width:min(118vh,1000px);height:min(118vh,1000px);transform:translate(-50%,-50%);opacity:0;animation:sof-orrery-in 2.4s cubic-bezier(.16,1,.3,1) .15s forwards;pointer-events:none}.sof-orrery__spokes line{stroke:#e8b24a0f;stroke-width:1}.sof-orrery__orbit ellipse{fill:none;stroke:#e8b24a38;stroke-width:.8}.sof-orrery__orbit--3 ellipse{stroke:#62b6a633}.sof-orrery__body{fill:var(--sof-brass-bright);filter:drop-shadow(0 0 6px rgba(232,178,74,.9))}.sof-orrery__body--teal{fill:#bdeee2;filter:drop-shadow(0 0 6px rgba(98,182,166,.9))}.sof-orrery__orbit{transform-origin:0 0}.sof-orrery__orbit--1{animation:sof-spin 38s linear infinite}.sof-orrery__orbit--2{animation:sof-spin-rev 70s linear infinite}.sof-orrery__orbit--3{animation:sof-spin 116s linear infinite}.sof-orrery__orbit--4{animation:sof-spin-rev 184s linear infinite}.sof-orrery__star{transform-origin:0 0;animation:sof-breathe 7s ease-in-out infinite}.sof-orrery__core{fill:#fff6e2;filter:drop-shadow(0 0 14px rgba(243,194,103,.95))}.sof-title__grain{position:absolute;inset:-10%;z-index:3;pointer-events:none;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");animation:sof-grain .9s steps(2) infinite}.sof-title__frame{position:absolute;inset:0;z-index:4;pointer-events:none}.sof-title__tick{position:absolute;width:22px;height:22px;border:1px solid rgba(232,178,74,.4);opacity:0;animation:sof-fade 1.2s ease 1.1s forwards}.sof-title__tick--tl{top:26px;left:26px;border-right:0;border-bottom:0}.sof-title__tick--tr{top:26px;right:26px;border-left:0;border-bottom:0}.sof-title__tick--bl{bottom:26px;left:26px;border-right:0;border-top:0}.sof-title__tick--br{bottom:26px;right:26px;border-left:0;border-top:0}.sof-title__coord{position:absolute;left:50%;transform:translate(-50%);font-family:var(--sof-mono);font-size:10px;letter-spacing:.32em;color:var(--sof-paper-mute);opacity:0;animation:sof-fade 1.2s ease 1.3s forwards}.sof-title__coord--top{top:30px}.sof-title__coord--bottom{bottom:31px}.sof-title__stage{position:relative;z-index:5;height:100%;width:min(560px,50vw);margin-left:clamp(40px,9vw,150px);display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,4vh,44px)}.sof-title__head{display:flex;flex-direction:column}.sof-title__eyebrow{margin:0 0 18px;font-family:var(--sof-mono);font-size:11px;font-weight:500;letter-spacing:.42em;text-transform:uppercase;color:var(--sof-brass);display:flex;align-items:center;gap:12px;opacity:0;animation:sof-rise .9s cubic-bezier(.16,1,.3,1) .2s forwards}.sof-title__eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--sof-brass);box-shadow:0 0 10px 1px #e8b24ae6;animation:sof-blink 3.4s ease-in-out infinite}.sof-title__wordmark{margin:0;font-family:var(--sof-disp);line-height:.86;font-weight:400}.sof-title__word{display:block}.sof-title__word--1{font-size:clamp(34px,5.2vw,62px);font-style:italic;font-weight:400;color:var(--sof-paper-dim);letter-spacing:.005em;padding-left:.06em;opacity:0;animation:sof-rise 1s cubic-bezier(.16,1,.3,1) .32s forwards}.sof-title__word--2{font-size:clamp(74px,12.5vw,158px);font-weight:500;letter-spacing:-.012em;color:var(--sof-paper);text-shadow:0 2px 0 rgba(0,0,0,.4),0 18px 60px rgba(232,178,74,.22);-webkit-text-stroke:.4px rgba(255,219,147,.25);opacity:0;animation:sof-rise 1.1s cubic-bezier(.16,1,.3,1) .42s forwards}.sof-title__tagline{margin:22px 0 0;max-width:30em;font-family:var(--sof-disp);font-size:15px;font-weight:300;line-height:1.62;color:var(--sof-paper-dim);opacity:0;animation:sof-rise 1s cubic-bezier(.16,1,.3,1) .58s forwards}.sof-title__ledger{display:flex;flex-direction:column;border-top:1px solid rgba(232,178,74,.14)}.sof-row{position:relative;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:18px;padding:17px 14px 17px 18px;border:0;border-bottom:1px solid rgba(232,178,74,.14);background:transparent;color:inherit;text-align:left;cursor:pointer;font-family:var(--sof-mono);transition:background .25s ease,padding-left .25s ease;opacity:0;animation:sof-rise .8s cubic-bezier(.16,1,.3,1) forwards}.sof-row:nth-child(1){animation-delay:.66s}.sof-row:nth-child(2){animation-delay:.76s}.sof-row:nth-child(3){animation-delay:.86s}.sof-row__rule{position:absolute;left:0;top:50%;width:2px;height:0;background:var(--sof-brass);box-shadow:0 0 10px #e8b24acc;transform:translateY(-50%);transition:height .3s cubic-bezier(.16,1,.3,1)}.sof-row__idx{font-size:12px;letter-spacing:.1em;color:var(--sof-paper-mute);transition:color .25s ease,text-shadow .25s ease;align-self:start;padding-top:4px}.sof-row__body{display:flex;flex-direction:column;gap:4px}.sof-row__label{font-size:17px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--sof-paper);transition:color .25s ease,letter-spacing .25s ease}.sof-row--primary .sof-row__label{color:var(--sof-brass-bright)}.sof-row__kicker{font-size:11px;letter-spacing:.06em;color:var(--sof-paper-mute)}.sof-row__cue{font-size:16px;color:var(--sof-paper-mute);transform:translate(-6px);opacity:0;transition:opacity .25s ease,transform .25s ease,color .25s ease}.sof-row:not(:disabled):hover,.sof-row.is-focused:not(:disabled){background:linear-gradient(90deg,rgba(232,178,74,.08),transparent 80%);padding-left:26px}.sof-row:not(:disabled):hover .sof-row__rule,.sof-row.is-focused:not(:disabled) .sof-row__rule{height:64%}.sof-row:not(:disabled):hover .sof-row__idx,.sof-row.is-focused:not(:disabled) .sof-row__idx{color:var(--sof-brass);text-shadow:0 0 8px rgba(232,178,74,.6)}.sof-row:not(:disabled):hover .sof-row__label,.sof-row.is-focused:not(:disabled) .sof-row__label{letter-spacing:.2em}.sof-row:not(:disabled):hover .sof-row__cue,.sof-row.is-focused:not(:disabled) .sof-row__cue{opacity:1;transform:translate(0);color:var(--sof-brass)}.sof-row:disabled{cursor:default;opacity:.4}.sof-row:focus-visible{outline:1px solid rgba(232,178,74,.5);outline-offset:-1px}.sof-title__warn{max-width:36em;padding:11px 14px;border-left:2px solid var(--sof-ember);background:#d2693f14;font-family:var(--sof-mono);font-size:12px;line-height:1.5;color:var(--sof-paper-dim)}.sof-title__foot{display:flex;align-items:center;gap:24px;font-family:var(--sof-mono);font-size:11px;letter-spacing:.08em;color:var(--sof-paper-mute);opacity:0;animation:sof-rise .9s ease 1s forwards}.sof-title__ver{letter-spacing:.18em}@keyframes sof-spin{to{transform:rotate(360deg)}}@keyframes sof-spin-rev{to{transform:rotate(-360deg)}}@keyframes sof-breathe{0%,to{opacity:.72;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes sof-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes sof-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes sof-fade{to{opacity:1}}@keyframes sof-orrery-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.86) rotate(-8deg)}to{opacity:.85;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes sof-grain{0%{transform:translate(0)}to{transform:translate(-6%,4%)}}@media(max-width:720px){.sof-orrery{left:86%;opacity:.5}.sof-title__stage{width:auto;margin-right:32px}}@media(prefers-reduced-motion:reduce){.sof-title *,.sof-orrery *{animation-duration:.01ms!important;animation-iteration-count:1!important}.sof-orrery{opacity:.85}}.landed-hub{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-5);align-items:start;height:100%}.landed-hub--v2{display:flex;flex-direction:column;gap:var(--space-4);height:100%}.landed-hub__top{display:grid;grid-template-columns:220px 1fr;gap:var(--space-5);align-items:start}.landed-hub__portrait{width:220px;height:220px;flex-shrink:0}.landed-hub__services{min-width:0}.landed-hub__services-grid{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;column-gap:var(--space-3);row-gap:8px;margin-top:var(--space-2)}.landed-hub__autosave-note{margin-top:var(--space-3)}.landed-hub__description{min-width:0}.landed-hub__description-text{font-size:var(--font-body);line-height:var(--line-body);color:var(--color-fg-secondary);margin:0}.planet-summary p{font-size:var(--font-body);line-height:var(--line-body);color:var(--color-fg-secondary);margin:0 0 var(--space-3)}.planet-summary-meta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-4)}.market-controls{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border-subtle);margin-top:var(--space-3)}.market-table{width:100%;border-collapse:collapse;font-size:var(--font-body)}.market-table th,.market-table td{padding:var(--space-2) var(--space-3);text-align:left}.market-table th{font-size:var(--font-small);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-fg-tertiary);border-bottom:1px solid var(--color-border-subtle)}.market-table tbody tr{border-bottom:1px solid var(--color-border-subtle);cursor:pointer;transition:background var(--motion-hover) ease}.market-table tbody tr:hover{background:var(--color-bg-hover)}.market-table tbody tr[aria-selected=true]{background:var(--color-bg-elevated);box-shadow:inset 3px 0 0 var(--color-accent-amber)}.price-tier{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:var(--font-small);font-weight:500}.price-tier--very-low{color:var(--color-accent-green)}.price-tier--low{color:#b5e1bf}.price-tier--average{color:var(--color-fg-secondary)}.price-tier--high{color:#ffc4a8}.price-tier--very-high{color:var(--color-accent-red)}.surface-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.surface-header-stats{display:flex;gap:var(--space-4);font-size:var(--font-small);color:var(--color-fg-secondary)}.surface-header-stats strong{color:var(--color-fg-primary);font-weight:500}.navigator{display:flex;flex-direction:column;height:100%;min-height:0}.navigator-tabs{display:flex;gap:var(--space-2);padding:0 var(--space-3);margin-bottom:var(--space-3)}.tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;color:var(--color-fg-secondary);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-body);cursor:pointer;transition:color var(--motion-hover) ease,background var(--motion-hover) ease,border-color var(--motion-hover) ease}.tab:hover{color:var(--color-fg-primary);background:var(--color-bg-hover)}.tab[aria-selected=true]{color:var(--color-fg-primary);background:var(--color-bg-elevated);border-color:var(--color-border-default)}.navigator-body{flex:1;min-height:0;overflow:hidden}.navigator-map{width:100%;height:100%;cursor:grab}.navigator-map:active{cursor:grabbing}.synthesis-page{font-size:var(--font-subtitle);line-height:var(--line-body);color:var(--color-fg-primary);white-space:pre-wrap}.synthesis-page-title{font-size:var(--font-title);font-weight:600;color:var(--color-accent-amber);margin:0 0 var(--space-4)}.hud-overlay{position:fixed;inset:0;pointer-events:none;z-index:80}.hud-panel{position:absolute;background:linear-gradient(180deg,#0d0e13d9,#08090dd9);border:1px solid rgba(232,178,74,.22);border-radius:4px;padding:var(--space-2) var(--space-3);backdrop-filter:blur(9px) saturate(.9);-webkit-backdrop-filter:blur(9px) saturate(.9);font-family:var(--font-data);font-size:var(--font-small);box-shadow:0 8px 28px #00000073,inset 0 1px #ffe9be0d}.hud-panel--top-left{top:var(--space-3);left:var(--space-3);display:flex;flex-direction:column;gap:6px;min-width:260px}.hud-panel--top-right{top:var(--space-3);right:var(--space-3);max-width:360px;text-align:right;display:flex;flex-direction:column;gap:6px;padding-top:11px}.hud-panel--top-right:before{content:"";position:absolute;left:8px;right:8px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,178,74,.6),transparent)}.hud-panel--bottom-right{bottom:var(--space-3);right:var(--space-3);display:flex;flex-direction:row;align-items:center;gap:var(--space-2);padding:6px 10px}.hud-panel--bottom-center{bottom:var(--space-3);left:50%;transform:translate(-50%);display:flex;flex-direction:row;align-items:center;gap:4px;padding:5px 7px;pointer-events:auto}.hud-shortcut-button{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;background:transparent;color:var(--paper-dim);border:1px solid transparent;border-radius:3px;font-family:var(--font-data);font-size:var(--font-small);letter-spacing:.04em;cursor:pointer;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.hud-shortcut-button:hover{background:#e8b24a1a;border-color:#e8b24a73;color:var(--paper);box-shadow:0 0 16px -6px #e8b24a99}.hud-shortcut-button .kbd{background:#e8b24a1a;color:var(--brass-bright);border-color:#e8b24a42}.hud-shortcut-button--disabled,.hud-shortcut-button:disabled{opacity:.35;cursor:not-allowed;pointer-events:auto}.hud-shortcut-button--disabled:hover,.hud-shortcut-button:disabled:hover{background:transparent;border-color:transparent;color:var(--color-fg-secondary)}.hud-shortcut-label{font-size:var(--font-small)}.hud-panel--clickable{cursor:pointer}.hud-panel--clickable:hover{background:#7ad1ff14;border-color:#7ad1ff59}.hud-stat-row{display:grid;grid-template-columns:50px 1fr auto;gap:8px;align-items:center;font-size:var(--font-tiny)}.hud-stat-label{font-family:var(--font-data);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--paper-mute);font-weight:500}.hud-stat-bar{position:relative;height:8px;background:#00000080;border:1px solid rgba(232,178,74,.2);border-radius:2px;overflow:hidden}.hud-stat-bar-fill{position:absolute;inset:0 auto 0 0;border-radius:2px;transition:width .12s linear}.hud-stat-readout{font-family:var(--font-data);color:var(--paper);font-size:var(--font-tiny);min-width:64px;text-align:right}.hud-credits{font-family:var(--font-data);font-size:18px;letter-spacing:.02em;color:var(--brass-bright);font-weight:600;font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(232,178,74,.3)}.hud-objective-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.hud-objective-line{font-family:var(--font-data);font-size:var(--font-small);color:var(--paper-dim);line-height:1.4}.hud-objective-empty{font-family:var(--font-data);font-size:var(--font-tiny);letter-spacing:.1em;text-transform:uppercase;color:var(--paper-mute)}.hud-rep-label{color:var(--color-fg-tertiary);font-size:var(--font-tiny)}.hud-rep-dots{display:flex;gap:10px;align-items:center}.hud-rep-dot{display:inline-block;width:12px;height:12px;border-radius:50%}.modal-backdrop:has(.dock){background:radial-gradient(120% 86% at 50% 24%,rgba(232,178,74,.06),transparent 56%),radial-gradient(110% 90% at 50% 122%,rgba(210,105,63,.07),transparent 60%),var(--color-bg-overlay);backdrop-filter:blur(7px) saturate(.82) brightness(.9);-webkit-backdrop-filter:blur(7px) saturate(.82) brightness(.9)}.dock{--dock-accent: var(--brass);--dock-accent-bright: var(--brass-bright);--dock-flag: var(--brass);background:radial-gradient(135% 80% at 50% -12%,rgba(232,178,74,.07),transparent 58%),linear-gradient(180deg,#0d0e13,#0a0b10 58%,#08080b);border:1px solid rgba(232,178,74,.18);border-radius:var(--radius-lg);box-shadow:0 0 0 1px #0000008c,0 34px 90px #000000a3,0 0 60px -16px #e8b24a1f,inset 0 1px #ffe9be0f;isolation:isolate}.dock:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--dock-accent) 20%,var(--dock-accent-bright) 50%,var(--dock-accent) 80%,transparent);opacity:.75;z-index:6;pointer-events:none}.dock:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.32;mix-blend-mode:overlay;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");animation:sof-grain .9s steps(2) infinite}.dock>*{position:relative;z-index:2}.dock-frame{position:absolute;inset:0;z-index:5;pointer-events:none}.dock-frame>i{position:absolute;width:16px;height:16px;border:1px solid rgba(232,178,74,.42)}.dock-frame>i:nth-child(1){top:10px;left:10px;border-right:0;border-bottom:0}.dock-frame>i:nth-child(2){top:10px;right:10px;border-left:0;border-bottom:0}.dock-frame>i:nth-child(3){bottom:10px;left:10px;border-right:0;border-top:0}.dock-frame>i:nth-child(4){bottom:10px;right:10px;border-left:0;border-top:0}.dock .modal-header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid rgba(232,178,74,.14);background:linear-gradient(180deg,rgba(232,178,74,.05),transparent)}.dock-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-family:var(--font-data);font-size:10.5px;font-weight:500;letter-spacing:.34em;text-transform:uppercase;color:var(--dock-flag)}.dock-hint{position:relative;margin:0 0 14px;padding:11px 34px 12px 14px;border:1px solid rgba(232,178,74,.38);border-left:2px solid var(--brass);border-radius:4px;background:#e8b24a12}.dock-hint__eyebrow{font-family:var(--font-data);font-size:10px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--brass);margin-bottom:5px}.dock-hint__body{font-family:var(--font-serif, var(--font-data));font-size:13px;line-height:1.5;color:var(--paper)}.dock-hint__close{position:absolute;top:5px;right:7px;background:transparent;border:none;color:var(--paper-dim);font-size:16px;line-height:1;cursor:pointer;padding:2px 5px}.dock-hint__close:hover{color:var(--paper)}.dock-eyebrow__dot{width:6px;height:6px;border-radius:50%;background:var(--dock-flag);box-shadow:0 0 9px 1px color-mix(in srgb,var(--dock-flag) 80%,transparent);animation:sof-blink 3.6s ease-in-out infinite;flex:none}.dock-eyebrow__rule{flex:1;height:1px;background:linear-gradient(90deg,color-mix(in srgb,var(--dock-flag) 30%,transparent),transparent)}.dock .modal-header-title{font-family:var(--font-serif);font-optical-sizing:auto;font-weight:500;font-size:clamp(26px,3vw,34px);line-height:1.04;letter-spacing:-.012em;color:var(--paper);text-shadow:0 2px 0 rgba(0,0,0,.35),0 14px 40px rgba(232,178,74,.12)}.dock .modal-header-subtitle{font-family:var(--font-data);font-size:11.5px;letter-spacing:.04em;color:var(--paper-dim);margin-top:var(--space-2)}.dock .modal-body{padding:var(--space-5);color:var(--paper-dim)}.dock .modal-footer{padding:var(--space-3) var(--space-5);border-top:1px solid rgba(232,178,74,.14);background:#00000047}.dock .surface-section-title{display:flex;align-items:center;gap:8px;font-family:var(--font-data);font-size:10.5px;letter-spacing:.22em;color:var(--dock-accent);text-transform:uppercase}.dock .surface-section-title:before{content:"";width:12px;height:1px;background:var(--dock-accent);opacity:.6;flex:none}.dock .btn--primary{background:linear-gradient(180deg,#f4cd6e,#e2a93f);color:#2a1c05;font-weight:600;border:1px solid rgba(255,233,190,.4);box-shadow:inset 0 1px #fff7e080,0 1px #0000004d}.dock .btn--primary:hover{background:linear-gradient(180deg,#f8d685,#ecb44e);box-shadow:inset 0 1px #fff7e099,0 6px 20px #e8b24a4d}.dock .btn--secondary{color:var(--paper);border-color:#e8b24a42;background:#e8b24a05}.dock .btn--secondary:hover{background:#e8b24a17;border-color:#e8b24a80;box-shadow:0 0 18px -6px #e8b24a66}.dock .kbd{font-family:var(--font-data);background:#e8b24a1a;color:var(--brass-bright);border-color:#e8b24a3d}.dock .list-row{border-radius:var(--radius-sm)}.dock .list-row:hover{background:#e8b24a0d}.dock .list-row[aria-selected=true]{background:linear-gradient(90deg,#e8b24a1a,#e8b24a05);border-color:#e8b24a38;box-shadow:inset 3px 0 0 var(--dock-accent),0 0 24px -10px #e8b24a80}.dock .list-row-title{color:var(--paper)}.dock .list-row-meta,.dock .list-row-side{color:var(--paper-mute)}.dock .tab{font-family:var(--font-data);letter-spacing:.06em}.dock-data{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.dock[data-faction=concord]{--dock-flag: #7fa8e6}.dock[data-faction=iron_quorum]{--dock-flag: #bcc0c8}.dock[data-faction=cartographers]{--dock-flag: #8fd08a}.dock[data-faction=trust]{--dock-flag: #d9dee6}.dock[data-faction=drift_compact]{--dock-flag: #e8c45a}.dock[data-faction=resurfaced]{--dock-flag: #9a8fc0}.dock .modal-header{animation:sof-rise .5s cubic-bezier(.16,1,.3,1) .02s both}.dock .modal-body{animation:sof-rise .6s cubic-bezier(.16,1,.3,1) .08s both}.dock .modal-footer{animation:sof-rise .5s cubic-bezier(.16,1,.3,1) .14s both}@media(prefers-reduced-motion:reduce){.dock:after{animation:none}.dock .modal-header,.dock .modal-body,.dock .modal-footer{animation:none}}.dock-viewport{position:relative;display:grid;place-items:center;border:1px solid rgba(232,178,74,.24);border-radius:4px;background:radial-gradient(circle at 50% 36%,rgba(232,178,74,.08),transparent 62%),#07080c;box-shadow:inset 0 0 48px #000000a8,0 0 30px -14px #e8b24a66;overflow:hidden}.dock-viewport:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px);opacity:.5}.dock-viewport__cap{position:absolute;left:9px;right:9px;bottom:8px;display:flex;justify-content:space-between;font-family:var(--font-data);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-mute)}.planet-summary-meta{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.dock-flag-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--dock-flag) 45%,transparent);background:color-mix(in srgb,var(--dock-flag) 13%,transparent);color:var(--dock-flag);cursor:pointer;font:inherit;transition:background var(--motion-hover) ease,border-color var(--motion-hover) ease}.dock-flag-chip:hover{background:color-mix(in srgb,var(--dock-flag) 24%,transparent);border-color:color-mix(in srgb,var(--dock-flag) 72%,transparent)}.dock-flag-chip__hint{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:14px;height:14px;border:1px solid currentColor;border-radius:50%;font-family:var(--font-serif);font-size:11px;font-style:normal;font-weight:600;line-height:1;text-transform:none;opacity:.72}.dock-flag-chip:hover .dock-flag-chip__hint{opacity:1}.dock .btn--primary .kbd{background:#00000038;color:#000c;border-color:#00000047}.dock-standing{font-family:var(--font-data);font-size:11px;letter-spacing:.03em;color:var(--paper-dim)}.dock-standing__contested{color:var(--ember)}.dock-greeting{margin:16px 0 0;padding-left:14px;border-left:2px solid var(--dock-flag);font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:16px;line-height:1.5;color:var(--paper)}.dock-log{margin:14px 0 0;font-size:13.5px;line-height:1.64;color:var(--paper-dim)}.dock-advisory{margin-top:14px;display:flex;gap:12px;align-items:baseline;padding:10px 14px;border-left:2px solid var(--teal);background:#62b6a612;font-size:12.5px;line-height:1.5;color:var(--paper-dim)}.dock-advisory__tag{flex:none;font-family:var(--font-data);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal)}.dock-autosave{margin-top:14px;font-family:var(--font-data);font-size:10px;letter-spacing:.08em;color:var(--paper-mute)}.dock .market-table{font-family:var(--font-data)}.dock .market-table th{font-family:var(--font-data);font-size:9.5px;letter-spacing:.17em;color:var(--dock-accent);border-bottom:1px solid rgba(232,178,74,.22)}.dock .market-table td{color:var(--paper-dim)}.dock .market-table td:first-child{font-family:var(--font-sans);font-weight:500;color:var(--paper)}.dock .market-table tbody tr{border-bottom:1px solid rgba(232,178,74,.08)}.dock .market-table tbody tr:hover{background:#e8b24a0d}.dock .market-table tbody tr[aria-selected=true]{background:linear-gradient(90deg,rgba(232,178,74,.1),transparent 72%);box-shadow:inset 3px 0 0 var(--dock-accent)}.dock .surface-header-stats{font-family:var(--font-data);letter-spacing:.04em;color:var(--paper-mute)}.dock .surface-header-stats strong{color:var(--brass-bright);font-weight:600}.dock .input{background:#0000004d;border-color:#e8b24a2e;color:var(--paper);font-family:var(--font-data)}.dock .input:focus{border-color:#e8b24a80;outline:none}.dock .input::placeholder{color:var(--paper-mute)}.dock .tabular{font-family:var(--font-serif);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dock-shipname{font-family:var(--font-serif);font-weight:500;font-size:19px;letter-spacing:-.01em;color:var(--paper)}.dock-dialog{margin:10px 0 0;font-family:var(--font-serif);font-weight:400;font-size:16px;line-height:1.66;color:var(--paper);white-space:pre-wrap}.dock-confirm:after{animation:none}
