/* GSMVanta Admin Theme
   Canonical token owner for the administrator interface. Components consume
   semantic variables from this file and never declare their own palettes. */
html[data-app-area="admin"] {
  color-scheme: light;
  --admin-black: #000;
  --admin-white: #fff;
  --admin-gray-50: #ffffff;
  --admin-gray-100: #f5f5f5;
  --admin-gray-200: #e5e5e5;
  --admin-gray-300: #d4d4d4;
  --admin-gray-400: #c8c8c8;
  --admin-gray-500: #a3a3a3;
  --admin-gray-600: #737373;
  --admin-gray-700: #525252;
  --admin-gray-800: #404040;
  --admin-gray-900: #262626;
  --admin-gray-1000: #171717;
  --admin-gray-alpha-100: rgba(0, 0, 0, .05);
  --admin-gray-alpha-200: rgba(0, 0, 0, .08);
  --admin-gray-alpha-300: rgba(0, 0, 0, .10);
  --admin-gray-alpha-400: rgba(0, 0, 0, .14);
  --admin-gray-alpha-500: rgba(0, 0, 0, .21);
  --admin-gray-alpha-600: rgba(0, 0, 0, .34);
  --admin-gray-alpha-700: rgba(0, 0, 0, .44);
  --admin-gray-alpha-800: rgba(0, 0, 0, .51);
  --admin-gray-alpha-900: rgba(0, 0, 0, .70);
  --admin-gray-alpha-1000: rgba(0, 0, 0, .91);
  --admin-green: #16a34a;
  --admin-green-soft: #dcfce7;
  --admin-amber: #ea580c;
  --admin-amber-soft: #fff7ed;
  --admin-red: #dc2626;
  --admin-red-soft: #fef2f2;
  --admin-blue: #2563eb;
  --admin-blue-soft: #dbeafe;

  --admin-canvas: var(--gv-canvas);
  --admin-surface: #ffffff;
  --admin-surface-muted: #f5f5f5;
  --admin-surface-hover: #f5f5f5;
  --admin-text: #171717;
  --admin-text-secondary: #525252;
  --admin-text-tertiary: #737373;
  --admin-border: #e5e5e5;
  --admin-border-strong: #d4d4d4;
  --admin-border-hover: #c8c8c8;
  --admin-primary: #000000;
  --admin-primary-text: #ffffff;
  --admin-primary-hover: #171717;
  --admin-focus: #2563eb;
  --admin-focus-color: var(--admin-focus);
  --admin-background: var(--admin-canvas);
  --admin-text-muted: var(--admin-text-tertiary);
  --admin-font-mono: var(--gv-font-mono);
  --admin-radius-panel: var(--gv-radius-card);
  --admin-focus-halo: rgba(37,99,235,.18);
  --admin-control-height: 36px;
  --admin-control-height-small: 32px;
  --admin-control-height-large: 40px;
  --admin-radius-small: 6px;
  --admin-radius-control: 6px;
  --admin-radius-control-large: 8px;
  --admin-radius-surface: 12px;
  --admin-radius-overlay: 16px;
  --admin-frame-border: var(--admin-border);
  --admin-frame-radius: var(--admin-radius-surface);
  --admin-section-padding: 16px;
  --admin-page-gap: 16px;
  --admin-page-title-size: clamp(20px, 2.4vw, 24px);
  --admin-page-title-line: clamp(28px, 3.2vw, 32px);
  --admin-section-title-size: 14px;
  --admin-section-title-line: 20px;
  --admin-shadow-control: 0 1px 2px rgba(0,0,0,.05);
  --admin-shadow-control-hover: 0 1px 2px rgba(0,0,0,.06);
  --admin-shadow-control-focus: 0 0 0 2px var(--admin-surface),0 0 0 4px var(--admin-focus);
  --admin-shadow-small: 0 1px 2px rgba(0,0,0,.05);
  --admin-shadow-overlay: 0 10px 24px rgba(0, 0, 0, .10);
  --admin-sidebar-width: 240px;
  --admin-topbar-height: 56px;
  --admin-content-max: var(--gv-page-max-width);
  --admin-page-padding: clamp(12px, 2%, 24px);
  --admin-transition: 150ms ease;

  /* Shared application adapters. These are aliases, not second palettes. */
  --vercel-black: var(--admin-black);
  --vercel-white: var(--admin-white);
  --vercel-gray-50: var(--admin-gray-50);
  --vercel-gray-100: var(--admin-gray-100);
  --vercel-gray-200: var(--admin-gray-200);
  --vercel-gray-300: var(--admin-gray-300);
  --vercel-gray-400: var(--admin-gray-400);
  --vercel-gray-500: var(--admin-gray-500);
  --vercel-gray-600: var(--admin-gray-600);
  --vercel-gray-700: var(--admin-gray-700);
  --vercel-gray-800: var(--admin-gray-800);
  --vercel-gray-900: var(--admin-gray-900);
  --vercel-gray-1000: var(--admin-gray-1000);
  --vercel-green: var(--admin-green);
  --vercel-green-soft: var(--admin-green-soft);
  --vercel-amber: var(--admin-amber);
  --vercel-amber-soft: var(--admin-amber-soft);
  --vercel-red: var(--admin-red);
  --vercel-red-soft: var(--admin-red-soft);
  --vercel-radius-sm: var(--admin-radius-small);
  --vercel-radius: var(--admin-radius-control);
  --vercel-radius-md: var(--admin-radius-surface);
  --vercel-radius-lg: var(--admin-radius-overlay);
  --vercel-control: var(--admin-control-height);
  --vercel-sidebar: var(--admin-sidebar-width);
  --vercel-topbar: var(--admin-topbar-height);
  --gv-control-height: var(--admin-control-height);
  --gv-surface: var(--admin-surface);
  --gv-surface-subtle: var(--admin-surface-muted);
  --gv-surface-muted: var(--admin-surface-hover);
  --gv-text: var(--admin-text);
  --gv-text-muted: var(--admin-text-secondary);
  --gv-border: var(--admin-border);
  --gv-border-strong: var(--admin-border-strong);
  --gv-control-bg: var(--admin-surface);
  --gv-primary: var(--admin-primary);
  --gv-primary-text: var(--admin-primary-text);
  --gv-shadow-small: var(--admin-shadow-small);
  --gv-shadow-menu: var(--admin-shadow-overlay);
  --ds-background-100: var(--admin-surface);
  --ds-background-200: var(--admin-surface-muted);
  --ds-gray-alpha-100: var(--admin-gray-alpha-100);
  --ds-gray-alpha-200: var(--admin-gray-alpha-200);
  --ds-gray-alpha-300: var(--admin-gray-alpha-300);
  --ds-gray-alpha-400: var(--admin-gray-alpha-400);
  --ds-gray-alpha-500: var(--admin-gray-alpha-500);
  --ds-gray-alpha-600: var(--admin-gray-alpha-600);
  --ds-gray-alpha-700: var(--admin-gray-alpha-700);
  --ds-gray-alpha-800: var(--admin-gray-alpha-800);
  --ds-gray-alpha-900: var(--admin-gray-alpha-900);
  --ds-gray-alpha-1000: var(--admin-gray-alpha-1000);
  --ds-focus-color: var(--admin-focus);
  --ds-focus-ring: 0 0 0 2px var(--admin-surface), 0 0 0 4px var(--admin-focus);
}

html[data-app-area="admin"][data-theme="dark"] {
  color-scheme: dark;
  --admin-black: #ededed;
  --admin-white: hsl(0 0% 4%);
  --admin-gray-50: #0a0a0a;
  --admin-gray-100: #171717;
  --admin-gray-200: #262626;
  --admin-gray-300: #333333;
  --admin-gray-400: #404040;
  --admin-gray-500: #525252;
  --admin-gray-600: #737373;
  --admin-gray-700: #a3a3a3;
  --admin-gray-800: #d4d4d4;
  --admin-gray-900: #e5e5e5;
  --admin-gray-1000: #fafafa;
  --admin-gray-alpha-100: rgba(255, 255, 255, .06);
  --admin-gray-alpha-200: rgba(255, 255, 255, .09);
  --admin-gray-alpha-300: rgba(255, 255, 255, .13);
  --admin-gray-alpha-400: rgba(255, 255, 255, .14);
  --admin-gray-alpha-500: rgba(255, 255, 255, .24);
  --admin-gray-alpha-600: rgba(255, 255, 255, .51);
  --admin-gray-alpha-700: rgba(255, 255, 255, .54);
  --admin-gray-alpha-800: rgba(255, 255, 255, .47);
  --admin-gray-alpha-900: rgba(255, 255, 255, .61);
  --admin-gray-alpha-1000: rgba(255, 255, 255, .92);
  --admin-green: #4ade80;
  --admin-green-soft: #052e16;
  --admin-amber: #fbbf24;
  --admin-amber-soft: #422006;
  --admin-red: #fb7185;
  --admin-red-soft: #4c0519;
  --admin-blue: #60a5fa;
  --admin-blue-soft: #172554;
  --admin-canvas: #090909;
  --admin-surface: #111111;
  --admin-surface-muted: #171717;
  --admin-surface-hover: #1f1f1f;
  --admin-text: #fafafa;
  --admin-text-secondary: #d4d4d4;
  --admin-text-tertiary: #a3a3a3;
  --admin-border: #262626;
  --admin-border-strong: #404040;
  --admin-border-hover: #525252;
  --admin-primary: #fafafa;
  --admin-primary-text: #0a0a0a;
  --admin-primary-hover: #e5e5e5;
  --admin-focus: #60a5fa;
  --admin-focus-halo: rgba(96,165,250,.22);
  --admin-shadow-control: 0 0 0 1px var(--admin-gray-alpha-400);
  --admin-shadow-control-hover: 0 0 0 1px var(--admin-gray-alpha-500);
  --admin-shadow-control-focus: 0 0 0 1px var(--admin-gray-alpha-600), 0 0 0 4px var(--admin-focus-halo);
  --admin-shadow-small: 0 0 0 1px var(--admin-gray-alpha-400), 0 1px 2px rgba(0, 0, 0, .32);
  --admin-shadow-overlay: 0 10px 24px rgba(0, 0, 0, .34);
}

html[data-app-area="admin"] body.gv-vercel-admin {
  --theme-page-bg: var(--admin-canvas);
  --theme-nav-bg: var(--admin-surface);
  --theme-surface: var(--admin-surface);
  --theme-surface-subdued: var(--admin-surface-muted);
  --theme-surface-hover: var(--admin-surface-hover);
  --theme-table-row-hover: var(--admin-surface-muted);
  --theme-text: var(--admin-text);
  --theme-text-secondary: var(--admin-text-secondary);
  --theme-text-disabled: var(--admin-gray-500);
  --theme-border: var(--admin-border);
  --theme-border-strong: var(--admin-border-strong);
  --theme-border-hover: var(--admin-border-hover);
  --theme-action: var(--admin-primary);
  --theme-action-hover: var(--admin-gray-900);
  --theme-action-text: var(--admin-primary-text);
  --theme-focus: var(--admin-focus);
  --theme-link: var(--admin-text);
  --theme-success: var(--admin-green);
  --theme-success-bg: var(--admin-green-soft);
  --theme-warning: var(--admin-amber);
  --theme-warning-bg: var(--admin-amber-soft);
  --theme-critical: var(--admin-red);
  --theme-critical-bg: var(--admin-red-soft);
  --theme-info-bg: var(--admin-blue-soft);
  --theme-info-text: var(--admin-blue);
  --theme-badge-bg: var(--admin-surface-hover);
  --theme-badge-text: var(--admin-text-secondary);
  --theme-badge-border: var(--admin-border);
  --theme-switch-track: var(--admin-gray-400);
  --theme-switch-thumb: var(--admin-surface);
  --theme-topbar-bg: color-mix(in srgb, var(--admin-surface) 92%, transparent);
  --theme-topbar-text: var(--admin-text);
  --theme-topbar-muted: var(--admin-text-secondary);
  --theme-topbar-border: var(--admin-border);
  --theme-topbar-control-bg: transparent;
  --theme-topbar-control-hover: var(--admin-surface-hover);
  --theme-topbar-active-bg: var(--admin-primary);
  --theme-topbar-active-text: var(--admin-primary-text);
  --theme-shadow-card: none;
  --theme-shadow-overlay: var(--admin-shadow-overlay);
  --p-bg: var(--admin-canvas);
  --p-nav: var(--admin-surface);
  --p-surface: var(--admin-surface);
  --p-surface-subdued: var(--admin-surface-muted);
  --p-surface-hover: var(--admin-surface-hover);
  --p-table-row-hover: var(--admin-surface-muted);
  --p-text: var(--admin-text);
  --p-text-secondary: var(--admin-text-secondary);
  --p-text-disabled: var(--admin-gray-500);
  --p-border: var(--admin-border);
  --p-border-strong: var(--admin-border-strong);
  --p-border-hover: var(--admin-border-hover);
  --p-action: var(--admin-primary);
  --p-action-hover: var(--admin-gray-900);
  --p-action-text: var(--admin-primary-text);
  --p-interactive: var(--admin-primary);
  --p-focus: var(--admin-focus);
  --p-link: var(--admin-text);
  --p-radius: var(--admin-radius-surface);
  --p-radius-control: var(--admin-radius-control);
  --p-control-height: var(--admin-control-height);
  --p-control-compact: var(--admin-control-height-small);
  --p-shadow-card: none;
  --p-shadow-overlay: var(--admin-shadow-overlay);
  --ui-bg: var(--admin-canvas);
  --ui-surface: var(--admin-surface);
  --ui-surface-2: var(--admin-surface-hover);
  --ui-control: var(--admin-surface);
  --ui-text: var(--admin-text);
  --ui-muted: var(--admin-text-secondary);
  --ui-line: var(--admin-border);
  --ui-line-strong: var(--admin-border-strong);
  --ui-accent: var(--admin-primary);
}
