:root{
/* --- Wood: the primary brand ramp (sawdust -> oak -> walnut) --- */
--wood-50:#FDFAF4;--wood-100:#FAF5EC;--wood-200:#F1E7D6;--wood-300:#E3D2B8;--wood-400:#C9A97B;--wood-500:#B8823F;--wood-600:#9A6428;--wood-700:#6E4426;--wood-800:#4A2F20;--wood-900:#2E1E15;
/* --- Moss: secondary, used for confirmation and quiet emphasis --- */
--moss-100:#E7EDE3;--moss-300:#B6C4AE;--moss-500:#5A7150;--moss-600:#46583F;--moss-700:#33412E;
/* --- Clay: sparing warm alert / brick tone --- */
--clay-100:#F6E3DA;--clay-300:#DFAF98;--clay-500:#A65A3A;--clay-600:#8A4529;
/* --- Iron: warm-grey neutrals (never blue-grey) --- */
--iron-100:#EDE8E0;--iron-200:#D8D1C7;--iron-300:#B4ACA1;--iron-500:#736C63;--iron-700:#4A453F;--iron-900:#23201D;
--paper:#FFFDF8;--white:#FFFFFF;

/* --- Semantic text COLORS.
   Named --fg-* on purpose: the --text-* namespace belongs to type SIZES in typography.css.
   Never add a color token under --text-*; it silently collides. --- */
--fg-strong:var(--iron-900);--fg-body:var(--iron-700);--fg-muted:var(--iron-500);--fg-subtle:var(--iron-300);
--fg-inverse:var(--wood-100);--fg-accent:var(--wood-700);--fg-link:var(--wood-700);--fg-link-hover:var(--wood-900);

/* --- Semantic surfaces --- */
--surface-page:var(--wood-100);--surface-card:var(--paper);--surface-raised:var(--white);--surface-sunken:var(--wood-200);
--surface-inverse:var(--wood-900);--surface-inverse-soft:var(--wood-800);--surface-accent-soft:var(--wood-200);--surface-moss-soft:var(--moss-100);

/* --- Borders --- */
--border-hairline:#E0D6C6;--border-default:var(--iron-200);--border-strong:var(--wood-700);--border-inverse:#5C4130;--border-focus:var(--wood-600);

/* --- Accent (interactive) --- */
--accent:var(--wood-700);--accent-hover:var(--wood-800);--accent-press:var(--wood-900);--accent-contrast:var(--wood-50);
--accent-soft:var(--wood-200);--accent-soft-hover:var(--wood-300);
--secondary:var(--moss-600);--secondary-hover:var(--moss-700);

/* --- Status --- */
--status-success:var(--moss-600);--status-success-soft:var(--moss-100);
--status-warning:var(--wood-600);--status-warning-soft:var(--wood-200);
--status-danger:var(--clay-600);--status-danger-soft:var(--clay-100);
--status-info:var(--iron-700);--status-info-soft:var(--iron-100);

/* --- Focus ring --- */
--focus-ring:0 0 0 3px rgba(184,130,63,.38);
}
