/* Shared presentation only. Chart signal colors and exercise logic remain local. */
:root {
  --bg: #0b0e0d;
  --panel: #121715;
  --text: #f2f0e8;
  --muted: #a5aea8;
  --accent: #9ce6c1;
  --border: #303c34;
  --yellow: #f1c56b;
}
body.tg-has-site-nav {
  min-height: 100vh;
  background: radial-gradient(circle at 78% 12%, rgba(89,175,133,.12), transparent 34rem),
    radial-gradient(circle at 8% 58%, rgba(241,197,107,.055), transparent 28rem), var(--bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.tg-equipment h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 5vw, 52px);
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.12;
}
body.tg-equipment :is(.tile, .hero, .callout, .status, .chart-wrap, .rule-panel) {
  background: var(--panel);
  border-color: var(--border);
  border-radius: 14px;
}
body.tg-equipment .tile { padding: 22px; }
body.tg-equipment .tile:hover { border-color: #618c74; }
body.tg-equipment .hero { padding: 28px; }
body.tg-equipment .hero h2 { font-family: Georgia, serif; font-size: 28px; font-weight: 400; }
body.tg-equipment :is(.primary-btn, .go a.primary, .button.primary) {
  background: var(--accent);
  color: #07110c;
  border: 1px solid var(--accent);
  border-radius: 999px;
  padding: 11px 22px;
  font-weight: 700;
  min-height: 44px;
}
body.tg-equipment :is(.secondary-btn, .button:not(.primary)) {
  color: #f1c56b;
  border: 1px solid #6b5937;
  background: rgba(241,197,107,.055);
  border-radius: 999px;
  min-height: 44px;
}
body.tg-equipment :is(.ans-btn, .conf-btn) { border-radius: 9px; min-height: 44px; }
body.tg-equipment .conf-btn.selected { background: #1d3026; color: var(--accent); }
body.tg-equipment .doctrine { background: #1b1c14; border-color: #6b5937; border-radius: 14px; }
body.tg-equipment .persistent-header { top: 54px; }
body.tg-equipment .rule-panel { top: 66px; max-height: calc(100vh - 82px); }
body.tg-equipment :is(a, button, summary, input):focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 1139px) {
  body.tg-equipment .rule-panel { top: 54px; max-height: calc(100vh - 54px); border-radius: 0; }
}
@media (max-width: 560px) {
  body.tg-equipment .tile { padding: 18px; }
  body.tg-equipment .hero { padding: 22px; }
}
