.sidebar{width:220px;min-height:100vh;background:#1a1a2e;display:flex;flex-direction:column;padding:0;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar__brand{display:flex;align-items:center;gap:10px;padding:28px 20px 24px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:8px}.sidebar__brand-icon{font-size:20px;line-height:1}.sidebar__brand-name{font-family:Inter,DM Sans,system-ui,sans-serif;font-size:15px;font-weight:600;color:#fff;letter-spacing:.02em}.sidebar__nav{list-style:none;padding:4px 10px;flex:1}.sidebar__item{display:flex;align-items:center;gap:11px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:8px;cursor:pointer;text-align:left;transition:background .15s ease;margin-bottom:2px}.sidebar__item:hover:not(:disabled){background:#ffffff12}.sidebar__item--active{background:#ff5c1a24;border-left:3px solid #FF5C1A;padding-left:9px}.sidebar__item--active:hover:not(:disabled){background:#ff5c1a33}.sidebar__item--disabled{cursor:default;opacity:.45}.sidebar__item-icon{display:flex;align-items:center;flex-shrink:0;width:18px;height:18px;color:#fff6;transition:color .15s ease}.sidebar__item:hover:not(:disabled) .sidebar__item-icon{color:#fffc}.sidebar__item--active .sidebar__item-icon{color:#ff5c1a}.sidebar__item-label{font-family:Inter,DM Sans,system-ui,sans-serif;font-size:13.5px;font-weight:400;color:#fff;letter-spacing:.01em}.sidebar__standalone,.sidebar__group{margin-bottom:16px}.sidebar__group-label{font-family:Inter,DM Sans,system-ui,sans-serif;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#ffffff4d;padding:4px 12px 6px;-webkit-user-select:none;user-select:none}.sidebar__group-nav{list-style:none}.sidebar__sub{list-style:none;padding:0 0 4px 40px}.sidebar__sub-item{display:block;width:100%;padding:6px 10px;background:transparent;border:none;font-family:Inter,DM Sans,system-ui,sans-serif;font-size:12px;color:#ffffff80;text-align:left;cursor:default;opacity:.7}.sidebar__user{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-top:1px solid rgba(255,255,255,.07);margin-top:auto}.sidebar__user-btn{display:flex;align-items:center;gap:8px;overflow:hidden;flex:1;min-width:0;background:transparent;border:none;border-radius:6px;cursor:pointer;padding:4px 6px;margin:-4px -6px;text-align:left;transition:background .15s ease}.sidebar__user-btn:hover{background:#ffffff14}.sidebar__user-btn--active{background:#ffffff1f}.sidebar__user-btn--active:hover{background:#ffffff26}.sidebar__user-avatar{display:flex;align-items:center;color:#ffffff80;flex-shrink:0}.sidebar__user-name{font-family:Inter,DM Sans,system-ui,sans-serif;font-size:13px;font-weight:500;color:#ffffffbf;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__logout{display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#fff6;transition:background .15s ease,color .15s ease;flex-shrink:0}.sidebar__logout:hover{background:#ffffff14;color:#fffc}.dashboard{background:var(--color-bg);min-height:100%;padding:24px 32px;font-family:var(--font-body);color:var(--color-text);box-sizing:border-box}.dashboard__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:16px}.dashboard__title{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--color-text);letter-spacing:.04em;line-height:1;text-transform:uppercase}.dashboard__welcome-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid #FF5C1A;border-radius:12px;padding:14px 20px;margin-bottom:16px;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 12px}.dashboard__welcome-greeting{font-family:var(--font-display);font-size:17px;font-weight:600;color:var(--color-text);white-space:nowrap;letter-spacing:.01em}.dashboard__welcome-sep{color:#ccc;font-size:14px}.dashboard__welcome-right{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}.dashboard__welcome-minutes{display:inline-flex;align-items:baseline;gap:3px}.dashboard__welcome-minutes-value{font-size:16px;font-weight:600;color:var(--color-text);line-height:1}.dashboard__welcome-minutes-unit{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.07em}.dashboard__ziele-row{display:flex;flex-wrap:wrap;gap:6px}.dashboard__ziel-chip{display:inline-block;padding:3px 10px;border-radius:20px;border:1px solid rgba(92,107,192,.3);background:#5c6bc014;color:#5c6bc0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.dashboard__today-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted);white-space:nowrap}.dashboard__today-label--muted{font-size:13px;font-weight:400;color:#bbb;font-style:italic}.dashboard__today-value{font-size:13px;font-weight:500;color:#5c6bc0}.dashboard__chart-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px 24px;margin-bottom:20px}.dashboard__chart-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.dashboard__chart-title{display:flex;align-items:baseline;gap:6px;font-size:15px;font-weight:600;color:var(--color-text)}.dashboard__chart-unit{font-size:12px;font-weight:400;color:var(--color-text-muted)}.dashboard__chart-svg{display:block;width:100%}.dashboard__period-pills{display:flex;gap:6px}.dashboard__pill{padding:5px 14px;border-radius:20px;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:400;background:#e0e0e0;color:#666;transition:background .15s,color .15s}.dashboard__pill:hover:not(.dashboard__pill--active){background:#d4d4d4;color:#444}.dashboard__pill--active{background:#5c6bc0;color:#fff;font-weight:600}.dashboard__metric-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.metric-tag{display:inline-block;padding:4px 12px;border-radius:20px;border:1px solid var(--color-border-strong);font-size:12px;color:#666;background:transparent;white-space:nowrap;cursor:pointer;font-family:inherit;transition:border-color .15s,color .15s,background .15s}.metric-tag:hover:not(.metric-tag--active){border-color:#b0b0b0;color:#444}.metric-tag--active{border-color:#7986cb;color:#5c6bc0;background:#7986cb14}.kpi-card__trend{font-size:11px;font-weight:500;margin-top:4px;line-height:1}.kpi-card__trend--up{color:#4caf50}.kpi-card__trend--down{color:#ef4444}.kpi-card__trend--neutral{color:#999}.dashboard__kpi-row{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:4px}@media (max-width: 1100px){.dashboard__kpi-row{grid-template-columns:repeat(3,1fr)}}@media (max-width: 700px){.dashboard__kpi-row{grid-template-columns:repeat(2,1fr)}.dashboard{padding:24px 20px}}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:16px 18px}.kpi-card__value{font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--color-text);line-height:1;margin-bottom:8px;letter-spacing:.01em}.kpi-card__unit{font-family:var(--font-body);font-size:14px;font-weight:400;color:var(--color-text-muted);margin-left:4px}.kpi-card__label{font-size:11px;font-weight:400;color:var(--color-text-muted);letter-spacing:.02em;text-transform:uppercase}.dashboard__section-tag{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:10px}.dashboard__garmin-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px 20px;margin-top:12px}.dashboard__garmin-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.dashboard__recent{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px 20px;margin-top:12px}.dashboard__section-title{font-size:15px;font-weight:600;color:var(--color-text);margin:0 0 16px}.dashboard__recent-item{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border-subtle)}.dashboard__recent-item:last-child{border-bottom:none;padding-bottom:0}.dashboard__recent-date{font-size:12px;color:var(--color-text-muted);white-space:nowrap;min-width:90px}.dashboard__recent-name{font-size:14px;font-weight:500;color:var(--color-text);flex:1}.dashboard__recent-meta{font-size:12px;color:var(--color-text-dim);white-space:nowrap}.dashboard__recent-empty{font-size:14px;color:var(--color-text-muted);margin:0}.routine-list__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.routine-list__header-actions{display:flex;align-items:center;gap:8px}.routine-import-group{display:flex;align-items:center;gap:4px}.routine-import-info-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-dim);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s;flex-shrink:0;font-family:var(--font-body)}.routine-import-info-btn:hover{border-color:#5c6bc0;color:#5c6bc0}.routine-import-status{margin-bottom:16px;padding:10px 14px;border-radius:8px;font-size:13px;font-family:var(--font-body)}.routine-import-status--success{background:#4caf501a;color:#388e3c;border:1px solid rgba(76,175,80,.3)}.routine-import-status--error{background:#ef444414;color:#c62828;border:1px solid rgba(239,68,68,.25)}.import-infobox{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px 24px;margin-bottom:24px;max-width:760px}.import-infobox__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.import-infobox__title{font-size:14px;font-weight:600;color:var(--color-text);font-family:var(--font-body)}.import-infobox__close{background:none;border:none;cursor:pointer;font-size:14px;color:var(--color-text-muted);padding:2px 6px;border-radius:4px;line-height:1;transition:color .15s}.import-infobox__close:hover{color:var(--color-text-secondary)}.import-infobox__desc{font-size:13px;color:#666;margin-bottom:12px;line-height:1.5;font-family:var(--font-body)}.import-infobox__prompt{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:12px 14px;font-size:12px;font-family:Menlo,Consolas,Monaco,monospace;color:#333;white-space:pre-wrap;line-height:1.6;margin-bottom:12px;overflow-x:auto}.import-infobox__copy-btn{align-self:flex-start}.routine-list__header h2{font-family:var(--font-body);font-size:28px;font-weight:300;color:var(--color-text);letter-spacing:-.01em;line-height:1.2}.routine-list__empty{text-align:center;padding:64px 32px}.routine-list__empty-icon{display:flex;justify-content:center;margin-bottom:16px}.routine-list__empty-title{font-size:16px;font-weight:600;color:#444;margin-bottom:6px}.routine-list__empty-body{font-size:13px;color:var(--color-text-muted);margin-bottom:20px;line-height:1.5}.routine-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 1100px){.routine-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 800px){.routine-grid{grid-template-columns:repeat(2,1fr)}}.routine-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:18px 20px 16px;cursor:pointer;transition:transform .15s ease,border-color .15s ease;display:flex;flex-direction:column;gap:0;outline:none}.routine-card:hover{transform:translateY(-2px);border-color:var(--color-border-strong)}.routine-card:focus-visible{outline:2px solid #5c6bc0;outline-offset:2px}.routine-card__top{display:flex;align-items:center;margin-bottom:10px}.routine-card__count-badge{font-size:11px;font-weight:600;letter-spacing:.04em;padding:3px 9px;border-radius:20px;color:#5c6bc0;background:#5c6bc01a}.routine-card__type-badge{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:20px;margin-left:6px}.routine-card__type-badge--cardio{background:#00bcd41a;color:#00bcd4}.routine-card__name{font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--color-text);letter-spacing:-.01em;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.routine-card__desc{font-size:12px;color:var(--color-text-muted);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.routine-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid var(--color-surface-2)}.routine-card__btn-view{padding:5px 12px;background:transparent;color:#5c6bc0;border:1px solid rgba(92,107,192,.35);border-radius:6px;font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.routine-card__btn-view:hover{background:#5c6bc014;border-color:#5c6bc080}.routine-card__actions{display:flex;align-items:center;gap:6px}.routine-card__btn-print{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s}.routine-card__btn-print:hover{background:#5c6bc014;color:#5c6bc0;border-color:#5c6bc059}.routine-card__btn-edit{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);cursor:pointer;transition:background .15s,color .15s}.routine-card__btn-edit:hover{background:var(--color-surface-2);color:var(--color-text-secondary);border-color:var(--color-border-strong)}.routine-card__btn-delete{padding:5px 10px;background:#ef444412;color:#ef4444;border:1px solid rgba(239,68,68,.2);border-radius:6px;font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.routine-card__btn-delete:hover{background:#ef4444;color:#fff;border-color:#ef4444}.routine-print-only{display:none}@media print{.routine-print-only{display:block;font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:11pt;color:#000;background:#fff;padding:0;margin:0}.rp-header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #000;padding-bottom:6pt;margin-bottom:16pt}.rp-app-name{font-size:14pt;font-weight:700;letter-spacing:-.02em}.rp-date{font-size:10pt;color:#444}.rp-routine{margin-bottom:20pt;page-break-inside:avoid}.rp-routine__name{font-size:13pt;font-weight:700;margin-bottom:2pt;color:#000}.rp-routine__desc{font-size:9pt;color:#555;margin-bottom:6pt;font-style:italic}.rp-table{width:100%;border-collapse:collapse;font-size:10pt}.rp-th{background:#000;color:#fff;text-align:left;padding:4pt 6pt;font-weight:600;font-size:9pt;white-space:nowrap}.rp-tr:nth-child(2n){background:#f5f5f5}.rp-td{border:1px solid #bbb;padding:5pt 6pt;height:22pt;vertical-align:middle;word-break:break-word}.rp-empty{color:#999;font-style:italic;text-align:center}.rp-col-nr{width:28pt;text-align:center}.rp-col-name{width:auto}.rp-col-stats{width:80pt;white-space:nowrap}.rp-col-weight{width:68pt}.rp-col-rating{width:52pt;text-align:center}.rp-col-notes{width:130pt}}.routines-detail-content{max-width:960px;margin-inline:auto}.routine-detail__header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.routine-detail__header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.routine-detail__title{font-family:var(--font-body);font-size:28px;font-weight:300;color:var(--color-text);letter-spacing:-.02em;line-height:1.2;margin-bottom:8px}.routine-detail__description{font-size:14px;color:#666;line-height:1.6;margin-bottom:24px}.routine-detail__exercises-label{font-family:var(--font-body);font-size:11px;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.routine-detail__exercise-list{list-style:none;display:flex;flex-direction:column;gap:6px}.exercise-item{display:flex;align-items:center;gap:14px;padding:11px 16px;border-radius:8px;background:var(--color-surface-3);border:1px solid var(--color-border-subtle);transition:background .1s ease}.exercise-item:hover{background:var(--color-surface-2)}.exercise-item__index{font-family:var(--font-body);font-size:12px;font-weight:600;color:#ccc;min-width:18px;text-align:right;flex-shrink:0}.exercise-item__name{flex:1;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--color-text);line-height:1.3}.exercise-item__stats{display:flex;align-items:center;gap:6px;flex-shrink:0}.exercise-item__stat{font-family:var(--font-body);font-size:12px;font-weight:600;padding:3px 10px;border-radius:6px}.exercise-item__stat--sets{color:var(--color-text-dim);background:var(--color-bg)}.exercise-item__stat--reps{color:#5c6bc0;background:#5c6bc01a}.exercise-item__stat--duration,.exercise-item__stat--cardio{color:#00bcd4;background:#00bcd41a}.exercise-item__stat-sep{font-size:12px;color:#ccc}.exercise-item--expandable{cursor:pointer;flex-wrap:wrap}.exercise-item__toggle{font-size:14px;color:#ccc;flex-shrink:0;transition:transform .2s ease,color .2s ease;display:inline-block;line-height:1}.exercise-item__toggle--open{transform:rotate(90deg);color:#5c6bc0}.exercise-item__desc{width:100%;font-size:13px;color:#777;line-height:1.55;margin:4px 0 0 32px;padding-top:8px;border-top:1px solid #f0f0f0}.exercise-item__expanded{width:100%;padding-top:12px;border-top:1px solid #f0f0f0;margin-top:4px;display:flex;flex-direction:column;gap:12px}.exercise-item__img{width:100%;height:auto;display:block;border-radius:6px}.exercise-item__instructions{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.exercise-item__instructions li{font-size:13px;color:#555;line-height:1.55}.routine-detail__empty{text-align:center;color:var(--color-text-muted);font-size:13px;padding:32px;border:1px dashed var(--color-border-strong);border-radius:8px}.routines-form-content{max-width:760px}.routine-form__header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}.routine-form__header h2{font-family:var(--font-body);font-size:1.5rem;font-weight:300;color:var(--color-text);letter-spacing:-.01em;flex:1}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:var(--space-2)}.form-group input,.form-group textarea{width:100%;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius);padding:var(--space-3) var(--space-4);color:var(--color-text);font-family:var(--font-body);font-size:.9375rem;font-weight:400;line-height:1.4;min-height:44px;transition:var(--transition-fast)}.form-group input::placeholder,.form-group textarea::placeholder{color:silver}.form-group input:hover,.form-group textarea:hover{border-color:var(--color-border-hover)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.form-group input.is-invalid,.form-group textarea.is-invalid{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f}.field-error{font-size:.875rem;color:#ef4444;margin-top:var(--space-1)}.exercises-header{display:flex;justify-content:space-between;align-items:center;margin:var(--space-6) 0 var(--space-3)}.exercises-header h3{font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.06em}.exercises-empty{text-align:center;color:var(--color-text-muted);font-size:.875rem;padding:var(--space-6);border:1px dashed var(--color-border-strong);border-radius:var(--radius);margin-bottom:var(--space-3)}.exercise-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2);transition:var(--transition-fast)}.exercise-row:hover{border-color:var(--color-border-strong)}.exercise-row__fields{display:grid;grid-template-columns:1fr 72px 72px 72px auto;gap:var(--space-2);align-items:end}.exercise-row__fields .form-group{margin-bottom:0}.exercise-row__fields input[type=number]{text-align:center;font-family:var(--font-body);font-size:.9375rem;font-weight:600;padding:var(--space-3) var(--space-2)}.routine-type-toggle{display:flex;gap:var(--space-1);margin-bottom:var(--space-4)}.routine-type-toggle button{font-family:var(--font-body);font-size:.875rem;font-weight:600;padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--color-border-strong);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:var(--transition-fast)}.routine-type-toggle button:hover{border-color:var(--color-border-hover);color:var(--color-text-secondary)}.routine-type-toggle button.active{background:#5c6bc01a;border-color:#5c6bc0;color:#5c6bc0}.exercise-row__fields--cardio{grid-template-columns:1fr 80px auto}.exercise-type-toggle{display:flex;gap:var(--space-1);margin-bottom:var(--space-2)}.exercise-type-toggle button{font-family:var(--font-body);font-size:.75rem;font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--color-border-strong);background:transparent;color:var(--color-text-muted);cursor:pointer;letter-spacing:.03em;transition:var(--transition-fast)}.exercise-type-toggle button:hover{border-color:var(--color-border-hover);color:var(--color-text-secondary)}.exercise-type-toggle button.active{background:#5c6bc01a;border-color:#5c6bc0;color:#5c6bc0}.exercise-row__label-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-2)}.exercise-row__label-row label{margin-bottom:0}.exercise-row__library-btn{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#5c6bc0;background:transparent;border:none;cursor:pointer;padding:0;transition:color .15s}.exercise-row__library-btn:hover{color:#3d4fa8}.exercise-picker__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:transparent}.exercise-picker{position:relative;z-index:11;margin-top:6px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;max-height:280px}.exercise-picker__search-wrap{padding:8px;border-bottom:1px solid var(--color-border-subtle);flex-shrink:0}.exercise-picker__search{width:100%;background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:6px;padding:7px 12px;font-family:var(--font-body);font-size:13px;color:var(--color-text);outline:none;transition:border-color .15s,box-shadow .15s}.exercise-picker__search:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc01f;background:var(--color-surface)}.exercise-picker__list{overflow-y:auto;flex:1;padding:4px 0}.exercise-picker__category{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bbb;padding:10px 12px 4px}.exercise-picker__item{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;padding:7px 12px;background:transparent;border:none;cursor:pointer;font-family:var(--font-body);transition:background .1s}.exercise-picker__item-name{font-size:13px;color:#333;line-height:1.4}.exercise-picker__item-desc{font-size:11px;color:#aaa;line-height:1.4;margin-top:1px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exercise-picker__item:hover,.exercise-picker__item:focus-visible{background:#5c6bc012;color:var(--color-text);outline:none}.exercise-picker__empty{padding:16px 12px;font-size:13px;color:var(--color-text-muted);text-align:center}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.workout-session{box-sizing:border-box;padding:40px 48px;max-width:900px;margin-inline:auto;display:flex;flex-direction:column;gap:0}@media (max-width: 600px){.workout-session{padding:24px 16px}}.workout-session__header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.workout-session__title{flex:1;font-family:Inter,Roboto,system-ui,sans-serif;font-size:24px;font-weight:300;color:#1a1a1a;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-session__timer{font-family:Inter,Roboto,system-ui,sans-serif;font-size:28px;font-weight:300;color:#5c6bc0;letter-spacing:.02em;font-variant-numeric:tabular-nums;flex-shrink:0}.workout-session__pause-bar{display:flex;align-items:center;gap:12px;background:#5c6bc014;border:1px solid rgba(92,107,192,.2);border-radius:8px;padding:10px 16px;margin-bottom:20px}.workout-session__pause-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#5c6bc0}.workout-session__pause-countdown{font-family:Inter,Roboto,system-ui,sans-serif;font-size:20px;font-weight:300;color:#5c6bc0;font-variant-numeric:tabular-nums;flex:1}.workout-session__exercises{display:flex;flex-direction:column;gap:8px;margin-bottom:32px}.workout-session__empty{text-align:center;padding:32px;color:#999;font-size:14px;border:1px dashed #d0d0d0;border-radius:8px}.workout-ex{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.workout-ex__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.workout-ex__name{font-family:Inter,Roboto,system-ui,sans-serif;font-size:15px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.workout-ex__rating{display:flex;gap:4px;flex-shrink:0}.workout-ex__rating-btn{width:32px;height:32px;background:none;border:1.5px solid #e8e8e8;border-radius:8px;font-size:16px;cursor:pointer;transition:border-color .15s,background .15s;display:flex;align-items:center;justify-content:center;padding:0}.workout-ex__rating-btn:hover{border-color:#d0d0d0;background:#f5f5f5}.workout-ex__rating-btn--active{border-color:#5c6bc0;background:#5c6bc01a}.workout-ex__inputs{display:flex;gap:12px;flex-wrap:wrap}.workout-ex__input-group{display:flex;flex-direction:column;gap:4px}.workout-ex__input-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.workout-ex__input-with-unit{display:flex;align-items:center;gap:4px}.workout-ex__input{width:64px;padding:6px 8px;font-size:14px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#f7f7f7;border:1px solid #e0e0e0;border-radius:6px;outline:none;text-align:center;transition:border-color .15s,background .15s}.workout-ex__input:focus{border-color:#5c6bc0;background:#fff;box-shadow:0 0 0 3px #5c6bc01f}.workout-ex__unit{font-size:12px;color:#999}.workout-ex__sets-row{display:flex;align-items:center;gap:8px}.workout-ex__set-adjust{width:28px;height:28px;border-radius:6px;border:1.5px solid #d8d8d8;background:#fff;color:#888;font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s,background .15s;flex-shrink:0;line-height:1;padding:0}.workout-ex__set-adjust:hover:not(:disabled){border-color:#5c6bc0;color:#5c6bc0;background:#5c6bc00f}.workout-ex__set-adjust:disabled{opacity:.35;cursor:not-allowed}.workout-ex__sets{display:flex;gap:6px;flex-wrap:wrap;flex:1}.workout-ex__set-btn{width:36px;height:36px;border-radius:8px;border:1.5px solid #d8d8d8;background:#fff;color:#aaa;font-family:Inter,Roboto,system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s;display:flex;align-items:center;justify-content:center}.workout-ex__set-btn:hover{border-color:#5c6bc0;color:#5c6bc0;background:#5c6bc00f}.workout-ex__set-btn--done{background:#5c6bc0;border-color:#5c6bc0;color:#fff}.workout-ex__set-btn--done:hover{background:#4a5ab0;border-color:#4a5ab0;color:#fff}.workout-ex__cardio-row{display:flex;align-items:center;gap:16px}.workout-ex__cardio-duration{font-size:15px;font-weight:600;color:#00bcd4;min-width:60px}.workout-ex__cardio-done{padding:8px 20px;border-radius:8px;border:1.5px solid #d8d8d8;background:#fff;color:#888;font-family:Inter,Roboto,system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.workout-ex__cardio-done:hover{border-color:#00bcd4;color:#00bcd4;background:#00bcd40f}.workout-ex__cardio-done--active{background:#00bcd4;border-color:#00bcd4;color:#fff}.workout-ex__cardio-done--active:hover{background:#00a8be;border-color:#00a8be;color:#fff}.workout-step__card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:48px;display:flex;flex-direction:column;gap:28px;width:100%;box-sizing:border-box}@media (max-width: 600px){.workout-step__card{padding:28px 20px;gap:20px}}.workout-step__card--pause{background:#5c6bc00f;border-color:#5c6bc033;align-items:center;text-align:center;padding-top:72px;padding-bottom:72px}.workout-step__ex-progress{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#999}.workout-step__ex-name{font-family:Inter,Roboto,system-ui,sans-serif;font-size:40px;font-weight:300;color:#1a1a1a;letter-spacing:-.02em;line-height:1.15;word-break:break-word}@media (max-width: 600px){.workout-step__ex-name{font-size:28px}}.workout-step__ex-img{width:100%;height:auto;display:block;border-radius:8px}.workout-step__instructions{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}.workout-step__instructions li{font-size:13px;color:#555;line-height:1.55}.workout-step__ex-desc{font-size:14px;color:#888;line-height:1.55;margin:-12px 0 0}.workout-step__set-info{font-size:18px;color:#888;font-weight:400;margin-top:-8px}.workout-step__cardio-duration{font-size:28px;font-weight:300;color:#00bcd4;letter-spacing:-.01em}.workout-step__inputs{display:flex;gap:20px;flex-wrap:wrap;padding:20px 24px;background:#f7f7f7;border-radius:12px}.workout-step__card .workout-ex__input{width:88px;padding:10px 12px;font-size:18px;border-radius:8px}.workout-step__card .workout-ex__input-label{font-size:11px}.workout-step__card .workout-ex__unit{font-size:14px}.workout-step__cta{width:100%;padding:16px 24px;font-size:16px;border-radius:12px;letter-spacing:.01em;justify-content:center}.workout-step__pause-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#5c6bc0}.workout-step__pause-timer{font-family:Inter,Roboto,system-ui,sans-serif;font-size:96px;font-weight:200;color:#5c6bc0;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.02em}@media (max-width: 600px){.workout-step__pause-timer{font-size:72px}}.workout-step__card--pause .btn{min-width:180px}.workout-step__rate-exname{font-size:22px;font-weight:600;color:#1a1a1a}.workout-step__rate-label{font-size:16px;color:#888;margin-top:-8px}.workout-step__rate-buttons{display:flex;gap:20px;flex-wrap:wrap}.workout-step__rate-btn{width:88px;height:88px;border-radius:16px;border:2px solid #e8e8e8;background:#fff;font-size:40px;cursor:pointer;transition:border-color .15s,background .15s;display:flex;align-items:center;justify-content:center;padding:0}.workout-step__rate-btn:hover{border-color:#d0d0d0;background:#f5f5f5}.workout-step__rate-btn--active{border-color:#5c6bc0;background:#5c6bc01a}.workout-step__summary-title{font-size:32px;font-weight:300;color:#1a1a1a;letter-spacing:-.01em}.workout-step__summary-stats{font-size:16px;color:#888;margin-top:-8px}.workout-step__next{font-size:12px;color:#aaa;margin:0}.workout-progress{width:100%;height:6px;background:#e8e8e8;border-radius:3px;margin-bottom:24px;overflow:hidden}.workout-progress__fill{height:100%;background:#5c6bc0;border-radius:3px;transition:width .3s ease}.workout-session__notes{margin-bottom:0}.workout-session__notes-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:6px}.workout-session__notes-input{width:100%;padding:9px 12px;font-size:14px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;outline:none;resize:vertical;min-height:60px;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.workout-session__notes-input:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.workout-config{display:flex;flex-direction:column;gap:0}.workout-config__hint{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin:0 0 12px}.workout-config__list{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.workout-config__empty{font-size:14px;color:#999;padding:16px 0}.workout-config__row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:12px 16px}.workout-config__ex-name{flex:1;font-size:15px;font-weight:600;color:#1a1a1a;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workout-config__sets-ctrl{display:flex;align-items:center;gap:8px;flex-shrink:0}.workout-config__set-btn{width:32px;height:32px;border-radius:8px;border:1.5px solid #d8d8d8;background:#fff;color:#5c6bc0;font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.workout-config__set-btn:hover:not(:disabled){border-color:#5c6bc0;background:#5c6bc014}.workout-config__set-btn:disabled{color:#d0d0d0;cursor:not-allowed}.workout-config__set-count{font-size:14px;font-weight:600;color:#1a1a1a;min-width:52px;text-align:center}.workout-config__cardio-info{font-size:12px;font-weight:600;color:#00bcd4;background:#00bcd41a;border-radius:6px;padding:4px 10px;flex-shrink:0}.workout-config__start-btn{width:100%}.workout-step__instructions-toggle{align-self:flex-start;font-size:12px;padding:5px 12px;color:#5c6bc0;border-color:#5c6bc04d}.workout-step__instructions-toggle:hover{border-color:#5c6bc0;background:#5c6bc00f;color:#5c6bc0}.workout-session__footer{display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid #e8e8e8}.workout-session__progress{font-family:Inter,Roboto,system-ui,sans-serif;font-size:13px;color:#888}.calendar-view{display:flex;flex-direction:column;height:100%;min-height:100vh;background:#f0f0f0;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#fff;border-bottom:1px solid #e8e8e8;flex-shrink:0}.calendar-header__title{font-size:22px;font-weight:300;color:#1a1a1a;letter-spacing:-.01em;margin:0}.calendar-header__controls{display:flex;align-items:center;gap:12px}.calendar-header__nav{display:flex;align-items:center;gap:8px}.cal-view-toggle{display:flex;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.cal-view-btn{padding:6px 16px;font-size:13px;font-weight:500;font-family:Inter,Roboto,system-ui,sans-serif;background:#f5f5f5;border:none;cursor:pointer;color:#888;transition:background .12s,color .12s}.cal-view-btn--active{background:#5c6bc0;color:#fff}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f8f8f8;border-bottom:1px solid #e8e8e8;flex-shrink:0}.calendar-weekday{padding:8px 10px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#999;text-align:center;border-right:1px solid #e8e8e8}.calendar-weekday:last-child{border-right:none}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);flex:1;background:#e0e0e0;gap:1px;overflow:hidden}.calendar-grid--week{grid-template-rows:1fr}.calendar-grid--week .calendar-cell{min-height:unset}.calendar-cell{background:#fff;padding:6px 8px 4px;cursor:pointer;overflow:hidden;transition:background .1s;min-height:80px}.calendar-cell:hover{background:#fafafa}.calendar-cell--other-month{background:#f7f7f7}.calendar-cell--other-month:hover{background:#f4f4f4}.calendar-cell--today{background:#5c6bc00a}.calendar-cell--today:hover{background:#5c6bc012}.calendar-cell__date{font-size:12px;font-weight:600;color:#aaa;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:3px}.calendar-cell--other-month .calendar-cell__date{color:#ccc}.calendar-cell--today .calendar-cell__date{color:#555}.calendar-cell__date--today{background:#5c6bc0;color:#fff!important}.calendar-cell__events{display:flex;flex-direction:column;gap:2px}.calendar-event{background:#5c6bc01f;border-left:3px solid #5c6bc0;border-radius:3px;padding:2px 5px;font-size:11px;font-weight:600;color:#3d4fa3;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .1s;line-height:1.4}.calendar-event:hover{background:#5c6bc033}.calendar-event--series{background:#00bcd41a;border-left-color:#00bcd4;color:#006d7a}.calendar-event--series:hover{background:#00bcd42e}.calendar-event__series-dot{opacity:.7}.cal-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:100}.cal-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:101;background:#fff;border:1px solid #e8e8e8;border-radius:12px;width:400px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.cal-modal__header{display:flex;align-items:center;justify-content:space-between}.cal-modal__title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.cal-modal__close{background:none;border:none;font-size:14px;color:#aaa;cursor:pointer;padding:4px;border-radius:4px;line-height:1;transition:color .1s}.cal-modal__close:hover{color:#555}.cal-modal__date-label{font-size:13px;color:#5c6bc0;font-weight:500}.cal-modal__tabs{display:flex;gap:0;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.cal-modal__tab{flex:1;padding:8px;font-size:13px;font-family:Inter,Roboto,system-ui,sans-serif;font-weight:500;background:#f5f5f5;border:none;cursor:pointer;color:#888;transition:background .12s,color .12s}.cal-modal__tab--active{background:#5c6bc0;color:#fff}.cal-modal__days-label,.cal-modal__routine-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.cal-modal__day-chips{display:flex;gap:6px;flex-wrap:wrap}.cal-day-chip{padding:6px 10px;font-size:12px;font-family:Inter,Roboto,system-ui,sans-serif;font-weight:600;border-radius:6px;border:1px solid #e0e0e0;background:#f5f5f5;color:#888;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.cal-day-chip--active{background:#5c6bc01f;border-color:#5c6bc059;color:#5c6bc0}.cal-modal__routine-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}.cal-modal__routine-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;background:#f7f7f7;border:1px solid #ebebeb;border-radius:8px;cursor:pointer;text-align:left;transition:background .1s,border-color .1s}.cal-modal__routine-item:hover{background:#f0f0f0;border-color:#d8d8d8}.cal-modal__routine-item--active{background:#5c6bc014;border-color:#5c6bc04d}.cal-modal__routine-name{font-size:13px;font-weight:500;color:#1a1a1a}.cal-modal__routine-count{font-size:11px;color:#999;flex-shrink:0}.cal-modal__no-routines{font-size:13px;color:#bbb;margin:0}.cal-modal__footer{display:flex;justify-content:flex-end;gap:8px;padding-top:4px;border-top:1px solid #f0f0f0}.cal-event-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.cal-event-popup{position:fixed;z-index:201;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px 14px;min-width:200px;max-width:280px;display:flex;flex-direction:column;gap:8px}.cal-event-popup__name{font-size:14px;font-weight:600;color:#1a1a1a}.cal-event-popup__meta{font-size:12px;color:#888}.garmin-view{padding:40px 48px;background:#f0f0f0;min-height:100vh;box-sizing:border-box}.garmin-view__header{margin-bottom:24px}.garmin-view__header h1{font-size:28px;font-weight:300;color:#1a1a1a;margin:0 0 16px}.garmin-view__subtitle{font-size:13px;color:#999;margin:0}.garmin-view__tabs{display:flex;gap:4px}.garmin-tab{font-family:inherit;font-size:14px;font-weight:500;padding:8px 20px;border-radius:20px;background:#fff;border:1px solid #e8e8e8;color:#555;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.garmin-tab:hover{border-color:#d0d0d0}.garmin-tab--active{background:#5c6bc0;border-color:transparent;color:#fff}.health-date-nav{display:flex;align-items:center;gap:12px;margin-bottom:20px}.health-date-nav__btn{font-family:inherit;font-size:20px;line-height:1;padding:4px 10px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;color:#555;cursor:pointer;transition:border-color .15s ease}.health-date-nav__btn:hover:not(:disabled){border-color:#d0d0d0}.health-date-nav__btn:disabled{color:#ccc;cursor:default}.health-date-nav__label{font-size:14px;color:#555;font-weight:500}.health-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px;max-width:760px;margin-inline:auto}.health-kpi{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px;transition:border-color .15s ease}.health-kpi__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:8px}.health-kpi__value-row{display:flex;align-items:baseline;gap:4px}.health-kpi__value{font-size:32px;font-weight:300;line-height:1}.health-kpi__unit{font-size:14px;font-weight:400;color:#888}.health-kpi__sub{font-size:12px;color:#bbb;margin-top:6px}.sleep-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px;max-width:760px;margin-bottom:12px;margin-inline:auto}.sleep-card__header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.sleep-card__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.sleep-card__total{font-size:22px;font-weight:300;color:#1a1a1a}.sleep-card__history-btn{background:none;border:none;padding:0;font-size:12px;color:#5c6bc0;cursor:pointer;align-self:center}.sleep-card__history-btn:hover{text-decoration:underline}.sleep-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:#f0f0f0;margin-bottom:12px}.sleep-bar__deep{background:#5c6bc0}.sleep-bar__rem{background:#00bcd4}.sleep-bar__light{background:#c5cae9}.sleep-bar__awake{background:#ff9800}.sleep-legend{display:flex;flex-wrap:wrap;gap:12px}.sleep-legend__item{font-size:12px;display:flex;align-items:center;gap:5px;color:#555}.sleep-legend__item:before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px}.sleep-legend__item--deep:before{background:#5c6bc0}.sleep-legend__item--rem:before{background:#00bcd4}.sleep-legend__item--light:before{background:#c5cae9}.sleep-legend__item--awake:before{background:#ff9800}.garmin-view__list{display:flex;flex-direction:column;gap:12px;max-width:760px;margin-inline:auto}.activity-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:16px;transition:border-color .15s ease}.activity-card:hover{border-color:#d0d0d0}.activity-card__type-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.activity-card__body{flex:1;min-width:0}.activity-card__title{font-size:15px;font-weight:600;color:#1a1a1a;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:#888}.activity-card__date{color:#888}.activity-card__type-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:20px}.activity-stat{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:500}.activity-stat--duration{background:#00bcd41a;color:#00bcd4}.activity-stat--distance{background:#5c6bc01a;color:#5c6bc0}.activity-stat--calories{background:#ff5c1a14;color:#ff5c1a}.activity-stat--hr{background:#ef444414;color:#ef4444}.garmin-view__setup-hint{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:32px;max-width:520px}.garmin-view__setup-hint h2{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 12px}.garmin-view__setup-hint p{font-size:14px;color:#555;margin:0 0 16px;line-height:1.6}.garmin-view__setup-hint code{display:block;background:#f8f8f8;border:1px solid #e8e8e8;border-radius:6px;padding:12px 14px;font-size:13px;color:#333;font-family:Fira Code,Consolas,monospace;white-space:pre;margin-bottom:12px}.garmin-view__setup-hint .hint-note{font-size:12px;color:#999;margin:0}.garmin-view__error{background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:12px;padding:20px 24px;color:#ef4444;font-size:14px;max-width:520px}.garmin-view__empty{font-size:14px;color:#999;padding:24px 0}.health-kpi--clickable{cursor:pointer}.health-kpi--clickable:hover{border-color:#d0d0d0}.health-kpi--clickable:focus-visible{outline:2px solid #5c6bc0;outline-offset:2px}.metric-detail{max-width:760px;margin-inline:auto}.metric-detail__header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.metric-detail__header h2{font-size:22px;font-weight:300;color:#1a1a1a;margin:0}.metric-period-pills{display:flex;gap:4px;margin-bottom:20px}.period-pill{font-family:inherit;font-size:13px;font-weight:500;padding:6px 16px;border-radius:20px;background:#fff;border:1px solid #e8e8e8;color:#555;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.period-pill:hover{border-color:#d0d0d0}.period-pill--active{background:#5c6bc0;border-color:transparent;color:#fff}.metric-chart-wrap{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px;overflow-x:auto;margin-bottom:12px}.metric-chart-wrap svg{display:block;width:100%;height:auto}.metric-chart-hit{cursor:pointer}.metric-summary{display:flex;background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;margin-bottom:12px}.metric-summary__stat{flex:1;padding:16px 20px;border-right:1px solid #e8e8e8}.metric-summary__stat:last-child{border-right:none}.metric-summary__stat-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:6px}.metric-summary__stat-value{font-size:24px;font-weight:300;color:#1a1a1a}.metric-summary__stat-value span{font-size:13px;font-weight:400;color:#888;margin-left:2px}.hrv-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px;max-width:760px;margin-bottom:12px;margin-inline:auto}.hrv-card__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.hrv-card__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.hrv-card__value{font-size:22px;font-weight:300;color:#1a1a1a}.hrv-card__sub{font-size:13px;color:#888;margin-top:8px}.activity-stat--pace{background:#4caf501a;color:#4caf50}.activity-detail{max-width:760px;margin-inline:auto}.activity-detail__header{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.activity-detail__title-group{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.activity-detail__type-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.activity-detail__name{font-size:22px;font-weight:300;color:#1a1a1a;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-detail__date{font-size:13px;color:#888;flex-shrink:0}.activity-detail__stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:20px}.activity-detail__stat{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:16px}.activity-detail__stat-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:6px}.activity-detail__stat-value{display:block;font-size:22px;font-weight:300;color:#1a1a1a}.splits-section{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px;margin-top:4px}.splits-section__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin:0 0 14px}.splits-table-wrap{overflow-x:auto}.splits-table{width:100%;border-collapse:collapse;font-size:14px}.splits-table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#999;padding:0 12px 10px 0;border-bottom:1px solid #e8e8e8}.splits-table td{padding:10px 12px 10px 0;color:#444;border-bottom:1px solid #f4f4f4}.splits-table tr:last-child td{border-bottom:none}.user-profile{box-sizing:border-box;padding:40px 48px}.user-profile__header{margin-bottom:32px}.user-profile__title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:28px;font-weight:300;color:#1a1a1a;letter-spacing:-.02em;margin-bottom:6px}.user-profile__subtitle{font-size:14px;color:#999}.user-profile__sections{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media (max-width: 768px){.user-profile__sections{grid-template-columns:1fr}}.profile-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:24px}.profile-card__tag{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:6px}.profile-card__heading{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:16px}.profile-card__hint{font-size:13px;color:#888;margin-bottom:16px;margin-top:-8px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.profile-grid{grid-template-columns:1fr}.user-profile{padding:24px 16px}}.profile-field{display:flex;flex-direction:column;gap:6px}.profile-field__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.profile-field__input-wrap{position:relative;display:flex;align-items:center}.profile-field__input{width:100%;padding:9px 12px;font-size:14px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s}.profile-field__input:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.profile-field__input[type=number]{padding-right:44px}.profile-field__unit{position:absolute;right:12px;font-size:12px;color:#aaa;pointer-events:none;font-family:Inter,Roboto,system-ui,sans-serif}.profile-field__input--readonly{background:#f7f7f7;color:#888;cursor:default}.profile-field__hint{font-size:11px;color:#aaa;margin:0}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:7px 14px;font-size:13px;font-family:Inter,Roboto,system-ui,sans-serif;font-weight:500;border-radius:20px;border:1px solid #e0e0e0;background:#f5f5f5;color:#666;cursor:pointer;transition:background .12s,color .12s,border-color .12s;line-height:1}.chip:hover{border-color:#d0d0d0;background:#efefef}.chip--active{background:#5c6bc0;color:#fff;border-color:#5c6bc0}.chip--active:hover{background:#4a5ab0;border-color:#4a5ab0}.equipment-categories{display:flex;flex-direction:column;gap:20px}.equipment-category__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#aaa;margin-bottom:8px}.weight-log__form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.weight-log__inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.weight-log__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.weight-log__item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#f7f7f7;border:1px solid #e8e8e8;border-radius:8px}.weight-log__date{flex:1;font-size:13px;color:#555}.weight-log__value{font-size:14px;font-weight:600;color:#1a1a1a;min-width:56px;text-align:right}.weight-log__delete{background:none;border:none;padding:4px;cursor:pointer;color:#ccc;border-radius:4px;display:flex;align-items:center;flex-shrink:0;transition:color .15s}.weight-log__delete:hover{color:#ef4444}.weight-log__empty{font-size:13px;color:#bbb;font-style:italic;margin:0}.journal-view{box-sizing:border-box;padding:40px 48px}.journal-view__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e8e8e8}.journal-view__header-left{display:flex;flex-direction:column;gap:2px}.journal-view__title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:28px;font-weight:300;color:#1a1a1a;letter-spacing:-.02em;margin:0}.journal-view__count{font-size:13px;color:#aaa;margin:0}.journal-form{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:24px;margin-bottom:24px;max-width:760px}.journal-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.journal-form__field{display:flex;flex-direction:column;gap:6px}.journal-form__field--full{grid-column:1 / -1}.journal-form__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.journal-form__input,.journal-form__select{padding:9px 12px;font-size:14px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box}.journal-form__input:focus,.journal-form__select:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.journal-form__textarea{resize:vertical;min-height:64px}.journal-form__actions{display:flex;gap:8px;justify-content:flex-end}.journal-form__exercises{display:flex;flex-direction:column;gap:8px}.journal-ex-row{background:#f7f7f7;border:1px solid #e8e8e8;border-radius:8px;padding:10px 14px;display:flex;flex-direction:column;gap:8px}.journal-ex-row__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.journal-ex-row__name{font-size:13px;font-weight:600;color:#1a1a1a;flex:1;min-width:0}.journal-ex-row__sets-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.journal-ex-row__sets{display:flex;gap:5px;flex-wrap:wrap}.journal-ex-row__set-btn{width:32px;height:32px;border-radius:7px;border:1.5px solid #d8d8d8;background:#fff;color:#aaa;font-family:Inter,Roboto,system-ui,sans-serif;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:border-color .15s,background .15s,color .15s}.journal-ex-row__set-btn:hover{border-color:#5c6bc0;color:#5c6bc0;background:#5c6bc00f}.journal-ex-row__set-btn--done{background:#5c6bc0;border-color:#5c6bc0;color:#fff}.journal-ex-row__set-btn--done:hover{background:#4a5ab0;border-color:#4a5ab0;color:#fff}.journal-ex-row__set-adjust{width:26px;height:26px;border-radius:5px;border:1.5px solid #d8d8d8;background:#fff;color:#888;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:border-color .15s,color .15s;flex-shrink:0}.journal-ex-row__set-adjust:hover:not(:disabled){border-color:#5c6bc0;color:#5c6bc0}.journal-ex-row__set-adjust:disabled{opacity:.35;cursor:not-allowed}.journal-ex-row__fields{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.journal-ex-row__field{display:flex;flex-direction:column;gap:4px}.journal-ex-row__input-unit{display:flex;align-items:center;gap:4px}.journal-ex-row__input{width:60px;padding:5px 7px;font-size:13px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:6px;outline:none;text-align:center;transition:border-color .15s,box-shadow .15s}.journal-ex-row__input:focus{border-color:#5c6bc0;box-shadow:0 0 0 2px #5c6bc01f}.journal-ex-row__unit{font-size:11px;color:#999}.journal-ex-row__rating{display:flex;gap:4px;flex-shrink:0}.journal-ex-row__rating-btn{width:30px;height:30px;background:none;border:1.5px solid #e8e8e8;border-radius:6px;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:border-color .15s,background .15s}.journal-ex-row__rating-btn:hover{border-color:#d0d0d0;background:#f0f0f0}.journal-ex-row__rating-btn--active{border-color:#5c6bc0;background:#5c6bc01a}.journal-empty{text-align:center;padding:56px 32px;color:#bbb;font-size:15px;border:1px dashed #e0e0e0;border-radius:12px;line-height:2}.journal-empty__sub{font-size:13px;color:#ccc;line-height:1.6}.journal-body{display:flex;align-items:flex-start;gap:24px}.journal-body__list{flex:1;max-width:760px;min-width:0}.journal-body--has-panel .journal-body__list{flex:0 0 340px;max-width:340px}.journal-panel{flex:1;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:24px;position:sticky;top:40px;min-width:0}.journal-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f0f0f0}.journal-panel__title-group{display:flex;flex-direction:column;gap:4px;min-width:0}.journal-panel__name{font-size:18px;font-weight:600;color:#1a1a1a;line-height:1.2}.journal-panel__date{font-size:12px;color:#aaa;font-weight:400}.journal-panel__top-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.journal-panel__close{background:none;border:none;padding:6px;cursor:pointer;color:#bbb;border-radius:6px;display:flex;align-items:center;transition:color .15s,background .15s}.journal-panel__close:hover{color:#555;background:#f0f0f0}.journal-panel__badges{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:16px}.journal-list{display:flex;flex-direction:column;gap:0}.journal-day{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.journal-day__header{font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.08em;padding:10px 0 6px;border-bottom:1px solid #e8e8e8;margin-bottom:4px;position:sticky;top:0;background:#f0f0f0;z-index:10}.journal-entry{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:14px 18px;transition:border-color .15s}.journal-entry:hover{border-color:#d0d0d0}.journal-entry--garmin{border-left:3px solid rgba(76,175,80,.5);padding-left:15px}.journal-entry__body{display:flex;align-items:center;gap:8px}.journal-entry__info{flex:1;min-width:0}.journal-entry__name{font-size:15px;font-weight:600;color:#1a1a1a;display:block;margin-bottom:7px}.journal-entry__badges{display:flex;gap:5px;flex-wrap:wrap;align-items:center}.journal-badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;letter-spacing:.01em}.journal-badge--duration{background:#00bcd41a;color:#00bcd4}.journal-badge--sets{background:#f0f0f0;color:#999}.journal-badge--rating{background:#5c6bc014;color:#5c6bc0;font-size:14px;padding:1px 7px;border-radius:20px}.journal-badge--garmin{background:#4caf501a;color:#4caf50}.journal-badge--distance{background:#5c6bc014;color:#5c6bc0}.journal-entry__notes{font-size:13px;color:#888;font-style:italic;margin-top:6px;line-height:1.5}.journal-entry--expanded{border-color:#5c6bc0}.journal-entry--expanded.journal-entry--garmin{border-left-color:#4caf50;border-top-color:#5c6bc0;border-right-color:#5c6bc0;border-bottom-color:#5c6bc0}.journal-detail{border-top:1px solid #f0f0f0;margin-top:12px;padding-top:14px;display:flex;flex-direction:column;gap:10px}.journal-detail__exercise{display:flex;flex-direction:column;gap:5px}.journal-detail__ex-header{display:flex;align-items:center;gap:8px}.journal-detail__ex-name{font-size:13px;font-weight:600;color:#1a1a1a;flex:1}.journal-detail__ex-rating{font-size:15px}.journal-detail__ex-body{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.journal-detail__sets{display:flex;gap:3px;flex-wrap:wrap}.journal-detail__set-badge{width:22px;height:22px;border-radius:4px;background:#f0f0f0;color:#ccc;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.journal-detail__set-badge--done{background:#5c6bc01f;color:#5c6bc0}.journal-detail__metrics{display:flex;gap:6px;flex-wrap:wrap}.journal-detail__metric{font-size:12px;color:#666;background:#f5f5f5;padding:2px 8px;border-radius:4px}.journal-detail__empty{font-size:13px;color:#bbb;font-style:italic;margin:0}.journal-detail__notes-full{font-size:13px;color:#888;font-style:italic;line-height:1.5;border-top:1px solid #f0f0f0;padding-top:8px;margin:0}.journal-entry__actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.journal-entry:hover .journal-entry__actions,.journal-entry--expanded .journal-entry__actions{opacity:1}.journal-entry__edit{background:none;border:none;padding:4px 6px;cursor:pointer;color:#5c6bc0;border-radius:4px;display:flex;align-items:center;transition:background .15s}.journal-entry__edit:hover{background:#5c6bc01a}.journal-entry__delete{background:none;border:none;padding:4px;cursor:pointer;color:#ccc;border-radius:4px;flex-shrink:0;display:flex;align-items:center;transition:color .15s}.journal-entry__delete:hover{color:#ef4444}.journal-entry__chevron{color:#ccc;flex-shrink:0;display:flex;align-items:center;transition:transform .2s ease,color .15s}.journal-entry--expanded .journal-entry__chevron{color:#5c6bc0}.journal-form__edit-banner{font-size:11px;font-weight:600;color:#5c6bc0;text-transform:uppercase;letter-spacing:.07em;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(92,107,192,.15)}.journal-form__save-error{font-size:13px;color:#ef4444;margin-top:4px;margin-bottom:8px}.journal-splits{margin-top:16px}.journal-splits__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999;margin-bottom:10px}.journal-splits__wrap{overflow-x:auto}.journal-splits__table{width:100%;border-collapse:collapse;font-size:13px}.journal-splits__table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#bbb;padding:0 12px 8px 0;border-bottom:1px solid #f0f0f0}.journal-splits__table td{padding:8px 12px 8px 0;color:#555;border-bottom:1px solid #f8f8f8}.journal-splits__table tr:last-child td{border-bottom:none}@media (max-width: 600px){.journal-view{padding:24px 16px}.journal-form__grid{grid-template-columns:1fr}}.coach-page{padding:32px 40px 48px;display:flex;flex-direction:column;gap:0}.coach-page__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.coach-page__header-left{display:flex;flex-direction:column;gap:4px}.coach-page__title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:28px;font-weight:300;color:#1a1a1a;margin:0;letter-spacing:-.01em}.coach-page__sub{font-size:13px;color:#999}.coach-page__header-actions{display:flex;gap:8px;flex-shrink:0}.coach-page__thinking-bar{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:16px 20px;margin-bottom:16px}.coach-page__thinking-text{font-size:14px;color:#555}.coach-page__error{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:14px 18px;font-size:14px;color:#ef4444;line-height:1.5;margin-bottom:16px}.coach-page__content{display:flex;flex-direction:column;gap:32px}.coach-page__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:64px 24px}.coach-page__empty-icon{font-size:48px;line-height:1}.coach-page__empty-title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:22px;font-weight:300;color:#1a1a1a;margin:0;letter-spacing:-.01em}.coach-page__empty-sub{font-size:14px;color:#888;line-height:1.6;max-width:380px;margin:0}.coach-report-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.coach-report-list-item{display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px 24px;cursor:pointer;text-align:left;width:100%;font-family:Inter,Roboto,system-ui,sans-serif;transition:border-color .15s,background .15s;min-height:100px}.coach-report-list-item:hover{border-color:#d0d0d0;background:#fafafa}.coach-report-list-item__date{font-size:13px;font-weight:600;color:#1a1a1a;line-height:1.4}.coach-report-list-item__preview{font-size:13px;color:#555;flex:1;line-height:1.5}.coach-report-list-item__type-badge{display:inline-block;font-size:11px;font-weight:600;color:#5c6bc0;background:#5c6bc01a;padding:2px 8px;border-radius:12px;width:fit-content}.coach-report-list-item__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.coach-report-list-item__meta{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.coach-report-list-item__chevron{font-size:14px;color:#5c6bc0;line-height:1}.coach-detail{display:flex;flex-direction:column;gap:16px}.coach-detail__nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.coach-detail__date{font-size:13px;font-weight:600;color:#555;letter-spacing:.01em;padding-bottom:4px;border-bottom:1px solid #f0f0f0}.coach-detail__sections{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width: 900px){.coach-detail__sections{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.coach-report-list{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.coach-report-list,.coach-detail__sections{grid-template-columns:1fr}}.coach-section-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:20px 24px}.coach-section-card:hover{border-color:#d0d0d0}.coach-section-card__title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:15px;font-weight:600;color:#1a1a1a;margin:0 0 14px}.coach-section-card__body{font-size:14px;color:#333;line-height:1.8}.coach-section__para{margin:0 0 8px;color:#333}.coach-section__para:last-child{margin-bottom:0}.coach-section__bullet{margin:4px 0;padding-left:4px;color:#444}.coach-msg__thinking{display:flex;gap:5px;align-items:center}.coach-msg__dot{width:7px;height:7px;border-radius:50%;background:#aaa;animation:coach-dot-bounce 1.2s ease-in-out infinite}.coach-msg__dot:nth-child(2){animation-delay:.2s}.coach-msg__dot:nth-child(3){animation-delay:.4s}@keyframes coach-dot-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}@media (max-width: 600px){.coach-page{padding:24px 16px 32px}.coach-page__header{flex-direction:column;align-items:flex-start}.coach-section-card{padding:16px}}.coach-screen,.coach-chat,.coach-view{display:none}.nutrition-page{padding:32px 40px}.nutrition-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.nutrition-page__title{font-size:28px;font-weight:300;color:#1a1a1a;margin:0}.nutrition-settings-summary{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.nutrition-badge{display:inline-flex;align-items:center;padding:4px 10px;background:#5c6bc01a;color:#5c6bc0;border-radius:20px;font-size:12px;font-weight:500}.nutrition-badge--warn{background:#ff6f001a;color:#ff6f00}.nutrition-body{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:start}.nutrition-list-col{display:flex;flex-direction:column;gap:8px}.nutrition-generate-btn{width:100%}.nutrition-empty{text-align:center;color:#999;font-size:14px;padding:24px 12px;line-height:1.6}.nutrition-empty p{margin:0 0 8px}.nutrition-error{background:#ef444412;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:10px 14px;color:#ef4444;font-size:13px}.nutrition-plan-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;cursor:pointer;text-align:left;transition:border-color .15s;width:100%}.nutrition-plan-item:hover{border-color:#d0d0d0}.nutrition-plan-item--active{border-color:#5c6bc0;background:#5c6bc00a}.nutrition-plan-item__date{font-size:11px;color:#888}.nutrition-plan-item__label{font-size:13px;font-weight:500;color:#1a1a1a}.nutrition-wizard{max-width:620px;margin:0 auto;background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:40px}.nutrition-wizard__header{text-align:center;margin-bottom:32px}.nutrition-wizard__main-title{font-size:22px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.nutrition-wizard__progress{display:flex;justify-content:center;gap:8px;margin-bottom:8px}.nutrition-wizard__dot{width:8px;height:8px;border-radius:50%;background:#e0e0e0;transition:all .2s}.nutrition-wizard__dot--active{width:24px;border-radius:4px;background:#5c6bc0}.nutrition-wizard__dot--done{background:#4caf50}.nutrition-wizard__step-count{font-size:12px;color:#999;margin:0}.nutrition-wizard__body{min-height:280px;margin-bottom:16px}.nutrition-wizard__step-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 6px}.nutrition-wizard__step-sub{font-size:14px;color:#555;margin:0 0 20px}.nutrition-wizard__mag{color:#4caf50}.nutrition-wizard__magnicht{color:#ef4444}.nutrition-wizard__chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.nutrition-wizard__food-group{margin-bottom:16px}.nutrition-wizard__food-label{font-size:11px;font-weight:600;text-transform:uppercase;color:#999;letter-spacing:.07em;margin-bottom:8px}.nutrition-wizard__hint{font-size:12px;color:#999;margin:8px 0 0}.nutrition-wizard__calorie-input{margin-top:16px}.nutrition-wizard__label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;color:#999;letter-spacing:.07em;margin-bottom:8px}.nutrition-wizard__input{width:180px;padding:10px 14px;background:#fff;border:1px solid #d8d8d8;border-radius:8px;font-size:14px;color:#1a1a1a}.nutrition-wizard__input:focus{outline:none;border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.nutrition-wizard__footer{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid #e8e8e8;margin-top:16px}.nutrition-chip{display:inline-flex;align-items:center;padding:8px 14px;background:#fff;border:1px solid #d8d8d8;border-radius:20px;font-size:13px;color:#444;cursor:pointer;transition:all .15s;font-family:inherit}.nutrition-chip:hover{border-color:#5c6bc0;color:#5c6bc0}.nutrition-chip--selected{background:#5c6bc0;border-color:#5c6bc0;color:#fff;font-weight:500}.nutrition-chip--food{font-size:12px;padding:5px 10px}.nutrition-chip--food-mag{background:#4caf50;border-color:#4caf50;color:#fff}.nutrition-chip--food-mag-nicht{background:#ef4444;border-color:#ef4444;color:#fff}.nutrition-detail{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden}.nutrition-detail--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.nutrition-detail__header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #e8e8e8}.nutrition-detail__tabs{display:flex;gap:4px}.nutrition-tab{padding:6px 14px;background:transparent;border:none;border-radius:6px;font-size:13px;color:#555;cursor:pointer;font-family:inherit;transition:background .15s}.nutrition-tab:hover{background:#f0f0f0}.nutrition-tab--active{background:#5c6bc01a;color:#5c6bc0;font-weight:500}.nutrition-plan{padding:16px 20px;display:flex;flex-direction:column;gap:8px}.nutrition-day-card{border:1px solid #e8e8e8;border-radius:8px;overflow:hidden}.nutrition-day-card__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 16px;background:#f8f8f8;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background .15s}.nutrition-day-card__header:hover{background:#f0f0f0}.nutrition-day-card__title{font-size:14px;font-weight:600;color:#1a1a1a}.nutrition-day-card__chevron{font-size:9px;color:#999}.nutrition-day-card__body{padding:14px 16px}.nutrition-plan__meal-title{font-size:13px;font-weight:600;color:#5c6bc0;margin:14px 0 6px}.nutrition-plan__meal-title:first-child{margin-top:0}.nutrition-plan__dish{font-size:13px;color:#1a1a1a;font-weight:500;margin:4px 0}.nutrition-plan__ingredient{font-size:12px;color:#555;margin:2px 0;padding-left:8px}.nutrition-plan__divider{border:none;border-top:1px solid #e8e8e8;margin:10px 0}.nutrition-plan__line{font-size:13px;color:#444;margin:2px 0}.nutrition-shopping{padding:20px;font-size:13px;line-height:1.7;color:#444}@media (max-width: 900px){.nutrition-body{grid-template-columns:1fr}.nutrition-page,.nutrition-wizard{padding:24px 20px}}.exercise-library{padding:32px 40px}.exercise-library__header{margin-bottom:20px}.exercise-library__title{font-size:28px;font-weight:300;color:#1a1a1a;margin:0 0 4px}.exercise-library__subtitle{font-size:14px;color:#999;margin:0}.exercise-library__filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.exercise-library__search{flex:1 1 180px;min-width:140px;padding:8px 12px;font-size:13px;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;outline:none;font-family:inherit}.exercise-library__search:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.exercise-library__select{flex:0 0 auto;padding:8px 32px 8px 11px;font-size:13px;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer;font-family:inherit;outline:none;max-width:160px}.exercise-library__select:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.exercise-library__select option{font-size:13px}.exercise-library__result-count{font-size:13px;color:#999;white-space:nowrap;margin-left:4px}.exercise-library__empty{font-size:14px;color:#999;padding:48px 0;text-align:center}.exercise-library__error{font-size:14px;color:#ef4444;padding:16px 0}.exercise-library__load-more{display:flex;justify-content:center;padding-bottom:48px}.exercise-library__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-bottom:24px}.exercise-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .15s;-webkit-user-select:none;user-select:none}.exercise-card:hover{border-color:#d0d0d0}.exercise-card:focus{outline:2px solid #5c6bc0;outline-offset:2px}.exercise-card__thumb{height:155px;overflow:hidden;background:#f4f4f4;position:relative}.exercise-card__thumb img{width:100%;height:100%;object-fit:cover;display:block}.exercise-card__thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f0f0f0}.exercise-card__body{padding:12px 14px}.exercise-card__name{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exercise-card__badges{display:flex;flex-wrap:wrap;gap:4px}.exercise-card__badge{display:inline-block;font-size:11px;font-weight:500;padding:2px 7px;border-radius:4px;line-height:1.4}.exercise-card__badge--category{background:#f0f0f0;color:#555}.exercise-card__badge--muscle{background:#5c6bc01a;color:#5c6bc0}.exercise-card__badge--equipment{background:#00bcd41a;color:#00bcd4}.exercise-card__badge--secondary{background:#f0f0f0;color:#888}.exercise-card__badge--level-beginner{background:#4caf501f;color:#4caf50}.exercise-card__badge--level-intermediate{background:#ff98001f;color:#f57c00}.exercise-card__badge--level-expert{background:#ef44441f;color:#ef4444}.exercise-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.exercise-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000007a}.exercise-modal__box{position:relative;background:#fff;border-radius:12px;max-width:640px;width:100%;max-height:85vh;overflow-y:auto;flex-shrink:0}.exercise-modal__close{position:absolute;top:10px;right:10px;z-index:1;font-size:20px;line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;padding:0;background:#ffffffe6;border:1px solid #e8e8e8;cursor:pointer;color:#555}.exercise-modal__close:hover{background:#f4f4f4;color:#1a1a1a}.exercise-modal__img{width:100%;max-height:280px;object-fit:cover;display:block;border-radius:12px 12px 0 0}.exercise-modal__img-placeholder{width:100%;height:160px;background:#f0f0f0;display:flex;align-items:center;justify-content:center;border-radius:12px 12px 0 0}.exercise-modal__content{padding:20px 24px 24px}.exercise-modal__name{font-size:20px;font-weight:600;color:#1a1a1a;margin:0 0 12px;padding-right:32px}.exercise-modal__badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.exercise-modal__divider{border:none;border-top:1px solid #e8e8e8;margin:0 0 16px}.exercise-modal__instructions{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}.exercise-modal__instructions li{font-size:14px;color:#444;line-height:1.55}.exercise-modal__no-instructions{font-size:14px;color:#999;margin:0}.login-page{min-height:100vh;background:#f0f0f0;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:40px 48px;width:100%;max-width:400px}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:32px}.login-brand__icon{font-size:24px;line-height:1}.login-brand__name{font-family:Inter,Roboto,system-ui,sans-serif;font-size:18px;font-weight:600;color:#1a1a1a;letter-spacing:.02em}.login-title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:24px;font-weight:300;color:#1a1a1a;letter-spacing:-.01em;margin-bottom:28px}.login-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.login-field__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#999}.login-field__input{width:100%;padding:10px 12px;font-size:14px;font-family:Inter,Roboto,system-ui,sans-serif;color:#1a1a1a;background:#fff;border:1px solid #d8d8d8;border-radius:8px;outline:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.login-field__input:focus{border-color:#5c6bc0;box-shadow:0 0 0 3px #5c6bc026}.login-error{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:10px 14px;font-size:13px;color:#ef4444;margin-bottom:16px}.login-submit{width:100%;margin-top:8px;justify-content:center}@media (max-width: 480px){.login-card{padding:28px 24px}}.users-page{padding:32px 40px 48px}.users-page__header{margin-bottom:32px}.users-page__title{font-family:Inter,Roboto,system-ui,sans-serif;font-size:28px;font-weight:300;color:#1a1a1a;letter-spacing:-.02em;margin-bottom:6px}.users-page__subtitle{font-size:14px;color:#999}.users-page__body{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media (max-width: 768px){.users-page__body{grid-template-columns:1fr}.users-page{padding:24px 16px 32px}}.users-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.users-list__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#f7f7f7;border:1px solid #e8e8e8;border-radius:8px}.users-list__info{display:flex;flex-direction:column;gap:2px}.users-list__name{font-size:14px;font-weight:600;color:#1a1a1a}.users-list__you{font-weight:400;color:#5c6bc0;font-size:12px}.users-list__date{font-size:12px;color:#999}.users-list__delete{flex-shrink:0;padding:6px 12px;font-size:12px}.users-error{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:10px 14px;font-size:13px;color:#ef4444;margin-bottom:16px}.users-success{background:#4caf5014;border:1px solid rgba(76,175,80,.2);border-radius:8px;padding:10px 14px;font-size:13px;color:#4caf50;margin-bottom:16px}.app-layout{display:flex;min-height:100vh}.app-main{flex:1;overflow-y:auto;min-height:100vh;background:var(--color-bg)}.routines-page{padding:40px 48px;background:var(--color-bg);min-height:100vh;font-family:var(--font-body);color:var(--color-text);box-sizing:border-box}.app-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.app-header h1{font:var(--fw-bold) var(--text-3xl)/1 var(--font-display);letter-spacing:-.03em;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.api-error{background:var(--color-error-muted);border:1px solid rgba(239,68,68,.3);color:var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:var(--space-4)}.loading-state{text-align:center;color:var(--color-text-muted);padding:var(--space-16) var(--space-4);font-size:var(--text-sm)}.save-error{margin-bottom:var(--space-3);font-size:var(--text-sm)}@media print{.sidebar{display:none!important}.routines-list-content>*:not(.routine-print-only){display:none!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #FF5C1A;--color-primary-light: #FF7A45;--color-primary-dark: #D94400;--color-primary-muted: rgba(255, 92, 26, .15);--color-accent: #00D4AA;--color-accent-light: #1FFFC4;--color-accent-dark: #00A885;--color-accent-muted: rgba(0, 212, 170, .15);--color-bg: #0B0B0B;--color-surface: #141414;--color-surface-2: #1E1E1E;--color-surface-3: #2A2A2A;--color-border: #2E2E2E;--color-border-strong: #404040;--color-text: #F0F0F0;--color-text-secondary:#A0A0A0;--color-text-muted: #606060;--color-text-inverse: #0B0B0B;--color-success: #22C55E;--color-success-muted: rgba(34, 197, 94, .15);--color-warning: #F59E0B;--color-warning-muted: rgba(245, 158, 11, .15);--color-error: #EF4444;--color-error-muted: rgba(239, 68, 68, .15);--color-info: #3B82F6;--color-info-muted: rgba(59, 130, 246, .15);--gradient-primary: linear-gradient(135deg, #FF5C1A 0%, #FF8C42 100%);--gradient-accent: linear-gradient(135deg, #00D4AA 0%, #00A8E8 100%);--font-display: "Barlow Semi Condensed", "DM Sans", system-ui, sans-serif;--font-body: "DM Sans", "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--fw-regular: 400;--fw-semibold: 600;--fw-bold: 700;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.4);--shadow-md: 0 4px 16px rgba(0,0,0,.5);--shadow-glow-primary: 0 0 24px rgba(255, 92, 26, .35);--shadow-glow-accent: 0 0 24px rgba(0, 212, 170, .3);--transition-fast: all .15s ease;--transition: all .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .3s cubic-bezier(.34, 1.56, .64, 1)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius);cursor:pointer;font:var(--fw-semibold) var(--text-base)/1 var(--font-body);letter-spacing:.01em;transition:var(--transition);text-decoration:none;white-space:nowrap;min-height:44px;background:var(--color-surface-2);color:var(--color-text)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn--primary{background:var(--gradient-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-glow-primary)}.btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 32px #ff5c1a80}.btn--primary:active:not(:disabled){transform:scale(.98)}.btn--accent{background:var(--color-accent);color:#000;box-shadow:var(--shadow-glow-accent)}.btn--accent:hover:not(:disabled){background:var(--color-accent-light);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border:1px solid transparent}.btn--ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text)}.btn--danger{background:var(--color-error-muted);color:var(--color-error);border:1px solid rgba(239,68,68,.3)}.btn--danger:hover:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn--sm,.btn--small{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);min-height:36px}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-lg);min-height:52px;border-radius:var(--radius-lg)}.theme-light{--color-bg: #f0f0f0;--color-surface: #ffffff;--color-surface-2: #f5f5f5;--color-surface-3: #fafafa;--color-border: #e8e8e8;--color-border-strong: #d0d0d0;--color-border-subtle: #f0f0f0;--color-border-hover: #bbbbbb;--color-text: #1a1a1a;--color-text-secondary:#555555;--color-text-muted: #999999;--color-text-dim: #888888;--color-bg-subtle: #f8f8f8;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.12);--font-body: "Inter", "Roboto", system-ui, sans-serif}.theme-light .btn{background:var(--color-surface);color:#333;border:1px solid var(--color-border-strong);box-shadow:none}.theme-light .btn:hover:not(:disabled){background:var(--color-surface-2);border-color:var(--color-border-hover);transform:none;box-shadow:none}.theme-light .btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent;box-shadow:none}.theme-light .btn--ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text);border-color:transparent}.theme-light .btn--primary{background:var(--gradient-primary);color:var(--color-text-inverse);border-color:transparent;box-shadow:var(--shadow-glow-primary)}.theme-light .btn--primary:hover:not(:disabled){background:var(--gradient-primary);border-color:transparent;transform:translateY(-1px);box-shadow:0 0 32px #ff5c1a80}.theme-light .btn--primary:active:not(:disabled){transform:scale(.98)}.theme-light .btn--accent{background:var(--color-accent);color:#000;border-color:transparent;box-shadow:var(--shadow-glow-accent)}.theme-light .btn--accent:hover:not(:disabled){background:var(--color-accent-light);border-color:transparent;transform:translateY(-1px)}.theme-light .btn--danger{background:var(--color-error-muted);color:var(--color-error);border:1px solid rgba(239,68,68,.3);box-shadow:none}.theme-light .btn--danger:hover:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error);transform:none;box-shadow:none}
