*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #FFF8F3;--bg-card: #FFFFFF;--bg-muted: #F5F0EB;--border: #E8E2DC;--cat-cardio: #E8927C;--cat-cardio-light: #FFF0EC;--cat-mobility: #7CAACC;--cat-mobility-light: #EDF5FA;--cat-strength: #8DB580;--cat-strength-light: #EFF5ED;--cat-core: #C49ACD;--cat-core-light: #F6EFF8;--cat-rehab: #D4A96A;--cat-rehab-light: #FAF3E8;--phase-tint: #FFF8F3;--phase-accent: #7CAACC;--text-primary: #2D2A26;--text-secondary: #6B6560;--text-tertiary: #9B9590;--accent: #E8927C;--font-heading: "Outfit", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--radius: 14px;--radius-sm: 8px;--radius-pill: 999px;--page-pad: 20px;--card-pad: 18px}html{background:var(--bg)}body{font-family:var(--font-body);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}.status-bar{position:sticky;top:0;z-index:100;background:#fff8f3d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:0 var(--page-pad)}.status-bar-inner{max-width:640px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:56px;gap:12px}.phase-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-pill);background:var(--phase-accent);color:#fff;font-family:var(--font-body);font-weight:600;font-size:12px;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.status-progress{flex:1;height:4px;background:var(--bg-muted);border-radius:2px;overflow:hidden;min-width:60px}.status-progress-fill{height:100%;border-radius:2px;background:var(--phase-accent);transition:width .6s ease}.status-day{font-family:var(--font-heading);font-weight:600;font-size:14px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.page-container{max-width:640px;margin:0 auto;padding:0 var(--page-pad) 60px}.hero-card{padding:28px 24px;border-radius:var(--radius);background:var(--phase-tint);margin-top:16px;border-top:3px solid var(--phase-accent)}.hero-greeting{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text-tertiary);margin-bottom:4px}.hero-day{font-family:var(--font-heading);font-weight:700;font-size:28px;line-height:1.2;color:var(--text-primary);margin-bottom:2px}.hero-type{font-family:var(--font-heading);font-weight:500;font-size:18px;color:var(--text-secondary);margin-bottom:12px}.hero-meta{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-tertiary);flex-wrap:wrap;margin-bottom:14px}.hero-meta-sep{opacity:.4}.hero-pills{display:flex;gap:6px;flex-wrap:wrap}.cat-pill{display:inline-block;padding:3px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;letter-spacing:.3px}.cat-pill[data-cat=cardio]{background:var(--cat-cardio-light);color:var(--cat-cardio)}.cat-pill[data-cat=mobility]{background:var(--cat-mobility-light);color:var(--cat-mobility)}.cat-pill[data-cat=strength]{background:var(--cat-strength-light);color:var(--cat-strength)}.cat-pill[data-cat=core]{background:var(--cat-core-light);color:var(--cat-core)}.cat-pill[data-cat=rehab]{background:var(--cat-rehab-light);color:var(--cat-rehab)}.hero-card.rest-day{background:#edf5fa;border-top-color:#7caacc}.rest-icon{font-size:40px;margin-bottom:8px;opacity:.7}.rest-note{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-top:8px}.rest-optional{margin-top:12px;padding:12px 16px;border:1px dashed var(--border);border-radius:var(--radius-sm);font-size:14px;color:var(--text-tertiary)}.rest-optional strong{color:var(--text-secondary)}.hero-card.pre-start,.hero-card.post-complete{text-align:center;padding:40px 24px}.hero-big-number{font-family:var(--font-heading);font-weight:700;font-size:48px;color:var(--phase-accent);line-height:1.1;margin:8px 0}.hero-detail{font-size:15px;color:var(--text-secondary);line-height:1.6;margin-top:12px;max-width:400px;margin-left:auto;margin-right:auto}#workout{margin-top:20px}.workout-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 2px}.workout-title{font-family:var(--font-heading);font-weight:600;font-size:18px}.workout-note{padding:10px 16px;background:var(--bg-muted);border-radius:var(--radius-sm);font-size:13px;color:var(--text-secondary);margin-bottom:12px;font-style:italic}.exercise-card{background:var(--card-bg, var(--bg-card));border:2px solid var(--card-accent, var(--border));border-radius:12px;margin-bottom:10px;overflow:hidden;transition:box-shadow .15s ease,transform .15s ease}.exercise-card[data-category=cardio]{--card-accent: var(--cat-cardio);--card-bg: var(--cat-cardio-light)}.exercise-card[data-category=mobility]{--card-accent: var(--cat-mobility);--card-bg: var(--cat-mobility-light)}.exercise-card[data-category=strength]{--card-accent: var(--cat-strength);--card-bg: var(--cat-strength-light)}.exercise-card[data-category=core]{--card-accent: var(--cat-core);--card-bg: var(--cat-core-light)}.exercise-card[data-category=rehab]{--card-accent: var(--cat-rehab);--card-bg: var(--cat-rehab-light)}.exercise-card[open]{box-shadow:3px 3px 0 var(--card-accent, var(--border))}.exercise-summary{list-style:none;display:flex;align-items:flex-start;padding:var(--card-pad) var(--card-pad) var(--card-pad) calc(var(--card-pad) - 0px);cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;min-height:56px;gap:10px}.exercise-summary::-webkit-details-marker{display:none}.exercise-info{flex:1;min-width:0}.exercise-name-row{display:flex;align-items:center;gap:8px}.cat-dot{display:none}.exercise-name{font-family:var(--font-heading);font-weight:600;font-size:16px;color:var(--text-primary)}.exercise-params{font-size:14px;color:var(--text-secondary);margin-top:2px}.exercise-why-short{font-size:13px;color:var(--text-tertiary);margin-top:2px}.exercise-check{flex-shrink:0;margin-top:2px}.exercise-check input[type=checkbox]{width:22px;height:22px;accent-color:var(--card-accent, var(--phase-accent));cursor:pointer}.chevron{flex-shrink:0;width:20px;height:20px;color:var(--text-tertiary);transition:transform .2s ease;margin-top:3px}details[open] .chevron{transform:rotate(90deg)}.exercise-detail{padding:0 var(--card-pad) var(--card-pad);animation:fadeSlide .2s ease}@keyframes fadeSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.how-block{background:var(--bg-muted);border-radius:10px;padding:14px 16px;margin-bottom:10px}.detail-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.how-text{font-size:14px;color:var(--text-secondary);line-height:1.6}.why-block{padding:0 2px}.why-text{font-size:13px;color:var(--text-tertiary);font-style:italic;line-height:1.5}.exercise-card.checked{opacity:.6}.exercise-card.checked .exercise-name{text-decoration:line-through;text-decoration-color:#2d2a2640}#rehab{margin-top:24px}.rehab-container{background:var(--cat-rehab-light);border-left:4px solid var(--cat-rehab);border-radius:var(--radius);padding:20px}.rehab-header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.rehab-title{font-family:var(--font-heading);font-weight:600;font-size:18px;color:var(--text-primary)}.never-skip-pill{display:inline-block;padding:2px 8px;border-radius:var(--radius-pill);background:var(--cat-rehab);color:#fff;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.rehab-subtitle{font-size:13px;color:var(--text-tertiary);font-style:italic;margin-bottom:16px}.rehab-group-label{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;margin:16px 0 8px}.rehab-group-label:first-of-type{margin-top:0}.rehab-container .exercise-card{--card-accent: var(--cat-rehab);--card-bg: #FFFFFF;border-color:var(--cat-rehab)}#week-overview{margin-top:24px}.week-label{font-family:var(--font-heading);font-weight:600;font-size:16px;margin-bottom:10px;color:var(--text-primary)}.week-strip{display:flex;gap:6px}.week-tile{flex:1;text-align:center;padding:10px 4px;border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border);min-width:0}.week-tile-day{font-family:var(--font-heading);font-weight:600;font-size:11px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:4px}.week-tile-type{font-size:10px;color:var(--text-tertiary);line-height:1.3;min-height:26px;display:flex;align-items:center;justify-content:center}.week-tile-dots{display:flex;justify-content:center;gap:3px;margin-top:6px}.week-tile-dot{width:6px;height:6px;border-radius:50%}.week-tile.today{border:2px solid var(--phase-accent);box-shadow:0 0 0 3px #0000000a;background:var(--bg-card)}.week-tile.today .week-tile-day{color:var(--phase-accent)}.week-tile.past{opacity:.45}.week-tile.rest-tile{background:var(--bg-muted)}.week-tile.completed-tile{opacity:.7}.week-tile.completed-tile .week-tile-day{text-decoration:line-through;text-decoration-color:#2d2a2640}#progress{margin-top:28px}.progress-inner{display:flex;flex-direction:column;align-items:center;gap:24px}.progress-ring-wrap{position:relative}.progress-ring-bg{stroke:var(--bg-muted)}.progress-ring-fill{stroke:var(--phase-accent);transition:stroke-dashoffset .8s ease}.progress-ring-text{font-family:var(--font-heading);font-weight:700;fill:var(--text-primary)}.progress-ring-sub{font-family:var(--font-body);fill:var(--text-tertiary)}.phase-timeline{width:100%}.phase-bar{display:flex;gap:3px;height:8px;border-radius:4px;overflow:hidden;margin-bottom:8px}.phase-bar-segment{flex:1;border-radius:4px;transition:background .4s ease}.phase-labels{display:flex;gap:3px}.phase-label-item{flex:1;text-align:center}.phase-label-name{font-family:var(--font-body);font-weight:500;font-size:11px;color:var(--text-secondary)}.phase-label-weeks{font-size:10px;color:var(--text-tertiary)}.phase-label-item.current .phase-label-name{font-weight:600;color:var(--text-primary)}#rules{margin-top:28px}.rules-toggle{list-style:none;cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;display:flex;align-items:center;justify-content:space-between;padding:12px 0}.rules-toggle::-webkit-details-marker{display:none}.rules-toggle-title{font-family:var(--font-heading);font-weight:600;font-size:18px}.rules-list{list-style:none;display:flex;flex-direction:column;gap:12px;padding-bottom:16px}.rule-item{display:flex;gap:12px;align-items:flex-start}.rule-num{width:28px;height:28px;border-radius:50%;background:var(--bg-muted);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:600;font-size:13px;color:var(--text-secondary);flex-shrink:0}.rule-text{font-size:14px;color:var(--text-secondary);line-height:1.5;padding-top:3px}.rule-text strong{color:var(--text-primary);font-weight:600}.completion-msg{text-align:center;padding:16px;font-family:var(--font-body);font-size:15px;font-weight:500;color:var(--text-secondary);animation:fadeSlide .3s ease}.page-footer{text-align:center;padding:24px 0 0;font-size:13px;color:var(--text-tertiary);font-family:var(--font-heading)}.section-fade{opacity:0;animation:fadeIn .3s ease forwards}@keyframes fadeIn{to{opacity:1}}.section-fade:nth-child(2){animation-delay:50ms}.section-fade:nth-child(3){animation-delay:.1s}.section-fade:nth-child(4){animation-delay:.15s}.section-fade:nth-child(5){animation-delay:.2s}.section-fade:nth-child(6){animation-delay:.25s}@media (min-width: 640px){:root{--page-pad: 24px;--card-pad: 20px}.page-container{max-width:640px}.hero-day{font-size:32px}.hero-type{font-size:20px}.exercise-name{font-size:17px}.week-tile-type{font-size:11px}}@media (min-width: 1024px){:root{--page-pad: 32px;--card-pad: 24px}.page-container{max-width:680px}}
