:root{
/* ---------- Base ramps ---------- */

/* Marigold — the primary brand colour, lifted straight from the logo plate.
   Stops at 700: below that the hue turns muddy brown and stops reading as gold. */
--marigold-50:#FBF5E7;
--marigold-100:#F5E9CC;
--marigold-200:#EBD69F;
--marigold-300:#E0C376;
--marigold-400:#D9B65C;
--marigold-500:#D2AA46;
--marigold-600:#B98F33;
--marigold-700:#9C7527;

/* Ink — warm charcoal neutrals. Never pure black, never a cool grey.
   The ramp deliberately STOPS at a deep charcoal: #33302C is the darkest
   value in the system and is what "black" text means here. */
--ink-900:#33302C;
--ink-800:#3D3833;
--ink-700:#4A443E;
--ink-600:#5C554D;
--ink-500:#6E655C;
--ink-400:#8E8479;
--ink-300:#B2A79A;
--ink-200:#D3CAC0;
--ink-100:#E6DFD7;

/* Parchment — the paper the brand is printed on. */
--parchment-50:#FDFBF8;
--parchment-100:#F9F5EF;
--parchment-200:#F6F1EA;
--parchment-300:#EDE9E5;
--parchment-400:#E2DCD4;

/* Sage — the calm secondary. Used for quiet blocks and botanical linework. */
--sage-100:#EAECE2;
--sage-200:#D5D9C6;
--sage-300:#BEC3A8;
--sage-400:#A9AE8C;
--sage-500:#8D9271;
--sage-600:#6F7359;

/* Blush — soft warm tint for cards, quotes and photo mattes. */
--blush-100:#FBF2EF;
--blush-200:#F3E1DB;
--blush-300:#E8CFC8;
--blush-400:#D9B4AA;
--blush-500:#C1948A;

/* Persimmon — the bright accent. Small doses only: it is the pop, not the field. */
--persimmon-100:#FBE7E0;
--persimmon-200:#F4C3B2;
--persimmon-300:#EC9877;
--persimmon-400:#E37650;
--persimmon-500:#DB5C3C;
--persimmon-600:#BC4529;

/* Mulberry — deep plum, the namesake. Dark sections, footers, deep buttons. */
--mulberry-200:#D9BFC9;
--mulberry-300:#B98FA1;
--mulberry-400:#8E5A70;
--mulberry-500:#6B2F45;
--mulberry-600:#552438;
--mulberry-700:#3D1927;

/* ---------- Semantic aliases ---------- */
--brand:var(--marigold-500);
--brand-hover:var(--marigold-600);
--brand-press:var(--marigold-700);
--brand-tint:var(--marigold-100);
--accent:var(--persimmon-500);
--accent-hover:var(--persimmon-600);
--accent-tint:var(--persimmon-100);
--deep:var(--mulberry-500);
--deep-hover:var(--mulberry-600);
--calm:var(--sage-400);
--calm-tint:var(--sage-100);

--text-strong:var(--ink-900);
--text-body:var(--ink-700);
--text-muted:var(--ink-500);
--text-subtle:var(--ink-400);
--text-on-dark:var(--parchment-100);
--text-on-brand:#FFFFFF;
--text-link:var(--mulberry-500);
--text-link-hover:var(--persimmon-500);

--surface-page:var(--parchment-200);
--surface-card:#FFFFFF;
--surface-raised:var(--parchment-50);
--surface-sunken:var(--parchment-300);
--surface-quiet:var(--sage-100);
--surface-warm:var(--blush-100);
--surface-dark:var(--mulberry-600);
--surface-brand:var(--marigold-500);

--border-hairline:var(--ink-200);
--border-soft:var(--parchment-400);
--border-strong:var(--ink-800);
--border-brand:var(--marigold-500);
--border-on-dark:rgba(255,255,255,.22);

--focus-ring:var(--persimmon-500);

/* Status — derived from the brand family so nothing reads like a system alert. */
--success:#5F7A55;
--success-tint:#E9EFE4;
--warning:var(--marigold-600);
--warning-tint:var(--marigold-100);
--danger:var(--persimmon-600);
--danger-tint:var(--persimmon-100);
--info:var(--mulberry-400);
--info-tint:var(--mulberry-200);

/* Data viz — dashboards are the product, so the series order is fixed. */
--chart-1:var(--marigold-500);
--chart-2:var(--mulberry-500);
--chart-3:var(--sage-400);
--chart-4:var(--persimmon-400);
--chart-5:var(--blush-400);
--chart-6:var(--ink-400);
--chart-grid:var(--parchment-400);
--chart-axis:var(--ink-300);
}

[data-theme="dark"]{
--text-strong:var(--parchment-50);
--text-body:var(--parchment-200);
--text-muted:var(--blush-200);
--text-subtle:var(--mulberry-300);
--surface-page:var(--mulberry-700);
--surface-card:var(--mulberry-600);
--surface-raised:#5F2A3E;
--surface-sunken:var(--mulberry-700);
--border-hairline:rgba(255,255,255,.16);
--border-soft:rgba(255,255,255,.10);
--border-strong:var(--parchment-200);
--text-link:var(--marigold-300);
--text-link-hover:var(--marigold-200);
}
