
/* v87.1 – unified theme cleanup
   Purpose: remove old legacy color fossils and make all non-pass pages feel like one NEXT Athlete OS theme.
   This file is intentionally loaded last. It only overrides visuals; no layout-critical pass logic. */

:root{
  --bg:#050913;
  --panel:#07101d;
  --panel2:#0b1628;
  --text:#f7fbff;
  --muted:#9fb4c8;
  --line:rgba(170,205,255,.14);
  --accent:#22e6ff;
  --accent2:#0b84ff;
  --good:#42ffd2;
  --warn:#ffd166;
  --bad:#ff6868;
  --next-pop:#d6ff00;
  --blue-glow:rgba(34,230,255,.22);
  --blue-soft:rgba(11,132,255,.12);
  --glass:rgba(255,255,255,.055);
  --glass2:rgba(255,255,255,.035);
}

/* Base text and backgrounds */
body{
  background:
    radial-gradient(circle at top left, rgba(11,132,255,.20), transparent 34vw),
    radial-gradient(circle at bottom right, rgba(34,230,255,.10), transparent 32vw),
    var(--bg) !important;
  color:var(--text);
}
.panel,
.video-card,
.info-card,
.playlist-card,
.test-card,
.library-detail,
.stat-card,
.day-card,
.profile-config-panel,
.hero-dashboard-panel{
  border-color:var(--line) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025)) !important;
}

/* Global button normalization */
.main-btn,
.next-pass-btn,
.day-start,
.sound-start,
.profile-btn.active,
.seg-btn.active,
.nav-link.active,
.utility-pill.active{
  background:linear-gradient(180deg,#18a7ff,#006fe8) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 18px 42px rgba(11,132,255,.26), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.main-btn:hover,
.next-pass-btn:hover,
.day-start:hover{
  filter:brightness(1.06);
  box-shadow:0 22px 52px rgba(11,132,255,.32), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.ghost-btn,
.tool-btn,
.seg-btn,
.profile-btn,
.day-overview,
.nav-link,
.utility-pill,
.day-actions button,
.start-tools button,
.menu-toggle,
.app-nav-toggle,
.app-tab{
  background:rgba(255,255,255,.055) !important;
  color:#edf7ff !important;
  border-color:rgba(170,205,255,.16) !important;
}
.ghost-btn:hover,
.tool-btn:hover,
.seg-btn:hover,
.profile-btn:hover,
.day-overview:hover,
.nav-link:hover,
.utility-pill:hover,
.menu-toggle:hover,
.app-nav-toggle:hover,
.app-tab:hover{
  background:rgba(34,230,255,.075) !important;
  border-color:rgba(34,230,255,.42) !important;
}

/* Prevent old lime/yellow from acting as primary UI color */
.pill,
.tag,
.dash-focus-chips span,
.daily-time-pill,
.dash-pill,
.done-badge,
.qa-status,
.test-stat,
.overview-equipment{
  border-color:rgba(34,230,255,.22) !important;
  background:rgba(11,132,255,.10) !important;
  color:#dff8ff !important;
}
.tag.orange{
  border-color:rgba(34,230,255,.34) !important;
  background:rgba(34,230,255,.12) !important;
  color:#e7fdff !important;
}
.section-title,
.meta,
.dash-kicker,
.daily-primary .dash-kicker,
.dash-focus-label,
.test-card label,
.library-copy small,
.coach-cues small,
.next-preview small{
  color:#6fd7ff !important;
}
.stat-card .kicker,
.stat-card .sub,
.muted,
.hint,
.small-note{
  color:#a8bdd1 !important;
}

/* Progress and meter colors */
.progress-bar,
.dash-bar span,
.mini-progress span,
.rest-progress-bar{
  background:linear-gradient(90deg,#22e6ff,#0b84ff,#42ffd2) !important;
}
.progress-shell,
.dash-bar,
.mini-progress{
  background:rgba(170,205,255,.12) !important;
  border-color:rgba(170,205,255,.10) !important;
}

/* Dashboard hero: keep the graphics but remove legacy lime-dominant feeling */
.home-hero{
  border-color:rgba(34,230,255,.18) !important;
  box-shadow:0 28px 88px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.next-wordmark{
  color:#fff !important;
  text-shadow:0 0 28px rgba(34,230,255,.25) !important;
}
.showcase-copy h1 span{
  color:#7be8ff !important;
  text-shadow:0 0 34px rgba(34,230,255,.16);
}
.benefit{
  border-color:rgba(170,205,255,.14) !important;
  background:rgba(4,11,22,.56) !important;
}
.benefit b{color:#fff !important;}
.benefit span{color:#a9bdd2 !important;}

/* Dashboard card cleanup */
.daily-primary .dash-title,
#progressDashboard .dash-title,
.title,
.exercise-name,
.rx-line,
.stat-card .big{
  color:#fff !important;
}
.daily-primary .dash-sub,
#progressDashboard .dash-sub{
  color:#c9d9e8 !important;
}
.dash-focus-card{
  border-color:rgba(170,205,255,.13) !important;
  background:rgba(255,255,255,.045) !important;
}
.dash-focus-text{
  color:#f2f7fb !important;
}

/* Program cards: active state blue/cyan; lime only as image accent */
.stage-choice.active,
.onboarding-program.active{
  border-color:rgba(34,230,255,.62) !important;
  box-shadow:0 0 0 1px rgba(34,230,255,.26) inset, 0 24px 52px rgba(0,0,0,.34), 0 0 34px rgba(34,230,255,.18) !important;
}
.onboarding-program strong{
  color:#7be8ff !important;
  text-shadow:0 0 24px rgba(34,230,255,.16);
}
.stage-choice span,
.onboarding-program span{
  color:#d6e8f6 !important;
}

/* Pass day and overview rows */
.day-card small{
  color:#6fd7ff !important;
}
.day-card h3,
.day-card p b{
  color:#fff !important;
}
.day-card::after{
  background:radial-gradient(circle, rgba(34,230,255,.16), rgba(34,230,255,.025) 58%, transparent 72%) !important;
}
.ex-row{
  border-color:rgba(170,205,255,.14) !important;
  background:rgba(255,255,255,.04) !important;
}
.num{
  background:rgba(34,230,255,.12) !important;
  color:#9ef2ff !important;
  border:1px solid rgba(34,230,255,.28) !important;
}

/* Library/test pages */
.library-filters input,
.library-filters select,
.test-card input,
.new-profile-box input,
.onboarding-name-input{
  background:#050a14 !important;
  color:#fff !important;
  border-color:rgba(170,205,255,.16) !important;
}
.qa-row.active{
  border-color:rgba(34,230,255,.65) !important;
  background:rgba(11,132,255,.12) !important;
}
.qa-ok,
.test-delta.good{
  color:#42ffd2 !important;
  border-color:rgba(66,255,210,.26) !important;
  background:rgba(66,255,210,.09) !important;
}
.qa-warn{
  color:#ffd166 !important;
  border-color:rgba(255,209,102,.26) !important;
  background:rgba(255,209,102,.09) !important;
}
.qa-bad{
  color:#ff9aa8 !important;
  border-color:rgba(255,104,104,.26) !important;
  background:rgba(255,104,104,.09) !important;
}

/* Active pass mode: keep compact layout, just make colors coherent */
.sticky-nav{
  background:rgba(4,8,16,.92) !important;
  border-color:rgba(170,205,255,.14) !important;
}
.menu-toggle,
.exit-pass-btn{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(170,205,255,.16) !important;
  color:#edf7ff !important;
}
.info-card{
  background:linear-gradient(180deg,rgba(10,18,31,.94),rgba(5,10,18,.96)) !important;
}
.coach-cues,
.set-note,
.next-preview,
.timer-card,
.superset-status{
  border-color:rgba(170,205,255,.13) !important;
  background:rgba(255,255,255,.045) !important;
}
.rest-stage{
  background:linear-gradient(90deg,#02050b 0%,#06172a 50%,#02050b 100%) !important;
}
.rest-display{
  color:#effbff !important;
  text-shadow:0 0 42px rgba(34,230,255,.28),0 12px 60px rgba(0,0,0,.60) !important;
}

/* Mobile nav cleanup */
@media(max-width:900px){
  .app-topbar{
    border-color:rgba(170,205,255,.14) !important;
    background:rgba(4,8,16,.82) !important;
  }
  .app-topbar.nav-open .app-tabs{
    background:rgba(5,10,20,.96) !important;
    border-color:rgba(170,205,255,.16) !important;
  }
  .pass-bottom-controls .main-btn{
    background:linear-gradient(180deg,#18a7ff,#006fe8) !important;
  }
}

/* Keep lime as a tiny performance accent only where it makes sense */
.dash-focus-label,
.daily-primary .dash-kicker{
  letter-spacing:.12em;
}
