:root{color:#1d2433;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}html,body,#root{max-width:100%;min-width:0;overflow-x:hidden;width:100%}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;max-width:100%;min-width:0}button{cursor:pointer;min-height:44px;overflow-wrap:anywhere;white-space:normal}.app-shell{align-content:start;display:grid;grid-template-columns:minmax(0,1fr);min-height:100vh;min-width:0;overflow-x:hidden}.login-screen{align-items:center;display:grid;justify-items:center;min-height:100vh;padding:16px}.panel.login-panel{gap:16px;max-width:400px;padding:18px;width:min(100%,400px)}.login-heading{display:grid;gap:4px;text-align:left}.login-heading span{color:#66758a;font-size:.9rem;font-weight:700}.login-heading h1{font-size:1.45rem;line-height:1.15;margin:0}.login-form{display:grid;gap:12px}.login-form .header-action{width:100%}.sidebar{background:#fff;border-bottom:1px solid #dce3ee;display:flex;flex-direction:column;gap:8px;max-width:100%;min-width:0;padding:8px 14px}.mobile-header{align-items:center;display:flex;gap:10px;justify-content:flex-start;min-width:0}.mobile-menu-action{background:#eef3f8;border:1px solid #c7d2e2;border-radius:8px;color:#205493;flex:0 0 auto;font-size:1.2rem;font-weight:800;min-height:40px;min-width:44px;padding:5px 10px}.desktop-brand{display:none}.workspace-nav{background:#fff;bottom:0;display:none;flex-direction:column;left:0;min-width:0;overflow-y:auto;padding:72px 14px 14px;position:fixed;top:0;width:min(320px,80vw);z-index:30}.workspace-nav.mobile-open{display:flex}.workspace-nav-primary{display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}.workspace-nav-account{border-top:1px solid #dce3ee;margin-top:auto;padding-top:14px}.mobile-drawer-title{font-size:1.16rem;margin-bottom:8px;overflow-wrap:anywhere}.account-label,.mobile-drawer-account-label{color:#66758a;font-size:.86rem;overflow-wrap:anywhere}.mobile-drawer-account-label{margin-top:-8px}.workspace-nav-action{background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;color:#405064;font-size:1rem;font-weight:800;min-width:0;padding:9px 10px;text-align:left}.workspace-nav-action.active{background:#eaf3ff;border-color:#83b7f1;color:#205493}.logout-nav-action{color:#405064}.mobile-drawer-backdrop{background:#1d24336b;border:0;inset:0;min-height:0;padding:0;position:fixed;width:100%;z-index:20}.brand{display:grid}.brand,.desktop-brand{gap:0;min-width:0}.brand span,.desktop-brand span,.panel-heading span,.group-meta,.athlete-row p,.details-grid dt{color:#66758a;font-size:.86rem}.brand span,.desktop-brand span,.panel-heading span,.group-meta{overflow-wrap:anywhere}.brand strong,.desktop-brand strong{font-size:1.16rem;line-height:1.15;overflow-wrap:anywhere}.create-group-form,.create-athlete-form,.create-training-plan-form,.create-training-session-form,.training-program-form,.snippet-form{display:grid;gap:8px;max-width:100%;min-width:0}.form-label{color:#405064;display:grid;font-size:.9rem;font-weight:700;gap:6px;max-width:100%;min-width:0;overflow-wrap:anywhere}.form-control{border:1px solid #c7d2e2;border-radius:6px;color:#1d2433;font-size:1rem;font-weight:400;min-height:44px;min-width:0;padding:9px 10px;width:100%}.form-control::placeholder{color:#9aa8ba;font-weight:400;opacity:1}.form-control:focus{border-color:#83b7f1;outline:2px solid #cfe5ff;outline-offset:1px}textarea.form-control{min-height:96px;resize:vertical}.create-group-form button,.create-athlete-form button,.create-training-plan-form button,.create-training-session-form button,.training-program-form button,.rest-marker-form button,.training-period-form button,.snippet-form button,.header-action,.secondary-action,.danger-action{background:#205493;border:0;border-radius:6px;color:#fff;font-weight:700;max-width:100%;padding:9px 14px}.secondary-action{background:#fff;border:1px solid #dce3ee;color:#405064;font-size:.9rem;min-height:38px;padding:7px 12px;width:100%}.secondary-action:disabled{background:#f7f9fc;border-color:#e1e7f0;color:#9aa8ba;cursor:not-allowed}.ghost-action{background:transparent;border-color:transparent;color:#405064;min-height:38px;padding:7px 0;width:auto}.ghost-action:disabled{color:#9aa8ba}.danger-action{background:#fff1f0;border:1px solid #ffbbb3;color:#9f1d16;font-size:.9rem;min-height:40px;width:100%}.create-group-form{border-top:1px solid #dce3ee;padding-top:12px}.create-group-form h2,.create-athlete-form h2,.create-training-plan-form h2,.create-training-session-form h2,.snippet-form h2{font-size:1rem;margin:0}.create-group-form button:disabled,.create-athlete-form button:disabled,.create-training-plan-form button:disabled,.create-training-session-form button:disabled,.training-program-form button:disabled,.snippet-form button:disabled,.header-action:disabled{background:#8aa5c3;border-color:#8aa5c3;color:#fff;cursor:not-allowed}.danger-action:disabled{background:#f3e8e7;border-color:#dfc8c5;color:#8b6562;cursor:not-allowed}.form-actions{display:flex;flex-direction:column-reverse;gap:10px}.form-actions .secondary-button{background:#fff;border:1px solid #dce3ee;color:#405064;min-height:38px;padding:7px 12px}.form-actions button{width:100%}.form-grid{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.form-error{background:#fff1f0;border:1px solid #ffbbb3;border-radius:6px;color:#9f1d16;font-size:.9rem;min-width:0;overflow-wrap:anywhere;padding:8px 10px}.workspace-header h1,.panel h2,.athlete-row h3,.training-plan-row h3,.linked-plan-section h3{margin:0;min-width:0;overflow-wrap:anywhere}.group-list{align-content:start;display:grid;gap:6px;grid-auto-rows:max-content;min-width:0}.group-row{align-items:flex-start;background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;color:inherit;display:grid;gap:8px;grid-template-columns:minmax(0,1fr);height:auto;min-height:44px;min-width:0;padding:9px 10px;position:static;text-align:left;width:100%}.group-row.selected{background:#eaf3ff;border-color:#83b7f1}.group-name{display:block;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.group-row .group-meta{display:block;margin-top:4px;overflow-wrap:anywhere}.group-open-action{justify-self:stretch}.workspace{display:grid;gap:12px;max-width:100%;min-width:0;overflow-x:hidden;padding:14px;width:100%}.workspace-header{align-items:flex-start;display:flex;flex-direction:column;gap:10px;justify-content:space-between;max-width:100%;min-width:0}.workspace-header>div{max-width:100%;min-width:0}.workspace-header h1{font-size:clamp(1.35rem,7vw,2.2rem);line-height:1.1;overflow-wrap:anywhere}.summary-strip{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;max-width:100%;min-width:0}.summary-strip span{background:#fff;border:1px solid #dce3ee;border-radius:999px;color:#405064;font-size:.9rem;max-width:100%;min-width:0;overflow-wrap:anywhere;padding:5px 9px}.error-banner{background:#fff1f0;border:1px solid #ffbbb3;border-radius:8px;color:#9f1d16;padding:12px 14px}.content-grid{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr);min-width:0;width:100%}.session-workspace{display:grid;max-width:100%;min-width:0}.group-workspace,.focused-form-screen{display:grid;gap:12px;max-width:100%;min-width:0}.group-focus-panel,.focused-screen-toolbar-panel{max-width:820px}.training-placeholder{grid-column:1 / -1}.session-dialog{background:transparent;border:0;max-height:100dvh;max-width:100vw;overflow:visible;padding:0;width:100%}.session-dialog::backdrop{background:#1d243394}.session-dialog-surface{background:#fff;display:grid;max-height:inherit;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:14px;width:100%}.session-dialog .session-structural-edit{border:0;box-shadow:none;padding:0}.training-plan-replacement-panel,.training-plan-replacement-form{display:grid;gap:12px;min-width:0}.training-plan-replacement-panel h3,.training-plan-replacement-panel p{margin:0}.training-plan-replacement-form button:not(.secondary-action):not(.secondary-button){background:#205493;border:1px solid #205493;border-radius:6px;color:#fff;font-weight:700;padding:9px 14px}.training-plan-replacement-form button:not(.secondary-action):not(.secondary-button):disabled{background:#8aa5c3;border-color:#8aa5c3;cursor:not-allowed}.session-dialog button{overflow-wrap:normal;white-space:nowrap;word-break:normal}@media(max-width:699px){.session-dialog{height:100dvh;margin:0;max-height:none;width:100vw}.session-dialog-surface{height:100%;max-height:100dvh;min-height:100%;padding:16px 14px}.session-dialog .session-dialog-actions,.session-dialog .create-training-session-form>.form-actions{background:#fff;border-top:1px solid #dce3ee;bottom:0;padding:10px 0 2px;position:sticky;z-index:2}}@media(min-width:700px){.session-dialog{border-radius:10px;box-shadow:0 20px 50px #1d243347;max-height:calc(100dvh - 48px);width:min(720px,calc(100vw - 48px))}.session-dialog.training-plan-replacement-dialog{width:min(520px,calc(100vw - 48px))}.session-dialog-surface{border-radius:10px;padding:18px}.session-dialog .form-actions{flex-direction:row;justify-content:flex-end}.session-dialog .form-actions button{width:auto}}.training-programs-workspace{display:grid;gap:12px;grid-column:1 / -1;min-width:0}.training-programs-workspace button{overflow-wrap:normal;word-break:normal}.training-program-list,.training-program-form,.program-revisions{display:grid;gap:10px;min-width:0}.program-library-filters{display:flex;flex-wrap:wrap;gap:6px;min-width:0;width:100%}.program-library-filters .secondary-action{flex:1 1 auto;white-space:nowrap;width:auto}.program-library-filters .secondary-action.active{background:#eaf3ff;border-color:#83b7f1;color:#205493}.training-program-row,.program-revision-row{border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:8px;min-width:0;padding:10px}.training-program-row>.secondary-action{align-self:center;white-space:nowrap}.training-program-row h3,.program-revisions h3{margin:0}.training-program-row p{color:#405064;margin:3px 0 7px;overflow-wrap:anywhere}.program-revision-row{align-items:center;background:#fff;color:#1d2433;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;text-align:left;width:100%}.program-revision-row:hover,.program-revision-row.selected{border-color:#83b7f1}.program-revision-row.selected{background:#f4f8fd;box-shadow:0 0 0 1px #83b7f138}.program-revision-row:focus-visible{outline:2px solid #83b7f1;outline-offset:2px}.program-revision-details{display:grid;gap:3px;min-width:0}.program-revision-details small{color:#66758a;font-weight:400}.program-revision-state{background:#eaf3ff;border-radius:999px;color:#205493;display:inline-flex;font-size:.85rem;font-weight:700;padding:4px 8px;width:fit-content}.program-archive-state{background:#eef0f3;border-radius:999px;color:#526071;display:inline-flex;font-size:.8rem;font-weight:700;padding:4px 8px;width:fit-content}.program-details-title,.program-section-heading{align-items:center;display:flex;flex-wrap:wrap;gap:7px 10px;min-width:0}.program-details-title h2,.program-section-heading h3{margin:0}.program-section-heading{justify-content:space-between}.program-metadata-actions{margin-top:4px}.program-metadata-edit-row{display:grid;gap:8px;min-width:0}.program-metadata-helper{color:#66758a;font-size:.86rem;margin:0;overflow-wrap:anywhere}.program-new-revision-action,.program-preview-launch,.program-lifecycle-section,.program-draft-discard-section{border-top:1px solid #dce3ee;display:grid;gap:9px;min-width:0;padding-top:12px}.program-new-revision-action p,.program-preview-launch p,.program-lifecycle-section p,.program-lifecycle-section h3,.program-draft-discard-section h3,.program-draft-discard-section p{margin:0}.program-new-revision-action p,.program-preview-launch p,.program-lifecycle-section p,.program-lifecycle-section small,.program-draft-discard-section p{color:#66758a;font-size:.86rem;overflow-wrap:anywhere}.program-preview-launch button{justify-self:start;white-space:nowrap;width:auto}.program-lifecycle-section h3,.program-draft-discard-section h3{font-size:1rem}.program-draft-discard-section>div{display:grid;gap:5px;min-width:0}.program-secondary-danger-action{background:#fff;border-color:#d99a9a;color:#a23131;white-space:nowrap}.program-secondary-danger-action:hover{background:#fff6f6;border-color:#c87575}.program-metadata-actions button,.program-lifecycle-section button,.training-program-details>.session-delete-section button{white-space:nowrap}.training-program-details{max-width:900px;width:100%}.program-application-history{border-top:1px solid #dce3ee;display:grid;gap:12px;min-width:0;padding-top:16px}.program-application-history .program-section-heading>div,.program-application-history-list,.program-application-history-card,.program-application-lifecycle-modal,.program-revert-blockers{display:grid;gap:10px;min-width:0}.program-application-history .program-section-heading h3,.program-application-history .program-section-heading p,.program-application-history-empty,.program-application-history-card h4,.program-application-eligibility,.program-application-archive-guard,.program-revert-explanation p,.program-delete-application-explanation p,.program-revert-blockers h5,.program-revert-blockers p{margin:0}.program-application-history .program-section-heading p,.program-application-history-empty{color:#66758a;font-size:.86rem}.program-application-history-card{border:1px solid #dce3ee;border-radius:8px;padding:11px}.program-application-history-card>header{align-items:start;display:flex;gap:10px;justify-content:space-between;min-width:0}.program-application-history-card>header>div{display:grid;gap:2px;min-width:0}.program-application-history-card>header span:not(.program-application-state){color:#66758a;font-size:.82rem}.program-application-state{border:1px solid;border-radius:999px;flex:0 0 auto;font-size:.76rem;font-weight:800;padding:3px 8px}.program-application-state.applied{background:#eef5ff;border-color:#bfd2eb;color:#205493}.program-application-state.reverted{background:#f2f4f7;border-color:#ccd4df;color:#52657a}.program-application-history-summary,.program-application-modal-summary{display:grid;gap:7px;grid-template-columns:minmax(0,1fr);margin:0;min-width:0}.program-application-history-summary>div,.program-application-modal-summary>div{background:#f7f9fc;border-radius:6px;min-width:0;padding:7px 9px}.program-application-history-summary dt,.program-application-modal-summary dt{color:#66758a;font-size:.75rem}.program-application-history-summary dd,.program-application-modal-summary dd{font-size:.86rem;font-weight:700;margin:2px 0 0;overflow-wrap:anywhere}.program-application-eligibility{border-left:3px solid;font-size:.82rem;padding:6px 8px}.program-application-eligibility.clean{background:#eef8f2;border-color:#6aaf7f;color:#2d6840}.program-application-eligibility.blocked{background:#fff9e8;border-color:#d6a43b;color:#6c4b12}.program-application-eligibility.blocked ul{margin:5px 0 0;padding-left:18px}.program-application-archive-guard{color:#785416;font-size:.82rem}.program-application-history-actions{display:flex;flex-wrap:wrap;gap:8px}.program-application-history-actions button{width:auto}.program-application-lifecycle-modal{width:100%}.program-revert-explanation,.program-delete-application-explanation{background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;color:#52657a;display:grid;font-size:.88rem;gap:7px;padding:11px}.program-revert-explanation ul{display:grid;gap:5px;margin:0;padding-left:20px}.program-revert-blockers{background:#fff9e8;border:1px solid #ead59d;border-radius:8px;color:#6c4b12;padding:11px}.program-revert-blockers ul{display:grid;gap:7px;margin:0;padding-left:20px}.program-revert-blockers li{overflow-wrap:anywhere}.program-application-issue-list,.program-application-issue-card{display:grid;gap:8px;min-width:0}.program-application-issue-card{background:#fff;border:1px solid #ead59d;border-radius:7px;color:#493712;padding:10px}.program-application-issue-card h6,.program-application-issue-card p{margin:0}.program-application-issue-card h6{font-size:.9rem;overflow-wrap:anywhere}.program-application-issue-actions{display:flex;flex-wrap:wrap;gap:7px}.program-application-issue-actions button{width:auto}.program-revert-started-warning{background:#fff4d6;border:1px solid #dfbd68;border-radius:8px;color:#67470d;display:grid;gap:9px;padding:11px}.program-revert-started-warning p{margin:0}.program-revert-started-warning label{align-items:flex-start;display:flex;font-weight:700;gap:8px}.program-revert-started-warning input{flex:0 0 auto;margin-top:3px}.training-programs-workspace .focused-form-panel{max-width:720px;width:100%}.training-program-form{gap:12px;width:min(100%,640px)}.program-name-field{width:min(100%,480px)}.program-description-field{width:min(100%,640px)}.training-program-form textarea.form-control{min-height:120px}.training-program-form .form-actions{margin-top:2px}.training-program-form .form-actions button{min-height:44px}.program-content-editor{border-top:1px solid #dce3ee;display:grid;gap:12px;min-width:0;padding-top:16px}.program-editor-dialog{background:transparent;border:0;max-height:100dvh;max-width:100vw;overflow:visible;padding:0;width:100%}.program-editor-dialog::backdrop{background:#1d243394}.program-editor-dialog-surface{background:#fff;display:grid;max-height:inherit;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:14px;width:100%}.program-editor-dialog .program-slot-form,.program-editor-dialog .program-copy-panel{border:0;box-shadow:none;padding:0}.program-application-preview,.program-preview-form,.program-preview-result,.program-preview-days,.program-preview-day,.program-preview-sessions,.program-preview-recovery{display:grid;gap:12px;min-width:0}.program-preview-form{background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;padding:12px}.program-preview-inputs{display:grid;gap:10px;grid-template-columns:minmax(0,1fr);min-width:0}.program-preview-empty-groups{color:#66758a;margin:0}.program-preview-form button,.program-preview-launch button{overflow-wrap:normal;white-space:nowrap;word-break:normal}.program-preview-form .secondary-action:disabled{background:#f7f9fc;border-color:#e1e7f0;color:#9aa8ba;cursor:not-allowed}.program-preview-result{border-top:1px solid #dce3ee;padding-top:14px}.program-preview-result-heading{align-items:start;display:flex;flex-wrap:wrap;gap:8px 14px;justify-content:space-between;min-width:0}.program-preview-result-heading h4,.program-preview-result-heading p{margin:0}.program-preview-result-heading p,.program-preview-result-heading>span{color:#66758a;font-size:.88rem}.program-preview-summary{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;min-width:0}.program-preview-summary>div{background:#f7f9fc;border:1px solid #e1e7f0;border-radius:7px;min-width:0;padding:8px 10px}.program-preview-summary>div.blocking{background:#fff4f4;border-color:#e1a6a6}.program-preview-summary dt{color:#66758a;font-size:.78rem;overflow-wrap:anywhere}.program-preview-summary dd{font-size:1.15rem;font-weight:800;margin:2px 0 0}.program-preview-conflict-summary{border:1px solid;border-radius:7px;font-size:.88rem;font-weight:700;padding:9px 11px}.program-preview-conflict-summary.warning{background:#fff9e8;border-color:#ead59d;color:#785416}.program-preview-conflict-summary.blocking{background:#fff2f2;border-color:#dfa4a4;color:#8f2929}.program-preview-day{align-self:start;border:1px solid #dce3ee;border-radius:8px;overflow:hidden;padding:11px}.program-preview-day>header{align-items:baseline;display:flex;flex-wrap:wrap;gap:5px 10px;justify-content:space-between}.program-preview-day>header h5,.program-preview-day>header span,.program-preview-sessions h6,.program-preview-recovery h6{margin:0}.program-preview-day>header span{color:#66758a;font-size:.8rem}.program-preview-sessions h6,.program-preview-recovery h6{color:#52657a;font-size:.78rem;text-transform:uppercase}.program-preview-session,.program-preview-rest{background:#f7f9fc;border:1px solid #e1e7f0;border-radius:7px;display:grid;gap:8px;min-width:0;padding:9px}.program-preview-session p,.program-preview-rest p{color:#52657a;font-size:.85rem;margin:5px 0 0;overflow-wrap:anywhere}.program-preview-recovery{border-top:1px dashed #b9cdbb;padding-top:10px}.program-preview-rest{background:#f3f8f3;border-color:#d4e4d5}.program-preview-workout{border-top:1px solid #dce3ee;padding-top:7px}.program-preview-workout>summary{color:#205493;cursor:pointer;font-size:.84rem;font-weight:700}.program-preview-workout dl{display:grid;gap:8px;margin:9px 0 0}.program-preview-workout dt{color:#66758a;font-size:.76rem;font-weight:700}.program-preview-workout dd{margin:2px 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.program-preview-issues{display:grid;gap:6px;list-style:none;margin:0;padding:0}.program-preview-issues li{border-left:3px solid;display:grid;font-size:.82rem;gap:2px;padding:5px 7px}.program-preview-issues li.warning{background:#fff9e8;border-color:#d6a43b;color:#6c4b12}.program-preview-issues li.blocking{background:#fff2f2;border-color:#c95d5d;color:#842525}.program-application-action{display:flex;justify-content:flex-end}.program-apply-action{background:#205493;border:1px solid #205493;border-radius:6px;color:#fff;font-weight:700;overflow-wrap:normal;padding:9px 14px;white-space:nowrap;word-break:normal}.program-apply-action:hover:not(:disabled){background:#173f70;border-color:#173f70}.program-apply-action:focus-visible{outline:3px solid rgb(32 84 147 / 28%);outline-offset:2px}.program-apply-action:disabled{background:#8aa5c3;border-color:#8aa5c3;color:#fff;cursor:not-allowed}.program-application-confirmation,.program-application-success{border:1px solid #c7d2e2;border-radius:8px;display:grid;gap:10px;min-width:0;padding:12px}.program-application-confirmation{background:#f7f9fc}.program-application-success{background:#eef8f2;border-color:#b8dcc5}.program-application-confirmation h4,.program-application-confirmation p,.program-application-success h4,.program-application-success p{margin:0;overflow-wrap:anywhere}.program-warning-confirmation{align-items:start;background:#fff9e8;border:1px solid #ead59d;border-radius:7px;display:flex;gap:9px;padding:9px 10px}.program-warning-confirmation input{flex:0 0 auto;margin-top:4px}.program-content-heading,.program-snapshot-heading,.program-slot-form-heading{display:flex;flex-direction:column;gap:8px;justify-content:space-between;min-width:0}.program-content-heading h3,.program-content-heading p,.program-slot-form-heading h4,.program-slot-form-heading span,.program-snapshot-heading h5,.program-snapshot-heading p,.program-week-heading h4,.program-copy-panel h4,.program-copy-panel p{margin:0}.program-content-heading p,.program-slot-form-heading span,.program-snapshot-heading p,.program-copy-panel p,.program-draft-save-bar span{color:#66758a;font-size:.88rem}.program-slot-count{background:#eef3f8;border-radius:999px;color:#405064;font-size:.85rem;font-weight:700;padding:5px 9px;width:fit-content}.program-authoring-toolbar,.program-copy-toolbar,.program-copy-panel,.program-slot-form{background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;display:grid;gap:10px;min-width:0;padding:12px}.program-copy-toolbar>span{color:#405064;font-size:.9rem;font-weight:700}.program-day-input{width:min(100%,180px)}.program-toolbar-actions,.program-day-actions,.program-entry-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.program-day-actions .secondary-action:last-child{grid-column:1 / -1}.program-copy-fields,.program-slot-time-fields,.program-snapshot-fields{display:grid;gap:10px;grid-template-columns:minmax(0,1fr);min-width:0}.program-slot-form{background:#fff;border-color:#b8cce5;box-shadow:0 3px 12px #20549314}.program-slot-title-field,.program-slot-notes-field,.program-plan-copy-field{width:min(100%,640px)}.program-snapshot-editor{border-top:1px solid #e1e7f0;display:grid;gap:12px;min-width:0;padding-top:12px}.program-snapshot-fields textarea.form-control{min-height:88px}.program-slot-form button:not(.secondary-action):not(.secondary-button),.program-copy-panel button:not(.secondary-button),.program-preview-form button:not(.secondary-action):not(.secondary-button),.program-draft-save-bar button:not(.secondary-action){background:#205493;border:0;border-radius:6px;color:#fff;font-weight:700;padding:9px 14px}.program-slot-form button:disabled,.program-copy-panel button:disabled,.program-preview-form button:not(.secondary-action):disabled,.program-draft-save-bar button:not(.secondary-action):disabled{background:#8aa5c3;color:#fff;cursor:not-allowed}.program-editor-warning,.program-editor-notice{border:1px solid #c7d2e2;border-radius:6px;color:#405064;font-size:.9rem;overflow-wrap:anywhere;padding:8px 10px}.program-editor-warning{background:#fff9e8;border-color:#ead59d}.program-editor-notice{background:#eef8f2;border-color:#b8dcc5;color:#315f42}.program-relative-timeline,.program-week-chunk,.program-week-days,.program-day-content,.program-session-order-list,.program-session-order-item,.program-day-recovery-section{display:grid;gap:10px;min-width:0}.program-week-chunk{border-left:3px solid #b8cce5;padding-left:10px}.program-week-heading{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;min-width:0}.program-week-heading h4{min-width:0}.program-week-toggle{align-items:center;background:transparent;border:0;color:#1d2433;display:inline-flex;font-weight:700;gap:6px;justify-content:flex-start;min-height:36px;padding:4px 2px;text-align:left}.program-week-toggle:hover{color:#205493}.program-week-toggle:focus-visible,.program-day-card>summary:focus-visible{outline:2px solid #83b7f1;outline-offset:2px}.program-collapse-chevron{color:#66758a;display:inline-block;flex:0 0 auto;font-size:1.15rem;line-height:1;transform:rotate(0);transition:transform .14s ease}.program-collapse-chevron.expanded{transform:rotate(90deg)}.program-week-collapsed-summary{color:#66758a;font-size:.84rem;margin:0 0 0 24px;overflow-wrap:anywhere}.program-week-days{align-items:start;grid-auto-rows:max-content}.program-day-card{align-self:start;background:#fff;border:1px solid #dce3ee;border-radius:8px;min-width:0;overflow:hidden}.program-day-card.recently-changed{border-color:#5596dc;box-shadow:0 0 0 2px #5596dc33}.program-day-card>summary{align-items:center;cursor:pointer;display:grid;gap:4px 8px;grid-template-columns:minmax(0,1fr) auto;list-style:none;min-height:48px;padding:10px}.program-day-card>summary::-webkit-details-marker{display:none}.program-day-heading-title{align-items:center;display:inline-flex;gap:6px;min-width:0}.program-day-compact-summary{color:#66758a;font-size:.82rem}.program-day-card>summary em{background:#fff4db;border-radius:999px;color:#785416;font-size:.75rem;font-style:normal;font-weight:700;grid-column:1 / -1;padding:3px 7px;width:fit-content}.program-day-content{border-top:1px solid #e1e7f0;padding:10px}.program-session-entry,.program-rest-entry{background:#f7f9fc;border:1px solid #e1e7f0;border-radius:7px;display:grid;gap:8px;min-width:0;padding:9px}.program-session-entry.dragging{opacity:.48}.program-session-entry.dragging .program-session-entry-content{cursor:grabbing}.program-session-entry-content{cursor:grab;display:grid;grid-template-columns:minmax(0,1fr);min-width:0;-webkit-user-select:none;user-select:none}.program-content-editor.read-only .program-session-entry-content{cursor:default;-webkit-user-select:text;user-select:text}.program-session-insertion-indicator{background:#2878c7;border-radius:999px;box-shadow:0 0 0 3px #2878c72e;height:4px;margin:-2px 5px}.program-day-recovery-section{border-top:1px dashed #b9cdbb;margin-top:2px;padding-top:10px}.program-day-recovery-section h5{color:#45645c;font-size:.82rem;margin:0;text-transform:uppercase}.program-rest-entry{background:#f3f8f3;border-color:#d4e4d5}.program-session-entry strong,.program-rest-entry strong,.program-session-entry p,.program-rest-entry p{margin:0;overflow-wrap:anywhere}.program-rest-entry p{color:#52657a;font-size:.85rem;margin-top:3px}.program-entry-meta{color:#66758a;display:flex;flex-wrap:wrap;font-size:.82rem;gap:5px 10px;margin-top:3px}@media(max-width:699px){.program-editor-dialog{height:100dvh;margin:0;max-height:none;width:100vw}.program-editor-dialog-surface{height:100%;max-height:100dvh;min-height:100%;padding:16px 14px}.program-editor-dialog .form-actions{background:#fff;border-top:1px solid #dce3ee;bottom:0;padding:10px 0 2px;position:sticky;z-index:2}.program-application-action .program-apply-action,.program-prescription-actions button{width:100%}}.program-draft-save-bar{align-items:stretch;background:#fff;border-top:1px solid #dce3ee;display:flex;flex-direction:column;gap:8px;padding-top:12px}.program-draft-save-actions{display:grid;gap:8px;grid-template-columns:minmax(0,1fr);width:100%}.program-draft-save-actions button{width:100%}.program-draft-save-bar>small{color:#66758a;flex-basis:100%;font-size:.82rem}.daily-schedule-panel{border-color:#b8cce5;box-shadow:0 4px 14px #20549314;grid-column:1 / -1;max-width:100%;min-width:0}.daily-schedule-date{max-width:260px}.calendar-header{align-items:center;display:grid;gap:6px 10px;grid-template-areas:"navigation navigation" "summary today" "filter filter";grid-template-columns:minmax(0,1fr) auto;min-width:0}.calendar-month-navigation{align-items:center;display:grid;gap:10px;grid-template-columns:42px minmax(0,auto) 42px;grid-area:navigation;justify-self:center;max-width:100%}.calendar-month-control{min-width:0;position:relative;text-align:center;text-transform:capitalize}.calendar-month-heading{align-items:center;background:transparent;border:0;border-radius:6px;color:#1d2433;cursor:pointer;display:inline-flex;font-size:1.5rem;font-weight:700;gap:5px;justify-content:center;line-height:1.2;max-width:100%;min-height:42px;padding:3px 5px}.calendar-month-heading:hover{color:#205493}.calendar-month-heading:focus-visible{outline:2px solid #4f91d8;outline-offset:2px}.calendar-month-caret{color:#66758a;font-size:.75rem}.calendar-month-popover{background:#fff;border:1px solid #cfd9e7;border-radius:10px;box-shadow:0 10px 30px #1d243333;display:grid;gap:10px;left:50%;max-width:calc(100vw - 24px);min-width:min(310px,calc(100vw - 24px));padding:10px;position:absolute;top:calc(100% + 6px);transform:translate(-50%);z-index:30}.calendar-month-popover:focus{outline:none}.calendar-year-navigation{align-items:center;display:grid;grid-template-columns:40px minmax(0,1fr) 40px}.calendar-year-action{background:#f7f9fc;border:1px solid #cfd9e7;border-radius:7px;color:#205493;min-height:40px}.calendar-month-options{display:grid;gap:5px;grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-month-options button{background:#f7f9fc;border:1px solid #dce3ee;border-radius:6px;color:#405064;font-size:.76rem;font-weight:700;min-height:38px;min-width:0;overflow:hidden;padding:5px 3px;text-overflow:ellipsis}.calendar-month-options button.selected{background:#eaf3ff;border-color:#4f91d8;color:#174a80}.calendar-year-action:focus-visible,.calendar-month-options button:focus-visible,.calendar-month-cancel:focus-visible{outline:2px solid #4f91d8;outline-offset:2px}.calendar-month-cancel{background:transparent;border:0;color:#405064;font-weight:700;justify-self:end;min-height:38px;padding:6px 8px}.calendar-group-filter{display:grid;font-size:.78rem;font-weight:700;gap:3px;grid-area:filter;min-width:0;width:100%}.calendar-group-filter .form-control{min-height:40px}.calendar-nav-action{align-items:center;background:#f7f9fc;border:1px solid #cfd9e7;border-radius:8px;color:#205493;display:inline-flex;font-size:1.1rem;justify-content:center;min-width:42px;min-height:42px}.calendar-today-action{align-self:center;background:transparent;border:0;color:#205493;font-size:.9rem;font-weight:700;grid-area:today;justify-self:end;min-height:42px;padding:8px 4px}.calendar-today-action:focus-visible{border-radius:6px;outline:2px solid #4f91d8;outline-offset:2px}.month-calendar{min-width:0}.month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays span{color:#66758a;font-size:.75rem;font-weight:800;padding:4px 0;text-align:center}.month-weekdays span:nth-child(6),.month-weekdays span:nth-child(7){color:#8a5a48}.month-grid{border-left:1px solid #dce3ee;border-top:1px solid #dce3ee;display:block}.month-week-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:24px 24px;position:relative}.month-week-row.period-lanes-1{grid-template-rows:24px 14px 24px}.month-week-row.period-lanes-2{grid-template-rows:24px 14px 14px 24px}.month-day{align-content:start;background:#fff;border:0;border-bottom:1px solid #dce3ee;border-right:1px solid #dce3ee;color:#1d2433;display:grid;grid-template-rows:24px 0 24px;justify-items:stretch;min-height:0;min-width:0;overflow:hidden;padding:0;position:relative}.month-day.period-depth-1{grid-template-rows:24px 14px 24px}.month-day.period-depth-2{grid-template-rows:24px 28px 24px}.month-day.adjacent{background:#f7f9fc;color:#8793a5}.month-day.today .month-day-number{border:1px solid #205493;border-radius:999px}.month-day.selected{background:#eaf3ff;color:#174a80}.month-day.selected:after{border:2px solid #4f91d8;box-sizing:border-box;content:"";inset:0;pointer-events:none;position:absolute;z-index:4}.month-day-header{align-items:flex-start;display:flex;grid-row:1;justify-content:flex-end;padding:1px 2px 0}.month-day-number{align-items:center;display:inline-flex;font-size:.8rem;font-weight:800;height:22px;justify-content:center;width:22px}.month-day-mobile-activity{align-items:center;align-self:stretch;display:flex;flex-direction:column;grid-row:3;justify-content:center;min-height:0;padding:1px}.month-day-mobile-count{align-items:center;background:#205493;border-radius:999px;color:#fff;display:inline-flex;font-size:.65rem;font-weight:800;height:14px;justify-content:center;min-width:14px;padding:0 3px}.month-day-mobile-count:empty{background:transparent;display:none}.month-day-desktop-activity{display:none}.month-day-rest-mobile{color:#52657a;font-size:.63rem;font-weight:800;line-height:1}.month-day-rest-desktop{display:none}.month-day-period-space{grid-row:2;min-height:0}.month-period-segment,.month-period-overflow{align-self:start;background:#eceaf1;border:1px solid #918aa1;border-radius:4px;color:#474052;font-size:.58rem;font-weight:800;height:15px;line-height:13px;margin-left:1px;margin-right:1px;min-width:0;overflow:hidden;padding:0 3px;pointer-events:none;position:relative;text-align:left;text-overflow:ellipsis;white-space:nowrap;z-index:2}.month-period-overflow{justify-self:end;width:max-content}.monthly-activity-summary{align-items:start;color:#66758a;display:grid;font-size:.86rem;gap:2px;grid-area:summary;justify-items:start;line-height:1.4;min-width:0;overflow-wrap:anywhere;padding:2px 0 4px;text-align:left}.monthly-activity-statuses{color:#7c899a;font-size:.82rem}.monthly-summary-details{align-items:baseline;display:flex;flex-wrap:wrap;gap:2px 10px}.monthly-attention-count{color:#8a4b08;font-size:.82rem;font-weight:600}.selected-day-agenda{border-top:1px solid #dce3ee;display:grid;gap:10px;padding-top:12px}.daily-schedule-action{display:flex;justify-content:flex-start;min-width:0}.daily-schedule-create-actions{display:flex;flex-wrap:wrap;gap:8px;width:min(100%,560px)}.daily-schedule-create-actions .header-action{flex:1 1 100%;justify-content:center;width:auto}.daily-schedule-create-actions .secondary-action{flex:1 1 calc(50% - 4px);justify-content:center;width:auto}.daily-schedule-create-action{min-height:38px;padding:7px 12px}.daily-schedule-action .header-action,.daily-schedule-action .header-action span{color:#fff;width:auto}.date-marker-section{display:grid;gap:8px;min-width:0}.date-marker-section>span{color:#405064;font-size:.9rem;font-weight:800;overflow-wrap:anywhere}.date-marker-strip{display:flex;gap:8px;max-width:100%;min-width:0;overflow-x:auto;padding-bottom:2px}.date-marker{align-items:center;background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;color:#405064;display:grid;flex:0 0 auto;font-size:.86rem;font-weight:800;gap:5px;justify-items:center;line-height:1.15;min-height:52px;min-width:72px;padding:7px 9px}.date-marker.selected{background:#eaf3ff;border-color:#83b7f1;color:#205493}.date-marker-dot{background:transparent;border-radius:999px;display:block;height:6px;width:6px}.date-marker-dot.active{background:#205493}.daily-session-list{display:grid;gap:8px;min-width:0}.daily-session-row{border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:8px;max-width:100%;min-width:0;padding:10px}.daily-session-main{display:grid;gap:4px;max-width:100%;min-width:0}.selected-day-rest-list,.selected-day-period-list{display:grid;gap:8px;min-width:0}.selected-day-period-card{border:1px dashed #9aa8ba;border-radius:8px;display:grid;gap:10px;min-width:0;padding:10px}.selected-day-period-card>div{display:grid;gap:4px;min-width:0}.selected-day-period-card h3,.selected-day-period-card p{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.selected-day-period-card span,.selected-day-period-card p{color:#52657a;font-size:.9rem}.selected-day-rest-card{border:1px solid #cfd9e7;border-radius:8px;display:grid;gap:10px;min-width:0;padding:10px}.selected-day-rest-card h3,.selected-day-rest-card p{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.selected-day-rest-card p{color:#52657a;font-size:.9rem;margin-top:5px}.rest-marker-form-panel,.rest-marker-form,.training-period-form-panel,.training-period-form{display:grid;gap:12px;min-width:0}.rest-marker-form-panel h2,.training-period-form-panel h2{margin:0}.training-period-form .form-actions{flex-direction:column}.period-date-fields{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}.rest-scope-fieldset{border:1px solid #dce3ee;border-radius:8px;display:grid;gap:8px;margin:0;min-width:0;padding:10px}.rest-scope-fieldset legend{color:#405064;font-weight:700;padding:0 4px}.rest-scope-fieldset label{align-items:center;display:flex;gap:6px}.rest-marker-delete-section{border-top:1px solid #dce3ee;padding-top:12px}.daily-session-main h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.daily-session-time-status{align-items:center;color:#405064;display:flex;flex-wrap:wrap;font-size:.9rem;gap:6px;min-width:0;overflow-wrap:anywhere}.daily-session-meta{color:#66758a;display:grid;font-size:.9rem;gap:4px;min-width:0;overflow-wrap:anywhere}.session-status{border-radius:999px;font-size:.82rem;font-weight:800;max-width:100%;overflow-wrap:anywhere;padding:4px 8px;white-space:normal}.session-status-planned{background:#eaf3ff;color:#205493}.session-status-completed{background:#ecf8ef;color:#1d6b32}.session-status-canceled{background:#fff1f0;color:#9f1d16}.session-status-overdue{background:#fff4dc;color:#8a4b08}.panel-heading .session-status-overdue{color:#8a4b08;margin-top:4px;width:fit-content}.daily-session-open-action{justify-self:stretch;min-height:38px;padding:7px 12px;width:100%}.daily-session-actions{display:grid;gap:8px;max-width:100%;min-width:0}.training-session-focus-panel{max-width:100%;min-width:0}.create-plan-from-session-action{align-self:flex-start;margin-top:6px}.session-plan-field{align-content:start}.daily-session-group-context{color:#66758a;font-size:.85rem}.session-structural-edit{border:1px solid #cfd9e7;border-radius:8px;display:grid;gap:10px;padding:12px}.session-structural-edit h3,.session-structural-edit p{margin:0}.form-hint{color:#66758a;font-size:.9rem}.focused-form-panel{max-width:820px}.focused-screen-toolbar{display:flex;justify-content:flex-start}.compact-action{min-height:38px;padding:7px 12px}.groups-navigation-panel{grid-column:1 / -1}.session-series-label{display:block;width:fit-content;margin-top:.4rem;color:#45645c;font-size:.78rem;font-weight:700}.training-plan-form-panel{grid-column:1 / -1}.training-session-form-panel{border-top:1px solid #dce3ee;display:grid;max-width:100%;min-width:0;padding-top:12px}.repeat-session-section{border-top:1px solid #e1e7f0;display:grid;gap:10px;min-width:0;padding-top:10px}.repeat-toggle{align-items:center;color:#405064;display:flex;font-size:.9rem;font-weight:800;gap:8px;min-width:0}.repeat-toggle input,.weekday-option input{flex:0 0 auto}.repeat-toggle span{overflow-wrap:anywhere}.repeat-session-controls{display:grid;gap:10px;min-width:0}.weekday-fieldset{border:0;display:grid;gap:8px;margin:0;min-width:0;padding:0}.weekday-fieldset legend{color:#405064;font-size:.9rem;font-weight:700;margin-bottom:6px;padding:0}.weekday-options{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.weekday-option{align-items:center;background:#f7f9fc;border:1px solid #dce3ee;border-radius:8px;color:#405064;display:flex;font-size:.9rem;font-weight:800;gap:6px;min-height:40px;padding:7px 9px}.session-panel{grid-column:1 / -1;min-height:0}.panel{background:#fff;border:1px solid #dce3ee;border-radius:8px;display:grid;gap:12px;max-width:100%;min-width:0;padding:14px;width:100%}.panel h2{font-size:1.08rem;line-height:1.2;overflow-wrap:anywhere}.panel-heading{align-items:stretch;display:flex;flex-direction:column;gap:8px;justify-content:space-between;max-width:100%;min-width:0}.panel-heading>div{max-width:100%;min-width:0}.panel-heading-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:0;width:100%}.header-action{font-size:.9rem;min-height:40px;width:100%}.details-grid{display:grid;gap:8px;margin:0;min-width:0}.details-grid dt{line-height:1.2}.details-grid dd{margin:2px 0 0;overflow-wrap:anywhere}.group-details-panel h2{color:#1d2433;font-size:1.28rem}.group-details-heading{align-items:stretch;display:grid;gap:8px}.athlete-list{display:grid;gap:8px;min-width:0}.athlete-row,.training-plan-row{align-items:center;border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr);max-width:100%;min-width:0;padding:10px}.athlete-row>div,.training-plan-row>div{min-width:0}.athlete-row h3,.training-plan-row h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.athlete-row p,.training-plan-row p{margin:2px 0 0;overflow-wrap:anywhere}.athlete-facts{color:#405064;display:grid;font-size:.9rem;gap:4px;justify-items:start;min-width:0;overflow-wrap:anywhere}.empty-state,.placeholder-box{background:#f7f9fc;border:1px dashed #c7d2e2;border-radius:8px;color:#66758a;max-width:100%;min-width:0;overflow-wrap:anywhere;padding:14px}.empty-state.compact{padding:10px}.placeholder-box p{margin:0}.training-plan-list,.snippet-form,.snippet-list,.snippet-row-content{display:grid;gap:8px;min-width:0}.training-plan-autocomplete-field{display:grid;gap:5px;min-width:0;position:relative}.snippet-autocomplete-dropdown{background:#fff;border:1px solid #dce3ee;border-radius:8px;box-shadow:0 10px 24px #1d304929;left:0;margin-top:3px;max-height:240px;overflow-y:auto;padding:6px;position:absolute;right:0;top:100%;z-index:30}.snippet-parameter-panel{background:#fff;border:1px solid #dce3ee;border-radius:8px;box-shadow:0 10px 24px #1d304929;display:grid;gap:10px;left:0;margin-top:3px;max-height:min(420px,60vh);overflow-y:auto;padding:10px;position:absolute;right:0;top:100%;z-index:30}.snippet-parameter-context,.snippet-parameter-fields{display:grid;gap:6px;min-width:0}.snippet-parameter-context strong{font-size:.9rem}.snippet-parameter-context span{color:#64748b;font-size:.8rem;line-height:1.35;overflow-wrap:anywhere;white-space:pre-wrap}.snippet-parameter-field-error{font-size:.78rem}.snippet-parameter-actions{margin-top:0}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.snippet-autocomplete-dropdown p{margin:0;padding:6px 8px}.snippet-autocomplete-options{display:grid;min-width:0}.snippet-autocomplete-option{background:transparent!important;border:0!important;border-bottom:1px solid #edf1f6!important;border-radius:5px!important;color:#26384d!important;display:grid!important;gap:2px;min-height:44px;padding:7px 9px!important;text-align:left;touch-action:manipulation;width:100%}.snippet-autocomplete-option:last-child{border-bottom:0!important}.snippet-autocomplete-option:hover,.snippet-autocomplete-option:focus-visible,.snippet-autocomplete-option.active{background:#edf5ff!important;outline:2px solid transparent}.snippet-autocomplete-option strong{font-size:.88rem;font-weight:600;overflow-wrap:anywhere}.snippet-autocomplete-option span,.snippet-content-preview{color:#64748b;display:-webkit-box;font-size:.78rem;line-height:1.3;overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.snippet-section-fieldset{border:0;display:grid;gap:8px;margin:0;min-width:0;padding:0}.snippet-section-fieldset legend{color:#405064;font-size:.9rem;font-weight:700;margin-bottom:6px}.snippet-mode-option,.snippet-section-option{align-items:center;display:flex;gap:8px;min-height:36px}.snippet-section-options{display:grid;gap:4px;grid-template-columns:minmax(0,1fr)}.snippet-row{border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:10px;min-width:0;padding:10px}.snippet-row h3,.snippet-row p{margin:0}.snippet-row-content>span{color:#64748b;font-size:.86rem}.snippet-row-actions,.snippet-load-error,.snippet-autocomplete-message{display:flex;flex-wrap:wrap;gap:8px}.snippet-load-error,.snippet-autocomplete-message{align-items:start}.snippet-load-error .form-error,.snippet-autocomplete-message .form-error{flex:1 1 220px}.training-plan-session-action{justify-self:start;min-height:38px;padding:7px 12px;width:100%}.mobile-action-label{display:inline}.desktop-action-label{display:none}.secondary-text{color:#66758a;font-size:.86rem}.training-plan-actions{display:grid;gap:8px;min-width:0}.session-back-action{justify-self:stretch;width:100%}.session-summary{align-items:start;background:#f7f9fc;border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:8px;min-width:0;padding:10px}.session-summary h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.session-summary p{color:#405064;margin:2px 0 0;overflow-wrap:anywhere}.session-details{display:grid;gap:8px;margin:0;min-width:0}.session-details div{border:1px solid #e1e7f0;border-radius:8px;min-width:0;padding:9px 10px}.session-details dt,.session-attendance span{color:#66758a;font-size:.86rem}.session-details dd{margin:2px 0 0;overflow-wrap:anywhere}.linked-plan-section,.repeat-details-section,.session-actions-section,.session-delete-section,.session-status-section{border-top:1px solid #dce3ee;display:grid;gap:10px;min-width:0;padding-top:12px}.session-status-section h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.session-status-control{display:grid;gap:8px;min-width:0}.session-status-save-action{justify-self:stretch}.linked-plan-section h3,.repeat-details-section h3,.session-actions-section h3,.session-delete-section h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.session-actions-section p{margin:0}.session-neutral-actions{display:grid;gap:8px;min-width:0}.session-neutral-actions .secondary-action{min-height:40px;width:100%}.daily-session-attendance-summary{color:#405064;font-weight:700;max-width:100%;overflow-wrap:anywhere}.session-delete-section p{color:#66758a;font-size:.86rem;margin:0;overflow-wrap:anywhere}.session-delete-actions{display:grid;gap:8px;min-width:0}.linked-plan-details{display:grid;gap:8px;margin:0;min-width:0}.repeat-summary{background:#f7f9fc;border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:4px;min-width:0;padding:10px}.repeat-summary strong{font-size:1rem;line-height:1.25;overflow-wrap:anywhere}.repeat-summary span{color:#405064;font-size:.92rem;overflow-wrap:anywhere}.linked-plan-details div{border:1px solid #e1e7f0;border-radius:8px;min-width:0;padding:9px 10px}.linked-plan-details dt{color:#66758a;font-size:.86rem}.linked-plan-details dd{margin:2px 0 0;overflow-wrap:anywhere}.program-prescription-source{color:#52657a;font-size:.86rem;margin:0;overflow-wrap:anywhere}.program-prescription-comparison{border-top:1px solid #dce3ee;padding-top:9px}.program-prescription-comparison>summary{color:#205493;cursor:pointer;font-weight:700;margin-bottom:9px}.program-prescription-actions{display:flex;flex-wrap:wrap;gap:8px}.program-prescription-actions button{overflow-wrap:normal;white-space:nowrap;word-break:normal}.program-session-source-badge{color:#205493;font-weight:700}.program-local-change-badge{align-self:start;background:#fff0c2;border:1px solid #ddb75c;border-radius:999px;color:#72500d;display:inline-flex;font-size:.76rem;font-weight:800;padding:2px 7px;width:fit-content}.schedule-target-highlight{border-color:#cb8c18!important;box-shadow:0 0 0 3px #cb8c1838}.session-attendance{border-top:1px solid #dce3ee;display:grid;gap:10px;min-width:0;padding-top:12px}.session-attendance h3{font-size:1rem;margin:0}.attendance-heading{display:grid;gap:8px;min-width:0}.attendance-bulk-action{justify-self:stretch}.attendance-secondary-action{font-size:.88rem;padding:7px 11px}.attendance-secondary-action:disabled{background:#f7f9fc;border-color:#e1e7f0;color:#9aa8ba}.attendance-summary{color:#1d2433;display:block;font-size:.94rem;line-height:1.3;margin-top:4px;overflow-wrap:anywhere}.attendance-source-hint{display:block;margin-top:3px;overflow-wrap:anywhere}.attendance-toggle-action{justify-self:stretch}.attendance-save-action{min-height:40px}.attendance-list{display:grid;gap:6px;min-width:0}.attendance-row{border:1px solid #e1e7f0;border-radius:8px;display:grid;gap:6px;min-width:0;padding:8px}.attendance-athlete h3{font-size:.95rem;margin:0;overflow-wrap:anywhere}.attendance-status-control{display:grid;gap:4px;min-width:0}.attendance-status-control span{color:#66758a;font-size:.82rem;font-weight:700}.attendance-status-select{min-height:38px;padding-block:6px}.attendance-actions{align-items:stretch;display:grid;gap:8px}.attendance-actions span{color:#66758a;font-size:.9rem}.attendance-success{color:#1d6b32;font-size:.86rem;font-weight:700;overflow-wrap:anywhere}@media(max-width:699px){.month-week-row.period-lanes-1{grid-template-rows:24px 18px 28px}.month-week-row.period-lanes-2{grid-template-rows:24px 18px 18px 28px}.month-day.period-depth-1{grid-template-rows:24px 18px 28px}.month-day.period-depth-2{grid-template-rows:24px 36px 28px}.month-day.period-depth-1 .month-day-mobile-activity,.month-day.period-depth-2 .month-day-mobile-activity{gap:2px}.month-day-mobile-activity{padding:0}}@media(min-width:700px){.program-library-filters{width:auto}.program-library-filters .secondary-action{flex:0 0 auto}.training-program-row{align-items:center}.training-program-row>.secondary-action{justify-self:end;width:auto}.program-metadata-edit-row,.program-lifecycle-section,.program-draft-discard-section,.training-program-details>.session-delete-section{align-items:center;grid-template-columns:minmax(0,1fr) auto}.program-metadata-edit-row .program-metadata-actions{margin:0}.program-lifecycle-section h3,.program-lifecycle-section p,.program-lifecycle-section small,.training-program-details>.session-delete-section h3,.training-program-details>.session-delete-section p{grid-column:1}.program-lifecycle-section button,.training-program-details>.session-delete-section button{align-self:center;grid-column:2;grid-row:1 / span 2;justify-self:end;width:auto}.program-editor-dialog{border-radius:10px;box-shadow:0 20px 50px #1d243347;max-height:calc(100dvh - 48px);width:min(760px,calc(100vw - 48px))}.program-editor-dialog.program-preview-dialog{width:min(1040px,calc(100vw - 48px))}.program-editor-dialog.program-application-lifecycle-dialog{width:min(720px,calc(100vw - 48px))}.program-application-history-summary,.program-application-modal-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.program-preview-inputs{grid-template-columns:repeat(2,minmax(0,260px))}.program-preview-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.program-preview-days{grid-template-columns:repeat(2,minmax(0,1fr))}.program-editor-dialog-surface{border-radius:10px;padding:18px}.program-content-heading,.program-snapshot-heading,.program-slot-form-heading{align-items:start;flex-direction:row}.program-authoring-toolbar,.program-copy-toolbar{align-items:end;grid-template-columns:minmax(160px,220px) minmax(0,1fr)}.program-copy-toolbar{align-items:center}.program-toolbar-actions,.program-day-actions,.program-entry-actions{display:flex;flex-wrap:wrap}.program-copy-fields,.program-slot-time-fields{grid-template-columns:repeat(2,minmax(0,220px))}.program-snapshot-fields,.program-week-days{grid-template-columns:repeat(2,minmax(0,1fr))}.program-snapshot-fields label:nth-child(1),.program-snapshot-fields label:nth-child(2),.program-snapshot-fields label:nth-child(6){grid-column:1 / -1}.program-session-entry,.program-rest-entry{align-items:start;grid-template-columns:minmax(0,1fr) auto}.program-entry-actions{justify-content:flex-end}.program-draft-save-bar{align-items:center;flex-direction:row;justify-content:space-between}.program-draft-save-actions{display:flex;flex-wrap:wrap;width:auto}.program-draft-save-actions button{width:auto}.period-date-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:12px}.form-actions{flex-direction:row;justify-content:flex-end}.form-actions button{width:auto}.training-period-form .form-actions{flex-direction:row}.daily-schedule-create-actions .header-action,.daily-schedule-create-actions .secondary-action{flex:1 1 0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-heading{align-items:baseline;flex-direction:row}.panel-heading-actions{flex:0 0 auto;width:auto}.header-action{width:auto}.mobile-action-label{display:none}.desktop-action-label{display:inline}.secondary-action,.danger-action{width:auto}.group-details-heading{align-items:start;grid-template-columns:minmax(0,1fr) auto}.group-row{align-items:center;grid-template-columns:minmax(0,1fr) auto}.group-open-action{justify-self:end}.daily-session-actions{display:flex;flex-wrap:wrap}.calendar-header{gap:12px;grid-template-areas:"summary navigation today" "filter filter filter";grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.calendar-month-navigation{grid-area:navigation}.calendar-month-control{min-width:220px}.calendar-group-filter{justify-self:start;max-width:280px}.calendar-today-action{grid-area:today;justify-self:end}.month-weekdays span{font-size:.85rem;padding:7px 4px}.month-week-row,.month-week-row.period-lanes-0{grid-template-rows:minmax(104px,auto)}.month-week-row.period-lanes-1{grid-template-rows:38px 18px minmax(48px,auto)}.month-week-row.period-lanes-2{grid-template-rows:38px 18px 18px minmax(30px,auto)}.month-day{grid-template-rows:24px 4px minmax(0,1fr);min-height:104px;padding:7px}.month-day.period-depth-1{grid-template-rows:24px 27px minmax(0,1fr)}.month-day.period-depth-2{grid-template-rows:24px 45px minmax(0,1fr)}.month-day-header{padding:0}.month-day-number{height:24px;width:24px}.month-day-mobile-activity{display:none}.month-day-desktop-activity{align-content:start;align-self:stretch;display:grid;gap:4px;grid-row:3;min-height:0;min-width:0}.month-day-session-lines{display:grid;gap:3px;min-width:0;text-align:left}.month-day-session-lines span,.month-day-session-lines strong{background:#edf4fc;border-radius:4px;color:#29445f;font-size:.72rem;line-height:1.25;overflow:hidden;padding:3px 4px;text-overflow:ellipsis;white-space:nowrap}.month-day-rest-desktop{color:#52657a;display:grid;font-size:.7rem;gap:2px;min-width:0;text-align:left}.month-period-segment,.month-period-overflow{font-size:.68rem;height:17px;line-height:15px;padding:0 5px}.month-day-rest-desktop strong,.month-day-rest-desktop span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-day-rest-card,.selected-day-period-card,.daily-session-row{align-items:start;grid-template-columns:minmax(0,1fr) auto}.daily-session-main,.daily-session-meta{grid-column:1}.daily-session-actions{grid-column:2;grid-row:1 / span 2;justify-self:end}.daily-session-open-action{justify-self:start;width:auto}.session-details{grid-template-columns:repeat(2,minmax(0,1fr))}.session-summary{align-items:center;grid-template-columns:minmax(0,1fr) auto}.linked-plan-details{grid-template-columns:repeat(2,minmax(0,1fr))}.session-status-control{align-items:end;grid-template-columns:minmax(180px,260px) auto}.session-status-save-action{justify-self:start}.session-delete-actions{display:flex;flex-wrap:wrap}.session-neutral-actions{grid-template-columns:repeat(2,minmax(180px,240px))}.attendance-row{align-items:center;grid-template-columns:minmax(0,.9fr) minmax(340px,1.4fr)}.attendance-row.compact{grid-template-columns:minmax(0,1fr) minmax(180px,240px)}.attendance-heading{align-items:start;grid-template-columns:minmax(0,1fr) auto}.attendance-bulk-action{justify-self:end}.attendance-toggle-action{justify-self:start}.attendance-actions{align-items:center;grid-template-columns:minmax(0,1fr) auto auto}.attendance-actions .header-action,.attendance-actions .secondary-action{justify-self:end}.training-plan-session-action,.session-back-action{justify-self:start;width:auto}}@media(min-width:900px){.app-shell{align-items:start;grid-template-columns:320px minmax(0,1fr)}.sidebar{align-self:stretch;border-bottom:0;border-right:1px solid #dce3ee;gap:24px;min-height:100vh;padding:24px}.mobile-header{display:none}.desktop-brand{display:grid}.workspace-nav{background:transparent;bottom:auto;display:flex;flex:1;left:auto;overflow:visible;padding:0;position:static;top:auto;width:auto;z-index:auto}.workspace-nav-action{font-size:1rem;padding:9px 8px;text-align:left}.mobile-drawer-title,.mobile-drawer-account-label,.mobile-drawer-backdrop{display:none}.brand{gap:2px}.brand strong{font-size:1.35rem}.group-list{max-height:none}.group-row{gap:2px;min-height:52px;padding:12px}.workspace{gap:16px;justify-self:start;max-width:1120px;padding:24px}.workspace-header{align-items:end;flex-direction:row}.summary-strip{justify-content:flex-end}.content-grid{max-width:900px}.session-workspace,.group-workspace,.focused-form-screen,.focused-form-panel,.training-session-focus-panel{max-width:900px;width:100%}.athlete-row,.training-plan-row,.training-program-row{grid-template-columns:minmax(0,1fr) auto}.athlete-facts{justify-items:end}}
