/* ============================================================
   LIFE PLANER — GYM S9: Auswertung
   Kennzahlen mit Vorperiode · Muskelverteilung · Hauptübungen ·
   drei Verläufe im Übungs-Sheet.
   Nur bestehende Tokens aus lp-styles.css.
   ============================================================ */

/* ---------- Zeitraum-Kopf ---------- */
.lp-gy-perhd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  padding:8px 2px 1px}
.lp-gy-perhd .t{font-size:12px;font-weight:700;color:var(--text-2);
  text-transform:uppercase;letter-spacing:.08em}
.lp-gy-perhd .s{font-size:11px;font-weight:600;color:var(--text-4);
  font-variant-numeric:tabular-nums}

/* ---------- Kennzahlen ---------- */
.lp-gy-kpis{display:grid;grid-template-columns:1fr 1fr;gap:0}
.lp-gy-kpi{padding:11px 12px;border-top:1px solid var(--hair);border-left:1px solid var(--hair)}
.lp-gy-kpi:nth-child(1),.lp-gy-kpi:nth-child(2){border-top:none}
.lp-gy-kpi:nth-child(odd){border-left:none}
.lp-gy-kpi .k{display:block;font-size:9.5px;font-weight:700;color:var(--text-3);
  text-transform:uppercase;letter-spacing:.09em}
.lp-gy-kpi .v{display:block;margin-top:2px;font-size:22px;font-weight:750;letter-spacing:-.035em;
  font-variant-numeric:tabular-nums}
.lp-gy-kpi .v small{font-size:12px;font-weight:650;color:var(--text-3);letter-spacing:0;
  margin-left:2px}
.lp-gy-kpi .dl{display:flex;align-items:center;gap:5px;margin-top:5px;
  font-size:11px;font-weight:650;color:var(--text-3);font-variant-numeric:tabular-nums}
.lp-gy-kpi .dl svg{flex:0 0 auto;color:var(--text-4)}
.lp-gy-kpi .dl.flat,.lp-gy-kpi .dl.none{color:var(--text-4);font-weight:600}
.lp-gy-kpi .dl em{font-style:normal;color:var(--text-4);font-weight:600}

/* ---------- Muskelverteilung ---------- */
.lp-gy-mg{display:flex;flex-direction:column;gap:9px;margin-top:11px}
.lp-gy-mgrow{display:grid;grid-template-columns:88px minmax(0,1fr) 28px;align-items:center;gap:10px}
.lp-gy-mgrow .n{font-size:12px;font-weight:600;color:var(--text-2);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-gy-mgrow .t{display:flex;flex-direction:column;gap:2px}
.lp-gy-mgrow .t i{display:block;height:7px;border-radius:4px;background:var(--accent);min-width:2px}
.lp-gy-mgrow .t u{display:block;height:2px;border-radius:2px;background:var(--hair-2);min-width:2px}
.lp-gy-mgrow .v{font-size:12px;font-weight:700;color:var(--text-2);text-align:right;
  font-variant-numeric:tabular-nums}
.lp-gy-mglg{display:flex;align-items:center;gap:14px;margin-top:11px;padding-top:9px;
  border-top:1px solid var(--hair);font-size:10.5px;font-weight:600;color:var(--text-4)}
.lp-gy-mglg span{display:flex;align-items:center;gap:6px}
.lp-gy-mglg i{display:block;width:14px;height:7px;border-radius:4px;background:var(--accent)}
.lp-gy-mglg u{display:block;width:14px;height:2px;border-radius:2px;background:var(--hair-2)}

/* ---------- Hauptübungen ---------- */
.lp-gy-toprow{display:grid;grid-template-columns:22px minmax(0,1fr) auto 14px;align-items:center;
  gap:11px;padding:11px 0;border-bottom:1px solid var(--hair);cursor:pointer}
.lp-gy-toprow:last-child{border-bottom:none}
.lp-gy-toprow:active{background:var(--surface-2)}
.lp-gy-toprow .r{font-size:11px;font-weight:700;color:var(--text-4);text-align:center;
  font-variant-numeric:tabular-nums}
.lp-gy-toprow .nm{min-width:0;font-size:13.5px;font-weight:650;letter-spacing:-.015em;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-gy-toprow .nm small{display:block;font-size:10.5px;font-weight:600;color:var(--text-4);
  letter-spacing:0;margin-top:2px}
.lp-gy-toprow .c{font-size:12px;font-weight:700;color:var(--text-2);
  font-variant-numeric:tabular-nums;white-space:nowrap}
.lp-gy-toprow .ch{color:var(--text-4);display:flex}

/* ---------- Verläufe im Übungs-Sheet ---------- */
.lp-gy-trend{display:flex;flex-direction:column;gap:11px}
.lp-gy-trend .hd{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.lp-gy-trend .vv{font-size:27px;font-weight:750;letter-spacing:-.04em;line-height:1;
  font-variant-numeric:tabular-nums}
.lp-gy-trend .vv small{font-size:13px;font-weight:650;color:var(--text-3);letter-spacing:0;
  margin-left:3px}
.lp-gy-trend .mt{margin-top:6px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  font-size:11px;font-weight:650;color:var(--text-3)}
.lp-gy-trend .mt .est{font-style:normal;font-size:9.5px;font-weight:700;color:var(--text-3);
  background:var(--surface-3);border:1px dashed var(--hair-2);padding:2px 7px;border-radius:6px;
  text-transform:uppercase;letter-spacing:.05em}
.lp-gy-trend .sp{text-align:right;flex:0 0 auto;font-size:13px;font-weight:700;color:var(--text-2);
  font-variant-numeric:tabular-nums;line-height:1.2}
.lp-gy-trend .sp small{display:block;font-size:10px;font-weight:600;color:var(--text-4);
  margin-top:3px}
.lp-gy-trend .ax{display:flex;align-items:baseline;justify-content:space-between;
  font-size:10px;font-weight:650;color:var(--text-4);font-variant-numeric:tabular-nums}
.lp-gy-trend .note{font-size:11.5px;font-weight:600;color:var(--text-4);line-height:1.45}

/* dünne Datenlage: Punkte statt Kurve */
.lp-gy-pts{display:flex;flex-direction:column}
.lp-gy-pts .p{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;
  padding:9px 0;border-top:1px solid var(--hair)}
.lp-gy-pts .p:first-child{border-top:none}
.lp-gy-pts .p .d{font-size:12px;font-weight:600;color:var(--text-3)}
.lp-gy-pts .p .v{font-size:15px;font-weight:700;color:var(--text);
  font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.lp-gy-pts .p.old .v{font-weight:650;color:var(--text-2)}
/* ---------- Fussnoten unter der Muskelverteilung ----------
   "Nicht belastet" (Modul 1b) und "Nicht zugeordnet" (Modul 0.3) teilen sich
   die Zeile: beides sind Fussnoten zur Balkenliste, kein eigener Abschnitt. */
.lp-gy-untrained{
  display:flex;align-items:baseline;gap:8px;
  margin-top:11px;padding-top:9px;border-top:1px solid var(--hair);
  font-size:10.5px;line-height:1.4}
.lp-gy-untrained .lbl{flex:0 0 auto;font-weight:700;color:var(--text-4);
  text-transform:uppercase;letter-spacing:.06em}
.lp-gy-untrained .names{font-weight:600;color:var(--text-4)}

/* ============================================================
   S10 — Körperkarte
   Liegt im selben Block wie die Auswertung und teilt sich deshalb die
   Datei, statt einen vierten Gym-Stylesheet-Request aufzumachen.
   ============================================================ */
.lp-bm-card{display:flex;flex-direction:column;gap:11px}

.lp-bm-svgs{display:flex;gap:12px;justify-content:center;align-items:flex-start;
  padding:8px 0 4px}
.lp-bm-view{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;max-width:170px}
.lp-bm-svg{width:100%;aspect-ratio:727/1280}
/* Platzhalter: exakt dieselbe Box wie das geladene SVG, damit beim
   Nachladen der 95 KB nichts nachspringt. Kein Spinner — die Form sagt es. */
.lp-bm-svg.ph{background:rgba(255,255,255,.03);border:1px solid var(--hair);
  border-radius:58px 58px 18px 18px}
.lp-bm-vl{font-size:9.5px;font-weight:700;color:var(--text-4);
  text-transform:uppercase;letter-spacing:.08em}

.lp-bm-info{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  min-height:20px;font-size:12px;padding:2px 0}
.lp-bm-info.empty{color:var(--text-4);font-weight:600;font-size:11px}
.lp-bm-info .name{font-weight:700;color:var(--text)}
.lp-bm-info .detail{font-weight:600;color:var(--text-3);
  font-variant-numeric:tabular-nums}

.lp-bm-legend{display:flex;align-items:center;gap:8px;justify-content:center;
  font-size:9.5px;font-weight:700;color:var(--text-4);
  text-transform:uppercase;letter-spacing:.06em}
.lp-bm-legend .scale{display:flex;gap:3px}
.lp-bm-legend .scale i{width:18px;height:10px;border-radius:3px}
