/* ForgeFit V4 — unified visual identity derived from approved Accueil.
   Pure presentation: no changes to user data, exercise logic or backup services.
   The optional light mode remains readable but keeps the same orange branding. */
:root {
  --forge-orange:#ff711c;
  --forge-orange-strong:#ff8729;
  --forge-ink:#060809;
  --forge-panel:#12171b;
  --forge-panel-2:#1b2026;
  --forge-stroke:#363b41;
}
body[data-palette] {
  --accent:var(--forge-orange);
  --accent-ink:#1f0e05;
  --active-soft:#ff711c1b;
  --blue:#ff9e62;
  --orange:#ff9e62;
}
body:not(.light-mode) {
  color-scheme:dark;
  --bg:#060809;
  --surface:#12171b;
  --surface2:#1b2026;
  --stroke:#363b41;
  --txt:#f5f6f8;
  --muted:#aeb4bd;
  --shadow:0 12px 35px #0007;
  background:var(--bg);
}
body.light-mode[data-palette] {
  --accent:#b9480a;
  --accent-ink:#fff;
  --active-soft:#e974221c;
  --blue:#98400c;
  --orange:#98400c;
  --bg:#fcf8f4;
  --surface:#fff;
  --surface2:#f5ece5;
  --stroke:#d6c8bd;
  --txt:#231b16;
  --muted:#65564c;
}
/* Chrome, navigation and brand carry the same visual identity as the home. */
body:not(.light-mode) .topbar {
  background:#080b0df2;
  border-bottom:1px solid #35393d;
}
body:not(.light-mode) .bottom-nav {
  background:#090d10f4;
  border-top:1px solid #34383e;
  border-radius:20px 20px 0 0;
}
body .bottom-nav button[aria-current=page] {
  background:#ff711c19;
  color:#ff812b;
  font-weight:800;
}
body.light-mode .bottom-nav button[aria-current=page] {
  background:#b9480a17;
  color:#9a3908;
}
body:not(.light-mode) .bottom-nav button:not([aria-current=page]){color:#abb0b7}
body:not(.light-mode) .brand-mark {
  background:#ff711c;
  border-radius:2px;
  width:25px;height:25px;
  margin:0 7px 0 4px;
  color:transparent;
  font-size:0;
  transform:rotate(45deg);
}
body:not(.light-mode) .brand-accent{color:#fff}
body:not(.light-mode) .icon-btn{background:#14191d;color:#f6f7f8;border-color:#42454b;border-radius:50%}
body:not(.light-mode) .page-head .eyebrow {color:#ff8a3d}
body:not(.light-mode) .page-head h1 {color:#f8f9fa}
body:not(.light-mode) .card,
body:not(.light-mode) .list-card,
body:not(.light-mode) details,
body:not(.light-mode) .stat,
body:not(.light-mode) .day-row,
body:not(.light-mode) .metric-control{
  background:linear-gradient(145deg,#151a1e,#0d1114);
  border-color:#373b41;
  box-shadow:0 5px 24px #0003;
}
body:not(.light-mode) .card-soft,
body:not(.light-mode) .stat{background:#191e23}
body:not(.light-mode) .hero,
body:not(.light-mode) .academy-hero{
  background:linear-gradient(125deg,#22180f,#11181b 62%,#0c1113);
  border-color:#63442d;
  color:#f5f6f8;
}
body:not(.light-mode) .btn:not(.btn-secondary):not(.btn-outline):not(.btn-danger),
body:not(.light-mode) .v4-main-cta{
  background:linear-gradient(110deg,#ff8a33,#ff711c);
  color:#1e0d04;
  box-shadow:0 6px 22px #ff711c26;
}
body:not(.light-mode) :is(.btn-secondary,.btn-outline,.v4-arrow,.alt-choice,.metric-actions button){
  background:#1c2228;
  border-color:#43484e;
  color:#f6f7fa;
}
body:not(.light-mode) .pill:not(.neutral):not(.pending):not(.info):not(.error){
  background:#71371955;color:#ff9b5b
}
body:not(.light-mode) :is(.pill.info,.pill.pending){background:#58331e;color:#ffb17c}
body:not(.light-mode) .segmented{background:#101519;border-color:var(--stroke)}
body:not(.light-mode) .segmented button.active{background:#69341c;color:#fff}
body:not(.light-mode) :is(.form-control,.chat-log){background:#101519;color:#f5f6f8;border-color:#474c50}
body:not(.light-mode) :is(.chat-msg.user,.weekdays input:checked+span){background:#673116;color:#fff}
body:not(.light-mode) .chat-msg.bot{background:#24282d}
body:not(.light-mode) :is(.metric-actions button,.floating-timer button,.timer-bar){border-color:#794429}
body:not(.light-mode) .floating-timer button{background:#452919;color:#ffd1af}
body:not(.light-mode) .option input{accent-color:#ff711c}
body:not(.light-mode) .academy-play,
body:not(.light-mode) .academy-ex-icon,
body:not(.light-mode) .academy-cat-symbol{background:#532b18;color:#ff9c61}
body:not(.light-mode) .academy-featured-card .academy-play{
  background:linear-gradient(145deg,#713617,#1b1e22);
}
body:not(.light-mode) .academy-hero-kicker,
body:not(.light-mode) .academy-hero-stats strong{color:#ff9859}
body:not(.light-mode) .academy-hero p{color:#d3c7bd}
/* Programme: replace blue/green/violet with the home orange/anthracite while
   preserving its planner geometry, muscle art and hero photograph. */
body:not(.light-mode) .v4-planner {
  --v4-surface:#12171b;
  --v4-surface-2:#1b2026;
  --v4-border:#393d42;
  --v4-text:#f5f6f8;
  --v4-secondary:#aeb4bd;
}
body:not(.light-mode) .v4-hero {
  background:#0b0f11;
  border-color:#554238;
  box-shadow:0 12px 28px #0005;
}
body:not(.light-mode) .v4-hero::after {
  background:linear-gradient(90deg,#060809 0%,#060809f4 27%,#060809af 58%,#06080918 98%),
             linear-gradient(0deg,#060809ae,transparent 42%);
}
body:not(.light-mode) .v4-hero-photo img{filter:brightness(.97) contrast(1.15) saturate(.71)}
body:not(.light-mode) .v4-hero .v4-kicker,
body:not(.light-mode) .v4-hero h1 em {color:#ff8634}
body:not(.light-mode) .v4-hero .v4-kicker span{color:#c4c9cd}
body:not(.light-mode) .v4-hero p{color:#d3d3d5}
body:not(.light-mode) .v4-program-name{
  color:#ffd5b8;
  background:#472613d9;
  border:1px solid #95542f;
}
body:not(.light-mode) .v4-panel,
body:not(.light-mode) .v4-full-list,
body:not(.light-mode) .v4-day,
body:not(.light-mode) .v4-muscle {
  background:linear-gradient(150deg,#171c21,#101418);
  border-color:#393f45;
  box-shadow:0 7px 20px #0003;
}
body:not(.light-mode) .v4-day.v4-today {
  background:linear-gradient(145deg,#342014,#11181d);
  border-color:#ff812e;
  box-shadow:inset 0 0 0 1px #ff812e,0 0 16px #ff711c26;
  color:#fff;
}
body:not(.light-mode) .v4-day-symbol,
body:not(.light-mode) .v4-panel-icon{
  background:#49301d;
  color:#ff9958;
}
body:not(.light-mode) .v4-panel-icon.v4-blue{background:#49301d;color:#ff9958}
body:not(.light-mode) .v4-muscle-symbol,
body:not(.light-mode) .v4-stats span svg,
body:not(.light-mode) .v4-active .v4-day-check,
body:not(.light-mode) .v4-today .v4-day-check{color:#ff8635}
body:not(.light-mode) .v4-done .v4-day-check{
  background:#ff862e;color:#1f0d04;box-shadow:0 0 12px #ff711c3d;
}
body:not(.light-mode) .v4-ring {
  background:conic-gradient(#ff711c calc(var(--fill)*1%),#473329 0);
}
body:not(.light-mode) .v4-ring:before{background:#13181c}
body:not(.light-mode) .v4-meter i,
body:not(.light-mode) .v4-mini{background:linear-gradient(90deg,#ff6d18,#ff993f)}
body:not(.light-mode) .v4-arrow{background:#191e23;border-color:#44474d;color:#fff}
body:not(.light-mode) .v4-day-rest .v4-day-symbol{color:#aab0b7}
body:not(.light-mode) .v4-day-touch small{color:#aeb4bd}
body:not(.light-mode) .v4-planner :is(button,summary):focus-visible{outline-color:#ff9c60}
/* Explicit light mode remains usable; it shares orange identity rather than mint. */
body.light-mode .v4-program-name{background:#733412d9;color:#fff;border-color:#b9632d}
body.light-mode .v4-hero h1 em,
body.light-mode .v4-hero .v4-kicker{color:#ff9d5c}
body.light-mode .v4-day.v4-today{background:#f9e4d5;border-color:#bd5820;box-shadow:inset 0 0 0 1px #bd5820;color:#301a11}
body.light-mode .v4-day.v4-today :is(.v4-day-touch,.v4-day-touch small,b,span){color:#301a11}
body.light-mode .v4-day.v4-today .v4-day-symbol{background:#f3cfb2;color:#9d3907}
body.light-mode .v4-done .v4-day-check{background:#bb4b0d;color:#fff}
body.light-mode .v4-panel-icon,
body.light-mode .v4-day-symbol{background:#f9e9dc;color:#99420a}
body.light-mode .academy-hero{background:linear-gradient(120deg,#5a2912,#281b19);border-color:#a86647}
body.light-mode .academy-hero-kicker,
body.light-mode .academy-hero-stats strong{color:#ffb27d}
/* Keep iPhone edges, existing responsive layout and safe-area navigation. */
@media(max-width:430px){
  body:not(.light-mode) .topbar{min-height:62px}
  body:not(.light-mode) .v4-day-touch strong{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
  body .v4-planner *{transition:none!important}
}
