@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#1e2824;background:#f7f9f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9adbad;outline-offset:2px}.app{display:flex;min-height:100vh}.sidebar{width:256px;background:#121c18;color:#fff;display:flex;flex-direction:column;padding:30px 18px;flex-shrink:0}.brand{display:flex;align-items:center;gap:12px;padding:6px 10px 54px}.brand-mark{width:42px;height:42px;background:#b9f27a;color:#172517;border-radius:13px;display:grid;place-items:center}.brand strong{font-family:Space Grotesk;font-size:23px;letter-spacing:-1.2px}.brand strong span{color:#bcf47e}.brand small{display:block;color:#81988a;font-size:10px;letter-spacing:2px;font-weight:800}.workspace-label{font-size:10px;color:#82978c;letter-spacing:1.7px;font-weight:800;margin:0 12px 16px}.athlete-card{display:flex;align-items:center;gap:10px;margin:0 2px 36px;padding:11px;border:1px solid #344039;border-radius:12px}.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#c5eda1;color:#284025;font-weight:800;font-size:12px;flex-shrink:0}.athlete-card strong,.coach-name b{display:block;font-size:13px}.athlete-card small,.coach-name small{display:block;margin-top:3px;font-size:11px;color:#a1aaa5}.nav{display:grid;gap:6px}.nav-link{color:#94a49a;background:transparent;border:0;border-radius:10px;display:flex;align-items:center;gap:14px;padding:13px 15px;text-align:left;font-size:13px;font-weight:700}.nav-link.active{background:#25372a;color:#c9f49b}.nav-link:hover{background:#26342b;color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid #304037;padding:22px 8px 0;color:#7f9587;font-size:10px;font-weight:700;display:flex;align-items:center;gap:8px}.main{flex:1;min-width:0}.topbar{height:82px;border-bottom:1px solid #e6ebe6;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 45px}.breadcrumb{display:flex;align-items:center;gap:9px;color:#87938b;font-size:11px;letter-spacing:1px;font-weight:800}.breadcrumb b{color:#283a2f}.top-actions{display:flex;align-items:center;gap:20px}.demo-pill{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.8px;font-weight:800;background:#ecf7e9;color:#477042;padding:10px 12px;border-radius:99px;white-space:nowrap}.live-dot{height:7px;width:7px;border-radius:50%;background:#68a96e}.top-actions select{border:1px solid #dce6dd;border-radius:9px;padding:10px 28px 10px 13px;background:#fff;font-weight:700;font-size:13px;color:#293c2f}.content{max-width:1320px;margin:auto;padding:42px 46px 80px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#63836b;text-transform:uppercase}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,Arial,sans-serif;letter-spacing:-.75px}h1{font-size:36px;margin:8px 0}h2{font-size:22px;margin-bottom:6px}h3{font-size:18px;margin-bottom:8px}.heading p,.section-head p{color:#87928a;font-size:13px;margin:0}.wave{color:#87c45c}.outline-btn,.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 15px;border-radius:9px;border:1px solid #dce4dc;background:#fff;font-size:12px;font-weight:800;color:#273b2c;white-space:nowrap}.outline-btn:hover{border-color:#79a97d}.primary-btn{background:#263d29;color:#fff;border-color:#263d29}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:35px}.stat{background:#fff;border:1px solid #e5ece5;border-radius:15px;padding:21px 23px;min-width:0}.stat-label{display:flex;align-items:center;justify-content:space-between;color:#768579;font-size:12px;font-weight:700}.stat-label svg{color:#809583}.stat>strong{font-family:Space Grotesk;display:block;font-size:39px;margin:11px 0 2px;letter-spacing:-1.5px}.stat>small{color:#9ba79d;font-size:11px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-head h2{margin-bottom:3px}.text-btn{display:flex;align-items:center;gap:8px;background:none;border:0;color:#476e48;font-weight:800;font-size:12px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.day{position:relative;min-width:0;text-align:left;background:#fff;border:1px solid #e6ece6;border-radius:13px;min-height:175px;padding:14px 11px 19px;display:flex;flex-direction:column;overflow:hidden}.day:hover,.day.selected{border-color:#6fa373;box-shadow:0 0 0 2px #dcebd8}.day-top{display:flex;align-items:center;justify-content:space-between;gap:3px}.day-top span{font-size:10px;color:#7f8c80;font-weight:800;letter-spacing:.7px}.day-top b{font-size:16px}.day-content{margin-top:20px;display:flex;flex-direction:column;gap:7px}.day-icon{color:#8c9b8e}.day-icon.has-session{color:#4b8a52}.day-content strong{font-size:11px;line-height:1.35;overflow-wrap:anywhere}.day-content small{color:#87928a;font-size:10px}.day-line{position:absolute;height:4px;bottom:0;left:0;right:0;background:#e4eae3}.day-line.active{background:#9bc97c}.day-line.completed{background:#357e53}.day-line.draft{background:#e4bd73}.space{margin-top:39px}.session-card{background:#fff;border:1px solid #e6ece6;border-radius:15px;padding:22px;display:flex;align-items:center;gap:20px;margin-bottom:12px}.session-icon{width:54px;height:54px;background:#eaf4e5;border-radius:13px;color:#3f7445;display:grid;place-items:center;flex-shrink:0}.session-text{flex:1;min-width:0}.session-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.session-card h3{margin:8px 0 5px}.session-card p{color:#8b978e;font-size:12px;margin-bottom:8px;line-height:1.5}.session-tags{display:flex;gap:15px;flex-wrap:wrap}.session-tags span{display:flex;align-items:center;gap:5px;font-size:11px;color:#6d826f}.badge{padding:6px 10px;border-radius:20px;font-size:10px;font-weight:800;white-space:nowrap}.badge.neutral{background:#e9f3e6;color:#4d754c}.badge.success{background:#d7eedc;color:#1c753e}.badge.warning{background:#fff2d8;color:#946822}.badge.muted{background:#eceeec;color:#657269}.open-btn{border:1px solid #e4eae3;background:#fff;border-radius:10px;height:38px;width:38px;display:grid;place-items:center}.empty{padding:36px 22px;border:1px dashed #d4dfd4;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:10px;color:#7d9081;text-align:center}.empty p{margin:0;font-size:13px}.date-range{border:1px solid #e0e7df;background:#fff;padding:12px;display:flex;align-items:center;gap:15px;border-radius:10px;font-size:11px;font-weight:800;white-space:nowrap}.panel{border:1px solid #e4ece4;background:#fff;border-radius:14px;padding:22px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title h2{margin:0}.subtle{color:#849287;font-size:12px}.history-item,.coach-row{display:flex;align-items:center;gap:15px;border-top:1px solid #eef2ec;padding:18px 0}.history-item>div:first-child,.coach-name{flex:1;display:grid;gap:5px}.history-item b{font-size:14px}.history-item small{color:#879389;font-size:12px}.mini{width:37px;height:37px}.coach-name small{color:#859287}.compact{padding:9px 11px}.notice{background:#fff7e9;border:1px solid #f0dfbf;border-radius:12px;display:flex;align-items:flex-start;gap:11px;padding:16px;margin-bottom:18px;color:#826329}.notice p{margin:4px 0 0;font-size:12px;line-height:1.5}.notice b{font-size:13px}.notice.quiet{background:#eff5ec;border-color:#dce9d8;color:#507351;margin-top:20px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#101b15a8;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.modal{width:min(100%,580px);max-height:94vh;overflow:auto;background:#fff;border-radius:18px;padding:26px 29px;box-shadow:0 30px 90px #0003}.modal-top{display:flex;justify-content:space-between;align-items:center}.modal h2{font-size:27px;margin:12px 0 7px}.icon-btn{border:0;background:#f0f4ef;border-radius:9px;padding:8px;display:grid;place-items:center}.modal-divider{height:1px;background:#e8eee7;margin:23px 0}.block{border:1px solid #e6eee4;border-radius:12px;padding:17px;margin-bottom:13px}.block-head{display:flex;align-items:center;gap:9px;margin-bottom:12px}.block-number{display:grid;place-items:center;background:#d8ebcd;border-radius:6px;color:#386c40;width:27px;height:27px;font-size:11px;font-weight:800}.block p{font-size:13px;margin-bottom:7px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.metrics>div{background:#f2f7ef;padding:13px;border-radius:9px}.metrics small{color:#7f9180;font-size:10px;font-weight:800;display:block;margin-bottom:6px}.metrics strong{font-family:Space Grotesk;font-size:20px}.block .rest{display:flex;align-items:center;gap:8px;color:#6e856e;margin:8px 0 0}.feedback{margin-top:28px}.feedback h3{margin-bottom:20px}.feedback label{display:flex;align-items:center;justify-content:space-between;color:#566d58;font-size:12px;font-weight:800;margin:17px 0 9px}.feedback label strong{font-size:18px}.feedback input:not([type=range]),.feedback textarea{width:100%;border:1px solid #dce5db;padding:12px;border-radius:9px;background:#fff;color:#213524}.feedback input[type=range]{width:100%;accent-color:#5a995c}.feedback-actions{display:flex;justify-content:flex-end;gap:10px;margin:20px 0 12px}.error{color:#bd3b36;font-size:12px}.footer-mobile{display:none}@media(max-width:1100px){.sidebar{width:210px}.content{padding:30px 25px}.topbar{padding:0 25px}.week-grid{gap:6px}.day{padding:12px 8px;min-height:160px}}@media(max-width:760px){.app{display:block;padding-bottom:68px}.sidebar{width:100%;padding:12px 15px;display:block}.sidebar .brand{padding:0}.sidebar .workspace-label,.sidebar .athlete-card,.sidebar .nav,.sidebar-foot{display:none}.brand strong{font-size:19px}.brand-mark{width:34px;height:34px}.topbar{height:auto;min-height:62px;padding:11px 16px}.breadcrumb{display:none}.top-actions{width:100%;justify-content:space-between;gap:8px}.top-actions select{min-width:0}.content{padding:26px 15px 50px}.heading{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:22px}.heading h1{font-size:28px}.heading .outline-btn{width:100%}.stats{gap:8px}.stat{padding:14px 10px}.stat-label{font-size:10px;gap:7px}.stat-label svg{width:15px;flex-shrink:0}.stat>strong{font-size:29px}.stat>small{font-size:9px;line-height:1.4;display:block}.week-grid{display:flex;overflow-x:auto;gap:8px;padding:3px 2px 8px;scroll-snap-type:x mandatory}.day{min-width:120px;min-height:160px;scroll-snap-align:start}.session-card{padding:15px;gap:12px}.session-icon{width:44px;height:44px}.session-card h3{font-size:16px}.session-top{gap:8px}.session-top .eyebrow{font-size:9px}.open-btn{width:34px;height:34px;flex-shrink:0}.section-head h2{font-size:20px}.nav{position:fixed;bottom:0;left:0;right:0;background:#142019;display:flex!important;justify-content:space-around;padding:7px 5px 10px;gap:1px;z-index:30}.nav-link{display:flex;flex-direction:column;gap:3px;padding:7px 4px;font-size:9px;text-align:center;flex:1}.nav-link svg{width:20px;height:20px}.modal-backdrop{padding:0;align-items:flex-end}.modal{border-radius:18px 18px 0 0;max-height:94vh;padding:21px 18px}.metrics strong{font-size:17px}.date-range{align-self:flex-start}.demo-pill{font-size:9px}.coach-row{gap:9px}}:root{color:#f3f1ec;background:#0e0f11;color-scheme:dark}body{background:#0e0f11}.sidebar{background:#08090a;border-right:1px solid #29292b}.brand-mark{background:#ff7518;color:#120d0a}.brand strong span{color:#ff851c}.brand small,.workspace-label,.sidebar-foot{color:#8e8b87}.athlete-card{border-color:#383638}.avatar{background:#ff7c1f;color:#190e06}.nav-link{color:#aaa6a2}.nav-link.active{background:#29201a;color:#ff9b51}.nav-link:hover{background:#2d2420}.sidebar-foot{border-color:#302a28}.main,.content{background:#101114}.topbar{background:#151619;border-color:#303035}.breadcrumb,.heading p,.section-head p,.subtle,.session-card p,.stat-label,.stat>small,.day-content small{color:#a7a5a1}.breadcrumb b,.top-actions select,.heading h1,.heading h2,h1,h2,h3{color:#f5f3f0}.eyebrow,.wave,.text-btn{color:#ff913d}.demo-pill{background:#352318;color:#ffa45b}.live-dot{background:#ff8d2a}.top-actions select{background:#222226;border-color:#3c3c40}.stat,.day,.session-card,.panel,.block,.modal{background:#1d1e22;border-color:#343438;color:#f4f1ed}.stat-label svg,.day-icon.has-session,.session-tags span{color:#ff8d30}.outline-btn,.open-btn,.icon-btn,.week-arrow{color:#f4f0ea;border-color:#474145;background:#28282b}.outline-btn:hover,.open-btn:hover,.week-arrow:hover{border-color:#ff8730;color:#ffa45d}.primary-btn{background:#fb7b1b;border-color:#fb7b1b;color:#16100b}.primary-btn:hover{background:#ffa14c}.day:hover,.day.selected{border-color:#fb8227;box-shadow:0 0 0 2px #ff81253d}.day-icon,.day-top span{color:#b4aeaa}.day-line{background:#3e3a39}.day-line.active{background:#ff8129}.day-line.completed{background:#efaa63}.day-line.draft{background:#a3683c}.session-icon,.block-number{background:#3c271c;color:#ff9a46}.badge.neutral,.badge.success{background:#39271c;color:#ffb07a}.badge.warning{background:#422d1d;color:#fbc17a}.badge.muted{background:#333336;color:#c3c0bd}.notice,.notice.quiet{background:#2b241f;border-color:#5e4331;color:#f2c49e}.empty{border-color:#524440;color:#b5aaa3}.date-range{background:#262428;border-color:#494044}.history-item,.coach-row{border-color:#38363a}.modal-backdrop{background:#000c}.modal-divider{background:#3c3637}.metrics>div{background:#302721}.metrics small,.block .rest{color:#d0a17d}.feedback label{color:#d9c9bb}.feedback input:not([type=range]),.feedback textarea,.interval-fields input,.bulk-fields input{background:#16171a;border:1px solid #494044;color:#faf4ed;border-radius:8px;padding:10px;width:100%;min-width:0}.feedback input[type=range]{accent-color:#fb8328}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #ff993f;outline-offset:2px}.error{color:#ff9393}.week-nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.week-nav span{font-weight:700;font-size:12px;white-space:nowrap;color:#f4e4d5}.week-arrow{width:34px;height:34px;border-radius:9px;display:grid;place-items:center}.week-nav .outline-btn{margin-left:5px}.interval-editor{margin-top:24px;border-top:1px solid #393438;padding-top:22px}.interval-editor h3{margin:0}.interval-editor>.subtle{margin:8px 0 18px}.bulk-panel{background:#2b211c;border:1px solid #61432c;padding:16px;border-radius:12px;margin-bottom:18px}.bulk-panel>b{color:#ffa75b;font-size:14px;display:block;margin-bottom:12px}.bulk-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bulk-fields label,.interval-fields label{font-size:11px;font-weight:700;color:#c4b8af;display:grid;gap:6px}.bulk-actions{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 10px}.bulk-panel small{color:#bdaca0;line-height:1.5;display:block}.interval-list{display:grid;gap:7px;margin-bottom:13px}.interval-row{border:1px solid #393539;border-radius:10px;background:#202023;overflow:hidden}.interval-row.effort{border-left:3px solid #fc8429}.interval-row.recovery{border-left:3px solid #8d6951}.interval-summary{width:100%;display:flex;align-items:center;gap:8px;border:0;color:#f5f0ed;background:transparent;text-align:left;padding:12px 10px}.interval-summary b{font-size:12px;white-space:nowrap}.interval-dot{width:7px;height:7px;border-radius:100%;background:#ff8d2e;flex-shrink:0}.interval-row.recovery .interval-dot,.interval-row.cooldown .interval-dot,.interval-row.warmup .interval-dot{background:#98867c}.interval-target{margin-left:auto;font-size:11px;color:#c1b0a4;text-align:right}.interval-indicator{font-size:11px;color:#fb8d3b}.interval-summary svg{flex-shrink:0;transition:transform .15s}.interval-summary svg.rotated{transform:rotate(90deg)}.interval-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:#17181b;border-top:1px solid #39353a;padding:13px}@media(max-width:760px){.nav{background:#09090b}.interval-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.interval-target{font-size:10px}.week-nav{width:100%;justify-content:center}.week-nav .outline-btn{width:100%}.section-head:has(.week-nav){display:block}.section-head:has(.week-nav) .week-nav{margin-top:14px}.bulk-actions .outline-btn,.bulk-actions .primary-btn{flex:1 1 100%}}.ai-import{border:1px solid #68452c;border-radius:12px;padding:16px;margin-top:24px;background:#211c19}.ai-import h3{font-size:16px}.ai-import summary{cursor:pointer;font-size:12px;padding:10px 0;overflow-wrap:anywhere}.ai-import textarea,.ai-import select{width:100%;min-width:0;background:#141518;color:#f5eee7;border:1px solid #5a4940;border-radius:8px;padding:10px}.ai-import textarea{font-family:monospace;font-size:12px;margin-bottom:10px;resize:vertical}.import-label{display:grid;gap:7px;font-size:12px;margin:14px 0 8px}.import-row{border:1px solid #49403a;border-radius:8px;padding:0 10px;margin-bottom:7px}.import-row .subtle{line-height:1.6;overflow-wrap:anywhere}.import-ack{display:flex;align-items:flex-start;gap:8px;font-size:12px;margin:16px 0;line-height:1.5}.import-ack input{flex-shrink:0;accent-color:#fb8328}.import-message{font-size:12px;color:#ffb476;line-height:1.5}.import-final p{font-size:11px;line-height:1.6;border-bottom:1px solid #44372e;padding:6px 0;margin:0;overflow-wrap:anywhere}button:disabled{opacity:.45;cursor:not-allowed}.ai-import .panel-title{gap:8px}.ai-import .interval-fields{padding:10px 0;background:transparent}.overwrite-choice{border:1px solid #795032;border-radius:9px;margin:16px 0;padding:12px}.overwrite-choice legend{font-size:13px;font-weight:800;color:#ffac6a}.overwrite-choice label{display:flex;align-items:flex-start;gap:8px;font-size:12px;margin:8px 0;line-height:1.5}.overwrite-choice input{accent-color:#fb8328;flex-shrink:0}.overwrite-choice p{line-height:1.5;margin:10px 0 0}.coach-summary{display:flex;flex-wrap:wrap;gap:12px;margin:-8px 0 24px}.coach-summary>span{padding:12px 16px;background:#231d19;border:1px solid #503828;border-radius:10px;font-size:12px;color:#cfb9a8}.coach-summary b{font-size:20px;color:#ff9b51;margin-right:5px}.coach-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #42342a;padding-bottom:12px;margin-bottom:24px}.coach-tabs button{border:1px solid #46403b;background:#222225;color:#cfc5bd;border-radius:9px;padding:10px 12px;font-size:12px;font-weight:700}.coach-tabs button[aria-selected=true]{background:#46291a;border-color:#ff862c;color:#ffb475}.coach-columns{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.5fr);gap:18px;align-items:start}.coach-form input:not([type=checkbox]):not([type=radio]),.coach-form select,.coach-form textarea{width:100%;min-width:0;border:1px solid #50443e;background:#131416;color:#f6efea;border-radius:8px;padding:10px}.coach-form input[type=checkbox],.coach-form input[type=radio]{accent-color:#fb8328;width:16px;height:16px;flex-shrink:0}.coach-form label{display:grid;gap:7px;color:#d8c7b8;font-size:12px;margin:12px 0}.coach-form h3{margin-top:24px}.coach-form fieldset{border:1px solid #4d3e33;border-radius:9px;padding:10px;margin:14px 0}.coach-form legend{font-size:12px;color:#ddbb9e}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.coach-form label.check-line,.day-checks label{display:flex;align-items:flex-start;gap:8px;line-height:1.5}.day-checks{display:flex;gap:10px;flex-wrap:wrap}.day-checks label{margin:4px 0}.coach-select{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:#222124;border:1px solid #3e3936;border-radius:9px;padding:12px;color:#f1e8df}.coach-select.selected{border-color:#f88b3a;background:#30231b}.coach-select b{font-size:13px;display:block}.coach-select small{display:block;color:#b9aba0;font-size:11px;line-height:1.5;margin-top:4px}.coach-person{margin:10px 0;display:grid;gap:7px}.coach-person>.outline-btn{justify-self:end}.coach-alert{background:#31251d;border:1px solid #80512e;border-radius:9px;color:#ffc08b;padding:14px;font-size:13px;margin:16px 0}.space-small{margin-top:20px}.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.exercise-card h3{font-size:17px;margin:12px 0 8px}.exercise-card p,.exercise-card small{color:#bfae9f;font-size:12px;line-height:1.5}.exercise-card details summary{font-size:12px;color:#ffba82;cursor:pointer}.exercise-card .bulk-actions{margin-bottom:0}.recipe-block{border:1px solid #554133;border-radius:10px;margin:10px 0;padding:0 14px;background:#221e1b}.recipe-block>summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:14px 0;font-size:12px}.recipe-block>summary b{color:#f5e8dc}.recipe-block>summary span{font-size:11px;color:#d4a782}.pace-rule{border-left:3px solid #e78942;padding:8px 12px;background:#30241d;border-radius:5px}.pace-rule h4{font-size:13px;margin:4px 0}.pace-rule small{font-size:11px;color:#ceb29b;line-height:1.6}.coach-targets p{font-size:12px;line-height:1.6;color:#d3bda9;border-bottom:1px solid #41352c;padding:8px 0;margin:0;overflow-wrap:anywhere}.coach-warnings{color:#ffc57f;font-size:12px;line-height:1.6}.coach-form details>summary{cursor:pointer;font-size:12px;padding:12px 0}.coach-form li{margin:6px 0;line-height:1.5}.assigned-list{max-height:550px;overflow:auto}.assigned-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #413832;padding:14px 0}.assigned-row b{font-size:13px}.assigned-row small{display:block;font-size:11px;color:#c6b5a8;line-height:1.7;margin-top:5px}.program-cards{display:grid;gap:10px}.program-entry{border:1px solid #4f3d30;background:#221c18;border-radius:9px;padding:8px 14px;margin:10px 0}.athlete-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.athlete-checks label{display:flex;gap:9px;background:#28201a;border:1px solid #55402f;padding:12px;border-radius:9px;margin:0}.athlete-checks small{display:block;font-size:11px;line-height:1.6;color:#bca997}.plan-preview{max-height:620px;overflow:auto;margin-top:18px;padding-right:5px}.restore-preview{padding:18px;background:#322219;border:1px solid #925329;border-radius:10px;margin-top:20px}.restore-preview p{font-size:13px;line-height:1.6}.goal-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #80502b;background:#302117;padding:17px;border-radius:12px;margin-bottom:22px}.goal-banner b{font-size:15px}.goal-banner>span:last-child{color:#d4b89f;font-size:12px}.interval-summary{flex-wrap:wrap}.interval-target{max-width:70%;overflow-wrap:anywhere}.panel-title{gap:10px;flex-wrap:wrap}@media(max-width:1050px){.coach-columns{grid-template-columns:1fr}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.form-grid,.athlete-checks,.exercise-grid{grid-template-columns:1fr}.coach-tabs{flex-wrap:nowrap;overflow-x:auto}.coach-tabs button{white-space:nowrap;flex-shrink:0}.coach-summary{gap:7px}.coach-summary>span{padding:9px}.coach-form .bulk-actions>.primary-btn,.coach-form .bulk-actions>.outline-btn{white-space:normal;flex:1 1 100%}.assigned-row{align-items:flex-start;flex-wrap:wrap}.assigned-row button{margin-left:auto}.goal-banner{gap:8px}.goal-banner>*{width:100%}.interval-target{max-width:100%;font-size:10px}.coach-columns .panel{padding:16px}.recipe-block{padding:0 10px}.coach-summary b{font-size:17px}.program-entry{padding:8px 10px}}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.weekly-charts,.session-analysis{margin-top:32px;padding-top:24px;border-top:1px solid #554032}.analytic-chart{min-width:0;margin:14px 0;padding:18px}.analytic-chart h3{font-size:17px;margin:0}.analytic-chart p{line-height:1.65}.analytic-chart svg{display:block;width:100%;height:auto;margin:14px 0}.chart-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;color:#d0bba8}.chart-legend span{display:flex;gap:6px;align-items:center}.chart-legend i{display:block;width:11px;height:11px;border-radius:3px}.target-color{background:#8e8277}.actual-color{background:#ff8a2a}.chart-empty{font-size:13px;line-height:1.65;color:#baab9c;border:1px dashed #5e4633;padding:20px;border-radius:10px}.chart-selector{display:grid;gap:8px;max-width:600px;font-size:12px;color:#e3cbb7;margin:20px 0 10px}.chart-selector select{width:100%;background:#191a1e;color:#f6e8da;border:1px solid #6c4a31;border-radius:9px;padding:11px}.analytic-chart details>summary{cursor:pointer;font-size:12px;color:#e6b58d;padding:10px 0}.table-scroll{width:100%;overflow:auto}.analysis-table{border-collapse:collapse;width:100%;text-align:left;font-size:11px}.analysis-table th,.analysis-table td{border-bottom:1px solid #4b3a2d;padding:11px 8px;line-height:1.6;vertical-align:top}.analysis-table thead th{color:#ffae72;font-weight:800}.analysis-table tbody th{font-weight:700;min-width:140px;color:#f2ded0}.analysis-table small{display:block;color:#bba99a;font-size:10px;line-height:1.6}.analysis-table td{font-variant-numeric:tabular-nums;white-space:normal;min-width:68px}.proposal-card{padding:16px;border:1px solid #80542e;background:#2a2018;border-radius:11px;margin:12px 0}.proposal-card.hold{border-color:#4b4640;background:#222225}.proposal-card.decrease{border-color:#a47e3e}.proposal-card p{font-size:13px;line-height:1.65;color:#ead3bc}.proposal-card>small{font-size:11px;color:#bba48e;line-height:1.7}.feedback-editor{padding-top:10px;margin-top:15px}.feedback-editor h4{font-size:14px;color:#ffb173}.feedback-editor label{display:grid!important;align-items:initial!important;justify-content:initial!important}.feedback-editor label.check-line{display:flex!important;justify-content:flex-start!important}.feedback-editor .recipe-block{margin:12px 0}.weekly-review>section{scroll-margin-top:20px}.weekly-review h2{font-size:21px}.athlete-week>.subtle{line-height:1.7}.session-analysis h3{margin-bottom:14px}.weekly-review .check-line{line-height:1.7}.weekly-review .coach-alert{position:relative}.coach-tabs{overflow-x:auto;flex-wrap:nowrap}.coach-tabs button{flex-shrink:0;white-space:nowrap}.analytic-chart .outline-btn{font-size:10px;padding:7px 9px}.analytic-chart .panel-title{align-items:flex-start}.analytic-chart .error{font-size:11px}@media(max-width:1050px){.analysis-grid{grid-template-columns:1fr}}@media(max-width:760px){.analytic-chart{padding:13px}.analytic-chart h3{font-size:16px}.weekly-review h2{font-size:20px}.analysis-table th,.analysis-table td{padding:9px 7px}.proposal-card{padding:12px}.weekly-review .primary-btn{white-space:normal;line-height:1.5}.chart-selector{max-width:100%}.session-analysis{padding-top:18px}.feedback-editor .form-grid{gap:0}.weekly-charts h2{font-size:21px}}.session-fold-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:18px 0}.session-fold-tools>div{display:flex;gap:8px;flex-wrap:wrap}.session-fold{border:1px solid #494039;border-radius:12px;margin:12px 0;overflow:hidden;background:#1d1e22}.session-fold-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;width:100%;padding:16px;background:#242123;border:0;color:#f7eee7}.session-fold-heading>span{display:grid;gap:6px;min-width:0}.session-fold-heading strong{font-size:15px}.session-fold-heading small{font-size:11px;color:#c9b6a5;line-height:1.5}.session-fold-heading svg{flex-shrink:0;color:#fb8328;transition:transform .15s}.session-fold-heading svg.rotated{transform:rotate(90deg)}.session-fold-body{padding:16px;border-top:1px solid #494039}.session-fold-body[hidden]{display:none}.session-fold-body>.interval-editor,.session-fold-body>.feedback,.session-fold-body>.session-analysis{margin-top:0;padding-top:0;border-top:0}.session-fold-body>.block:last-child{margin-bottom:0}.session-fold-body>.import-panel{margin:0}@media(max-width:760px){.session-fold-heading{padding:14px}.session-fold-body{padding:12px}.session-fold-tools>div{width:100%}.session-fold-tools button{flex:1}}.cloud-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 22px;background:#171717;border-bottom:1px solid #e8872a;position:relative;z-index:100;color:#eee}.cloud-bar>div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cloud-bar span{font-size:12px;color:#c1b7aa}.cloud-bar b{font-size:12px;color:#f79535}.cloud-setup{max-width:850px;margin:28px auto;padding:24px}.cloud-error{padding:14px 22px;background:#3a2020;color:#ffb1a7;font-size:14px}.cloud-app-frame{margin:0;padding:0;border:0;min-width:0}@media(max-width:760px){.cloud-bar{align-items:flex-start;flex-direction:column;padding:10px 16px;gap:8px}.cloud-setup{margin:16px 12px;padding:16px}.cloud-app-frame .sidebar{top:auto;height:auto}.cloud-bar>div{gap:8px}}
