/* Report theme: restyles the three reports to the hub's look.
   Loaded after each report's own <style>, scoped by the body class the hub adds
   (hub-r-tracker / hub-r-daily / hub-r-weekly). Colors, type and spacing only -
   no layout logic, no content. Status pills keep their own semantic colors. */

body.hub-report { background: var(--hub-page) !important; color: var(--hub-ink); font-family: var(--hub-font) !important; font-size: 13.5px; }
body.hub-report table { font-variant-numeric: tabular-nums; }

/* ======================= shared table look ======================= */
body.hub-report th {
  font-size: 12px !important; font-weight: 600 !important; color: var(--hub-muted) !important;
  text-transform: none !important; letter-spacing: 0 !important;
  background: #f9fafb; border-bottom: 1px solid var(--hub-border) !important;
  padding: 10px 10px !important;
}
body.hub-report td { padding: 9px 10px; border-bottom: 1px solid var(--hub-hairline); }
body.hub-report main tbody tr:hover, body.hub-report tbody tr:hover td { background: #fafbfc; }

/* ======================= Sales Tracker ======================= */
.hub-r-tracker {
  --ground: var(--hub-page); --surface: var(--hub-surface); --border: var(--hub-border);
  --text: var(--hub-ink); --dim: var(--hub-ink-2); --accent: var(--hub-accent);
  --radius: var(--hub-radius); --font: var(--hub-font); --mono: var(--hub-font);
}
.hub-r-tracker .header { background: var(--hub-surface); border-bottom: 1px solid var(--hub-border); padding: 22px 24px; }
.hub-r-tracker .header-logo { background: var(--hub-accent-bg); }
.hub-r-tracker .header-eyebrow { color: var(--hub-muted); letter-spacing: 0.08em; font-weight: 600; }
.hub-r-tracker .header-title { color: var(--hub-ink); font-size: 22px; font-weight: 650; letter-spacing: -0.02em; }
.hub-r-tracker .header-date { color: var(--hub-ink-2); font-size: 12.5px; }
.hub-r-tracker .header-total { color: var(--hub-ink); font-weight: 650; letter-spacing: -0.03em; }
.hub-r-tracker .header-total-label { color: var(--hub-muted); }

.hub-r-tracker .main-nav { background: var(--hub-surface); border-bottom: 1px solid var(--hub-border); padding: 0 24px; flex-wrap: wrap; }
.hub-r-tracker .nav-tab { color: var(--hub-ink-2); font-size: 13.5px; font-weight: 550; letter-spacing: 0; padding: 14px 14px 12px; border-bottom-width: 2px; }
.hub-r-tracker .nav-tab:hover { color: var(--hub-ink); }
.hub-r-tracker .nav-tab.active { color: var(--hub-accent-2); border-bottom-color: var(--hub-accent); }
.hub-r-tracker .nav-tab .nc { background: #eef0f3; color: var(--hub-ink-2); font-weight: 600; }
.hub-r-tracker .nav-tab.active .nc { background: var(--hub-accent-bg); color: var(--hub-accent-2); }
.hub-r-tracker button[onclick="downloadAll()"] {
  color: var(--hub-ink-2) !important; border-color: var(--hub-border) !important; background: var(--hub-surface) !important;
}

.hub-r-tracker .content { padding: 24px; }
.hub-r-tracker .kpi-card:hover { transform: none; box-shadow: none; border-color: var(--hub-accent); }
.hub-r-tracker .kpi-value { font-size: 28px; font-weight: 650; letter-spacing: -0.02em; }
.hub-r-tracker .kpi-label { font-size: 12.5px; font-weight: 550; color: var(--hub-ink-2); }
.hub-r-tracker .kpi-group-title, .hub-r-tracker .section-label, .hub-r-tracker .filter-label {
  font-size: 11.5px; font-weight: 650; letter-spacing: 0.05em; color: var(--hub-ink-2);
}
.hub-r-tracker .filter-bar select:focus, .hub-r-tracker .filter-bar input:focus,
.hub-r-tracker .ms-btn.active { border-color: var(--hub-accent); box-shadow: 0 0 0 2px var(--hub-accent-bg); }
.hub-r-tracker .ms-dropdown input[type=checkbox] { accent-color: var(--hub-accent); }
.hub-r-tracker .table-wrap { border-radius: var(--hub-radius); }
.hub-r-tracker th:first-child { border-left: none; }
.hub-r-tracker td { font-size: 12.5px; }
.hub-r-tracker .cname { font-size: 12.5px; color: var(--hub-ink); }
.hub-r-tracker .sp-tag { background: #eef0f3; color: var(--hub-ink); font-weight: 600; }
.hub-r-tracker .batch-tag { background: var(--hub-surface); }
.hub-r-tracker .sp-section-name { font-weight: 650; letter-spacing: -0.01em; }

/* ================= Daily + Weekly Accountability ================= */
.hub-r-daily, .hub-r-weekly {
  --bg: var(--hub-page); --panel: var(--hub-surface); --text: var(--hub-ink); --muted: var(--hub-ink-2);
  --border: var(--hub-border); --accent: var(--hub-accent); --ok: var(--hub-good); --warn: var(--hub-warn);
}
body.hub-report header { padding: 22px 24px; }
body.hub-report header h1 { font-size: 22px; font-weight: 650; letter-spacing: -0.02em; }
body.hub-report header .sub { color: var(--hub-ink-2); font-size: 12.5px; }
body.hub-report > nav { padding: 0 24px; gap: 0; }
body.hub-report > nav button { color: var(--hub-ink-2); font-size: 13.5px; font-weight: 550; padding: 14px 14px 12px; font-family: var(--hub-font); }
body.hub-report > nav button:hover { color: var(--hub-ink); }
body.hub-report > nav button.active { color: var(--hub-accent-2); border-bottom-color: var(--hub-accent); font-weight: 550; }
body.hub-report main { padding: 24px; }
body.hub-report .global-search, body.hub-report .fc-search { font-family: var(--hub-font); border-radius: 8px; }
body.hub-report .global-search:focus, body.hub-report .fc-search:focus { outline: none; border-color: var(--hub-accent); box-shadow: 0 0 0 2px var(--hub-accent-bg); }

body.hub-report .subtabbtn { font-family: var(--hub-font); border-radius: 8px; color: var(--hub-ink-2); font-weight: 550; }
body.hub-report .subtabbtn.active { color: var(--hub-accent-2); background: var(--hub-accent-bg); border-color: var(--hub-accent); font-weight: 600; }

body.hub-report .kpi-card { border-radius: var(--hub-radius); }
body.hub-report .kpi-card .kpi-icon { display: none; }
body.hub-report .kpi-card .kpi-num { font-size: 28px; font-weight: 650; letter-spacing: -0.02em; }
body.hub-report .kpi-card .kpi-lbl { font-size: 12.5px; color: var(--hub-ink-2); text-transform: none; letter-spacing: 0; font-weight: 550; }
body.hub-report .notice { border-left-color: var(--hub-accent); border-radius: 8px; }

/* rep cards on the daily Summary: white header, rep color kept only on the avatar */
body.hub-report .rep-card { border-radius: var(--hub-radius); box-shadow: none; }
body.hub-report .rep-card-header { background: var(--hub-surface); color: var(--hub-ink); border-bottom: 1px solid var(--hub-hairline); }
body.hub-report .rep-avatar { background: var(--rep-color, var(--hub-accent)); color: #fff; }
body.hub-report .section-label { color: var(--hub-ink-2); font-weight: 650; letter-spacing: 0.05em; }
body.hub-report .stat-box .num { font-weight: 650; }
body.hub-report .stat-box .lbl { text-transform: none; letter-spacing: 0; font-size: 11px; color: var(--hub-ink-2); }
body.hub-report .stat-box.highlight { background: var(--hub-accent-bg); }
body.hub-report .stat-box.highlight .num { color: var(--hub-accent-2); }
body.hub-report .stat-box.warn-box { background: var(--hub-crit-bg); }
body.hub-report .stat-box.warn-box .num, body.hub-report .talk-item.stopper { color: var(--hub-crit); }

body.hub-report .delta-up { color: var(--hub-good); font-weight: 600; }
body.hub-report .delta-down { color: var(--hub-crit); font-weight: 600; }
body.hub-report .forecast-gmv { color: var(--hub-accent-2); }
body.hub-report .track-badge { font-weight: 600; letter-spacing: 0; }
body.hub-report .track-badge.track-forecast { background: var(--hub-accent-bg); color: var(--hub-accent-2); }
body.hub-report .track-badge.track-penetration { background: #ecebf8; color: #4a3aa7; }
body.hub-report .track-badge.track-nontolls { background: var(--hub-good-bg); color: var(--hub-good); }
