:root{
/* Neutral ramp — the entire palette. Warm-neutral blacks, no blue cast. */
--gray-0:#FFFFFF;
--gray-50:#F2F2F2;
--gray-100:#EDEDED;
--gray-200:#D4D4D4;
--gray-300:#A3A3A3;
--gray-400:#8A8A8A;
--gray-500:#6B6B6B;
--gray-600:#4A4A4A;
--gray-700:#2E2E2E;
--gray-750:#262626;
--gray-800:#1F1F1F;
--gray-850:#1A1A1A;
--gray-900:#151515;
--gray-950:#0F0F0F;
--gray-1000:#0A0A0A;

/* Single non-neutral: availability signal only */
--signal-live:#4ADE80;
--signal-live-dim:rgba(74,222,128,.16);
--signal-error:#F87171;

/* Semantic — surfaces */
--surface-page:var(--gray-950);
--surface-sunken:var(--gray-1000);
--surface-card:var(--gray-900);
--surface-raised:var(--gray-850);
--surface-hover:var(--gray-800);
--surface-inverse:var(--gray-0);
--surface-overlay:rgba(15,15,15,.72);

/* Semantic — text */
--text-strong:var(--gray-0);
--text-body:var(--gray-100);
--text-muted:var(--gray-300);
--text-subtle:var(--gray-500);
--text-disabled:var(--gray-600);
--text-inverse:var(--gray-1000);

/* Semantic — lines */
--border-subtle:rgba(255,255,255,.06);
--border-default:rgba(255,255,255,.09);
--border-strong:rgba(255,255,255,.16);
--border-focus:rgba(255,255,255,.48);

/* Links */
--link:var(--text-strong);
--link-hover:var(--text-muted);
}
