@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/inter/InterVariable.woff2") format("woff2 supports variations"),url("fonts/inter/InterVariable.woff2") format("woff2-variations")}@font-face{font-family:"Inter";font-style:italic;font-weight:100 900;font-display:swap;src:url("fonts/inter/InterVariable-Italic.woff2") format("woff2 supports variations"),url("fonts/inter/InterVariable-Italic.woff2") format("woff2-variations")}html{font-family:var(--viking-font-family);font-size:var(--viking-font-size, 16px);line-height:var(--viking-line-height-relaxed, 1.625);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body,.viking-ui-body{font-family:inherit;font-size:inherit;line-height:inherit;font-weight:var(--viking-font-weight-regular, 400);color:var(--viking-text);background-color:var(--viking-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--viking-font-family);font-weight:var(--viking-font-weight-semibold, 600);line-height:var(--viking-line-height-tight, 1.25);letter-spacing:var(--viking-letter-spacing-tight, -0.02em)}h1{font-size:var(--viking-font-size-2xl, 30px);font-weight:var(--viking-font-weight-bold, 700);letter-spacing:var(--viking-letter-spacing-tighter, -0.03em)}h2{font-size:var(--viking-font-size-xl, 24px)}h3{font-size:var(--viking-font-size-lg, 20px)}h4{font-size:var(--viking-font-size-md, 18px)}h5,h6{font-size:var(--viking-font-size, 16px);font-weight:var(--viking-font-weight-medium, 500)}p{line-height:var(--viking-line-height-relaxed, 1.625)}code,pre,kbd,samp,.viking-font-mono{font-family:var(--viking-font-family-mono)}button,input,select,textarea{font-family:inherit}.viking-font-display{font-family:var(--viking-font-family);font-weight:var(--viking-font-weight-bold, 700);letter-spacing:var(--viking-letter-spacing-caps, 0.08em);text-transform:uppercase}.viking-tabular-nums{font-variant-numeric:tabular-nums lining-nums}:root{--viking-charcoal-950: #0a0a0a;--viking-charcoal-900: #111111;--viking-charcoal-800: #1a1a1a;--viking-charcoal-700: #2a2a2a;--viking-charcoal-600: #333333;--viking-charcoal-500: #444444;--viking-metallic-600: #555555;--viking-metallic-500: #666666;--viking-metallic-400: #777777;--viking-metallic-300: #999999;--viking-metallic-200: #aaaaaa;--viking-metallic-100: #bbbbbb;--viking-teal-700: #0a5c5f;--viking-teal-600: #0d7377;--viking-teal-500: #109094;--viking-teal-400: #14a3a8;--viking-teal-300: #2db8bd;--viking-crimson-700: #7a2231;--viking-crimson-600: #922b3e;--viking-crimson-500: #a83344;--viking-crimson-400: #c44355;--viking-green-500: #2a9d8f;--viking-gold-500: #c4a035;--viking-blue-500: var(--viking-teal-400);--viking-white: #f5f5f5;--viking-white-pure: #ffffff;--viking-black: #000000;--viking-grid-unit: 4px;--viking-space-0: 0;--viking-space-px: 1px;--viking-space-half: 4px;--viking-space-1: 8px;--viking-space-1-5: 12px;--viking-space-2: 16px;--viking-space-3: 24px;--viking-space-4: 32px;--viking-space-5: 40px;--viking-space-6: 48px;--viking-space-7: 56px;--viking-space-8: 64px;--viking-space-9: 80px;--viking-space-10: 96px;--viking-font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;--viking-font-family-mono: ui-monospace, 'JetBrains Mono', 'SF Mono', 'Cascadia Code', Consolas, monospace;--viking-font-size-2xs: 11px;--viking-font-size-xs: 12px;--viking-font-size-sm: 14px;--viking-font-size-base: 16px;--viking-font-size-md: 18px;--viking-font-size-lg: 20px;--viking-font-size-xl: 24px;--viking-font-size-2xl: 30px;--viking-font-size-3xl: 36px;--viking-font-size-4xl: 48px;--viking-font-weight-regular: 400;--viking-font-weight-medium: 500;--viking-font-weight-semibold: 600;--viking-font-weight-bold: 700;--viking-line-height-none: 1;--viking-line-height-tight: 1.25;--viking-line-height-snug: 1.375;--viking-line-height-normal: 1.5;--viking-line-height-relaxed: 1.625;--viking-line-height-loose: 1.75;--viking-letter-spacing-tighter: -0.03em;--viking-letter-spacing-tight: -0.02em;--viking-letter-spacing-normal: 0;--viking-letter-spacing-wide: 0.025em;--viking-letter-spacing-wider: 0.05em;--viking-letter-spacing-caps: 0.08em;--viking-radius-xs: 4px;--viking-radius-sm: 6px;--viking-radius: 8px;--viking-radius-md: 10px;--viking-radius-lg: 12px;--viking-radius-xl: 16px;--viking-radius-pill: 999px;--viking-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);--viking-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.18), 0 1px 3px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.04);--viking-shadow-md: 0 2px 4px rgba(0, 0, 0, 0.16), 0 4px 8px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.05);--viking-shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.14), 0 12px 24px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06);--viking-shadow-inner: inset 0 1px 2px rgba(0, 0, 0, 0.14);--viking-shadow-hover: 0 8px 16px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.06);--viking-chart-ratio: 3 / 1;--viking-chart-min-height: clamp(9.5rem, 22vw, 12rem);--viking-chart-max-height: clamp(13rem, 36vw, 17.5rem);--viking-chart-fill-min-height: clamp(16rem, 32vw, 17.5rem);--viking-chart-fill-max-height: clamp(17.5rem, 40vw, 21rem);--viking-chart-fill-min-height-lg: clamp(17.5rem, 36vw, 20rem);--viking-chart-fill-max-height-lg: clamp(20rem, 44vw, 22rem);--viking-chart-empty-min-height: var(--viking-chart-fill-min-height);--viking-chart-empty-min-height-lg: var(--viking-chart-fill-min-height-lg);--viking-chart-panel-min-height-md: 24rem;--viking-chart-panel-min-height-lg: 28rem;--viking-chart-panel-body-min-height-md: 19rem;--viking-chart-panel-body-min-height-lg: 22.5rem;--viking-chart-sparkline-height: 2.5rem;--viking-chart-map-min-height: 22.5rem;--viking-bp-sm: 600px;--viking-bp-md: 768px;--viking-bp-sidebar: 901px;--viking-bp-lg: 1024px;--viking-bp-xl: 1440px;--viking-bp-2xl: 1920px;--viking-ease-default: cubic-bezier(0.4, 0, 0.2, 1);--viking-ease-in: cubic-bezier(0.4, 0, 1, 1);--viking-ease-out: cubic-bezier(0, 0, 0.2, 1);--viking-duration-fast: 150ms;--viking-duration: 250ms;--viking-duration-slow: 350ms;--viking-transition-colors: color var(--viking-duration) var(--viking-ease-default), background-color var(--viking-duration) var(--viking-ease-default), border-color var(--viking-duration) var(--viking-ease-default), box-shadow var(--viking-duration) var(--viking-ease-default), fill var(--viking-duration) var(--viking-ease-default), stroke var(--viking-duration) var(--viking-ease-default);--viking-transition-interactive: color var(--viking-duration) var(--viking-ease-default), background-color var(--viking-duration) var(--viking-ease-default), border-color var(--viking-duration) var(--viking-ease-default), box-shadow var(--viking-duration) var(--viking-ease-default), fill var(--viking-duration) var(--viking-ease-default), stroke var(--viking-duration) var(--viking-ease-default), transform var(--viking-duration) var(--viking-ease-default), opacity var(--viking-duration) var(--viking-ease-default);--viking-transition: all var(--viking-duration) var(--viking-ease-default);--viking-state-hover-lift: -1px;--viking-state-active-scale: 0.985;--viking-state-disabled-opacity: 0.48;--viking-control-height: 40px;--viking-control-height-sm: 32px;--viking-control-height-xs: 24px;--viking-control-padding-x: var(--viking-space-2);--viking-btn-min-width: 120px;--viking-select-panel-bg: var(--viking-surface-raised);--viking-select-half-max-width: min(100%, 24rem);--viking-container-max-width: 1260px;--viking-navbar-height: 64px;--viking-sidebar-width: 256px;--viking-z-overlay: 1000;--viking-z-toast: 1100;--viking-z-tooltip: 1200;--viking-chart-axis-size: 12px;--viking-icon-size-sm: 16px;--viking-icon-size-md: 20px;--viking-icon-size-lg: 24px;--viking-icon-stroke-width: 1.75;--viking-icon-stroke-width-sm: 1.5}:root,html[data-theme=dark]{--viking-bg: var(--viking-charcoal-900);--viking-surface: var(--viking-charcoal-800);--viking-surface-alt: var(--viking-charcoal-700);--viking-surface-raised: var(--viking-charcoal-600);--viking-text: var(--viking-white);--viking-text-muted: var(--viking-metallic-200);--viking-text-subtle: var(--viking-metallic-300);--viking-text-inverted: var(--viking-charcoal-900);--viking-border: color-mix(in srgb, var(--viking-metallic-600) 35%, transparent);--viking-border-strong: color-mix(in srgb, var(--viking-metallic-400) 55%, transparent);--viking-border-subtle: color-mix(in srgb, var(--viking-metallic-600) 18%, transparent);--viking-accent: var(--viking-teal-600);--viking-accent-hover: var(--viking-teal-500);--viking-accent-content: var(--viking-white-pure);--viking-accent-soft: color-mix(in srgb, var(--viking-teal-600) 14%, transparent);--viking-accent-strong: var(--viking-teal-400);--viking-accent-secondary: var(--viking-crimson-600);--viking-accent-secondary-hover: var(--viking-crimson-500);--viking-accent-secondary-content: var(--viking-white-pure);--viking-accent-secondary-soft: color-mix(in srgb, var(--viking-crimson-600) 12%, transparent);--viking-success: var(--viking-green-500);--viking-warning: var(--viking-gold-500);--viking-danger: var(--viking-crimson-500);--viking-info: var(--viking-blue-500);--viking-danger-text: var(--viking-crimson-400);--viking-on-danger: var(--viking-white-pure);--viking-ring: var(--viking-teal-400);--viking-ring-width: 2px;--viking-ring-offset: 2px;--viking-overlay-backdrop: color-mix(in srgb, var(--viking-charcoal-950) 72%, transparent);--viking-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.28), 0 1px 3px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.04);--viking-shadow-md: 0 2px 4px rgba(0, 0, 0, 0.24), 0 4px 8px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.05);--viking-shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.2), 0 12px 24px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.06)}html[data-theme=light]{--viking-bg: var(--viking-white-pure);--viking-surface: var(--viking-white-pure);--viking-surface-alt: #f7f7f7;--viking-surface-raised: #efefef;--viking-text: var(--viking-charcoal-900);--viking-text-muted: var(--viking-metallic-500);--viking-text-subtle: var(--viking-metallic-400);--viking-text-inverted: var(--viking-white-pure);--viking-border: color-mix(in srgb, var(--viking-metallic-600) 22%, transparent);--viking-border-strong: color-mix(in srgb, var(--viking-metallic-600) 38%, transparent);--viking-border-subtle: color-mix(in srgb, var(--viking-metallic-600) 12%, transparent);--viking-accent: var(--viking-teal-700);--viking-accent-hover: var(--viking-teal-600);--viking-accent-content: var(--viking-white-pure);--viking-accent-soft: color-mix(in srgb, var(--viking-teal-700) 10%, transparent);--viking-accent-strong: var(--viking-teal-500);--viking-accent-secondary: var(--viking-crimson-700);--viking-accent-secondary-hover: var(--viking-crimson-600);--viking-accent-secondary-content: var(--viking-white-pure);--viking-accent-secondary-soft: color-mix(in srgb, var(--viking-crimson-700) 8%, transparent);--viking-danger-text: var(--viking-crimson-700);--viking-on-danger: var(--viking-white-pure);--viking-ring: var(--viking-teal-600);--viking-overlay-backdrop: color-mix(in srgb, var(--viking-charcoal-900) 45%, transparent);--viking-shadow-sm: 0 1px 2px rgba(17, 17, 17, 0.06), 0 1px 3px rgba(17, 17, 17, 0.08);--viking-shadow-md: 0 2px 4px rgba(17, 17, 17, 0.06), 0 4px 8px rgba(17, 17, 17, 0.08);--viking-shadow-lg: 0 4px 8px rgba(17, 17, 17, 0.06), 0 12px 24px rgba(17, 17, 17, 0.1)}@media(prefers-color-scheme: light){html:not([data-theme=dark]){--viking-bg: var(--viking-white-pure);--viking-surface: var(--viking-white-pure);--viking-surface-alt: #f7f7f7;--viking-surface-raised: #efefef;--viking-text: var(--viking-charcoal-900);--viking-text-muted: var(--viking-metallic-500);--viking-text-subtle: var(--viking-metallic-400);--viking-text-inverted: var(--viking-white-pure);--viking-border: color-mix(in srgb, var(--viking-metallic-600) 22%, transparent);--viking-border-strong: color-mix(in srgb, var(--viking-metallic-600) 38%, transparent);--viking-border-subtle: color-mix(in srgb, var(--viking-metallic-600) 12%, transparent);--viking-accent: var(--viking-teal-700);--viking-accent-hover: var(--viking-teal-600);--viking-accent-soft: color-mix(in srgb, var(--viking-teal-700) 10%, transparent);--viking-accent-strong: var(--viking-teal-500);--viking-accent-secondary: var(--viking-crimson-700);--viking-accent-secondary-hover: var(--viking-crimson-600);--viking-accent-secondary-soft: color-mix(in srgb, var(--viking-crimson-700) 8%, transparent);--viking-danger-text: var(--viking-crimson-700);--viking-ring: var(--viking-teal-600);--viking-overlay-backdrop: color-mix(in srgb, var(--viking-charcoal-900) 45%, transparent);--viking-shadow-sm: 0 1px 2px rgba(17, 17, 17, 0.06), 0 1px 3px rgba(17, 17, 17, 0.08);--viking-shadow-md: 0 2px 4px rgba(17, 17, 17, 0.06), 0 4px 8px rgba(17, 17, 17, 0.08);--viking-shadow-lg: 0 4px 8px rgba(17, 17, 17, 0.06), 0 12px 24px rgba(17, 17, 17, 0.1)}}:root{--viking-touch-target-min: 44px;--viking-touch-target-comfort: 44px;--viking-state-disabled-opacity: 0.48;--viking-state-hover-lift: -1px;--viking-state-active-scale: 0.985;--viking-state-press-inset: inset 0 1px 2px rgba(0, 0, 0, 0.18);--viking-shadow-hover: var( --shadow-hover, 0 8px 16px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.06) );--viking-surface-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.06);--viking-surface-recipe: var(--viking-surface) linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, transparent 100%);--viking-transition-interactive: color var(--viking-duration) var(--viking-ease-default), background-color var(--viking-duration) var(--viking-ease-default), border-color var(--viking-duration) var(--viking-ease-default), box-shadow var(--viking-duration) var(--viking-ease-default), transform var(--viking-duration-fast) var(--viking-ease-default), opacity var(--viking-duration-fast) var(--viking-ease-default);--viking-transition-transform: transform var(--viking-duration-fast) var(--viking-ease-default)}@keyframes viking-fade-in{from{opacity:0}to{opacity:1}}@keyframes viking-slide-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes viking-slide-in-right{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}@keyframes viking-modal-in{from{opacity:0;transform:translateY(12px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes viking-backdrop-in{from{opacity:0}to{opacity:1}}@keyframes viking-shimmer{from{background-position:120% 0}to{background-position:-80% 0}}@keyframes viking-pulse-soft{0%,100%{opacity:1}50%{opacity:.72}}@keyframes viking-shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}@keyframes viking-tooltip-in{from{opacity:0;transform:translateY(4px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes viking-spin{to{transform:rotate(360deg)}}.viking-focus-ring:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-focus-ring-inset:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:calc(var(--viking-ring-offset)*-1)}.viking-touch-target{position:relative;min-width:var(--viking-touch-target-min);min-height:var(--viking-touch-target-min)}.viking-touch-target::before{content:"";position:absolute;inset:50%;width:max(100%,var(--viking-touch-target-min));height:max(100%,var(--viking-touch-target-min));transform:translate(-50%, -50%)}@media(min-width: 768px){:root{--viking-touch-target-comfort: 36px}}@media(prefers-reduced-motion: reduce){*,::before,::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.viking-btn-primary:focus-visible,a.viking-btn-primary:focus-visible,button.viking-btn-primary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-btn-primary:disabled,.viking-btn-primary[aria-busy=true],a.viking-btn-primary:disabled,a.viking-btn-primary[aria-busy=true],button.viking-btn-primary:disabled,button.viking-btn-primary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.viking-btn-primary[aria-busy=true] .viking-btn-label,a.viking-btn-primary[aria-busy=true] .viking-btn-label,button.viking-btn-primary[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb, var(--viking-accent) 82%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.viking-btn-outline:focus-visible,a.viking-btn-outline:focus-visible,button.viking-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-btn-outline:disabled,.viking-btn-outline[aria-busy=true],a.viking-btn-outline:disabled,a.viking-btn-outline[aria-busy=true],button.viking-btn-outline:disabled,button.viking-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.viking-btn-outline[aria-busy=true] .viking-btn-label,a.viking-btn-outline[aria-busy=true] .viking-btn-label,button.viking-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb, var(--viking-accent) 45%, var(--viking-border-strong));box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.viking-btn-danger:focus-visible,a.viking-btn-danger:focus-visible,button.viking-btn-danger:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-btn-danger:disabled,.viking-btn-danger[aria-busy=true],a.viking-btn-danger:disabled,a.viking-btn-danger[aria-busy=true],button.viking-btn-danger:disabled,button.viking-btn-danger[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.viking-btn-danger[aria-busy=true] .viking-btn-label,a.viking-btn-danger[aria-busy=true] .viking-btn-label,button.viking-btn-danger[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb, var(--viking-danger) 85%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb, var(--viking-danger) 88%, var(--viking-white));border-color:color-mix(in srgb, var(--viking-danger) 92%, var(--viking-white));box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.viking-btn-ghost:focus-visible,a.viking-btn-ghost:focus-visible,button.viking-btn-ghost:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-btn-ghost:disabled,.viking-btn-ghost[aria-busy=true],a.viking-btn-ghost:disabled,a.viking-btn-ghost[aria-busy=true],button.viking-btn-ghost:disabled,button.viking-btn-ghost[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.viking-btn-ghost[aria-busy=true] .viking-btn-label,a.viking-btn-ghost[aria-busy=true] .viking-btn-label,button.viking-btn-ghost[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{background:rgba(0,0,0,0);color:var(--viking-text);min-width:auto;box-shadow:none}.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.viking-btn-subtle:focus-visible,a.viking-btn-subtle:focus-visible,button.viking-btn-subtle:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.viking-btn-subtle:disabled,.viking-btn-subtle[aria-busy=true],a.viking-btn-subtle:disabled,a.viking-btn-subtle[aria-busy=true],button.viking-btn-subtle:disabled,button.viking-btn-subtle[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.viking-btn-subtle[aria-busy=true] .viking-btn-label,a.viking-btn-subtle[aria-busy=true] .viking-btn-label,button.viking-btn-subtle[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{background:rgba(0,0,0,0);color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb, var(--viking-accent) 45%, var(--viking-border-strong));box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb, var(--viking-accent) 82%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb, var(--viking-accent-secondary) 82%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-btn.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb, var(--viking-accent) 45%, var(--viking-border));background:color-mix(in srgb, var(--viking-accent) 8%, var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale))}.viking-btn.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb, var(--viking-danger) 85%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb, var(--viking-danger) 88%, var(--viking-white));border-color:color-mix(in srgb, var(--viking-danger) 92%, var(--viking-white));box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-ghost{background:rgba(0,0,0,0);color:var(--viking-text);min-width:auto;box-shadow:none}.viking-btn.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-subtle{background:rgba(0,0,0,0);color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-stack{display:flex;flex-direction:column;gap:var(--viking-stack-gap, var(--viking-space-2));align-items:var(--viking-stack-align, stretch)}.viking-stack--tight{--viking-stack-gap: var(--viking-space-1)}.viking-stack--compact{--viking-stack-gap: var(--viking-space-1-5)}.viking-stack--loose{--viking-stack-gap: var(--viking-space-3)}.viking-stack--center{--viking-stack-align: center}.viking-cluster{display:flex;flex-wrap:wrap;gap:var(--viking-cluster-gap, var(--viking-space-1));align-items:var(--viking-cluster-align, center);justify-content:var(--viking-cluster-justify, flex-start)}.viking-cluster--between{--viking-cluster-justify: space-between}.viking-cluster--end{--viking-cluster-justify: flex-end}.viking-cluster--tight{--viking-cluster-gap: var(--viking-space-half)}.viking-inline{display:inline-flex;align-items:center;gap:var(--viking-inline-gap, var(--viking-space-half))}.viking-inline--wide{--viking-inline-gap: var(--viking-space-1)}.viking-grid{display:grid;gap:var(--viking-grid-gap, var(--viking-space-2));width:100%}.viking-grid--tight{--viking-grid-gap: var(--viking-space-1)}.viking-grid--loose{--viking-grid-gap: var(--viking-space-3)}.viking-grid--2,.viking-grid--3,.viking-grid--4{grid-template-columns:1fr}@media(min-width: 768px){.viking-grid--2{grid-template-columns:repeat(2, minmax(0, 1fr))}.viking-grid--3,.viking-grid--4{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1024px){.viking-grid--3{grid-template-columns:repeat(3, minmax(0, 1fr))}.viking-grid--4{grid-template-columns:repeat(4, minmax(0, 1fr))}}.viking-divider{border:0;border-top:1px solid var(--viking-border-subtle);margin:var(--viking-space-2) 0}.viking-divider--strong{border-top-color:var(--viking-border)}.viking-surface-panel,.glass-panel{background:var(--viking-surface);border:1px solid var(--viking-border);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-sm);position:relative;overflow:hidden}.viking-surface-panel::before,.glass-panel::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--viking-metallic-200) 18%, transparent), transparent);pointer-events:none}.viking-status-dot{display:inline-block;width:var(--viking-space-1);height:var(--viking-space-1);border-radius:var(--viking-radius-pill);background:currentColor;flex-shrink:0}.viking-status-dot--pulse,.telemetry-pulse{position:relative}.viking-status-dot--pulse::after,.telemetry-pulse::after{content:"";position:absolute;inset:0;border-radius:inherit;background:currentColor;opacity:.35;animation:viking-pulse-soft 2s var(--viking-ease-default) infinite;pointer-events:none}.viking-metric-row,.hud-metrics{display:grid;grid-template-columns:1fr;gap:var(--viking-space-2);margin-bottom:var(--viking-space-2)}@media(min-width: 480px){.viking-metric-row,.hud-metrics{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 600px){.viking-metric-row,.hud-metrics{grid-template-columns:repeat(4, 1fr)}}@media(min-width: 768px){.viking-metric-row,.hud-metrics{grid-template-columns:repeat(12, 1fr)}}.viking-metric-card,.metric-card{display:flex;flex-direction:column;gap:var(--viking-space-half);background-color:var(--viking-surface);border:1px solid var(--viking-border);padding:var(--viking-space-2);border-radius:var(--viking-radius);min-width:0;align-items:flex-start;box-sizing:border-box;box-shadow:var(--viking-shadow-sm);transition:var(--viking-transition-colors)}@media(min-width: 481px){.viking-metric-card,.metric-card{min-width:160px}}.viking-metric-label,.metric-card .metric-label{font-size:var(--viking-font-size-ui);font-family:var(--viking-font-family);color:var(--viking-text-muted);letter-spacing:.05em}.viking-metric-value,.metric-card .metric-value{font-size:calc(var(--viking-font-size)*1.35);font-weight:700;font-family:var(--viking-font-family);line-height:1.2}.viking-metric-card-warning,.metric-card.warning{border-left:3px solid var(--viking-warning)}.viking-metric-card-warning .viking-metric-value,.viking-metric-card-warning .metric-value,.metric-card.warning .viking-metric-value,.metric-card.warning .metric-value{color:var(--viking-warning)}.viking-metric-card-critical,.metric-card.critical{border-left:3px solid var(--viking-danger)}.viking-metric-card-critical .viking-metric-value,.viking-metric-card-critical .metric-value,.metric-card.critical .viking-metric-value,.metric-card.critical .metric-value{color:var(--viking-danger-text, var(--viking-danger))}.viking-hud-panel,.panel-section{background-color:var(--viking-surface);border:1px solid var(--viking-border);border-radius:var(--viking-radius);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--viking-shadow-sm);min-width:0}.viking-table-scroll,.table-scroll,.panel-body-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.viking-hud-panel-header,.panel-header{display:flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-2);background-color:color-mix(in srgb, var(--viking-bg) 2%, transparent);border-bottom:1px solid var(--viking-border)}.viking-hud-panel-title,.panel-header h2{font-size:var(--viking-font-size-ui);font-weight:700;text-transform:uppercase;margin:0;letter-spacing:.05em;flex:1}.viking-panel-card,.status-card-outlined{position:relative;border-radius:var(--viking-radius-lg);border:1px solid var(--viking-border);background-color:var(--viking-surface);overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-panel-card::before,.status-card-outlined::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--viking-metallic-200) 18%, transparent), transparent);pointer-events:none;z-index:1}.viking-panel-card-header,.card-header-clean{padding:var(--viking-space-2);display:flex;align-items:center;justify-content:space-between;gap:var(--viking-space-2);border-bottom:1px solid var(--viking-border)}.viking-panel-card-body,.card-body-clean{padding:var(--viking-space-2)}.viking-page-header,.hud-header,.dashboard-topbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--viking-space-2);padding-bottom:var(--viking-space-2);margin-bottom:var(--viking-space-2);border-bottom:1px solid var(--viking-border)}.viking-page-header-sidebar.dashboard-topbar{padding:var(--viking-space-2);background-color:var(--viking-surface);border-bottom:1px solid var(--viking-border-subtle);box-shadow:var(--viking-shadow-xs)}.viking-page-header-main,.title-group.topbar-left{display:flex;flex-direction:column;align-items:flex-start;gap:var(--viking-space-3);min-width:0}.viking-page-header-title-block{display:flex;flex-direction:column;align-items:flex-start;width:100%;min-width:0}.viking-page-back-link-host{flex-shrink:0}.viking-page-header-title,.hud-title,.page-title{margin:0;font-size:var(--viking-font-size-lg);font-weight:700;letter-spacing:-0.02em;color:var(--viking-text)}.viking-page-header-subtitle,.hud-subtitle,.page-description{margin:var(--viking-space-1) 0 0;font-size:var(--viking-font-size);color:var(--viking-text-muted);line-height:1.6}.viking-empty-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--viking-space-4) var(--viking-space-3);text-align:center;color:var(--viking-text-muted);gap:var(--viking-space-1-5);animation:viking-fade-in var(--viking-duration) var(--viking-ease-default)}.status-card-outlined:has(.chart-custom-header) .chart-custom-header,.status-card-outlined:has(.chart-custom-header) viking-chart-card-header,.viking-chart-panel:has(viking-chart-card-header) .chart-custom-header,.viking-chart-panel:has(viking-chart-card-header) viking-chart-card-header{border-bottom:1px solid var(--viking-border-subtle);padding-bottom:var(--viking-space-2);margin-bottom:0}.viking-chart-panel-body viking-chart,.viking-chart-panel-body .viking-chart-large,.viking-chart-panel-body .viking-chart-medium{flex:1 1 auto;display:flex;width:100%;min-height:inherit;height:100%}.chart-container-large{--viking-chart-fill-min-height: var(--viking-chart-fill-min-height-lg, clamp(17.5rem, 36vw, 20rem));--viking-chart-fill-max-height: var(--viking-chart-fill-max-height-lg, clamp(20rem, 44vw, 22rem));min-height:var(--viking-chart-panel-body-min-height-lg, 22.5rem)}.chart-container-medium{--viking-chart-fill-min-height: var(--viking-chart-fill-min-height, clamp(16rem, 32vw, 17.5rem));--viking-chart-fill-max-height: var(--viking-chart-fill-max-height, clamp(17.5rem, 40vw, 21rem));min-height:var(--viking-chart-panel-body-min-height-md, 19rem)}.viking-chart-empty,.empty-chart-state,.panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--viking-space-4) var(--viking-space-3);border-radius:var(--viking-radius-lg);background:var(--viking-surface-alt);border:1px dashed var(--viking-border-strong);box-shadow:var(--viking-shadow-inner);min-height:220px;gap:var(--viking-space-2);animation:viking-fade-in var(--viking-duration) var(--viking-ease-default)}.viking-chart-empty.compact,.empty-chart-state.compact,.panel-empty.compact{min-height:160px;padding:var(--viking-space-3) var(--viking-space-3)}.viking-chart-empty.inline,.empty-chart-state.inline,.panel-empty.inline{min-height:auto;border-style:solid;border-color:var(--viking-border);background:color-mix(in srgb, var(--viking-surface-alt) 50%, transparent)}.viking-chart-empty.is-secure .empty-icon,.viking-chart-empty.is-secure .viking-icon,.viking-chart-empty.is-secure viking-icon,.viking-chart-empty.is-secure viking-app-icon,.empty-chart-state.is-secure .empty-icon,.empty-chart-state.is-secure .viking-icon,.empty-chart-state.is-secure viking-icon,.empty-chart-state.is-secure viking-app-icon,.panel-empty.is-secure .empty-icon,.panel-empty.is-secure .viking-icon,.panel-empty.is-secure viking-icon,.panel-empty.is-secure viking-app-icon{background:color-mix(in srgb, var(--viking-success) 14%, transparent);color:var(--viking-success)}.viking-chart-empty .empty-icon,.viking-chart-empty .viking-icon,.viking-chart-empty viking-icon,.viking-chart-empty viking-app-icon,.empty-chart-state .empty-icon,.empty-chart-state .viking-icon,.empty-chart-state viking-icon,.empty-chart-state viking-app-icon,.panel-empty .empty-icon,.panel-empty .viking-icon,.panel-empty viking-icon,.panel-empty viking-app-icon{display:flex;align-items:center;justify-content:center;width:var(--viking-space-6);height:var(--viking-space-6);border-radius:var(--viking-radius-lg);background:var(--viking-accent-soft);color:var(--viking-accent-strong);box-shadow:var(--viking-shadow-sm);margin-bottom:var(--viking-space-2);font-size:28px;opacity:1}.viking-chart-empty .empty-title,.viking-chart-empty h3,.empty-chart-state .empty-title,.empty-chart-state h3,.panel-empty .empty-title,.panel-empty h3{margin:0 0 var(--viking-space-1) 0;font-size:var(--viking-font-size-md);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-caps);text-transform:uppercase;color:var(--viking-text);line-height:var(--viking-line-height-tight)}.viking-chart-empty .empty-subtitle,.viking-chart-empty p,.empty-chart-state .empty-subtitle,.empty-chart-state p,.panel-empty .empty-subtitle,.panel-empty p{margin:0;font-size:var(--viking-font-size);color:var(--viking-text-muted);line-height:var(--viking-line-height-relaxed);max-width:28rem}.viking-list-empty,.empty-data-text{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--viking-space-4) var(--viking-space-3);gap:var(--viking-space-1);color:var(--viking-text-muted);font-size:var(--viking-font-size);line-height:var(--viking-line-height-relaxed);background:var(--viking-surface-alt);border-top:1px solid var(--viking-border-subtle)}.viking-list-empty .empty-icon,.viking-list-empty viking-app-icon,.empty-data-text .empty-icon,.empty-data-text viking-app-icon{display:flex;align-items:center;justify-content:center;width:var(--viking-space-5);height:var(--viking-space-5);border-radius:var(--viking-radius-md);background:var(--viking-accent-soft);color:var(--viking-accent-strong);font-size:22px;margin-bottom:var(--viking-space-2)}.viking-list-empty .empty-title,.empty-data-text .empty-title{margin:0 0 var(--viking-space-1) 0;font-size:var(--viking-font-size-sm);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-caps);text-transform:uppercase;color:var(--viking-text)}.viking-list-empty .empty-subtitle,.empty-data-text .empty-subtitle{margin:0;max-width:24rem}.panel-card{position:relative;padding:var(--viking-space-2);border-radius:var(--viking-radius-lg);border:1px solid var(--viking-border);background-color:var(--viking-surface);overflow:hidden;box-shadow:var(--viking-shadow-sm)}.panel-card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--viking-metallic-200) 18%, transparent), transparent);pointer-events:none;z-index:1}.status-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--viking-space-4) var(--viking-space-3);margin-top:var(--viking-space-4);background:var(--viking-surface-alt);border:1px dashed var(--viking-border-strong);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-inner);gap:var(--viking-space-1-5);animation:viking-fade-in var(--viking-duration) var(--viking-ease-default)}@media(min-width: 601px){.status-error-state{padding:var(--viking-space-7) var(--viking-space-4)}}.status-error-state .error-state-icon,.status-error-state viking-app-icon{display:flex;align-items:center;justify-content:center;width:var(--viking-space-7);height:var(--viking-space-7);border-radius:var(--viking-radius-lg);background:color-mix(in srgb, var(--viking-text-muted) 10%, transparent);color:var(--viking-text-muted);font-size:36px;margin-bottom:var(--viking-space-1);opacity:.85}.status-error-state .error-title{margin:0;font-size:var(--viking-font-size-xl);font-weight:var(--viking-font-weight-bold);color:var(--viking-text);letter-spacing:var(--viking-letter-spacing-tight)}.status-error-state .error-subtitle{margin:0 0 var(--viking-space-2);font-size:var(--viking-font-size);line-height:var(--viking-line-height-relaxed);color:var(--viking-text-muted);max-width:26rem}.status-error-state .retry-btn{font-weight:var(--viking-font-weight-bold)}.viking-loader-state,.loader-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--viking-space-4) var(--viking-space-3);gap:var(--viking-space-2);color:var(--viking-text-muted);animation:viking-fade-in var(--viking-duration) var(--viking-ease-default)}.viking-spinner,.spinner{width:var(--viking-space-4);height:var(--viking-space-4);border:3px solid var(--viking-border);border-top-color:var(--viking-accent);border-radius:50%;animation:viking-spin .8s linear infinite}@media(prefers-reduced-motion: reduce){.viking-spinner,.spinner{animation:none;border-top-color:var(--viking-accent)}}.viking-dashboard-layout,.dashboard-layout{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;min-height:calc(100vh - 64px)}@media(min-width: 901px){.viking-dashboard-layout,.dashboard-layout{flex-direction:row}}.viking-dashboard-main,.dashboard-main{flex:1;display:flex;flex-direction:column;min-width:0}.viking-page-shell,.page-inner-wrapper{width:100%;max-width:var(--viking-container-max-width, var(--container-max-width, 1260px));margin-inline:auto;padding-inline:var(--viking-space-2, var(--space-2, 16px));box-sizing:border-box}@media(min-width: 1440px){.viking-page-shell,.page-inner-wrapper,.viking-section-inner{padding-inline:var(--viking-space-3, var(--space-3, 24px))}}@media(min-width: 1920px){.viking-page-shell,.page-inner-wrapper,.viking-section-inner{padding-inline:var(--viking-space-4, var(--space-4, 32px))}}.viking-section{width:100%;padding-block:var(--viking-space-6, var(--space-6, 48px))}.viking-content-stack{display:flex;flex-direction:column;gap:var(--viking-space-3, var(--space-3, 24px));width:100%}.viking-content-stack--tight{gap:var(--viking-space-2, var(--space-2, 16px))}.viking-section--compact{padding-block:var(--viking-space-4, var(--space-4, 32px))}.viking-section--hero{padding-block:var(--viking-space-6, var(--space-6, 48px)) var(--viking-space-4, var(--space-4, 32px))}@media(min-width: 768px){.viking-section--hero{padding-block:calc(var(--viking-space-6, 48px) + var(--viking-space-2, 16px)) var(--viking-space-6, 48px)}}.viking-section-inner{width:100%;max-width:var(--viking-container-max-width, var(--container-max-width, 1260px));margin-inline:auto;padding-inline:var(--viking-space-2, var(--space-2, 16px));box-sizing:border-box}.viking-section-header{display:flex;flex-direction:column;gap:var(--viking-space-1, var(--space-1, 8px));margin-bottom:var(--viking-space-4, var(--space-4, 32px));max-width:48rem}.viking-section-title{margin:0;font-family:var(--viking-font-family);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:var(--header-letter-spacing, -0.02em);color:var(--viking-text, var(--text-color))}.viking-section-lead{margin:0;font-family:var(--viking-font-family);font-size:var(--viking-font-size, var(--base-font-size, 16px));line-height:1.6;color:var(--viking-text-muted, var(--text-muted))}.viking-cta-row{display:flex;flex-direction:column;gap:var(--viking-space-2, var(--space-2, 16px));align-items:stretch;width:100%}@media(min-width: 600px){.viking-cta-row{flex-direction:row;flex-wrap:wrap;align-items:center;width:auto}}.viking-cta-row .viking-btn,.viking-cta-row a.viking-btn,.viking-cta-row a.cta-button{min-width:var(--viking-btn-min-width, var(--btn-min-width, 120px))}:root{--viking-accent: var(--color-primary, var(--viking-teal-600, var(--viking-teal-600)));--viking-accent-hover: var(--viking-teal-500, #109094);--viking-accent-content: var(--color-on-primary, var(--viking-white-pure, var(--viking-white-pure)));--viking-accent-soft: color-mix(in srgb, var(--viking-accent) 14%, transparent);--viking-accent-strong: var(--color-primary-container, var(--viking-teal-400, #14a3a8));--viking-accent-secondary: var(--accent-color, var(--viking-crimson-600, var(--viking-crimson-600)));--viking-accent-secondary-hover: var(--viking-crimson-500, var(--viking-crimson-500));--viking-accent-secondary-content: var(--viking-white-pure, var(--viking-white-pure));--viking-accent-secondary-soft: color-mix(in srgb, var(--viking-accent-secondary) 12%, transparent);--viking-bg: var(--bg-color, var(--viking-charcoal-900, #111111));--viking-surface: var(--card-bg, var(--viking-charcoal-800, #1a1a1a));--viking-surface-alt: var(--color-surface-variant, var(--viking-charcoal-700, var(--viking-charcoal-700)));--viking-surface-raised: var(--viking-charcoal-600, #333333);--viking-overlay-backdrop: color-mix(in srgb, var(--viking-charcoal-950, #0a0a0a) 72%, transparent);--viking-text: var(--text-color, var(--viking-white, var(--viking-white)));--viking-text-muted: var(--text-muted, var(--viking-metallic-200, #aaaaaa));--viking-text-subtle: var(--viking-metallic-300, #999999);--viking-text-inverted: var(--color-on-primary, var(--viking-charcoal-900, #111111));--viking-border: var(--border, color-mix(in srgb, var(--viking-metallic-600, #555555) 35%, transparent));--viking-border-strong: var(--border-layout, color-mix(in srgb, var(--viking-metallic-400, #777777) 55%, transparent));--viking-border-subtle: color-mix(in srgb, var(--viking-metallic-600, #555555) 18%, transparent);--viking-ring: var(--focus-ring-color, var(--viking-teal-400, #14a3a8));--viking-ring-width: var(--focus-ring-width, 2px);--viking-ring-offset: var(--focus-ring-offset, 2px);--viking-success: var(--color-success, var(--viking-green-500, var(--viking-green-500)));--viking-warning: var(--color-warning, var(--viking-gold-500, var(--viking-gold-500)));--viking-danger: var(--color-error, var(--viking-crimson-500, var(--viking-crimson-500)));--viking-info: var(--color-info, var(--viking-blue-500, var(--viking-blue-500)));--viking-danger-text: color-mix(in srgb, var(--viking-danger) 50%, var(--viking-charcoal-900, #111111));--viking-on-danger: var(--viking-white-pure, var(--viking-white-pure));--viking-radius-xs: 4px;--viking-radius-sm: 6px;--viking-radius: var(--border-radius-md, 8px);--viking-radius-md: 10px;--viking-radius-lg: var(--border-radius-lg, 12px);--viking-radius-xl: 16px;--viking-radius-pill: var(--border-radius-pill, 999px);--viking-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);--viking-shadow-sm: var( --shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.18), 0 1px 3px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.04) );--viking-shadow-md: var( --shadow-md, 0 2px 4px rgba(0, 0, 0, 0.16), 0 4px 8px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.05) );--viking-shadow-lg: var( --shadow-lg, 0 4px 8px rgba(0, 0, 0, 0.14), 0 12px 24px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06) );--viking-shadow-inner: inset 0 1px 2px rgba(0, 0, 0, 0.14);--viking-font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;--viking-font-family-mono: ui-monospace, 'JetBrains Mono', 'SF Mono', 'Cascadia Code', Consolas, monospace;--viking-font-size-2xs: 11px;--viking-font-size-xs: 12px;--viking-font-size-sm: max(14px, var(--ui-font-size, 14px));--viking-font-size: max(16px, var(--base-font-size, 16px));--viking-font-size-md: max(16px, calc(var(--viking-font-size) * 1.125));--viking-font-size-lg: max(16px, calc(var(--viking-font-size) * 1.25));--viking-font-size-xl: max(18px, calc(var(--viking-font-size) * 1.5));--viking-font-size-2xl: max(20px, calc(var(--viking-font-size) * 1.875));--viking-font-size-3xl: max(24px, calc(var(--viking-font-size) * 2.25));--viking-font-size-4xl: max(30px, calc(var(--viking-font-size) * 3));--viking-font-size-ui: var(--viking-font-size-sm);--viking-font-weight-regular: 400;--viking-font-weight-medium: 500;--viking-font-weight-semibold: 600;--viking-font-weight-bold: 700;--viking-line-height-tight: 1.25;--viking-line-height-snug: 1.375;--viking-line-height-normal: 1.5;--viking-line-height-relaxed: 1.625;--viking-line-height-loose: 1.75;--viking-letter-spacing-tight: var(--header-letter-spacing, -0.02em);--viking-letter-spacing-normal: 0;--viking-letter-spacing-wide: 0.025em;--viking-letter-spacing-wider: 0.05em;--viking-letter-spacing-caps: 0.08em;--viking-control-height: var(--viking-touch-target-min, 44px);--viking-control-height-sm: 40px;--viking-control-height-xs: 24px;--viking-control-padding-x: var(--space-2, var(--viking-space-2, 16px));--viking-btn-min-width: var(--btn-min-width, 120px);--viking-grid-unit: 4px;--viking-space-0: 0;--viking-space-half: var(--space-half, 4px);--viking-space-1: var(--space-1, 8px);--viking-space-1-5: var(--space-1-5, 12px);--viking-space-2: var(--space-2, 16px);--viking-space-3: var(--space-3, 24px);--viking-space-4: var(--space-4, 32px);--viking-space-5: var(--space-5, 40px);--viking-space-6: var(--space-6, 48px);--viking-space-7: var(--space-7, 56px);--viking-space-8: var(--space-8, 64px);--viking-chart-axis-size: 12px;--viking-container-max-width: var(--container-max-width, 1260px);--viking-navbar-height: var(--navbar-height, 64px);--viking-sidebar-width: 256px;--viking-ease-default: cubic-bezier(0.4, 0, 0.2, 1);--viking-duration-fast: 150ms;--viking-duration: 250ms;--viking-duration-slow: 350ms;--viking-transition-colors: color var(--viking-duration) var(--viking-ease-default), background-color var(--viking-duration) var(--viking-ease-default), border-color var(--viking-duration) var(--viking-ease-default), box-shadow var(--viking-duration) var(--viking-ease-default);--viking-transition: var(--transition-smooth, all 0.25s cubic-bezier(0.4, 0, 0.2, 1));--viking-z-overlay: 1000;--viking-z-toast: 1100;--viking-z-tooltip: 1200}html[data-theme=dark]{--viking-danger-text: var(--viking-danger)}@media(prefers-color-scheme: dark){html:not([data-theme=light]){--viking-danger-text: var(--viking-danger)}}html{color-scheme:dark light}html,body,.viking-btn,.viking-card,.viking-hud-panel,.viking-metric-card,.viking-panel-card{transition:var(--viking-transition-colors)}@media(min-width: 768px){:root{--viking-control-height: 40px;--viking-control-height-sm: 32px}}.viking-tooltip{position:fixed;z-index:var(--viking-z-tooltip);display:inline-flex;align-items:center;gap:var(--viking-space-1);max-width:min(20rem,100vw - var(--viking-space-4));padding:var(--viking-space-half) var(--viking-space-1);font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);line-height:var(--viking-line-height-snug);color:var(--viking-text-inverted);background:var(--viking-charcoal-900, #111111);border:1px solid var(--viking-border-strong);border-radius:var(--viking-radius);box-shadow:var(--viking-shadow-md);pointer-events:none;animation:viking-tooltip-in var(--viking-duration-fast) var(--viking-ease-out)}html[data-theme=light] .viking-tooltip{color:var(--viking-white-pure, var(--viking-white-pure));background:var(--viking-charcoal-800, #1a1a1a);border-color:color-mix(in srgb, var(--viking-charcoal-600, #333333) 45%, transparent)}@media(prefers-color-scheme: light){html:not([data-theme=dark]) .viking-tooltip{color:var(--viking-white-pure, var(--viking-white-pure));background:var(--viking-charcoal-800, #1a1a1a);border-color:color-mix(in srgb, var(--viking-charcoal-600, #333333) 45%, transparent)}}.viking-tooltip-text{flex:1;min-width:0}.viking-tooltip-kbd{font-family:var(--viking-font-family-mono);font-size:var(--viking-font-size-xs);padding:0 var(--viking-space-half);border:1px solid color-mix(in srgb, var(--viking-text-inverted) 35%, transparent);border-radius:var(--viking-radius-xs);line-height:1.4;white-space:nowrap}.viking-tooltip-host{-webkit-tap-highlight-color:rgba(0,0,0,0)}@media(prefers-reduced-motion: reduce){.viking-tooltip{animation:none}}.auth-btn,a.auth-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.auth-btn:focus-visible,a.auth-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.auth-btn:disabled,.auth-btn[aria-busy=true],a.auth-btn:disabled,a.auth-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.auth-btn[aria-busy=true] .viking-btn-label,a.auth-btn[aria-busy=true] .viking-btn-label{opacity:.85}.auth-btn,a.auth-btn{text-transform:uppercase;background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb, var(--viking-accent) 82%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.auth-btn:hover:not(:disabled):not([aria-busy=true]),a.auth-btn:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.auth-btn:active:not(:disabled):not([aria-busy=true]),a.auth-btn:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.auth-btn svg,.auth-btn .material-icons,a.auth-btn svg,a.auth-btn .material-icons{flex-shrink:0;transition:transform var(--viking-duration-fast, 150ms) var(--viking-ease-default, ease)}.auth-btn:hover svg,a.auth-btn:hover svg{transform:translateX(2px)}.auth-btn.auth-btn-outline,a.auth-btn.auth-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.auth-btn.auth-btn-outline:focus-visible,a.auth-btn.auth-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.auth-btn.auth-btn-outline:disabled,.auth-btn.auth-btn-outline[aria-busy=true],a.auth-btn.auth-btn-outline:disabled,a.auth-btn.auth-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.auth-btn.auth-btn-outline[aria-busy=true] .viking-btn-label,a.auth-btn.auth-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85}.auth-btn.auth-btn-outline,a.auth-btn.auth-btn-outline{text-transform:uppercase;background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.auth-btn.auth-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.auth-btn.auth-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb, var(--viking-accent) 45%, var(--viking-border-strong));box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.auth-btn.auth-btn-outline:active:not(:disabled):not([aria-busy=true]),a.auth-btn.auth-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.auth-btn.auth-btn-outline:hover svg,a.auth-btn.auth-btn-outline:hover svg{transform:none}.mobile-auth-btn,a.mobile-auth-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mobile-auth-btn:focus-visible,a.mobile-auth-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.mobile-auth-btn:disabled,.mobile-auth-btn[aria-busy=true],a.mobile-auth-btn:disabled,a.mobile-auth-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.mobile-auth-btn[aria-busy=true] .viking-btn-label,a.mobile-auth-btn[aria-busy=true] .viking-btn-label{opacity:.85}.mobile-auth-btn,a.mobile-auth-btn{text-transform:uppercase;background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb, var(--viking-accent) 82%, var(--viking-black));box-shadow:var(--viking-shadow-sm)}.mobile-auth-btn:hover:not(:disabled):not([aria-busy=true]),a.mobile-auth-btn:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.mobile-auth-btn:active:not(:disabled):not([aria-busy=true]),a.mobile-auth-btn:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.mobile-auth-btn svg,.mobile-auth-btn .material-icons,a.mobile-auth-btn svg,a.mobile-auth-btn .material-icons{flex-shrink:0;transition:transform var(--viking-duration-fast, 150ms) var(--viking-ease-default, ease)}.mobile-auth-btn:hover svg,a.mobile-auth-btn:hover svg{transform:translateX(2px)}.mobile-auth-btn,a.mobile-auth-btn{width:100%;min-width:0;justify-content:center}.mobile-auth-btn.auth-btn-outline,a.mobile-auth-btn.auth-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-none);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid rgba(0,0,0,0);cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mobile-auth-btn.auth-btn-outline:focus-visible,a.mobile-auth-btn.auth-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}.mobile-auth-btn.auth-btn-outline:disabled,.mobile-auth-btn.auth-btn-outline[aria-busy=true],a.mobile-auth-btn.auth-btn-outline:disabled,a.mobile-auth-btn.auth-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none;box-shadow:none}.mobile-auth-btn.auth-btn-outline[aria-busy=true] .viking-btn-label,a.mobile-auth-btn.auth-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85}.mobile-auth-btn.auth-btn-outline,a.mobile-auth-btn.auth-btn-outline{text-transform:uppercase;background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.mobile-auth-btn.auth-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.mobile-auth-btn.auth-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb, var(--viking-accent) 45%, var(--viking-border-strong));box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.mobile-auth-btn.auth-btn-outline:active:not(:disabled):not([aria-busy=true]),a.mobile-auth-btn.auth-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.mobile-auth-btn.auth-btn-outline:hover svg,a.mobile-auth-btn.auth-btn-outline:hover svg{transform:none}.sr-only,.visually-hidden{position:absolute !important;width:0 !important;height:0 !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.skip-link{position:absolute;top:0;left:var(--space-2, 16px);z-index:10000;padding:var(--space-1, 8px) var(--space-2, 16px);border-radius:var(--border-radius-sm, 8px);background-color:var(--black, var(--viking-black)) !important;color:var(--white, var(--viking-white-pure)) !important;text-decoration:none;font-weight:600;font-size:max(16px,var(--base-font-size, 16px));line-height:1.4;clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;border:0}.skip-link:focus,.skip-link:focus-visible{clip:auto;clip-path:none;width:auto;height:auto;overflow:visible;white-space:normal;outline:var(--focus-ring-width, 3px) solid var(--focus-ring-color, var(--viking-teal-600));outline-offset:var(--focus-ring-offset, 2px)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color) !important;outline-offset:var(--focus-ring-offset) !important}.viking-input-shell input:focus,.viking-input-shell input:focus-visible,.viking-textarea-shell textarea:focus,.viking-textarea-shell textarea:focus-visible{outline:none !important}@media(prefers-reduced-motion: reduce){*,::before,::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}@media(forced-colors: active){a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid CanvasText !important}}.navbar{position:sticky;top:0;z-index:50;width:100%;height:var(--viking-navbar-height, 64px);background-color:var(--navbar-bg, color-mix(in srgb, var(--viking-surface, var(--card-bg)) 92%, transparent));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-layout, var(--viking-border));display:flex;flex-direction:column;align-items:stretch;padding:0 var(--viking-space-2, 16px);box-sizing:border-box}@media(min-width: 768px){.navbar{padding-inline:var(--viking-space-3, 24px)}}.navbar{box-shadow:var(--viking-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.2));isolation:isolate}.navbar-brand{margin-right:var(--viking-space-1, 8px);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1, 8px);text-decoration:none;overflow:visible;flex-shrink:0;padding:0;min-height:36px;line-height:1;transition:filter .3s ease}.navbar-title{font-size:var(--base-font-size);font-weight:700;line-height:1.2;color:var(--text-color);letter-spacing:-0.02em}.navbar-logo{font-size:28px;width:36px;height:36px;line-height:1;color:var(--color-primary, var(--viking-teal-600));overflow:visible;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.navbar-brand .navbar-logo,.navbar-brand viking-icon.navbar-logo{color:var(--color-primary, var(--viking-teal-600)) !important}.navbar-brand .navbar-logo.mat-icon,.navbar-brand mat-icon.navbar-logo{overflow:visible !important;width:36px !important;height:36px !important;font-size:28px !important;line-height:36px !important;padding:0 !important;box-sizing:border-box;display:inline-flex !important;align-items:center !important;justify-content:center !important}.navbar-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:var(--viking-space-2, 16px);width:100%;max-width:none;margin:0;min-width:0;min-height:var(--viking-navbar-height, 64px)}.navbar-left{flex:1;display:flex;align-items:center;justify-content:flex-start}.navbar-right{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:var(--viking-space-2, 16px)}.navbar-center{display:flex;justify-content:center}.desktop-nav{display:none;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--viking-space-2, 16px);padding:var(--viking-space-half, 4px) 0}.desktop-auth{display:none;align-items:center;gap:var(--viking-space-2, 16px)}.desktop-auth viking-button{min-width:auto}.nav-btn{position:relative;font-size:1rem !important;color:var(--nav-link-color, var(--text-muted)) !important;font-weight:600 !important;text-transform:uppercase !important;letter-spacing:.08em !important;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease !important;border-radius:var(--border-radius-sm) var(--border-radius-sm) 0 0 !important;padding:0 var(--viking-space-2, 16px) !important;height:var(--viking-control-height, 40px) !important;line-height:var(--viking-control-height, 40px) !important;display:inline-flex !important;align-items:center !important;gap:8px !important;text-decoration:none;background:rgba(0,0,0,0);border:none;cursor:pointer;overflow:hidden}.nav-btn .material-icons,.nav-btn svg,.nav-btn .viking-icon,.nav-btn [data-viking-icon],.mobile-nav-btn svg,.mobile-nav-btn [data-viking-icon],.auth-btn svg,.auth-btn [data-viking-icon],.theme-toggle-btn svg,.menu-toggle-btn svg,.navbar-search-trigger [data-viking-icon],.navbar-search-mobile-btn [data-viking-icon]{margin:0;flex-shrink:0}.nav-btn svg,.mobile-nav-btn svg,.auth-btn svg,.nav-btn [data-viking-icon] svg,.mobile-nav-btn [data-viking-icon] svg,.auth-btn [data-viking-icon] svg{width:16px;height:16px}.theme-toggle-btn svg,.menu-toggle-btn svg,.navbar-search-trigger svg,.navbar-search-mobile-btn svg,.theme-toggle-btn [data-viking-icon] svg,.menu-toggle-btn [data-viking-icon] svg,.navbar-search-trigger [data-viking-icon] svg,.navbar-search-mobile-btn [data-viking-icon] svg{width:24px;height:24px}.navbar-search-trigger [data-viking-icon] svg,.navbar-search-mobile-btn [data-viking-icon] svg{width:20px;height:20px}.nav-btn .material-icons{font-size:var(--base-font-size);width:16px;height:16px}.nav-btn::before{content:"";position:absolute;inset:auto 16px 0;height:2px;border-radius:2px;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--viking-teal-600) 80%, transparent), transparent);opacity:0;transform:scaleX(0.4);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.nav-btn:hover{color:var(--text-color) !important;background-color:color-mix(in srgb, var(--viking-teal-600) 10%, transparent) !important;transform:translateY(-1px)}.nav-btn:hover::before{opacity:1;transform:scaleX(1)}html[data-theme=light]{--nav-link-color: color-mix(in srgb, var(--viking-charcoal-900) 88%, var(--white))}html[data-theme=light] .nav-btn,html[data-theme=light] .mobile-nav-btn,html[data-theme=light] .menu-toggle-btn,html[data-theme=light] .theme-toggle-btn{color:var(--nav-link-color) !important}html[data-theme=light] .nav-btn:hover,html[data-theme=light] .mobile-nav-btn:hover{background-color:color-mix(in srgb, var(--viking-teal-600) 10%, transparent) !important}.nav-btn.active{color:var(--text-color) !important;background-color:color-mix(in srgb, var(--viking-teal-600) 14%, transparent) !important;box-shadow:inset 0 -2px 0 0 var(--viking-teal-600),0 0 12px color-mix(in srgb, var(--viking-teal-600) 18%, transparent) !important}.nav-btn.active::before{opacity:1;transform:scaleX(1)}.navbar .theme-toggle-btn,.theme-toggle-btn{position:static;background:rgba(0,0,0,0);color:var(--text-muted);border:none;border-radius:50%;width:var(--viking-control-height, 40px);height:var(--viking-control-height, 40px);min-width:var(--viking-control-height, 40px);padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:none;flex-shrink:0;transition:color .2s ease,transform .2s ease,background-color .2s ease}.navbar .theme-toggle-btn .material-icons,.navbar .theme-toggle-btn svg,.theme-toggle-btn .material-icons,.theme-toggle-btn svg{width:24px;height:24px}.navbar .theme-toggle-btn:hover,.theme-toggle-btn:hover{color:var(--text-color);transform:rotate(15deg);background-color:color-mix(in srgb, var(--viking-teal-600) 5%, transparent);box-shadow:none}.navbar .theme-toggle-btn:focus-visible,.theme-toggle-btn:focus-visible{outline:2px solid var(--color-primary-container);outline-offset:3px}.menu-toggle-btn{display:inline-flex !important;color:var(--text-muted) !important;transition:color .2s;background:rgba(0,0,0,0);border:none;cursor:pointer;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%}.menu-toggle-btn:hover{color:var(--text-color) !important}.divider{height:24px;width:0px;background-color:var(--border);margin:0 8px}.auth-btn .material-icons{margin:0;font-size:var(--viking-font-size-sm, 14px);width:16px;height:16px}.auth-btn,a.auth-btn,button.auth-btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:var(--viking-space-1, 8px) !important;min-width:auto !important;height:var(--viking-control-height, 40px) !important;min-height:var(--viking-control-height, 40px) !important;padding:0 var(--viking-space-2, 16px) !important;border-radius:var(--viking-radius, 8px) !important;letter-spacing:var(--viking-letter-spacing-caps, 0.08em) !important;text-transform:uppercase !important;white-space:nowrap !important;line-height:1 !important}.auth-signout-btn{background:rgba(0,0,0,0) !important;color:var(--text-muted) !important;font-weight:600 !important;border-radius:var(--viking-radius-pill, 999px) !important;padding:0 var(--viking-space-1-5, 12px) !important;border:1px solid var(--border) !important;height:var(--viking-control-height, 40px) !important;line-height:var(--viking-control-height, 40px) !important;display:inline-flex !important;align-items:center !important;gap:var(--viking-space-1, 8px) !important;white-space:nowrap !important;text-transform:uppercase !important;letter-spacing:.08em !important;cursor:pointer;transition:var(--viking-transition-interactive) !important}.auth-signout-btn:hover{color:var(--text-color) !important;border-color:var(--viking-crimson-500) !important;background:color-mix(in srgb, var(--viking-crimson-500) 10%, transparent) !important}.mobile-menu:not(.open){display:none !important}.mobile-menu{display:none;flex-direction:column;position:absolute;top:var(--viking-navbar-height, var(--navbar-height, 64px));left:0;right:0;width:auto;background-color:var(--viking-surface, var(--card-bg));box-shadow:var(--viking-shadow-md, var(--shadow-md));border-bottom:1px solid var(--viking-border, var(--border));padding:var(--viking-space-3, 24px);box-sizing:border-box;z-index:49;gap:var(--viking-space-1, 8px)}.mobile-menu viking-button{width:100%}.mobile-menu{transform:translateY(-10px);opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(0.16, 1, 0.3, 1),opacity .25s ease}.mobile-menu.open{transform:translateY(0);opacity:1;pointer-events:auto;display:flex}.mobile-nav-btn{width:100% !important;justify-content:flex-start !important;font-size:var(--viking-font-size, 16px) !important;color:var(--viking-text-muted, var(--text-muted)) !important;min-height:var(--viking-control-height, 40px) !important;border-radius:var(--viking-radius, 8px) !important;padding:0 var(--viking-space-2, 16px) !important;display:inline-flex !important;align-items:center !important;gap:var(--viking-space-1, 8px) !important;text-decoration:none;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);transition:var(--viking-transition-interactive, all 0.25s ease)}.mobile-nav-btn .material-icons{margin:0;font-size:20px;width:20px;height:20px}.mobile-nav-btn:hover{color:var(--viking-text, var(--text-color)) !important;background-color:var(--viking-accent-soft, color-mix(in srgb, var(--viking-teal-600) 8%, transparent)) !important}.mobile-nav-btn.active{color:var(--viking-text, var(--text-color)) !important;background-color:var(--viking-accent-soft, color-mix(in srgb, var(--viking-teal-600) 12%, transparent)) !important;box-shadow:inset 0 0 0 1px var(--viking-accent-strong, var(--viking-teal-400)) !important}.mobile-divider{height:1px;background-color:var(--viking-border, var(--border));margin:var(--viking-space-1, 8px) 0}.navbar-link{font-size:1rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;transition:var(--transition-smooth)}.navbar-link:hover{color:var(--text-color)}.glowing-icon-sm{color:var(--color-primary, var(--primary-text-color, var(--viking-teal-600))) !important;transition:all .3s ease}.navbar-brand.glowing-icon-sm,.navbar-brand:has(.glowing-icon-sm){filter:drop-shadow(0 0 6px color-mix(in srgb, var(--color-primary) 60%, transparent))}.navbar-brand.glowing-icon-sm:hover,.navbar-brand:has(.glowing-icon-sm):hover{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--color-primary) 90%, transparent))}.loader-logo.glowing-icon-sm,:not(.navbar-brand)>.glowing-icon-sm{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--color-primary) 60%, transparent))}.loader-logo.glowing-icon-sm:hover,:not(.navbar-brand)>.glowing-icon-sm:hover{filter:drop-shadow(0 0 10px color-mix(in srgb, var(--color-primary) 90%, transparent))}.navbar-search{display:flex;align-items:center;align-self:center;flex:0;justify-content:center;max-width:none;min-width:0;min-height:var(--viking-control-height, 40px);margin:0}.algolia-autocomplete-host{display:none;font-family:var(--viking-font-family, inherit);--aa-font-family: var(--viking-font-family, inherit);--aa-font-size: var(--viking-font-size-sm, 14px);--aa-spacing: var(--viking-space-1, 8px);--aa-spacing-half: var(--viking-space-half, 4px);--aa-panel-max-height: 288px;--aa-panel-shadow: var(--viking-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.25));--aa-icon-size: 20px;--aa-icon-stroke-width: 2px;--aa-primary-color-rgb: 20, 163, 168;--aa-muted-color-rgb: 148, 163, 184}.algolia-autocomplete-host.algolia-autocomplete-open{display:flex;align-items:flex-start;justify-content:center;position:fixed;inset:0;z-index:var(--viking-z-overlay, 10001);padding:10vh var(--viking-space-2, 16px) var(--viking-space-2, 16px);background:var(--viking-overlay-backdrop, rgba(0, 0, 0, 0.55));backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:none;box-shadow:none;max-width:none;width:auto;min-width:0}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Autocomplete,.algolia-autocomplete-host.algolia-autocomplete-open .aa-DetachedContainer{max-width:600px;width:100%;border:1px solid var(--viking-border, var(--border));border-radius:var(--viking-radius-lg, 12px);background:color-mix(in srgb, var(--viking-surface, var(--card-bg)) 85%, transparent);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:var(--viking-shadow-lg, var(--shadow-md));overflow:hidden;font-family:var(--viking-font-family, inherit);color:var(--viking-text, var(--text-color))}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Form,.algolia-autocomplete-host.algolia-autocomplete-open form{display:flex;align-items:center;gap:var(--viking-space-1, 8px);min-height:var(--viking-control-height, 40px);padding:0 var(--viking-space-2, 16px);background:var(--viking-surface, var(--card-bg));border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);box-shadow:var(--viking-shadow-sm, var(--shadow-sm));transition:var(--viking-transition-interactive, border-color 0.25s ease, box-shadow 0.25s ease)}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Form:hover,.algolia-autocomplete-host.algolia-autocomplete-open form:hover{border-color:color-mix(in srgb, var(--viking-accent-strong, var(--viking-teal-400)) 55%, var(--viking-border-strong, var(--border)));box-shadow:var(--viking-shadow-md, var(--shadow-md))}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Form,.algolia-autocomplete-host.algolia-autocomplete-open form{margin:0 !important;border:0 !important;border-bottom:1px solid var(--viking-border, var(--border)) !important;border-radius:0 !important;box-shadow:none !important;background:color-mix(in srgb, var(--viking-bg, var(--bg-color)) 20%, transparent)}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Form:focus-within,.algolia-autocomplete-host.algolia-autocomplete-open form:focus-within{border-bottom-color:var(--viking-accent, var(--viking-teal-600)) !important;box-shadow:inset 0 -2px 0 var(--viking-accent-soft, color-mix(in srgb, var(--viking-accent) 12%, transparent)) !important;outline:none}.algolia-autocomplete-host.algolia-autocomplete-open .aa-Panel{position:static;margin:0;border:0;border-radius:0;box-shadow:none;background:rgba(0,0,0,0);max-height:50vh;padding:var(--viking-space-2, 16px)}.navbar-search-trigger,.navbar-search-mobile-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--viking-control-height, 40px);height:var(--viking-control-height, 40px);border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);background:var(--viking-surface, var(--card-bg));color:var(--viking-text, var(--text-color));box-shadow:var(--viking-shadow-sm, var(--shadow-sm));cursor:pointer;transition:var(--viking-transition-interactive, all 0.25s ease)}.navbar-search-trigger:hover,.navbar-search-mobile-btn:hover{border-color:var(--viking-accent-strong, var(--viking-teal-400));background:var(--viking-surface-alt, var(--viking-charcoal-700));box-shadow:var(--viking-shadow-md, var(--shadow-md))}.navbar-search-trigger:focus-visible,.navbar-search-mobile-btn:focus-visible{outline:var(--viking-ring-width, 2px) solid var(--viking-ring, var(--viking-teal-400));outline-offset:var(--viking-ring-offset, 2px)}.algolia-autocomplete-host .aa-Autocomplete,.algolia-autocomplete-host .aa-DetachedContainer{width:100%}.algolia-autocomplete-host .aa-Form,.algolia-autocomplete-host form{display:flex;align-items:center;gap:var(--viking-space-1, 8px);min-height:var(--viking-control-height, 40px);padding:0 var(--viking-space-2, 16px);background:var(--viking-surface, var(--card-bg));border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);box-shadow:var(--viking-shadow-sm, var(--shadow-sm));transition:var(--viking-transition-interactive, border-color 0.25s ease, box-shadow 0.25s ease)}.algolia-autocomplete-host .aa-Form:hover,.algolia-autocomplete-host form:hover{border-color:color-mix(in srgb, var(--viking-accent-strong, var(--viking-teal-400)) 55%, var(--viking-border-strong, var(--border)));box-shadow:var(--viking-shadow-md, var(--shadow-md))}.algolia-autocomplete-host .aa-Form,.algolia-autocomplete-host form{margin:0 !important}.algolia-autocomplete-host .aa-Form:focus-within,.algolia-autocomplete-host form:focus-within{outline:var(--viking-ring-width, 2px) solid var(--viking-ring, var(--viking-teal-400));outline-offset:var(--viking-ring-offset, 2px)}.algolia-autocomplete-host .aa-InputWrapper{display:flex;align-items:center;flex:1;min-width:0;gap:var(--viking-space-1, 8px);border:0 !important;box-shadow:none !important;background:rgba(0,0,0,0) !important;padding:0 !important}.algolia-autocomplete-host .aa-InputWrapperPrefix,.algolia-autocomplete-host .aa-InputWrapperSuffix{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center;color:var(--viking-accent-strong, var(--viking-teal-400));border:0 !important;box-shadow:none !important;background:rgba(0,0,0,0) !important;padding:0 !important;line-height:1}.algolia-autocomplete-host .aa-SubmitButton,.algolia-autocomplete-host .aa-DetachedSearchButton,.algolia-autocomplete-host .aa-Label,.algolia-autocomplete-host .aa-PoweredBy{display:none !important}.algolia-autocomplete-host .aa-InputWrapperPrefix svg,.algolia-autocomplete-host .aa-InputWrapperSuffix svg,.algolia-autocomplete-host .aa-InputWrapperPrefix img,.algolia-autocomplete-host .aa-InputWrapperSuffix img{width:20px !important;height:20px !important;max-width:20px !important;max-height:20px !important;color:var(--viking-accent-strong, var(--viking-teal-400)) !important;fill:currentColor !important;stroke:currentColor !important}.algolia-autocomplete-host .aa-Input,.algolia-autocomplete-host input{flex:1;width:100%;min-width:0;min-height:0 !important;height:auto;padding:0 !important;border:0 !important;border-radius:0 !important;outline:none !important;background:rgba(0,0,0,0) !important;color:var(--viking-text, var(--text-color));font:inherit;font-size:var(--viking-font-size, 16px);line-height:var(--viking-line-height-normal, 1.5);box-shadow:none !important}.algolia-autocomplete-host .aa-Input::placeholder,.algolia-autocomplete-host input::placeholder{color:var(--viking-text-muted, var(--text-muted))}.algolia-autocomplete-host .aa-Panel{margin:0;padding:var(--viking-space-1, 8px);background:var(--viking-surface, var(--card-bg));border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);box-shadow:var(--viking-shadow-md, var(--shadow-md));max-height:288px;overflow:auto;font-family:var(--viking-font-family, inherit);position:absolute;top:calc(100% + var(--viking-space-1, 8px));left:0;right:0;z-index:var(--viking-z-overlay, 10001)}.algolia-autocomplete-host .aa-PanelLayout,.algolia-autocomplete-host .aa-Source{margin:0}.algolia-autocomplete-host .aa-List{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.algolia-autocomplete-host .aa-SourceHeader{display:flex;align-items:center;gap:var(--viking-space-1, 8px);padding:var(--viking-space-1, 8px) var(--viking-space-1, 8px) 0;margin:0}.algolia-autocomplete-host .aa-SourceHeaderTitle{font-size:calc(var(--viking-font-size-sm, 14px)*.85);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--viking-text-muted, var(--text-muted))}.algolia-autocomplete-host .aa-SourceHeaderLine{flex:1;height:1px;background:var(--viking-border, var(--border))}.algolia-autocomplete-host .aa-Item{border-radius:calc(var(--viking-radius, 8px)/1.5);padding:0;margin:0}.algolia-autocomplete-host .aa-ItemLink,.algolia-autocomplete-host .aa-ItemWrapper{display:flex;align-items:flex-start;gap:var(--viking-space-1-5, 12px);min-height:var(--viking-control-height-sm, 36px);padding:var(--viking-space-1-5, 12px);border-radius:calc(var(--viking-radius, 8px)/1.5);color:var(--viking-text, var(--text-color));text-decoration:none;transition:var(--viking-transition-interactive, background-color 0.2s ease)}.algolia-autocomplete-host .aa-Item[aria-selected=true] .aa-ItemLink,.algolia-autocomplete-host .aa-Item[aria-selected=true] .aa-ItemWrapper,.algolia-autocomplete-host .aa-Item:hover .aa-ItemLink,.algolia-autocomplete-host .aa-Item:hover .aa-ItemWrapper{background:var(--viking-accent-soft, color-mix(in srgb, var(--viking-accent) 12%, transparent))}.algolia-autocomplete-host .aa-ItemContent{display:flex;align-items:flex-start;gap:var(--viking-space-1-5, 12px);min-width:0;flex:1}.algolia-autocomplete-host .aa-ItemIcon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--viking-space-5, 40px);height:var(--viking-space-5, 40px);margin-top:2px;border-radius:var(--viking-radius, 8px);background:var(--viking-surface-alt, var(--viking-charcoal-700)) !important;box-shadow:none !important;color:var(--viking-accent-strong, var(--viking-teal-400));overflow:hidden}.algolia-autocomplete-host .aa-ItemIcon img,.algolia-autocomplete-host .aa-ItemIcon svg{width:20px;height:20px;object-fit:contain}.algolia-autocomplete-host .aa-Item[aria-selected=true] .aa-ItemIcon,.algolia-autocomplete-host .aa-Item:hover .aa-ItemIcon{color:var(--viking-accent, var(--viking-teal-600))}.algolia-autocomplete-host .aa-ItemContentBody{display:flex;flex-direction:column;gap:calc(var(--viking-space-1, 8px)/2);min-width:0;flex:1}.algolia-autocomplete-host .aa-ItemContentTitle{font-size:var(--viking-font-size, 16px);font-weight:600;color:var(--viking-text, var(--text-color));line-height:1.3}.algolia-autocomplete-host .aa-ItemContentDescription{font-size:var(--viking-font-size-sm, 14px);color:var(--viking-text-muted, var(--text-muted));line-height:var(--viking-line-height-relaxed, 1.625);white-space:normal;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;text-overflow:ellipsis}.algolia-autocomplete-host mark,.algolia-autocomplete-host .aa-ItemContentTitle mark,.algolia-autocomplete-host .aa-ItemContentDescription mark{background:color-mix(in srgb, var(--viking-accent, var(--viking-teal-600)) 20%, transparent);color:var(--viking-accent, var(--viking-teal-600));border-radius:0;padding:0;font-weight:600}.algolia-autocomplete-host .aa-ItemActions,.algolia-autocomplete-host .aa-GradientBottom,.algolia-autocomplete-host .aa-GradientTop{display:none}.aa-DetachedOverlay{background:var(--viking-overlay-backdrop, rgba(0, 0, 0, 0.55)) !important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.aa-DetachedContainer{font-family:var(--viking-font-family, inherit);border:1px solid var(--viking-border, var(--border)) !important;border-radius:var(--viking-radius-lg, 12px) !important;background:color-mix(in srgb, var(--viking-surface, var(--card-bg)) 92%, transparent) !important;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:var(--viking-shadow-lg, var(--shadow-md)) !important}.aa-DetachedContainer .aa-Form,.aa-DetachedContainer form{display:flex;align-items:center;gap:var(--viking-space-1, 8px);min-height:var(--viking-control-height, 40px);padding:0 var(--viking-space-2, 16px);background:var(--viking-surface, var(--card-bg));border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);box-shadow:var(--viking-shadow-sm, var(--shadow-sm));transition:var(--viking-transition-interactive, border-color 0.25s ease, box-shadow 0.25s ease)}.aa-DetachedContainer .aa-Form:hover,.aa-DetachedContainer form:hover{border-color:color-mix(in srgb, var(--viking-accent-strong, var(--viking-teal-400)) 55%, var(--viking-border-strong, var(--border)));box-shadow:var(--viking-shadow-md, var(--shadow-md))}.aa-DetachedContainer .aa-Form,.aa-DetachedContainer form{margin:var(--viking-space-1, 8px) !important;border-bottom:1px solid var(--viking-border, var(--border)) !important;border-radius:var(--viking-radius, 8px) var(--viking-radius, 8px) 0 0 !important;box-shadow:none !important}.aa-DetachedContainer .aa-Panel{margin:0;padding:var(--viking-space-1, 8px);background:var(--viking-surface, var(--card-bg));border:1px solid var(--viking-border-strong, var(--border));border-radius:var(--viking-radius, 8px);box-shadow:var(--viking-shadow-md, var(--shadow-md));max-height:288px;overflow:auto;font-family:var(--viking-font-family, inherit);position:static !important;border:0 !important;box-shadow:none !important;max-height:50vh !important}@media(min-width: 768px){.navbar-content{position:relative}.navbar-center.desktop-nav{position:absolute;left:50%;transform:translateX(-50%);z-index:3;pointer-events:auto}.navbar-left,.navbar-right{position:relative;z-index:2}.navbar-right{pointer-events:none}.navbar-right>*{pointer-events:auto}.navbar-left{flex:0 0 auto}.navbar-right{flex:1;min-width:0;gap:var(--viking-space-2, 16px)}.desktop-nav{display:flex}.desktop-auth{display:flex}.menu-toggle-btn{display:none !important}.mobile-menu{display:none !important}.navbar-search{flex:0 0 auto;max-width:none;margin:0}}.viking-footer,.mega-footer{background-color:var(--viking-surface, var(--color-surface));border-top:1px solid var(--viking-border-strong, var(--border-layout));padding:calc(var(--viking-space-2)*2) var(--viking-space-2);font-family:var(--viking-font-family);color:var(--viking-text-muted)}.viking-footer-content,.footer-content{max-width:var(--container-max-width, 1260px);margin:0 auto}.viking-footer-directory,.footer-directory{display:grid;grid-template-columns:1fr;gap:calc(var(--viking-space-2)*1.75);padding-bottom:calc(var(--viking-space-2)*2);border-bottom:1px solid var(--viking-border-strong, var(--border-layout))}@media(min-width: 600px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(2, 1fr)}}@media(min-width: 900px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(4, 1fr)}}.viking-footer-column-title,.footer-column-title{font-size:var(--viking-font-size);font-weight:700;color:var(--viking-text);margin:0 0 var(--viking-space-2);letter-spacing:.05em}.viking-footer-list,.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--viking-space-1)}.viking-footer-list a,.footer-list a{font-size:var(--viking-font-size);color:var(--viking-text-muted);text-decoration:none !important;border-bottom:1px solid rgba(0,0,0,0);transition:color .2s ease,border-color .2s ease}.viking-footer-list a:hover,.footer-list a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-footer-bottom,.footer-bottom{padding-top:var(--viking-space-2);display:flex;flex-direction:column;gap:var(--viking-space-2)}.viking-footer-badges-top,.footer-badges-top{display:flex;justify-content:center;margin-bottom:var(--viking-space-2)}.viking-footer-compliance-row,.footer-compliance-row{display:flex;justify-content:center;align-items:center}.viking-copyright-info,.copyright-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--viking-space-2);font-size:var(--viking-font-size);color:var(--viking-text-muted);text-align:center}.viking-copyright-info a,.copyright-info a{color:var(--viking-text-muted);text-decoration:none !important;border-bottom:1px solid rgba(0,0,0,0);transition:color .2s ease,border-color .2s ease}.viking-copyright-info a:hover,.copyright-info a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-usa-badge,.usa-badge{display:inline-flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-1) var(--viking-space-2);border-radius:var(--viking-radius-pill);background-color:rgba(0,0,0,0);border:1px solid var(--viking-border);cursor:default;transition:var(--viking-transition-colors);font-size:var(--viking-font-size);font-weight:500;color:var(--viking-text-muted)}.viking-usa-badge:hover,.usa-badge:hover{background-color:color-mix(in srgb, var(--viking-surface) 95%, var(--viking-accent) 5%);border-color:var(--viking-border-strong);color:var(--viking-text);box-shadow:var(--viking-shadow-sm)}.viking-usa-badge-icon,.usa-badge-icon{font-size:1.1em;line-height:1;transition:transform .3s cubic-bezier(0.34, 1.56, 0.64, 1)}.viking-usa-badge:hover .viking-usa-badge-icon,.usa-badge:hover .usa-badge-icon{transform:scale(1.15) rotate(-5deg)}.viking-whitepaper-cta{position:relative;max-width:720px;margin:0 auto;padding:var(--viking-space-4) var(--viking-space-3);border-radius:var(--viking-radius-xl);overflow:hidden;border:1px solid color-mix(in srgb, var(--viking-accent) 22%, transparent);background:color-mix(in srgb, var(--viking-accent) 6%, var(--viking-surface));text-align:center;box-shadow:var(--viking-shadow-sm);transition:var(--viking-transition-colors)}@media(min-width: 768px){.viking-whitepaper-cta{padding:var(--viking-space-5) var(--viking-space-4)}}.viking-whitepaper-cta-bg{position:absolute;inset:0;pointer-events:none;opacity:.5}.viking-whitepaper-polars-grid{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:var(--viking-space-half);padding:0 var(--viking-space-3);mask-image:linear-gradient(to top, black 30%, transparent 85%)}.viking-bar,.viking-whitepaper-polars-bar{display:block;flex:1;max-width:28px;height:calc(var(--viking-bar-height, 50)*1%);background:var(--viking-accent);border-radius:var(--viking-radius-xs) var(--viking-radius-xs) 0 0;opacity:.75}.viking-whitepaper-polars-bar{animation:vikingWhitepaperBarPulse 4s var(--viking-ease-default) infinite}.viking-whitepaper-polars-bar:nth-child(1){animation-delay:0.12s}.viking-whitepaper-polars-bar:nth-child(2){animation-delay:0.24s}.viking-whitepaper-polars-bar:nth-child(3){animation-delay:0.36s}.viking-whitepaper-polars-bar:nth-child(4){animation-delay:0.48s}.viking-whitepaper-polars-bar:nth-child(5){animation-delay:0.6s}.viking-whitepaper-polars-bar:nth-child(6){animation-delay:0.72s}.viking-whitepaper-polars-bar:nth-child(7){animation-delay:0.84s}.viking-whitepaper-polars-bar:nth-child(8){animation-delay:0.96s}.viking-whitepaper-polars-bar:nth-child(9){animation-delay:1.08s}.viking-whitepaper-polars-bar:nth-child(10){animation-delay:1.2s}.viking-whitepaper-polars-bar:nth-child(11){animation-delay:1.32s}.viking-whitepaper-polars-bar:nth-child(12){animation-delay:1.44s}@keyframes vikingWhitepaperBarPulse{0%,100%{opacity:.4;transform:scaleY(1)}50%{opacity:.75;transform:scaleY(1.06)}}@media(prefers-reduced-motion: reduce){.viking-whitepaper-polars-bar{animation:none;opacity:.5}}.viking-whitepaper-sparkline{position:absolute;bottom:0;left:0;width:100%;height:40%;opacity:.65}.viking-whitepaper-cta-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--viking-space-1-5)}.viking-whitepaper-tag{font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-bold);letter-spacing:var(--viking-letter-spacing-caps);color:var(--viking-accent);text-transform:uppercase}.viking-whitepaper-title{font-size:clamp(1.375rem,3vw,1.75rem);font-weight:var(--viking-font-weight-bold);margin:0;text-transform:uppercase;letter-spacing:var(--viking-letter-spacing-tight);color:var(--viking-text);line-height:var(--viking-line-height-tight)}.viking-whitepaper-description{color:var(--viking-text-muted);margin:0;max-width:30rem;line-height:var(--viking-line-height-relaxed);font-size:var(--viking-font-size)}.viking-whitepaper-btn{margin-top:var(--viking-space-1)}
