/*
 * AI Lumen Studio — Design Tokens
 * Copyright 2006 - Marchi Ventures, LLC - All Rights Reserved.
 *
 * CSS custom properties for the full token vocabulary.
 * All themes derive from these tokens by overriding :root values.
 */

:root {
  /* ── Brand ── */
  --brand-primary:        #0d47a1;
  --brand-secondary:      #0e5c8f;
  --brand-accent:         #11c5df;
  --brand-accent-dark:    #0da0b8;
  --brand-gradient:       linear-gradient(135deg, #11c5df 0%, #0d47a1 100%);

  /* ── Background / Surface ── */
  --color-bg-app:         #f3f6fa;
  --color-bg-surface:     #ffffff;
  --color-bg-raised:      #f8fafc;
  --color-bg-sunken:      #ecf0f5;
  --color-bg-overlay:     rgba(255, 255, 255, 0.96);
  --color-bg-hover:       rgba(13, 71, 161, 0.06);
  --color-bg-selected:    rgba(13, 71, 161, 0.1);

  /* ── Navigation ── */
  --color-nav-bg:         #ffffff;
  --color-nav-border:     #e5eaef;
  --color-nav-item-fg:    #374151;
  --color-nav-item-hover: rgba(13, 71, 161, 0.08);
  --color-nav-item-active-bg: #1d3461;
  --color-nav-item-active-fg: #ffffff;
  --color-nav-section-fg: #9ca3af;

  /* ── Header ── */
  --color-header-bg:      #ffffff;
  --color-header-border:  #e5eaef;

  /* ── Text / Ink ── */
  --color-ink-primary:    #111827;
  --color-ink-secondary:  #374151;
  --color-ink-muted:      #6b7280;
  --color-ink-disabled:   #9ca3af;
  --color-ink-inverse:    #ffffff;
  --color-ink-link:       #0d47a1;
  --color-ink-link-hover: #0b3c8a;

  /* ── Semantic ── */
  --color-success:        #065f46;
  --color-success-bg:     #d1fae5;
  --color-success-border: #6ee7b7;
  --color-warning:        #78350f;
  --color-warning-bg:     #fef3c7;
  --color-warning-border: #fbbf24;
  --color-danger:         #991b1b;
  --color-danger-bg:      #fee2e2;
  --color-danger-border:  #fca5a5;
  --color-info:           #1e3a8a;
  --color-info-bg:        #dbeafe;
  --color-info-border:    #93c5fd;
  --color-neutral-bg:     #f3f4f6;
  --color-neutral-border: #d1d5db;

  /* ── Status pill colors ── */
  --status-active:        #10b981;
  --status-partial:       #f59e0b;
  --status-planned:       #6366f1;
  --status-deferred:      #9ca3af;
  --status-deployed:      #059669;
  --status-draft:         #9ca3af;
  --status-verified:      #2563eb;
  --status-failed:        #dc2626;
  --status-deploying:     #f59e0b;
  --status-degraded:      #ea580c;

  /* ── Border ── */
  --color-border:         #e5eaef;
  --color-border-strong:  #c9d4de;
  --color-border-focus:   #11c5df;
  --color-border-input:   #d1d5db;

  /* ── Typography ── */
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco,
               Consolas, "Liberation Mono", "Courier New", monospace;

  /* ── Font size scale ── */
  --text-xs:   11px;
  --text-sm:   12px;
  --text-base: 14px;
  --text-md:   15px;
  --text-lg:   17px;
  --text-xl:   20px;
  --text-2xl:  24px;
  --text-3xl:  30px;
  --text-4xl:  38px;

  /* ── Font weight ── */
  --fw-normal:    400;
  --fw-medium:    500;
  --fw-semibold:  600;
  --fw-bold:      700;

  /* ── Line height ── */
  --lh-tight:  1.25;
  --lh-snug:   1.375;
  --lh-normal: 1.5;
  --lh-relaxed:1.625;

  /* ── Spacing scale (4px base) ── */
  --sp-1:   4px;
  --sp-2:   8px;
  --sp-3:  12px;
  --sp-4:  16px;
  --sp-5:  20px;
  --sp-6:  24px;
  --sp-8:  32px;
  --sp-10: 40px;
  --sp-12: 48px;
  --sp-16: 64px;

  /* ── Border radius ── */
  --radius-xs:  4px;
  --radius-sm:  6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 18px;
  --radius-2xl:24px;
  --radius-full: 9999px;

  /* ── Shadows ── */
  --shadow-xs: 0 1px 2px rgba(15, 40, 80, 0.06);
  --shadow-sm: 0 2px 6px rgba(15, 40, 80, 0.08);
  --shadow-md: 0 4px 14px rgba(15, 40, 80, 0.10);
  --shadow-lg: 0 12px 32px rgba(15, 40, 80, 0.12);
  --shadow-xl: 0 24px 64px rgba(15, 40, 80, 0.16);
  --shadow-focus: 0 0 0 3px rgba(17, 197, 223, 0.35);

  /* ── Shell geometry ── */
  --shell-nav-width:        260px;
  --shell-subnav-width:     0px;
  --shell-inspector-width:  0px;
  --shell-header-height:    56px;
  --shell-menubar-height:   32px;
  --shell-itoolbar-height:  40px;
  --shell-itoolbar-width:   48px;
  --shell-toolbar-height:   36px;
  --shell-drawer-height:    0px;
  --shell-status-height:    26px;

  /* ── Z-index scale ── */
  --z-base:    0;
  --z-raised:  10;
  --z-sticky:  100;
  --z-drawer:  300;
  --z-float:   350;
  --z-modal:   400;
  --z-toast:   500;
  --z-tooltip: 600;

  /* ── Motion ── */
  --dur-fast:   100ms;
  --dur-normal: 200ms;
  --dur-slow:   350ms;
  --ease-std:   cubic-bezier(0.4, 0, 0.2, 1);
  --ease-in:    cubic-bezier(0.4, 0, 1, 1);
  --ease-out:   cubic-bezier(0, 0, 0.2, 1);

  /* ── Icon sizes ── */
  --icon-sm: 14px;
  --icon-md: 18px;
  --icon-lg: 22px;
}
