:root{
/* ---- Brand base palette (sampled from supplied swatch art) ---- */
--pt-lime:#e4fc6e;--pt-sky:#6bc1ef;--pt-amber:#f5c352;--pt-coral:#ff8f66;--pt-gray:#6d6d6d;--pt-ink:#212a2b;

/* ---- Lime ramp (primary / court) ---- */
--lime-100:#f7ffd9;--lime-200:#eeffab;--lime-300:#e4fc6e;--lime-400:#d2ef48;--lime-500:#b9d629;--lime-600:#8fa817;

/* ---- Sky ramp (secondary / cool) ---- */
--sky-100:#e4f4fd;--sky-200:#bfe4fa;--sky-300:#6bc1ef;--sky-400:#3ea7e0;--sky-500:#2286bd;--sky-600:#14618c;

/* ---- Amber ramp (accent / the ball) ---- */
--amber-100:#fdf2dc;--amber-200:#fbe0ab;--amber-300:#f5c352;--amber-400:#e8a927;--amber-500:#c4871a;--amber-600:#8f6110;

/* ---- Coral ramp (alert / intensity) ---- */
--coral-100:#ffe9e1;--coral-200:#ffc9b5;--coral-300:#ff8f66;--coral-400:#f96d3c;--coral-500:#d94e1f;--coral-600:#a03713;

/* ---- Neutral ramp (ink-tinted greys) ---- */
--n-0:#ffffff;--n-50:#f6f7f6;--n-100:#eceeed;--n-200:#dcdfde;--n-300:#c2c6c5;--n-400:#9a9e9d;
--n-500:#6d6d6d;--n-600:#4d5354;--n-700:#363d3e;--n-800:#2a3233;--n-900:#212a2b;--n-950:#141a1b;

/* ---- Semantic: surfaces ---- */
--surface-page:var(--n-50);
--surface-card:var(--n-0);
--surface-sunken:var(--n-100);
--surface-inverse:var(--n-900);
--surface-inverse-raised:var(--n-800);
--surface-brand:var(--lime-300);
--surface-accent:var(--amber-300);
--surface-cool:var(--sky-300);
--surface-hot:var(--coral-300);

/* ---- Semantic: text ---- */
--text-strong:var(--n-900);
--text-body:var(--n-700);
--text-muted:var(--n-500);
--text-on-brand:var(--n-900);
--text-on-inverse:var(--n-0);
--text-inverse-muted:var(--n-300);
--text-link:var(--sky-600);
--text-link-hover:var(--sky-500);

/* ---- Semantic: lines ---- */
--border-subtle:var(--n-200);
--border-default:var(--n-300);
--border-strong:var(--n-900);
--border-inverse:rgba(255,255,255,.14);
--focus-ring:var(--sky-400);

/* ---- Semantic: status ---- */
--status-go:var(--lime-500);
--status-info:var(--sky-400);
--status-warn:var(--amber-400);
--status-alert:var(--coral-400);
--status-neutral:var(--n-500);
}
