:root{
/* Core palette — from Emili Rose brand moodboard */
--color-ink:#0a0a0a;
--color-porcelain:#f4f1ec;
--color-beige:#c8baa8;
--color-taupe:#8c7f72;
--color-white:#ffffff;

/* Extended neutrals, derived in oklch to stay harmonious with the beige/taupe base */
--color-sand-50:oklch(97.5% 0.006 80);
--color-sand-100:oklch(95% 0.010 75);
--color-sand-200:oklch(90% 0.014 72);
--color-sand-300:oklch(82% 0.018 70);
--color-stone-600:oklch(52% 0.014 65);
--color-stone-700:oklch(38% 0.012 60);
--color-stone-900:oklch(18% 0.005 60);

/* Accent — used sparingly, e.g. the blue seen in seasonal skinwear drops */
--color-riviera-blue:oklch(85% 0.045 250);
--color-riviera-blue-deep:oklch(35% 0.05 258);

/* Semantic aliases */
--surface-page:var(--color-porcelain);
--surface-card:var(--color-white);
--surface-inverse:var(--color-ink);
--surface-sunken:var(--color-sand-100);
--surface-border:var(--color-sand-300);
--surface-border-strong:var(--color-taupe);

--text-primary:var(--color-ink);
--text-secondary:var(--color-stone-700);
--text-muted:var(--color-stone-600);
--text-on-inverse:var(--color-porcelain);
--text-on-inverse-muted:oklch(80% 0.01 70);

--accent-primary:var(--color-ink);
--accent-on-primary:var(--color-white);
--accent-soft:var(--color-beige);

--state-hover-overlay:oklch(0% 0 0 / 0.06);
--state-press-overlay:oklch(0% 0 0 / 0.12);
--state-hover-overlay-on-dark:oklch(100% 0 0 / 0.10);
--state-press-overlay-on-dark:oklch(100% 0 0 / 0.18);
--state-focus-ring:var(--color-ink);
--state-disabled-bg:var(--color-sand-100);
--state-disabled-text:var(--color-sand-300);

--status-success:oklch(45% 0.09 145);
--status-error:oklch(48% 0.16 25);
}
