:root{--fondo:#14161a;--superficie:#1d2026;--borde:#2c313a;--texto:#e6e8eb;--texto-tenue:#9aa2ad;--error:#ff6b6b;--verde:#3ddc97;--azul:#4ea1ff;--acento:var(--azul);--degradado:linear-gradient(135deg, var(--verde), var(--azul));--degradado-suave:linear-gradient(135deg in oklab, var(--verde), var(--azul));--curva:cubic-bezier(.2, .8, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px}*{box-sizing:border-box}body{background:var(--fondo);color:var(--texto);margin:0;line-height:1.5}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60rem 40rem at 8% -10%,#3ddc971a,#0000 60%),radial-gradient(55rem 40rem at 100% 105%,#4ea1ff1a,#0000 60%);position:fixed;inset:0}h1,h2{margin:0 0 .5rem;line-height:1.2}a{color:var(--acento);text-decoration:none}a:hover{text-decoration:underline}header{background:linear-gradient(180deg, #ffffff08, transparent), var(--superficie);border-bottom:1px solid var(--borde);position:relative}header:after{content:"";background:var(--degradado);background:var(--degradado-suave);opacity:.7;height:2px;position:absolute;inset:auto 0 -1px}nav{align-items:center;gap:1.25rem;max-width:60rem;margin:0 auto;padding:.75rem 1rem;display:flex}nav a{color:var(--texto-tenue);transition:color .18s var(--curva);padding:.25rem 0;position:relative}nav a:hover{color:var(--texto);text-decoration:none}nav a:after{content:"";background:var(--degradado);background:var(--degradado-suave);height:2px;transition:transform .22s var(--curva);border-radius:2px;position:absolute;inset:auto 0 -.35rem;transform:scaleX(0)}nav a.activo{color:var(--texto)}nav a.activo:after,nav a:hover:after{transform:scaleX(1)}nav button{margin-left:auto}main{max-width:60rem;margin:0 auto;padding:1.5rem 1rem}main.cargando,.pendiente{color:var(--texto-tenue)}.aviso code{background:var(--superficie);border:1px solid var(--borde);border-radius:4px;padding:.05rem .3rem;font-size:.9em}.aviso li{margin-bottom:.5rem}label{color:var(--texto-tenue);flex-direction:column;gap:.35rem;font-size:.875rem;display:flex}input,select{font:inherit;color:var(--texto);background:var(--fondo);border:1px solid var(--borde);border-radius:6px;padding:.5rem .65rem}input:focus,select:focus{outline:2px solid var(--acento);outline-offset:-1px;border-color:#0000}button{font:inherit;color:var(--texto);background:linear-gradient(160deg, #ffffff0a, transparent), var(--superficie);border:1px solid var(--borde);cursor:pointer;transition:transform .16s var(--curva), border-color .16s var(--curva), box-shadow .16s var(--curva);border-radius:8px;padding:.5rem .9rem}button:hover:not(:disabled){border-color:color-mix(in oklab, var(--verde), var(--azul));transform:scale(1.04);box-shadow:0 4px 16px -6px #4ea1ff80}button:active:not(:disabled){transition-duration:60ms;transform:scale(.97)}button:disabled{opacity:.6;cursor:default}.error{color:var(--error);margin:0;font-size:.875rem}.captura>*+*{margin-top:1.25rem}.captura .fecha{width:max-content}.tabla-scroll{overflow-x:auto}.captura table{border-collapse:collapse;width:100%}.captura th{color:var(--texto-tenue);text-align:left;padding:0 .35rem .4rem;font-size:.8rem;font-weight:600}.captura td{padding:.2rem .35rem}.captura .num{width:2rem;color:var(--texto-tenue);font-variant-numeric:tabular-nums;text-align:right}.captura input[type=number]{font-variant-numeric:tabular-nums;width:5rem}.captura select{min-width:7.5rem}.captura input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.captura input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.captura input[type=number]{appearance:textfield}.con-unidad{white-space:nowrap}.unidad{color:var(--texto-tenue);margin-left:.4rem;font-size:.75rem}.quitar{color:var(--texto-tenue);padding:.25rem .55rem;line-height:1}.quitar:hover:not(:disabled){color:var(--error);border-color:var(--error);box-shadow:0 4px 14px -6px #ff6b6b8c}.ayuda{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.ayuda span{color:var(--texto-tenue);font-size:.8rem}.extras summary{cursor:pointer;color:var(--texto-tenue);padding:.35rem 0;font-size:.875rem}.extras>:not(summary){margin-top:1rem}.campos-sesion{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.campos-sesion .notas{flex:16rem}.guardar{color:#0d1117;background:var(--degradado);background:var(--degradado-suave);border-color:#0000;font-weight:700}.guardar:hover:not(:disabled){box-shadow:0 6px 22px -6px #3ddc978c}.calendario>*+*{margin-top:1rem}.barra-mes{align-items:center;gap:.5rem;display:flex}.barra-mes h2{text-transform:capitalize;min-width:11rem;color:var(--texto);background:var(--degradado-suave);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;width:max-content;margin:0;font-size:1.15rem}.barra-mes button{padding:.25rem .7rem;line-height:1.2}.rejilla{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.rejilla.cabecera{color:var(--texto-tenue);text-align:center;margin-bottom:.25rem;font-size:.75rem}.rejilla.atenuada{opacity:.45}.celda{border:1px solid var(--borde);background:var(--superficie);min-height:4.25rem;transition:transform .16s var(--curva), border-color .16s var(--curva), box-shadow .16s var(--curva);border-radius:8px;flex-direction:column;gap:.15rem;padding:.3rem .4rem;display:flex}.hueco{border:1px solid #0000}.numero-dia{color:var(--texto-tenue);font-variant-numeric:tabular-nums;font-size:.75rem}.celda.es-hoy{border-color:var(--acento)}.celda.es-hoy .numero-dia{color:var(--acento);font-weight:600}a.celda{color:var(--texto);text-decoration:none}a.celda:hover{border-color:color-mix(in oklab, var(--verde), var(--azul));z-index:1;position:relative;transform:scale(1.05);box-shadow:0 6px 20px -8px #4ea1ff8c}a.con-entreno{background:linear-gradient(135deg, #3ddc9729, #4ea1ff29), var(--superficie);background:linear-gradient(135deg in oklab, #3ddc9729, #4ea1ff29), var(--superficie)}.cifras{font-variant-numeric:tabular-nums;gap:.35rem;font-size:.8rem;display:flex}.cifras b{font-weight:600}.cifras b+b:before{content:"·";color:var(--texto-tenue);margin-right:.35rem;font-weight:400}.plancha{color:var(--texto-tenue);font-variant-numeric:tabular-nums;font-size:.7rem}.puntos{gap:3px;margin-top:auto;display:flex}.punto{border-radius:50%;flex:none;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 1px #00000073}.punto.gym{background:#ffc247}.punto.run{background:var(--verde)}.leyenda .punto{vertical-align:1px;margin:0 .1rem 0 .35rem}.leyenda,.nota{color:var(--texto-tenue);margin:0;font-size:.78rem}.resumen-mes{border-top:1px solid #0000;border-image:linear-gradient(90deg, transparent, var(--verde), var(--azul), transparent) 1;padding-top:1rem}.resumen-mes>*+*{margin-top:.75rem}.metricas{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem 1rem;margin:0;padding:0;list-style:none;display:grid}.metricas li{flex-direction:column;display:flex}.metricas .etiqueta{color:var(--texto-tenue);font-size:.75rem}.metricas .valor{font-variant-numeric:tabular-nums;font-size:1.05rem}.delta{margin-left:.4rem;font-size:.75rem}.delta.sube{color:var(--verde)}.delta.baja{color:var(--error)}.delta.igual{color:var(--texto-tenue)}.metricas.aparte{border-top:1px solid #0000;border-image:linear-gradient(90deg, transparent, var(--borde) 20%, var(--borde) 80%, transparent) 1;padding-top:.75rem}.texto-ia{border-left:3px solid var(--acento);border-image:var(--degradado-suave) 1;background:linear-gradient(90deg, #4ea1ff12, transparent 60%), var(--superficie);border-style:solid;border-width:0 0 0 3px;margin:0;padding:.75rem 1rem;font-size:.9rem}.actividades{border:1px solid var(--borde);background:linear-gradient(150deg, #3ddc970d, #4ea1ff0d), var(--superficie);background:linear-gradient(150deg in oklab, #3ddc970d, #4ea1ff0d), var(--superficie);border-radius:10px;padding:1rem}.actividades h3{margin:0 0 .6rem;font-size:1rem}.actividades>p{font-size:.8rem}.lista-actividades{margin:0 0 .75rem;padding:0;list-style:none}.lista-actividades li{align-items:center;gap:.5rem;padding:.3rem 0;font-size:.9rem;display:flex}.lista-actividades em{color:var(--texto-tenue);font-size:.8rem;font-style:normal}.lista-actividades .quitar{margin-left:auto}.anadir-actividad{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.anadir-actividad input{font-variant-numeric:tabular-nums;width:5.5rem}.detalle>*+*{margin-top:1rem}.detalle h2{text-transform:capitalize}.volver{margin:0;font-size:.875rem}.sesion{border:1px solid var(--borde);background:linear-gradient(150deg, #3ddc970d, #4ea1ff0d), var(--superficie);background:linear-gradient(150deg in oklab, #3ddc970d, #4ea1ff0d), var(--superficie);border-radius:10px;padding:1rem}.sesion h3{text-transform:capitalize;margin:0;font-size:1rem}.sesion .meta,.sesion .notas{color:var(--texto-tenue);margin:.25rem 0 0;font-size:.8rem}.sesion .tabla-scroll{margin-top:.85rem}.sesion table{border-collapse:collapse;width:100%}.sesion th{color:var(--texto-tenue);text-align:left;padding:0 .5rem .4rem;font-size:.75rem;font-weight:600}.sesion td{border-top:1px solid var(--borde);vertical-align:top;padding:.35rem .5rem}.sesion .num{text-align:right;width:2rem;color:var(--texto-tenue);font-variant-numeric:tabular-nums}.sesion .medida{font-variant-numeric:tabular-nums;display:block}.sesion .variante,.sesion .lastre{color:var(--texto-tenue);font-size:.72rem;display:block}.sesion .vacia,.sesion .descanso{color:var(--texto-tenue);font-variant-numeric:tabular-nums}.sesion tfoot td,.sesion tfoot th{border-top:2px solid var(--borde);padding-top:.5rem}.sesion tfoot .total .medida{color:var(--acento);font-weight:600}.login{place-items:center;min-height:100dvh;padding:1rem;display:grid}.login form{background:linear-gradient(160deg, #3ddc9712, #4ea1ff12), var(--superficie);background:linear-gradient(160deg in oklab, #3ddc9712, #4ea1ff12), var(--superficie);border:1px solid var(--borde);border-radius:14px;flex-direction:column;gap:1rem;width:min(22rem,100%);padding:1.75rem;display:flex;box-shadow:0 24px 60px -30px #000c}.login h1{text-align:center;background:var(--degradado-suave);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:hover:not(:disabled),button:active:not(:disabled),a.celda:hover{transform:none}}
