/* ── SDPal — Design Tokens ── */

@import url('https://fonts.googleapis.com/css2?family=Satoshi:wght@400;500;600;700;800;900&display=swap');

:root {
  /* Surfaces — true black base with glass layers */
  --bg-base: #050507;
  --bg-primary: #0a0a0f;
  --bg-secondary: #0e0e15;
  --bg-tertiary: #14141c;
  --bg-elevated: #1a1a24;
  --bg-card: rgba(255,255,255,0.028);
  --bg-card-hover: rgba(255,255,255,0.055);
  --bg-input: rgba(255,255,255,0.04);
  --bg-input-focus: rgba(255,255,255,0.065);

  /* Glass */
  --glass: rgba(10,10,16,0.72);
  --glass-border: rgba(255,255,255,0.06);
  --glass-blur: 20px;
  --glass-card: rgba(255,255,255,0.03);
  --glass-card-border: rgba(255,255,255,0.07);
  --glass-card-hover: rgba(255,255,255,0.06);

  /* Borders */
  --border: rgba(255,255,255,0.07);
  --border-hover: rgba(255,255,255,0.13);
  --border-focus: rgba(34,197,94,0.45);
  --border-subtle: rgba(255,255,255,0.035);

  /* Text */
  --text-1: #f0f2f5;
  --text-2: rgba(255,255,255,0.5);
  --text-3: rgba(255,255,255,0.28);
  --text-inv: #050507;

  /* Accent */
  --accent: #22c55e;
  --accent-hover: #16a34a;
  --accent-dim: rgba(34,197,94,0.08);
  --accent-mid: rgba(34,197,94,0.18);
  --accent-bright: #4ade80;
  --accent-glow: 0 0 20px rgba(34,197,94,0.15), 0 0 60px rgba(34,197,94,0.04);
  --accent-glow-sm: 0 0 12px rgba(34,197,94,0.1);
  --accent-glow-btn: 0 0 16px rgba(34,197,94,0.2), 0 2px 8px rgba(0,0,0,0.4);

  /* Semantic */
  --danger: #f43f5e;
  --danger-dim: rgba(244,63,94,0.1);
  --danger-border: rgba(244,63,94,0.25);
  --warning: #fbbf24;
  --warning-dim: rgba(251,191,36,0.1);
  --info: #3b82f6;
  --info-dim: rgba(59,130,246,0.1);
  --purple: #a78bfa;
  --purple-dim: rgba(167,139,250,0.08);
  --purple-border: rgba(167,139,250,0.2);
  --cyan: #22d3ee;
  --cyan-dim: rgba(34,211,238,0.08);
  --pink: #f472b6;
  --pink-dim: rgba(244,114,182,0.08);
  --amber: #fbbf24;
  --amber-dim: rgba(251,191,36,0.08);

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.3), 0 1px 4px rgba(0,0,0,0.2);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.4), 0 4px 12px rgba(0,0,0,0.25);
  --shadow-xl: 0 24px 60px rgba(0,0,0,0.5);

  /* Radii */
  --r-xs: 6px;
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 20px;
  --r-2xl: 24px;
  --r-full: 9999px;

  /* Type */
  --font: 'Satoshi', -apple-system, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'Fira Code', monospace;

  /* Easing */
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --t: 0.2s var(--ease-in-out);
  --t-slow: 0.35s var(--ease);
  --t-spring: 0.4s var(--ease-spring);

  /* Layout */
  --nav-h: 52px;
  --bnav-h: 64px;
  --side-w: 68px;
  --max-w: 700px;
  --wide-w: 960px;
}
