:root {
  --tsm-bg: #090b0e;
  --tsm-panel: #0e141a;
  --tsm-panel-2: #12181e;
  --tsm-text: #e8eef3;
  --tsm-muted: #8b96a3;
  --tsm-line: rgba(158, 192, 212, 0.18);
  --tsm-blue: #9ec0d4;
  --tsm-blue-bright: #d2e4ee;
  --tsm-blue-dim: #5a7d92;
  --tsm-funding: #d4b06a;
  --tsm-funding-dim: #8f7548;
}

body[data-tsm] {
  color: var(--tsm-text);
  background:
    radial-gradient(900px 480px at 88% -8%, rgba(158, 192, 212, 0.12), transparent 55%),
    radial-gradient(720px 420px at -10% 18%, rgba(50, 72, 92, 0.2), transparent 50%),
    var(--tsm-bg);
}
body[data-tsm] img { filter: saturate(0.62) contrast(1.04); }
body[data-tsm] .back {
  color: #0b1218;
  background: var(--tsm-blue);
  border: 1px solid var(--tsm-blue-bright);
  border-radius: 999px;
}
body[data-tsm="hub"] { --bg: var(--tsm-bg); --ink: var(--tsm-text); --muted: var(--tsm-muted); }
body[data-tsm="hub"] .kicker { color: var(--tsm-blue); }
body[data-tsm="hub"] .kicker a,
body[data-tsm="hub"] .to-price { border-color: var(--tsm-blue-dim); }
body[data-tsm="hub"] .hub-actions .secondary { color: var(--tsm-funding); border-color: var(--tsm-funding-dim); }
body[data-tsm="hub"] .card {
  color: var(--tsm-text);
  border-color: var(--tsm-line);
  background: linear-gradient(145deg, rgba(18, 24, 30, 0.98), rgba(12, 17, 22, 0.98));
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
}
body[data-tsm="hub"] .card:hover { border-color: rgba(212, 176, 106, 0.55); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4); }
body[data-tsm="hub"] .card::after { display: block; background: var(--tsm-blue); opacity: 0.08; }
body[data-tsm="hub"] .card:nth-child(even)::after { background: var(--tsm-funding); }
body[data-tsm="hub"] .card h2,
body[data-tsm="hub"] .card .go { color: var(--tsm-blue); }
body[data-tsm="hub"] .card p { color: var(--tsm-muted); }
body[data-tsm="hub"] .pricing { border-color: var(--tsm-line); }
body[data-tsm="hub"] .plan,
body[data-tsm="hub"] .plan.featured,
body[data-tsm="hub"] .extras { color: var(--tsm-text); background: var(--tsm-panel); border-color: var(--tsm-line); }
body[data-tsm="hub"] .plan.featured { border-color: var(--tsm-funding-dim); }
body[data-tsm="hub"] .plan-tag,
body[data-tsm="hub"] .featured .plan-tag,
body[data-tsm="hub"] .amount,
body[data-tsm="hub"] .featured .amount,
body[data-tsm="hub"] .plan li::before { color: var(--tsm-funding); }
body[data-tsm="hub"] .amount b,
body[data-tsm="hub"] .featured .amount b,
body[data-tsm="hub"] .featured ul,
body[data-tsm="hub"] .extras b { color: var(--tsm-text); }
body[data-tsm="hub"] .plan-note,
body[data-tsm="hub"] .featured .plan-note,
body[data-tsm="hub"] .plan ul,
body[data-tsm="hub"] .extras li,
body[data-tsm="hub"] .fine,
body[data-tsm="hub"] footer { color: var(--tsm-muted); }
body[data-tsm="hub"] .extras li { border-color: var(--tsm-line); }

body[data-tsm="restaurant"] { --bg: var(--tsm-bg); --gold: var(--tsm-funding); --wine: var(--tsm-blue-dim); --paper: var(--tsm-text); --muted: var(--tsm-muted); }
body[data-tsm="restaurant"] .nav { background: linear-gradient(180deg, rgba(9, 11, 14, 0.86), transparent); }
body[data-tsm="restaurant"] .room-copy,
body[data-tsm="restaurant"] .sheet { background: var(--tsm-panel); }
body[data-tsm="restaurant"] .courses li,
body[data-tsm="restaurant"] .sheet { border-color: var(--tsm-line); }
body[data-tsm="restaurant"] .cta {
  background:
    linear-gradient(180deg, rgba(9, 11, 14, 0.58), rgba(9, 11, 14, 0.9)),
    url("https://images.unsplash.com/photo-1600891964599-f61ba0e24092?auto=format&fit=crop&w=1800&q=80") center/cover;
}

body[data-tsm="clinic"] { --bg: var(--tsm-bg); --ink: var(--tsm-text); --muted: var(--tsm-muted); --line: var(--tsm-line); --teal: var(--tsm-funding); --card: var(--tsm-panel); }
body[data-tsm="clinic"] .call,
body[data-tsm="clinic"] .btn.ghost,
body[data-tsm="clinic"] .scroller article,
body[data-tsm="clinic"] .path b,
body[data-tsm="clinic"] .book { background: var(--tsm-panel); }
body[data-tsm="clinic"] .btn { background: var(--tsm-blue); color: #0b1218; }
body[data-tsm="clinic"] .badge { background: rgba(14, 20, 26, 0.94); }
body[data-tsm="clinic"] .badge strong { background: rgba(212, 176, 106, 0.12); }
body[data-tsm="clinic"] .book-form input,
body[data-tsm="clinic"] .book-form select { background: var(--tsm-panel-2); }
body[data-tsm="clinic"] .book-form button { background: var(--tsm-funding); color: #0b1218; }

body[data-tsm="cafe"] { --cream: var(--tsm-bg); --ink: var(--tsm-text); --terra: var(--tsm-funding); --sage: var(--tsm-blue); --foam: var(--tsm-panel); }
body[data-tsm="cafe"] .blob { background: rgba(158, 192, 212, 0.1); }
body[data-tsm="cafe"] .tilt { box-shadow: 0 16px 30px rgba(0, 0, 0, 0.32); }
body[data-tsm="cafe"] .marquee { background: var(--tsm-panel-2); border-color: var(--tsm-blue-dim); }
body[data-tsm="cafe"] .cup { border: 1px solid var(--tsm-line); }
body[data-tsm="cafe"] .c1 { background: var(--tsm-funding-dim); }
body[data-tsm="cafe"] .c2 { background: var(--tsm-funding); }
body[data-tsm="cafe"] .c3 { background: var(--tsm-blue); }
body[data-tsm="cafe"] .c4 { background: var(--tsm-blue-dim); }
body[data-tsm="cafe"] .visit { color: var(--tsm-text); background: var(--tsm-panel); border: 1px solid var(--tsm-line); }
body[data-tsm="cafe"] .visit h2 { color: var(--tsm-blue-bright); }
body[data-tsm="cafe"] .pill { color: #0b1218; }
body[data-tsm="cafe"] footer { color: var(--tsm-muted); }

body[data-tsm="trades"] { --yellow: var(--tsm-funding); --black: var(--tsm-bg); --concrete: var(--tsm-panel); color: var(--tsm-text); }
body[data-tsm="trades"] .ticker,
body[data-tsm="trades"] .hero,
body[data-tsm="trades"] footer { background: var(--tsm-funding); color: #0b1218; }
body[data-tsm="trades"] .proof { background: var(--tsm-panel); color: var(--tsm-text); }
body[data-tsm="trades"] .price { background: var(--tsm-panel-2); color: var(--tsm-text); }
body[data-tsm="trades"] .jobs article:hover { color: #0b1218; }
body[data-tsm="trades"] .call p { color: var(--tsm-muted); }

body[data-tsm="dance"] { --bg: var(--tsm-bg); --pink: var(--tsm-funding); --ink: var(--tsm-text); }
body[data-tsm="dance"] .hero-copy p,
body[data-tsm="dance"] label,
body[data-tsm="dance"] .trial p,
body[data-tsm="dance"] footer { color: var(--tsm-muted); }
body[data-tsm="dance"] .classes,
body[data-tsm="dance"] .classes article,
body[data-tsm="dance"] th,
body[data-tsm="dance"] td { border-color: var(--tsm-line); }
body[data-tsm="dance"] td:not(:empty),
body[data-tsm="dance"] .trial { background: var(--tsm-panel); }
body[data-tsm="dance"] input,
body[data-tsm="dance"] select { color: var(--tsm-text); background: var(--tsm-panel-2); border-color: var(--tsm-line); }
body[data-tsm="dance"] button { color: #0b1218; }

body[data-tsm="author"] { --paper: var(--tsm-bg); --ink: var(--tsm-text); --mute: var(--tsm-muted); --rule: var(--tsm-line); --mark: var(--tsm-funding); }
body[data-tsm="author"] .spine { background: rgba(14, 20, 26, 0.52); }
