/* KimmerLabs Design System - Colors + Type
 * Source of truth: KimmerHub launcher (StraboHub repo, src/renderer/styles.css)
 * "Navy + blue" theme - desktop launcher aesthetic, dark-first with light parity.
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght@100..700&display=swap');

/* Light is the default theme; dark is opt-in via [data-theme="dark"].
 * Theme-neutral tokens (geometry, spacing, type families) live in the base
 * :root and are inherited by both themes. */
:root,
:root[data-theme="light"] {
  /* ----- Surfaces ----- */
  --bg-primary:    #f4f7fb;  /* page bg */
  --bg-secondary:  #ffffff;  /* cards / raised surfaces */
  --bg-tertiary:   #eef2f8;  /* raised chips / sec buttons */
  --bg-hover:      #e2e9f2;  /* hover wash */

  /* ----- Accent (KimmerLabs blue) ----- */
  --accent:        #1976d2;
  --accent-hover:  #1565c0;
  --accent-rgb:    25, 118, 210;
  --accent-light:  rgba(25, 118, 210, 0.10);

  /* ----- Text ----- */
  --text-primary:   #0f172a;
  --text-secondary: #475569;
  --text-tertiary:  #94a3b8;

  /* ----- Lines ----- */
  --border:        #d8e1ec;
  --border-light:  #eef2f8;

  /* ----- Semantic ----- */
  --danger:        #dc2626;
  --danger-hover:  #b91c1c;
  --success:       #16a34a;
  --warning:       #d97706;

  /* ----- Surface tints (used for translucent layers) ----- */
  --surface-deep-rgb:    255, 255, 255;
  --surface-deeper-rgb:  244, 247, 251;
  --surface-tint-rgb:    15, 23, 42;

  /* ----- Text on accent fills (buttons / badges) ----- */
  --on-accent:    #ffffff;

  /* ----- Shadows (soft, neutral) ----- */
  --shadow-sm:    0 1px 2px rgba(15, 23, 42, 0.05);
  --shadow-card:  0 4px 16px rgba(15, 23, 42, 0.07);
  --shadow-pop:   0 6px 20px rgba(15, 23, 42, 0.10);
  --shadow-modal: 0 12px 40px rgba(15, 23, 42, 0.16);
  --shadow-cta:   0 2px 8px rgba(25, 118, 210, 0.16);

  /* ----- Geometry (theme-neutral) ----- */
  --radius:    10px;
  --radius-lg: 14px;
  --titlebar-height: 38px;

  /* ----- Spacing scale (theme-neutral) ----- */
  --space-1:   4px;
  --space-2:   8px;
  --space-3:   12px;
  --space-4:   16px;
  --space-5:   20px;
  --space-6:   24px;
  --space-8:   32px;
  --space-10:  40px;

  /* ----- Type families (theme-neutral) ----- */
  --font-sans:  'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-icon:  'Material Symbols Outlined';
}

:root[data-theme="dark"] {
  /* ----- Surfaces ----- */
  --bg-primary:    #00020e;  /* deepest navy - page bg */
  --bg-secondary:  #000000;  /* sidebar / cards */
  --bg-tertiary:   #0d3f73;  /* raised chips / sec buttons */
  --bg-hover:      #284868;  /* hover wash */

  /* ----- Accent (KimmerLabs blue) ----- */
  --accent:        #5eb6ff;
  --accent-hover:  #4ba6f5;
  --accent-rgb:    94, 182, 255;
  --accent-light:  rgba(94, 182, 255, 0.13);

  /* ----- Text ----- */
  --text-primary:   #f0f6fc;
  --text-secondary: #adbac7;
  --text-tertiary:  #6c7c8e;

  /* ----- Lines ----- */
  --border:       #2a4263;
  --border-light: #1a2f47;

  /* ----- Semantic ----- */
  --danger:        #f87171;
  --danger-hover:  #ef4444;
  --success:       #4ade80;
  --warning:       #fbbf24;

  /* ----- Surface tints (used for translucent layers) ----- */
  --surface-deep-rgb:    10, 24, 40;
  --surface-deeper-rgb:  6, 16, 28;
  --surface-tint-rgb:    255, 255, 255;

  /* ----- Text on accent fills ----- */
  --on-accent:    #00020e;

  /* ----- Shadows (neutral on dark) ----- */
  --shadow-sm:    0 1px 2px rgba(0, 0, 0, 0.20);
  --shadow-card:  0 10px 28px rgba(0, 0, 0, 0.45);
  --shadow-pop:   0 8px 24px rgba(0, 0, 0, 0.30);
  --shadow-modal: 0 12px 48px rgba(0, 0, 0, 0.50);
  --shadow-cta:   0 6px 16px rgba(0, 0, 0, 0.35);
}

/* ===== Type semantics =====
 * Display headers favor Inter Black (900), tight tracking.
 * Body uses Inter 400/500. Labels are 9–11px, uppercase, 1–3px tracking, tertiary color.
 * Numerals/version strings inherit body. No serif, no mono in this system.
 */

.t-display {
  font-family: var(--font-sans);
  font-size: 32px;
  font-weight: 900;
  letter-spacing: -0.5px;
  line-height: 1.1;
  color: var(--text-primary);
}
.t-h1 {
  font-family: var(--font-sans);
  font-size: 28px;
  font-weight: 900;
  letter-spacing: -0.5px;
  color: var(--text-primary);
}
.t-h2 {
  font-family: var(--font-sans);
  font-size: 18px;
  font-weight: 900;
  letter-spacing: -0.3px;
  text-transform: uppercase;
  color: var(--text-primary);
}
.t-h3 {
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 700;
  color: var(--text-primary);
}
.t-body {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--text-primary);
}
.t-body-lg {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  color: var(--text-secondary);
}
.t-meta {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  color: var(--text-secondary);
}
.t-eyebrow {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--text-tertiary);
}
.t-badge {
  font-family: var(--font-sans);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
.t-caption {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: var(--text-tertiary);
}

/* Wordmark - used on splash / login (KIMMER · LABS, 2px tracking, 900) */
.t-wordmark {
  font-family: var(--font-sans);
  font-size: 28px;
  font-weight: 900;
  letter-spacing: 2px;
  line-height: 1;
  color: var(--text-primary);
}
.t-wordmark-sub {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 6px;
  color: var(--accent);
}
