:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--accent:#ff792e;--bg:#f5f5f2;--surface:#fff;--text:#171717;--muted:#666;--border:#deded9;--nav:#f0f0ec;color:var(--text);background:var(--bg)}:root[data-theme=dark]{--bg:#111210;--surface:#1c1d1a;--text:#f5f5f1;--muted:#a5a59e;--border:#383a35;--nav:#171815}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:0;border-radius:8px;padding:12px 17px;background:var(--accent);color:#191919;font-weight:750;cursor:pointer}button:disabled{opacity:.45;cursor:default}input,select{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:12px;border-radius:8px;width:100%;min-width:0}label{display:grid;gap:7px;font-size:.88rem;font-weight:650}form{display:grid;gap:16px;max-width:420px}h1,h2,p{margin-top:0}h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.1;letter-spacing:-.055em}h2{font-size:clamp(1.4rem,3vw,2rem);letter-spacing:-.04em}p{color:var(--muted);line-height:1.55}.brand{font-weight:900;letter-spacing:.07em;font-size:1rem;white-space:nowrap}.brand span{color:var(--accent)}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.14em;color:var(--muted);margin-bottom:16px}.app-shell{display:flex;min-height:100dvh}.sidebar{width:236px;flex-shrink:0;background:var(--nav);border-right:1px solid var(--border);padding:32px 18px;display:flex;flex-direction:column;gap:50px}.sidebar .brand{padding:0 12px}.sidebar nav{display:grid;gap:8px}.nav-link{display:flex;gap:14px;align-items:center;padding:14px 13px;border-radius:9px;color:var(--muted);text-decoration:none;font-weight:650}.nav-link.active{background:var(--surface);color:var(--text);box-shadow:inset 3px 0 var(--accent)}.nav-symbol{font-size:1.3rem;width:22px;text-align:center}.sidebar-bottom{margin-top:auto}.theme-control{font-size:.75rem;color:var(--muted)}.theme-control select{font-size:.85rem}.workspace{flex:1;min-width:0}.app-header{padding:36px clamp(24px,5vw,70px) 26px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}.app-header h1{margin:0}.account{display:flex;align-items:center;gap:14px}.username{font-size:.85rem;font-weight:700;overflow-wrap:anywhere}.ghost-button{background:transparent;color:var(--text);border:1px solid var(--border);padding:9px 12px}.page-content{padding:32px clamp(24px,5vw,70px);max-width:1350px}.page-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:18px;align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:clamp(22px,3vw,38px);min-width:0}.panel p:last-child{margin-bottom:0}.feature{min-height:290px}.metric-value{font-size:clamp(4rem,8vw,7rem);font-weight:850;letter-spacing:-.08em;line-height:1.2}.empty-state{max-width:700px}.workout-list{list-style:none;padding:0;margin:0}.workout-list li{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--border)}.workout-list time{font-size:.82rem;color:var(--muted);text-align:right}.error{color:#dc5826;font-weight:650}.mobile-nav,.mobile-theme{display:none}.auth-page{min-height:100dvh;display:flex;flex-direction:column;gap:50px;padding:clamp(24px,7vw,64px);max-width:900px;margin:auto}.auth-card{max-width:510px}.auth-card h1{font-size:clamp(3rem,8vw,5rem)}.auth-page>.theme-control{max-width:180px;margin-top:auto}@media(max-width:900px){.sidebar{width:190px;padding:24px 12px}.page-grid{grid-template-columns:1fr}}@media(max-width:680px){.app-shell{display:block;padding-bottom:calc(86px + env(safe-area-inset-bottom))}.sidebar{display:none}.app-header{padding:24px 20px 20px}.app-header h1{font-size:2.2rem}.account{gap:8px}.username{max-width:95px;font-size:.78rem}.ghost-button{padding:8px}.page-content{padding:18px 14px}.panel{padding:23px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--nav);border-top:1px solid var(--border);padding:10px 4px calc(10px + env(safe-area-inset-bottom))}.mobile-link{display:flex;align-items:center;flex-direction:column;gap:4px;color:var(--muted);text-decoration:none;min-width:0;padding:5px 0}.mobile-link span{font-size:1.35rem;line-height:1.3}.mobile-link small{font-size:clamp(.59rem,2.5vw,.72rem);font-weight:700}.mobile-link.active{color:var(--accent)}.mobile-theme{display:block;margin:0 18px 24px;max-width:160px}.workout-list li{flex-wrap:wrap}.auth-page{gap:38px}.auth-card{margin-top:20px}}@media(prefers-reduced-motion:no-preference){button,.nav-link,.mobile-link{transition:background-color .15s,color .15s}}.brand,.eyebrow,.metric-value,.app-header h1,.auth-card h1,.panel h2{font-family:SFMono-Regular,ui-monospace,Cascadia Code,Segoe UI Mono,Menlo,Consolas,monospace}.brand{font-size:1.05rem;letter-spacing:-.045em;font-weight:850}.brand span{letter-spacing:.02em}.eyebrow{letter-spacing:.11em;font-size:.68rem}.app-header h1,.panel h2,.auth-card h1{letter-spacing:-.075em;font-weight:800}.metric-value{font-variant-numeric:tabular-nums;letter-spacing:-.09em}.nav-symbol{display:flex;align-items:center;justify-content:center}.mobile-link svg{display:block;flex-shrink:0}.settings-link,.account-settings{display:flex;align-items:center;gap:10px;background:transparent;color:var(--text);border:0;cursor:pointer}.settings-link{width:100%;text-align:left;padding:12px;font-weight:650}.account-settings{padding:6px;border-radius:8px}.account-settings:hover,.settings-link:hover{background:var(--surface)}.account-settings svg{flex-shrink:0}@media(max-width:680px){.mobile-link svg{width:21px;height:21px}.mobile-link{gap:6px}.account-settings{gap:5px}.account-settings svg{width:18px;height:18px}}.diary-panel{padding:clamp(18px,2.8vw,32px)}.diary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.diary-heading .eyebrow{margin-bottom:8px}.diary-heading h2{margin:0}.diary-count{font:700 .66rem ui-monospace,monospace;color:var(--muted);white-space:nowrap;letter-spacing:.06em}.diary-list{list-style:none;margin:0;padding:0}.diary-list>.diary-item{display:block;padding:0;border-bottom:1px solid var(--border)}.diary-item:last-child{border-bottom:0}.diary-item-head{display:flex;align-items:center;gap:8px;min-width:0}.diary-toggle{display:flex;flex:1;align-items:center;min-width:0;gap:12px;text-align:left;background:transparent;color:var(--text);padding:17px 0;border-radius:0;font-weight:500}.diary-toggle:hover{background:transparent}.diary-symbol{width:38px;height:38px;border:1px solid var(--border);background:var(--bg);border-radius:10px;display:grid;place-items:center;color:var(--accent);font-size:1.4rem;flex-shrink:0}.diary-item-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.diary-item-info strong{font-size:1rem;letter-spacing:-.025em}.diary-item-info time{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.diary-source{font:700 .61rem ui-monospace,monospace;color:var(--muted);letter-spacing:.03em;text-align:right;max-width:130px;line-height:1.35}.diary-chevron{font-size:1.35rem;font-weight:400;color:var(--accent);width:18px;text-align:center}.diary-delete{background:transparent;border:1px solid var(--border);color:var(--muted);font-size:.72rem;padding:8px;border-radius:7px}.diary-delete:hover{color:var(--accent)}.diary-detail{padding:0 0 18px 50px}.diary-exercise{padding:15px 0;border-top:1px solid var(--border)}.diary-exercise-title{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}.diary-exercise-title strong{font-size:.91rem;line-height:1.35}.diary-exercise-title span{font:.68rem ui-monospace,monospace;color:var(--muted);white-space:nowrap}.diary-exercise-notes{font-size:.8rem;margin:0 0 10px}.diary-sets{display:grid;gap:0}.diary-set{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(45px,.65fr);align-items:center;gap:8px;min-height:39px;border-bottom:1px solid var(--border);font-size:.86rem;font-variant-numeric:tabular-nums}.diary-set:last-child{border-bottom:0}.diary-set-label{font:.65rem ui-monospace,monospace;letter-spacing:.08em;color:var(--muted);min-height:28px}.diary-set-index{color:var(--accent);font-weight:750}.diary-set-extra{grid-column:2/-1;color:var(--muted);font-size:.71rem;padding-bottom:7px}@media(max-width:680px){.diary-panel{padding:18px 16px}.diary-toggle{gap:9px;padding:14px 0}.diary-symbol{width:34px;height:34px}.diary-detail{padding-left:0}.diary-source{font-size:.56rem}.diary-delete{font-size:.65rem;padding:7px 6px}.diary-exercise{padding:13px 0}}.diary-layout{display:grid;gap:14px;max-width:950px}.diary-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.diary-toolbar .eyebrow{margin:0}.diary-actions{display:flex;align-items:center;gap:8px}.diary-add{width:43px;height:43px;padding:0;font-size:1.6rem;line-height:1;border-radius:11px}.diary-import-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px}.diary-import-menu button{background:var(--surface);color:var(--text);border:1px solid var(--border);text-align:left;font-size:.86rem}.diary-action-panel{padding:20px}.diary-action-panel h2{font-size:1.15rem}.healthfit-preview{list-style:none;padding:0;margin:12px 0}.healthfit-preview li{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-bottom:1px solid var(--border);padding:12px 0;font-size:.86rem}.healthfit-preview small{color:var(--muted)}.healthfit-preview span{margin-left:auto;color:var(--accent);font-size:.75rem}.healthfit-metrics{padding:12px;background:var(--bg);border-radius:10px;margin-bottom:12px}.healthfit-metrics>strong{font:700 .65rem ui-monospace,monospace;letter-spacing:.08em;color:var(--muted)}.healthfit-metrics>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin-top:12px}.healthfit-metrics span{display:grid;gap:4px}.healthfit-metrics small{color:var(--muted);font-size:.72rem}.healthfit-metrics b{font-size:1.1rem;font-variant-numeric:tabular-nums}@media(max-width:680px){.diary-import-menu{grid-template-columns:1fr}.diary-action-panel{padding:18px}.diary-toolbar{padding:0 2px}}.swim-dashboard{--swim-orange:#f47a35;--swim-free:#bdc3ca;--swim-back:#707983;--swim-fly:#9d8bc4;--swim-unknown:#4d555e;background:#141619;color:#f6f7f8;border-radius:14px;padding:16px;display:grid;gap:12px;font-variant-numeric:tabular-nums}.swim-dash-header,.swim-dash-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.swim-dash-header{font:700 .65rem ui-monospace,monospace;letter-spacing:.12em;color:#aeb3b9}.swim-dash-dot{color:var(--swim-orange);font-size:1rem}.swim-dash-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.swim-dash-tile{background:#22252a;border-radius:9px;padding:12px;display:grid;gap:8px;min-width:0}.swim-dash-tile>span{font:700 .58rem ui-monospace,monospace;color:#aeb3b9;letter-spacing:.07em}.swim-dash-tile>strong{font-size:clamp(1.2rem,5vw,1.75rem);line-height:1.1;letter-spacing:-.05em;white-space:nowrap}.swim-dash-tile small{font-size:.6rem;letter-spacing:0;color:#aeb3b9;margin-left:5px}.swim-dash-block{background:#22252a;border-radius:9px;padding:12px;display:grid;gap:12px}.swim-dash-row strong{font:700 .68rem ui-monospace,monospace;letter-spacing:.09em}.swim-dash-row small{font-size:.66rem;color:#aeb3b9}.swim-style-bar{display:flex;gap:2px;height:13px;border-radius:4px;overflow:hidden}.swim-style-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:9px}.swim-style-legend>div{display:grid;grid-template-columns:8px 1fr;align-items:center;column-gap:5px;row-gap:4px;font-size:.68rem}.swim-style-legend i{width:7px;height:7px;border-radius:50%}.swim-style-legend strong{grid-column:2;font-size:.8rem}.swim-color-breast{background:var(--swim-orange)}.swim-color-free{background:var(--swim-free)}.swim-color-back{background:var(--swim-back)}.swim-color-fly{background:var(--swim-fly)}.swim-color-unknown{background:var(--swim-unknown)}.swim-lap-map{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}.swim-lap-cell{display:block;min-width:0;height:19px;padding:0;border:1px solid transparent;border-radius:3px;cursor:pointer}.swim-lap-cell.swim-lap-gap{background:transparent;border:1px dashed #747b83;min-width:4px}.swim-lap-cell.is-selected{outline:2px solid #fff;outline-offset:2px}.swim-lap-cell:focus-visible{outline:2px solid var(--swim-orange);outline-offset:2px}.swim-lap-selection{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:9px 10px;border:1px solid #4a5058;border-radius:7px;font-size:.75rem}.swim-lap-selection>span:first-child{color:var(--swim-orange);font:700 .66rem ui-monospace,monospace}.swim-lap-selection>span:last-child{margin-left:auto;color:#aeb3b9}.swim-dash-more{border-top:1px solid #3a3e45;padding-top:10px}.swim-dash-more summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;font:700 .68rem ui-monospace,monospace;letter-spacing:.06em;padding:5px 0}.swim-dash-more summary::-webkit-details-marker{display:none}.swim-dash-more[open] summary span{transform:rotate(45deg)}.swim-dash-more>.swim-dash-block{margin-top:12px}.swim-timeline{border-left:2px solid #4b5159;margin-left:6px;padding-left:12px;display:grid;gap:10px}.swim-timeline-item{position:relative;display:flex;align-items:center;gap:8px;font-size:.72rem}.swim-timeline-item i{position:absolute;left:-18px;width:9px;height:9px;border-radius:50%;background:var(--swim-orange)}.swim-timeline-item strong{margin-left:auto;white-space:nowrap}.swim-timeline-item small{color:#aeb3b9;white-space:nowrap}.swim-advanced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.swim-advanced-grid>div{display:grid;gap:4px;background:#22252a;padding:10px;border-radius:7px}.swim-advanced-grid small{font-size:.61rem;color:#aeb3b9}.swim-advanced-grid strong{font-size:.9rem}.swim-dash-disclaimer{font-size:.68rem;color:#aeb3b9;line-height:1.5;margin:12px 0 0}@media(max-width:390px){.swim-dashboard{padding:12px}.swim-lap-map{gap:4px}.swim-dash-tile{padding:10px}.swim-dash-tile>strong{font-size:1.2rem}}.strength-dashboard{gap:10px}.strength-physio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.strength-physio>div{background:#22252a;border-radius:8px;padding:10px 8px;display:grid;gap:5px;min-width:0}.strength-physio small{color:#aeb3b9;font:.62rem ui-monospace,monospace}.strength-physio strong{font-size:1.02rem;white-space:nowrap}.strength-physio strong span{font-size:.63rem;color:#aeb3b9;font-weight:500}.strength-exercises{gap:0}.strength-exercises>.swim-dash-row{padding-bottom:10px}.strength-exercise{border-top:1px solid #3b4149}.strength-exercise summary{display:flex;align-items:center;gap:9px;min-height:52px;cursor:pointer;list-style:none}.strength-exercise summary::-webkit-details-marker{display:none}.strength-exercise-index{font:700 .69rem ui-monospace,monospace;color:var(--swim-orange)}.strength-exercise-name{font-size:.83rem;font-weight:650;line-height:1.35;min-width:0;flex:1}.strength-exercise summary small{font:.61rem ui-monospace,monospace;color:#aeb3b9;white-space:nowrap}.strength-expand{font-size:1.2rem;color:var(--swim-orange)}.strength-exercise[open] .strength-expand{transform:rotate(45deg)}.strength-notes{font-size:.72rem;color:#b8bdc4;margin:0 0 8px}.strength-sets{padding-bottom:12px}.strength-set{display:grid;grid-template-columns:44px 1fr 1fr;align-items:center;gap:8px;padding:9px 0;border-top:1px solid #343941;font-size:.8rem;font-variant-numeric:tabular-nums}.strength-set-head{font:.64rem ui-monospace,monospace;color:#aeb3b9}.strength-set-num{font-weight:750;color:var(--swim-orange)}.strength-set-extra{grid-column:2/-1;color:#aeb3b9;font-size:.69rem}.strength-empty{font-size:.76rem;color:#aeb3b9}@media(max-width:390px){.strength-physio strong{font-size:.87rem}.strength-exercise summary{gap:6px}}.muscle-composition{gap:11px}.muscle-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.muscle-tile{height:29px;min-width:0;border:1px solid transparent;border-radius:4px;cursor:pointer;position:relative;padding:0;appearance:none}.muscle-tile:focus-visible{outline:2px solid #ff792e;outline-offset:2px}.muscle-tile.is-selected{outline:2px solid #ff792e;outline-offset:2px}.muscle-chest{background:#f0f0ed}.muscle-shoulders{background:#777e87}.muscle-biceps{background:#555c65}.muscle-triceps{background:#3b424b}.muscle-legs{background:#deded9}.muscle-glutes{background:#939aa2}.muscle-core{background:#686f78}.muscle-forearms{background:#484f58}.muscle-calves{background:#c4c8ca}.muscle-unknown{background:transparent;border:1px solid #858c95}.muscle-legend{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.muscle-legend>span{display:inline-flex;align-items:center;gap:4px;color:#c5c9ce;font-size:.65rem;white-space:nowrap}.muscle-legend b{color:#fff;font-variant-numeric:tabular-nums}.muscle-key{display:inline-block;width:8px;height:8px;border-radius:2px;flex-shrink:0}.muscle-selection{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;border-top:1px solid #3b4149;padding-top:9px;font-size:.73rem}.muscle-selection strong{color:#fff}.muscle-selection span{color:#aeb3b9}.muscle-tile:not(.muscle-unknown):after,.muscle-key:not(.muscle-unknown):after{content:"";position:absolute;inset:0;margin:auto;pointer-events:none}.muscle-key{position:relative;width:13px;height:13px;border:1px solid #7e858d}.muscle-chest{background:#f1f0ec}.muscle-back{background:#aeb3b9}.muscle-biceps{background:#565d66}.muscle-core{background:#7c838c}.muscle-shoulders{background:#8b929a}.muscle-triceps{background:#454c55}.muscle-legs{background:#d2d3d0}.muscle-glutes{background:#989fa7}.muscle-forearms{background:#626a73}.muscle-calves{background:#bec2c4}.muscle-tile.muscle-chest:after{width:8px;height:8px;border-radius:50%;background:#292d32}.muscle-tile.muscle-back:after{width:12px;height:3px;background:#353b42}.muscle-tile.muscle-biceps:after{width:5px;height:5px;border-radius:50%;background:#e7e9e9}.muscle-tile.muscle-core:after{width:10px;height:10px;border:2px solid #252b31;transform:rotate(45deg)}.muscle-tile.muscle-shoulders:after{width:10px;height:10px;border:2px solid #24292e;border-radius:50%}.muscle-tile.muscle-triceps:after{width:12px;height:3px;background:#f0f0ed;transform:rotate(-45deg)}.muscle-tile.muscle-legs:after{width:3px;height:13px;background:#31373c}.muscle-tile.muscle-glutes:after{width:11px;height:7px;border-top:3px solid #252b31;border-bottom:3px solid #252b31}.muscle-tile.muscle-forearms:after{width:9px;height:9px;border:2px solid #eee;transform:rotate(45deg)}.muscle-tile.muscle-calves:after{width:11px;height:11px;border:2px dashed #33383e;border-radius:50%}.muscle-key.muscle-chest:after{width:4px;height:4px;border-radius:50%;background:#292d32}.muscle-key.muscle-back:after{width:7px;height:2px;background:#353b42}.muscle-key.muscle-biceps:after{width:4px;height:4px;border-radius:50%;background:#e7e9e9}.muscle-key.muscle-core:after{width:5px;height:5px;border:1.5px solid #252b31;transform:rotate(45deg)}.muscle-key.muscle-shoulders:after{width:6px;height:6px;border:1.5px solid #24292e;border-radius:50%}.muscle-key.muscle-triceps:after{width:7px;height:2px;background:#f0f0ed;transform:rotate(-45deg)}.muscle-key.muscle-legs:after{width:2px;height:7px;background:#31373c}.muscle-key.muscle-glutes:after{width:7px;height:4px;border-top:2px solid #252b31;border-bottom:2px solid #252b31}.muscle-key.muscle-forearms:after{width:5px;height:5px;border:1px solid #eee;transform:rotate(45deg)}.muscle-key.muscle-calves:after{width:6px;height:6px;border:1px dashed #33383e;border-radius:50%}.muscle-tile.is-selected{background:#ff792e}.muscle-tile.is-selected:after{background:#202328;border-color:#202328}.muscle-legend{gap:7px 12px}.progress-overview{display:grid;gap:12px;background:#141619;color:#f0f0ed;border:1px solid #343941;border-radius:14px;padding:14px}.progress-heading,.progress-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;font:.68rem ui-monospace,monospace;letter-spacing:.06em}.progress-accent{color:#ff792e}.progress-periods{display:flex;gap:5px;background:#22252a;border-radius:8px;padding:4px}.progress-periods button{flex:1;background:transparent;border:0;border-radius:6px;padding:9px;color:#b5bbc2;font:.7rem ui-monospace,monospace;cursor:pointer}.progress-periods button.active{background:#ff792e;color:#17191c;font-weight:800}.progress-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-metrics>div{display:grid;gap:9px;min-width:0;background:#22252a;border-radius:8px;padding:12px}.progress-metrics small,.progress-chart-heading small{font:.61rem ui-monospace,monospace;color:#aeb3b9}.progress-metrics strong{font-size:1.6rem;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.progress-chart{background:#22252a;border-radius:8px;padding:12px;display:grid;gap:12px}.progress-bars{display:flex;align-items:end;gap:4px;min-height:120px;border-bottom:1px solid #4b525b}.progress-week{flex:1;min-width:0;display:grid;justify-items:center;gap:4px}.progress-week small{font:.55rem ui-monospace,monospace;color:#9ca3aa}.progress-bar-track{height:100px;width:100%;max-width:32px;display:flex;flex-direction:column-reverse;justify-content:flex-start}.progress-bar-track span{display:block;min-height:0}.progress-bar-strength,.progress-key-strength{background:#f0f0ed}.progress-bar-swim,.progress-key-swim{background:#858c95}.progress-bar-other,.progress-key-other{background:#555c65}.progress-legend{display:flex;gap:12px;flex-wrap:wrap}.progress-legend span{display:flex;align-items:center;gap:5px;font:.64rem ui-monospace,monospace;color:#c5c9ce}.progress-legend i{display:block;width:9px;height:9px;border-radius:2px}.progress-muted{color:#aeb3b9;font-size:.72rem;line-height:1.45;margin:0}.progress-layout{display:grid;gap:10px}.progress-top-tabs{display:flex;gap:5px;background:#22252a;border-radius:9px;padding:4px}.progress-top-tabs button{flex:1;border:0;background:transparent;color:#b5bbc2;border-radius:7px;padding:11px;font:600 .78rem ui-monospace,monospace;cursor:pointer}.progress-top-tabs button.active{background:#ff792e;color:#141619}.strength-progress-select{display:grid;gap:8px;color:#aeb3b9;font:.65rem ui-monospace,monospace;letter-spacing:.04em;background:#22252a;border-radius:8px;padding:12px}.strength-progress-select select{min-width:0;width:100%;background:#141619;color:#f0f0ed;border:1px solid #4b525b;border-radius:7px;padding:12px;font-size:.9rem}.progress-metrics strong span{font-size:.75rem;font-weight:500;color:#b5bbc2}.strength-line-scroll{overflow-x:auto;max-width:100%;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.strength-line-inner{min-width:100%}.strength-line-svg{display:block;width:100%;height:150px}.strength-line-labels{display:flex;justify-content:space-between;align-items:center;padding:0 8px;gap:0}.strength-line-labels button{flex:1;min-width:0;background:transparent;border:0;color:#aeb3b9;padding:9px 0;font:.62rem ui-monospace,monospace;cursor:pointer}.strength-line-labels button.active{color:#ff792e;font-weight:800}.strength-line-labels button:focus-visible{outline:2px solid #ff792e;outline-offset:-2px;border-radius:4px}.strength-line-selected{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #454b53;padding-top:10px;font:.75rem ui-monospace,monospace;color:#aeb3b9}.strength-line-selected strong{color:#ff792e;font-size:1rem;font-variant-numeric:tabular-nums}.swim-style-trend-legend{display:flex;gap:9px 13px;flex-wrap:wrap}.swim-style-trend-legend span,.swim-style-trend-detail span{display:flex;align-items:center;gap:6px;font:.67rem ui-monospace,monospace;color:#c5c9ce}.swim-style-trend-legend i,.swim-style-trend-detail i{width:9px;height:9px;display:inline-block;border-radius:50%;flex:none}.swim-style-trend-detail{border-top:1px solid #454b53;padding-top:10px;display:grid;gap:9px}.swim-style-trend-detail>strong{font:.72rem ui-monospace,monospace;color:#f0f0ed}.swim-style-trend-detail>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.swim-style-trend-detail span{min-width:0}.swim-style-trend-detail b{margin-left:auto;color:#f0f0ed}.strength-line-svg g[role=button]:focus-visible{outline:none}.strength-line-svg g[role=button]:focus-visible circle:last-child{stroke:#ff792e;stroke-width:3}.overview-week-detail{display:grid;gap:10px;border-top:1px solid #454b53;padding-top:10px}.overview-week-title{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;font:.67rem ui-monospace,monospace}.overview-week-title span{color:#aeb3b9}.overview-week-title strong{color:#f0f0ed}.overview-week-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.overview-week-values>div{display:grid;gap:5px;background:#141619;border-radius:7px;padding:10px;min-width:0}.overview-week-values small{font:.57rem ui-monospace,monospace;color:#aeb3b9}.overview-week-values strong{font-size:1.25rem;color:#f0f0ed;font-variant-numeric:tabular-nums}.today-dashboard{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}.today-panel{display:grid;gap:18px}.today-panel .eyebrow{margin-bottom:8px}.today-panel h2{margin:0}.today-head{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap}.today-date{font:.72rem ui-monospace,monospace;color:var(--muted)}.today-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.today-day{min-width:0;min-height:92px;padding:10px 3px;background:var(--bg);border:1px solid var(--border);border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:5px}.today-day.is-today{border:2px solid var(--accent);padding:9px 2px}.today-day.is-future{opacity:.55}.today-day span{font:700 .6rem ui-monospace,monospace;color:var(--muted)}.today-day strong{font:800 1.15rem ui-monospace,monospace;color:var(--text)}.today-day small{font:700 .58rem ui-monospace,monospace;color:var(--accent);text-align:center;overflow-wrap:anywhere}.today-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.today-summary>div{display:grid;gap:7px;padding:13px;background:var(--bg);border:1px solid var(--border);border-radius:7px;min-width:0}.today-summary small{font:700 .61rem ui-monospace,monospace;color:var(--muted)}.today-summary strong{font:800 clamp(1.1rem,2.5vw,1.5rem) ui-monospace,monospace;color:var(--text);font-variant-numeric:tabular-nums}.today-diary-action{display:flex;align-items:center;justify-content:space-between;gap:15px;grid-column:1/-1;text-align:left;border-radius:9px;padding:20px}.today-diary-action span:first-child{display:grid;gap:5px}.today-diary-action small{font-size:.75rem;font-weight:500}.today-diary-action span:last-child{font-size:1.4rem}@media(max-width:900px){.today-dashboard{grid-template-columns:1fr}}@media(max-width:680px){.today-panel{padding:16px}.today-day{min-height:80px}.today-day strong{font-size:1rem}.today-day small{font-size:.54rem}}:root{--fit-panel:#ffffff;--fit-tile:#f1f1ee;--fit-input:#ffffff;--fit-ink:#191b1c;--fit-secondary:#60666b;--fit-stroke:#d8dad8;--fit-chart:#737a82;--fit-contrast:#34383e}:root[data-theme=dark]{--fit-panel:#141619;--fit-tile:#22252a;--fit-input:#141619;--fit-ink:#f0f0ed;--fit-secondary:#aeb3b9;--fit-stroke:#454b53;--fit-chart:#858c95;--fit-contrast:#f0f0ed}.swim-dashboard,.progress-overview{background:var(--fit-panel);color:var(--fit-ink);border:1px solid var(--fit-stroke)}.swim-dash-tile,.swim-dash-block,.strength-physio>div,.swim-advanced-grid>div,.progress-periods,.progress-metrics>div,.progress-chart,.progress-top-tabs,.strength-progress-select{background:var(--fit-tile);color:var(--fit-ink)}.strength-progress-select select{background:var(--fit-input);color:var(--fit-ink);border-color:var(--fit-stroke)}.swim-dash-header,.swim-dash-tile>span,.swim-dash-tile small,.swim-dash-row small,.swim-lap-selection>span:last-child,.swim-timeline-item small,.swim-advanced-grid small,.swim-dash-disclaimer,.strength-physio small,.strength-physio strong span,.strength-exercise summary small,.strength-notes,.strength-set-head,.strength-set-extra,.strength-empty,.muscle-legend>span,.muscle-selection span,.progress-metrics small,.progress-chart-heading small,.progress-muted,.progress-periods button:not(.active),.progress-top-tabs button:not(.active),.strength-progress-select,.strength-line-labels button:not(.active),.strength-line-selected,.swim-style-trend-legend span,.swim-style-trend-detail span,.overview-week-title span,.overview-week-values small,.progress-legend span{color:var(--fit-secondary)}.strength-exercise,.strength-set,.muscle-selection,.swim-dash-more,.swim-style-trend-detail,.strength-line-selected,.overview-week-detail,.swim-lap-selection{border-color:var(--fit-stroke)}.muscle-legend b,.muscle-selection strong,.swim-style-trend-detail>strong,.swim-style-trend-detail b,.overview-week-title strong,.overview-week-values strong{color:var(--fit-ink)}.overview-week-values>div{background:var(--fit-panel)}.progress-top-tabs button.active,.progress-periods button.active{background:var(--accent);color:#17191c}.strength-line-labels button.active{color:var(--accent)}.progress-overview .progress-key-strength{background:var(--fit-contrast)}.progress-overview .progress-key-swim{background:var(--fit-chart)}.today-dashboard{gap:14px}.today-panel{border-radius:10px;gap:16px}.today-panel:first-child{border-top:4px solid var(--accent)}.today-big-number{font-size:clamp(2.8rem,7vw,4rem);line-height:.9;letter-spacing:-.1em}.today-days{gap:4px}.today-day{border-radius:3px;background:var(--bg);min-height:102px;padding:10px 2px}.today-day.is-today{border:2px solid var(--accent);padding:9px 1px;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.today-day strong{font-size:1.25rem}.today-day-icons{display:flex;justify-content:center;align-items:center;gap:3px;flex-wrap:wrap;min-height:21px;color:var(--accent)}.today-day-icons>span{display:flex;align-items:center;justify-content:center}.today-day-icons svg{display:block}.today-day-empty{color:var(--muted)}.today-icon-legend{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font:.7rem ui-monospace,monospace}.today-icon-legend span{display:flex;align-items:center;gap:5px}.today-icon-legend svg,.today-last-sport svg{color:var(--accent);flex:none}.today-last-sport{display:flex;align-items:center;gap:10px}.today-summary>div{border-radius:4px;border-left:3px solid var(--accent)}.today-diary-action,.diary-symbol{border-radius:5px}@media(max-width:680px){.today-day{min-height:88px}.today-day strong{font-size:1.05rem}.today-day-icons{gap:1px}.today-day-icons svg{width:14px;height:14px}}.today-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.today-day,.today-day.is-today,.today-day.is-future{border:0;background:transparent;border-radius:0;padding:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:start;gap:9px}.today-day-label{font:700 .63rem ui-monospace,monospace;color:var(--fit-secondary);letter-spacing:.02em}.today-day-disc{width:min(100%,46px);aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--fit-tile);border:1px solid var(--fit-stroke);color:var(--fit-ink)}.today-day.is-today .today-day-disc{border:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--fit-tile))}.today-day-disc>strong{font:750 1rem ui-monospace,monospace;color:var(--fit-ink)}.today-day-disc .today-day-icons{min-height:0;gap:1px;color:var(--fit-ink)}.today-day-disc .today-day-icons svg{width:17px;height:17px}.today-day-number{font:650 .64rem ui-monospace,monospace;color:var(--fit-secondary)}.today-day.is-today .today-day-number{color:var(--accent);font-weight:800}@media(max-width:390px){.today-day-disc{width:min(100%,39px)}.today-day-disc .today-day-icons svg{width:14px;height:14px}.today-day{gap:7px}}.today-week-navigation{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--fit-secondary);font:650 .72rem ui-monospace,monospace}.today-week-navigation button{width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--fit-stroke);border-radius:5px;background:var(--fit-tile);color:var(--fit-ink);font-size:1.25rem;padding:0}.today-week-navigation button:disabled{opacity:.25}.today-days{touch-action:pan-y;user-select:none;-webkit-user-select:none}.today-day-label{white-space:nowrap;font-size:.58rem}.today-day-label small{font-size:.56rem;font-weight:500;color:var(--fit-secondary)}.today-day-disc{background:var(--fit-tile);border-color:var(--fit-stroke)}.today-day.has-workout .today-day-disc{background:var(--accent);border-color:var(--accent);color:#191919}.today-day.has-workout .today-day-icons{color:#191919}.today-day.is-today .today-day-disc{outline:2px solid var(--accent);outline-offset:3px;border-color:var(--fit-stroke)}.today-day.is-today.has-workout .today-day-disc{border-color:var(--accent)}.today-day-empty{font:700 1rem ui-monospace,monospace;color:var(--fit-secondary)}.today-day.is-future{opacity:.5}@media(max-width:390px){.today-day-label{font-size:.53rem}.today-day-label small{font-size:.52rem}}.diary-actions{gap:7px}.diary-actions>.ghost-button,.diary-actions>.diary-add{height:38px;border:1px solid var(--border);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:700 .75rem ui-monospace,monospace}.diary-actions>.ghost-button{background:var(--surface);color:var(--text);padding:0 11px}.diary-actions>.diary-add{width:38px;padding:0;background:var(--accent);color:#17191c}.diary-action-icon{display:flex;align-items:center}.diary-action-chevron{font-size:.9rem;line-height:1}.today-days{gap:6px;overflow:visible}.today-day,.today-day.is-today,.today-day.is-future{width:100%;min-width:0;gap:9px}.today-day-disc{width:min(100%,42px);height:auto;aspect-ratio:1;box-sizing:border-box;flex:none}.today-day.is-today .today-day-disc{outline:none;box-shadow:inset 0 0 0 2px var(--accent);border:2px solid var(--fit-stroke);background:color-mix(in srgb,var(--accent) 9%,var(--fit-tile))}.today-day.is-today.has-workout .today-day-disc{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--fit-panel)}.today-day-label{display:flex;align-items:baseline;justify-content:center;gap:3px;min-width:0}.today-days-animated{animation:fit-week-enter .22s cubic-bezier(.22,.61,.36,1) both}.today-days-animated.direction-previous{--week-slide:-14px}.today-days-animated.direction-next{--week-slide:14px}@keyframes fit-week-enter{0%{opacity:.55;transform:translate(var(--week-slide))}to{opacity:1;transform:translate(0)}}@media(max-width:390px){.today-days{gap:4px}.today-day-disc{width:min(100%,37px)}}@media(prefers-reduced-motion:reduce){.today-days-animated{animation:none}}.today-week-viewport{position:relative;overflow:hidden;touch-action:pan-y;isolation:isolate}.today-week-layer{width:100%}.today-week-exit{position:absolute;inset:0;pointer-events:none;z-index:1}.today-week-enter{position:relative;z-index:2}.today-week-enter.toward-past{animation:fit-week-in-past .32s cubic-bezier(.22,.61,.36,1) both}.today-week-exit.toward-past{animation:fit-week-out-past .32s cubic-bezier(.22,.61,.36,1) both}.today-week-enter.toward-future{animation:fit-week-in-future .32s cubic-bezier(.22,.61,.36,1) both}.today-week-exit.toward-future{animation:fit-week-out-future .32s cubic-bezier(.22,.61,.36,1) both}@keyframes fit-week-in-past{0%{transform:translate(-100%);opacity:.85}to{transform:translate(0);opacity:1}}@keyframes fit-week-out-past{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:.85}}@keyframes fit-week-in-future{0%{transform:translate(100%);opacity:.85}to{transform:translate(0);opacity:1}}@keyframes fit-week-out-future{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:.85}}@media(prefers-reduced-motion:reduce){.today-week-enter.toward-past,.today-week-enter.toward-future{animation:fit-week-fade-in .18s ease-out both}.today-week-exit.toward-past,.today-week-exit.toward-future{animation:fit-week-fade-out .18s ease-out both}}@keyframes fit-week-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fit-week-fade-out{0%{opacity:1}to{opacity:0}}.schede-layout{display:grid;gap:14px;max-width:950px;margin:0 auto}.schede-form{display:grid;gap:10px;margin-top:18px}.schede-form label{display:grid;gap:7px}.schede-form input,.schede-form select,.schede-form textarea{width:100%;box-sizing:border-box;background:var(--fit-tile);color:var(--fit-ink);border:1px solid var(--fit-stroke);border-radius:5px;padding:11px;font:inherit}.schede-form button{background:var(--accent);color:#17191c;border:0;border-radius:5px;padding:12px;font-weight:750}.schede-plan{border:1px solid var(--fit-stroke);border-radius:6px;margin:12px 0;overflow:hidden}.schede-plan-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:0;background:var(--fit-tile);color:var(--fit-ink);text-align:left}.schede-plan-toggle strong{flex:1}.schede-plan-toggle span{font-size:.75rem;color:var(--fit-secondary)}.schede-detail{padding:14px}.schede-detail details{border-bottom:1px solid var(--fit-stroke);padding:12px 0}.schede-detail summary{cursor:pointer;font-weight:700}.schede-detail li{margin:10px 0}.schede-detail li span{color:var(--fit-secondary);font-size:.8rem}.schede-program>.ghost-button{margin-top:8px}.schede-block-editor{display:grid;gap:10px;padding:12px;border:1px solid var(--fit-stroke);border-radius:6px}.schede-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.schede-block-editor .ghost-button,.schede-form>.ghost-button{background:var(--fit-tile);color:var(--fit-ink);border:1px solid var(--fit-stroke)}.schede-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 2px}.schede-topbar h2{font-size:clamp(1.5rem,4vw,2rem);margin:6px 0}.schede-add{width:42px;height:42px;flex:none;border:0;border-radius:5px;background:var(--accent);color:#17191c;font-size:1.7rem;font-weight:600;display:grid;place-items:center;padding:0}.schede-program{padding-top:14px}.schede-v2{gap:16px}.schede-v2-head{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 4px}.schede-v2-head h2{font-size:clamp(1.65rem,5vw,2.15rem);margin:6px 0 0}.schede-filters{display:flex;gap:8px;flex-wrap:wrap}.schede-filters button{border:1px solid var(--fit-stroke);border-radius:5px;padding:9px 14px;background:var(--fit-tile);color:var(--fit-secondary);font-weight:700;font-size:.78rem}.schede-filters button.active{background:var(--fit-ink);color:var(--fit-panel);border-color:var(--fit-ink)}.schede-v2-list{padding:4px 16px!important}.schede-v2-row{display:flex;align-items:center;gap:14px;width:100%;padding:17px 0;background:transparent;border:0;border-bottom:1px solid var(--fit-stroke);color:var(--fit-ink);text-align:left}.schede-v2-row:last-child{border-bottom:0}.schede-v2-symbol{width:45px;height:45px;border-radius:6px;display:grid;place-items:center;background:var(--fit-tile);flex:none}.schede-v2-row-text{flex:1;min-width:0;display:grid;gap:5px}.schede-v2-row-text strong{font-size:1rem;overflow-wrap:anywhere}.schede-v2-row-text small{font-size:.73rem;color:var(--fit-secondary)}.schede-v2-row>svg{color:var(--fit-secondary);flex:none}.schede-v2-page{display:grid;gap:16px}.schede-v2-page h2{margin:0;overflow-wrap:anywhere}.schede-v2-back{display:flex;align-items:center;gap:8px;width:max-content;border:0;background:transparent;color:var(--fit-secondary);padding:2px 0;font-size:.8rem;font-weight:700}.schede-v2-section-title{display:flex;justify-content:space-between;gap:12px;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.schede-v2-section-title span{font-weight:500;color:var(--fit-secondary)}.schede-v2-blocks{display:grid;gap:0}.schede-v2-block{display:flex;align-items:flex-start;gap:14px;padding:13px 0;border-bottom:1px solid var(--fit-stroke)}.schede-v2-block:last-child{border-bottom:0}.schede-v2-index{font:.7rem ui-monospace,monospace;color:var(--accent);padding-top:3px;flex:none}.schede-v2-block>div{display:grid;gap:6px;min-width:0}.schede-v2-block strong{font-size:.93rem}.schede-v2-block small{font-size:.75rem;color:var(--fit-secondary);line-height:1.5}.schede-v2-primary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;border:0;border-radius:5px;padding:13px;background:var(--accent);color:#17191c;font-weight:800}.schede-v2-history{border-top:1px solid var(--fit-stroke);padding-top:6px}.schede-v2-history>button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 0;border:0;background:transparent;color:var(--fit-ink);font-weight:750;text-align:left}.schede-v2-history>button span{margin-left:auto;color:var(--fit-secondary)}.schede-v2-history details{border-top:1px solid var(--fit-stroke);padding:12px 0}.schede-v2-history summary{font-size:.8rem;cursor:pointer}.schede-v2-editor-list{display:grid;gap:8px}.schede-v2-editor-block{border:1px solid var(--fit-stroke);border-radius:6px;overflow:hidden}.schede-v2-editor-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:13px;border:0;background:var(--fit-tile);color:var(--fit-ink);text-align:left;font-weight:750}.schede-v2-editor-toggle span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.schede-v2-editor-fields{display:grid;gap:12px;padding:14px}.schede-v2-remove{justify-self:start;background:transparent!important;border:0!important;color:var(--fit-secondary)!important;padding:6px 0!important;font-size:.75rem}.schede-v2-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--fit-tile)!important;color:var(--fit-ink)!important;border:1px solid var(--fit-stroke)!important;font-size:.83rem}@media(max-width:390px){.schede-v2-list{padding:2px 12px!important}.schede-v2-row{gap:10px}.schede-v2-symbol{width:40px;height:40px}.schede-filters button{padding:8px 11px}}.schede-v2-import{width:100%;padding:11px 14px;background:var(--fit-tile);color:var(--fit-ink);border:1px solid var(--fit-stroke);border-radius:5px;font-weight:700;font-size:.82rem;text-align:center}.schede-v2-import:disabled{opacity:.55}
