/* ============================================================
   Techpool Unified Design System
   Matches live product at techpool.tech
   ============================================================ */

:root {
  /* Brand — DLS v1.0 */
  --tp-red: #F50F3C;
  --tp-red-hover: #D62839;
  --tp-red-light: rgba(245, 15, 60, 0.08);
  --tp-red-border: rgba(245, 15, 60, 0.2);
  --tp-red-400: #FF4D6A;

  /* Sidebar — Navy neutrals */
  --tp-sidebar-bg: #0C0C14;
  --tp-sidebar-hover: #1A1A28;
  --tp-sidebar-border: rgba(255, 255, 255, 0.06);
  --tp-sidebar-text: rgba(255, 255, 255, 0.7);
  --tp-sidebar-text-active: #FFFFFF;
  --tp-sidebar-width: 240px;
  --tp-navy-800: #141420;
  --tp-navy-600: #242436;

  /* Content area (light) */
  --tp-bg: #F5F6FA;
  --tp-card: #FFFFFF;
  --tp-text: #1A1A2E;
  --tp-text-secondary: #555566;
  --tp-text-muted: #888899;
  --tp-border: #E5E5EE;
  --tp-border-light: #F0F0F5;

  /* Status — DLS v1.0 */
  --tp-success: #22C55E;
  --tp-success-bg: rgba(34, 197, 94, 0.08);
  --tp-warning: #F59E0B;
  --tp-warning-bg: rgba(245, 158, 11, 0.08);
  --tp-danger: #EF4444;
  --tp-danger-bg: rgba(239, 68, 68, 0.08);
  --tp-info: #3B82F6;
  --tp-info-bg: rgba(59, 130, 246, 0.08);

  /* Privacy */
  --tp-stakeholder: #22C55E;
  --tp-team: #3B82F6;
  --tp-personal: #888899;

  /* Persona colors */
  --tp-tech: #3B82F6;
  --tp-manager: #22C55E;
  --tp-am: #F59E0B;
  --tp-dispatch: #8B5CF6;

  /* Typography — DLS v1.0 */
  --tp-font: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --tp-mono: 'JetBrains Mono', 'SF Mono', monospace;

  --tp-text-xs: 0.6875rem;   /* 11px — Overline / Caption */
  --tp-text-sm: 0.8125rem;   /* 13px — Code */
  --tp-text-base: 0.875rem;  /* 14px — Body Small / Nav / Btn / Badge */
  --tp-text-md: 1rem;        /* 16px — Body */
  --tp-text-lg: 1.125rem;    /* 18px — Body Large */
  --tp-text-xl: 1.25rem;     /* 20px — H4 */
  --tp-text-2xl: 1.5rem;     /* 24px — H3 */
  --tp-text-3xl: 2rem;       /* 32px — H2 */
  --tp-text-4xl: 2.75rem;    /* 44px — H1 */
  --tp-text-hero: 4rem;      /* 64px — Hero */

  /* Spacing — 4px grid (DLS v1.0) */
  --tp-1: 4px;
  --tp-2: 8px;
  --tp-3: 12px;
  --tp-4: 16px;
  --tp-5: 20px;
  --tp-6: 24px;
  --tp-8: 32px;
  --tp-10: 40px;
  --tp-12: 48px;
  --tp-16: 64px;

  /* Radius */
  --tp-radius-sm: 4px;
  --tp-radius: 8px;
  --tp-radius-lg: 12px;
  --tp-radius-xl: 16px;
  --tp-radius-full: 9999px;

  /* Shadow — DLS v1.0 */
  --tp-shadow-sm: 0 1px 2px rgba(0,0,0,0.06);
  --tp-shadow: 0 1px 3px rgba(0,0,0,0.08);
  --tp-shadow-md: 0 4px 6px rgba(0,0,0,0.10);
  --tp-shadow-lg: 0 8px 32px rgba(0,0,0,0.12);

  /* Transition — DLS v1.0 */
  --tp-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --tp-fast: 100ms;
  --tp-normal: 200ms;
  --tp-spring: 500ms;
  --tp-ease-spring: cubic-bezier(0, 0, 0.2, 1);

  /* Layout */
  --tp-topbar-h: 52px;
  --tp-max-w: 1200px;

  /* Surfaces — DLS v1.0 */
  --tp-surface-elevated: var(--tp-card);
  --tp-surface-sunken: #F0F0F5;
  --tp-surface-code: #F5F5FA;

  /* Marketing gradients — DLS v1.0 */
  --tp-grad-red-glow: linear-gradient(170deg, #1a0a0e 0%, #180810 50%, #140a0c 100%);
  --tp-grad-green-tint: linear-gradient(170deg, #081a0e 0%, #0a1410 50%, #080e0c 100%);
  --tp-grad-blue-tint: linear-gradient(170deg, #080e1a 0%, #0a1020 50%, #080c14 100%);
  --tp-grad-amber-warm: linear-gradient(170deg, #1a1608 0%, #14120a 50%, #0e0c08 100%);
  --tp-grad-text-white: linear-gradient(135deg, #fff 0%, rgba(255,255,255,0.65) 100%);
  --tp-grad-text-red: linear-gradient(135deg, #F50F3C 0%, #FF4D6A 100%);
}

*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html { font-size: 16px; }

body {
  font-family: var(--tp-font);
  font-size: var(--tp-text-base);
  color: var(--tp-text);
  background: var(--tp-bg);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; cursor: pointer; }
input, select, textarea { font-family: inherit; font-size: inherit; }
