/* Adapted from the "3Drawers Studio design system" claude.ai project
 * (tokens/colors.css), id 3f1889a6-5d00-4156-8e46-73cdaab7c26b. Primitives
 * (hue scales) are ported near-verbatim; the semantic layer is what the
 * rest of the app actually consumes — see CLAUDE.md for the sync process.
 * -bg/-ink status pairs (success/warning/danger/info) aren't in the source
 * project's tokens (its Badge.jsx hardcodes two hex values inline instead);
 * promoted to real tokens here so nothing in this app carries magic hex. */
:root{
--terracotta-100:#FFD9C2;--terracotta-300:#FF9D66;--terracotta-500:#FF5A1F;--terracotta-600:#E8430E;--terracotta-700:#B8340A;
--teal-100:#C8F3E6;--teal-300:#4FD4B4;--teal-500:#0DA486;--teal-600:#0A8069;--teal-700:#076352;
--gold-100:#FFEBB0;--gold-300:#FFCC33;--gold-500:#FFB700;--gold-600:#E09E00;--gold-700:#A67600;
--cobalt-100:#D2E1FF;--cobalt-300:#6D9EFF;--cobalt-500:#2E5EE8;--cobalt-600:#2249BD;--cobalt-700:#1A3890;
--plum-100:#F0DBFF;--plum-300:#D08AFF;--plum-500:#A742E0;--plum-600:#8A2EC0;
--pink-100:#FFD6EA;--pink-300:#FF7AC0;--pink-500:#F72A94;--pink-600:#D71B78;
--lime-100:#E8FFAE;--lime-300:#C3F542;--lime-500:#9BDB1E;--lime-600:#7CB816;
--grass-100:#DCEFD8;--grass-500:#3FAE3A;--grass-600:#2E8A2A;
--cherry-100:#FBDEDC;--cherry-500:#EF3D3D;--cherry-600:#C92626;

--neutral-0:#FFFFFF;--neutral-25:#FAFAFB;--neutral-50:#F1F1F4;--neutral-100:#E3E3E9;--neutral-200:#C9C9D4;
--neutral-300:#A3A3B3;--neutral-400:#797987;--neutral-500:#5B5B68;--neutral-600:#40404B;--neutral-700:#2A2A33;
--neutral-800:#1B1B22;--neutral-900:#101014;

--surface-page:var(--neutral-25);--surface-card:var(--neutral-0);--surface-sunken:var(--neutral-50);
--surface-overlay:rgba(16,16,20,.55);--surface-brand:var(--terracotta-500);--surface-brand-soft:var(--terracotta-100);

--border-subtle:var(--neutral-100);--border-default:var(--neutral-200);--border-strong:var(--neutral-300);

--text-primary:var(--neutral-800);--text-secondary:var(--neutral-500);--text-tertiary:var(--neutral-400);
--text-on-brand:#FFFFFF;--text-link:var(--cobalt-600);--text-link-hover:var(--cobalt-700);

--color-primary:var(--terracotta-500);--color-primary-hover:var(--terracotta-600);--color-primary-press:var(--terracotta-700);
--color-secondary:var(--teal-500);--color-secondary-hover:var(--teal-600);
--color-accent:var(--gold-500);

--color-success:var(--grass-500);--color-success-bg:var(--grass-100);--color-success-ink:var(--grass-600);
--color-warning:var(--gold-600);--color-warning-bg:var(--gold-100);--color-warning-ink:var(--gold-700);
--color-danger:var(--cherry-500);--color-danger-bg:var(--cherry-100);--color-danger-ink:var(--cherry-600);
--color-info:var(--cobalt-500);--color-info-bg:var(--cobalt-100);--color-info-ink:var(--cobalt-700);
}
[data-theme="dark"]{
--surface-page:#131318;--surface-card:#1E1E26;--surface-sunken:#101014;
--surface-overlay:rgba(0,0,0,.65);--surface-brand:var(--terracotta-500);--surface-brand-soft:rgba(255,90,31,.2);

--border-subtle:#2E2E38;--border-default:#3C3C48;--border-strong:#545463;

--text-primary:#F3F3F6;--text-secondary:#C1C1CC;--text-tertiary:#8B8B99;
--text-on-brand:#FFFFFF;--text-link:var(--cobalt-300);--text-link-hover:#A6C2FF;

--color-primary:var(--terracotta-500);--color-primary-hover:#FF7A45;--color-primary-press:var(--terracotta-600);
--color-secondary:var(--teal-300);--color-secondary-hover:#7EE6C8;
--color-accent:var(--gold-300);

--color-success:#63C85D;--color-success-bg:#1F3A1C;--color-success-ink:#A8DDA0;
--color-warning:var(--gold-300);--color-warning-bg:#3A2D0A;--color-warning-ink:var(--gold-300);
--color-danger:#F26B6B;--color-danger-bg:#3D1C1C;--color-danger-ink:#F5A99C;
--color-info:var(--cobalt-300);--color-info-bg:#1C2A42;--color-info-ink:var(--cobalt-300);
}
