:root {
  --bg: #fbfaf8;
  --bg-alt: #f2efe9;
  --bg-elevated: #ffffff;
  --border: #e6e1d8;
  --text: #211d18;
  --text-soft: #635c50;
  --text-faint: #6e6858;
  --on-accent: #ffffff;
  --rating: #b8862e;
  --accent: #b5502f;
  --accent-fill: #b5502f;
  --accent-2: #1f5f4e;
  --accent-soft: rgba(181, 80, 47, 0.1);
  --success: #16a34a;
  --success-soft: rgba(22, 163, 74, 0.1);
  --on-success: #0d2b17;
  --danger: #dc2626;
  --danger-soft: rgba(220, 38, 38, 0.1);
  --shadow-sm: 0 1px 2px rgba(30, 25, 15, 0.06);
  --shadow-md: 0 8px 24px rgba(30, 25, 15, 0.08);
  --shadow-lg: 0 20px 50px rgba(30, 25, 15, 0.16);
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --font-body: "Inter", system-ui, -apple-system, sans-serif;
  --font-display: "Sora", var(--font-body);
}

:root[data-theme="dark"] {
  --bg: #17140f;
  --bg-alt: #1e1a14;
  --bg-elevated: #221e17;
  --border: #332c21;
  --text: #f2ece1;
  --text-soft: #b8ae9c;
  --text-faint: #998e78;
  --on-accent: #ffffff;
  --rating: #e0a835;
  --accent: #d9764f;
  --accent-fill: #b8502c;
  --accent-2: #3d9c84;
  --accent-soft: rgba(217, 118, 79, 0.16);
  --success: #34d399;
  --success-soft: rgba(52, 211, 153, 0.14);
  --on-success: #0d2b17;
  --danger: #f87171;
  --danger-soft: rgba(248, 113, 113, 0.14);
  --shadow-sm: 0 1px 2px rgba(0,0,0,.4);
  --shadow-md: 0 8px 24px rgba(0,0,0,.4);
  --shadow-lg: 0 20px 50px rgba(0,0,0,.55);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #17140f; --bg-alt: #1e1a14; --bg-elevated: #221e17; --border: #332c21;
    --text: #f2ece1; --text-soft: #b8ae9c; --text-faint: #998e78;
    --on-accent: #ffffff; --rating: #e0a835;
    --accent: #d9764f; --accent-fill: #b8502c; --accent-2: #3d9c84; --accent-soft: rgba(217, 118, 79, 0.16);
    --success: #34d399; --success-soft: rgba(52, 211, 153, 0.14); --on-success: #0d2b17;
    --danger: #f87171; --danger-soft: rgba(248, 113, 113, 0.14);
    --shadow-sm: 0 1px 2px rgba(0,0,0,.4); --shadow-md: 0 8px 24px rgba(0,0,0,.4); --shadow-lg: 0 20px 50px rgba(0,0,0,.55);
  }
}
