/* ============================================================
   BG Remover — Design Tokens
   ============================================================ */

:root {
  /* Brand palette */
  --color-yellow: #FFD600;
  --color-yellow-strong: #E6C000;
  --color-yellow-soft: #FFF4B8;
  --color-black: #111111;
  --color-dark-gray: #242424;
  --color-light-gray: #F6F6F4;
  --color-border: #E8E8E3;
  --color-white: #FFFFFF;

  /* Semantic */
  --bg-page: var(--color-white);
  --bg-elevated: var(--color-white);
  --bg-subtle: var(--color-light-gray);
  --bg-inverse: var(--color-black);

  --fg-primary: var(--color-black);
  --fg-secondary: #4A4A4A;
  --fg-muted: #6B6B6B;
  --fg-inverse: var(--color-white);

  --accent: var(--color-yellow);
  --accent-hover: var(--color-yellow-strong);

  --border-default: var(--color-border);
  --border-strong: #D4D4CE;

  /* Status */
  --color-success: #1F7A3A;
  --color-warning: #B26A00;
  --color-danger: #B0261F;
  --color-info: #1C4E9A;

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

  --fs-xs: 12px;
  --fs-sm: 14px;
  --fs-base: 16px;
  --fs-md: 18px;
  --fs-lg: 20px;
  --fs-xl: 24px;
  --fs-2xl: 32px;
  --fs-3xl: 40px;
  --fs-4xl: 52px;
  --fs-5xl: 64px;

  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-normal: 1.55;
  --lh-relaxed: 1.7;

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* Spacing scale */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* Radii */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-pill: 999px;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(17, 17, 17, 0.06);
  --shadow-sm: 0 1px 3px rgba(17, 17, 17, 0.08), 0 1px 2px rgba(17, 17, 17, 0.04);
  --shadow-md: 0 4px 12px rgba(17, 17, 17, 0.08), 0 2px 4px rgba(17, 17, 17, 0.04);
  --shadow-lg: 0 12px 32px rgba(17, 17, 17, 0.10), 0 4px 8px rgba(17, 17, 17, 0.04);
  --shadow-focus: 0 0 0 3px rgba(255, 214, 0, 0.55);

  /* Layout */
  --container-sm: 720px;
  --container-md: 960px;
  --container-lg: 1200px;
  --container-xl: 1320px;
  --container-pad: clamp(16px, 4vw, 40px);

  /* Header */
  --header-height: 68px;

  /* Transitions */
  --ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;

  /* Z-index */
  --z-header: 100;
  --z-dropdown: 200;
  --z-toast: 900;
  --z-modal: 1000;
}

[data-theme="dark"] {
  --bg-page: #0E0E0E;
  --bg-elevated: #161616;
  --bg-subtle: #1B1B1B;
  --bg-inverse: #FFFFFF;

  --fg-primary: #F5F5F2;
  --fg-secondary: #C8C8C2;
  --fg-muted: #8E8E88;
  --fg-inverse: #111111;

  --border-default: #2A2A2A;
  --border-strong: #3A3A3A;

  --color-light-gray: #1B1B1B;
  --color-border: #2A2A2A;

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.6);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.7);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.7);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.75);
}