:root{--color-bg-primary: #0E1135;--color-bg-secondary: #141943;--color-bg-tertiary: #1B1F4C;--color-bg-elevated: #242860;--color-surface: rgba(27, 31, 76, .9);--color-surface-hover: rgba(36, 40, 96, .95);--color-surface-active: rgba(50, 55, 109, .98);--color-text-primary: #ffffff;--color-text-secondary: rgba(255, 255, 255, .7);--color-text-tertiary: rgba(255, 255, 255, .5);--color-text-muted: rgba(255, 255, 255, .3);--color-text-inverse: #0E1135;--color-accent: #6654F1;--color-accent-hover: #7B6BF6;--color-accent-active: #5b46f8;--color-accent-muted: rgba(102, 84, 241, .25);--color-accent-gradient: linear-gradient(135deg, #5b46f8 0%, #6654F1 50%, #7B6BF6 100%);--color-accent-secondary: #244E9D;--color-accent-secondary-hover: #3060B0;--color-success: #66bb6a;--color-warning: #eab308;--color-error: #f44336;--color-info: #6654F1;--color-border: rgba(102, 84, 241, .15);--color-border-hover: rgba(102, 84, 241, .3);--color-border-accent: rgba(102, 84, 241, .5);--color-overlay-dark: rgba(0, 0, 0, .7);--color-overlay-medium: rgba(0, 0, 0, .5);--color-overlay-light: rgba(0, 0, 0, .3);--color-panel-bg: rgba(20, 25, 67, .95);--color-panel-bg-solid: #141943;--color-panel-border: rgba(102, 84, 241, .2);--color-panel-shadow: 0 4px 24px rgba(0, 0, 0, .4), 0 0 48px rgba(102, 84, 241, .1);--color-tooltip-bg: rgba(14, 17, 53, .95);--color-tooltip-border: rgba(102, 84, 241, .4);--color-glow-accent: rgba(102, 84, 241, .5);--color-glow-accent-intense: rgba(102, 84, 241, .7);--color-glow-success: rgba(102, 187, 106, .5);--color-glow-error: rgba(239, 68, 68, .5);--color-success-bg: rgba(102, 187, 106, .1);--color-success-border: rgba(102, 187, 106, .3);--color-warning-bg: rgba(234, 179, 8, .1);--color-warning-border: rgba(234, 179, 8, .3);--color-error-bg: rgba(239, 68, 68, .1);--color-error-border: rgba(239, 68, 68, .3);--color-accent-rgb: 102, 84, 241;--color-bg-primary-rgb: 14, 17, 53;--color-bg-secondary-rgb: 20, 25, 67;--color-white-rgb: 255, 255, 255;--font-family: "Chakra Petch", sans-serif;--font-family-display: "Chakra Petch", sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6);--blur-sm: 4px;--blur-md: 8px;--blur-lg: 16px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--sidebar-width: 64px;--sidebar-width-expanded: 240px;--header-height: 56px;--bottom-nav-height: 64px;--context-panel-width: 320px;--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-tooltip: 500;--z-toast: 600}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.glass{background:var(--color-surface);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));border:none;border-radius:var(--radius-lg)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.map--parchment{background-image:linear-gradient(45deg,#d4c4a8,#c9b896);filter:sepia(.3)}.map--hand-drawn{filter:contrast(1.2);border:2px solid currentColor}.map--minimal{filter:grayscale(.5)}.portrait--oil_painting{filter:contrast(1.1) saturate(1.2)}.portrait--watercolor{filter:blur(.3px) saturate(.9)}.portrait--sketch{filter:grayscale(1) contrast(1.5)}
