/* OnePlace design tokens — premium consumer finish */
:root {
  /* OnePlace Core Brand System */
  --primary: #0E6B5A;
  --primary-deep: #094a3e;
  --primary-light: #13826e;
  --pine: #0E6B5A;
  --teal: #0E6B5A;
  --teal-deep: #094a3e;
  --teal-light: #13826e;
  
  --secondary: #4EA5FF;
  --secondary-soft: #EBF4FE;
  --accent: #DFF6EE;
  --mint: #DFF6EE;
  --coral: #E85D5D;

  /* Neutrals */
  --background: #F8F9FC;
  --cloud: #F8F9FC;
  --surface: #FFFFFF;
  --card: #FFFFFF;
  --surface-alt: #F1F4F9;
  --sand: #F0F4FA;
  --stone: #E2E8F0;
  --line: #EBF0F7;
  --line-subtle: #F1F4F9;

  /* Typography Colors */
  --text-primary: #1A1A1A;
  --ink: #1A1A1A;
  --text-secondary: #5A5A5A;
  --muted: #5A5A5A;
  --faint: #5F6B76;

  /* Semantic */
  --success: #3CB371;
  --warning: #F6B73C;
  --danger: #E85D5D;
  --danger-soft: #FDF2F2;
  --info: #4EA5FF;

  /* Tinted Backgrounds */
  --tint-mint: #DFF6EE;
  --tint-green: #E8F8F0;
  --tint-amber: #FEF9E7;
  --tint-red: #FDF2F2;
  --tint-blue: #EBF4FE;
  --tint-purple: #F3E8FF;

  /* Elevation */
  --shadow-xs: 0 1px 2px rgba(14, 107, 90, 0.03);
  --shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
  --shadow-card: 0 4px 16px rgba(15, 23, 42, 0.04), 0 1px 3px rgba(15, 23, 42, 0.02);
  --shadow-float: 0 12px 32px rgba(14, 107, 90, 0.12), 0 4px 12px rgba(0, 0, 0, 0.04);
  --shadow-sheet: 0 24px 48px rgba(14, 107, 90, 0.18), 0 12px 24px rgba(0, 0, 0, 0.08);

  /* Shape & Rhythm */
  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius-card: 20px;
  --radius-lg: 24px;
  --radius-sheet: 28px;
  --radius-pill: 999px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 28px;
  --space-7: 40px;
  --tabbar-h: 76px;

  /* Typography */
  --font-display: system-ui, system-ui, -apple-system, 'SF Pro Display', sans-serif;
  --font-body: system-ui, -apple-system, 'SF Pro Text', sans-serif;
  --text-xs: 11px;
  --text-sm: 13px;
  --text-base: 16px;
  --text-lg: 17px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 28px;
  --text-4xl: 34px;
  --leading-tight: 1.2;
  --leading-normal: 1.45;
  --leading-relaxed: 1.6;

  /* Motion */
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --duration-fast: 120ms;
  --duration-normal: 200ms;
  --duration-slow: 300ms;

  /* Z-Index */
  --z-dropdown: 50;
  --z-sticky: 60;
  --z-tabbar: 70;
  --z-modal: 80;
  --z-toast: 90;
  --z-tooltip: 100;
}

[data-theme='dark'] {
  --primary: #12836E;
  --primary-deep: #0E6B5A;
  --primary-light: #32C7AA;
  --pine: #E5F4F0;
  --teal: #12836E;
  --teal-deep: #0E6B5A;
  --teal-light: #32C7AA;

  --background: #0B1311;
  --cloud: #0B1311;
  --surface: #14211E;
  --card: #14211E;
  --surface-alt: #1B2B28;
  --sand: #1B2B28;
  --stone: #243B36;
  --line: #203531;
  --line-subtle: #192926;

  --text-primary: #F4F8F6;
  --ink: #F4F8F6;
  --text-secondary: #94A6A0;
  --muted: #94A6A0;
  --faint: #677E77;

  --tint-mint: #173B33;
  --tint-green: #143527;
  --tint-amber: #3D2D10;
  --tint-red: #3D1818;
  --tint-blue: #142B3F;
  --tint-purple: #2D1B3F;
  --chip-amber-ink: #F6B73C;

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.35), 0 1px 2px rgba(0, 0, 0, 0.25);
  --shadow-card: 0 4px 16px rgba(0, 0, 0, 0.4), 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-float: 0 12px 32px rgba(0, 0, 0, 0.55), 0 4px 12px rgba(0, 0, 0, 0.35);
  --shadow-sheet: 0 24px 48px rgba(0, 0, 0, 0.65), 0 12px 24px rgba(0, 0, 0, 0.45);
}

/* Hardcoded-once accents that need dark-mode-safe overrides */
[data-theme='dark'] .icon-circle.slate { background: #243B36; color: #CBD5E1; }
[data-theme='dark'] .icon-circle.clay { background: #3D1818; color: #FCA5A5; }
[data-theme='dark'] .chip-amber { color: #F6B73C; }
[data-theme='dark'] .btn-danger:hover { background: #3D1818; }