:root{color-scheme:dark;--bg:#101115;--panel:#1b1d24;--border:#343740;--text:#f8f8f9;--muted:#a6a8b3;--accent:#b7f65e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px max(24px,calc((100vw - 1100px)/2));border-bottom:1px solid var(--border)}.brand{font-size:23px;font-weight:900;letter-spacing:2px;color:#fff;text-decoration:none}.brand span{color:var(--accent)}nav{display:flex;gap:18px}nav a{color:var(--muted);text-decoration:none}nav a:hover{color:#fff}main{max-width:1100px;margin:60px auto;padding:0 24px;min-height:65vh}.eyebrow,.tag{color:var(--accent);font-size:12px;letter-spacing:2px;font-weight:800}h1{font-size:clamp(32px,5vw,52px);line-height:1.12;margin:12px 0}h2{font-size:22px}.muted,small{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:32px 0}.card,.auth{border:1px solid var(--border);border-radius:18px;padding:26px;background:var(--panel)}.auth{max-width:480px;margin:30px auto}.auth h1{font-size:36px}label{display:block;color:var(--muted);font-size:14px;margin:18px 0 8px}input{display:block;width:100%;border:1px solid #444851;border-radius:10px;background:#12141a;color:#fff;padding:13px;font-size:16px;margin-top:6px}button,.btn{display:inline-block;border:0;border-radius:10px;background:var(--accent);color:#101115;font-weight:800;padding:13px 18px;cursor:pointer;text-decoration:none;font-size:15px}button.secondary{background:#353945;color:#fff}form button{margin-top:16px}.error,.success{padding:14px;border-radius:10px;margin:16px 0}.error{background:#5b2525}.success{background:#23492c}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.row form button{margin:0}.big{font-size:50px;font-weight:900;margin:0}footer{text-align:center;color:#6e717b;padding:32px}@media(max-width:600px){header{padding:18px}nav{gap:10px;font-size:14px}main{margin:32px auto}.card,.auth{padding:20px}}

select{width:100%;border:1px solid #444851;border-radius:10px;background:#12141a;color:#fff;padding:13px;font-size:15px;margin-top:6px}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}.inline{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0}.inline input,.inline select{width:auto;min-width:180px}.inline button{margin:0}.card{margin:18px 0}.row form{flex-shrink:0}.row small{font-size:12px}

.table-scroll{overflow-x:auto}.set-table{width:100%;border-collapse:collapse;min-width:690px}.set-table th,.set-table td{padding:8px;border-bottom:1px solid var(--border);text-align:left}.set-table input[type=number]{min-width:76px;width:100%;padding:9px}.set-table input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}.set-table small{white-space:nowrap}input:disabled{opacity:.65}button.secondary{background:#353945;color:white}

/* V0.7: registro compacto y comparación con última sesión */
.compact-set-table{min-width:620px}.compact-set-table th,.compact-set-table td{padding:6px 5px}.compact-set-table input[type=number]{min-width:66px;padding:8px 6px;margin:0}.compact-set-table .previous-cell{min-width:145px;max-width:220px}.compact-set-table .previous-cell small{white-space:normal;color:var(--accent);font-size:12px}.previous-date{font-size:13px;margin:12px 0 4px}
@media(max-width:600px){.compact-set-table{min-width:660px}.compact-set-table th{font-size:12px}.compact-set-table input[type=number]{font-size:16px}}

/* V0.8: tarjetas de series para móvil; columnas sin solapamientos en escritorio */
.compact-set-table{table-layout:fixed;min-width:820px}
.compact-set-table th:nth-child(1){width:6%}
.compact-set-table th:nth-child(2){width:17%}
.compact-set-table th:nth-child(3){width:23%}
.compact-set-table th:nth-child(4){width:15%}
.compact-set-table th:nth-child(5){width:12%}
.compact-set-table th:nth-child(6){width:13%}
.compact-set-table th:last-child{width:7%}
.compact-set-table td small{white-space:normal;overflow-wrap:anywhere}
.workout-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.workout-actions button{margin:0}
.workout-actions p{width:100%;margin:0}
@media(max-width:700px){
 header{flex-wrap:wrap;gap:8px;padding:12px 16px}header nav{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13px}
 main{margin:24px auto;padding:0 12px}h1{font-size:clamp(28px,8vw,42px);overflow-wrap:anywhere}
 .card{padding:16px;margin:12px 0;border-radius:14px}.card>.row{align-items:flex-start;flex-wrap:wrap}
 .table-scroll{overflow:visible}.compact-set-table{display:block;width:100%;min-width:0;table-layout:auto}
 .compact-set-table thead{display:none}.compact-set-table tbody{display:grid;gap:12px}
 .compact-set-table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;border:1px solid var(--border);border-radius:12px;background:#14161c}
 .compact-set-table td{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0;border:0;font-size:13px}
 .compact-set-table td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:700}
 .compact-set-table td[data-label="Serie"]{grid-column:1 / 2}
 .compact-set-table td[data-label="Objetivo"]{grid-column:2 / 4}
 .compact-set-table td[data-label="Anterior"]{grid-column:1 / -1;max-width:none;min-width:0}
 .compact-set-table td[data-label="Anterior"] small{font-size:13px}
 .compact-set-table td[data-label="Completada"]{grid-column:1 / -1;flex-direction:row;align-items:center;gap:12px}
 .compact-set-table td[data-label="Completada"]::before{font-size:13px}
 .compact-set-table input[type=number]{width:100%;min-width:0;height:44px;font-size:16px}
 .compact-set-table input[type=checkbox]{margin:0;width:24px;height:24px}
 .workout-actions{position:static;bottom:auto;z-index:auto;background:#1b1d24;box-shadow:none}
 .workout-actions button{flex:1 1 180px;min-height:48px}
}

/* V0.8: gestión de rutinas */
.routine-manage{padding:12px 0 18px;border-bottom:1px solid var(--border)}
.routine-manage>.row{border-bottom:0}
.routine-manage-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px}
.routine-manage-actions details{flex:1 1 220px;min-width:0;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:#14161c}
.routine-manage-actions summary{cursor:pointer;font-weight:700;list-style-position:inside}
.routine-manage-actions form{margin-top:10px}
.routine-manage-actions form button{margin-top:10px}
.danger-text{color:#ffaaaa}.danger-button{background:#aa3535;color:#fff}
@media(max-width:700px){.routine-manage-actions{display:block}.routine-manage-actions details{margin:10px 0}.routine-manage .row .btn{width:100%;text-align:center}}

/* V0.9 PWA / rutina activa */
.today-card{border-color:#526d37;background:linear-gradient(130deg,#1b1d24,#1b2619)}
.today-card h2{font-size:clamp(27px,5vw,42px);margin:12px 0}
.today-card .btn,.today-card form{margin:10px 8px 8px 0}
.today-card form{display:inline-block}
.today-card form button{margin:0}
.active-badge{display:inline-block;color:#b7f65e;font-weight:800;font-size:12px;letter-spacing:.4px}
.activate-form{margin:4px 0 12px}.activate-form button{margin:0}
@media(max-width:600px){.today-card form,.today-card .btn{display:block;width:100%;text-align:center}.today-card form button{width:100%}}

/* V0.9.2: separación garantizada y doble filo lima/negro en Inicio */
.today-card > form,
.today-card > a.btn {
  display: inline-flex !important;
  vertical-align: middle !important;
  margin: 18px 14px 0 0 !important;
  max-width: 100%;
}
.today-card > form > button,
.today-card > a.btn {
  align-items: center;justify-content: center;
  min-height: 50px;
  padding: 12px 20px;
  border: 2px solid #0c0e0b !important;
  border-radius: 12px !important;
  box-shadow: 0 0 0 1.5px #b7f65e !important;
  transition: background .15s ease, transform .15s ease;
  text-decoration: none;
}
.today-card > form > button {margin:0 !important;background:#b7f65e !important;color:#101115 !important}
.today-card > a.btn.secondary {background:#171b18 !important;color:#b7f65e !important}
.today-card > a.btn.secondary:hover {background:#242b22 !important}
.today-card > form > button:active,.today-card > a.btn:active {transform:translateY(1px)}
@media(max-width:700px){
 .today-card > form,.today-card > a.btn{display:flex !important;width:calc(100% - 4px) !important;margin:16px 2px 0 !important}
 .today-card > form > button{width:100%;min-height:52px}
 .today-card > a.btn{min-height:52px}
}
