:root {
  --bg: #0b0f16;
  --surface: #121824;
  --surface-2: #182132;
  --surface-soft: #151d2b;
  --surface-raised: #1a2434;
  --surface-strong: #202b3d;
  --border: #263247;
  --text: #f5f7fb;
  --muted: #9aa8bc;
  --accent: #65d6a1;
  --danger: #ff7676;
  --warning: #f2c56b;
  --radius: 18px;
  --shadow: 0 12px 30px rgba(0,0,0,.20);
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg); color: var(--text); font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
button { font: inherit; }
button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.app-shell { width: min(100%, 760px); min-height: 100vh; margin: 0 auto; background: var(--bg); }
.topbar { position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; padding: 18px 18px 14px; background: rgba(11,15,22,.94); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(255,255,255,.04); }
.eyebrow { color: var(--accent); font-size: .70rem; font-weight: 800; letter-spacing: .18em; }
.topbar h1 { margin: 3px 0 0; font-size: 1.35rem; }
.icon-button { width: 42px; height: 42px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); color: var(--text); cursor: pointer; }
.main-content { padding: 18px 16px 104px; }

.hero { padding: 20px; border: 1px solid var(--border); border-radius: 24px; background: linear-gradient(145deg, var(--surface-2), var(--surface)); box-shadow: var(--shadow); }
.hero .kicker { color: var(--muted); font-size: .82rem; }
.hero h2 { margin: 7px 0 8px; font-size: 1.75rem; }
.hero p { color: var(--muted); line-height: 1.5; margin: 0; }

.grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; margin-top: 14px; }
.card { border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); padding: 16px; }
.card-title { margin: 0 0 4px; font-size: .78rem; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.metric { margin: 0; font-size: 1.55rem; font-weight: 800; }
.metric-sub { margin: 4px 0 0; color: var(--muted); font-size: .82rem; }

.section { margin-top: 20px; }
.section-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.section-header h3 { margin: 0; font-size: 1rem; }
.section-header button { border: 0; background: transparent; color: var(--accent); font-weight: 700; cursor: pointer; }

.session-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); padding: 15px; }
.session-card h4 { margin: 0 0 5px; font-size: 1rem; }
.session-card p { margin: 0; color: var(--muted); font-size: .83rem; }
.primary-button { border: 0; border-radius: 12px; padding: 11px 14px; background: var(--accent); color: #07100b; font-weight: 800; cursor: pointer; white-space: nowrap; }
.secondary-button { border: 1px solid var(--border); border-radius: 12px; padding: 11px 14px; background: var(--surface-2); color: var(--text); font-weight: 700; cursor: pointer; }

.progress-row { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center; margin-bottom: 10px; }
.progress-row span { font-size: .83rem; }
.progress-row span:last-child { color: var(--muted); }
.progress-bar { grid-column: 1 / -1; height: 7px; border-radius: 999px; background: #202a3b; overflow: hidden; }
.progress-fill { height: 100%; width: 0; background: var(--accent); border-radius: inherit; transition: width .25s ease; }

.list { display: grid; gap: 10px; }
.list-item { border: 1px solid var(--border); border-radius: 15px; background: var(--surface); padding: 14px; }
.list-item strong { display: block; margin-bottom: 4px; }
.list-item span { color: var(--muted); font-size: .83rem; }

.empty { text-align: center; padding: 38px 18px; border: 1px dashed var(--border); border-radius: var(--radius); color: var(--muted); }
.note { padding: 12px 14px; border-left: 3px solid var(--warning); border-radius: 10px; background: rgba(242,197,107,.07); color: var(--muted); line-height: 1.5; font-size: .82rem; }

.bottom-nav { position: fixed; left: 50%; bottom: 0; transform: translateX(-50%); z-index: 20; width: min(100%, 760px); display: grid; grid-template-columns: repeat(5,1fr); padding: 8px 8px calc(8px + env(safe-area-inset-bottom)); background: rgba(18,24,36,.96); backdrop-filter: blur(14px); border-top: 1px solid var(--border); }
.nav-item { border: 0; background: transparent; color: var(--muted); padding: 7px 2px; cursor: pointer; border-radius: 12px; display: grid; justify-items: center; gap: 3px; }
.nav-item span { font-size: 1.05rem; }
.nav-item small { font-size: .66rem; }
.nav-item.active { color: var(--accent); background: rgba(101,214,161,.06); }

.form-grid { display: grid; gap: 12px; }
.field { display: grid; gap: 6px; }
.field label { color: var(--muted); font-size: .78rem; }
.field input, .field select { width: 100%; padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: var(--surface-2); color: var(--text); }

@media (min-width: 680px) {
  .main-content { padding-left: 24px; padding-right: 24px; }
  .hero h2 { font-size: 2rem; }
}

/* ===== FASE 2 ===== */
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.compact-hero{padding-bottom:20px}
.hero-meta{margin-top:14px;font-size:.82rem;color:var(--muted);font-weight:700}
.exercise-list,.program-list,.reference-list{display:grid;gap:12px}
.exercise-card,.program-row,.exercise-reference-row{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}
.exercise-card{padding:16px}
.exercise-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.exercise-head h3{margin:2px 0 4px;font-size:1rem}
.exercise-head p{margin:0;color:var(--muted);font-size:.82rem}
.exercise-order{display:inline-block;color:var(--accent);font-weight:900;font-size:.72rem;letter-spacing:.08em}
.badge{display:inline-flex;align-items:center;justify-content:center;max-width:150px;padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--border);font-size:.64rem;font-weight:900;letter-spacing:.04em;text-align:center}
.exercise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.exercise-grid div{padding:10px;border-radius:12px;background:var(--surface)}
.exercise-grid span{display:block;font-size:.6rem;color:var(--muted);font-weight:800;line-height:1.2}
.exercise-grid strong{display:block;margin-top:5px;font-size:.9rem}
.exercise-grid.secondary{margin-top:8px}
.exercise-foot{display:grid;gap:5px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-size:.78rem}
.exercise-foot span{color:var(--muted);line-height:1.45}
.program-row{width:100%;border:1px solid var(--border);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:inherit;cursor:pointer}
.program-row strong,.program-row span{display:block}.program-row span{margin-top:4px;color:var(--muted);font-size:.78rem}
.program-row>span{font-size:1.5rem;margin:0;color:var(--accent)}
.exercise-reference-row{padding:13px 15px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.exercise-reference-row strong,.exercise-reference-row span{display:block}.exercise-reference-row>div span{margin-top:4px;color:var(--muted);font-size:.78rem}
@media (max-width:620px){.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-head{flex-direction:column}.badge{max-width:none}}

/* ===== FASE 2.1 — SUBSTITUIÇÃO DE EXERCÍCIOS ===== */
.exercise-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}
.small-button{padding:9px 11px;font-size:.76rem}
.text-button{border:0;background:transparent;color:var(--accent);padding:8px 0;font-weight:800;font-size:.76rem;cursor:pointer}
.is-substituted{border-color:rgba(101,214,161,.42);box-shadow:0 0 0 1px rgba(101,214,161,.06),var(--shadow)}
.substitution-banner{display:grid;gap:3px;margin-top:12px;padding:11px 12px;border-left:3px solid var(--accent);border-radius:11px;background:rgba(101,214,161,.07);font-size:.76rem}
.substitution-banner span{color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;padding:14px;background:rgba(0,0,0,.66);backdrop-filter:blur(7px)}
.modal{width:min(100%,760px);max-height:92vh;overflow:auto;border:1px solid var(--border);border-radius:24px 24px 18px 18px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.4)}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px;border-bottom:1px solid var(--border);position:sticky;top:0;background:rgba(18,24,36,.97);z-index:2}
.modal-header h3{margin:4px 0 5px;font-size:1.2rem}.modal-header p{margin:0;color:var(--muted);font-size:.82rem}.modal-close{flex:0 0 auto}
.modal-body{padding:16px;display:grid;gap:14px}
.replacement-list{display:grid;gap:14px}
.replacement-group{display:grid;gap:8px}.replacement-group-head{display:grid;gap:3px}.replacement-group-head strong{font-size:.86rem}.replacement-group-head span{font-size:.74rem;color:var(--muted);line-height:1.4}
.replacement-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}
.replacement-option:hover{border-color:var(--accent)}.replacement-option strong{display:block;font-size:.84rem}.replacement-option small{display:block;margin-top:4px;color:var(--muted);font-size:.72rem}.replacement-level{color:var(--accent);font-size:.62rem;font-weight:900;letter-spacing:.06em}
.current-substitution{display:grid;gap:3px;padding:11px 12px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid var(--border);font-size:.78rem}.current-substitution span{color:var(--muted)}
.check-row{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);font-size:.78rem;line-height:1.45;color:var(--muted);cursor:pointer}.check-row input{margin-top:2px;accent-color:var(--accent)}
@media (min-width:680px){.modal-backdrop{align-items:center}.modal{border-radius:24px;max-height:86vh}}


/* ===== FASE 3 — REGISTRO REAL ===== */
.workout-hero{position:relative}
.workout-exercise-card{padding-bottom:14px}
.plan-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:14px}
.plan-strip span{padding:9px 8px;border:1px solid var(--border);border-radius:11px;background:var(--surface);font-size:.62rem;color:var(--muted);text-align:center;font-weight:800}
.plan-strip strong{display:block;color:var(--text);font-size:.9rem;margin-bottom:2px}
.set-table{margin-top:12px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface)}
.set-header,.set-row{display:grid;grid-template-columns:1.4fr .9fr .8fr .75fr;gap:8px;align-items:center;padding:9px 10px}
.set-header{background:var(--surface-2);color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:.06em}
.set-row{border-top:1px solid var(--border)}
.set-row.set-feeder{background:rgba(242,197,107,.025)}
.set-row.set-top{background:rgba(101,214,161,.035)}
.set-type span{display:block;font-size:.72rem;font-weight:900}
.set-type small{display:block;margin-top:3px;color:var(--muted);font-size:.61rem;line-height:1.2}
.compact-field{gap:4px}
.compact-field label{font-size:.55rem;display:none}
.compact-field input{width:100%;min-width:0;padding:9px 7px;font-size:.8rem}
.exercise-bottom-fields{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:grid;gap:10px}
.field textarea{resize:vertical;width:100%;padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text);font:inherit}
.session-close-card{gap:14px}
.history-list,.history-exercise-list{display:grid;gap:12px}
.history-card,.history-exercise{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:15px;box-shadow:var(--shadow)}
.history-card{display:flex;align-items:center;justify-content:space-between;gap:12px}
.history-date{display:block;color:var(--accent);font-size:.66rem;font-weight:900;letter-spacing:.08em}
.history-card h3{margin:4px 0;font-size:1rem}.history-card p{margin:0;color:var(--muted);font-size:.78rem}
.history-exercise-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.history-exercise-head strong{display:block}.history-exercise-head span{display:block;color:var(--muted);font-size:.73rem;margin-top:4px}
.history-set-list{margin-top:12px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.history-set{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:8px;padding:9px 10px;border-top:1px solid var(--border);font-size:.72rem}.history-set:first-child{border-top:0}.history-set span{color:var(--muted)}.history-set span:first-child{color:var(--text);font-weight:900}
.history-observation{margin:11px 0 0;padding-top:11px;border-top:1px solid var(--border);color:var(--muted);font-size:.76rem;line-height:1.45}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);z-index:100;padding:11px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);box-shadow:var(--shadow);font-size:.78rem;font-weight:800}
@media(max-width:620px){
  .plan-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .set-header,.set-row{grid-template-columns:1.1fr .85fr .75fr .7fr;gap:5px;padding:8px 7px}
  .set-type span{font-size:.68rem}.set-type small{font-size:.56rem}
  .set-row input{padding:9px 5px}
  .history-card{align-items:flex-start;flex-direction:column}
}

/* ===== FASE 3.1 — CONTROLE DO HISTÓRICO ===== */
.danger-button{border:1px solid rgba(235,100,100,.48);background:rgba(235,100,100,.08);color:#ffb3b3;border-radius:10px;padding:10px 13px;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}
.danger-button:hover{border-color:rgba(235,100,100,.8);background:rgba(235,100,100,.14)}

.session-weight-banner { margin: 14px 0 0; padding: 11px 13px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.025); display: grid; grid-template-columns: auto auto; gap: 3px 8px; align-items: baseline; }
.session-weight-banner strong { font-size: .72rem; color: var(--muted); letter-spacing: .08em; }
.session-weight-banner span { font-weight: 800; }
.session-weight-banner small { grid-column: 1 / -1; color: var(--muted); font-size: .75rem; }

.volume-preview { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin: 12px 0; padding: 10px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.02); }
.volume-preview > div { min-width: 0; padding: 7px 8px; border-radius: 10px; background: rgba(255,255,255,.025); }
.volume-preview span, .analysis-list span { display:block; color: var(--muted); font-size: .65rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.volume-preview strong { display:block; margin-top: 3px; font-size: .82rem; line-height: 1.25; }

.history-metric-line { margin-top: 9px; padding-top: 9px; border-top: 1px solid var(--border); display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:.78rem; }
.history-metric-line strong { color: var(--text); text-align:right; }

.analysis-list { display:grid; gap:10px; }
.analysis-list > div { display:flex; justify-content:space-between; gap:12px; padding-bottom:9px; border-bottom:1px solid rgba(255,255,255,.04); }
.analysis-list > div:last-child { border-bottom:0; padding-bottom:0; }
.analysis-list strong { text-align:right; }

.rule-card p { margin: 0 0 10px; color: var(--muted); line-height:1.45; }
.rule-card p:last-child { margin-bottom:0; }
.warning-note { border-color: rgba(242,197,107,.35); }

@media (max-width: 520px) {
  .volume-preview { grid-template-columns: 1fr 1fr; }
  .history-metric-line { flex-direction: column; }
  .history-metric-line strong { text-align:left; }
}

/* FASE 5.1 — Comparação histórica */
/* Coach / comparison / record cards: explicit dark surfaces so text remains readable. */
.comparison-card{margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);color:var(--text)}
.comparison-card.comparison-empty{display:grid;gap:6px}
.comparison-card span,.comparison-card small{font-size:.72rem;color:var(--muted)}
.comparison-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.comparison-head>div{display:grid;gap:3px}.comparison-head strong{font-size:.92rem}.comparison-head>span{white-space:nowrap;color:var(--muted)}
.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.comparison-grid>div{padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong);display:grid;gap:4px}
.comparison-grid strong{font-size:.92rem}.comparison-grid strong small{font-weight:600;margin-left:4px}
.comparison-note{margin:11px 0 0;font-size:.78rem;line-height:1.45;color:var(--muted)}
@media (max-width:520px){.comparison-head{flex-direction:column}.comparison-head>span{white-space:normal}.comparison-grid{grid-template-columns:1fr 1fr}}

.progression-card{margin-top:12px;padding:12px;border:1px solid var(--border,#dbe2ea);border-radius:14px;background:var(--surface-soft,#f8fafc)}
.progression-card.progression-up{border-color:rgba(34,197,94,.35)}
.progression-card.progression-hold{border-color:rgba(245,158,11,.4)}
.progression-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:7px}
.progression-head>div{display:grid;gap:3px}.progression-head span{font-size:.72rem;color:var(--muted)}.progression-head strong{font-size:.92rem}
.progression-head>span{white-space:nowrap}.progression-card p{margin:0;font-size:.82rem;line-height:1.45}.progression-card small{display:block;margin-top:7px;color:var(--muted);font-size:.7rem;line-height:1.4}
.analysis-progression-list{display:grid;gap:8px}.analysis-progression-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border,#e5e7eb)}.analysis-progression-row:last-child{border-bottom:0}.analysis-progression-row>div{display:grid;gap:3px}.analysis-progression-row strong{font-size:.86rem}.analysis-progression-row span{font-size:.72rem;color:var(--muted)}
.progression-badge{padding:6px 8px;border-radius:999px;border:1px solid var(--border,#dbe2ea);font-weight:700;font-size:.68rem!important;white-space:nowrap}.progression-badge-up{border-color:rgba(34,197,94,.35)}.progression-badge-hold{border-color:rgba(245,158,11,.45)}.progression-badge-neutral{border-color:rgba(100,116,139,.3)}
@media (max-width:520px){.progression-head,.analysis-progression-row{flex-direction:column;align-items:flex-start}.progression-head>span{white-space:normal}.progression-badge{white-space:normal}}

.pr-card{margin-top:12px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft);color:var(--text)}
.pr-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pr-card-head>div:first-child{display:grid;gap:3px}.pr-card-head span,.pr-grid span,.pr-dashboard-grid span{display:block;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.07em}.pr-card-head strong{font-size:.9rem}.pr-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.pr-badge{display:inline-flex;padding:5px 7px;border-radius:999px;border:1px solid rgba(34,197,94,.35);font-size:.62rem;font-weight:900;letter-spacing:.04em}.pr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}.pr-grid>div{padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.pr-grid strong{display:block;margin-top:4px;font-size:.82rem}.pr-grid small{display:block;margin-top:3px;color:var(--muted);font-size:.66rem}
.pr-dashboard-grid-list{display:grid;grid-template-columns:1fr;gap:0;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.pr-dashboard-card{padding:14px 16px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text)}.pr-dashboard-card:last-child{border-bottom:0}.pr-dashboard-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pr-dashboard-head strong{font-size:.88rem}.pr-dashboard-head span{color:var(--muted);font-size:.68rem;white-space:nowrap}.pr-dashboard-main{margin-top:10px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}.pr-dashboard-main span{display:block;color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:.07em}.pr-dashboard-main strong{display:block;margin-top:4px;font-size:.92rem}.pr-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.pr-dashboard-grid>div{padding:9px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong);min-width:0}.pr-dashboard-grid span{display:block;color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:.06em;line-height:1.2}.pr-dashboard-grid strong{display:block;margin-top:4px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:700px){.pr-grid{grid-template-columns:1fr}.pr-card-head{flex-direction:column}.pr-badges{justify-content:flex-start}.pr-dashboard-card{padding:13px 14px}.pr-dashboard-main{margin-top:9px}.pr-dashboard-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.pr-dashboard-head{gap:8px}.pr-dashboard-head strong{font-size:.84rem}.pr-dashboard-head span{font-size:.64rem}.pr-dashboard-grid{grid-template-columns:1fr 1fr}.pr-dashboard-grid>div{padding:8px}.pr-dashboard-grid span{font-size:.56rem}.pr-dashboard-grid strong{font-size:.74rem}}

/* FASE 5.4 — COACH MODE */
.coach-card{margin-top:12px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft);color:var(--text)}
.coach-card.coach-up{border-color:rgba(34,197,94,.36)}
.coach-card.coach-hold{border-color:rgba(245,158,11,.42)}
.coach-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.coach-head>div{display:grid;gap:3px}.coach-head span,.coach-card small{font-size:.68rem;color:var(--muted)}.coach-head>div>span{font-weight:900;letter-spacing:.08em}.coach-head strong{font-size:.9rem}.coach-head>span{font-size:.68rem;font-weight:800;white-space:nowrap}
.coach-target{margin-top:9px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface-strong)}
.coach-target span{display:block;font-size:.62rem;font-weight:900;letter-spacing:.07em;color:var(--muted)}.coach-target strong{display:block;margin-top:4px;font-size:.92rem}
.coach-card p{margin:9px 0 0;font-size:.8rem;line-height:1.46}.coach-card small{display:block;margin-top:7px;line-height:1.4}
@media (max-width:520px){.coach-head{flex-direction:column}.coach-head>span{white-space:normal}}

/* FASE 6.1 — HISTÓRICO AVANÇADO: filtros e resumo */
.history-filters{display:grid;gap:12px}
.history-filters .section-header{margin-bottom:0}
.history-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.history-filter-grid .field{min-width:0}
.history-card-advanced{align-items:stretch}
.history-card-main{flex:1;min-width:0}
.history-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.history-summary-grid>div{min-width:0;padding:9px;border:1px solid var(--border);border-radius:10px;background:rgba(255,255,255,.02)}
.history-summary-grid span{display:block;color:var(--muted);font-size:.59rem;font-weight:900;letter-spacing:.06em}
.history-summary-grid strong{display:block;margin-top:4px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.history-filter-grid{grid-template-columns:1fr 1fr}.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.history-filter-grid{grid-template-columns:1fr}.history-card-advanced{align-items:flex-start}.history-card-main{width:100%}.history-summary-grid{grid-template-columns:1fr 1fr}.history-actions{width:100%}.history-actions .small-button{width:100%}}


/* ===== FASE 6.2 — HISTÓRICO INDIVIDUAL POR EXERCÍCIO ===== */
.history-exercise-index-list{display:grid;gap:10px}
.history-exercise-index{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;text-align:left;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);cursor:pointer;box-shadow:var(--shadow);font:inherit}
.history-exercise-index:hover{border-color:var(--accent)}
.history-exercise-index>div:first-child{min-width:0}
.history-exercise-index strong{display:block;font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-exercise-index span{display:block;margin-top:4px;color:var(--muted);font-size:.68rem}
.history-exercise-index>div:nth-child(2){text-align:right;min-width:90px}
.history-exercise-index>div:nth-child(2) strong{font-size:.78rem}
.history-exercise-index-arrow{font-size:1.25rem!important;color:var(--accent)!important;margin:0!important}
.exercise-history-card{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.exercise-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.exercise-history-head>div{min-width:0}
.exercise-history-head strong{display:block;margin-top:4px;font-size:.82rem}
.exercise-history-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.exercise-history-metrics>div{padding:9px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.02);min-width:0}
.exercise-history-metrics span,.exercise-evolution-grid span{display:block;color:var(--muted);font-size:.58rem;font-weight:900;letter-spacing:.06em}
.exercise-history-metrics strong,.exercise-evolution-grid strong{display:block;margin-top:4px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exercise-history-metrics small,.exercise-evolution-grid small{display:block;margin-top:3px;color:var(--muted);font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exercise-evolution-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.exercise-evolution-grid>div{padding:10px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.02)}
@media(max-width:700px){.exercise-history-metrics,.exercise-evolution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.history-exercise-index{grid-template-columns:minmax(0,1fr) auto}.history-exercise-index>div:nth-child(2){text-align:left}.history-exercise-index-arrow{grid-column:2;grid-row:1}.exercise-history-head{flex-direction:column}.exercise-history-head .small-button{width:100%}.exercise-history-metrics,.exercise-evolution-grid{grid-template-columns:1fr 1fr}}


.comparison-selector{display:grid;gap:14px;background:var(--surface)}
.comparison-selector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comparison-session-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.comparison-session-head>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}
.comparison-session-head span,.history-comparison-summary span,.history-comparison-exercise span{display:block;color:var(--muted);font-size:.64rem;font-weight:900;letter-spacing:.06em}
.comparison-session-head strong{font-size:.86rem}.comparison-session-head small{color:var(--muted);font-size:.68rem}

/* Session comparison: each metric is presented as A / B / difference. */
.history-comparison-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.history-comparison-summary>div{padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft);display:grid;gap:8px;min-width:0}
.history-comparison-summary .comparison-summary-title{font-size:.68rem;font-weight:900;letter-spacing:.08em;color:var(--muted)}
.history-comparison-summary .comparison-values{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.history-comparison-summary .comparison-side{padding:9px 10px;border-radius:10px;background:var(--surface-strong);border:1px solid var(--border)}
.history-comparison-summary .comparison-side span{font-size:.62rem;color:var(--muted);font-weight:800;letter-spacing:.06em}
.history-comparison-summary .comparison-side strong{display:block;margin-top:4px;font-size:.9rem}
.history-comparison-summary .comparison-change{padding-top:7px;border-top:1px solid var(--border);font-size:.72rem;color:var(--muted)}
.history-comparison-summary .comparison-change strong{color:var(--text);font-size:.78rem}

.history-comparison-list{display:grid;gap:12px}
.history-comparison-exercise{padding:15px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.comparison-exercise-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.comparison-exercise-head>div{display:grid;gap:4px}.comparison-exercise-head strong{display:block;font-size:.9rem}.comparison-exercise-head span{margin-top:0}.comparison-missing{white-space:nowrap;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--muted)!important}
.comparison-session-labels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:6px}
.comparison-session-labels>div{padding:0 9px;font-size:.62rem;font-weight:900;letter-spacing:.07em;color:var(--muted)}
.comparison-metric-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:stretch}
.comparison-metric-row+.comparison-metric-row{margin-top:7px}
.comparison-metric-row>div{padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong);min-width:0}
.comparison-metric-row .comparison-metric-name{display:flex;align-items:center;font-size:.64rem;font-weight:900;letter-spacing:.05em;color:var(--muted)}
.comparison-metric-row strong{display:block;margin-top:2px;font-size:.82rem;color:var(--text)}
.comparison-metric-row small{display:block;margin-top:3px;font-size:.62rem;color:var(--muted)}
.comparison-exercise-foot{margin-top:10px;padding:9px 10px;border-radius:10px;background:rgba(101,214,161,.05);border:1px solid rgba(101,214,161,.14);font-size:.72rem;color:var(--muted)}
.comparison-exercise-foot strong{color:var(--text)}
@media(max-width:700px){.history-comparison-summary{grid-template-columns:1fr}.comparison-selector-grid,.comparison-session-head{grid-template-columns:1fr}.comparison-metric-row,.comparison-session-labels{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:520px){.comparison-exercise-head{flex-direction:column}.comparison-metric-row{grid-template-columns:1fr}.comparison-session-labels{display:none}.comparison-metric-row .comparison-metric-name{background:transparent;border:0;padding:2px 2px 0}.history-comparison-summary .comparison-values{grid-template-columns:1fr 1fr}}


/* FASE 6.4 — Histórico consolidado */
.history-overview-section{margin-top:16px}
.history-overview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.history-overview-card{min-width:0;padding:11px 10px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}
.history-overview-card span{display:block;color:var(--muted);font-size:.58rem;font-weight:900;letter-spacing:.07em;line-height:1.25}
.history-overview-card strong{display:block;margin-top:6px;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.history-overview-card small{display:block;margin-top:4px;color:var(--muted);font-size:.62rem;line-height:1.25}
.history-hub-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;padding:5px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}
.history-hub-tab{border:0;border-radius:10px;padding:10px 8px;background:transparent;color:var(--muted);font-weight:800;font-size:.78rem;cursor:pointer}
.history-hub-tab:hover{color:var(--text);background:var(--surface-2)}
.history-hub-tab.active{background:var(--surface-strong);color:var(--text);box-shadow:0 2px 10px rgba(0,0,0,.14)}
.history-hub-tab-compare{color:var(--accent)}
.history-filter-context{color:var(--muted);font-size:.68rem}
@media(max-width:760px){.history-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.history-overview-grid{grid-template-columns:1fr 1fr}.history-hub-tab{font-size:.74rem;padding:9px 6px}}

/* FASE 7.1 — Dashboard analítico base */
.analysis-dashboard-filters{margin-top:0}
.analysis-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.analysis-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.analysis-dashboard-card{min-width:0;padding:13px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}
.analysis-dashboard-card span{display:block;color:var(--muted);font-size:.58rem;font-weight:900;letter-spacing:.07em;line-height:1.25}
.analysis-dashboard-card strong{display:block;margin-top:7px;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-dashboard-card small{display:block;margin-top:5px;color:var(--muted);font-size:.62rem;line-height:1.3}
.analysis-distribution-list{display:grid;gap:12px}
.analysis-distribution-row{display:grid;grid-template-columns:125px minmax(0,1fr) 30px;gap:10px;align-items:center}
.analysis-distribution-row>div:first-child{min-width:0;display:grid;gap:3px}
.analysis-distribution-row>div:first-child strong{font-size:.82rem}
.analysis-distribution-row>div:first-child span{font-size:.65rem;color:var(--muted)}
.analysis-distribution-track{height:9px;border-radius:999px;background:var(--surface-strong);overflow:hidden;border:1px solid var(--border)}
.analysis-distribution-fill{height:100%;border-radius:999px;background:var(--accent)}
.analysis-distribution-row>strong{text-align:right;font-size:.8rem}
.analysis-session-list{display:grid;gap:9px}
.analysis-session-row{padding:12px 13px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}
.analysis-session-meta{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.analysis-session-meta>div{display:grid;gap:3px}
.analysis-session-meta>div:last-child{text-align:right}
.analysis-session-meta strong{font-size:.82rem}
.analysis-session-meta span{font-size:.65rem;color:var(--muted)}
.analysis-session-bar{height:8px;margin-top:10px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center}
.analysis-session-bar>div{height:100%;border-radius:999px;background:var(--accent)}
.analysis-session-bar>span{padding-left:8px;color:var(--muted);font-size:.6rem}
@media(max-width:850px){.analysis-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.analysis-filter-grid{grid-template-columns:1fr}.analysis-dashboard-grid{grid-template-columns:1fr 1fr}.analysis-dashboard-card strong{font-size:.9rem}.analysis-distribution-row{grid-template-columns:95px minmax(0,1fr) 24px}.analysis-session-meta{flex-direction:column}.analysis-session-meta>div:last-child{text-align:left}}


/* FASE 7.2 — Análise por grupo muscular */
/* FASE 7.3 — Evolução de desempenho por exercício */
.analysis-muscle-grid{display:grid;grid-template-columns:1fr;gap:0;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.analysis-muscle-card{min-width:0;padding:15px 14px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}
.analysis-muscle-card:last-child{border-bottom:0}
.analysis-muscle-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.analysis-muscle-head>div{display:grid;gap:4px;min-width:0}.analysis-muscle-head strong{font-size:.9rem}.analysis-muscle-head span{font-size:.65rem;color:var(--muted)}
.analysis-muscle-head>strong{font-size:.78rem;white-space:nowrap;margin-top:1px}
.analysis-muscle-track{height:7px;margin:9px 2px 12px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);overflow:hidden}
.analysis-muscle-track>div{height:100%;border-radius:999px;background:var(--accent)}
.analysis-muscle-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.analysis-muscle-metrics>div{padding:7px 8px;border:1px solid var(--border);border-radius:9px;background:var(--surface-strong);min-width:0}
.analysis-muscle-metrics span{display:block;color:var(--muted);font-size:.55rem;font-weight:900;letter-spacing:.045em;line-height:1.15}
.analysis-muscle-metrics strong{display:block;margin-top:4px;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-muscle-metrics small{display:block;margin-top:2px;color:var(--muted);font-size:.57rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-muscle-warning{display:block;margin-top:8px;color:var(--muted);font-size:.6rem;line-height:1.3}
.analysis-muscle-note{margin-top:10px}
@media(max-width:700px){.analysis-muscle-card{padding:14px 12px}.analysis-muscle-metrics{gap:6px}.analysis-muscle-metrics>div{padding:7px}.analysis-muscle-metrics strong{font-size:.73rem}.analysis-muscle-metrics span{font-size:.53rem}.analysis-muscle-metrics small{font-size:.55rem}}
@media(max-width:420px){.analysis-muscle-head strong{font-size:.86rem}.analysis-muscle-head span{font-size:.62rem}.analysis-muscle-head>strong{font-size:.72rem}.analysis-muscle-track{margin-bottom:10px}.analysis-muscle-metrics{gap:5px}.analysis-muscle-metrics>div{padding:6px}.analysis-muscle-metrics strong{font-size:.69rem}.analysis-muscle-metrics span{font-size:.5rem}.analysis-muscle-metrics small{font-size:.52rem}}


.analysis-exercise-panel{display:grid;gap:12px}
.analysis-exercise-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.analysis-exercise-summary>div{min-width:0;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}
.analysis-exercise-summary span,.analysis-exercise-history-head span{display:block;color:var(--muted);font-size:.55rem;font-weight:900;letter-spacing:.045em;line-height:1.15}
.analysis-exercise-summary strong{display:block;margin-top:4px;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-exercise-summary small{display:block;margin-top:2px;color:var(--muted);font-size:.55rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-exercise-history{display:grid;gap:0;border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--surface)}
.analysis-exercise-history-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 11px;border-bottom:1px solid var(--border);background:var(--surface-strong)}
.analysis-exercise-history-head strong{font-size:.68rem}
.analysis-exercise-row{padding:11px;border-bottom:1px solid var(--border)}
.analysis-exercise-row:last-child{border-bottom:0}
.analysis-exercise-row-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.analysis-exercise-row-head>div{display:grid;gap:3px;min-width:0}
.analysis-exercise-row-head>div:last-child{text-align:right}
.analysis-exercise-row-head strong{font-size:.76rem}
.analysis-exercise-row-head span{font-size:.59rem;color:var(--muted)}
.analysis-exercise-track{height:7px;margin:8px 0;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);overflow:hidden}
.analysis-exercise-track>div{height:100%;border-radius:999px;background:var(--accent)}
.analysis-exercise-track>span{display:block;padding:0 7px;color:var(--muted);font-size:.53rem;line-height:6px}
.analysis-exercise-metrics{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.analysis-exercise-metrics>div{min-width:0;padding:6px 7px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}
.analysis-exercise-metrics span{display:block;color:var(--muted);font-size:.5rem;font-weight:900;letter-spacing:.04em}
.analysis-exercise-metrics strong{display:block;margin-top:3px;font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-exercise-note{margin-top:0}
@media(max-width:520px){.analysis-exercise-summary{grid-template-columns:1fr 1fr}.analysis-exercise-summary>div:last-child{grid-column:1 / -1}.analysis-exercise-history-head{align-items:flex-start;flex-direction:column;gap:3px}}
@media(max-width:420px){.analysis-exercise-summary{gap:5px}.analysis-exercise-summary>div{padding:7px}.analysis-exercise-summary strong{font-size:.7rem}.analysis-exercise-summary span{font-size:.5rem}.analysis-exercise-summary small{font-size:.51rem}.analysis-exercise-row{padding:9px}.analysis-exercise-row-head strong{font-size:.7rem}.analysis-exercise-row-head span{font-size:.55rem}}

/* FASE 7.4 — comparação semanal/mensal */
.analysis-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.analysis-comparison-card{min-width:0;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.analysis-comparison-head{padding:13px 14px;border-bottom:1px solid var(--border);background:var(--surface-strong)}
.analysis-comparison-head div{display:grid;gap:3px}.analysis-comparison-head strong{font-size:.86rem}.analysis-comparison-head span{font-size:.62rem;color:var(--muted);line-height:1.3}
.analysis-comparison-list{display:grid}
.analysis-comparison-row{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}
.analysis-comparison-row:last-child{border-bottom:0}
.analysis-comparison-row>div{min-width:0;display:grid;gap:3px}.analysis-comparison-row span{font-size:.52rem;color:var(--muted);font-weight:900;letter-spacing:.04em;line-height:1.15}.analysis-comparison-row strong{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-comparison-row>div:not(:first-child) strong{text-align:right}.analysis-comparison-row>div:not(:first-child){justify-items:end}
.analysis-comparison-note{display:block;padding:9px 12px;color:var(--muted);font-size:.57rem;line-height:1.3;border-top:1px solid var(--border)}
@media(max-width:700px){.analysis-comparison-grid{grid-template-columns:1fr}}
@media(max-width:420px){.analysis-comparison-row{grid-template-columns:1fr 1fr 1fr;gap:5px;padding:9px 10px}.analysis-comparison-row strong{font-size:.66rem}.analysis-comparison-row span{font-size:.48rem}.analysis-comparison-head{padding:11px 12px}.analysis-comparison-head strong{font-size:.8rem}}


/* FASE 7.5 — consistência e aderência */
.analysis-consistency-card{display:grid;gap:12px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.analysis-consistency-primary{padding:14px;background:var(--surface-strong);border-bottom:1px solid var(--border)}
.analysis-consistency-primary>span{display:block;color:var(--muted);font-size:.56rem;font-weight:900;letter-spacing:.05em}
.analysis-consistency-primary>strong{display:block;margin-top:5px;font-size:1.35rem}
.analysis-consistency-primary>small{display:block;margin-top:3px;color:var(--muted);font-size:.62rem;line-height:1.3}
.analysis-consistency-track{height:8px;margin-top:10px;border-radius:999px;background:var(--surface);border:1px solid var(--border);overflow:hidden}
.analysis-consistency-track>div{height:100%;border-radius:999px;background:var(--accent)}
.analysis-consistency-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:0 12px}
.analysis-consistency-metrics>div{min-width:0;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}
.analysis-consistency-metrics span{display:block;color:var(--muted);font-size:.52rem;font-weight:900;letter-spacing:.04em;line-height:1.15}
.analysis-consistency-metrics strong{display:block;margin-top:4px;font-size:.78rem}
.analysis-consistency-metrics small{display:block;margin-top:2px;color:var(--muted);font-size:.55rem;line-height:1.2}
.analysis-consistency-note{margin:0 12px 12px}
@media(max-width:700px){.analysis-consistency-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.analysis-consistency-primary{padding:12px}.analysis-consistency-primary>strong{font-size:1.2rem}.analysis-consistency-metrics{gap:5px;padding:0 10px}.analysis-consistency-metrics>div{padding:7px}.analysis-consistency-metrics span{font-size:.49rem}.analysis-consistency-metrics strong{font-size:.72rem}.analysis-consistency-metrics small{font-size:.52rem}.analysis-consistency-note{margin:0 10px 10px}}

/* ===== FASE 7.6 — INÍCIO / CONSISTÊNCIA ===== */
.home-consistency-hero{margin-top:0;padding:18px 18px 16px;border:1px solid rgba(101,214,161,.24);border-radius:24px;background:linear-gradient(145deg,rgba(101,214,161,.12),var(--surface-2) 55%,var(--surface));box-shadow:var(--shadow)}
.home-consistency-kicker{color:var(--accent);font-size:.62rem;font-weight:900;letter-spacing:.14em}
.home-consistency-main{display:flex;align-items:flex-end;gap:10px;margin-top:3px}
.home-consistency-main strong{font-size:3.7rem;line-height:.95;letter-spacing:-.07em}
.home-consistency-main span{max-width:180px;padding-bottom:4px;font-size:.9rem;font-weight:800;line-height:1.05}
.home-consistency-main b{margin-left:auto;padding-bottom:5px;font-size:2rem}
.home-consistency-sub{margin-top:10px;color:var(--muted);font-size:.63rem;line-height:1.35}
.home-month-summary{margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}
.home-month-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}
.home-month-head div{display:grid;gap:3px}.home-month-head span{color:var(--muted);font-size:.54rem;font-weight:900;letter-spacing:.08em}.home-month-head strong{font-size:.92rem}
.home-month-head button{border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--accent);padding:7px 10px;font-size:.65rem;font-weight:900;cursor:pointer}
.home-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.home-summary-grid article{min-width:0;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface-strong)}.home-summary-grid strong{display:block;font-size:1.15rem;line-height:1}.home-summary-grid span{display:block;margin-top:5px;color:var(--muted);font-size:.5rem;font-weight:900;letter-spacing:.05em}
.home-calendar-card{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.home-calendar-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;padding:11px 12px;border-bottom:1px solid var(--border);background:var(--surface-strong)}
.home-calendar-nav strong{text-align:center;font-size:.9rem}.calendar-nav-button{width:34px;height:34px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:1.35rem;line-height:1;cursor:pointer}.calendar-nav-button:last-child{justify-self:end}
.home-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:10px 10px 6px;gap:4px}.home-calendar-weekdays span{text-align:center;color:var(--muted);font-size:.51rem;font-weight:900;letter-spacing:.04em}
.home-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:0 10px 12px}
.home-calendar-day{position:relative;min-width:0;aspect-ratio:1/1;border:1px solid transparent;border-radius:12px;background:var(--surface-strong);color:var(--text);display:grid;place-items:center;cursor:pointer}.home-calendar-day span{font-size:.72rem;font-weight:800}.home-calendar-day b{position:absolute;right:4px;bottom:3px;font-size:.62rem;line-height:1;color:var(--muted)}
.home-calendar-day.is-outside-month{opacity:.28}.home-calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--accent)}
.home-calendar-completed{border-color:rgba(101,214,161,.62);background:rgba(101,214,161,.10)}.home-calendar-completed b{color:var(--accent)}
.home-calendar-missed{border-color:rgba(255,118,118,.52);background:rgba(255,118,118,.08)}.home-calendar-missed b{color:var(--danger)}
.home-calendar-outside{border-color:rgba(242,197,107,.48);background:rgba(242,197,107,.08)}.home-calendar-outside b{color:var(--warning)}
.home-calendar-future-scheduled{border-color:rgba(101,214,161,.20)}.home-calendar-future-scheduled b{color:var(--muted)}
.home-calendar-rest,.home-calendar-future-rest{background:var(--surface-2)}
.home-calendar-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:10px 12px;border-top:1px solid var(--border);background:var(--surface-strong)}.home-calendar-legend span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.5rem;line-height:1.2}.legend-dot{width:18px;height:18px;flex:0 0 18px;display:grid;place-items:center;border-radius:50%;font-size:.62rem;font-style:normal}.legend-dot.completed{background:rgba(101,214,161,.12);color:var(--accent)}.legend-dot.missed{background:rgba(255,118,118,.10);color:var(--danger)}.legend-dot.rest{background:var(--surface);color:var(--muted)}.legend-dot.outside{background:rgba(242,197,107,.10);color:var(--warning)}
.home-week-card{padding:14px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow)}.home-week-track{height:8px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);overflow:hidden}.home-week-track>div{height:100%;border-radius:999px;background:var(--accent)}.home-week-stats{display:flex;align-items:baseline;gap:8px;margin-top:10px}.home-week-stats strong{font-size:1.15rem}.home-week-stats span{color:var(--muted);font-size:.61rem}.home-next-workout{display:grid;grid-template-columns:1fr auto;gap:4px 10px;margin-top:13px;padding-top:12px;border-top:1px solid var(--border)}.home-next-workout span{grid-column:1/-1;color:var(--muted);font-size:.52rem;font-weight:900;letter-spacing:.06em}.home-next-workout strong{align-self:center;font-size:.8rem}.home-next-workout .primary-button{grid-column:2;grid-row:2}
.home-last-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:var(--shadow)}.home-last-card div{min-width:0}.home-last-card strong{display:block;font-size:.9rem}.home-last-card span{display:block;margin-top:4px;color:var(--muted);font-size:.62rem;line-height:1.3}
@media(max-width:520px){.home-consistency-main strong{font-size:3.3rem}.home-calendar-grid{gap:4px;padding-left:8px;padding-right:8px}.home-calendar-day{border-radius:10px}.home-calendar-day span{font-size:.67rem}.home-calendar-legend{grid-template-columns:1fr 1fr;row-gap:8px}.home-last-card{align-items:flex-start;flex-direction:column}.home-last-card .secondary-button{width:100%}}
@media(max-width:380px){.home-consistency-hero{padding:16px}.home-consistency-main strong{font-size:2.9rem}.home-consistency-main span{font-size:.78rem}.home-calendar-weekdays{padding-left:7px;padding-right:7px}.home-calendar-grid{padding-left:6px;padding-right:6px;gap:3px}.home-calendar-day{border-radius:8px}.home-calendar-day span{font-size:.61rem}.home-calendar-day b{right:3px;bottom:2px;font-size:.55rem}.home-summary-grid article{padding:8px}.home-summary-grid strong{font-size:1rem}}


/* FASE 7.7 — Evolução por grupo muscular */
.analysis-muscle-evolution-panel{display:grid;gap:11px}
.analysis-muscle-evolution-summary{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:7px}
.analysis-muscle-evolution-summary>div{min-width:0;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface-strong)}
.analysis-muscle-evolution-summary span{display:block;color:var(--muted);font-size:.51rem;font-weight:900;letter-spacing:.045em;line-height:1.15}
.analysis-muscle-evolution-summary strong{display:block;margin-top:4px;font-size:.72rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-muscle-evolution-list{display:grid;border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--surface)}
.analysis-muscle-evolution-row{padding:10px 11px;border-bottom:1px solid var(--border)}
.analysis-muscle-evolution-row:last-child{border-bottom:0}
.analysis-muscle-evolution-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.analysis-muscle-evolution-head>div{display:grid;gap:3px;min-width:0}
.analysis-muscle-evolution-head strong{font-size:.72rem}
.analysis-muscle-evolution-head span{font-size:.56rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-muscle-evolution-track{height:7px;margin:7px 0;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);overflow:hidden}
.analysis-muscle-evolution-track>div{height:100%;border-radius:999px;background:var(--accent)}
.analysis-muscle-evolution-metrics{display:flex;justify-content:flex-start;gap:8px;color:var(--muted);font-size:.53rem;line-height:1.2}
.analysis-muscle-evolution-metrics strong{color:var(--text);font-size:.62rem}
.analysis-muscle-evolution-note{margin-top:0}
@media(max-width:520px){.analysis-muscle-evolution-summary{grid-template-columns:1fr 1fr}.analysis-muscle-evolution-summary>div:last-child{grid-column:1 / -1}.analysis-muscle-evolution-row{padding:9px 10px}}
@media(max-width:380px){.analysis-muscle-evolution-summary{gap:5px}.analysis-muscle-evolution-summary>div{padding:7px}.analysis-muscle-evolution-summary strong{font-size:.67rem}.analysis-muscle-evolution-head strong{font-size:.68rem}.analysis-muscle-evolution-head span{font-size:.53rem}}
