.builder-row .ex-url{grid-column:1/-1}
.standalone{min-height:100vh;display:grid;place-content:center;padding:24px;background:radial-gradient(circle at 20% 10%,#343822,#10110f 50%)}
.standalone .login-card{width:min(440px,calc(100vw - 32px))}.standalone .brand{color:#10110f;margin-bottom:34px}.link-button{width:100%;border:0;background:transparent;color:#686960;margin-top:15px;text-decoration:underline}
.top-actions{display:flex;gap:9px;align-items:center}.btn-exit{margin-top:14px;background:#292a24;border:1px solid #3a3b34;color:#fff}.muted{color:#77786f;font-size:13px;line-height:1.55}
.section-title{display:flex;align-items:center;gap:10px;margin:28px 0 13px}.section-title h2{font:700 20px Unbounded;margin:0}.section-title span{background:#dddcd4;border-radius:99px;padding:4px 9px;font-size:11px}
.program-grid,.athlete-grid,.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.program-card{display:flex;justify-content:space-between;align-items:center;gap:15px}.program-card h3{font-size:17px;margin:12px 0 4px}.program-card p,.program-card small{color:#77786f;font-size:11px}.program-card .progress{min-width:220px;margin-bottom:5px}.tag.archived{background:#e7e6df;color:#6d6e67}
.program-banner{padding:25px;border-radius:21px;color:#fff;background:linear-gradient(135deg,#6d5dfc,#4036a8)}.program-banner h2{font:700 25px Unbounded;margin:10px 0}.program-banner p{color:#d9d5ff}.program-banner .progress{background:#8174ff}.program-banner .progress i{background:#d7ff4f}
.athlete-head{display:flex;gap:13px;align-items:center}.athlete-head h3{margin:0 0 3px}.athlete-head p{margin:0;color:#77786f;font-size:12px}.manage-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.danger-link{border:0;background:transparent;color:#d84444;font-weight:700;padding:8px;font-size:12px}.copy-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.template-card{border:1px solid #deddd6;background:#fff;border-radius:15px;padding:14px;margin:11px 0}.template-head{display:flex;gap:8px;align-items:center;margin-bottom:10px}.template-title{font-weight:800}.catalog-row{display:grid;grid-template-columns:minmax(200px,1fr) 70px 80px 36px;gap:7px;margin:7px 0}.catalog-row input{text-align:center}.catalog-row .remove{min-height:44px}.btn-video{background:#6d5dfc;color:#fff}.athlete-filter{max-width:360px;margin-bottom:18px}
.chart-card svg{width:100%;overflow:visible}.chart-card .card-title{margin-bottom:5px}.chart-card .card-title b{color:#ff5a1f}.axis{stroke:#d8d7d0;stroke-width:1}.chart-line{fill:none;stroke:#6d5dfc;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chart-card circle{fill:#d7ff4f;stroke:#10110f;stroke-width:2}.chart-dates{display:flex;justify-content:space-between;color:#77786f;font-size:10px}
@media(max-width:900px){.top-actions .logout{display:none}.program-grid,.athlete-grid,.chart-grid{grid-template-columns:1fr}.program-card{align-items:flex-start;flex-direction:column}.program-card>div:first-child{min-width:0;width:100%}.program-card .progress{min-width:0;width:100%}.catalog-row{grid-template-columns:1fr 58px 64px 34px}.copy-row{grid-template-columns:1fr}.section-title{margin-top:22px}.standalone{place-content:start center;padding-top:35px}}

.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#e7e5de;border-radius:13px;padding:4px;margin-bottom:28px}.auth-tabs button{border:0;background:transparent;border-radius:10px;padding:10px;font-weight:800;color:#77786f}.auth-tabs button.active{background:#fff;color:#10110f;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.profile{width:100%;border:0;background:transparent;color:#fff;text-align:left}.profile:hover{background:#252620;border-radius:12px}.profile-preview{display:flex;gap:13px;align-items:center;padding:16px;background:#fff;border:1px solid #deddd6;border-radius:15px;margin:12px 0}.profile-preview small{display:block;color:#77786f}.color-input{height:48px;padding:6px}.account-menu{display:grid;gap:9px;margin-top:18px}.account-menu .btn{width:100%}.account-menu .btn-exit{margin-top:5px}
.attention{margin-top:18px;border-left:5px solid #ff5a1f}.attention .card-title h2{font:700 22px Unbounded;margin:5px 0 0}.attention-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.attention-row{border:1px solid #deddd6;background:#faf9f5;border-radius:13px;padding:12px;display:flex;align-items:center;gap:11px;text-align:left}.attention-row:hover{border-color:#10110f}.attention-row .grow{min-width:0}.attention-row strong,.attention-row small{display:block}.attention-row small{color:#77786f;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attention-icon{width:34px;height:34px;display:grid;place-content:center;border-radius:10px;background:#10110f;color:#d7ff4f;font-weight:900}.priority-3 .attention-icon{background:#ff5a1f;color:#fff}.attention-clear{grid-column:1/-1;padding:23px;background:#eff7d2;border-radius:13px;color:#4e6412;font-weight:800}.video-badge{background:#ffefe8;color:#bd3d10;border-radius:99px;padding:5px 8px;font-size:10px;font-weight:800}
.builder-title{margin-top:25px}.builder-title p{margin:4px 0 0}.save-template{display:block;padding:13px 2px;font-weight:800}.template-actions{display:flex;align-items:center}.catalog-row-advanced{border:1px solid #e2e0d9;border-radius:13px;padding:8px;margin:8px 0;background:#faf9f5}.catalog-main{display:grid;grid-template-columns:104px minmax(190px,1fr) 65px 75px 36px;gap:7px}.move-controls{display:flex}.move-controls button{width:52px;border:0;background:#eceae3;font-size:10px}.exercise-options summary{cursor:pointer;color:#6d5dfc;font-size:11px;font-weight:800;padding:8px 2px 0}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 10px}.option-grid .full{grid-column:1/-1}.template-notes{margin-bottom:8px}.template-head{justify-content:space-between}
.workout-runner{position:sticky;top:10px;z-index:12;background:#10110f;color:#fff;border-radius:15px;padding:11px 14px;margin-bottom:15px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 28px rgba(0,0,0,.2)}.runner-progress{height:6px;flex:1;background:#393a34;border-radius:9px;overflow:hidden}.runner-progress i{display:block;height:100%;background:#d7ff4f;transition:.25s}.set-row-video{grid-template-columns:34px 1fr 1fr 1fr 38px 38px}.set-video{height:36px;border:1px solid #deddd6;background:#fff;color:#ff5a1f;border-radius:10px;font-size:18px}.previous-result{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#eeecff;border-radius:12px;padding:10px 12px;margin-bottom:14px;font-size:11px}.previous-result span{color:#77786f}.previous-result b{flex:1}.previous-result button{border:0;background:#6d5dfc;color:#fff;border-radius:8px;padding:7px 9px;font-weight:800}.workout-actions{justify-content:flex-end}.video-section{margin-top:22px}.video-review{border:1px solid #deddd6;border-left:4px solid #f1a21c;background:#fff;border-radius:12px;padding:12px;margin:9px 0}.video-review.status-approved{border-left-color:#55a65c}.video-review.status-needs_work{border-left-color:#d84444}.video-review-head{display:flex;justify-content:space-between;gap:8px}.video-review-head a b,.video-review-head a small{display:block}.video-review-head a small{color:#77786f;font-size:10px;margin-top:3px}.review-actions{display:flex;gap:7px;margin-top:10px}.tag.pending{background:#fff0c8;color:#8a5c00}.tag.needs_work{background:#fee;color:#a22}.tag.approved{background:#daf2da;color:#257225}.complete-workout{margin-top:18px}
.analytics-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.analytics-stats .card{display:grid;gap:7px}.analytics-stats small,.analytics-stats span{color:#77786f}.analytics-stats b{font:700 26px Unbounded}.records,.program-analytics{margin-top:16px}.record-list{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.record-list button{border:1px solid #deddd6;background:#faf9f5;border-radius:11px;padding:10px;display:grid;grid-template-columns:28px 1fr auto;align-items:center;text-align:left;gap:7px}.record-list button>span{grid-row:1/3;width:27px;height:27px;display:grid;place-content:center;border-radius:50%;background:#d7ff4f}.record-list small{grid-column:2/4;color:#77786f}.analytics-table{display:grid}.analytics-tr{display:grid;grid-template-columns:1fr 120px 120px;gap:10px;padding:11px;border-top:1px solid #e4e2db;align-items:center}.analytics-tr.head{border:0;color:#77786f;font-size:11px}.analytics-tr b,.analytics-tr small{display:block}.analytics-tr small{color:#77786f;margin-top:3px}.chart-card .card-title small{color:#77786f}.chart-dates span:nth-child(2){text-align:center}
@media(max-width:900px){.attention-list,.record-list{grid-template-columns:minmax(0,1fr)}.attention-row{min-width:0;width:100%}.analytics-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-main{grid-template-columns:minmax(0,1fr) 54px 58px 32px}.move-controls{grid-column:1/-1}.move-controls button{width:50%;min-height:34px}.option-grid{grid-template-columns:1fr}.option-grid .full{grid-column:auto}.template-head{align-items:flex-start}.template-actions{display:grid}.set-row-video{grid-template-columns:26px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 34px 34px}.analytics-tr{grid-template-columns:minmax(0,1fr) 75px 65px;padding:9px 2px}.workout-runner{top:6px}.chart-dates span:nth-child(2){display:none}}

.catalog-toolbar{max-width:520px;margin-bottom:12px}.catalog-manage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.catalog-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-height:135px}.catalog-item h3{margin:11px 0 7px;font-size:15px}.catalog-item a,.catalog-item small{font-size:11px;color:#6d5dfc}.program-title-link{display:block;width:100%;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.program-title-link h3{text-decoration:underline;text-decoration-color:#c9c8c0;text-underline-offset:4px}.program-title-link:hover h3{color:#6d5dfc;text-decoration-color:#6d5dfc}.program-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.icon-action{width:40px;height:40px;display:inline-grid;place-content:center;border:1px solid #deddd6;border-radius:11px;background:#fff;color:#34352f;cursor:pointer}.icon-action:hover{border-color:#10110f;background:#f4f3ed}.icon-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-action.delete-program,.icon-action.delete-workout,.icon-action.quick-delete-workout{color:#d84444}.program-detail-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.program-detail-meta span{padding:11px;border:1px solid #deddd6;border-radius:11px;font-size:12px}.program-detail-meta b{display:block;color:#77786f;font-size:10px;margin-bottom:4px;text-transform:uppercase}.program-workout-list{display:grid;gap:7px}.program-workout-list .list-item{width:100%;text-align:left}.absence-card{margin-top:18px}.absence-card .card-title h2{font:700 20px Unbounded;margin:5px 0 0}.absence-list{display:grid;gap:8px}.absence-row{display:flex;align-items:center;gap:10px;border:1px solid #deddd6;border-radius:12px;padding:10px}.absence-row b,.absence-row small{display:block}.absence-row small{color:#77786f;margin-top:2px}.absence-icon{width:36px;height:36px;border-radius:10px;display:grid;place-content:center;background:#fff0c8;color:#8a5c00;font-weight:900}.absence-icon.sick{background:#fee;color:#d84444}.absence-row button{border:0;background:transparent;font-size:11px;font-weight:800;color:#6d5dfc}.absence-row .delete-absence{font-size:19px;color:#d84444}
.chart-point{cursor:pointer;outline:none;transition:r .15s}.chart-point:hover,.chart-point:focus{r:9;stroke-width:3}.chart-tooltip{position:fixed;z-index:80;pointer-events:none;transform:translate(-50%,-100%);display:none;min-width:145px;background:#10110f;color:#fff;border-radius:11px;padding:9px 11px;box-shadow:0 8px 24px rgba(0,0,0,.25)}.chart-tooltip.show{display:grid;gap:2px}.chart-tooltip b{font:700 16px Unbounded;color:#d7ff4f}.chart-tooltip span,.chart-tooltip small{font-size:10px}.chart-tooltip small{color:#c8c8c2}
.workout-list-row{padding:5px 7px 5px 5px}.workout-row-main{min-width:0;flex:1;border:0;background:transparent;padding:9px;display:flex;align-items:center;gap:13px;text-align:left}.workout-row-main .grow{min-width:0;flex:1}.workout-row-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-row-main small{color:#77786f}.quick-delete-workout{flex:none}.infinite-status{text-align:center;color:#77786f;font-size:12px;padding:20px 8px 10px}#workoutsSentinel{height:2px}.workouts-card{min-height:260px}
@media(max-width:900px){.catalog-manage-grid{grid-template-columns:1fr}.catalog-item{min-height:auto}.absence-card .card-title{align-items:flex-start;gap:10px}.absence-row{align-items:flex-start}.absence-row .edit-absence{font-size:0}.absence-row .edit-absence:after{content:'✎';font-size:17px}.program-actions{width:100%;justify-content:flex-start}.program-detail-meta{grid-template-columns:1fr}.workout-row-main{gap:8px}.workout-row-main .tag{display:none}.quick-delete-workout{padding:10px}.workouts-card{padding:10px}}
.sidebar>.logout{width:100%;align-self:stretch;justify-content:flex-start;margin-left:0;padding-left:13px}.btn{max-width:100%;min-width:0;white-space:normal;text-align:center}.tag{max-width:100%;flex:none}.video-review-head{align-items:flex-start;flex-wrap:wrap;min-width:0}.video-review-head>div:first-child{min-width:0;flex:1}.video-review-head small{display:block;color:#77786f;font-size:10px;margin-top:3px}.video-review-tools,.workout-head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.video-review-tools .icon-action{width:34px;height:34px;color:#d84444}.workout-video{display:block;width:100%;max-height:520px;margin:12px 0;border-radius:11px;background:#10110f}.send-field{position:relative;margin-top:10px}.send-field .input{padding-right:52px}.send-field .comment-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;border-radius:10px;background:#10110f;color:#fff;font-size:20px;font-weight:800}.upload-progress{position:relative;height:38px;border-radius:10px;overflow:hidden;background:#e8e6df;margin-top:10px}.upload-progress i{position:absolute;inset:0 auto 0 0;width:0;background:#d7ff4f;transition:width .15s}.upload-progress span{position:relative;height:100%;display:grid;place-content:center;font-size:11px;font-weight:800}.modal-footer-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;flex-wrap:wrap}.program-workout-row{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;align-items:center}.program-workout-row:has(>.edit-workout){grid-template-columns:minmax(0,1fr) 40px}.editable-exercises{display:grid;gap:8px;margin:12px 0}.editable-exercise{border:1px solid #deddd6;border-radius:13px;padding:9px;background:#faf9f5}.editable-exercise-main{display:grid;grid-template-columns:minmax(180px,1fr) 70px 90px 40px;gap:7px}.editable-exercise details summary{cursor:pointer;color:#6d5dfc;font-size:11px;font-weight:800;padding-top:8px}.remove-editable,.remove-composition{color:#d84444}
@media(max-width:900px){.video-review{padding:10px}.video-review-tools{width:100%;justify-content:space-between}.video-review-tools .tag{white-space:normal;text-align:center}.workout-video{max-height:65vh}.modal-footer-actions{display:grid;grid-template-columns:1fr}.program-workout-row{grid-template-columns:minmax(0,1fr)}.program-workout-row:has(>.edit-workout){grid-template-columns:minmax(0,1fr) 40px}.program-workout-row .list-item{padding:10px;gap:8px}.program-workout-row .tag{display:none}.editable-exercise-main{grid-template-columns:minmax(0,1fr) 54px 65px 38px}.editable-exercise-main .input{padding:11px 7px}.workout-head-actions{margin-left:auto}.exercise summary{padding:14px 12px;gap:8px}.exercise summary .video-badge{font-size:9px;white-space:normal;text-align:center}.actions{min-width:0}.actions .input{min-width:0;flex:1}.review-actions .btn{width:auto}}
.global-athlete-select{display:grid;gap:3px;min-width:220px}.global-athlete-select span{font-size:10px;font-weight:800;color:#77786f;text-align:left}.global-athlete-select .input{padding:10px 12px}.selected-athlete-context{display:flex;align-items:center;gap:10px;margin:-12px 0 18px}.selected-athlete-context small,.selected-athlete-context b{display:block}.selected-athlete-context small{color:#77786f}.athlete-avatar-wrap{position:relative;display:inline-flex}.activity-pulse{position:absolute;right:-2px;top:-2px;width:13px;height:13px;border-radius:50%;background:#ff5a1f;border:3px solid #fff;box-shadow:0 0 0 3px rgba(255,90,31,.16)}.activity-label{display:block;color:#d84444;margin-top:4px}.athlete-card.selected{outline:2px solid #d7ff4f;outline-offset:2px}.catalog-item-actions{display:flex;gap:6px;flex:none}.delete-catalog{color:#d84444}.add-catalog-top{background:#ff5a1f;color:#fff;border-color:#ff5a1f}.chart-tooltip{transform:none;max-width:calc(100vw - 16px);min-width:min(190px,calc(100vw - 16px));overflow-wrap:anywhere}.analytics-stats b{white-space:nowrap}
@media(max-width:900px){.global-athlete-select{width:100%;min-width:0}.top-actions:has(.global-athlete-select){width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.selected-athlete-context{margin-top:0}.analytics-stats b{font-size:22px;letter-spacing:-1.4px}.analytics-stats .card{min-width:0}.catalog-item-actions .icon-action{width:38px;height:38px}}
.ex-body:has(> .actual-result:not(.empty-actual)) > .target-row{display:none}.exercise:has(.actual-result:not(.empty-actual)) summary .ex-main small{display:none}.actual-result{border:1px solid #cfe58a;background:#f4fadf;border-radius:13px;padding:12px;margin-bottom:14px}.actual-result-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.actual-result-head span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#526716}.actual-result-head b{font-size:12px}.actual-set-grid{display:grid;grid-template-columns:55px repeat(3,minmax(0,1fr));gap:6px;align-items:center}.actual-set-grid>*{padding:8px;border-radius:8px;background:#fff;text-align:center;font-size:12px}.actual-set-grid .actual-label{background:transparent;color:#77786f;font-size:9px;text-transform:uppercase;padding:0 2px}.actual-set-grid strong{font-size:13px}.empty-actual{color:#77786f;background:#f4f3ed;border-color:#deddd6;font-size:12px}

/* Hidden is application state and must win over component display declarations. */
[hidden]{display:none!important}

/* Mobile usability: compact attention, workout filters, progress discovery and safe draft actions. */
.attention-controls,.workout-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin:10px 0}.attention-controls::-webkit-scrollbar,.workout-tabs::-webkit-scrollbar{display:none}.attention-controls button,.workout-tabs button{white-space:nowrap;border:1px solid #deddd6;background:#fff;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:750}.attention-controls button.active,.workout-tabs button.active{background:#10110f;color:#fff;border-color:#10110f}.attention-more{width:100%;border:0;background:transparent;padding:13px 8px 2px;font-weight:800;color:#5d625d}.workout-tabs{margin-top:4px}.workout-menu-wrap{position:relative;flex:none}.workout-more{font-weight:900;letter-spacing:1px}.workout-row-menu{position:absolute;right:0;top:42px;z-index:20;background:#fff;border:1px solid #deddd6;border-radius:12px;padding:5px;box-shadow:0 10px 28px rgba(0,0,0,.14)}.workout-row-menu button{display:flex;align-items:center;gap:8px;border:0;background:#fff;color:#b52c22;padding:9px 11px;font-weight:750}.workout-row-menu svg{width:17px;height:17px}.progress-filters{display:grid;grid-template-columns:minmax(220px,1fr) 220px auto;gap:9px;margin:0 0 14px}.progress-filters .btn.active{background:#fff3c4;border-color:#dca722}.chart-card-actions{display:flex;align-items:center;gap:10px}.chart-favorite{border:0;background:transparent;color:#bbb;font-size:22px;line-height:1;padding:3px}.chart-favorite.active{color:#d99a0b}.progress-show-all{display:block;margin:14px auto 0}.workout-actions{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom));z-index:11;background:rgba(250,249,245,.96);padding:10px 0;margin-top:8px;backdrop-filter:blur(8px)}
@media(max-width:900px){.attention-list{grid-template-columns:1fr}.progress-filters{grid-template-columns:1fr 1fr}.progress-filters #progressSearch{grid-column:1/-1}.progress-filters .btn{padding-inline:8px}.chart-card-actions>b{font-size:12px}.workout-tabs{margin-inline:-2px}.workout-actions{margin-left:-8px;margin-right:-8px;padding:9px 8px}.workout-actions .save-next{min-height:48px}.workout-row-menu{position:fixed;right:14px;top:auto;bottom:calc(76px + env(safe-area-inset-bottom))}}
@media(max-width:900px){.actual-result-head{align-items:flex-start;flex-direction:column}.actual-set-grid{grid-template-columns:42px repeat(3,minmax(0,1fr))}.actual-set-grid>*{padding:7px 2px;font-size:11px}.actual-set-grid strong{font-size:12px}}
.chart-card{background:#fffdf9;border-color:#dedbd2}.chart-card .card-title b{color:#a75f43}.chart-line{stroke:#65786b;stroke-width:3}.chart-card circle{fill:#e8b978;stroke:#405149;stroke-width:1.8}.chart-card .axis{stroke:#ddd8ce}.chart-point:hover,.chart-point:focus{stroke:#27352f;stroke-width:2.5;filter:drop-shadow(0 2px 3px rgba(39,53,47,.2))}.chart-tooltip{background:#35443d;color:#fffdf9}.chart-tooltip b{color:#f0c98f}
.program-banner{display:none}.chart-grid{grid-template-columns:1fr}.chart-card-wide{padding:20px 22px}.chart-card-wide .card-title{margin-bottom:6px}.chart-card-wide svg{display:block;width:100%;height:auto;max-height:300px}.chart-grid-line{stroke:#e1e5e3;stroke-width:1}.chart-axis-label,.chart-date-label{fill:#68736d;font-size:10px;font-family:Inter,Arial,sans-serif}.chart-series{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.chart-series-volume,.chart-series-duration{stroke:#557f7c}.chart-series-rm{stroke:#bb7c84}.chart-series-weight{stroke:#7c90b6}.chart-card-wide .chart-point{fill:#557f7c;stroke:#fffdf9;stroke-width:1.5}.chart-legend{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap;margin:0 4px -2px;color:#68736d;font-size:10px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{width:18px;height:2px;border-radius:4px;background:#557f7c}.chart-legend .legend-rm i{background:#bb7c84}.chart-legend .legend-weight i{background:#7c90b6}
@media(max-width:900px){.chart-card-wide{padding:15px 10px}.chart-card-wide svg{max-height:none}.chart-legend{justify-content:flex-start;gap:10px;margin-top:8px}.chart-axis-label,.chart-date-label{font-size:9px}.chart-series{stroke-width:2.8}}
.chart-section-title{align-items:center;justify-content:space-between}.chart-section-title>div{display:flex;align-items:center;gap:10px}.chart-mode-switch{display:flex;padding:4px;border:1px solid #d9d8d0;border-radius:14px;background:#ebeae4;gap:3px}.chart-mode-switch button{border:0;border-radius:10px;background:transparent;color:#62645f;padding:9px 13px;font:700 11px Inter,Arial,sans-serif;cursor:pointer;white-space:nowrap}.chart-mode-switch button.active{background:#fffdf9;color:#17201c;box-shadow:0 1px 4px rgba(31,40,35,.12)}.chart-series-average{stroke:#587f7c}.chart-series-max{stroke:#ad747d}.chart-legend .legend-average i{background:#587f7c}.chart-legend .legend-max i{background:#ad747d}
@media(max-width:700px){.chart-section-title{align-items:stretch;flex-direction:column}.chart-mode-switch{display:grid;grid-template-columns:repeat(3,1fr);width:100%;box-sizing:border-box}.chart-mode-switch button{padding:9px 5px;font-size:10px;white-space:normal;line-height:1.15}}
.target.history-target{background:#eef0ed;border-color:#d9ddd8}.target.recommended-target{background:#e8f2ed;border-color:#c9ddd2;color:#315d4b}.target.recommended-target b{color:#214b3a}
.workout-discussion{margin-top:18px}.workout-discussion .card-title{margin-bottom:14px}.workout-comment-list{display:flex;flex-direction:column;gap:9px}.workout-comment{max-width:78%;padding:11px 13px;border-radius:14px;background:#f0efe9;align-self:flex-start}.workout-comment.athlete{background:#edf2ee;align-self:flex-end}.workout-comment>div{display:flex;gap:10px;align-items:center}.workout-comment b{font-size:12px}.workout-comment small{color:#85877f;font-size:10px}.workout-comment p{margin:5px 0 0;white-space:pre-wrap;line-height:1.4}.workout-comment-field{margin-top:14px}.workout-comment-send{width:38px;height:38px;flex:0 0 38px;border:0;border-radius:11px;background:#10110f;color:#fff;font-size:21px;line-height:1;cursor:pointer}.workout-comment-send:hover{background:#ff5a1f}
.workout-comment-field .input{padding-right:52px}.workout-comment-field .workout-comment-send{position:absolute;right:6px;top:50%;transform:translateY(-50%)}
.exercise-feedback{margin:0 0 14px;padding:11px 12px;border:1px solid #d8e4d0;border-radius:12px;background:#f2f7ee}.exercise-feedback .eyebrow{margin-bottom:7px;color:#527043}.exercise-feedback .comment{margin-top:6px;background:#fff}.video-comment{margin-top:10px;border-left:3px solid #6d5dfc}.set-video.uploading{background:#fff1e8;border-color:#ff5a1f;animation:uploadPulse 1s ease-in-out infinite}.upload-progress{display:block}
@keyframes uploadPulse{50%{opacity:.55}}
@media(max-width:700px){.workout-comment{max-width:90%}.workout-discussion{padding:15px 12px}}
.program-workout-row,.program-workout-row:has(>.edit-workout){display:block;position:relative}.program-workout-row>.list-item{width:100%;box-sizing:border-box}.program-workout-row:has(>.edit-workout)>.list-item{padding-right:54px}.program-workout-row>.edit-workout{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:2;background:#fffdf9}
.program-detail-meta.compact{display:flex;gap:7px;flex-wrap:wrap}.program-detail-meta.compact span{display:flex;align-items:center;gap:7px;padding:9px 11px;background:#f3f2ec}.program-detail-meta.compact i{font-style:normal;font-size:13px}.program-detail-meta.compact b{display:inline;margin:0;color:#4e514b;font-size:10px;text-transform:none}.workout-status-icon{width:27px;height:27px;display:grid;place-content:center;flex:0 0 27px;border-radius:9px;background:#f2eee9;color:#a64b2a;font-weight:900;font-size:12px}.workout-status-icon.done{background:#e2f2df;color:#37743a}.workout-status-icon.active{background:#fff0d1;color:#936200}.exercise-more{margin:-8px 0 14px}.exercise-more-toggle{border:0;background:transparent;color:#62675f;padding:7px 2px;font-size:11px;font-weight:800;cursor:pointer}.exercise-more-toggle span{display:inline-block;margin-left:3px}.exercise-more-content{display:flex;gap:8px;flex-wrap:wrap;padding-top:5px}.exercise-more-content .target,.exercise-more-content .btn{background:#f0efe9}.icon-save{width:44px;min-width:44px;padding:0;font-size:18px}.workout-row-main .tag{width:28px;height:28px;display:grid;place-content:center;padding:0;font-size:0;border-radius:9px}.workout-row-main .tag::before{font-size:13px;font-weight:900}.workout-row-main .tag.planned::before{content:'◷'}.workout-row-main .tag.active::before{content:'▶'}.workout-row-main .tag.done::before{content:'✓'}.account-menu .btn{justify-content:flex-start;text-align:left}.account-menu .btn span{display:inline-grid;width:22px;place-content:center;font-size:17px}
.exercise-more-content[hidden]{display:none!important}.exercise-more-content .btn-video{background:#6d5dfc;color:#fff;border-color:#6d5dfc}.exercise-more-content .btn-video:hover{background:#5647ea;border-color:#5647ea}
.exercise-more-toggle span{width:6px;height:6px;margin:0 0 3px 6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;font-size:0;line-height:0;vertical-align:middle;transform:rotate(45deg);transform-origin:center;transition:transform .18s ease}.exercise-more-toggle[aria-expanded="true"] span{transform:rotate(225deg);margin-bottom:-1px}
.selected-athlete-context+.grid.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-athlete-context+.grid.grid-3>.stat.accent{display:none}
@media(max-width:900px){.selected-athlete-context+.grid.grid-3{grid-template-columns:1fr}}
.attention-row{min-height:66px}.attention-icon{width:36px;height:36px;min-width:36px;flex:0 0 36px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;text-align:center;overflow:hidden}.priority-3 .attention-icon{font-size:15px;text-indent:2px}.priority-2 .attention-icon{font-size:10px;letter-spacing:-.6px;text-indent:-.3px}
@media(max-width:900px){.selected-athlete-context+.grid.grid-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.selected-athlete-context+.grid.grid-3>.stat{min-height:108px;padding:14px;border-radius:16px}.selected-athlete-context+.grid.grid-3>.stat b{font-size:28px;letter-spacing:-1px}.selected-athlete-context+.grid.grid-3>.stat small{font-size:10px;line-height:1.25}}
@media(max-width:900px){.mobile-nav [data-nav="athletes"],.mobile-nav [data-nav="catalog"]{display:none}.mobile-nav{justify-content:space-around}.mobile-nav button{flex:0 1 20%;max-width:20%}.workout-row-main .tag{display:grid}.program-detail-meta.compact{display:flex}.program-detail-meta.compact span{width:auto;box-sizing:border-box;flex:1 1 auto}.exercise-more-content{display:grid;grid-template-columns:1fr}.exercise-more-content>*{width:100%;box-sizing:border-box}.target-row>.target{flex:1 1 145px}.workout-actions{flex-wrap:nowrap}.workout-actions .save-next{flex:1}}

/* Keep save actions in the document flow so they never cover a set row. */
.workout-actions{position:static;bottom:auto;z-index:auto;backdrop-filter:none}

.ai-assistant{margin:18px 0;border-color:#cfe1d8;background:linear-gradient(145deg,#fff,#f0f8f4)}.ai-assistant .card-title{margin-bottom:12px}.ai-private{font-size:10px;font-weight:800;color:#356653;background:#dcefe6;border-radius:99px;padding:6px 9px}.ai-working{display:flex;align-items:center;gap:12px;padding:13px;border-radius:13px;background:#fff}.ai-working i{width:25px;height:25px;border:3px solid #d8e6df;border-top-color:#356653;border-radius:50%;animation:ai-spin .8s linear infinite}.ai-working b,.ai-working small{display:block}.ai-working small{color:#77786f;margin-top:3px}.ai-summary{background:#fff;border-radius:13px;padding:13px}.ai-summary p{margin:6px 0}.ai-summary small{color:#68736d}.ai-warnings{display:grid;gap:6px;margin-top:9px}.ai-warnings span{background:#fff3dc;color:#795218;border-radius:10px;padding:9px 11px;font-size:12px}.ai-next-week{margin:14px 0}.ai-next-week>p{color:#68736d}.ai-next-week details{background:#fff;border:1px solid #dce5e0;border-radius:12px;margin:7px 0;padding:0 11px}.ai-next-week summary{cursor:pointer;padding:11px 0;font-weight:800}.ai-next-week details p{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #edf0ee;margin:0;padding:9px 0;font-size:12px}.ai-next-week details p span{color:#68736d;text-align:right}.ai-error{background:#fee;color:#9c2f2f;border-radius:11px;padding:11px;margin-bottom:10px}@keyframes ai-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.ai-assistant{padding:16px}.ai-next-week details p{display:grid;gap:3px}.ai-next-week details p span{text-align:left}.ai-working{align-items:flex-start}}
