/* ============================================================
   warm.css — warm theme rules, split out of overrides.css.
   Loaded after overrides.css (these are :root[data-theme="warm"]
   rules, higher specificity, so file order is immaterial).
   ============================================================ */
:root[data-theme="warm"] .tabs { border-bottom: none; gap: 9px; align-items: center; }:root[data-theme="warm"] .tab-group { gap: 9px; }:root[data-theme="warm"] .tab {
  border: 2px solid transparent; border-bottom: none; margin-bottom: 0;
  border-radius: var(--r-full); background: var(--surface); color: var(--text-muted);
  font-weight: 700; padding: 9px 16px; box-shadow: 0 2px 6px rgba(120, 90, 60, 0.06);
}:root[data-theme="warm"] .tab:hover:not(.active) { color: var(--text); background: var(--surface); }:root[data-theme="warm"] .tab.active,
:root[data-theme="warm"] .tab[aria-selected="true"] {
  background: var(--dark); color: var(--surface); border-bottom-color: transparent;
}:root[data-theme="warm"] .tab .icon-svg { width: 15px; height: 15px; opacity: 0.9; }:root[data-theme="warm"] .stat-card {
  border: none; border-radius: 20px; box-shadow: 0 3px 12px rgba(120, 90, 60, 0.06); padding: 20px;
}:root[data-theme="warm"] .stat-card:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(120, 90, 60, 0.12); border-color: transparent; }:root[data-theme="warm"] .stat-card .label { text-transform: none; letter-spacing: 0; font-size: 12.5px; font-weight: 600; color: var(--text-muted); }:root[data-theme="warm"] .stat-card .value { font-size: 23px; font-weight: 700; font-variation-settings: normal; }:root[data-theme="warm"] .stat-card .icon { width: 40px; height: 40px; border-radius: 13px; }:root[data-theme="warm"] .stat-card .icon .icon-svg { width: 20px; height: 20px; }:root[data-theme="warm"] .stat-card .change,
:root[data-theme="warm"] .stat-card .sublabel { font-size: 11.5px; color: var(--text-subtle); font-weight: 600; }:root[data-theme="warm"] .stats-grid > .stat-card:first-child {
  background: linear-gradient(135deg, #2f9e7d 0%, #37b894 100%);
  border: none; border-radius: 28px; box-shadow: 0 14px 34px rgba(47, 158, 125, 0.28);
}:root[data-theme="warm"] .stats-grid > .stat-card:first-child::after {
  background:
    radial-gradient(200px 200px at 100% 120%, rgba(255, 255, 255, 0.14), transparent 60%),
    radial-gradient(110px 110px at 85% -20%, rgba(255, 255, 255, 0.10), transparent 60%);
}:root[data-theme="warm"] .stats-grid > .stat-card:first-child .value { font-size: 42px; font-weight: 700; font-variation-settings: normal; }:root[data-theme="warm"] .stats-grid > .stat-card:first-child .icon { background: rgba(255, 255, 255, 0.18); color: #fff; }:root[data-theme="warm"] .stats-grid > .stat-card:first-child .label,
:root[data-theme="warm"] .stats-grid > .stat-card:first-child .change,
:root[data-theme="warm"] .stats-grid > .stat-card:first-child .sublabel {
  color: color-mix(in srgb, var(--surface-hero-text) 90%, transparent);
}:root[data-theme="warm"] .section-title,
:root[data-theme="warm"] .chart-title,
:root[data-theme="warm"] .header h1,
:root[data-theme="warm"] .header h1 span { font-weight: 700; font-variation-settings: normal; letter-spacing: -0.005em; }:root[data-theme="warm"] .chart-container { border: none; border-radius: 24px; box-shadow: 0 3px 12px rgba(120, 90, 60, 0.06); }:root[data-theme="warm"] .chart-header { border-bottom: 1px solid var(--border); }:root[data-theme="warm"] .badge { font-family: var(--font-sans); font-weight: 800; font-feature-settings: normal; border-radius: var(--r-full); letter-spacing: 0; }:root[data-theme="warm"] #triptychMine,
:root[data-theme="warm"] #triptychOurs,
:root[data-theme="warm"] #triptychYours { border-radius: 20px; box-shadow: 0 3px 12px rgba(120, 90, 60, 0.06); }:root[data-theme="warm"] { --ledger-pad-v: 9px;  --ledger-pad-h: 14px; --ledger-font: 12.5px; --ledger-zebra: var(--surface-muted); }:root[data-theme="warm"] .stats-grid > .stat-card:first-child .change {
  display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; padding: 6px 13px;
  border-radius: var(--r-full); background: rgba(255, 255, 255, 0.2); color: #fff;
  font-size: 13px; font-weight: 700; width: fit-content;
}:root[data-theme="warm"] .stats-grid > .stat-card:first-child .value { font-size: 48px; line-height: 1; }:root[data-theme="warm"] .stats-grid > .stat-card:not(:first-child) .sublabel,
:root[data-theme="warm"] .stats-grid > .stat-card:not(:first-child) .change { color: color-mix(in srgb, var(--text-muted) 62%, transparent); }:root[data-theme="warm"] .chart-header { border-bottom: none; }
