@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-md);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;line-height:20px}[hidden]{display:none!important}.title{font-size:var(--text-xxl);letter-spacing:-.02em;margin:0 0 var(--space-md);font-weight:800;line-height:32px}.heading{font-size:var(--text-lg);margin:0 0 var(--space-sm);font-weight:700;line-height:24px}.eyebrow{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0 0 var(--space-xs);padding:0;font-weight:600;line-height:16px}.text-secondary{color:var(--color-text-secondary);margin:0 0 var(--space-md)}.centered{place-items:center;height:100%;display:grid}.shell{grid-template-rows:minmax(0,1fr);grid-template-columns:240px 1fr;height:100%;display:grid}.menu-button,.drawer-backdrop{display:none}@media (width<=1199px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:30;visibility:hidden;width:260px;transition:transform .2s,visibility .2s;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-100%)}.sidebar.sidebar-open{visibility:visible;transform:none}.drawer-backdrop{z-index:20;background:color-mix(in srgb, var(--color-background) 70%, transparent);cursor:pointer;border:0;padding:0;display:block;position:fixed;inset:0}.menu-button{top:var(--space-sm);left:var(--space-md);z-index:10;min-height:36px;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;align-items:center;font-weight:600;display:inline-flex;position:fixed}.shell .content{padding-top:calc(var(--space-xl) + 36px)}}@media (width<=1199px) and (prefers-reduced-motion:reduce){.sidebar{transition:none}}.sidebar{gap:var(--space-xs);padding:var(--space-lg) var(--space-md);background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;display:flex}.sidebar-brand{align-items:center;gap:var(--space-sm);margin:0 0 var(--space-lg) var(--space-sm);font-weight:700;display:flex}.brand-mark{border-radius:6px;flex:none}.nav-link{padding:var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text-secondary);text-decoration:none;display:block}.nav-link:hover{background:var(--color-surface-elevated);color:var(--color-text)}.nav-link.active{color:var(--color-text);font-weight:600}.content{padding:var(--space-xl) var(--space-xl) 0;position:relative;overflow:auto}.content:after{content:"";height:var(--space-xl);display:block}.shell-main{flex-direction:column;min-width:0;height:100%;display:flex}.nav-tool{align-items:center;gap:var(--space-sm);width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.nav-tool:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.nav-tool.active:after{content:"";background:var(--color-action);border-radius:50%;width:6px;height:6px}.shell-body{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.shell-body.with-assistant{grid-template-columns:minmax(0,1fr) 380px}.shell-body>.content{min-height:0}.service{min-height:100%;padding:var(--space-lg);place-items:center;display:grid}.service-card{gap:var(--space-sm);width:min(440px,100%);padding:var(--space-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;display:flex}.service-card-wide{width:min(620px,100%)}.service-card .title,.service-card p{margin:0}.service-brand{align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:700;display:flex}.service-foot{justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--color-divider);display:flex}.service-foot .button-secondary{flex:none}@media (width<=480px){.service{padding:var(--space-md)}.service-card{padding:var(--space-lg)}}.field{gap:var(--space-xs);flex-direction:column;display:flex}.field-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600}.field input{min-height:44px;padding:0 var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-field-fill);color:var(--color-text);font:inherit}.field input:focus-visible,button:focus-visible,.nav-link:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.form-error{color:var(--color-danger);margin:0}.button-primary,.button-secondary{min-height:44px;padding:0 var(--space-lg);border-radius:var(--radius-md);font:inherit;cursor:pointer;font-weight:600}.button-primary{margin-top:var(--space-sm);background:var(--color-action);color:var(--color-action-text);border:none}.button-primary:hover{background:color-mix(in srgb, var(--color-action) 82%, var(--color-background))}.button-primary:disabled{background:var(--color-disabled-fill);color:var(--color-disabled-text);cursor:default}.button-secondary{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.button-secondary:disabled{border-color:var(--color-divider);color:var(--color-disabled-text);cursor:default}.button-quiet{align-items:center;gap:var(--space-xs);min-height:28px;padding:0 var(--space-sm);border-radius:var(--radius-sm);background:var(--color-field-fill);color:var(--color-text);font:inherit;font-size:var(--text-sm);white-space:nowrap;cursor:pointer;border:none;line-height:18px;display:inline-flex}.button-quiet:hover{background:var(--color-border)}.button-quiet:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.button-quiet:disabled{background:var(--color-disabled-fill);color:var(--color-disabled-text);cursor:default}.settings-group{margin:0 0 var(--space-xl);border:none;padding:0}.settings-page{max-width:720px}.settings-page .settings-group{column-gap:var(--space-xl);row-gap:var(--space-xs);padding:var(--space-md) 0;border-bottom:1px solid var(--color-divider);grid-template-columns:200px minmax(0,1fr);align-items:center;margin:0;display:grid}.settings-page .settings-group>legend{float:left;grid-area:1/1;margin:0;padding:0}.settings-page .settings-group>:not(legend){grid-column:2;justify-self:start;margin:0}.coach-code{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.12em;-webkit-user-select:all;user-select:all;font-weight:600;display:inline-block}.coach-code-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.coach-code-confirm{align-items:flex-start;gap:var(--space-sm);flex-direction:column;max-width:36rem;display:flex}.coach-code-confirm p{margin:0}.coach-code-confirm-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.settings-field select{align-self:flex-start;width:auto;min-width:8rem}.toggle-row input[role=switch]{appearance:none;background:var(--color-border);cursor:pointer;border-radius:999px;flex:none;width:40px;height:24px;margin:0;transition:background-color .15s;position:relative}.toggle-row input[role=switch]:before{content:"";background:var(--color-text);border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle-row input[role=switch]:checked{background:var(--color-primary)}.toggle-row input[role=switch]:checked:before{transform:translate(16px)}.toggle-row input[role=switch]:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.toggle-row input[role=switch]:disabled{opacity:.5;cursor:default}.segmented{gap:var(--space-xs);padding:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-md);display:inline-flex}.segment{min-height:36px;padding:0 var(--space-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:none}.segment[aria-checked=true],.day-select[aria-pressed=true]{color:var(--color-text);box-shadow:inset 0 0 0 1px var(--color-action);font-weight:600}.segment:disabled,.segment[aria-disabled=true]{color:var(--color-disabled-text);cursor:default}.field>.segmented{align-self:flex-start}.empty-state{max-width:560px;padding:var(--space-xl);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.narrow{max-width:480px}.small{font-size:var(--text-sm);line-height:18px}.section-gap{margin-top:var(--space-xl)}.as-link{align-items:center;text-decoration:none;display:inline-flex}.not-found{align-items:flex-start;gap:var(--space-sm);max-width:36rem;padding-top:var(--space-xl);flex-direction:column;display:flex}.not-found .title,.not-found p{margin:0}.secret{padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-sm);word-break:break-all;display:block}.field-row{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.mfa-steps{gap:var(--space-lg);margin-top:var(--space-sm);grid-template-columns:200px minmax(0,1fr);align-items:start;display:grid}.mfa-step-list{gap:var(--space-lg);padding-left:var(--space-lg);flex-direction:column;margin:0;display:flex}.mfa-step-list>li{gap:var(--space-xs);flex-direction:column;display:flex}.mfa-step-list>li::marker{color:var(--color-text-secondary);font-weight:700}.mfa-step-title{font-weight:600}.mfa-step-list .field-row{margin-top:0}.secret-grouped span+span{margin-left:.6ch}.mfa-qr-image,.invite-row svg{background:var(--color-qr-background);border-radius:var(--radius-sm)}.invite-card{margin-top:var(--space-lg);padding:var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.invite-row{gap:var(--space-lg);flex-wrap:wrap;align-items:flex-start;display:flex}.invite-link{gap:var(--space-sm);flex-direction:column;flex:260px;display:flex}.invite-link-row,.invite-form-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.invite-link-row .secret,.invite-form-row .field{flex:260px}.invite-link-row .button-secondary,.invite-form-row .button-primary{flex:none}.invite-form-row{align-items:flex-end}.invite-form{gap:var(--space-sm);flex-direction:column;max-width:560px;display:flex}.invite-form>p{margin:0}.invite-email{color:var(--color-text);overflow-wrap:anywhere;font-weight:600}.invite-state-blocked{color:var(--color-text);font-weight:600}.plain-list{margin:0;padding:0;list-style:none}.list-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);display:flex}.roster{border-collapse:collapse;width:100%}.roster th{text-align:left;font-size:var(--text-sm);color:var(--color-text-secondary);padding:var(--space-sm);border-bottom:1px solid var(--color-border);font-weight:600}.roster td{padding:var(--space-sm);border-bottom:1px solid var(--color-divider)}.row-link{color:var(--color-text);white-space:nowrap;font-weight:600;text-decoration:none}.row-link:hover{text-decoration:underline}.page-header-row{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.page-header-row .title{margin:0}.columns-menu{position:relative}.columns-menu>summary{cursor:pointer;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;list-style:none}.columns-menu>summary::-webkit-details-marker{display:none}.columns-menu-list{z-index:10;margin:var(--space-xs) 0 0;padding:var(--space-sm);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:200px;list-style:none;position:absolute;right:0;box-shadow:0 4px 12px #00000026}.columns-menu-list li{padding:var(--space-xs) 0}.columns-menu-list label{align-items:center;gap:var(--space-xs);font-size:var(--text-md);cursor:pointer;display:flex}.column-sort-button{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.column-sort-button:hover,.column-sort-button:focus-visible{text-decoration:underline}th[aria-sort=ascending] .column-sort-button:after{content:" ▲"}th[aria-sort=descending] .column-sort-button:after{content:" ▼"}.cell-muted{color:var(--color-text-muted);font-style:italic}.cell-secondary{color:var(--color-text-secondary);font-size:var(--text-sm);white-space:nowrap}.cell-stale{color:var(--color-warning)}.cell-stale-sep,.cell-stale-flag{font-size:var(--text-sm);font-weight:600}.cell-stale-flag{white-space:nowrap}.cell-sources{font-size:var(--text-sm);gap:2px;display:grid}.cell-source{font-weight:600}.table-scroll{overflow-x:auto}.adherence-dots{gap:3px;display:inline-flex}.adherence-dot{width:16px;height:16px;font-size:var(--text-xs);border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.adherence-dot-green{background:var(--color-compliance-green);color:var(--color-text-on-primary)}.adherence-dot-yellow{background:var(--color-compliance-yellow);color:var(--color-background)}.adherence-dot-orange{background:var(--color-compliance-orange);color:var(--color-background)}.adherence-dot-red{background:var(--color-compliance-red);color:var(--color-text-on-primary)}.adherence-dot-none{border-color:var(--color-border);color:var(--color-text-muted);background:0 0}.alert-queue{gap:var(--space-lg);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.alert-queue-empty{margin:0 0 var(--space-xl);padding:var(--space-md) var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-secondary)}.alert-lane{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-md) var(--space-lg);border-left-width:4px}.alert-lane-urgent{border-left-color:var(--color-danger)}.alert-lane-to_decide{border-left-color:var(--color-info)}.alert-lane-title{font-size:var(--text-md);margin:0 0 var(--space-sm);align-items:center;gap:var(--space-xs);font-weight:700;line-height:22px;display:flex}.alert-lane-glyph{font-size:var(--text-sm)}.alert-lane-urgent .alert-lane-glyph{color:var(--color-danger)}.alert-lane-to_decide .alert-lane-glyph{color:var(--color-info)}.alert-lane-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.alert-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);display:flex}.alert-row:last-child{border-bottom:none}.alert-row-seen,.alert-row-seen .row-link{color:var(--color-text-muted)}.alert-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.alert-row-reason{color:var(--color-text-secondary);font-size:var(--text-md);margin:0}.alert-row-seen .alert-row-reason{color:var(--color-text-muted)}.alert-row-actions{gap:var(--space-sm);flex-shrink:0;display:flex}.digest-card{margin-bottom:var(--space-xl);padding:var(--space-md) var(--space-lg);border:1px solid var(--color-border);border-left-width:4px;border-left-color:var(--color-action);border-radius:var(--radius-lg);background:var(--color-surface)}.digest-title{font-size:var(--text-md);margin:0 0 var(--space-xs);font-weight:700;line-height:22px}.digest-window,.digest-empty{margin:0 0 var(--space-md);color:var(--color-text-secondary)}.digest-lane{margin-bottom:var(--space-md)}.digest-lane-title{font-size:var(--text-md);margin:0 0 var(--space-xs);align-items:center;gap:var(--space-xs);font-weight:700;line-height:20px;display:flex}.digest-lane-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.digest-alert-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-xs) 0;border-bottom:1px solid var(--color-divider);display:flex}.digest-alert-row:last-child{border-bottom:none}.digest-alert-row-muted,.digest-alert-row-muted .row-link{color:var(--color-text-muted)}.digest-alert-main{flex-direction:column;gap:2px;min-width:0;display:flex}.digest-alert-reason{color:var(--color-text-secondary);font-size:var(--text-md);margin:0}.digest-alert-row-muted .digest-alert-reason{color:var(--color-text-muted)}.digest-alert-state{font-size:var(--text-sm);color:var(--color-text-muted);flex-shrink:0}.error-inline{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;display:flex}.error-inline .form-error{margin:0}.toggle-row{align-items:center;gap:var(--space-sm);min-height:44px;display:flex}.field select{min-height:44px;padding:0 var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-field-fill);color:var(--color-text);font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.back-link{margin-bottom:var(--space-sm);color:var(--color-text-secondary);font-size:var(--text-sm);text-decoration:none;display:inline-block}.back-link:hover{color:var(--color-text)}.header-cards{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.header-card{gap:var(--space-xs);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;min-width:0;display:flex}.header-card p{margin:0}.card-value{font-size:var(--text-xl);font-variant-numeric:tabular-nums;font-weight:700;line-height:28px}.card-line{color:var(--color-text);font-variant-numeric:tabular-nums}.card-note{font-size:var(--text-sm);color:var(--color-text-muted);line-height:18px}.tabs{gap:var(--space-lg);margin-bottom:var(--space-lg);box-shadow:inset 0 -1px 0 var(--color-border);scrollbar-width:thin;display:flex;overflow-x:auto}.tab{white-space:nowrap;padding:var(--space-sm) 0;color:var(--color-text-secondary);border-bottom:2px solid #0000;flex:none;text-decoration:none}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-text);border-bottom-color:var(--color-action);font-weight:600}.tab:focus-visible,.row-link:focus-visible,.back-link:focus-visible{outline:2px solid var(--color-action);outline-offset:2px}.tab:focus-visible{outline-offset:-2px}.panel{padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.panel-head .heading{margin:0}.panel-head .field{align-items:center;gap:var(--space-sm);flex-flow:wrap}.panel-head .field select{max-width:100%}.tab-grid{align-items:start;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(380px,1fr));display:grid}.tab-grid>.panel-wide{grid-column:1/-1}.panel-figures{gap:var(--space-sm) var(--space-xl);margin:0 0 var(--space-sm);flex-wrap:wrap;display:flex}.panel-figure dt{font-size:var(--text-sm);color:var(--color-text-secondary)}.panel-figure dd{font-size:var(--text-xl);margin:0;font-weight:700;line-height:28px}.panel-figure .panel-figure-detail{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:400;line-height:18px}.panel-figures+.panel-figures-small{margin-top:var(--space-md)}.panel-figures-small .panel-figure dd{font-size:var(--text-md);font-weight:600;line-height:20px}.chart-notes{gap:var(--space-xs) var(--space-lg);margin:var(--space-sm) 0 0;font-size:var(--text-sm);color:var(--color-text-secondary);flex-wrap:wrap;line-height:18px;display:flex}.echart{width:100%}.fitness-chart{position:relative}.fitness-lane-title{font-size:var(--text-sm);color:var(--color-text-secondary);pointer-events:none;margin:0;line-height:18px;position:absolute;left:0;right:0}.fitness-lane-title-alone{margin-top:var(--space-sm);position:static}.fitness-lane-name{color:var(--color-text);font-weight:600}.fitness-lane-value{font-family:var(--font-mono);color:var(--color-text)}.fitness-lane-muted{color:var(--color-text-muted)}.fitness-lane-danger{color:var(--color-danger)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.calendar-tools{gap:var(--space-sm);align-items:center;display:flex}.calendar-tools select,.field select,.field textarea{min-height:44px;padding:0 var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-field-fill);color:var(--color-text);font:inherit}.field textarea{padding:var(--space-sm) var(--space-md);resize:vertical}.calendar-status{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.copy-bar,.range-bar{align-items:center;gap:var(--space-xs) var(--space-md);margin:var(--space-sm) 0;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-left:3px solid var(--color-action);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.copy-bar-note,.range-bar-note{color:var(--color-text)}.copy-bar .button-quiet,.range-bar .button-quiet{margin-left:auto}.range-shift{align-items:center;gap:var(--space-xs);display:inline-flex}.range-shift input{width:5em}.range-confirm ul{margin:var(--space-xs) 0;padding-left:var(--space-md)}.day-paste{width:100%;min-height:28px;margin-top:var(--space-xs);border:1px dashed var(--color-action);color:var(--color-action);font-size:var(--text-sm);background:0 0}.day-paste:hover{background:var(--color-field-fill)}.week-head,.week-row{grid-template-columns:72px repeat(7,minmax(120px,1fr)) minmax(180px,1.2fr);display:grid}.week-head{z-index:2;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.week-head-day{padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);color:var(--color-text-secondary);text-transform:capitalize;font-weight:600}.week-row{border-bottom:1px solid var(--color-divider)}.week-current .week-label{box-shadow:inset 3px 0 0 var(--color-action)}.week-label{gap:var(--space-xs);padding:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-secondary);flex-direction:column;display:flex}.week-label[draggable=true]{cursor:grab}.week-now{color:var(--color-text);font-weight:600}.week-drop,.day-drop{outline:2px dashed var(--color-action);outline-offset:-2px}.day-cell{gap:var(--space-xs);min-height:120px;padding:var(--space-xs);border-left:1px solid var(--color-divider);flex-direction:column;min-width:0;display:flex}.day-past{background:var(--color-background)}.day-selected{background:var(--color-field-fill)}.day-head{justify-content:space-between;align-items:center;display:flex}.day-number{font-size:var(--text-sm);color:var(--color-text-secondary);text-transform:capitalize}.day-today .day-number{color:var(--color-text);font-weight:700}.day-select{padding:0 var(--space-xs);border-radius:var(--radius-sm);font-family:inherit;line-height:inherit;cursor:pointer;background:0 0;border:none}.day-select:hover{background:var(--color-field-fill)}.day-select:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.day-add{border-radius:var(--radius-sm);min-width:28px;min-height:28px;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:none}.day-add:hover{background:var(--color-field-fill);color:var(--color-text)}.day-add:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.day-add[aria-expanded=true]{background:var(--color-field-fill);color:var(--color-text)}.week-more-list.day-add-list{min-width:8rem}.day-event{padding:0 0 0 var(--space-xs);border:none;border-left:2px solid var(--color-text);color:var(--color-text);font-size:var(--text-sm);align-self:flex-start;font-weight:600;line-height:18px}.week-row.week-has-bands{grid-template-rows:auto 1fr}.week-has-bands>.week-label{grid-area:1/1/span 2}.week-has-bands>.week-bands{grid-area:1/2/auto/9}.week-has-bands>.day-cell{grid-row:2}.week-has-bands>.week-summary{grid-area:1/9/span 2}.week-bands{grid-template-columns:subgrid;padding:var(--space-xs) 0 0;grid-auto-flow:dense;row-gap:2px;margin:0;list-style:none;display:grid}.stop-band{grid-column:var(--band-from) / var(--band-to);align-items:baseline;gap:var(--space-sm);min-width:0;margin:0 var(--space-xs);padding:2px var(--space-sm);border-left:3px solid var(--color-need);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-need) 14%, transparent);font-size:var(--text-sm);white-space:nowrap;line-height:18px;display:flex;overflow:hidden}.stop-band-before{border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.stop-band-after{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.stop-band-type{color:var(--color-need);font-weight:600}.stop-band-period{text-overflow:ellipsis;min-width:0;color:var(--color-text-secondary);overflow:hidden}.special-band{border-left-color:var(--color-info);background:color-mix(in srgb, var(--color-info) 14%, transparent)}.special-band .stop-band-type{color:var(--color-info)}.day-note{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:18px}.day-note-text{display:none}.day-note-compact{flex-direction:column;gap:2px;display:flex}.day-note-head{align-items:flex-end;gap:var(--space-xs);display:inline-flex}.day-note-words{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);overflow:hidden}.day-note-bars{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.day-note-bar{background:var(--color-text-secondary);border-radius:1px;width:4px}.day-note-bar[data-v="0"]{background:var(--color-divider);height:2px}.day-note-bar[data-v="1"]{background:var(--color-watch);height:3px}.day-note-bar[data-v="2"]{background:var(--color-watch);height:5px}.day-note-bar[data-v="3"]{height:7px}.day-note-bar[data-v="4"]{height:9px}.day-note-bar[data-v="5"]{height:12px}.week-agenda .day-note-compact{display:none}.week-agenda .day-note-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.session-card,.unplanned-card{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);color:var(--color-text);font:inherit;text-align:left;border-left-width:4px;flex-direction:column;gap:2px;display:flex}.session-card{cursor:pointer}.session-card:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.session-card-wrap{position:relative}.session-card-wrap:has(.session-menu) .session-card{padding-right:28px}.session-menu{position:absolute;top:2px;right:2px}.session-menu>summary{list-style:none}.session-menu>summary::-webkit-details-marker{display:none}.session-menu-toggle{min-width:24px;min-height:24px;padding:0 var(--space-xs);opacity:0;line-height:1}.session-card-wrap:hover .session-menu-toggle,.session-menu-toggle:focus-visible,.session-menu[open] .session-menu-toggle{opacity:1}@media (hover:none){.session-menu-toggle{opacity:1}}.session-draft{background:0 0;border-style:dashed}.band-green{--band-color:var(--color-compliance-green);border-left-color:var(--band-color)}.band-yellow{--band-color:var(--color-compliance-yellow);border-left-color:var(--band-color)}.band-orange{--band-color:var(--color-compliance-orange);border-left-color:var(--band-color)}.band-red{--band-color:var(--color-compliance-red);border-left-color:var(--band-color)}.session-card.session-unfeasible{border-left-color:var(--color-danger)}.unplanned-card{color:var(--color-text-secondary);background:0 0;border-style:dotted}.unplanned-link{cursor:pointer;text-decoration:none}.unplanned-link:hover{border-color:var(--color-action);color:var(--color-text)}.unplanned-link:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.session-title{font-size:var(--text-sm);overflow-wrap:anywhere;font-weight:600;line-height:18px}.race-priority{border-radius:var(--radius-sm);min-width:18px;color:var(--color-text);text-align:center;border:1px solid;padding:0 3px;font-weight:700;line-height:16px;display:inline-block}.session-title>.race-priority{margin-right:var(--space-xs)}.race-sheet .segment{min-width:44px}.private-note{gap:var(--space-xs);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-divider);flex-direction:column;display:flex}.private-note .text-secondary{margin:0}.private-note-hint{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:18px}.private-note-state{min-height:18px;font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:18px}.private-note-state[data-esito=failed]{color:var(--color-danger)}.watch-delivery{gap:var(--space-xs);flex-direction:column;display:flex}.watch-delivery-status,.watch-delivery-note{font-size:var(--text-sm);margin:0;line-height:18px}.watch-delivery-status{color:var(--color-text)}.watch-delivery[data-tone=warning] .watch-delivery-status{color:var(--color-warning)}.watch-delivery-note{color:var(--color-text-muted)}.watch-delivery .button-small{align-self:flex-start;margin-top:0}.session-meta,.session-state,.session-flag,.session-compliance{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:18px}.session-state>span{display:inline-block}.session-flag-strong{color:var(--color-warning);font-weight:600}.session-flag-danger{color:var(--color-danger);font-weight:600}.session-compliance{color:var(--color-text);font-weight:600}.band-text-green{--band-color:var(--color-compliance-green)}.band-text-yellow{--band-color:var(--color-compliance-yellow)}.band-text-orange{--band-color:var(--color-compliance-orange)}.band-text-red{--band-color:var(--color-compliance-red)}.session-review{gap:var(--space-md);padding:var(--space-lg);flex-direction:column;display:flex}.session-review-head{gap:var(--space-xs);flex-direction:column;display:flex}.session-review-head>*{margin:0}.session-review-head h2:focus:not(:focus-visible){outline:none}.session-review-head .session-compliance{padding-left:var(--space-sm);border-left:4px solid var(--band-color,var(--color-border));align-self:flex-start}.session-review>a{align-self:flex-start}.week-summary{gap:var(--space-xs);padding:var(--space-sm);border-left:1px solid var(--color-border);background:var(--color-surface);font-size:var(--text-sm);flex-direction:column;line-height:18px;display:flex}.week-summary p{margin:0}.week-actions{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.week-actions:empty{display:none}.week-more{position:relative}.week-more>summary{list-style:none}.week-more>summary::-webkit-details-marker{display:none}.week-more>summary:after{content:"▾";color:var(--color-text-secondary)}.week-more-list,.session-menu-list{z-index:10;min-width:200px;margin-top:var(--space-xs);padding:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);flex-direction:column;display:flex;position:absolute;right:0;box-shadow:0 4px 12px #00000026}.week-more-list .export-buttons,.session-menu-list .export-buttons{display:contents}.week-more-list .export-buttons>:not(button),.session-menu-list .export-buttons>:not(button){padding:var(--space-xs) var(--space-sm);margin:0}.menu-item{width:100%;min-height:32px;padding:0 var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.menu-item:hover{background:var(--color-field-fill)}.menu-item:focus-visible{outline:2px solid var(--color-action);outline-offset:-2px}.menu-item:disabled{color:var(--color-disabled-text);cursor:default;background:0 0}.menu-hint{padding-left:var(--space-md);color:var(--color-text-secondary);font-size:var(--text-xs);white-space:nowrap;margin-left:auto}.menu-separator{width:100%;margin:var(--space-xs) 0;border:none;border-top:1px solid var(--color-divider)}.summary-label{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:16px;display:block}.summary-line{font-variant-numeric:tabular-nums}.summary-values{display:block}.summary-note{font-size:var(--text-sm);color:var(--color-text-muted);line-height:18px}.week-type{padding:0 0 0 var(--space-xs);border:none;border-left:2px solid var(--color-text);color:var(--color-text);font-size:var(--text-sm);align-self:flex-start;font-weight:600}.target-bars{gap:var(--space-xs);flex-direction:column;display:flex}.target-bar{flex-direction:column;gap:2px;display:flex}.target-track{background:var(--color-divider);border-radius:3px;height:6px;overflow:hidden}.target-fill{background:var(--color-action);height:100%;display:block}.link-button{color:var(--color-text);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:none}.link-button:hover{text-decoration:underline}.link-button:disabled{color:var(--color-disabled-text);cursor:default;text-decoration:none}.publish-button{margin-top:var(--space-xs);min-height:36px;padding:0 var(--space-sm)}.target-form{gap:var(--space-xs);flex-direction:column;display:flex}.week-target{position:relative}.week-target-pop{z-index:10;width:264px;margin-top:var(--space-xs);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);position:absolute;right:0;box-shadow:0 4px 12px #00000026}.week-agenda .week-target-pop{left:0;right:auto}.target-form-row{gap:var(--space-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.target-form-row .field{min-width:0}.target-form-row input{width:100%;min-width:0}.form-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.form-actions .button-primary{margin-top:0}.button-danger{min-height:44px;padding:0 var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--color-danger);color:var(--color-danger);font:inherit;cursor:pointer;background:0 0;font-weight:600}.sheet{z-index:10;gap:var(--space-md);width:min(440px,100%);padding:var(--space-lg);background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-8px 0 24px var(--color-scrim);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:auto}.sheet-head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.sheet-head .heading{margin:0}.sheet-form,.sheet-copy{gap:var(--space-sm);flex-direction:column;display:flex}.sheet-copy{padding-top:var(--space-md);border-top:1px solid var(--color-divider)}.field-row-inline{gap:var(--space-sm);align-items:flex-end;display:flex}.field-row-inline .field{flex:1 1 0}.sheet-warning{padding:var(--space-sm);border:1px solid var(--color-warning);border-radius:var(--radius-sm);color:var(--color-text);margin:0}.session-note-read{gap:var(--space-xs);flex-direction:column;display:flex}.session-note-read p{color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere;margin:0}.session-note-read .session-note-caption{color:var(--color-text-secondary);white-space:normal}.workout-text{gap:var(--space-sm);flex-direction:column;display:flex}.workout-text-input{width:100%;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-md);line-height:1.5}.workout-text-errors{margin:var(--space-xs) 0 0;color:var(--color-danger)}.day-cell:focus-visible{outline:2px solid var(--color-action);outline-offset:-2px}.zone-time{gap:var(--space-xs);flex-direction:column;display:flex}.zone-bar{border-radius:var(--radius-pill);background:var(--color-surface);height:12px;display:flex;overflow:hidden}.zone-segment{height:100%}.zone-minutes{gap:var(--space-xs) var(--space-md);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.zone-dot{width:8px;height:8px;margin-right:var(--space-xs);border-radius:var(--radius-pill);display:inline-block}.load-preview{min-height:22px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0}.is-stale{opacity:.55;transition:opacity .12s}.sheet.sheet-wide{width:min(880px,100%)}.builder{gap:var(--space-sm);flex-direction:column;display:flex}.builder-profile{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background);width:100%;min-height:220px;position:relative;overflow:hidden}.builder-empty{place-items:center;display:grid}.builder-profile svg{touch-action:none;-webkit-user-select:none;user-select:none;display:block}.builder-grid{stroke:var(--color-divider);stroke-width:1px}.builder-ftp-line{stroke:var(--color-text-secondary);stroke-width:1px;stroke-dasharray:4 3}.builder-axis-text{fill:var(--color-text-secondary);font-size:var(--text-xs)}.builder-group{stroke:var(--color-text-secondary);stroke-width:1.5px}.builder-group-selected{stroke:var(--color-action);stroke-width:2px}.builder-bar{cursor:pointer}.builder-bar.is-selected .builder-shape{stroke:var(--color-action);stroke-width:2px}.builder-handle{fill:#0000}.builder-handle-x{cursor:ew-resize}.builder-handle-y{cursor:ns-resize}.builder-bar:hover .builder-handle,.builder-bar.is-selected .builder-handle{fill:var(--color-action);fill-opacity:.3}.builder-bar.is-selected .builder-knob{fill-opacity:1}.builder-dragging{cursor:grabbing}.builder-readout{top:var(--space-xs);right:var(--space-sm);padding:2px var(--space-sm);border-radius:var(--radius-sm);background:var(--color-surface-elevated);font-variant-numeric:tabular-nums;margin:0;position:absolute}.builder-palette{gap:var(--space-sm);flex-direction:column;display:flex}.builder-palette-row{gap:var(--space-xs);flex-wrap:wrap;display:flex}.builder-library,.builder-custom{padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md)}.builder-custom{align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap;display:flex}.builder-library-list{gap:var(--space-xs);flex-direction:column;max-height:240px;display:flex;overflow:auto}.builder-library-item{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.builder-rows{gap:var(--space-xs);flex-direction:column;display:flex}.builder-row{align-items:flex-end;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.builder-row.is-selected{border-color:var(--color-action);box-shadow:inset 0 0 0 1px var(--color-action)}.builder-repeat{flex-direction:column;align-items:stretch}.builder-repeat-head{align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap;display:flex}.builder-nested{padding-left:var(--space-md);border-left:2px solid var(--color-divider)}.builder-field{flex-direction:column;gap:2px;display:flex}.builder-field-label{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:18px}.builder-field input[type=number]{width:72px}.builder-note{flex:100%}.builder-duration{gap:var(--space-xs);display:inline-flex}.builder-actions{gap:var(--space-xs);margin-left:auto;display:inline-flex}.builder-icon{min-width:32px;min-height:32px;padding:0 var(--space-xs)}.mini-profile,.session-shape{width:100%;height:18px;margin-top:2px;display:block}.confirm-box{padding:var(--space-sm);border:1px solid var(--color-danger);border-radius:var(--radius-sm)}.confirm-box p{margin:0}.overlay{z-index:20;padding:var(--space-lg);background:var(--color-scrim);place-items:center;display:grid;position:fixed;inset:0}.dialog{width:min(520px,100%);max-height:90vh;padding:var(--space-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:auto}.publish-list{margin:var(--space-sm) 0}.publish-list .list-row{align-items:baseline}.push-preview{margin:var(--space-md) 0;padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-elevated)}.push-preview p{margin:0}.push-title{font-weight:600}.calendar-layout.with-library{gap:var(--space-md);grid-template-columns:minmax(0,1fr) 320px;display:grid}.library-panel{gap:var(--space-sm);max-height:calc(100vh - 220px);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex;overflow:auto}.library-filters{gap:var(--space-xs);flex-wrap:wrap;display:flex}.library-filters select{min-height:36px;padding:0 var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-field-fill);color:var(--color-text);font:inherit;font-size:var(--text-sm)}.library-list{gap:var(--space-xs);flex-direction:column;display:flex}.library-item{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);cursor:grab;flex-direction:column;gap:2px;display:flex}.library-actions{gap:var(--space-md);display:flex}.library-folders{flex-direction:column;gap:2px;display:flex}.library-folder{align-items:center;gap:var(--space-xs);border-radius:var(--radius-sm);border:1px dashed #0000;display:flex}.library-folder.is-drop-target{border-color:var(--color-action);background:var(--color-field-fill)}.library-folder-name{align-items:center;gap:var(--space-sm);min-width:0;min-height:32px;padding:0 var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:none;flex:auto;display:flex}.library-folder-name:hover{background:var(--color-field-fill)}.library-folder-name:focus-visible{outline:2px solid var(--color-action);outline-offset:-2px}.library-folder-name[aria-pressed=true]{background:var(--color-field-fill);font-weight:600}.library-folder-count{color:var(--color-text-secondary);font-size:var(--text-xs);font-variant-numeric:tabular-nums;margin-left:auto}.folder-menu{flex:none;position:relative}.folder-menu>summary{justify-content:center;min-width:28px;list-style:none}.folder-menu>summary::-webkit-details-marker{display:none}.library-folder-rename{gap:var(--space-xs);width:100%;padding:var(--space-xs) 0;flex-direction:column;display:flex}.template-weeks{margin:var(--space-xs) 0 var(--space-sm);padding-left:var(--space-md);font-size:var(--text-sm)}.activity-metrics-menu{position:relative}.activity-metrics-panel{right:0;top:calc(100% + var(--space-xs));z-index:1;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;min-width:200px;display:flex;position:absolute;box-shadow:0 4px 16px #0003}.activity-metrics-option{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-text);display:flex}.activity-grid{gap:var(--space-md);margin-top:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.activity-week+.activity-week{margin-top:var(--space-xl)}.activity-week-head{align-items:baseline;gap:var(--space-sm);margin:var(--space-md) 0 0;font-size:var(--text-md);font-weight:700;display:flex}.activity-week-count{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:400}.activity-card-chart{height:56px}.activity-card{gap:var(--space-xs);padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);flex-direction:column;min-width:0;text-decoration:none;display:flex}.activity-card:hover{border-color:var(--color-action)}.activity-card:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.activity-card-head{align-items:baseline;gap:var(--space-sm);display:flex}.activity-card-head>:nth-child(2){margin-left:auto}.activity-card-day{font-size:var(--text-sm);color:var(--color-text-secondary)}.activity-card-sport{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600}.activity-card-planned{border-left-width:4px;border-left-color:var(--band-color,var(--color-border))}.activity-card-plan{font-size:var(--text-xs);color:var(--band-color,var(--color-text-secondary))}.activity-card-title{font-size:var(--text-md);margin:0;font-weight:600;line-height:22px}.activity-card-metrics{gap:var(--space-xs) var(--space-sm);margin:var(--space-xs) 0 0;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));display:grid}.activity-card-metric{min-width:0}.activity-card-metric dt{margin:0}.activity-card-metric dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.activity-header{gap:var(--space-md);margin:var(--space-sm) 0 var(--space-lg);display:grid}.activity-header .title{margin:0}.activity-header-when{margin:0 0 calc(-1 * var(--space-sm));font-size:var(--text-sm);color:var(--color-text-secondary)}.activity-figures{justify-content:space-between;align-items:flex-end;gap:var(--space-md) var(--space-xl);flex-wrap:wrap;display:flex}.activity-bignums{gap:var(--space-xl);margin:0;display:flex}.activity-bignum dt{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:16px}.activity-bignum dd{font-size:var(--text-xxl);letter-spacing:-.02em;margin:0;font-weight:800;line-height:32px}.activity-subnums{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;margin:0;display:flex}.activity-subnum{align-items:baseline;gap:var(--space-xs);display:flex}.activity-subnum dt{font-size:var(--text-sm);color:var(--color-text-secondary)}.activity-subnum dd{margin:0;font-weight:700}.activity-verdict{justify-content:space-between;align-items:center;gap:var(--space-md) var(--space-xl);padding:var(--space-md) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-left-width:4px;border-left-color:var(--band-color,var(--color-border));border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.activity-verdict-text{min-width:0}.activity-verdict-text .eyebrow{margin:0 0 2px}.activity-verdict-word{font-size:var(--text-xl);color:var(--band-color,var(--color-text));margin:0;font-weight:800;line-height:28px}.activity-verdict-line{margin:var(--space-xs) 0 0;color:var(--color-text)}.activity-verdict-shape{width:220px;height:24px;margin-top:var(--space-sm);display:block}.repetitions{margin-bottom:var(--space-md)}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.data-table th,.data-table td{padding:var(--space-sm) var(--space-md) var(--space-sm) 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-divider)}.data-table th:last-child,.data-table td:last-child{padding-right:0}.data-table thead th{font-size:var(--text-xs);color:var(--color-text-secondary);border-bottom-color:var(--color-border);font-weight:600}.data-table tbody th{color:var(--color-text-secondary);font-weight:600}.data-table .data-num{text-align:right}.data-value{font-weight:600;display:block}.data-detail{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:18px;display:block}.diary-last{margin:0 0 var(--space-md)}.diary-day+.diary-day{margin-top:var(--space-lg)}.diary-totals{gap:var(--space-sm) var(--space-lg);margin:0 0 var(--space-sm);flex-wrap:wrap;display:flex}.diary-total{flex-direction:column;display:flex}.diary-total .text-secondary{font-size:var(--text-xs);margin:0;line-height:16px}.diary-incomplete{margin:0 0 var(--space-sm)}.diary-more{margin:0 0 var(--space-md)}.diary-more>summary{list-style:none}.diary-more>summary::-webkit-details-marker{display:none}.diary-more>summary:after{content:"▾" / "";color:var(--color-text-secondary)}.diary-more[open]>summary:after{content:"▴" / ""}.diary-more[open]>.diary-totals{margin-top:var(--space-sm)}.diary-day .data-table{table-layout:fixed}.diary-day .data-table thead th:first-child{width:40%}.diary-day .data-table thead th:nth-child(2){width:14%}.diary-day .data-table th,.diary-day .data-table td{overflow-wrap:break-word}.data-table .diary-meal>th{color:var(--color-text)}.diary-meal-toggle{align-items:center;gap:var(--space-xs);min-height:28px;margin:-4px 0 -4px calc(-1 * var(--space-xs));padding:0 var(--space-xs);border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;font-weight:600;display:inline-flex}.diary-meal-toggle:hover{background:var(--color-field-fill)}.diary-meal-toggle:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.diary-chevron{border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid var(--color-text-secondary);flex:none;width:0;height:0;transition:transform .12s}.diary-meal-toggle[aria-expanded=true] .diary-chevron{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.diary-chevron{transition:none}}.diary-meal .data-detail{padding-left:calc(5px + var(--space-xs))}.data-table .diary-item>th,.data-table .diary-item>td{font-size:var(--text-sm);line-height:18px}.data-table .diary-item>th{padding-left:calc(5px + var(--space-xs));color:var(--color-text);font-weight:400}.data-table .diary-dish>td{padding-left:calc(5px + var(--space-xs));color:var(--color-text);font-weight:600}.data-table .diary-dish-item>th{padding-left:calc(5px + var(--space-xs) + var(--space-md))}.data-table .diary-dish-credit>td{padding-left:calc(5px + var(--space-xs) + var(--space-md));color:var(--color-text-secondary)}:is(.content,.tool-panel) a:not([class]){color:var(--color-text);text-decoration:underline;-webkit-text-decoration-color:var(--color-text-muted);text-decoration-color:var(--color-text-muted);text-underline-offset:3px;text-decoration-thickness:1px}:is(.content,.tool-panel) a:not([class]):hover{text-decoration-color:currentColor}:is(.content,.tool-panel) a:not([class]):focus-visible{outline:2px solid var(--color-action);outline-offset:2px}:is(ul,ol,p)+.eyebrow{margin-top:var(--space-md)}.repetition-outcome{font-weight:600}.repetition-outcome.tone-fine{color:var(--color-fine)}.repetition-outcome.tone-watch{color:var(--color-watch)}.repetition-outcome.tone-muted{color:var(--color-text-muted);font-weight:400}.repetition-extra td,.repetition-extra th{color:var(--color-text-secondary)}.planned-bars{align-items:center;gap:var(--space-xs) var(--space-md);grid-template-columns:auto minmax(160px,260px) auto;margin:0;display:grid}.planned-bar{display:contents}.planned-bar-label{font-size:var(--text-sm);color:var(--color-text-secondary)}.planned-bar-track{background:var(--color-surface-elevated);border-radius:999px;height:8px;margin:0;position:relative}.planned-bar-fill{border-radius:inherit;background:var(--band-color,var(--color-text-secondary));position:absolute;inset:0 auto 0 0}.planned-bar-mark{background:var(--color-text);width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.planned-bar-value{font-family:var(--font-mono);font-size:var(--text-sm);margin:0}.unified-chart-controls{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.unified-chart{margin-bottom:var(--space-md)}.lane-toggles{gap:var(--space-xs);margin:0 0 var(--space-sm);flex-wrap:wrap;display:flex}.lane-toggle{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border:1px solid var(--color-border);color:var(--color-text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border-radius:999px;display:inline-flex}.lane-toggle[aria-pressed=true]{color:var(--color-text);background:var(--color-surface-elevated)}.lane-toggle[aria-pressed=false] .lane-toggle-dot{opacity:.35}.lane-toggle:disabled{cursor:default}.lane-toggle-dot{border-radius:50%;width:8px;height:8px}.activity-tract{margin-top:var(--space-md);padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.activity-tract-head{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.activity-tract-head .eyebrow{margin:0}.summary-figures{gap:var(--space-md) var(--space-lg);margin:0 0 var(--space-md);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.summary-figure dt{font-size:var(--text-sm);color:var(--color-text-secondary)}.summary-figure dd{margin:0}.summary-figure-value{font-size:var(--text-xl);font-weight:700;line-height:28px}.summary-figure-detail{font-size:var(--text-xs);color:var(--color-text-muted)}.channel-table,.peaks-table,.zone-table,.source-note{margin-top:var(--space-sm)}.chart-export{align-items:flex-end;gap:var(--space-xs);margin:0 0 var(--space-sm);flex-direction:column;display:flex}.chart-export-buttons{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap;display:flex}.chart-export-note{margin:0}.laps-panel{margin-bottom:var(--space-md)}.laps-grid{gap:var(--space-md) var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.laps-chart{min-width:0;margin:0}.laps-chart .eyebrow{margin-bottom:0}.compare-pick{max-width:100%;margin-bottom:var(--space-sm);align-self:flex-start}.compare-pick select{max-width:100%}.compare-empty{grid-column:1/-1}.assistant-panel{gap:var(--space-md);min-height:0;padding:var(--space-md);border-left:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;display:flex;overflow:auto}.assistant-head,.assistant-list-head,.action-bar-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.assistant-head .heading,.action-bar-head .heading{margin:0}.assistant-list{gap:var(--space-xs);flex-direction:column;display:flex}.assistant-list .summary-note{margin:0}.assistant-conversation{width:100%;padding:var(--space-xs) var(--space-sm);border:none;border-bottom:1px solid var(--color-divider);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:2px;display:flex}.assistant-conversation:hover{background:var(--color-surface-elevated)}.assistant-conversation-view{gap:var(--space-sm);flex-direction:column;flex:1;min-height:0;display:flex}.talking-about{align-items:baseline;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--color-surface-elevated);font-size:var(--text-sm);flex-wrap:wrap;line-height:18px;display:flex}.talking-about-list{gap:var(--space-xs) var(--space-md);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.talking-about-list li{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;display:inline-flex}.person-name{color:var(--color-text);font-weight:600}.person-off{color:var(--color-text-secondary);text-decoration:line-through}.assistant-messages{gap:var(--space-sm);flex-direction:column;display:flex}.assistant-message{gap:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-surface-elevated);flex-direction:column;display:flex}.assistant-message .eyebrow{margin:0}.message-coach{border:1px solid var(--color-border);background:0 0;align-self:flex-end;max-width:90%}.message-notice{border:1px dashed var(--color-border);color:var(--color-text-secondary);background:0 0}.message-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.assistant-action{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.assistant-delete{font-size:var(--text-sm)}.assistant-feedback-open{font-size:var(--text-sm);align-self:flex-start}.assistant-feedback-given{margin:0}.assistant-feedback{gap:var(--space-xs);padding-top:var(--space-xs);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.assistant-feedback-reasons{gap:var(--space-xs);border:0;flex-direction:column;margin:0;padding:0;display:flex}.assistant-feedback-reason{align-items:center;gap:var(--space-xs);display:flex}.assistant-feedback input[type=text]{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-field-fill);color:var(--color-text);font:inherit}.assistant-feedback p{margin:0}.method-page{--method-measure:72ch;gap:var(--space-md);flex-direction:column;max-width:50rem;display:flex}.method-head{gap:var(--space-xs);flex-direction:column;display:flex}.method-head .title,.method-head .summary-note,.method-lead{margin:0}.method-lead{max-width:var(--method-measure)}.method-section{gap:var(--space-sm);flex-direction:column;display:flex}.method-section .heading,.method-origin{margin:0}.method-rules{gap:var(--space-md);flex-direction:column;display:flex}.method-rule{gap:var(--space-xs);flex-direction:column;display:flex}.method-rule p{margin:0}.method-rule-base{grid-template-columns:minmax(0, var(--method-measure)) auto;justify-content:space-between;align-items:baseline;column-gap:var(--space-lg);display:grid}.method-rule-body{gap:var(--space-xs);flex-direction:column;display:flex}.method-correct{font-size:var(--text-sm);color:var(--color-text-secondary)}.method-correct:hover{color:var(--color-text)}.method-rule-mine{max-width:var(--method-measure)}.method-instead{padding:var(--space-xs) 0 var(--space-xs) var(--space-sm);border-left:2px solid var(--color-border);flex-direction:column;gap:2px;margin:0;display:flex}.method-instead .summary-label{font-size:var(--text-sm)}.method-instead .message-text{color:var(--color-text-muted)}.method-rule-mine textarea,.method-athlete-add select{padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-field-fill);color:var(--color-text);font:inherit}.method-rule-mine textarea{resize:vertical;field-sizing:content;width:100%}.method-rule .link-button,.method-section>.link-button{align-self:flex-start}.method-athlete,.method-athlete-add{gap:var(--space-xs);flex-direction:column;display:flex}.method-athlete-pick{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.method-athlete-add select{min-width:16rem;max-width:100%;min-height:44px}.method-safety{border-left:3px solid var(--color-text-secondary)}.method-safety-head{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.method-safety-lead{max-width:var(--method-measure);color:var(--color-text);margin:0}.method-rules-safety{gap:var(--space-sm)}.method-save{gap:var(--space-xs);padding:var(--space-sm) 0;background:var(--color-background);border-top:1px solid var(--color-border);flex-direction:column;display:flex;position:sticky;bottom:0}.method-save p,.method-version p{margin:0}.method-versions{gap:var(--space-sm);flex-direction:column;display:flex}.method-version{gap:var(--space-xs);flex-direction:column;display:flex}.method-version .summary-note+.summary-note,.method-version .session-title .summary-note{margin-left:var(--space-xs)}.assistant-composer{gap:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-direction:column;margin-top:auto;display:flex}.assistant-composer textarea{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-field-fill);color:var(--color-text);font:inherit;resize:vertical}.assistant-composer textarea:disabled{background:var(--color-disabled-fill);color:var(--color-disabled-text)}.assistant-composer p{margin:0}.assistant-composer .button-primary{align-self:flex-end}.assistant-method{font-size:var(--text-sm);color:var(--color-text-secondary)}.assistant-method:hover{color:var(--color-text)}.action-bar{gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-md);border:1px dashed var(--color-action);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.action-bar p{margin:0}.action-athlete{align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;display:inline-flex}.publish-week{padding:var(--space-xs) 0;border-bottom:1px solid var(--color-divider);flex-direction:column;gap:2px;display:flex}.session-proposal{border-style:dashed;border-color:var(--color-action);background:0 0}.proposal-flag{color:var(--color-text);font-weight:600}.proposal-box{padding:var(--space-xs);border:1px dashed var(--color-action);border-radius:var(--radius-sm);flex-direction:column;gap:2px;display:flex}.session-removal .session-name{text-decoration:line-through}.session-badge-ai{margin-right:var(--space-xs);border:1px solid var(--color-action);border-radius:var(--radius-sm);color:var(--color-text);padding:0 4px;font-weight:700;display:inline-block}.button-small{min-height:32px;padding:0 var(--space-md);font-size:var(--text-sm);margin-top:var(--space-sm)}.chip{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);font-size:var(--text-sm);background:var(--color-surface-elevated);color:var(--color-text-secondary);border-radius:999px;font-weight:600;line-height:18px;display:inline-flex}.chip-need{color:var(--color-need);background:color-mix(in srgb, var(--color-need) 14%, transparent)}.chip-watch{color:var(--color-watch);background:color-mix(in srgb, var(--color-watch) 14%, transparent)}.chip-fine{color:var(--color-fine);background:color-mix(in srgb, var(--color-fine) 14%, transparent)}.skeleton{gap:var(--space-sm);display:grid}.skeleton-bar{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-surface) 0%, var(--color-surface-elevated) 50%, var(--color-surface) 100%);background-size:200% 100%;height:14px;animation:1.4s ease-in-out infinite skeleton-passa;display:block}.skeleton-lines .skeleton-bar:nth-child(3n+1){width:92%}.skeleton-lines .skeleton-bar:nth-child(3n+2){width:76%}.skeleton-lines .skeleton-bar:nth-child(3n){width:58%}.skeleton-rows .skeleton-bar{border-radius:var(--radius-md);height:52px}@keyframes skeleton-passa{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton-bar{animation:none}}.home-panel{gap:var(--space-lg);display:grid;container:home/inline-size}.home-empty{color:var(--color-text-muted);font-size:var(--text-sm);margin:0}.home-needs>.home-empty{font-size:var(--text-md);color:var(--color-text-secondary)}.home-need-list,.home-reasons,.home-session-list,.home-race-list{margin:0;padding:0;list-style:none}.home-need{gap:var(--space-sm) var(--space-lg);padding:var(--space-md) 0;border-top:1px solid var(--color-divider);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.home-need:first-child{border-top:none;padding-top:0}.home-need-main{gap:var(--space-xs);min-width:0;display:grid}.home-need-who{align-items:center;gap:var(--space-sm);display:flex}.home-reasons{gap:2px;display:grid}.home-reason{overflow-wrap:anywhere}.home-reason-more{color:var(--color-text-secondary)}.home-reason-link{color:var(--color-text);text-underline-offset:2px;text-decoration:underline}.home-need-acts{justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap;display:flex}.home-need-acts .button-small{margin-top:0}.home-regular{align-items:baseline;gap:var(--space-xs) var(--space-sm);margin:var(--space-md) 0 0;padding-top:var(--space-md);border-top:1px solid var(--color-divider);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.home-regular-label{font-weight:600}.home-regular-names .row-link{font-weight:500}.home-regular-more{color:var(--color-text-secondary)}.home-grid{gap:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.home-session-day+.home-session-day{margin-top:var(--space-md)}.home-session{gap:var(--space-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);grid-template-columns:44px minmax(0,1fr) auto;align-items:baseline;display:grid}.home-session:last-child,.home-note-list .digest-athlete-line:last-child,.home-race:last-child{border-bottom:none}.home-session-time{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary)}.home-session-main{gap:2px;min-width:0;display:grid}.home-session-who{font-weight:600}.home-session-what{overflow-wrap:anywhere}.home-session-details{font-size:var(--text-sm);color:var(--color-text-secondary)}.home-status{white-space:nowrap}.home-status-done{color:var(--color-text)}.home-status-draft,.home-race-draft{border:1px dashed var(--color-border);background:0 0}.home-note-list .digest-athlete-line:first-child{padding-top:0}.home-race{gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);grid-template-columns:150px 180px minmax(0,1fr) auto;align-items:baseline;display:grid}.home-race-when{gap:2px;display:grid}.home-race-day,.home-race-who{font-weight:600}.home-race-count{font-size:var(--text-sm);color:var(--color-text-secondary)}.home-race-what{overflow-wrap:anywhere;min-width:0}.home-race-tags{gap:var(--space-xs);display:flex}@container home (width<=899px){.home-grid,.home-need{grid-template-columns:minmax(0,1fr)}.home-need-acts{justify-content:flex-start}.home-race{row-gap:var(--space-xs);grid-template-columns:150px minmax(0,1fr)}.home-race-when{grid-row:1/span 3}.home-race-who,.home-race-what,.home-race-tags{grid-column:2}}.triage-reason{font-weight:600}.triage-more{font-size:var(--text-sm);color:var(--color-text-secondary)}.chip-new{border-color:var(--color-border);color:var(--color-text)}.digest-athlete-line{gap:var(--space-xs);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);flex-direction:column;display:flex}.digest-athlete-line-head{margin:0}.digest-athlete-line-name{color:var(--color-text);font-weight:600}.digest-athlete-line-text{color:var(--color-text);white-space:pre-line;overflow-wrap:anywhere;margin:0}.triage-side{gap:var(--space-sm);padding:0 var(--space-xs);display:grid}.triage-side-title{padding:var(--space-sm) var(--space-sm) var(--space-xs);font-size:var(--text-xs);color:var(--color-text-muted);justify-content:space-between;margin:0;font-weight:600;display:flex}.triage-side-item{gap:var(--space-sm);padding:6px var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text-secondary);grid-template-columns:minmax(0,1fr);align-items:center;text-decoration:none;display:grid}.triage-side-item:hover,.triage-side-item.active{background:var(--color-surface-elevated);color:var(--color-text)}.triage-side-name{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-weight:600;overflow:hidden}.triage-side-more{font-size:var(--text-sm)}.sidebar{overflow-y:auto}.sidebar-main,.sidebar-foot{gap:var(--space-xs);flex-direction:column;display:flex}.sidebar-foot{padding-top:var(--space-sm);border-top:1px solid var(--color-divider);margin-top:auto}.roster-lane-col{width:20px;padding-right:0}.roster-lane-dot{border-radius:50%;width:8px;height:8px;display:block}.roster-lane-need{background:var(--color-need)}.roster-lane-watch{background:var(--color-watch)}.roster-lane-fine{background:var(--color-fine)}.triage-gravity{color:var(--color-text-secondary);font-weight:400}.athlete-title-row{margin-bottom:var(--space-md)}.close-link-list{gap:var(--space-xs);margin:var(--space-sm) 0;padding-left:var(--space-lg);display:grid}.athlete-page{container:athlete/inline-size}.athlete-layout{gap:var(--space-lg);grid-template-columns:minmax(0,1fr);grid-template-areas:"week""analysis""aside";align-items:start;display:grid}.athlete-week{grid-area:week;min-width:0}.athlete-analysis{grid-area:analysis;min-width:0}.athlete-aside{gap:var(--space-md);grid-area:aside;min-width:0;display:grid}@container athlete (width>=1000px){.athlete-layout{grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"week week""analysis aside"}.athlete-aside{scrollbar-width:thin;max-height:100vh;position:sticky;top:0;overflow-y:auto}}@container athlete (width>=1440px){.athlete-layout{grid-template-rows:auto 1fr;grid-template-areas:"week aside""analysis aside"}}@container athlete (width<=899px){.recent-load{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""chart""text"}}.calendar-week{border-top:1px solid var(--color-border);overflow-x:auto}.week-nav{align-items:center;gap:var(--space-sm);display:inline-flex}.week-nav .button-small,.calendar-tools .button-small{margin-top:0}.week-nav-title{text-align:center;font-variant-numeric:tabular-nums;min-width:13ch;font-weight:600}.aside-card{padding:var(--space-md)}.aside-card .heading{margin:0}.aside-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.aside-status{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.aside-group{gap:var(--space-xs);padding-top:var(--space-sm);margin-top:var(--space-sm);border-top:1px solid var(--color-divider);display:grid}.aside-group>p,.aside-card p{margin:0}.aside-group-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.aside-group-head .eyebrow{margin:0}.aside-rows{gap:var(--space-xs);margin:0;display:grid}.aside-row{gap:var(--space-sm);grid-template-columns:104px minmax(0,1fr);display:grid}.aside-row dt,.aside-row-label{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.aside-row dd{color:var(--color-text);overflow-wrap:anywhere;margin:0}.aside-draft{font-size:var(--text-sm);color:var(--color-text-muted);display:block}.aside-items,.aside-race,.aside-thresholds{gap:var(--space-xs);display:grid}.aside-race .button-quiet,.aside-group .button-quiet{justify-self:start}.aside-thresholds .threshold-change{margin-top:var(--space-xs)}.aside-race .race-priority{margin-right:var(--space-xs)}.aside-subhead{margin-top:var(--space-sm)}.aside-link{margin-top:var(--space-md);border:1px solid var(--color-border);color:var(--color-text);align-items:center;text-decoration:none;display:inline-flex}.aside-form{gap:var(--space-sm);display:grid}.aside-form input[type=number],.aside-form input[type=text],.aside-form input[type=date],.aside-form select{width:100%;min-width:0}.aside-row-pair{gap:var(--space-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.aside-toggles{gap:var(--space-xs);flex-wrap:wrap;display:flex}.aside-toggle{min-height:32px;padding:0 var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0}.aside-toggle[aria-pressed=true]{color:var(--color-text);border-color:var(--color-action);box-shadow:inset 0 0 0 1px var(--color-action);font-weight:600}.aside-toggle:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.aside-list-editor{gap:var(--space-sm);justify-items:start;display:grid}.aside-list-row{gap:var(--space-xs);width:100%;padding:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-md);margin:0;display:grid}.aside-notes{gap:var(--space-sm);margin-top:var(--space-sm);display:grid}.aside-note{gap:var(--space-xs);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-divider);display:grid}.aside-note:last-child{border-bottom:none;padding-bottom:0}.aside-note-head{font-size:var(--text-sm);color:var(--color-text);font-weight:600}.aside-note-text{white-space:pre-line;overflow-wrap:anywhere}.aside-note .button-quiet{justify-self:start}.aside-targets{gap:var(--space-sm);display:grid}.aside-target{gap:2px;display:grid}.aside-target-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.aside-target-head .aside-row-label{color:var(--color-text);font-weight:600}.aside-target-next{align-items:center;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;display:flex}.aside-target .aside-form{margin-top:var(--space-xs)}.aside-form .form-actions{align-items:center}.aside-form .form-actions>button{margin-top:0}.recent-load{column-gap:var(--space-xl);row-gap:var(--space-sm);margin-top:var(--space-lg);grid-template-columns:minmax(0,520px) minmax(0,1fr);grid-template-areas:"title title""chart text";align-items:end;display:grid}.recent-load>.heading{grid-area:title}.recent-load-chart{gap:var(--space-xs);grid-area:chart;display:grid}.recent-load-text{gap:var(--space-xs);padding-bottom:var(--space-lg);grid-area:text;display:grid}.recent-load-text p{margin:0}.recent-load-plot{align-items:flex-end;gap:var(--space-md);height:96px;margin-top:var(--space-lg);display:flex;position:relative}.recent-load-col{flex:1 1 0;align-items:flex-end;height:100%;display:flex}.recent-load-bar{border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-text-muted);width:100%;min-height:2px;position:relative}.recent-load-value{text-align:center;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary);position:absolute;bottom:calc(100% + 2px);left:0;right:0}.recent-load-bar-current{background:var(--color-text-secondary);opacity:.55}.recent-load-baseline{border-top:1px dashed var(--color-text-secondary);pointer-events:none;position:absolute;left:0;right:0}.recent-load-baseline-label{padding:0 var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface);position:absolute;bottom:2px;right:0}.recent-load-weeks{gap:var(--space-md);font-size:var(--text-xs);color:var(--color-text-muted);display:flex}.recent-load-weeks>span{text-align:center;flex:1 1 0}.week-effect{gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-elevated);display:grid}.week-effect-title{font-size:var(--text-sm);margin:0;font-weight:700}.week-effect-line,.week-effect-note{margin:0}.week-effect-label{color:var(--color-text-secondary)}.week-effect-before{font-family:var(--font-mono);color:var(--color-text-secondary)}.week-effect-after{font-family:var(--font-mono);color:var(--color-text);font-weight:700}.week-effect-after.is-watch,.week-effect-flag{color:var(--color-watch);font-weight:600}.week-effect-target{color:var(--color-text-secondary)}.week-effect-note{font-size:var(--text-sm);color:var(--color-text-muted)}.shell-body.with-panel-builder{grid-template-columns:minmax(0,1fr) 560px}.shell-body.with-panel-library{grid-template-columns:minmax(0,1fr) 360px}.shell-body.with-panel-assistant,.shell-body.with-panel-review{grid-template-columns:minmax(0,1fr) 380px}.tool-panel{border-left:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;min-height:0;display:flex;overflow:auto}.tool-panel-head{z-index:3;justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex;position:sticky;top:0}.tool-panel-tabs{gap:var(--space-xs);display:flex}.tool-panel-tab{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;font-weight:600}.tool-panel-tab[aria-selected=true]{background:var(--color-surface-elevated);color:var(--color-text)}.tool-panel-tab:focus-visible{outline:2px solid var(--color-action);outline-offset:1px}.tool-panel-unsaved{color:var(--color-watch)}.tool-panel-dot{background:var(--color-watch);vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.tool-panel-slot{flex-direction:column;min-height:0;display:flex}.tool-panel .assistant-panel{border-left:none}.sheet.sheet-embedded{z-index:auto;width:auto;box-shadow:none;border-left:none;position:static;overflow:visible}.library-panel.library-embedded{border:none;border-radius:0;max-height:none}.agenda{gap:var(--space-sm);border-top:1px solid var(--color-border);padding-top:var(--space-sm);display:grid}.week-row.week-agenda{border-bottom:none;grid-template-columns:minmax(0,1fr)}.week-agenda .week-label{flex-direction:row;justify-content:space-between;align-items:center}.week-agenda .day-cell{column-gap:var(--space-md);min-height:0;padding:var(--space-sm);border-left:none;border-top:1px solid var(--color-divider);grid-template-columns:96px minmax(0,1fr);align-items:start;row-gap:0;display:grid}.week-agenda .day-cell>.day-head{align-items:flex-start;gap:var(--space-xs);flex-direction:column;grid-area:1/1/span 20}.week-agenda .day-cell>:not(.day-head){margin-bottom:var(--space-xs);grid-column:2}.week-agenda .day-event{justify-self:start}.week-agenda .session-card{align-items:center;gap:2px var(--space-md);flex-flow:wrap}.week-agenda .session-card .session-title{flex:120px}.week-agenda .session-card .session-shape,.week-agenda .session-card .mini-profile{flex:0 0 160px;width:160px;margin:0}.week-agenda .week-summary{border-left:none;border-top:1px solid var(--color-border)}.week-row.week-agenda.week-has-bands{grid-template-rows:none}.week-agenda.week-has-bands>*{grid-area:auto/1}.week-agenda .week-bands{padding:var(--space-xs) var(--space-sm);grid-template-columns:minmax(0,1fr)}.week-agenda .stop-band{grid-column:1;margin:0}.guard-dialog{max-width:440px}.dialog-actions{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.meta-part{white-space:nowrap}.group-list{flex-direction:column;max-width:720px;display:flex}.group-list-row{align-items:baseline;gap:var(--space-xs) var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--color-divider);flex-wrap:wrap;display:flex}.group-list-row .row-link{font-size:var(--text-lg)}.group-list-row .text-secondary,.group-list-note{margin:0}.dialog.dialog-wide{width:min(880px,100%)}.group-picker{margin:var(--space-md) 0 0;border:none;min-width:0;padding:0}.group-picker .plain-list{max-height:260px;overflow:auto}.group-picker-row{align-items:center;gap:var(--space-sm);cursor:pointer;min-height:36px;display:flex}.group-picker-row input{width:18px;height:18px}.group-week-toolbar{align-items:center;gap:var(--space-sm);margin:var(--space-md) 0 var(--space-sm);flex-wrap:wrap;display:flex}.group-week-toolbar .heading{margin:0}.group-week-actions{gap:var(--space-sm);margin-left:auto;display:inline-flex}.group-week-actions .button-primary{margin-top:0}.group-week-table{table-layout:fixed;min-width:1100px}.group-week-table th:first-child{width:140px}.group-week-table th:last-child{width:120px}.group-week-table td{vertical-align:top}.group-week-athlete{font-weight:600}.group-week-cell{min-width:0}.group-chips{gap:var(--space-xs);flex-direction:column;display:flex}.group-chip{padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);overflow-wrap:anywhere;border-left-width:4px;flex-direction:column;gap:2px;display:flex}.group-chip-draft{background:0 0;border-style:dashed}.group-chip-free{background:0 0}.group-chip-title{font-weight:600;font-size:var(--text-sm);line-height:18px}.group-chip-meta{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:18px}.group-week-total{color:var(--color-text-secondary);flex-direction:column;gap:2px;display:flex}.group-compare-detail{display:block}.group-members .list-row .button-small{flex:none}
