/* Progreso (progreso.js): constancia, ejercicios y el gráfico por ejercicio. */
.pg-area{max-width:880px}
.pg-h2{margin:26px 0 12px;font:800 22px/1.05 var(--heading);text-transform:uppercase}
.pg-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:18px}
.pg-stats--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pg-stat{min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.pg-stat small{display:block;color:var(--muted);font-size:11px;font-weight:700}
.pg-stat b{display:block;margin-top:6px;font:800 26px/1 var(--heading);color:var(--text)}
.pg-stat span{display:block;margin-top:4px;color:var(--muted);font-size:11px}

.pg-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pg-row{display:flex;align-items:center;gap:12px;padding:14px 16px;color:var(--text);text-decoration:none}
.pg-row:hover,.pg-row:focus-visible{border-color:var(--brand-line)}
.pg-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.pg-row-name{font-size:15px;overflow-wrap:anywhere}
.pg-row-meta{color:var(--muted);font-size:12px}
.pg-row-best{flex:none;color:var(--text-soft);font-size:12px;font-weight:700;text-align:right}
.pg-row-go{flex:none;color:var(--muted);font-size:22px;line-height:1}
.pg-empty-icon{font-size:34px;margin:0}

/* Gráfico: una serie en el color de la marca; grilla y ejes recesivos. */
.pg-chart{position:relative;margin-top:16px;padding:4px 14px 10px;overflow:hidden}
.pg-chart .pg-h2{margin:12px 0 4px;font-size:16px}
.pg-chart-note{margin:12px 0;color:var(--muted);font-size:13px}
.pg-svg{display:block;max-width:100%;touch-action:pan-y;outline:none}
.pg-svg:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--radius-sm)}
.pg-grid{stroke:var(--line);stroke-width:1}
.pg-axis{fill:var(--muted);font:600 11px var(--body)}
.pg-line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.pg-area-fill{fill:var(--brand);fill-opacity:.1;stroke:none}
.pg-dot{fill:var(--brand);stroke:var(--surface);stroke-width:2}
.pg-end{fill:var(--text);font:700 12px var(--body)}
.pg-cross{stroke:var(--line-strong);stroke-width:1}
.pg-hit{fill:transparent;cursor:crosshair}
.pg-tip{position:absolute;top:0;left:0;pointer-events:none;min-width:96px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.pg-tip small{display:block;color:var(--muted);font-size:11px}
.pg-tip b{display:block;font-size:15px}
.pg-tip span{display:block;color:var(--text-soft);font-size:11px}

/* Historial = la tabla del gráfico. */
.pg-day{margin-bottom:14px}
.pg-day-title{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.pg-sets{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pg-sets li{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--field);font-size:13px}
.pg-set-n{flex:none;width:24px;color:var(--brand);font:800 18px/1 var(--heading);text-align:center}
.pg-set-rm{margin-left:auto;color:var(--muted);font-size:12px;font-weight:700}
.pg-more{margin-top:8px}
