:root{font-family:LXGW WenKai,Noto Sans SC,Source Han Sans SC,PingFang SC,Microsoft YaHei,Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans Symbols,"Noto Sans Symbols 2",Segoe UI Symbol,Apple Symbols,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;line-height:1.5;font-weight:400;font-size:17px;--font-scale-factor: 1;--motion-micro: .16s;--motion-state: .24s;--motion-fast: var(--motion-micro);--motion-mid: var(--motion-state);--motion-slow: 1.2s;--motion-ease: cubic-bezier(.2, .7, .2, 1);--motion-breathe: 2.8s;--motion-scan: 2.2s;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-soft: 0 8px 18px rgba(6, 10, 16, .18);--shadow-mid: 0 18px 32px rgba(6, 10, 16, .22);--shadow-strong: 0 28px 48px rgba(6, 10, 16, .28);--surface-1: color-mix(in srgb, var(--panel-bg) 92%, transparent);--surface-2: color-mix(in srgb, var(--panel-bg) 82%, transparent);--bg: #0c1118;--bg-grad-1: rgba(72, 96, 140, .35);--bg-grad-2: rgba(78, 104, 152, .18);--bg-grad-3: rgba(10, 12, 18, .95);--text: #e7ebf3;--text-muted: #c9d2e2;--text-dim: #9aa7ba;--panel-bg: rgba(14, 20, 32, .94);--panel-border: rgba(115, 135, 165, .72);--ornate-border: none;--accent: #6b8dff;--gold: #f2b84c;--signal: #4fe5ff;--ark-accent: color-mix(in srgb, var(--accent) 70%, #8fd4ff);--ark-accent-2: color-mix(in srgb, var(--gold) 70%, #ffd9a3);--ark-line: color-mix(in srgb, var(--accent) 40%, transparent);--ark-glow: 0 0 18px color-mix(in srgb, var(--accent) 35%, transparent);--accent-strong: color-mix(in srgb, var(--accent) 78%, #ffffff);--accent-soft: color-mix(in srgb, var(--accent) 28%, transparent);--gold-soft: color-mix(in srgb, var(--gold) 28%, transparent);--panel-glow: color-mix(in srgb, var(--accent) 24%, transparent);--scifi-panel: none;--scifi-panel-alt: none;--scifi-panel-square: none;--scifi-progress-fill: linear-gradient( 90deg, color-mix(in srgb, var(--signal) 75%, #ffffff), color-mix(in srgb, var(--signal) 35%, var(--panel-bg)) );--scifi-progress-fill-enemy: linear-gradient( 90deg, color-mix(in srgb, var(--danger) 75%, #ffffff), color-mix(in srgb, var(--danger) 35%, var(--panel-bg)) );--scifi-progress-fill-neutral: linear-gradient( 90deg, color-mix(in srgb, var(--gold) 70%, #ffffff), color-mix(in srgb, var(--gold) 35%, var(--panel-bg)) );--scifi-progress-overlay: none;--scifi-crosshair: none;--scifi-crosshair-alt: none;--danger: #d46a6a;--danger-bg: color-mix(in srgb, var(--danger) 18%, transparent);--ok: #68d7a1;--ui-cut-size: 14px;--ui-control-radius: 10px;--ui-surface-border: color-mix(in srgb, var(--panel-border) 78%, transparent);--ui-surface-shadow: 0 14px 26px rgba(6, 12, 22, .3), inset 0 1px 0 rgba(255, 255, 255, .06), inset 0 0 0 1px color-mix(in srgb, var(--panel-border) 26%, transparent);--ui-surface-shadow-elevated: 0 22px 36px rgba(6, 12, 24, .38), 0 0 0 1px color-mix(in srgb, var(--panel-border) 46%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--gold) 12%, transparent);--ui-control-bg: linear-gradient(135deg, rgba(10, 16, 28, .35), transparent 65%), var(--scifi-panel-square), var(--input-text-bg);--ui-control-border: color-mix(in srgb, var(--panel-border) 72%, transparent);--ui-control-shadow: inset 0 0 12px rgba(8, 12, 22, .4), 0 8px 14px rgba(4, 8, 16, .2);--ui-control-shadow-focus: var(--input-focus-shadow);--ui-ghost-bg: linear-gradient(135deg, rgba(10, 16, 28, .26), transparent 62%), var(--scifi-panel-square), color-mix(in srgb, var(--panel-bg) 86%, transparent);--ui-ghost-border: color-mix(in srgb, var(--panel-border) 62%, transparent);--ui-ghost-shadow: 0 10px 18px color-mix(in srgb, var(--panel-glow) 32%, transparent);--ui-primary-bg: linear-gradient( 180deg, color-mix(in srgb, var(--accent-strong) 55%, transparent), color-mix(in srgb, var(--gold) 60%, transparent) ), var(--scifi-panel-alt);--ui-primary-border: color-mix(in srgb, var(--panel-border) 78%, transparent);--ui-primary-shadow: 0 10px 18px color-mix(in srgb, var(--accent) 25%, transparent), inset 0 0 10px color-mix(in srgb, #ffffff 18%, transparent);--ui-divider: color-mix(in srgb, var(--panel-border) 68%, transparent);--status-bg: color-mix(in srgb, var(--panel-bg) 80%, var(--accent) 12%);--input-bg: color-mix(in srgb, var(--panel-bg) 85%, var(--bg) 15%);--input-border: color-mix(in srgb, var(--panel-border) 75%, transparent);--chip-bg: color-mix(in srgb, var(--panel-bg) 88%, transparent);--chip-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--story-goal-bg: color-mix(in srgb, var(--panel-bg) 92%, transparent);--story-goal-border: color-mix(in srgb, var(--panel-border) 78%, transparent);--story-goal-text: var(--text);--story-goal-label: color-mix(in srgb, var(--text-dim) 80%, transparent);--milestone-bg-1: color-mix(in srgb, var(--panel-bg) 92%, transparent);--milestone-bg-2: color-mix(in srgb, var(--panel-bg) 72%, transparent);--milestone-border: color-mix(in srgb, var(--accent) 45%, transparent);--milestone-text: var(--text);--milestone-title: color-mix(in srgb, var(--text-dim) 80%, transparent);--milestone-shadow: rgba(14, 24, 40, .35);--card-bg: color-mix(in srgb, var(--panel-bg) 88%, transparent);--card-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--card-text: var(--text);--card-title: color-mix(in srgb, var(--text-dim) 80%, transparent);--badge-bg: color-mix(in srgb, var(--panel-bg) 90%, transparent);--badge-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--decision-bg: color-mix(in srgb, var(--panel-bg) 80%, transparent);--decision-border: color-mix(in srgb, var(--panel-border) 65%, transparent);--divider: var(--ui-divider);--empty-hint: var(--text-dim);--option-bg: linear-gradient( 180deg, color-mix(in srgb, var(--panel-bg) 92%, transparent), color-mix(in srgb, var(--panel-bg) 70%, transparent) );--option-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--option-text: var(--text);--option-hover-bg: linear-gradient( 180deg, color-mix(in srgb, var(--panel-bg) 98%, transparent), color-mix(in srgb, var(--panel-bg) 78%, transparent) );--option-hover-border: color-mix(in srgb, var(--accent) 65%, transparent);--option-hover-shadow: 0 18px 36px rgba(8, 18, 36, .32), 0 0 22px color-mix(in srgb, var(--accent) 32%, transparent);--option-index-bg: linear-gradient( 180deg, color-mix(in srgb, var(--accent) 65%, transparent), color-mix(in srgb, var(--gold) 45%, transparent) );--option-index-text: #f7f9ff;--option-index-border: color-mix(in srgb, var(--panel-border) 50%, transparent);--input-row-bg: linear-gradient( 180deg, color-mix(in srgb, var(--panel-bg) 92%, transparent), color-mix(in srgb, var(--panel-bg) 72%, transparent) );--input-row-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--input-dot: var(--accent);--input-text-bg: var(--input-bg);--input-text-border: var(--input-border);--input-placeholder: color-mix(in srgb, var(--text-muted) 75%, transparent);--input-focus-border: color-mix(in srgb, var(--accent) 70%, transparent);--input-focus-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent), 0 0 14px color-mix(in srgb, var(--accent) 35%, transparent);--input-button-bg: linear-gradient(180deg, var(--accent-strong), var(--gold));--input-button-border: color-mix(in srgb, var(--accent) 55%, var(--gold) 45%);--input-button-text: #f9fbff;--input-button-shadow: 0 16px 28px rgba(10, 20, 40, .35), 0 0 18px color-mix(in srgb, var(--accent) 35%, transparent);--input-button-hover-border: color-mix(in srgb, var(--accent) 70%, transparent);--input-button-hover-shadow: 0 10px 20px rgba(10, 20, 40, .25);--theme-toggle-bg: color-mix(in srgb, var(--panel-bg) 88%, transparent);--theme-toggle-border: color-mix(in srgb, var(--panel-border) 70%, transparent);--theme-toggle-text: var(--text);--toggle-width: clamp(120px, 18vw, 210px);--sky-top: color-mix(in srgb, #bcdcff 70%, var(--accent) 30%);--sky-mid: color-mix(in srgb, #8bbcf7 68%, var(--accent) 32%);--sky-bottom: color-mix(in srgb, #5a86d4 60%, var(--accent) 40%);--night-top: color-mix(in srgb, #24324a 76%, var(--accent) 24%);--night-mid: color-mix(in srgb, #141d2f 82%, var(--accent) 18%);--night-bottom: color-mix(in srgb, #0b111c 88%, var(--accent) 12%);--page-sky-top: var(--night-top);--page-sky-mid: var(--night-mid);--page-sky-bottom: var(--night-bottom);--toggle-sky-top: var(--sky-top);--toggle-sky-mid: var(--sky-mid);--toggle-sky-bottom: var(--sky-bottom);--toggle-night-top: var(--night-top);--toggle-night-mid: var(--night-mid);--toggle-night-bottom: var(--night-bottom);--toggle-sun: #f6c94a;--toggle-moon: #cbd5e1;--toggle-crater: rgba(150, 160, 175, .7);--progress-track: color-mix(in srgb, var(--panel-border) 55%, transparent);--progress-fill: linear-gradient(90deg, var(--accent-strong), var(--gold));--progress-glow: color-mix(in srgb, var(--accent) 25%, transparent);--scanline: color-mix(in srgb, var(--accent) 16%, transparent);--scanline-strong: color-mix(in srgb, var(--accent) 32%, transparent);--hud-grid: none;--hud-grid-fine: none;--hud-stripes: none;--hud-dots: radial-gradient( circle at 1px 1px, color-mix(in srgb, var(--panel-border) 40%, transparent) 0 1px, transparent 1px 12px );--noise-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");--story-text-bg: linear-gradient( 180deg, color-mix(in srgb, var(--panel-bg) 92%, transparent), color-mix(in srgb, var(--panel-bg) 72%, transparent) );--meta-group-bg: color-mix(in srgb, var(--panel-bg) 78%, transparent);--meta-group-border: color-mix(in srgb, var(--panel-border) 60%, transparent);--preview-filter: saturate(.95) contrast(1.05);color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-motion=light]{--motion-micro: .12s;--motion-state: .18s;--motion-fast: var(--motion-micro);--motion-mid: var(--motion-state);--motion-slow: .76s;--motion-breathe: 4.2s;--motion-scan: 3.4s}:root[data-motion=off]{--motion-micro: 0ms;--motion-state: 0ms;--motion-fast: 0ms;--motion-mid: 0ms;--motion-slow: 0ms;--motion-breathe: 0s;--motion-scan: 0s}:root[data-theme=light]{--bg: #f4f6fb;--bg-grad-1: rgba(204, 221, 248, .75);--bg-grad-2: rgba(216, 232, 255, .55);--bg-grad-3: rgba(248, 250, 255, 1);--text: #1c2431;--text-muted: #253246;--text-dim: #2f3e52;--panel-bg: rgba(244, 247, 252, .98);--panel-border: rgba(120, 140, 170, .78);--ui-control-border: color-mix(in srgb, var(--panel-border) 88%, transparent);--ui-control-shadow: inset 0 0 0 1px rgba(255, 255, 255, .48), 0 8px 16px rgba(70, 90, 120, .12);--ui-ghost-border: color-mix(in srgb, var(--panel-border) 82%, transparent);--ui-ghost-shadow: 0 10px 18px rgba(90, 110, 140, .12);--ui-primary-border: color-mix(in srgb, var(--accent) 55%, var(--panel-border) 45%);--ui-divider: color-mix(in srgb, var(--panel-border) 86%, transparent);--progress-track: color-mix(in srgb, var(--panel-border) 65%, transparent);--input-placeholder: color-mix(in srgb, var(--text) 74%, transparent);--page-sky-top: var(--sky-top);--page-sky-mid: var(--sky-mid);--page-sky-bottom: var(--sky-bottom)}:root[data-contrast=high]{--text: #f6f9ff;--text-muted: #e6eeff;--text-dim: #d2def7;--panel-border: rgba(176, 198, 232, .92);--ui-divider: color-mix(in srgb, var(--panel-border) 94%, transparent);--input-placeholder: color-mix(in srgb, var(--text) 86%, transparent)}:root[data-theme=light][data-contrast=high]{--text: #101828;--text-muted: #1f3048;--text-dim: #334a68;--panel-border: rgba(78, 102, 135, .88);--ui-divider: color-mix(in srgb, var(--panel-border) 96%, transparent);--input-placeholder: color-mix(in srgb, var(--text) 78%, transparent)}:root[data-palette=default]{--accent: #6b8dff;--gold: #f2b84c}:root[data-theme=dark][data-palette=warm]{--bg: #1b1413;--bg-grad-1: rgba(126, 87, 194, .32);--bg-grad-2: rgba(255, 183, 77, .18);--bg-grad-3: rgba(14, 10, 12, .95);--text: #f5efe9;--text-muted: #d2c4b8;--text-dim: #a08f84;--panel-bg: rgba(30, 22, 28, .86);--panel-border: rgba(160, 120, 210, .45);--accent: #7e57c2;--gold: #ffb74d}:root[data-theme=light][data-palette=warm]{--bg: #fff5ec;--bg-grad-1: rgba(255, 213, 179, .75);--bg-grad-2: rgba(222, 204, 255, .55);--bg-grad-3: rgba(255, 249, 242, 1);--text: #3a2a2a;--text-muted: #6a544b;--text-dim: #8c6f64;--panel-bg: rgba(255, 255, 255, .92);--panel-border: rgba(206, 186, 224, .8);--accent: #7e57c2;--gold: #ffb74d}:root[data-theme=dark][data-palette=pro]{--bg: #0f141c;--bg-grad-1: rgba(60, 80, 110, .35);--bg-grad-2: rgba(108, 122, 137, .18);--bg-grad-3: rgba(10, 12, 16, .95);--text: #e6ebf2;--text-muted: #b8c0cc;--text-dim: #8d98a8;--panel-bg: rgba(18, 24, 32, .86);--panel-border: rgba(108, 122, 137, .45);--accent: #ff6b6b;--gold: #6c7a89}:root[data-theme=light][data-palette=pro]{--bg: #f2f4f7;--bg-grad-1: rgba(210, 220, 232, .7);--bg-grad-2: rgba(230, 236, 244, .5);--bg-grad-3: rgba(248, 250, 252, 1);--text: #1f2a36;--text-muted: #4a5664;--text-dim: #6b7786;--panel-bg: rgba(255, 255, 255, .92);--panel-border: rgba(200, 210, 222, .8);--accent: #ff6b6b;--gold: #6c7a89}:root[data-theme=dark][data-palette=fantasy]{--bg: #1a2230;--bg-grad-1: rgba(46, 64, 87, .6);--bg-grad-2: rgba(212, 165, 106, .18);--bg-grad-3: rgba(12, 16, 24, .95);--text: #f2ece3;--text-muted: #d8cbbd;--text-dim: #b1a396;--panel-bg: rgba(20, 26, 36, .86);--panel-border: rgba(212, 165, 106, .55);--accent: #c73e1d;--gold: #d4a56a}:root[data-theme=light][data-palette=fantasy]{--bg: #f8f4e9;--bg-grad-1: rgba(212, 200, 168, .6);--bg-grad-2: rgba(199, 62, 29, .12);--bg-grad-3: rgba(251, 248, 240, 1);--text: #2f241c;--text-muted: #554535;--text-dim: #6f5e4d;--panel-bg: rgba(255, 253, 249, .96);--panel-border: rgba(190, 168, 134, .9);--accent: #c73e1d;--gold: #d4a56a}:root[data-theme=dark][data-palette=scifi]{--bg: #0b1220;--bg-grad-1: rgba(30, 144, 255, .3);--bg-grad-2: rgba(0, 255, 255, .18);--bg-grad-3: rgba(8, 10, 18, .95);--text: #e6f0ff;--text-muted: #b6c6e3;--text-dim: #8a9bb8;--panel-bg: rgba(10, 16, 28, .86);--panel-border: rgba(30, 144, 255, .45);--accent: #1e90ff;--gold: #ffd700;--scifi-panel: url(/Resources/rpg_ui/panel.png);--scifi-panel-alt: url(/Resources/rpg_ui/panel_alt.png);--scifi-panel-square: url(/Resources/rpg_ui/panel_square.png);--scifi-progress-fill: url(/Resources/rpg_ui/progress_fill.png);--scifi-progress-fill-enemy: url(/Resources/rpg_ui/progress_fill_enemy.png);--scifi-progress-fill-neutral: url(/Resources/rpg_ui/progress_fill_neutral.png);--scifi-progress-overlay: url(/Resources/rpg_ui/progress_overlay.png);--scifi-crosshair: url(/Resources/kenney_space_crosshair.png);--scifi-crosshair-alt: url(/Resources/kenney_space_crosshair_alt.png)}:root[data-theme=light][data-palette=scifi]{--bg: #f3f7ff;--bg-grad-1: rgba(30, 144, 255, .12);--bg-grad-2: rgba(0, 255, 255, .1);--bg-grad-3: rgba(249, 251, 255, 1);--text: #122033;--text-muted: #44536b;--text-dim: #6a7a92;--panel-bg: rgba(255, 255, 255, .92);--panel-border: rgba(170, 200, 240, .8);--accent: #1e90ff;--gold: #ffd700;--scifi-panel: url(/Resources/rpg_ui/panel.png);--scifi-panel-alt: url(/Resources/rpg_ui/panel_alt.png);--scifi-panel-square: url(/Resources/rpg_ui/panel_square.png);--scifi-progress-fill: url(/Resources/rpg_ui/progress_fill.png);--scifi-progress-fill-enemy: url(/Resources/rpg_ui/progress_fill_enemy.png);--scifi-progress-fill-neutral: url(/Resources/rpg_ui/progress_fill_neutral.png);--scifi-progress-overlay: url(/Resources/rpg_ui/progress_overlay.png);--scifi-crosshair: url(/Resources/kenney_space_crosshair.png);--scifi-crosshair-alt: url(/Resources/kenney_space_crosshair_alt.png)}:root[data-theme=dark][data-palette=mystery]{--bg: #0b0b0d;--bg-grad-1: rgba(255, 51, 51, .18);--bg-grad-2: rgba(120, 120, 120, .12);--bg-grad-3: rgba(8, 8, 10, .95);--text: #f0f0f0;--text-muted: #b8b8b8;--text-dim: #8e8e8e;--panel-bg: rgba(16, 16, 18, .86);--panel-border: rgba(90, 90, 90, .5);--accent: #ff3333;--gold: #b3b3b3}:root[data-theme=light][data-palette=mystery]{--bg: #f6f6f6;--bg-grad-1: rgba(0, 0, 0, .06);--bg-grad-2: rgba(255, 51, 51, .08);--bg-grad-3: rgba(250, 250, 250, 1);--text: #1a1a1a;--text-muted: #4a4a4a;--text-dim: #6f6f6f;--panel-bg: rgba(255, 255, 255, .92);--panel-border: rgba(190, 190, 190, .75);--accent: #ff3333;--gold: #b3b3b3}:root[data-theme=dark][data-palette=fairy]{--bg: #1b1520;--bg-grad-1: rgba(255, 193, 7, .22);--bg-grad-2: rgba(179, 229, 252, .2);--bg-grad-3: rgba(14, 10, 18, .95);--text: #f8f1f7;--text-muted: #d9c6d6;--text-dim: #ab9aac;--panel-bg: rgba(26, 20, 32, .86);--panel-border: rgba(255, 209, 220, .4);--accent: #ffc107;--gold: #b3e5fc}:root[data-theme=light][data-palette=fairy]{--bg: #fff5fb;--bg-grad-1: rgba(255, 209, 220, .7);--bg-grad-2: rgba(179, 229, 252, .5);--bg-grad-3: rgba(255, 250, 252, 1);--text: #3a2a35;--text-muted: #6a5565;--text-dim: #8a6f80;--panel-bg: rgba(255, 255, 255, .92);--panel-border: rgba(230, 200, 220, .8);--accent: #ffc107;--gold: #b3e5fc}:root[data-theme=dark][data-palette=classic]{--bg: #241b14;--bg-grad-1: rgba(139, 90, 43, .3);--bg-grad-2: rgba(210, 180, 140, .2);--bg-grad-3: rgba(14, 10, 8, .95);--text: #f3eadc;--text-muted: #cbb8a2;--text-dim: #a28b72;--panel-bg: rgba(30, 22, 18, .86);--panel-border: rgba(139, 90, 43, .45);--accent: #a52a2a;--gold: #d2b48c}:root[data-theme=light][data-palette=classic]{--bg: #f5f0e6;--bg-grad-1: rgba(210, 180, 140, .6);--bg-grad-2: rgba(165, 42, 42, .1);--bg-grad-3: rgba(251, 248, 240, 1);--text: #3a2a20;--text-muted: #6a584a;--text-dim: #8b7766;--panel-bg: rgba(255, 252, 246, .92);--panel-border: rgba(210, 190, 165, .8);--accent: #a52a2a;--gold: #d2b48c}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 12%,var(--bg-grad-1),transparent 55%),radial-gradient(circle at 85% 8%,var(--bg-grad-2),transparent 60%),linear-gradient(180deg,var(--bg-grad-1),var(--bg-grad-2),var(--bg-grad-3));background-color:var(--bg);color:inherit;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 50% 30%,#0000000d,#00000059 70%);pointer-events:none;z-index:0}body:after{content:"";position:fixed;inset:0;background-image:var(--noise-texture),radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:auto,6px 6px;opacity:.22;pointer-events:none;z-index:0;mix-blend-mode:soft-light}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}button:disabled{cursor:not-allowed}
