@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--content-padding: 16px;--color-primary: #ea580c;--color-success: #16a34a;--color-success-light: rgba(22, 163, 74, .08);--color-warning: #d97706;--color-warning-light: rgba(217, 119, 6, .08);--color-error: #dc2626;--color-error-light: rgba(220, 38, 38, .08);--color-info: #0891b2;--color-info-light: rgba(8, 145, 178, .08);--font-family: "Inter Variable", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-family-mono: "JetBrains Mono Variable", "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--font-size-xs: .6875rem;--font-size-sm: .75rem;--font-size-md: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-base: var(--font-size-md);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.01em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-caption: .08em;--letter-spacing-caption-legacy: .05em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-1-5: 6px;--space-2-5: 10px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--z-base: 1;--z-sidebar: 10;--z-toolbar: 100;--z-modal: 1000;--z-tooltip: 1100;--z-toast: 1200;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--ease: cubic-bezier(.2, 0, 0, 1);--dur-state: .12s;--dur-reveal: .2s;--font-features-numeric: "tnum", "zero", "ss01";--accent: var(--color-primary);--accent-fg: #ffffff;--color-focus: #2563EB}.label-caps{text-transform:uppercase;letter-spacing:var(--letter-spacing-caption-legacy, .05em)}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal)}h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:1.25;letter-spacing:var(--letter-spacing-tight)}h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:1.3}h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:1.35}h4{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:1.4}h5{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal)}h6{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wide)}.text-display{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.text-body{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal)}.text-body-sm{font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal)}.text-caption{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wide)}[data-app=cockpit]{--accent: #E8A030;--accent-fg: #0B0D0F}[data-app=occ]{--accent: #5A9EFF;--accent-fg: #0B0D0F}[data-app=pulse]{--accent: #B58CFF;--accent-fg: #0B0D0F}[data-app=inspector]{--accent: #FF7A40;--accent-fg: #0B0D0F}[data-app=ticketing]{--accent: #34C58A;--accent-fg: #0B0D0F}[data-app=sentinel],[data-app=sentinel-driver]{--accent: #F5564E;--accent-fg: #0B0D0F}[data-app=flow]{--accent: #6BA0F5;--accent-fg: #0B0D0F}[data-app=payroll]{--accent: #16A371;--accent-fg: #ffffff}[data-app=pis]{--accent: #2563EB;--accent-fg: #ffffff}[data-app=portal]{--accent: #F2F3F5;--accent-fg: #0B0D0F}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}[data-theme=light]{--color-bg: #f1f5f9;--color-surface: #ffffff;--color-surface-raised: #f8fafc;--color-text: #0f172a;--color-text-secondary: #475569;--color-muted: #64748b;--color-disabled: #cbd5e1;--color-border: #e2e8f0;--color-border-strong: #cbd5e1;--color-primary: #c2410c;--color-primary-dark: #c2410c;--color-primary-dark: color-mix(in srgb, var(--color-primary) 85%, black);--color-primary-light: rgba(234, 88, 12, .08);--color-primary-light: color-mix(in srgb, var(--color-primary) 8%, transparent);--color-primary-contrast: #ffffff;--color-success: #16a34a;--color-success-light: rgba(22, 163, 74, .08);--color-warning: #d97706;--color-warning-light: rgba(217, 119, 6, .08);--color-error: #dc2626;--color-error-light: rgba(220, 38, 38, .08);--color-sidebar-bg: #1c1917;--color-sidebar-text: #e7e5e4;--color-sidebar-active: rgba(234, 88, 12, .2);--color-sidebar-active: color-mix(in srgb, var(--color-primary) 20%, transparent);--color-sidebar-hover: rgba(255, 255, 255, .08);--color-sidebar-border: rgba(148, 163, 184, .15);--color-bg-toolbar: #ffffff;--color-bg-statusbar: #1c1917;--color-bg-secondary: #f5f6f8;--color-border-primary: #e2e5ea;--color-border-secondary: #ebedf0;--color-table-header-bg: #f5f6f8;--color-table-stripe: rgba(0, 0, 0, .02);--color-table-hover: rgba(0, 0, 0, .04);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--shadow: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 25px rgba(15, 23, 42, .08);--shadow-xl: 0 20px 40px rgba(15, 23, 42, .12);--ground-0: var(--color-bg);--ground-1: var(--color-surface);--ground-2: var(--color-surface-raised);--ground-3: #eef1f4;--ink-1: var(--color-text);--ink-2: var(--color-text-secondary);--ink-3: var(--color-muted);--ink-4: var(--color-disabled);--rule: var(--color-border);--rule-subtle: var(--color-border-secondary);--signal-nominal: #15803d;--signal-degraded: #b45309;--signal-incident: #dc2626;--signal-info: #0891b2;--signal-forecast: #7c3aed;--signal-nominal-bg: rgba(21, 128, 61, .08);--signal-degraded-bg: rgba(180, 83, 9, .08);--signal-incident-bg: rgba(220, 38, 38, .08);--signal-info-bg: rgba(8, 145, 178, .08);--signal-forecast-bg: rgba(124, 58, 237, .08);--signal-incident-muted: #f87171;--signal-incident-strong: #991b1b;--signal-warning-strong: #92400e;--signal-incident-bg-soft: #fee2e2;--signal-degraded-bg-soft: #fef3c7;--signal-nominal-strong: #166534;--signal-nominal-bg-soft: #d1fae5;--signal-interactive: #3b82f6;--signal-interactive-strong: #2563eb;--signal-interactive-bg: #eff6ff;--signal-interactive-bg-mid: #dbeafe;--ink-heavy: #1e293b;--color-panel-dark: #1e2028;--ground-elev: #FFFFFF;--rule-soft: #EEF0F2;--rule-hair: rgba(0, 0, 0, .04);--focus-ring: #2563EB;--shadow-1: 0 1px 0 rgba(0,0,0,.02), 0 1px 3px rgba(0,0,0,.05);--shadow-2: 0 1px 2px rgba(0,0,0,.03), 0 12px 32px -10px rgba(13,18,26,.1);--shadow-3: 0 2px 4px rgba(0,0,0,.04), 0 24px 64px -16px rgba(13,18,26,.18);--scrim-modal: rgba(13, 18, 26, .35)}[data-theme=dark]{--color-bg: #0c0a09;--color-surface: #1c1917;--color-surface-raised: #292524;--color-text: #f5f5f4;--color-text-secondary: #a8a29e;--color-muted: #9e9892;--color-disabled: #44403c;--color-border: #292524;--color-border-strong: #44403c;--color-primary: #fb923c;--color-primary-dark: #f97316;--color-primary-dark: color-mix(in srgb, var(--color-primary) 70%, white);--color-primary-light: rgba(234, 88, 12, .15);--color-primary-light: color-mix(in srgb, var(--color-primary) 15%, transparent);--color-primary-contrast: #ffffff;--color-success: #22c55e;--color-success-light: rgba(34, 197, 94, .12);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .12);--color-error: #ef4444;--color-error-light: rgba(239, 68, 68, .12);--color-sidebar-bg: #0c0a09;--color-sidebar-text: #d6d3d1;--color-sidebar-active: rgba(234, 88, 12, .2);--color-sidebar-active: color-mix(in srgb, var(--color-primary) 20%, transparent);--color-sidebar-hover: rgba(255, 255, 255, .06);--color-sidebar-border: rgba(71, 85, 105, .4);--color-bg-toolbar: #1c1917;--color-bg-statusbar: #0c0a09;--color-bg-secondary: #161412;--color-border-primary: #292524;--color-border-secondary: #1c1917;--color-table-header-bg: #1c1917;--color-table-stripe: rgba(255, 255, 255, .02);--color-table-hover: rgba(255, 255, 255, .04);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow: 0 1px 3px rgba(0, 0, 0, .25), 0 1px 2px rgba(0, 0, 0, .15);--shadow-md: 0 4px 6px rgba(0, 0, 0, .25), 0 2px 4px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .4);--ground-0: var(--color-bg);--ground-1: var(--color-surface);--ground-2: var(--color-surface-raised);--ground-3: #3a3633;--ink-1: var(--color-text);--ink-2: var(--color-text-secondary);--ink-3: var(--color-muted);--ink-4: var(--color-disabled);--rule: var(--color-border);--rule-subtle: var(--color-border-secondary);--signal-nominal: #22c55e;--signal-degraded: #f59e0b;--signal-incident: #ef4444;--signal-info: #0891b2;--signal-forecast: #a78bfa;--signal-nominal-bg: rgba(34, 197, 94, .12);--signal-degraded-bg: rgba(245, 158, 11, .12);--signal-incident-bg: rgba(239, 68, 68, .12);--signal-info-bg: rgba(8, 145, 178, .18);--signal-forecast-bg: rgba(167, 139, 250, .16);--signal-incident-muted: #fca5a5;--signal-incident-strong: #fca5a5;--signal-warning-strong: #fbbf24;--signal-incident-bg-soft: rgba(239, 68, 68, .08);--signal-degraded-bg-soft: rgba(245, 158, 11, .08);--signal-nominal-strong: #4ade80;--signal-nominal-bg-soft: rgba(34, 197, 94, .08);--signal-interactive: #60a5fa;--signal-interactive-strong: #3b82f6;--signal-interactive-bg: rgba(96, 165, 250, .08);--signal-interactive-bg-mid: rgba(96, 165, 250, .15);--ink-heavy: #e2e8f0;--color-panel-dark: #0d0f14;--ground-elev: #1E242A;--rule-soft: #181D22;--rule-hair: rgba(255, 255, 255, .05);--focus-ring: #5A9EFF;--color-focus: #5A9EFF;--shadow-1: 0 1px 0 0 rgba(255,255,255,.04) inset, 0 1px 2px rgba(0,0,0,.4);--shadow-2: 0 1px 0 0 rgba(255,255,255,.05) inset, 0 8px 24px -8px rgba(0,0,0,.6), 0 2px 6px rgba(0,0,0,.4);--shadow-3: 0 1px 0 0 rgba(255,255,255,.06) inset, 0 24px 64px -16px rgba(0,0,0,.7), 0 8px 16px rgba(0,0,0,.5);--scrim-modal: rgba(0, 0, 0, .5)}:root{--sidebar-width: 260px;--sidebar-rail-width: 60px;--right-panel-width: 320px;--right-panel-collapsed-width: 0px;--toolbar-height: 48px;--statusbar-height: 28px}.app-shell{display:grid;height:100vh;height:100dvh;grid-template-rows:var(--toolbar-height, 48px) 1fr var(--statusbar-height, 28px);grid-template-columns:var(--current-sidebar-width, 260px) 1fr;grid-template-areas:"toolbar   toolbar" "sidebar   workspace" "statusbar statusbar";overflow:hidden;background:var(--color-bg);color:var(--color-text)}.app-shell--collapsed{grid-template-columns:var(--sidebar-rail-width, 60px) 1fr}.app-shell__toolbar{grid-area:toolbar;z-index:var(--z-toolbar, 100);background:var(--color-bg-toolbar, var(--color-surface));border-bottom:1px solid var(--color-border);display:flex;align-items:center}.app-shell__sidebar{grid-area:sidebar;background:var(--color-sidebar-bg);border-right:1px solid var(--color-sidebar-border, var(--color-border));overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.app-shell__workspace{grid-area:workspace;overflow-y:auto;overflow-x:hidden;min-height:0;min-width:0}.app-shell__statusbar{grid-area:statusbar;z-index:var(--z-statusbar, 90);background:var(--color-bg-statusbar, var(--color-surface));border-top:1px solid var(--color-border);display:flex;align-items:center;font-size:.75rem;padding:0 var(--space-3, 12px)}.app-shell--has-right-panel{grid-template-columns:var(--current-sidebar-width, 260px) 1fr var(--current-right-panel-width, 320px);grid-template-areas:"toolbar   toolbar   toolbar" "sidebar   workspace rightpanel" "statusbar statusbar statusbar"}.app-shell__right-panel{grid-area:rightpanel;overflow-y:auto;overflow-x:hidden;min-height:0;min-width:0;border-left:1px solid var(--color-border);background:var(--color-surface)}.app-shell--has-dock{grid-template-rows:var(--toolbar-height, 48px) 1fr auto var(--statusbar-height, 28px);grid-template-areas:"toolbar   toolbar" "sidebar   workspace" "dock      dock" "statusbar statusbar"}.app-shell--has-dock.app-shell--has-right-panel{grid-template-areas:"toolbar   toolbar   toolbar" "sidebar   workspace rightpanel" "dock      dock      dock" "statusbar statusbar statusbar"}.app-shell__dock{grid-area:dock;min-height:0}.app-shell--nav-bottom{grid-template-columns:1fr;grid-template-rows:var(--toolbar-height, 48px) 1fr auto;grid-template-areas:"toolbar" "workspace" "bottomnav"}.app-shell__bottom-nav{grid-area:bottomnav;z-index:var(--z-toolbar, 100);background:var(--color-bg-toolbar, var(--color-surface));border-top:1px solid var(--color-border)}@media(max-width:480px){.app-shell,.app-shell--collapsed{grid-template-columns:0 1fr}.app-shell--has-right-panel{grid-template-columns:0 1fr 0}.app-shell__sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width, 260px);height:100dvh;z-index:var(--z-modal, 1000);transform:translate(-100%);transition:transform .2s cubic-bezier(.2,0,0,1);border-right:none;box-shadow:none}.app-shell--mobile-open .app-shell__sidebar{transform:translate(0);box-shadow:4px 0 24px #00000040}.app-shell__mobile-backdrop{position:fixed;inset:0;z-index:calc(var(--z-modal, 1000) - 1);background:#00000073;border:none;padding:0;margin:0;cursor:pointer;-webkit-appearance:none;appearance:none}}.sidebar{display:flex;flex-direction:column;height:100%;width:100%;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);transition:width var(--transition-normal, .2s) ease}.sidebar__brand{padding:var(--space-3, 12px);border-bottom:1px solid var(--color-sidebar-border, var(--color-border));flex-shrink:0}.sidebar__nav{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:var(--space-2, 8px) 0}.sidebar__footer{border-top:1px solid var(--color-sidebar-border, var(--color-border));padding:var(--space-3, 12px);flex-shrink:0}.sidebar__section-header{min-height:44px;display:flex;align-items:center;justify-content:space-between;padding:var(--space-2, 8px) var(--space-3, 12px);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-sidebar-text-muted, #a8a29e);cursor:pointer;border:none;background:none;width:100%;-webkit-user-select:none;user-select:none}.sidebar__section-header:hover{color:var(--color-sidebar-text)}.sidebar__section-chevron{transition:transform var(--transition-fast, .15s) ease}.sidebar__section-chevron--collapsed{transform:rotate(-90deg)}.sidebar__section-list,.sidebar__section-list-item{list-style:none;margin:0;padding:0}.sidebar__nav-item{min-height:44px;display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);color:var(--color-sidebar-text);text-decoration:none;font-size:.875rem;border-radius:var(--radius-md, 6px);margin:0 var(--space-2, 8px);transition:background var(--transition-fast, .15s) ease}.sidebar__nav-item:hover{background:var(--color-sidebar-hover)}.sidebar__nav-item--active{background:var(--color-sidebar-active);color:var(--color-sidebar-text-active, #fdba74);font-weight:500}.sidebar__nav-item-icon{flex-shrink:0;width:20px;height:20px}.sidebar__nav-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__nav-item-badge{margin-left:auto;background:var(--color-primary);color:var(--color-primary-contrast, #fff);font-size:.7rem;font-weight:600;padding:1px 6px;border-radius:var(--radius-full, 9999px);min-width:18px;text-align:center}.sidebar--rail .sidebar__brand,.sidebar--rail .sidebar__nav-item-label,.sidebar--rail .sidebar__nav-item-badge,.sidebar--rail .sidebar__section-header,.sidebar--rail .sidebar__footer{display:none}.sidebar--rail .sidebar__nav-item{justify-content:center;padding:var(--space-2, 8px);margin:var(--space-1, 4px) var(--space-2, 8px)}.sidebar__rail-shortcuts{display:flex;flex-direction:column;gap:var(--space-1, 4px);padding:var(--space-2, 8px) var(--space-2, 8px) 0;flex-shrink:0}.sidebar__rail-shortcut{display:flex;align-items:center;justify-content:center;width:100%;padding:var(--space-2, 8px);border-radius:var(--radius-md, 6px);color:var(--color-sidebar-text);text-decoration:none;transition:background var(--transition-fast, .15s) ease}.sidebar__rail-shortcut:hover{background:var(--color-sidebar-hover)}.sidebar__rail-shortcut--active{background:var(--color-sidebar-active);color:var(--color-primary)}.sidebar__toggle{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:var(--space-2, 8px);border:none;background:none;color:var(--color-sidebar-text-muted, #a8a29e);cursor:pointer}.sidebar__toggle:hover{color:var(--color-sidebar-text)}.page-header{display:flex;flex-direction:column;gap:var(--space-2, 8px);padding:var(--space-4, 16px) var(--space-5, 20px);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0}.page-header__top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3, 12px);width:100%}.page-header__text{display:flex;flex-direction:column;gap:var(--space-1, 4px);min-width:0;flex:1 1 auto}.page-header__breadcrumbs{display:flex;align-items:center;gap:var(--space-1, 4px);font-size:.75rem;color:var(--color-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header__breadcrumb-link{color:var(--color-muted);text-decoration:none}.page-header__breadcrumb-link:hover{color:var(--color-text);text-decoration:underline}.page-header__breadcrumb-separator{color:var(--color-disabled)}.page-header__title-row{display:flex;align-items:center;gap:var(--space-2, 8px);min-width:0}.page-header__title{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header__status{display:flex;align-items:center;flex-shrink:0}.page-header__subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header__actions{display:flex;align-items:center;gap:var(--space-2, 8px);flex-shrink:0}.page-header__tabs{display:flex;align-items:center;gap:var(--space-1, 4px);width:100%;min-width:0;overflow-x:auto}.page-header--dense{padding:var(--space-2, 8px) var(--space-5, 20px)}.page-header--dense .page-header__top{align-items:center}.workspace-layout{display:flex;height:100%;min-height:0}.workspace-layout__content{flex:1 1 auto;overflow-y:auto;min-width:0}.workspace-layout__panel{flex:0 0 auto;width:var(--panel-width, 400px);border-left:1px solid var(--color-border);overflow-y:auto;background:var(--color-surface)}@media(max-width:768px){.workspace-layout__panel{position:fixed;right:0;top:0;bottom:0;z-index:var(--z-modal, 1000);box-shadow:var(--shadow-lg)}}.drawer-shell__overlay{position:fixed;inset:0;z-index:var(--z-modal, 1000);background:#0f172a6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:rtv-drawer-overlay-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell__overlay[data-entering]{animation:rtv-drawer-overlay-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell__overlay[data-exiting]{animation:rtv-drawer-overlay-out var(--dur-state, .12s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell{position:fixed;top:0;right:0;bottom:0;width:var(--drawer-width, 400px);max-width:100vw;background:var(--color-surface, #fff);display:flex;flex-direction:column;box-shadow:var(--shadow-xl, -4px 0 24px rgba(0, 0, 0, .15));animation:rtv-drawer-panel-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell[data-entering]{animation:rtv-drawer-panel-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell[data-exiting]{animation:rtv-drawer-panel-out var(--dur-state, .12s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.drawer-shell__inner{display:flex;flex-direction:column;height:100%;min-height:0;outline:none}.drawer-shell__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3, 12px);padding:var(--space-4, 16px) var(--space-5, 20px);border-bottom:1px solid var(--color-border);flex-shrink:0}.drawer-shell__title{font-size:var(--font-size-lg, 1rem);font-weight:var(--font-weight-semibold, 600);color:var(--color-text);margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-shell__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;color:var(--color-muted);cursor:pointer;border-radius:var(--radius-md, 6px);flex-shrink:0;transition:background var(--dur-state, .12s) var(--ease, ease),color var(--dur-state, .12s) var(--ease, ease)}.drawer-shell__close:hover{color:var(--color-text);background:var(--color-surface-raised, rgba(0, 0, 0, .05))}.drawer-shell__close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.drawer-shell__body{flex:1 1 auto;overflow-y:auto;padding:var(--space-4, 16px) var(--space-5, 20px)}@keyframes rtv-drawer-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes rtv-drawer-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes rtv-drawer-panel-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rtv-drawer-panel-out{0%{transform:translate(0)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.drawer-shell__overlay,.drawer-shell,.drawer-shell__overlay[data-entering],.drawer-shell__overlay[data-exiting],.drawer-shell[data-entering],.drawer-shell[data-exiting]{animation-duration:.01ms!important}}.confirm-dialog__backdrop{position:fixed;inset:0;z-index:var(--z-modal, 1000);background:#0006;display:flex;align-items:center;justify-content:center}.confirm-dialog{background:var(--color-surface, #fff);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-lg, 0 8px 32px rgba(0, 0, 0, .2));padding:var(--space-5, 20px);max-width:420px;width:90vw}.confirm-dialog__title{font-size:1.125rem;font-weight:600;color:var(--color-text);margin:0 0 var(--space-2, 8px) 0}.confirm-dialog__message{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 var(--space-5, 20px) 0;line-height:1.5}.confirm-dialog__actions{display:flex;justify-content:flex-end;gap:var(--space-2, 8px)}.confirm-dialog__cancel{padding:var(--space-2, 8px) var(--space-4, 16px);border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:.875rem}.confirm-dialog__cancel:hover{background:var(--color-surface-raised, rgba(0, 0, 0, .05))}.confirm-dialog__confirm{padding:var(--space-2, 8px) var(--space-4, 16px);border:none;border-radius:var(--radius-md, 6px);background:var(--color-primary);color:var(--color-primary-contrast, #fff);cursor:pointer;font-size:.875rem;font-weight:500}.confirm-dialog__confirm:hover{opacity:.9}.confirm-dialog__confirm--danger{background:var(--color-error, #dc2626)}.confirm-dialog__confirm--warning{background:var(--color-warning, #f59e0b)}.confirm-dialog__body{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 var(--space-5, 20px) 0;line-height:1.5}.confirm-dialog__message+.confirm-dialog__body{margin-top:calc(-1 * var(--space-3, 12px))}@keyframes confirm-dialog-spin{to{transform:rotate(360deg)}}.confirm-dialog__spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:confirm-dialog-spin .65s linear infinite;margin-right:var(--space-1, 4px);vertical-align:middle;opacity:.8}.confirm-dialog__confirm:disabled,.confirm-dialog__action:disabled{opacity:.6;cursor:not-allowed}.confirm-dialog__action{padding:var(--space-2, 8px) var(--space-4, 16px);border:none;border-radius:var(--radius-md, 6px);background:var(--color-primary);color:var(--color-primary-contrast, #fff);cursor:pointer;font-size:.875rem;font-weight:500}.confirm-dialog__action:hover:not(:disabled){opacity:.9}.confirm-dialog__action--danger{background:var(--color-error, #dc2626)}.confirm-dialog__action--warning{background:var(--color-warning, #f59e0b)}.confirm-dialog__action--default{background:var(--color-primary)}.rtv-dialog__overlay{position:fixed;inset:0;z-index:var(--z-modal, 1000);display:flex;align-items:center;justify-content:center;padding:var(--space-4, 16px);background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:rtv-dialog-overlay-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog__overlay[data-entering]{animation:rtv-dialog-overlay-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog__overlay[data-exiting]{animation:rtv-dialog-overlay-out var(--dur-state, .12s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog{display:flex;flex-direction:column;width:100%;max-height:calc(100vh - var(--space-8, 32px));background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-xl, 0 20px 40px rgba(15, 23, 42, .18));overflow:hidden;animation:rtv-dialog-panel-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog[data-entering]{animation:rtv-dialog-panel-in var(--dur-reveal, .2s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog[data-exiting]{animation:rtv-dialog-panel-out var(--dur-state, .12s) var(--ease, cubic-bezier(.2, 0, 0, 1))}.rtv-dialog--sm{max-width:400px}.rtv-dialog--md{max-width:560px}.rtv-dialog--lg{max-width:720px}.rtv-dialog--full{max-width:calc(100vw - var(--space-8, 32px));max-height:calc(100vh - var(--space-8, 32px));width:calc(100vw - var(--space-8, 32px));height:calc(100vh - var(--space-8, 32px))}.rtv-dialog__inner{display:flex;flex-direction:column;min-height:0;outline:none}.rtv-dialog__title{margin:0;padding:var(--space-5, 20px) var(--space-6, 24px) var(--space-3, 12px);font-size:var(--font-size-lg, 1rem);font-weight:var(--font-weight-semibold, 600);line-height:1.4;color:var(--color-text, #0f172a);border-bottom:1px solid var(--color-border, #e2e8f0)}.rtv-dialog__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--space-5, 20px) var(--space-6, 24px);font-size:var(--font-size-md, .875rem);line-height:1.5;color:var(--color-text-secondary, #475569)}.rtv-dialog__footer{display:flex;justify-content:flex-end;gap:var(--space-2, 8px);padding:var(--space-3, 12px) var(--space-6, 24px) var(--space-5, 20px);border-top:1px solid var(--color-border, #e2e8f0);background:var(--color-surface, #ffffff)}@keyframes rtv-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes rtv-dialog-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes rtv-dialog-panel-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes rtv-dialog-panel-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(4px) scale(.99)}}@media(prefers-reduced-motion:reduce){.rtv-dialog__overlay,.rtv-dialog,.rtv-dialog__overlay[data-entering],.rtv-dialog__overlay[data-exiting],.rtv-dialog[data-entering],.rtv-dialog[data-exiting]{animation-duration:.01ms!important;animation-iteration-count:1!important}.rtv-dialog[data-entering],.rtv-dialog[data-exiting]{animation-name:rtv-dialog-panel-fade!important}@keyframes rtv-dialog-panel-fade{0%{opacity:0}to{opacity:1}}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8, 32px);gap:var(--space-3, 12px);color:var(--color-text-secondary)}.loading-state__spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:ui-shell-spin .8s linear infinite}.loading-state__spinner--sm{width:20px;height:20px}.loading-state__spinner--md{width:32px;height:32px}.loading-state__spinner--lg{width:48px;height:48px}@keyframes ui-shell-spin{to{transform:rotate(360deg)}}.loading-state__message{font-size:.875rem;margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10, 40px) var(--space-5, 20px);gap:var(--space-3, 12px);text-align:center;color:var(--color-text-secondary)}.empty-state__icon{color:var(--color-muted)}.empty-state__title{font-size:1rem;font-weight:600;color:var(--color-text);margin:0}.empty-state__description{font-size:.875rem;max-width:320px;margin:0}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8, 32px);gap:var(--space-3, 12px);text-align:center}.error-state__title{font-size:1rem;font-weight:600;color:var(--color-error);margin:0}.error-state__message{font-size:.875rem;color:var(--color-text-secondary);margin:0}.error-state__retry{padding:var(--space-2, 8px) var(--space-4, 16px);border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:.875rem}.error-state__retry:hover{background:var(--color-surface-raised)}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10, 40px);gap:var(--space-3, 12px);text-align:center}.access-denied__title{font-size:1.125rem;font-weight:600;color:var(--color-error);margin:0}.access-denied__message{font-size:.875rem;color:var(--color-text-secondary);margin:0}.statusbar{display:flex;align-items:center;width:100%;height:100%}.statusbar__items{display:flex;align-items:center;flex:1 1 auto;overflow:hidden;gap:0}.statusbar__divider{width:1px;height:14px;background:var(--color-border);flex-shrink:0;margin:0 var(--space-2, 8px)}.statusbar__item{display:flex;align-items:center;gap:var(--space-1, 4px);font-size:.75rem;color:var(--color-sidebar-text-muted, #a8a29e);white-space:nowrap}.statusbar__item-icon{display:flex;align-items:center;flex-shrink:0}.statusbar__item-label{font-weight:500}.statusbar__item-value{color:var(--color-sidebar-text, #e7e5e4)}.statusbar__trailing{display:flex;align-items:center;gap:var(--space-2, 8px);flex-shrink:0;margin-left:auto;padding-left:var(--space-3, 12px)}.app-launcher{position:relative}.app-launcher__trigger{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:none;color:var(--color-muted);cursor:pointer;border-radius:var(--radius-md, 6px);transition:background var(--transition-fast, .15s) ease,color var(--transition-fast, .15s) ease}.app-launcher__trigger:hover,.app-launcher__trigger--open{background:var(--ground-elev, rgba(255 255 255 / .06));color:var(--color-text)}.app-launcher__trigger:focus-visible{outline:2px solid var(--accent, var(--color-primary));outline-offset:2px}.app-launcher__panel{position:absolute;top:calc(100% + var(--space-2, 8px));right:0;z-index:var(--z-popover, 200);width:360px;max-height:min(560px,80vh);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-2);padding:var(--space-3, 12px);display:flex;flex-direction:column;gap:var(--space-3, 12px)}.app-launcher__search-row{position:relative;display:flex;align-items:center}.app-launcher__search-icon{position:absolute;left:var(--space-3, 12px);color:var(--color-muted);pointer-events:none}.app-launcher__search{width:100%;padding:var(--space-2, 8px) var(--space-3, 12px);padding-left:calc(var(--space-3, 12px) + 16px + var(--space-2, 8px));background:var(--color-bg, var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);color:var(--color-text);font-size:.875rem;outline:none;-webkit-appearance:none;appearance:none}.app-launcher__search:focus{border-color:var(--accent, var(--color-primary));box-shadow:0 0 0 2px var(--focus-ring, rgba(90 158 255 / .3))}.app-launcher__groups{display:flex;flex-direction:column;gap:var(--space-4, 16px)}.app-launcher__group{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.app-launcher__group-label{margin:0;font-size:.6875rem;font-weight:600;color:var(--color-muted)}.app-launcher__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2, 8px)}.app-launcher__tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-1, 4px);padding:var(--space-3, 12px) var(--space-2, 8px);border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);background:none;cursor:pointer;text-align:center;color:var(--color-text);transition:background var(--transition-fast, .15s) ease,border-color var(--transition-fast, .15s) ease,box-shadow var(--transition-fast, .15s) ease}.app-launcher__tile:hover{background:var(--ground-elev, rgba(255 255 255 / .04));border-color:var(--tile-accent)}.app-launcher__tile:focus-visible{outline:none;border-color:var(--tile-accent);box-shadow:0 0 0 2px var(--focus-ring, rgba(90 158 255 / .3))}.app-launcher__tile--current{border-color:var(--tile-accent);background:color-mix(in srgb,var(--tile-accent) 12%,transparent)}.app-launcher__tile--current:before{content:"";position:absolute;inset-block:var(--space-2, 8px);left:0;width:3px;border-radius:var(--radius-full, 9999px);background:var(--tile-accent)}.app-launcher__tile--incident{border-color:var(--signal-critical, #f5564e)}.app-launcher__tile--degraded{border-color:var(--signal-warning, #e8a030)}.app-launcher__tile-glyph{font-size:1.25rem;color:var(--tile-accent);line-height:1;display:flex;align-items:center;justify-content:center}.app-launcher__tile-label{font-size:.75rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app-launcher__tile-tag{font-size:.65rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.app-launcher__tile-dot{position:absolute;top:var(--space-2, 8px);left:var(--space-2, 8px);width:8px;height:8px;border-radius:var(--radius-full, 9999px);background:var(--color-muted)}.app-launcher__tile-dot--nominal{background:var(--color-success, #16a34a)}.app-launcher__tile-dot--degraded{background:var(--signal-warning, #e8a030)}.app-launcher__tile-dot--incident{background:var(--signal-critical, #f5564e);box-shadow:0 0 0 3px color-mix(in srgb,var(--signal-critical, #f5564e) 28%,transparent)}.app-launcher__tile-dot--awaiting{background:var(--color-border)}.app-launcher__tile-badge{position:absolute;top:4px;right:4px;background:var(--signal-critical, #f5564e);color:#fff;font-size:.65rem;font-weight:700;padding:1px 4px;border-radius:var(--radius-full, 9999px);min-width:16px;text-align:center}.app-launcher__tile--skeleton{cursor:default;min-height:76px;border-color:var(--color-border);background:linear-gradient(90deg,var(--ground-elev, rgba(255 255 255 / .04)) 25%,var(--color-border) 37%,var(--ground-elev, rgba(255 255 255 / .04)) 63%);background-size:400% 100%;animation:app-launcher-shimmer 1.4s ease infinite}@keyframes app-launcher-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.app-launcher__tile--skeleton{animation:none}}.app-launcher__empty{margin:0;padding:var(--space-4, 16px) 0;text-align:center;font-size:.875rem;color:var(--color-muted)}.app-launcher__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:420px){.app-launcher__panel{width:calc(100vw - var(--space-4, 16px));right:calc(-1 * var(--space-2, 8px))}.app-launcher__grid{grid-template-columns:repeat(2,1fr)}}:root{--color-brand-primary: #00b4ff;--color-brand-emphasis: #18f9d7;--color-brand-secondary: #0a49ff;--color-brand-primary-rgb: 0, 180, 255;--color-bg-dark: var(--ground-0);--color-bg-panel: var(--ground-1);--color-bg-panel-alt: var(--ground-2);--color-border-soft: var(--rule-subtle);--color-text-primary: var(--color-text);--color-text-muted: var(--color-muted);--color-shadow-strong: rgba(0, 0, 0, .65);--space-xxs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 20px;--space-xl: 32px;--font-family-sans: var(--font-family);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--motion-duration-fast: .12s;--motion-duration-medium: .24s;--motion-duration-slow: .36s;--motion-ease-standard: cubic-bezier(.25, .8, .5, 1);--motion-ease-entrance: cubic-bezier(.26, .68, .35, 1);--motion-stagger-tiny: 50ms;--breakpoint-mobile: 430px;--breakpoint-tablet: 1024px;--breakpoint-laptop: 1366px;--breakpoint-desktop: 1920px;--breakpoint-wallboard: 2560px;--color-page-gradient-start: #040a16;--color-page-gradient-end: rgba(10, 10, 15, .95);--color-page-bloom: rgba(0, 180, 255, .25);--color-accent-strong: rgba(0, 180, 255, .9)}:root{--surface-default: var(--ground-0);--surface-alt: var(--ground-0);--surface-border: var(--rule);--surface-highlight: rgba(24, 249, 215, .15);--glass-base: rgba(241, 245, 249, .92);--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 4px 16px rgba(0, 0, 0, .12);--page-bg: var(--ground-1);--map-bg: radial-gradient(circle at 20% 20%, var(--color-page-bloom), transparent 60%), linear-gradient(180deg, var(--color-page-gradient-start), var(--color-page-gradient-end));--page-panel: var(--ground-0);--page-panel-border: var(--rule);--page-header-bg: var(--ground-0);--page-header-border: var(--rule);--page-gradient-divider: linear-gradient(90deg, var(--rule), transparent);--accent-strong: var(--color-accent-strong);--btn-primary-bg: rgba(59, 130, 246, .1);--btn-primary-border: rgba(59, 130, 246, .35);--btn-primary-foreground: #3b82f6;--btn-primary-hover: rgba(59, 130, 246, .2);--btn-danger-bg: rgba(239, 68, 68, .1);--btn-danger-border: rgba(239, 68, 68, .35);--btn-danger-foreground: #ef4444;--btn-radius: 8px;--text-primary: var(--ink-1);--text-muted: var(--ink-3);--text-accent: var(--color-brand-emphasis);--status-ok: #10b981;--status-late: #ef4444;--status-warning: #f59e0b;--status-no-data: #6b7280;--status-neutral: rgba(255, 255, 255, .6);--elevation-overlay: 0 30px 80px var(--color-shadow-strong);--elevation-panel: 0 20px 45px rgba(0, 0, 0, .45);--motion-pulse-duration: var(--motion-duration-slow);--interaction-press-scale: .97}[data-theme=dark]{--glass-base: rgba(10, 10, 12, .88);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 16px 48px rgba(0, 0, 0, .7)}.glass-panel{background:var(--glass-base);border-radius:16px;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:var(--text-primary)}.interaction-scale{transition:transform var(--motion-duration-fast) var(--motion-ease-standard),box-shadow var(--motion-duration-medium) var(--motion-ease-standard)}.interaction-scale:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 25px 60px #00000080}.mono{font-family:var(--font-family-mono);letter-spacing:.2em}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:var(--font-family-mono)}
