:root{
/* Abyss ramp — the deep, unknown ocean. 100 = surface light, 900 = the trench */
--abyss-900:#03060C;--abyss-800:#06101F;--abyss-700:#0A1B31;--abyss-600:#0F2A45;--abyss-500:#153A5C;
/* Glacier ramp — lit water, the mid tones that carry brand color */
--glacier-500:#1F5C8C;--glacier-400:#2E77AB;--glacier-300:#4E96C6;--glacier-200:#7FB4D6;
/* Frost ramp — ice, rime, breath on glass */
--frost-300:#A6C9DE;--frost-200:#C6DCE9;--frost-100:#DEEAF2;--frost-050:#EEF4F8;
--whiteout:#F9FCFD;--pure:#FFFFFF;
/* Accents — sparse. Sun through ice, and a warm filmic flare */
--flare-400:#E8B87A;--flare-300:#F2D2A6;
--signal-teal:#4FD1C5;--signal-alert:#E2735F;

/* ── Semantic: surfaces ── */
--surface-abyss:var(--abyss-900);
--surface-deep:var(--abyss-800);
--surface-raised:var(--abyss-700);
--surface-light:var(--frost-050);
--surface-card:rgba(255,255,255,0.055);
--surface-card-light:rgba(255,255,255,0.72);
--surface-glass:rgba(198,220,233,0.08);
--surface-scrim:rgba(3,6,12,0.62);

/* ── Semantic: text ── */
--text-primary:var(--whiteout);
--text-body:rgba(222,234,242,0.78);
--text-muted:rgba(198,220,233,0.52);
--text-faint:rgba(166,201,222,0.34);
--text-on-light:var(--abyss-800);
--text-body-on-light:rgba(6,16,31,0.68);
--text-muted-on-light:rgba(6,16,31,0.45);
--text-accent:var(--frost-300);
--text-inverse:var(--abyss-900);

/* ── Semantic: lines ── */
--line-hairline:rgba(198,220,233,0.14);
--line-strong:rgba(198,220,233,0.28);
--line-light:rgba(6,16,31,0.12);
--focus-ring:rgba(126,180,214,0.55);

/* ── Semantic: interactive ── */
--action-fill:var(--frost-050);
--action-fill-hover:var(--pure);
--action-ink:var(--abyss-900);
--action-ghost-hover:rgba(198,220,233,0.10);
--action-accent:var(--glacier-400);
--action-accent-hover:var(--glacier-300);
}
