:root{color:#e7edf0;background:#07090b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #07090b;--surface: #0c1114;--panel: #11191d;--panel-raised: #152026;--line: #26343a;--line-soft: #1d292f;--text: #e7edf0;--muted: #9aa8ad;--faint: #6f7f85;--cyan: #19d3e5;--red: #f05252;--amber: #f3ad38;--green: #47d68b}html{background-color:var(--bg)}*{box-sizing:border-box}body{background:radial-gradient(circle at 72% -12%,rgba(25,211,229,.13),transparent 33rem),linear-gradient(180deg,#07090b,#090d10 58%,#07090b);background-color:var(--bg);margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;box-shadow:0 0 0 4px #19d3e524}.app{background-color:var(--bg);isolation:isolate;min-height:100vh;position:relative}.app:before{background:linear-gradient(90deg,transparent,rgba(25,211,229,.16),rgba(243,173,56,.08),transparent),linear-gradient(115deg,transparent 0 38%,rgba(25,211,229,.045) 38% 39%,transparent 39% 100%);content:"";height:170px;left:0;opacity:.78;pointer-events:none;position:fixed;right:0;top:68px;z-index:-1}.topbar{align-items:center;background-color:#07090b;background:#07090beb;border-bottom:1px solid var(--line);box-shadow:0 18px 42px #00000057;display:flex;justify-content:space-between;padding:18px 28px;position:sticky;top:0;z-index:3}h1,h2,h3,p{margin-top:0}h1{color:var(--text);font-size:28px;letter-spacing:0;line-height:1.05;margin-bottom:0;text-transform:uppercase}h2{color:var(--text);font-size:22px;letter-spacing:0;margin-bottom:0}h3{color:#dce7eb;font-size:16px;letter-spacing:0;margin-bottom:8px}.eyebrow{color:var(--cyan);font-size:11px;font-weight:800;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.topbar-actions{align-items:center;display:flex;gap:14px}.prototype-badge{background:#19d3e51a;border:1px solid rgba(25,211,229,.38);border-radius:999px;color:#c8fbff;font-size:13px;font-weight:800;padding:7px 11px;text-transform:uppercase}.screen-nav,.tabs{background:#11191de6;border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:3px;padding:4px}.screen-nav button,.tabs button{background:transparent;border:0;border-radius:6px;color:var(--muted);padding:8px 11px}.screen-nav button.active,.tabs button.active{background:linear-gradient(180deg,#19d3e52e,#19d3e514);box-shadow:inset 0 0 0 1px #19d3e566,0 0 22px #19d3e521;color:#effeff;font-weight:800}main{padding:24px 28px 48px}.home-grid{display:grid;gap:22px;grid-template-columns:minmax(0,1fr) 320px}.workspace{min-width:0}.counter-grid{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:18px}.counter{background:linear-gradient(180deg,#11191dfa,#0c1114fa);background-color:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:112px;padding:14px}.counter svg{color:var(--cyan)}.counter strong{color:var(--text);display:block;font-size:30px;line-height:1;margin:10px 0 4px}.counter span{color:var(--muted);font-size:12px;font-weight:700;line-height:1.25;text-transform:uppercase}.counter:first-child svg,.counter:first-child strong{color:var(--red)}.counter:nth-child(2) svg,.counter:nth-child(2) strong{color:var(--amber)}.panel,.today-panel{background:#0c1114f2;background-color:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 20px 60px #00000047;padding:18px}.workspace>.panel{background:linear-gradient(180deg,#11191df7,#0c1114f7),radial-gradient(circle at 100% 0%,rgba(25,211,229,.1),transparent 18rem);background-color:var(--surface)}.section-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.muted,.fineprint{color:var(--faint);font-size:13px}.fineprint{margin:12px 0 0}.fineprint.strong{color:#c6d1d5;font-weight:800}.filters{display:grid;gap:10px;grid-template-columns:repeat(7,minmax(120px,1fr));margin-bottom:16px}label span{color:var(--muted);display:block;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:4px;text-transform:uppercase}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#0a0f12;border:1px solid var(--line);border-radius:7px;color:var(--text);min-height:38px;padding:7px 28px 7px 9px;width:100%}textarea{background:#0a0f12;border:1px solid var(--line);border-radius:7px;color:var(--text);min-height:82px;padding:9px;resize:vertical;width:100%}textarea::placeholder{color:#65747a}input{background:#0a0f12;border:1px solid var(--line);border-radius:7px;color:var(--text);min-height:38px;padding:7px 9px;width:100%}input::placeholder{color:#65747a}.queue{display:grid;gap:12px}.attention-card{background:linear-gradient(180deg,#11191dfa,#0d1316fa);background-color:var(--panel);border:1px solid var(--line);border-left:5px solid var(--cyan);border-radius:8px;padding:16px}.attention-card.priority-p0{border-left-color:var(--red)}.attention-card.priority-p1{border-left-color:var(--amber)}.attention-card.priority-p2{border-left-color:var(--cyan)}.attention-card.priority-p3{border-left-color:var(--muted)}.card-topline{color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;font-weight:700;gap:8px;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}.priority{background:#19d3e51f;border:1px solid rgba(25,211,229,.38);border-radius:5px;color:#ccfbff;font-weight:900;padding:2px 6px}.priority-p0 .priority{background:#f052521f;border-color:#f0525275;color:#ffd7d7}.priority-p1 .priority{background:#f3ad381f;border-color:#f3ad3875;color:#ffe1a3}.issue{color:#dbe5e8;font-size:17px;line-height:1.45}.card-facts{display:grid;gap:10px;grid-template-columns:1fr 120px 80px;margin:14px 0}dt{color:var(--faint);font-size:11px;font-weight:900;letter-spacing:.06em;margin-bottom:3px;text-transform:uppercase}dd{color:#c5d0d4;margin:0}.card-actions,.drawer-actions{display:flex;flex-wrap:wrap;gap:10px}.completion-box{background:#11191dbf;border:1px solid var(--line);border-radius:8px;margin-top:12px;padding:14px}.completion-box.complete{border-color:#47d68b61}.completion-box .primary{margin-top:10px}.form-error{color:#ffb3b3;font-size:13px;font-weight:800;margin:8px 0 0}.callout{background:#19d3e514;border-left:4px solid var(--cyan);border-radius:6px;color:#d6f9fc;font-weight:800;padding:10px 12px}.primary,.ghost,.icon-button{align-items:center;border-radius:7px;display:inline-flex;gap:6px;min-height:38px;padding:8px 12px}.primary{background:linear-gradient(180deg,#19d3e5,#0c91a0);background-color:var(--cyan);border:1px solid rgba(25,211,229,.72);color:#031012;font-weight:900}.ghost,.icon-button{background:#0c1114e0;border:1px solid var(--line);color:#d4e2e6}.icon-button{padding:8px}.text-action{background:transparent;border:0;color:var(--muted);font-weight:800;margin-top:12px;min-height:32px;padding:0;text-decoration:underline;text-underline-offset:3px}.today-panel{align-self:start;background:linear-gradient(180deg,#11191df2,#0c1114f2),linear-gradient(90deg,rgba(25,211,229,.08),transparent);background-color:var(--panel);position:sticky;top:98px}.today-item{background:#07090b6b;border:1px solid var(--line-soft);border-left:4px solid var(--cyan);border-radius:7px;margin-top:12px;padding:10px 12px}.today-item strong,.today-item span{display:block}.today-item strong{color:#eef6f8}.today-item span{color:var(--muted);font-size:14px;margin-top:3px}.today-item.p0{border-left-color:var(--red)}.today-item.p1{border-left-color:var(--amber)}.today-item.good{border-left-color:var(--green)}.drawer{background:linear-gradient(180deg,#11191dfa,#090d10fa),linear-gradient(90deg,rgba(25,211,229,.08),transparent 24%);background-color:var(--panel);border-left:1px solid rgba(25,211,229,.28);bottom:0;box-shadow:-16px 0 44px #00000075;color:var(--text);max-width:520px;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;width:min(520px,100vw);z-index:5}.drawer-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:18px}.drawer section{border-top:1px solid var(--line);padding:16px 0}.drawer p{color:#c9d5d9}.timeline{list-style:none;margin:0;padding:0}.timeline li{border-left:2px solid var(--line);margin-left:7px;padding:0 0 14px 14px}.timeline .label{background:#19d3e51a;border:1px solid rgba(25,211,229,.28);border-radius:5px;color:#cbfbff;display:inline-block;font-size:11px;font-weight:900;letter-spacing:.04em;margin-right:8px;padding:3px 6px;text-transform:uppercase}.timeline .time{color:var(--faint);font-size:12px}.timeline p{margin:6px 0 0}.toast{align-items:center;background-color:var(--surface);background:#0c1114;border:1px solid rgba(25,211,229,.42);border-radius:8px;bottom:22px;box-shadow:0 16px 40px #0000006b;color:#e7fbfd;display:flex;gap:14px;padding:12px 14px;position:fixed;right:22px;z-index:6}.toast button{background:transparent;border:0;color:#d7fbff;padding:0}.snapshot-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.snapshot-meta span{background:#19d3e514;border:1px solid var(--line);border-radius:999px;color:#cbd9dd;font-size:13px;font-weight:800;padding:6px 10px}.snapshot-meta span:nth-child(3){color:#d6e1e5}.snapshot-grid,.metric-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.snapshot-panel,.metric-card{background:linear-gradient(180deg,#11191df2,#0c1114f2);background-color:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:150px;padding:16px}.snapshot-panel p,.metric-card p,.metric-card span{color:var(--muted);line-height:1.45}.metric-card strong{color:var(--text);display:block;font-size:32px;line-height:1.05;margin:8px 0}.metric-card span{display:block;font-size:13px}.metric-detail strong{font-size:24px;line-height:1.2}.metric-detail.compact strong{font-size:20px}.metric-detail p{margin-bottom:7px}.secondary-metrics{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.compact-header{margin-bottom:10px}.secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.secondary-card{background:#11191db8;background-color:var(--panel);min-height:130px}.secondary-card strong{font-size:24px}.athlete-workout{display:grid;gap:18px;margin:0 auto;max-width:980px}.athlete-workout-hero{align-items:flex-start;background:linear-gradient(135deg,#11191dfa,#0c1114f5),radial-gradient(circle at 84% 8%,rgba(243,173,56,.12),transparent 18rem),radial-gradient(circle at 18% -20%,rgba(25,211,229,.12),transparent 20rem);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px #00000057;display:flex;gap:22px;justify-content:space-between;padding:22px}.athlete-workout-hero h2{font-size:clamp(28px,5vw,46px);line-height:.98;margin-bottom:14px;text-transform:uppercase}.athlete-plan-updates{display:grid;gap:12px;border:1px solid var(--line-soft);border-radius:8px;background:#07090b47;padding:16px 18px}.athlete-plan-updates-header h3{font-size:18px;letter-spacing:.02em;margin:0}.athlete-plan-updates-error{align-items:flex-start;display:flex;flex-direction:column;gap:10px}.athlete-plan-updates-list{display:grid;gap:10px}.athlete-plan-update-card{border:1px solid var(--line-soft);border-radius:8px;background:#0c1114b8;overflow:hidden}.athlete-plan-update-card-newest{border-color:#19d3e559;box-shadow:0 0 0 1px #19d3e514}.athlete-plan-update-disclosure{align-items:flex-start;background:transparent;border:0;color:inherit;cursor:pointer;display:grid;gap:4px;padding:14px 16px;text-align:left;width:100%}.athlete-plan-update-disclosure:focus-visible{outline:2px solid rgba(25,211,229,.85);outline-offset:-2px}.athlete-plan-update-disclosure-title{font-size:16px;font-weight:800}.athlete-plan-update-disclosure-meta{color:var(--muted);font-size:13px}.athlete-plan-update-body{border-top:1px solid var(--line-soft);display:grid;gap:14px;padding:0 16px 16px}.athlete-plan-update-body[hidden]{display:none}.athlete-plan-update-copy h4{font-size:13px;letter-spacing:.04em;margin:12px 0 6px;text-transform:uppercase}.athlete-plan-update-copy p{color:#d7e2e6;margin:0}.athlete-plan-update-changes{display:grid;gap:10px;list-style:none;margin:0;padding:0}.athlete-plan-update-changes li{background:#07090b57;border:1px solid var(--line-soft);border-radius:6px;padding:10px 12px}.athlete-plan-update-change-title{font-weight:700;margin:2px 0 6px}.athlete-plan-update-reply{border-top:1px solid var(--line-soft);display:grid;gap:10px;margin-top:14px;padding-top:14px}.athlete-plan-update-reply h4{font-size:15px;letter-spacing:.02em;margin:0}.athlete-plan-update-reply-helper{margin:0}.athlete-plan-update-reply-label{display:grid;gap:6px;font-size:13px}.athlete-plan-update-reply-textarea{min-height:96px;resize:vertical;width:100%}.athlete-plan-update-reply-meta{display:flex;justify-content:flex-end}.athlete-plan-update-reply-actions{display:flex;gap:10px}.athlete-plan-update-reply-success p{margin:0}.athlete-plan-update-reply-coach-response{display:grid;gap:6px;margin-top:4px}.athlete-plan-update-reply-coach-response h5{font-size:13px;letter-spacing:.02em;margin:0}.athlete-plan-update-reply-coach-response-body{margin:0;white-space:pre-wrap}.workout-hero-meta{align-items:center;color:#c9d5d9;display:flex;flex-wrap:wrap;gap:10px}.workout-hero-meta span:not(.key-badge),.athlete-state span,.athlete-state strong{background:#07090b5c;border:1px solid var(--line-soft);border-radius:999px;padding:7px 10px}.key-badge{background:#f3ad381f;border:1px solid rgba(243,173,56,.48);border-radius:999px;color:#ffe2a7;font-weight:900;padding:7px 10px;text-transform:uppercase}.athlete-state{color:var(--muted);display:flex;flex-direction:column;gap:8px;min-width:210px}.athlete-state strong{color:#ffe2a7;font-size:18px}.today-context{color:#9bf4ff;font-size:13px;font-weight:900;letter-spacing:.04em;margin:0 0 8px}.athlete-state .completed-workout-pill{align-items:center;background:#47d68b1f;border-color:#47d68b85;color:#caffdf;display:inline-flex;font-weight:900;gap:7px}.workout-day-pill{background:#19d3e514;border:1px solid rgba(25,211,229,.34);border-radius:999px;color:#d9fbff;display:grid;font-weight:900;gap:3px;padding:8px 11px}.workout-day-pill small{color:#a7b8be;font-size:12px;font-weight:800}.athlete-state .moved-workout-pill{background:#19d3e51a;border-color:#19d3e56b;color:#d9fbff;font-weight:900}.athlete-state .skipped-workout-pill{background:#f3ad381a;border-color:#f3ad386b;color:#ffe2a7}.completed-workout-pill svg{color:var(--green);flex:0 0 auto}.adjusted-state,.moved-state,.logged-state{border-radius:8px;font-weight:900;margin:0;padding:12px 14px}.moved-state{background:#19d3e51a;border:1px solid rgba(25,211,229,.42);color:#d9fbff}.moving-context{background:#19d3e51a;border:1px solid rgba(25,211,229,.36);border-radius:8px;color:#eafcff;font-size:13px;font-weight:900;margin:12px 0 0;padding:9px 10px;width:fit-content}.reentry-context{display:grid;gap:8px;margin-top:12px}.reentry-context .moving-context{margin:0}.reentry-context p:last-child{color:var(--muted);font-size:13px;margin:0}.adjusted-state{background:#f3ad381a;border:1px solid rgba(243,173,56,.42);color:#ffe2a7}.logged-state{background:#47d68b1a;border:1px solid rgba(71,214,139,.42);color:#caffdf}.skipped-workout-summary{background:#f3ad3814;border:1px solid rgba(243,173,56,.34);border-left:4px solid rgba(243,173,56,.72);border-radius:8px;color:#f5e6c9;padding:14px}.skipped-workout-summary h3,.skipped-workout-summary p{margin:0 0 8px}.skip-note{border-top:1px solid rgba(243,173,56,.24);color:#ffe2a7;font-weight:800;padding-top:10px}.amber-action{border-color:#f3ad3875!important;color:#ffe2a7!important}.logged-state-detail{background:#11191db8;border:1px solid var(--line);border-radius:8px;color:#c6d2d6;margin:-8px 0 0;padding:10px 14px}.workout-log-summary{background:linear-gradient(180deg,#11191df5,#0c1114f5),linear-gradient(90deg,rgba(71,214,139,.1),transparent);border:1px solid rgba(71,214,139,.42);border-left:4px solid var(--green);border-radius:8px;padding:16px}.workout-log-summary h3{font-size:18px;margin-bottom:12px}.log-summary-list{display:grid;gap:8px}.log-summary-list p{color:#d7e4e7;margin:0}.planned-actual-summary{background:#07090b57;border:1px solid var(--line-soft);border-radius:7px;padding:10px}.planned-actual-summary h4{color:var(--text);font-size:12px;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.connected-workout{display:grid;gap:12px}.workout-part{background:linear-gradient(180deg,#11191df5,#0c1114f5);border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:8px;padding:18px}.sport-part h3{font-size:22px;margin-bottom:10px}.transition-part{background:#0c1114b8;border-left-color:var(--line);margin-left:18px}.transition-part h3{margin-bottom:4px}.rpe-primary{color:#dffbfe;font-size:18px;font-weight:900;margin-bottom:7px}.workout-part p{color:#c6d2d6;line-height:1.45;margin-bottom:7px}.prescription-copy{border-top:1px solid var(--line-soft);color:#d9e5e8;margin-top:12px;padding-top:12px}.workout-line{border-top:1px solid var(--line-soft);color:#dffbfe;font-weight:700;margin-top:12px;padding-top:12px}.athlete-instruction-copy{color:#d9e5e8;margin-top:4px}.athlete-action-panel{align-items:center;background:linear-gradient(180deg,#11191df5,#0c1114f5),linear-gradient(90deg,rgba(25,211,229,.08),transparent);border:1px solid var(--line);border-radius:8px;display:flex;gap:18px;justify-content:space-between;padding:18px}.athlete-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.modal-scrim{align-items:flex-end;background:#00000094;bottom:0;display:flex;justify-content:center;left:0;padding:18px;position:fixed;right:0;top:0;z-index:8}.bottom-sheet,.log-modal,.move-modal,.confirm-move-modal{background:linear-gradient(180deg,#11191dfc,#090d10fc),linear-gradient(90deg,rgba(25,211,229,.08),transparent 44%);border:1px solid rgba(25,211,229,.3);border-radius:8px;box-shadow:0 28px 80px #00000094;max-height:calc(100vh - 36px);overflow-y:auto;padding:20px;width:min(760px,100%)}.move-modal{width:min(1280px,90vw)}.rearrange-modal{align-self:center;max-height:85vh;padding-bottom:0}.log-modal,.confirm-move-modal{align-self:center}.confirm-move-modal{position:fixed;width:min(460px,calc(100% - 36px));z-index:9}.skip-workout-modal label{display:grid;gap:8px;margin:14px 0}.skip-workout-modal textarea{min-height:96px;resize:vertical}.schedule-and-decision{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 320px}.rearrange-layout{align-items:start;grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.two-week-schedule{display:grid;gap:16px}.schedule-week h3{margin-bottom:10px}.schedule-grid{display:grid;gap:10px;grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-tile{background:#0c1114e0;border:1px solid var(--line);border-radius:8px;color:var(--text);display:grid;gap:7px;min-height:176px;padding:10px;text-align:left}.schedule-tile.past-day{background:#1f262a7a;border-color:#69777c38;color:#819097}.schedule-tile strong,.schedule-date,.session-list span{display:block}.schedule-date{color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.schedule-tile strong{color:#eafcff;font-size:14px}.schedule-tile.past-day strong{color:#95a1a6}.schedule-badge{border-radius:999px;display:inline-flex;font-size:10px;font-weight:900;letter-spacing:.04em;line-height:1.2;padding:4px 7px;width:fit-content}.muted-badge{background:#81909721;border:1px solid rgba(129,144,151,.24);color:#aeb9bd}.current-badge{background:#8190971f;border:1px solid rgba(129,144,151,.28);color:#d2dde1}.target-badge{background:#19d3e514;border:1px solid rgba(25,211,229,.34);color:#bdf8ff}.warning-badge{background:#f3ad381f;border:1px solid rgba(243,173,56,.42);color:#ffe2a7}.source-workout-card{background:linear-gradient(135deg,#19d3e521,#0c1114f0);border:1px solid rgba(25,211,229,.42);border-radius:8px;box-shadow:0 0 0 1px #19d3e51a,0 18px 38px #00000038;display:grid;gap:8px;margin-top:12px;max-width:520px;padding:14px}.source-workout-card h3,.source-workout-card p{margin:0}.source-workout-card h3{color:#eafcff}.source-workout-card p:not(.eyebrow){color:var(--muted)}.source-workout-card.reentry-source-card{background:linear-gradient(135deg,#f3ad381c,#0c1114f0);border-color:#f3ad3857}.source-workout-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.reentry-instruction{color:#cbd8dc;font-weight:800}.schedule-tile.day-clickable{cursor:pointer}.schedule-tile.day-clickable:hover,.schedule-tile.day-clickable:focus-visible{border-color:#19d3e580;box-shadow:0 0 0 1px #19d3e547,0 0 22px #19d3e51a}.session-list{display:grid;gap:5px}.session-list span,.workout-chip{background:#19d3e514;border:1px solid var(--line-soft);border-radius:5px;color:#cbd8dc;font-size:12px;line-height:1.25;padding:5px 6px}.workout-chip{display:grid;gap:3px;text-align:left;width:100%}.workout-chip:disabled{background:#81909714;color:#87969b;cursor:not-allowed}.schedule-tile.day-clickable .workout-chip:disabled{pointer-events:none}.workout-chip em{color:#9bf4ff;font-size:10px;font-style:normal;font-weight:900;letter-spacing:.04em}.workout-chip .moving-label{background:#19d3e533;border:1px solid rgba(25,211,229,.58);border-radius:999px;color:#e9fdff;padding:3px 6px;width:fit-content}.workout-chip.selected-workout{background:#19d3e529;border-color:#19d3e5e6;box-shadow:0 0 0 2px #19d3e580,0 0 24px #19d3e52e;color:#eafcff}.workout-chip.draft-change-chip,.workout-chip.unsaved-change-chip{background:#19d3e51a;border-style:dashed}.workout-chip.unsaved-change-chip em{color:#bdf8ff}.workout-chip.skipped-workout-chip{background:#81909714;border-color:#81909738;color:#97a4a9}.workout-chip.skipped-workout-chip em{color:#ffe2a7}.workout-chip.reentry-source-chip{border-color:#f3ad3861}.workout-chip .adding-back-label{background:#19d3e529;border:1px solid rgba(25,211,229,.48);border-radius:999px;color:#e9fdff;padding:3px 6px;width:fit-content}.workout-chip.readded-workout-chip{background:#19d3e524;border-color:#19d3e575}.schedule-state{background:#81909714!important;color:#aeb9bd!important}.schedule-tile.current-workout{border-color:#8190975c}.schedule-tile.current-workout .workout-chip{background:#f3ad381f;border-color:#f3ad386b;color:#ffe2a7;font-weight:900}.schedule-tile.selected-day{border-color:#19d3e56b;box-shadow:0 0 0 1px #19d3e552,0 0 18px #19d3e514}.schedule-tile.warning-day.selected-day,.schedule-tile.recovery-conflict.selected-day{box-shadow:0 0 0 2px #f3ad3899,0 0 28px #f3ad381f}.selected-day-panel{align-self:start;background:#0c1114c7;border:1px solid var(--line);border-radius:8px;padding:14px}.selected-day-panel.warning{border-color:#f3ad387a}.double-workout-warning{background:linear-gradient(135deg,#f3ad382e,#0c1114f0);border:1px solid rgba(243,173,56,.68);border-radius:8px;box-shadow:0 0 0 1px #f3ad3824,0 20px 44px #00000047;display:grid;gap:10px;margin:-2px;padding:16px}.double-workout-warning h3{color:#fff1c7;font-size:20px;line-height:1.18;margin:0}.double-workout-warning p{margin:0}.double-workout-warning .drawer-actions{gap:10px;margin-top:4px}.selected-day-panel p{color:var(--muted);line-height:1.45}.warning-copy{color:#ffe2a7!important;font-weight:900}.info-copy{color:#9bf4ff!important;font-weight:800}.draft-change-bar{align-items:center;background:#07090bf0;border-top:1px solid rgba(25,211,229,.2);bottom:0;display:flex;gap:14px;justify-content:space-between;margin:18px -20px 0;padding:14px 20px;position:sticky;z-index:2}.draft-change-bar p{color:#d7e2e5;font-weight:900;margin:0}.leave-schedule-backdrop{background:#00000085;top:0;right:0;bottom:0;left:0;position:fixed;z-index:8}.leave-schedule-modal{border-color:#19d3e5b8;box-shadow:0 0 0 1px #19d3e538,0 28px 80px #0000009e;display:grid;gap:14px;padding:24px;width:min(540px,calc(100% - 32px));z-index:10}.leave-schedule-modal h2,.leave-schedule-modal p{margin:0}.leave-schedule-modal h2{color:#eafcff;font-size:28px}.review-changes-modal{width:min(560px,calc(100% - 36px))}.review-change-list{display:grid;gap:10px;margin:14px 0}.review-change-list article{background:#0c1114c7;border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:12px}.review-change-list h3,.review-change-list p{margin:0}.review-badges{display:flex;flex-wrap:wrap;gap:6px}.safer-choice{background:linear-gradient(180deg,#19d3e5,#0c91a0)}.adjust-options{display:grid;gap:10px}.adjust-options>button:not(.restore-button){background:#0c1114e0;border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:8px;color:var(--text);padding:14px;text-align:left}.adjust-options strong,.adjust-options span{display:block}.adjust-options strong{color:#eafcff;margin-bottom:5px}.adjust-options span{color:var(--muted);line-height:1.4}.restore-button{justify-content:center;margin-top:4px}.segmented-options{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.segmented-options button{background:#0c1114e0;border:1px solid var(--line);border-radius:8px;color:#d5e3e7;min-height:44px;padding:10px}.segmented-options button.active{background:#19d3e521;border-color:#19d3e57a;color:#e9fdff;font-weight:900}.segment-times{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:16px}.planned-log-summary,.actual-log-flow,.session-effort{background:#0c1114a8;border:1px solid var(--line);border-radius:8px;margin-bottom:16px;padding:14px}.planned-log-summary p,.actual-log-flow p{color:var(--muted);line-height:1.45}.optional-details-stack,.actual-log-flow{display:grid;gap:12px}.actual-sport-card{background:#11191db8;border:1px solid var(--line-soft);border-left:4px solid var(--cyan);border-radius:8px;padding:12px}.actual-sport-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.actual-sport-header h4{color:var(--text);font-size:13px;letter-spacing:.08em;margin:0;text-transform:uppercase}.inline-check{align-items:center;color:#d5e3e7;display:inline-flex;gap:8px}.inline-check input{min-height:0;width:auto}.inline-check span{margin:0}.actual-fields,.transition-actuals,.detail-fields{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.distance-input-wrap{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0}.distance-input-wrap input{border-bottom-right-radius:0;border-top-right-radius:0}.unit-suffix{align-items:center;align-self:stretch;background:#19d3e514;border:1px solid var(--line);border-left:0;border-radius:0 7px 7px 0;color:#cbd8dc;display:inline-flex;font-size:13px;font-weight:900;letter-spacing:.04em;min-height:38px;padding:0 10px;text-transform:uppercase}.optional-sport-details{margin-top:10px}.detail-toggle{min-height:34px}.detail-fields{margin-top:10px}.custom-stat-row{display:grid;gap:10px;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}.rpe-choice-grid{display:grid;gap:8px;grid-template-columns:repeat(10,minmax(38px,1fr))}.rpe-choice-grid button{background:#0c1114e0;border:1px solid var(--line);border-radius:8px;color:#d5e3e7;min-height:40px}.rpe-choice-grid button.active{background:#19d3e524;border-color:#19d3e585;color:#e9fdff;font-weight:900}.rpe-anchors{color:#cbd8dc;font-size:13px;font-weight:800;margin:7px 0 16px}.authenticated-app main{align-items:center;display:flex;min-height:calc(100vh - 80px)}.auth-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin:0 auto;max-width:560px;padding:28px;width:100%}.auth-panel h1{margin-bottom:8px}.auth-form{display:grid;gap:14px;margin-top:22px}.auth-form label{color:var(--muted);display:grid;font-size:13px;font-weight:900;gap:7px;text-transform:uppercase}.auth-message{background:#19d3e514;border:1px solid rgba(25,211,229,.24);border-radius:8px;color:var(--text);margin-top:18px;padding:14px}.auth-message p{color:var(--muted);margin:6px 0 0}@media(max-width:1100px){.topbar,.topbar-actions{align-items:stretch;flex-direction:column}.home-grid{grid-template-columns:1fr}.today-panel{position:static}.counter-grid,.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.athlete-action-panel,.athlete-workout-hero{align-items:stretch;flex-direction:column}.athlete-state{min-width:0}.schedule-and-decision,.rearrange-layout{grid-template-columns:1fr}.schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-change-bar{align-items:stretch;flex-direction:column}}@media(max-width:720px){main,.topbar{padding-left:16px;padding-right:16px}.screen-nav,.tabs{justify-content:flex-start}.counter-grid,.filters,.card-facts,.snapshot-grid,.metric-grid,.segment-times,.segmented-options,.actual-fields,.transition-actuals,.detail-fields,.custom-stat-row,.rpe-choice-grid{grid-template-columns:1fr}.transition-part{margin-left:0}.athlete-actions,.athlete-actions button{width:100%}.athlete-actions button{justify-content:center}.schedule-grid{grid-template-columns:1fr}.section-header{flex-direction:column}.toast{left:16px;right:16px}}.coach-review-workspace{margin:0 auto;max-width:960px;width:100%}.coach-review-toolbar{margin-bottom:16px}.coach-athlete-list{display:grid;gap:12px;list-style:none;margin:24px 0 0;padding:0}.coach-athlete-card{align-items:center;background:var(--panel-raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 24px #00000047;color:var(--text);cursor:pointer;display:flex;gap:16px;justify-content:space-between;padding:18px 20px;text-align:left;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease;width:100%}.coach-athlete-card:hover{background:#1a2830;border-color:#19d3e58c;box-shadow:0 0 0 1px #19d3e53d,0 14px 28px #00000057;transform:translateY(-1px)}.coach-athlete-card:focus-visible{background:#1a2830;border-color:var(--cyan);box-shadow:0 0 0 1px #19d3e557,0 0 0 4px #19d3e524;outline:none}.coach-athlete-name{color:#f3f8fa;font-size:1.05rem;font-weight:700}.coach-athlete-plan-state{color:#b8c7cd;flex-shrink:0;font-size:.92rem;font-weight:600}.coach-review-status{color:var(--text);font-weight:600;margin:8px 0}.coach-workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.coach-workspace-tab{background:transparent;border:1px solid var(--line);border-radius:8px;color:#b8c7cd;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 14px}.coach-workspace-tab[aria-selected=true]{background:#1a2830;border-color:#19d3e58c;color:#f3f8fa}.coach-workspace-tab:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 1px #19d3e557,0 0 0 4px #19d3e524;outline:none}.coach-workspace-tabpanel[hidden]{display:none}.coach-reply-inbox{display:grid;gap:16px}.coach-reply-support{color:#b8c7cd;margin:0}.coach-reply-empty,.coach-reply-error{display:grid;gap:8px}.coach-reply-list{display:grid;gap:12px}.coach-reply-card{background:var(--panel-raised);border:1px solid var(--line);border-radius:10px;display:grid;gap:8px;padding:16px 18px}.coach-reply-card-heading{font-size:1.05rem;margin:0}.coach-reply-sent{color:#b8c7cd;font-size:.92rem;margin:0}.coach-reply-preview{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#d7e2e6;display:-webkit-box;line-clamp:2;margin:0;overflow:hidden;white-space:pre-wrap}.coach-reply-disclosure:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.coach-reply-expanded{display:grid;gap:8px;margin-top:4px}.coach-reply-expanded[hidden]{display:none}.coach-reply-expanded h3{font-size:.95rem;margin:8px 0 0}.coach-reply-body,.coach-reply-context{margin:0;white-space:pre-wrap}.coach-reply-pagination{display:grid;gap:8px;justify-items:start}.coach-reply-notice{color:#ffd27a;margin:0}.coach-reply-composer{border-top:1px solid var(--line-soft);display:grid;gap:10px;margin-top:14px;padding-top:14px}.coach-reply-composer-heading{font-size:15px;letter-spacing:.02em;margin:0}.coach-reply-composer-helper{margin:0}.coach-reply-composer-label{display:grid;gap:6px;font-size:13px}.coach-reply-composer-textarea{min-height:96px;resize:vertical;width:100%}.coach-reply-composer-meta{display:flex;justify-content:flex-end}.coach-reply-composer-banner-error{color:#ffb3b3;font-size:13px;font-weight:800;margin:0}.coach-reply-composer-actions{display:flex;gap:10px}.coach-reply-composer-confirmation h3{margin:0}@media(max-width:720px){.coach-workspace-tabs{flex-direction:column}.coach-workspace-tab{width:100%}}.coach-prescription-completion{display:grid;gap:6px;margin:8px 0 12px}.coach-prescription-completion-primary{color:#f5d08a;font-weight:700;margin:0}.coach-prescription-completion-support,.coach-prescription-completion-detail{color:#b8c7cd;margin:0}.coach-prescription-completion-detail{font-size:.92rem}.coach-prescription-out-of-scope{color:#b8c7cd;margin:8px 0 12px}.coach-complete-prescription{margin:0 0 12px}.coach-prescription-repair-scrim{align-items:center;z-index:12}.coach-prescription-repair-modal{align-self:center;background:linear-gradient(180deg,#11191dfc,#090d10fc),linear-gradient(90deg,rgba(25,211,229,.08),transparent 44%);border:1px solid rgba(25,211,229,.3);border-radius:10px;box-shadow:0 28px 80px #00000094;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100vh - 36px);overflow:hidden;width:min(560px,calc(100% - 36px))}.coach-repair-modal-header{align-items:center;border-bottom:1px solid var(--line-soft);display:flex;gap:12px;justify-content:space-between;padding:18px 20px 14px}.coach-repair-modal-header h2{font-size:1.15rem;margin:0}.coach-prescription-repair-modal-body{overflow-y:auto;padding:0 20px 12px}.coach-repair-intro{color:#b8c7cd;margin:0 0 12px}.coach-repair-context-summary{background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;color:#d9e5e8;margin:0 0 18px;padding:12px 14px}.coach-repair-section{margin-bottom:18px}.coach-repair-section-heading,.coach-repair-control-heading{color:#dce7eb;font-size:.95rem;font-weight:700;margin:0 0 10px}.coach-repair-recorded-block{background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;display:grid;gap:6px;padding:12px 14px}.coach-repair-recorded-block p{color:#d9e5e8;margin:0}.coach-repair-control{margin-bottom:16px}.coach-repair-discipline-row{align-items:center;background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px 14px}.coach-repair-discipline-row:has(.coach-repair-discipline-checkbox:focus-visible){outline:2px solid var(--cyan);outline-offset:2px}.coach-repair-discipline-checkbox,.coach-repair-setting-input{accent-color:var(--cyan);flex-shrink:0;height:1rem;margin:0;min-height:0;width:1rem}.coach-repair-setting-fieldset{border:0;margin:0 0 16px;min-width:0;padding:0}.coach-repair-setting-options{display:grid;gap:10px}.coach-repair-setting-option{align-items:flex-start;background:#0c1114b8;border:1px solid var(--line-soft);border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:14px;transition:border-color .12s ease,background-color .12s ease,box-shadow .12s ease}.coach-repair-setting-option.is-selected{background:#19d3e514;border-color:#19d3e5bf;box-shadow:inset 0 0 0 1px #19d3e559}.coach-repair-setting-option:has(.coach-repair-setting-input:focus-visible){outline:2px solid var(--cyan);outline-offset:2px}.coach-repair-setting-copy{display:grid;gap:3px}.coach-prescription-repair-modal .coach-repair-setting-copy span,.coach-prescription-repair-modal .coach-repair-note-field>span{display:block;font-size:inherit;font-weight:inherit;letter-spacing:normal;margin-bottom:0;text-transform:none}.coach-repair-setting-title{color:#eafcff;font-size:.98rem;font-weight:700}.coach-repair-setting-description{color:#dce7eb;font-size:.92rem;line-height:1.4}.coach-repair-setting-outcome{color:#93a4ab;font-size:.86rem;line-height:1.4}.coach-repair-note-field{display:grid;gap:6px}.coach-repair-note-field>.coach-repair-control-heading{color:#dce7eb;font-size:.95rem;font-weight:700;margin:0}.coach-repair-note-helper{color:#93a4ab;font-size:.88rem;line-height:1.4;margin:0}.coach-repair-note-input{min-height:72px}.coach-repair-review{background:#0c11148c;border:1px solid var(--line-soft);border-radius:8px;margin-bottom:12px;padding:14px}.coach-repair-review-label{color:#93a4ab;font-size:.85rem;margin:0 0 4px}.coach-repair-review ul{margin:0 0 12px;padding-left:18px}.coach-repair-modal-actions{border-top:1px solid var(--line-soft);display:flex;gap:10px;justify-content:flex-end;padding:14px 20px 18px}.coach-repair-modal-actions .coach-repair-confirm:disabled{background:#12181cf5;background-image:none;border:1px solid rgba(122,144,153,.42);box-shadow:none;color:#7a9099;cursor:not-allowed;opacity:1}.coach-repair-modal-actions .coach-repair-confirm:disabled:hover,.coach-repair-modal-actions .coach-repair-confirm:disabled:active,.coach-repair-modal-actions .coach-repair-confirm:disabled:focus-visible{background:#12181cf5;border-color:#7a90996b;box-shadow:none;color:#7a9099}.coach-repair-modal-actions .coach-repair-confirm:not(:disabled){background:linear-gradient(180deg,#19d3e5,#0c91a0);border:1px solid rgba(25,211,229,.72);color:#031012}.coach-revision-entry{align-items:center;background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:14px 16px}.coach-revision-entry h3{font-size:1rem;margin:0}.coach-revision-success{margin:0}.coach-plan-revision-modal{align-self:center;background:linear-gradient(180deg,#11191dfc,#090d10fc),linear-gradient(90deg,rgba(25,211,229,.08),transparent 44%);border:1px solid rgba(25,211,229,.3);border-radius:10px;box-shadow:0 28px 80px #00000094;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100vh - 36px);overflow:hidden;position:relative;width:min(820px,calc(100% - 36px))}.coach-revision-modal-header{align-items:center;border-bottom:1px solid var(--line-soft);display:flex;gap:12px;justify-content:space-between;padding:18px 20px 14px}.coach-revision-modal-header h2{font-size:1.15rem;margin:0}.coach-plan-revision-modal-body{display:grid;gap:14px;overflow-y:auto;padding:16px 20px}.coach-revision-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.coach-revision-summary div{background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;display:grid;gap:4px;min-width:0;padding:10px 12px}.coach-revision-summary span{color:#93a4ab;font-size:.76rem}.coach-revision-summary strong{color:#eafcff;font-size:.9rem;min-width:0;overflow-wrap:anywhere}.coach-revision-changes{display:grid;gap:10px}.coach-revision-changes h3,.coach-revision-empty h3{font-size:1rem;margin:0}.coach-revision-change-card{background:#0c11148c;border:1px solid var(--line-soft);border-radius:8px;display:grid;gap:12px;padding:14px}.coach-revision-change-heading{align-items:start;display:flex;gap:12px;justify-content:space-between}.coach-revision-change-heading h4{font-size:1rem;margin:0}.coach-revision-change-heading>span{background:#19d3e51a;border:1px solid rgba(25,211,229,.3);border-radius:999px;color:#dffbff;flex-shrink:0;font-size:.78rem;font-weight:800;padding:4px 8px}.coach-revision-change-details{display:grid;gap:10px;margin:0}.coach-revision-change-details div{display:grid;gap:3px}.coach-revision-change-details dt{color:#93a4ab;font-size:.78rem}.coach-revision-change-details dd{color:#d9e5e8;margin:0}.coach-revision-modal-actions{border-top:1px solid var(--line-soft);display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:14px 20px 18px}.coach-revision-modal-actions .coach-revision-apply:disabled{background:#12181cf5;background-image:none;border:1px solid rgba(122,144,153,.42);box-shadow:none;color:#7a9099;cursor:not-allowed;opacity:1}.coach-revision-confirm{align-self:center;background:#090d10fc;border:1px solid rgba(25,211,229,.42);border-radius:8px;box-shadow:0 22px 70px #0000009e;display:grid;gap:10px;left:50%;padding:18px;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(460px,calc(100% - 32px));z-index:10}.coach-revision-confirm h3,.coach-revision-confirm p{margin:0}.coach-revision-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.coach-held-revision-list{display:grid;gap:10px}.coach-held-revision-list h3,.coach-reveal-copy h3{font-size:1rem;margin:0}.coach-held-revision-options{display:grid;gap:8px}.coach-held-revision-option{background:#0c1114b8;border:1px solid var(--line-soft);border-radius:8px;color:inherit;cursor:pointer;display:grid;gap:4px;justify-items:start;padding:12px 14px;text-align:left}.coach-held-revision-option.is-selected{border-color:#19d3e58c;box-shadow:inset 0 0 0 1px #19d3e547}.coach-held-revision-option:disabled{cursor:not-allowed;opacity:.72}.coach-reveal-copy{display:grid;gap:12px}.coach-reveal-field{display:grid;gap:6px}.coach-reveal-field span{color:#93a4ab;font-size:.82rem}.coach-reveal-field textarea{background:#0c1114e0;border:1px solid var(--line-soft);border-radius:8px;color:#eafcff;font:inherit;min-height:84px;padding:10px 12px;resize:vertical}.coach-revision-modal-actions .coach-revision-reveal:disabled{background:#12181cf5;background-image:none;border:1px solid rgba(122,144,153,.42);box-shadow:none;color:#7a9099;cursor:not-allowed;opacity:1}.coach-plan-context{display:grid;gap:24px}.coach-featured-section{display:grid;gap:12px}.coach-featured-label,.coach-upcoming-heading{color:#dce7eb;font-size:.95rem;font-weight:700;letter-spacing:.02em;margin:0;text-transform:none}.coach-upcoming-section{display:grid;gap:12px}.coach-upcoming-empty{color:var(--muted);font-size:.95rem;margin:0}.coach-upcoming-rail{display:flex;gap:12px;margin:0 -4px;overflow-x:auto;padding:4px 4px 8px;scroll-behavior:smooth;scroll-padding-inline:4px;-webkit-overflow-scrolling:touch}.coach-upcoming-rail-item{flex:0 0 auto}.coach-upcoming-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);cursor:pointer;display:grid;gap:6px;min-height:148px;min-width:220px;max-width:260px;padding:14px 16px;text-align:left;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.coach-upcoming-card:hover{background:#152026;border-color:#19d3e573}.coach-upcoming-card:focus-visible{border-color:var(--cyan);box-shadow:0 0 0 1px #19d3e557,0 0 0 4px #19d3e524;outline:none}.coach-upcoming-card.is-selected{background:#152026;border-color:var(--cyan);box-shadow:inset 0 0 0 1px #19d3e559}.coach-upcoming-card.is-selected:before{color:var(--cyan);content:"Selected";font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.coach-upcoming-date{color:#b8c7cd;font-size:.82rem;font-weight:600}.coach-upcoming-category{color:var(--muted);font-size:.78rem;text-transform:lowercase}.coach-upcoming-title{color:#f3f8fa;font-size:.98rem;line-height:1.35}.coach-upcoming-status,.coach-upcoming-review-status{color:#9aa8ad;font-size:.82rem;line-height:1.35}
