:root{--color-bg: #f6f8fa;--color-primary: #2166b3;--color-primary-hover: #1b589a;--color-text: #0e1a26;--color-card-border: #e3e9ef;--color-white: #ffffff;--color-danger: #c0392b;--color-muted: #5a6b7a;--radius: 16px;--radius-sm: 14px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:Instrument Sans,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--color-primary)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--color-white);border-bottom:1px solid var(--color-card-border)}.app-header .brand{font-weight:700;font-size:1.1rem;color:var(--color-primary);text-decoration:none}.app-main{flex:1;width:100%;max-width:560px;margin:0 auto;padding:20px 16px 48px}.card{background:var(--color-white);border:1px solid var(--color-card-border);border-radius:var(--radius);padding:20px;margin-bottom:16px}.card+.card{margin-top:0}.card-title{font-size:1.05rem;font-weight:600;margin:0 0 4px}.card-subtitle{font-size:.9rem;color:var(--color-muted);margin:0 0 12px}.stack{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:.85rem;font-weight:500;color:var(--color-muted)}.input{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-card-border);font-size:1rem;font-family:inherit;color:var(--color-text);background:var(--color-white)}.input:focus{outline:2px solid var(--color-primary);outline-offset:1px}textarea.input{resize:vertical;min-height:72px}select.input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:var(--radius-sm);border:none;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background-color .15s ease;text-decoration:none}.btn-primary{background:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:disabled{background:#9db8d4;cursor:not-allowed}.btn-secondary{background:var(--color-white);color:var(--color-primary);border:1px solid var(--color-card-border)}.btn-secondary:hover{background:var(--color-bg)}.btn-danger{background:var(--color-white);color:var(--color-danger);border:1px solid var(--color-card-border)}.btn-block{width:100%}.btn-sm{padding:8px 12px;font-size:.85rem}.error-banner{background:#fdecea;color:var(--color-danger);border:1px solid #f3c7c1;border-radius:var(--radius-sm);padding:10px 14px;font-size:.9rem;margin-bottom:14px}.info-banner{background:#eaf1fb;color:var(--color-primary-hover);border:1px solid #cddcf0;border-radius:var(--radius-sm);padding:10px 14px;font-size:.9rem;margin-bottom:14px}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600}.badge-success{background:#e3f5e9;color:#1c7a41}.badge-muted{background:#eef1f4;color:var(--color-muted)}.list-item{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--color-card-border);text-decoration:none;color:inherit}.list-item:last-child{border-bottom:none}.list-item-title{font-weight:600}.list-item-subtitle{font-size:.85rem;color:var(--color-muted)}.empty-state{text-align:center;color:var(--color-muted);padding:32px 12px}.spinner-wrap{display:flex;justify-content:center;padding:40px 0;color:var(--color-muted)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.text-muted{color:var(--color-muted)}.exercise-item{border:1px solid var(--color-card-border);border-radius:var(--radius-sm);padding:14px;display:flex;gap:12px;align-items:flex-start}.exercise-checkbox{width:22px;height:22px;margin-top:2px;accent-color:var(--color-primary)}.pain-scale{display:flex;flex-wrap:wrap;gap:8px}.pain-scale button{width:36px;height:36px;border-radius:10px;border:1px solid var(--color-card-border);background:var(--color-white);font-weight:600;cursor:pointer}.pain-scale button.selected{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.difficulty-options{display:flex;gap:8px;flex-wrap:wrap}.difficulty-options button{flex:1;min-width:90px;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--color-card-border);background:var(--color-white);cursor:pointer;font-family:inherit}.difficulty-options button.selected{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.link-box{display:flex;flex-direction:column;gap:4px;background:var(--color-bg);border:1px dashed var(--color-card-border);border-radius:var(--radius-sm);padding:12px;font-size:.85rem;word-break:break-all}.code-display{font-size:1.8rem;font-weight:700;letter-spacing:.15em;color:var(--color-primary);text-align:center}.nav-tabs{display:flex;gap:8px;margin-bottom:16px}.nav-tabs a{padding:8px 14px;border-radius:999px;font-size:.85rem;font-weight:600;text-decoration:none;color:var(--color-muted);background:var(--color-white);border:1px solid var(--color-card-border)}.nav-tabs a.active{color:var(--color-white);background:var(--color-primary);border-color:var(--color-primary)}.week-strip{display:flex;gap:6px;margin:10px 0}.week-day{flex:1;height:28px;border-radius:8px;background:var(--color-bg);border:1px solid var(--color-card-border)}.week-day.completa{background:#2f9e5c;border-color:#2f9e5c}.week-day.parcial{background:#e0a92e;border-color:#e0a92e}.alert-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.badge-alert{background:#fdecea;color:#c0392b}.badge-warning{background:#fff4e0;color:#8a5a00}@media print{.no-print{display:none!important}.app-header{display:none}body{background:#fff}.app-main{max-width:100%;padding:0}.card{border:none;border-bottom:1px solid var(--color-card-border);border-radius:0;break-inside:avoid}}.guiada{display:flex;flex-direction:column;gap:16px;padding-bottom:24px}.guiada-barra{display:flex;align-items:center;gap:12px}.guiada-progreso{flex:1;height:8px;background:var(--color-card-border);border-radius:99px;overflow:hidden}.guiada-progreso>div{height:100%;background:var(--color-primary);transition:width .3s}.guiada-paso,.guiada-descanso{background:var(--color-white);border:1px solid var(--color-card-border);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:12px;text-align:center}.guiada-imgs{display:flex;flex-direction:column;align-items:center;gap:8px}.guiada-img{width:100%;max-width:320px;max-height:260px;object-fit:contain;border-radius:var(--radius-sm);margin:0 auto;display:block;background:#f7fafc}.guiada-img-sec{max-height:140px}.guiada-nombre{margin:0;font-size:1.4rem}.guiada-serie{margin:0;font-weight:600;color:var(--color-primary)}.guiada-desc{margin:0;color:var(--color-muted);font-size:.95rem}.guiada-reloj{font-size:3.5rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-primary)}.guiada-boton{min-height:56px;font-size:1.05rem}.guiada-pie{display:flex;justify-content:space-between;gap:8px}@media (prefers-reduced-motion: reduce){.guiada-progreso>div{transition:none}}
