/* GritHQ Alpha4.74 Audit Repair
   Loaded after visual-lock-v1. This layer only repairs user-requested areas.
   It must not change the locked Alpha4.72 shell geometry or primary page layout. */
:root{
  --gh474-primary:#2f91ff;
  --gh474-primary-rgb:47,145,255;
  --gh474-secondary:#27d4e7;
  --gh474-secondary-rgb:39,212,231;
  --gh474-panel-tint:47,145,255;
}

/* Brand + Coach: keep exact Alpha4.72 assets and geometry. Only improve small-size clarity. */
.mobile-brand-row .brand-logo-img,.rail-logo-img{
  filter:drop-shadow(0 0 7px rgba(var(--gh474-primary-rgb),.17)) contrast(1.055) saturate(1.04)!important;
}
.global-coach-btn img,.gh-coach-avatar,.global-coach-avatar img{
  filter:saturate(1.11) brightness(1.08) contrast(1.15) drop-shadow(0 0 5px rgba(91,74,255,.26))!important;
}

/* Today's Plan: use the actual centralized contextual art selected in app.js. */
.gh-home-v2-plan:not(.plan-setup)::before{
  background-image:var(--gh-plan-art)!important;
  opacity:.56!important;
  filter:saturate(.90) contrast(1.08)!important;
}

/* Recovery: all three rings use the approved Readiness ring footprint. */
.gh-home-v2-recovery-metric.readiness strong,
.gh-home-v2-metric-icon{
  width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;border-radius:50%!important;
}
.gh-home-v2-metric-icon svg{width:27px!important;height:27px!important}
/* Readiness is intentionally distinct from Recovery green. */
.gh-home-v2-recovery-metric.readiness strong{border-color:#4d92ff!important;box-shadow:0 0 14px rgba(77,146,255,.13)!important}
.gh-home-v2-recovery-metric.readiness small{color:#78adff!important}
/* Check-in gets its own semantic accent. */
.gh-home-v2-action.checkin{color:#ff7669!important;border-color:rgba(255,118,105,.42)!important}
.gh-home-v2-action.checkin>span{background:rgba(255,118,105,.065)!important}

/* Smart Quick Actions: one quiet intelligence marker, never repeated SMART labels. */
.gh-home-v2-action{position:relative!important}
.gh-home-v2-action .gh-smart-spark{
  position:absolute!important;right:7px!important;top:6px!important;padding:0!important;border:0!important;background:none!important;
  font-style:normal!important;font-size:10px!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;
  color:#97a9b9!important;opacity:.66!important;
}

/* Train support-lane imagery: use existing approved art assets, no new generated artwork. */
#view-routines .training-mode-intro.mobility::before{
  background-image:url('../../assets/plan-mobility-v1.webp')!important;background-size:cover!important;background-position:center 31%!important;
}
#view-routines .training-mode-intro.recovery::before{
  background-image:url('../../assets/plan-recovery-v1.webp')!important;background-size:cover!important;background-position:center 33%!important;
}

/* Equipment: permanent selected tray + unmistakable selected state. */
.equipment-selection-persistent{
  display:block!important;padding:10px 11px!important;margin:9px 0 11px!important;border:1px solid rgba(var(--gh474-primary-rgb),.38)!important;
  border-radius:13px!important;background:linear-gradient(155deg,rgba(var(--gh474-primary-rgb),.075),rgba(4,15,26,.86))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 0 14px rgba(var(--gh474-primary-rgb),.045)!important;
}
.equipment-selected-panel-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:8px!important}
.equipment-selected-panel-head span{font-weight:780!important;color:#edf4fa!important}
.equipment-selected-panel-head b{font-size:10px!important;color:var(--gh474-primary)!important}
/* IMPORTANT: profile-search-result is the actual equipment choice class. */
.profile-search-results.equipment-search-results .profile-search-result.selected{
  border-color:var(--gh474-primary)!important;
  background:linear-gradient(145deg,rgba(var(--gh474-primary-rgb),.16),rgba(5,18,29,.90))!important;
  box-shadow:inset 0 0 0 1px rgba(var(--gh474-primary-rgb),.32),0 0 13px rgba(var(--gh474-primary-rgb),.09)!important;
}
.profile-search-results.equipment-search-results .profile-search-result.selected>b{color:var(--gh474-primary)!important}
.equipment-selection-persistent .profile-selected-equipment{
  border-color:rgba(var(--gh474-primary-rgb),.28)!important;background:rgba(var(--gh474-primary-rgb),.055)!important;
}

/* Rich category-specific Progress summaries. */
.gh474-area-dashboard{display:grid;gap:10px;margin:8px 0 14px}
.gh474-area-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.gh474-area-metrics>div{
  min-width:0;padding:11px 8px;border-radius:13px;border:1px solid rgba(88,123,155,.34);
  background:linear-gradient(155deg,rgba(9,25,40,.91),rgba(4,13,22,.86));text-align:center;
}
.gh474-area-metrics span{display:block;font-size:8px;line-height:1.2;color:#8fa2b4}
.gh474-area-metrics strong{display:block;margin-top:5px;font-size:17px;line-height:1.06;color:#f5f8fb;overflow-wrap:anywhere}
.gh474-area-metrics small{display:block;margin-top:4px;font-size:7.5px;line-height:1.2;color:#8097a9}
.gh474-area-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.gh474-area-detail{padding:12px!important;min-width:0}
.gh474-detail-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.gh474-detail-head>div{min-width:0}.gh474-detail-head h3{margin:0;font-size:13px}.gh474-detail-head p{margin:2px 0 0;font-size:8.5px;line-height:1.35;color:#8ea3b4}
.gh474-distribution{display:grid;gap:7px}
.gh474-distribution>div{display:grid;grid-template-columns:minmax(76px,.9fr) minmax(72px,1.25fr);align-items:center;gap:8px;font-size:8px;color:#9eb0bf}
.gh474-distribution>div>span{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}
.gh474-distribution>div>span b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#b9c8d4;font-size:8px}
.gh474-distribution>div>span small{color:#d7e2eb;font-size:7.5px;font-variant-numeric:tabular-nums}
.gh474-distribution>div>i{height:6px;border-radius:99px;background:rgba(83,108,132,.20);overflow:hidden}
.gh474-distribution>div>i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gh474-primary),var(--gh474-secondary));box-shadow:0 0 7px rgba(var(--gh474-primary-rgb),.22)}
.gh474-signal-card{padding:11px 12px!important;border-color:rgba(var(--gh474-primary-rgb),.24)!important;background:linear-gradient(145deg,rgba(var(--gh474-primary-rgb),.055),rgba(5,16,26,.76))!important}
.gh474-signal-card strong{display:block;font-size:10px;color:#dce9f2;margin-bottom:4px}.gh474-signal-card span{display:block;font-size:9px;line-height:1.4;color:#91a7b8}
.gh474-area-dashboard.calisthenics .gh474-area-metrics>div:nth-child(1){border-color:rgba(69,145,255,.48)}
.gh474-area-dashboard.strength .gh474-area-metrics>div:nth-child(1){border-color:rgba(37,215,230,.45)}
.gh474-area-dashboard.cardio .gh474-area-metrics>div:nth-child(1){border-color:rgba(142,224,77,.44)}

/* Health: interpreted trends, not raw-number-only. */
.gh474-health-insight{margin-top:12px!important;padding:13px!important}
.gh474-health-empty{margin-top:10px;padding:10px 11px;border-radius:11px;background:rgba(7,20,32,.66);font-size:9px;line-height:1.45;color:#94a8b8}
.gh474-health-signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}
.gh474-health-signal{padding:10px;border-radius:12px;border:1px solid rgba(88,123,155,.28);background:rgba(5,17,28,.78);min-width:0}
.gh474-health-signal>span{display:block;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#93a8ba}
.gh474-health-signal>strong{display:block;margin-top:4px;font-size:16px;color:#f2f7fb}.gh474-health-signal>small{display:block;margin-top:2px;font-size:8px;color:#859daf}
.gh474-health-signal>p{margin:7px 0 0;font-size:8.5px;line-height:1.42;color:#a0b1bf}
.gh474-health-signal.violet{border-color:rgba(155,87,255,.34)}.gh474-health-signal.cyan{border-color:rgba(38,210,227,.34)}.gh474-health-signal.rose{border-color:rgba(239,91,126,.34)}.gh474-health-signal.lime{border-color:rgba(139,220,76,.34)}
.gh474-health-takeaway{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:10px;padding:10px 11px;border-radius:11px;border:1px solid rgba(var(--gh474-primary-rgb),.25);background:rgba(var(--gh474-primary-rgb),.045)}
.gh474-health-takeaway strong{font-size:9px;color:#dce9f3}.gh474-health-takeaway span{font-size:9px;line-height:1.42;color:#9cb0bf}
.hydration-context,.coach-hydration-recommendation{padding:11px 12px;border-radius:12px;border:1px solid rgba(86,124,158,.32);background:rgba(3,14,24,.66);display:grid;gap:4px}
.hydration-context.ready,.coach-hydration-recommendation.ready{border-color:rgba(52,194,158,.42)}
.hydration-context strong,.coach-hydration-recommendation strong{font-size:11px}.hydration-context span,.coach-hydration-recommendation span{font-size:9px;line-height:1.42;color:#94a9b8}

/* Themes: same layouts, clearly different atmospheres and active controls. Semantic metric colors stay semantic. */
html[data-theme="midnight-ember"]{--gh474-primary:#2f91ff;--gh474-primary-rgb:47,145,255;--gh474-secondary:#27d4e7;--gh474-secondary-rgb:39,212,231;--gh474-panel-tint:47,145,255}
html[data-theme="graphite-lime"]{--gh474-primary:#94e85c;--gh474-primary-rgb:148,232,92;--gh474-secondary:#58d5c2;--gh474-secondary-rgb:88,213,194;--gh474-panel-tint:148,232,92}
html[data-theme="navy-ice"]{--gh474-primary:#55d8ff;--gh474-primary-rgb:85,216,255;--gh474-secondary:#858cff;--gh474-secondary-rgb:133,140,255;--gh474-panel-tint:85,216,255}
html[data-theme="slate-crimson"]{--gh474-primary:#f36a7c;--gh474-primary-rgb:243,106,124;--gh474-secondary:#ff9a5f;--gh474-secondary-rgb:255,154,95;--gh474-panel-tint:243,106,124}
html[data-theme="obsidian-mono"]{--gh474-primary:#eef2f6;--gh474-primary-rgb:238,242,246;--gh474-secondary:#9ba8b5;--gh474-secondary-rgb:155,168,181;--gh474-panel-tint:238,242,246}
html[data-theme] .bottom-nav .nav-btn.active{
  color:var(--gh474-primary)!important;border-color:rgba(var(--gh474-primary-rgb),.52)!important;
  background:linear-gradient(160deg,rgba(var(--gh474-primary-rgb),.18),rgba(var(--gh474-primary-rgb),.045))!important;
  box-shadow:inset 0 0 0 1px rgba(var(--gh474-primary-rgb),.32),0 0 13px rgba(var(--gh474-primary-rgb),.10)!important;
}
html[data-theme] .bottom-nav .nav-btn.active svg{filter:drop-shadow(0 0 6px rgba(var(--gh474-primary-rgb),.34))!important}
html[data-theme] #view-settings .theme-option.selected,
html[data-theme] #view-history .progress-area-tab.active,
html[data-theme] #view-routines .gh-six-lanes .gh-lane-switch.active{
  border-color:rgba(var(--gh474-primary-rgb),.70)!important;
  background:linear-gradient(155deg,rgba(var(--gh474-primary-rgb),.14),rgba(var(--gh474-primary-rgb),.035))!important;
  box-shadow:inset 0 0 0 1px rgba(var(--gh474-primary-rgb),.24),0 0 14px rgba(var(--gh474-primary-rgb),.10)!important;
}
html[data-theme] #view-history .progress-area-tab.active,
html[data-theme] #view-routines .gh-six-lanes .gh-lane-switch.active,
html[data-theme] #view-settings .theme-option.selected{color:var(--gh474-primary)!important}
html[data-theme] .primary{
  border-color:rgba(var(--gh474-primary-rgb),.72)!important;
  background:linear-gradient(135deg,rgba(var(--gh474-primary-rgb),.98),color-mix(in srgb,var(--gh474-primary) 70%,#07182a))!important;
  box-shadow:0 4px 15px rgba(var(--gh474-primary-rgb),.16)!important;
}
html[data-theme] .gh474-signal-card{border-color:rgba(var(--gh474-primary-rgb),.25)!important}

@media(max-width:390px){
  .gh-home-v2-recovery-metric.readiness strong,.gh-home-v2-metric-icon{width:45px!important;height:45px!important;min-width:45px!important;min-height:45px!important}
  .gh-home-v2-metric-icon svg{width:22px!important;height:22px!important}
  .gh474-area-metrics{gap:5px}.gh474-area-metrics>div{padding:9px 5px}.gh474-area-metrics strong{font-size:14px}.gh474-area-metrics span{font-size:7px}
  .gh474-area-detail-grid,.gh474-health-signal-grid{grid-template-columns:1fr 1fr;gap:6px}
  .gh474-area-detail{padding:10px!important}.gh474-distribution>div{grid-template-columns:minmax(66px,.85fr) minmax(52px,1.15fr);gap:5px;font-size:7.5px}
}
