:root{color-scheme:light;--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-family:var(--font-sans);--color-bg: #f3f4f6;--color-surface: #ffffff;--color-primary: #2563eb;--color-primary-strong: #1d4ed8;--color-text: #111827;--color-text-secondary: #4b5563;--color-text-muted: #6b7280;--color-border: #e5e7eb;--color-border-strong: #9ca3af;--color-success: #16a34a;--color-success-text: #15803d;--color-warning: #d97706;--color-warning-text: #b45309;--color-danger: #dc2626;--color-danger-text: #b91c1c;--color-accent-purple: #9333ea;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-pill: 999px;--text-xs: .75rem;--text-sm: .85rem;--text-base: 1rem;--text-lg: 1.15rem;--text-xl: 1.4rem;--text-2xl: 1.6rem;--shadow-sm: 0 1px 2px rgba(17, 24, 39, .06);--shadow-md: 0 2px 12px rgba(17, 24, 39, .08)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}body:before{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top);background:var(--color-text);z-index:20}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;font-family:inherit;border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:disabled{background:var(--color-border-strong)}.btn-outline{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn-danger-outline{background:transparent;border-color:var(--color-danger);color:var(--color-danger)}.btn-sm{min-height:38px;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-block{width:100%}.alert-banner{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-danger) 30%,transparent);color:var(--color-danger-text);font-size:var(--text-sm)}.empty-state{color:var(--color-text-muted);font-size:var(--text-sm)}.install-prompt{background:var(--color-primary);color:#fff;padding:var(--space-3) var(--space-4);font-size:var(--text-sm)}.install-prompt p{margin:0 0 var(--space-1);font-weight:600}.install-prompt ol{margin:var(--space-2) 0 0;padding-left:1.25rem;opacity:.95}.install-prompt li{margin-bottom:var(--space-1)}.nav-bar{display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:env(safe-area-inset-top);z-index:10}.nav-bar-link{flex:1 1 0;padding:var(--space-2);min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md)}.nav-bar-link.active{background:var(--color-primary);color:#fff}.login-page{min-height:75vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5) var(--space-4);background:var(--color-bg)}.login-card{width:100%;max-width:360px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-6) var(--space-5);box-sizing:border-box}.login-card h1{margin:0 0 var(--space-5);font-size:var(--text-2xl);text-align:center}.login-form{display:flex;flex-direction:column}.login-form .form-field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-3)}.login-form label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.login-form input{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.login-form input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.login-form .btn{margin-top:var(--space-2)}.exercise-browse{padding:var(--space-4);max-width:100%}.exercise-browse h1{font-size:var(--text-2xl);margin:0}.exercise-browse-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.button-link{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-primary);color:#fff;text-decoration:none;font-size:var(--text-sm);font-weight:600;white-space:nowrap}.badge-custom{display:inline-block;margin-left:var(--space-2);padding:.1rem .5rem;border-radius:var(--radius-pill);background:var(--color-border);color:var(--color-text);font-size:var(--text-xs);font-weight:600;vertical-align:middle}.favorite-scope-toggle{display:inline-flex;align-items:center;min-height:40px;margin:var(--space-1) 0 var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:600;cursor:pointer}.favorite-scope-toggle[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.exercise-search{width:100%;box-sizing:border-box;padding:var(--space-3);font-size:var(--text-base);font-family:inherit;margin:0 0 var(--space-3);min-height:44px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.exercise-search:focus{outline:2px solid var(--color-primary);outline-offset:1px}.chip-row{display:flex;flex-wrap:nowrap;gap:var(--space-2);margin:0 calc(-1 * var(--space-4)) var(--space-4);padding:0 var(--space-4) var(--space-1);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chip-row::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;white-space:nowrap;padding:var(--space-2) var(--space-3);min-height:40px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);cursor:pointer}.chip-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.exercise-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.exercise-item{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.exercise-name{display:flex;align-items:center;gap:var(--space-1);font-weight:600;font-size:var(--text-base)}.exercise-meta{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.favorite-star{min-width:40px;min-height:40px;border:none;background:transparent;font-size:1.3rem;color:var(--color-border-strong);line-height:1;cursor:pointer;padding:0}.favorite-star-active{color:#f59e0b}.favorite-star:disabled{opacity:.5;cursor:not-allowed}.exercise-edit-link{margin-left:auto;min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--color-text-muted);text-decoration:none;font-size:1rem}.favorite-error{margin:var(--space-1) 0 0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 10%,transparent);color:var(--color-danger-text);font-size:var(--text-xs)}.exercise-create,.exercise-edit{padding:var(--space-4);max-width:560px}.exercise-create h1,.exercise-edit h1{font-size:var(--text-2xl);margin:0 0 var(--space-4)}.exercise-create form,.exercise-edit form{display:flex;flex-direction:column}.exercise-create form>label:not(.checkbox-label),.exercise-edit form>label:not(.checkbox-label){display:block;margin:var(--space-3) 0 var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.exercise-create input:not([type=checkbox]),.exercise-create select,.exercise-create textarea,.exercise-edit input:not([type=checkbox]),.exercise-edit select,.exercise-edit textarea{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;width:100%;box-sizing:border-box}.exercise-create textarea,.exercise-edit textarea{min-height:unset}.exercise-create input:focus,.exercise-create select:focus,.exercise-create textarea:focus,.exercise-edit input:focus,.exercise-edit select:focus,.exercise-edit textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.exercise-create fieldset,.exercise-edit fieldset{margin:var(--space-4) 0 0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}.exercise-create legend,.exercise-edit legend{padding:0 var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.muscle-checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-top:var(--space-2)}.muscle-checkbox{display:flex;align-items:center;gap:.35rem;font-size:var(--text-sm);font-weight:400;margin:0;color:var(--color-text)}.muscle-checkbox input[type=checkbox],.checkbox-label input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--color-primary)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-4) 0 var(--space-1);font-size:var(--text-base);font-weight:600;color:var(--color-text)}.helper-text{margin:0 0 var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.exercise-create button[type=submit],.exercise-edit button[type=submit]{min-height:48px;margin-top:var(--space-4);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer}.exercise-create button[type=submit]:disabled,.exercise-edit button[type=submit]:disabled{background:var(--color-border-strong);cursor:not-allowed}.plan-list{padding:var(--space-4);max-width:560px}.plan-list h1{font-size:var(--text-2xl);margin:0 0 var(--space-4)}.plan-list form{display:flex;flex-direction:column;margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.plan-list form>label{display:block;margin:var(--space-3) 0 var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.plan-list form>label:first-of-type{margin-top:0}.plan-list form input{width:100%;box-sizing:border-box;min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.plan-list form input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.plan-list form button[type=submit]{min-height:48px;margin-top:var(--space-4);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer}.plan-list form button[type=submit]:disabled{background:var(--color-border-strong);cursor:not-allowed}.plan-list-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.plan-list-items li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.plan-list-items a{flex:1 1 auto;color:var(--color-primary);font-weight:600;text-decoration:none;font-size:var(--text-base)}.plan-detail{padding:var(--space-4);max-width:640px}.plan-detail h1{font-size:var(--text-2xl);margin:0 0 var(--space-3)}.plan-deload-interval{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-secondary)}.plan-deload-interval label{font-weight:600}.plan-deload-interval input{min-height:40px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:5rem}.plan-deload-interval button{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-sm);font-weight:600;cursor:pointer}.plan-deload-interval button.btn-primary{border:none;background:var(--color-primary);color:#fff}.plan-day-list{list-style:none;margin:0 0 var(--space-5);padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.plan-day-item{padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.plan-day-name{display:inline-block;font-size:var(--text-lg);font-weight:700;margin-right:var(--space-2)}.plan-day-item>button{min-height:36px;margin:var(--space-1) var(--space-1) var(--space-1) 0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer}.plan-day-item>button[aria-label$=verschieben]{min-width:40px;font-size:var(--text-base);line-height:1}.plan-day-item>button:disabled{opacity:.4;cursor:not-allowed}.plan-day-item>button.btn-danger-outline{border-color:var(--color-danger);color:var(--color-danger)}.plan-day-rename-form,.plan-day-add-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.plan-day-rename-form label,.plan-day-add-form label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.plan-day-rename-form input,.plan-day-add-form input{min-height:40px;padding:var(--space-1) var(--space-2);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);flex:1 1 160px}.plan-day-rename-form button[type=submit],.plan-day-add-form button[type=submit]{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:none;background:var(--color-primary);color:#fff;font-weight:600;cursor:pointer}.plan-day-rename-form button[type=button],.plan-day-add-form button[type=button]{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);font-weight:600;cursor:pointer}.plan-day-add-form{margin-top:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md)}.plan-day-exercise-empty{margin:var(--space-2) 0;font-size:var(--text-sm);color:var(--color-text-muted)}.plan-day-exercise-list{list-style:none;margin:var(--space-2) 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.plan-day-exercise-item{padding:var(--space-2) var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);font-size:var(--text-sm)}.plan-day-exercise-name{display:block;font-weight:600;color:var(--color-text)}.plan-day-exercise-priority{display:inline-block;margin:var(--space-1) var(--space-2) var(--space-1) 0;padding:.1rem .5rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary-strong);font-size:var(--text-xs);font-weight:600}.plan-day-exercise-prescription{display:block;color:var(--color-text-secondary);font-size:var(--text-xs);margin-bottom:var(--space-1)}.plan-day-exercise-item>button{min-height:32px;margin:var(--space-1) var(--space-1) 0 0;padding:.2rem var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer}.plan-day-exercise-item>button.btn-danger-outline{border-color:var(--color-danger);color:var(--color-danger)}.plan-day-exercise-edit-form,.plan-day-add-exercise-panel{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.plan-day-exercise-edit-form label,.plan-day-add-exercise-panel label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary);margin-top:var(--space-1)}.plan-day-exercise-edit-form input,.plan-day-exercise-edit-form select,.plan-day-add-exercise-panel input:not([type=checkbox]),.plan-day-add-exercise-panel select{min-height:40px;padding:var(--space-1) var(--space-2);font-size:var(--text-sm);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg)}.plan-day-add-exercise-panel input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--color-primary)}.plan-day-exercise-edit-form button,.plan-day-add-exercise-panel button{min-height:40px;margin-top:var(--space-2);margin-right:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-sm);font-weight:600;cursor:pointer}.plan-day-exercise-edit-form button[type=submit],.plan-day-add-exercise-panel button.btn-primary{border:none;background:var(--color-primary);color:#fff}.week-view{padding:var(--space-4)}.week-view-header{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:var(--space-2)}.week-view-header h1{grid-column:1 / -1;grid-row:1;font-size:var(--text-xl);text-align:center;margin:0}.week-view-header button{white-space:nowrap;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:600;cursor:pointer}.week-view-today-button{display:block;min-height:40px;margin:var(--space-3) auto var(--space-4);padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-primary);background:var(--color-surface);color:var(--color-primary);font-size:var(--text-sm);font-weight:600;cursor:pointer}.week-view-day-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.week-view-day{padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.week-view-day-header{display:flex;gap:var(--space-2);align-items:baseline;font-weight:700;margin-bottom:var(--space-2)}.week-view-day-weekday{font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.week-view-day-date{font-size:var(--text-base)}.week-view-session-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.week-view-session{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg);border-radius:var(--radius-md)}.week-view-session-label{flex:1 1 auto;font-size:var(--text-sm);font-weight:600}.session-skip-reason{flex-basis:100%;margin:0;font-size:var(--text-xs);color:var(--color-text-muted)}.week-view-session-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);flex-basis:100%}.week-view-session-actions button{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;cursor:pointer}.week-view-session-actions button.btn-danger-outline{border-color:var(--color-danger);color:var(--color-danger)}.week-view-mover,.week-view-skipper{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);flex-basis:100%;margin-top:var(--space-1);padding:var(--space-2);background:var(--color-surface);border-radius:var(--radius-sm)}.week-view-mover label,.week-view-skipper label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-secondary)}.week-view-mover input,.week-view-skipper input{min-height:40px;padding:var(--space-1) var(--space-2);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.week-view-mover button,.week-view-skipper button{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-xs);font-weight:600;cursor:pointer}.week-view-mover button:first-of-type,.week-view-skipper button:first-of-type{border:none;background:var(--color-primary);color:#fff}.session-status-badge{display:inline-block;padding:.15rem .6rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;color:#fff}.session-status-planned{background:var(--color-text-muted)}.session-status-in-progress{background:var(--color-warning)}.session-status-completed{background:var(--color-success)}.session-status-skipped{background:var(--color-danger)}.session-reduced-tag{display:inline-block;padding:.15rem .6rem;border-radius:var(--radius-pill);border:1px solid var(--color-accent-purple);color:var(--color-accent-purple);font-size:var(--text-xs);font-weight:600}.session-deload-tag{display:inline-block;padding:.15rem .6rem;border-radius:var(--radius-pill);border:1px solid var(--color-primary);color:var(--color-primary);font-size:var(--text-xs);font-weight:600}.week-view-scheduler{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-3);background:var(--color-bg);border-radius:var(--radius-md)}.week-view-scheduler label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.week-view-scheduler select{min-height:44px;padding:var(--space-2);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface)}.week-view-scheduler button{min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-sm);font-weight:600;cursor:pointer}.week-view-scheduler button:first-of-type{border:none;background:var(--color-primary);color:#fff}.week-view-day>button{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px dashed var(--color-border-strong);background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer}.week-view-session-run-link{display:inline-flex;align-items:center;min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;text-decoration:none;font-size:var(--text-sm);font-weight:600}.session-runner{padding:1rem 1rem 2rem;max-width:480px;margin:0 auto;box-sizing:border-box;display:flex;flex-direction:column;gap:1rem}.session-runner-plan-context{margin:0;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.session-runner-duration{margin:.15rem 0 0;font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums;color:#6b7280}.session-runner-header{padding:.9rem 1rem;border-radius:.75rem;background:color-mix(in srgb,#2563eb 6%,transparent);border:1px solid color-mix(in srgb,#2563eb 20%,transparent)}.session-runner-header h1{margin:0 0 .3rem;font-size:1.4rem;line-height:1.2}.session-runner-setup-notes{font-size:.85rem;color:#4b5563;margin:0 0 .5rem}.session-runner-prescription{display:inline-block;margin:0;padding:.2rem .6rem;border-radius:999px;background:#2563eb;color:#fff;font-size:.8rem;font-weight:600}.session-runner-error{margin:0;padding:.6rem .75rem;border-radius:.5rem;background:color-mix(in srgb,#dc2626 10%,transparent);border:1px solid color-mix(in srgb,#dc2626 30%,transparent);color:#b91c1c;font-size:.9rem}.session-runner-set-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.session-runner-set-list-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;border-radius:.5rem;background:#f3f4f6;font-size:.9rem}.session-runner-set-list-index{min-width:4.5rem;font-weight:600;color:#16a34a}.session-runner-rest-timer{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.65rem .9rem;border-radius:.75rem;background:color-mix(in srgb,#d97706 10%,transparent);border:1px solid color-mix(in srgb,#d97706 30%,transparent)}.session-runner-rest-timer-label{font-size:1.1rem;font-weight:700;color:#b45309;font-variant-numeric:tabular-nums}.session-runner-rest-timer-done{background:color-mix(in srgb,#6b7280 10%,transparent);border-color:color-mix(in srgb,#6b7280 30%,transparent)}.session-runner-rest-timer-done .session-runner-rest-timer-label{color:#4b5563}.session-runner-rest-timer-skip{min-height:44px;padding:.4rem .75rem;border-radius:.5rem;border:1px solid #d97706;background:transparent;color:#b45309;font-size:.85rem;font-weight:600;white-space:nowrap}.session-runner-rest-timer-done .session-runner-rest-timer-skip{border-color:#9ca3af;color:#4b5563}.session-runner-confirm{display:flex;flex-direction:column;gap:.85rem;padding:1rem;border-radius:.75rem;border:1px solid #e5e7eb;background:#fff}.session-runner-set-progress{margin:0;font-weight:600;color:#374151}.session-runner-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.session-runner-field{display:flex;flex-direction:column;gap:.3rem}.session-runner-field label{font-size:.78rem;font-weight:600;color:#4b5563}.session-runner-input{min-height:48px;width:100%;box-sizing:border-box;padding:.5rem .65rem;font-size:1.1rem;border:1px solid #9ca3af;border-radius:.5rem;background:#fff;color:inherit}.session-runner-input:focus{outline:2px solid #2563eb;outline-offset:1px}.session-runner-rir{display:flex;flex-direction:column;gap:.4rem}.session-runner-rir-label{font-size:.78rem;font-weight:600;color:#4b5563}.session-runner-rir-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem}.session-runner-rir-chip{min-height:52px;border-radius:.6rem;border:2px solid #9ca3af;background:#fff;color:inherit;font-size:1.15rem;font-weight:700}.session-runner-rir-chip-selected{border-color:#2563eb;background:#2563eb;color:#fff}.session-runner-confirm-button{min-height:64px;font-size:1.2rem;font-weight:700;border-radius:.5rem;background:#2563eb;color:#fff;border:none}.session-runner-confirm-button:disabled{background:#9ca3af}.session-runner-exercise-done{margin:0;padding:.75rem 1rem;border-radius:.75rem;background:color-mix(in srgb,#16a34a 10%,transparent);border:1px solid color-mix(in srgb,#16a34a 30%,transparent);color:#15803d;font-weight:600;text-align:center}.session-runner-nav{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.session-runner-nav-button{min-height:44px;padding:.5rem .9rem;border-radius:.5rem;border:1px solid #9ca3af;background:transparent;color:inherit;font-size:.9rem}.session-runner-nav-button:disabled{opacity:.4}.session-runner-nav-position{font-size:.85rem;font-weight:600;color:#6b7280}.session-runner-complete-button{min-height:48px;padding:.5rem .75rem;border-radius:.5rem;border:1px solid #dc2626;background:transparent;color:#dc2626;font-size:.95rem;font-weight:600}.session-runner-complete-button:disabled{opacity:.5}.session-runner-substituted-note{margin:.25rem 0 0;font-size:var(--text-sm);font-weight:600;color:var(--color-primary)}.session-runner-substitute-button{margin-top:var(--space-2);min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer}.substitute-panel{margin:var(--space-3) 0;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.substitute-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.substitute-panel-header h2{margin:0;font-size:var(--text-lg)}.substitute-panel-close{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer}.substitute-panel-hint{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.substitute-panel-search{width:100%;min-height:44px;margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.substitute-panel-list{list-style:none;margin:0;padding:0;max-height:50vh;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-2)}.substitute-panel-option{width:100%;min-height:48px;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-family:inherit;text-align:left;cursor:pointer}.substitute-panel-option:disabled{opacity:.6;cursor:not-allowed}.substitute-panel-option-name{font-size:var(--text-base);font-weight:600}.substitute-panel-option-meta{font-size:var(--text-xs);color:var(--color-text-muted)}.session-runner-reduced-badge{display:inline-block;margin-left:var(--space-2);padding:.05rem .5rem;border-radius:var(--radius-pill);border:1px solid var(--color-accent-purple);color:var(--color-accent-purple);font-size:var(--text-xs);font-weight:700}.session-runner-excluded{margin:var(--space-4) 0;padding:var(--space-3);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-secondary)}.session-runner-excluded h2{margin:0 0 var(--space-2);font-size:var(--text-base)}.session-runner-excluded ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.session-runner-excluded li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.session-runner-excluded-button{min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-primary);background:var(--color-surface);color:var(--color-primary);font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer}.day-start{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.day-start-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.day-start-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.day-start-item-dropped{opacity:.55;border-style:dashed}.day-start-item-main{display:flex;flex-direction:column;gap:.1rem;min-width:0}.day-start-item-name{font-weight:600}.day-start-item-meta{font-size:var(--text-sm);color:var(--color-text-muted)}.day-start-toggle{flex:0 0 auto;min-height:40px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;font-size:var(--text-sm);font-weight:600;font-family:inherit;cursor:pointer}.day-start-toggle[aria-pressed=false]{background:var(--color-surface);color:var(--color-text-secondary);border-color:var(--color-border-strong)}.day-start-lock{flex:0 0 auto;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.day-start-summary{margin:0;font-size:var(--text-sm);color:var(--color-text-secondary)}.day-start-reduce-button{align-self:flex-start;min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-weight:600;font-family:inherit;cursor:pointer}.day-start-reduce{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.day-start-reduce label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.day-start-mode,.day-start-amount{display:flex;gap:var(--space-2)}.day-start-amount input{flex:1 1 auto;min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:inherit;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.day-start-calc-button{flex:0 0 auto;min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;font-weight:600;font-family:inherit;cursor:pointer}.day-start-calc-button:disabled{opacity:.6;cursor:not-allowed}.day-start-hint{margin:0;font-size:var(--text-xs);color:var(--color-text-muted)}
