:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#14110f;--ink-2:#4a453d;--paper:#f3ede0;--card:#fffcf5;--grid:#d9d0bc;--text:var(--ink);--text-2:var(--ink-2);--line:var(--ink);--shadow-color:var(--ink);--on-fill:var(--ink);--fill-plain:var(--card);--inverse:var(--ink);--inverse-2:var(--ink-2);--on-inverse:var(--card);--attribution:var(--text-2);--volt:#c6f432;--alarm:#d62839;--on-alarm:#fff;--alarm-text:#b3162b;--good-text:#0e6b35;--link:#1f3fd1;--warn:#ffd23f;--modality-run:#5c8dff;--modality-strength:#ff7a3d;--modality-ruck:#c79a5b;--modality-walk:#8ed1f2;--modality-conditioning:#f25ca8;--modality-bike:#2ec4b6;--modality-row:#7fd35f;--modality-mobility:#b79ced;--modality-other:#b9b2a3;--brand-google-blue:#4285f4;--brand-google-red:#ea4335;--brand-google-yellow:#fbbc05;--brand-google-green:#34a853;--brand-microsoft-red:#f25022;--brand-microsoft-green:#7fba00;--brand-microsoft-blue:#00a4ef;--brand-microsoft-yellow:#ffb900;--font-display:"Big Shoulders Display","Arial Narrow","Franklin Gothic Medium",Impact,sans-serif;--font-body:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--border-w:3px;--border-w-thin:2px;--border:var(--border-w)solid var(--line);--border-thin:var(--border-w-thin)solid var(--line);--shadow-sm:3px 3px 0 var(--shadow-color);--shadow:5px 5px 0 var(--shadow-color);--shadow-lg:8px 8px 0 var(--shadow-color);--radius:0;--focus-ring:3px solid var(--line);--focus-offset:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--press:.12s;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--scrim:color-mix(in srgb,var(--ink)60%,transparent)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#1a2421;--card:#24302c;--grid:#3c4a45;--text:#f4f0e6;--text-2:#b8c2ba;--line:#ece7da;--shadow-color:#7e8c85;--on-fill:#14110f;--fill-plain:#d8ddd4;--inverse:#f4f0e6;--inverse-2:#b8c2ba;--on-inverse:#24302c;--alarm:#ec4655;--on-alarm:#14110f;--alarm-text:#ff8c8c;--good-text:#7fe0a0;--link:#9db4ff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#1a2421;--card:#24302c;--grid:#3c4a45;--text:#f4f0e6;--text-2:#b8c2ba;--line:#ece7da;--shadow-color:#7e8c85;--on-fill:#14110f;--fill-plain:#d8ddd4;--inverse:#f4f0e6;--inverse-2:#b8c2ba;--on-inverse:#24302c;--alarm:#ec4655;--on-alarm:#14110f;--alarm-text:#ff8c8c;--good-text:#7fe0a0;--link:#9db4ff}}:root{font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-width:320px;padding:var(--safe-top)var(--safe-right)0 var(--safe-left);background:var(--paper);color:var(--text);overflow-wrap:anywhere;margin:0}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-weight:900;line-height:1.05}a{color:var(--link)}code{font-family:var(--font-mono);background:var(--card);border:var(--border-thin);padding:0 var(--space-1);font-size:.9em}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.theme-toggle{box-shadow:var(--shadow-sm)}.theme-toggle button{min-height:32px;padding:0 var(--space-2);font-family:var(--font-mono);font-size:.75rem}.login-theme{max-width:400px;margin:var(--space-5)auto 0;justify-content:flex-end;display:flex}.dash{max-width:1120px;padding:var(--space-5)var(--space-4)var(--space-8);color:var(--text);margin:0 auto}.dash h1{margin:0;font-size:clamp(2.5rem,9vw,4rem);font-weight:900}.dash h2{margin:var(--space-7)0 var(--space-4);padding:var(--space-1)var(--space-3);background:var(--inverse);color:var(--on-inverse);font-size:1.75rem;display:inline-block}.dash h3{margin:0;font-size:1.25rem;font-weight:800}.muted{color:var(--text-2);margin:0;font-size:.875rem}.brand{padding:0 var(--space-2);background:var(--volt);color:var(--on-fill);border:var(--border);box-shadow:var(--shadow-sm);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:1.25rem;font-weight:900;line-height:1.4;display:inline-block}.dash-head{gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;display:flex}.dash-head>div:first-child{flex:260px}.button,.dash-head>button,.range button{min-height:44px;padding:var(--space-2)var(--space-4);background:var(--volt);color:var(--on-fill);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow);font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform var(--press),box-shadow var(--press);justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;text-decoration:none;display:inline-flex}.button:active:not(:disabled),.dash-head>button:active,.range button:active{box-shadow:0 0 0 var(--shadow-color);transform:translate(5px,5px)}.dash-head>button{background:var(--card);color:var(--text)}.button:disabled{opacity:.55;box-shadow:none;cursor:progress;border-style:dashed}.range{border:var(--border);box-shadow:var(--shadow);background:var(--card);display:inline-flex}.range button{min-height:40px;padding:var(--space-1)var(--space-3);color:var(--text);box-shadow:none;background:0 0;border:0;transition:none}.range button+button{border-left:var(--border)}.range button:active{box-shadow:none;background:var(--grid);transform:none}.range button[aria-pressed=true]{background:var(--volt);color:var(--on-fill)}.range button:focus-visible{outline-offset:-6px}.link-button{color:var(--link);font:inherit;text-underline-offset:3px;cursor:pointer;padding:var(--space-1)0;white-space:nowrap;background:0 0;border:0;font-size:.875rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.link-button:hover{background:var(--volt);color:var(--on-fill)}.content.reloading{opacity:.55;transition:opacity .15s}.kpi-row,.totals{gap:var(--space-5)var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));display:grid}.kpi-row.compact{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-row.compact .tile{padding:var(--space-3);border-top-width:6px}.kpi-row.compact .tile-value{overflow-wrap:anywhere;font-size:1.5rem}.kpi-row.compact .muted{font-size:.75rem}@media (min-width:640px){.kpi-row.compact{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-row.compact .tile-value{font-size:2.25rem}}.grid-2{gap:var(--space-5)var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));display:grid}.totals{margin:0 0 var(--space-5)}.tile,.card,.totals>div,.notice{background:var(--card);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-4);min-width:0;margin:0}.tile{border-top-width:10px}.tile-label,.totals dt{color:var(--text);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.tile-label{font-family:var(--font-mono);letter-spacing:.06em;font-size:.75rem}.tile-value,.totals dd{font-family:var(--font-display);margin:var(--space-2)0 var(--space-1);font-weight:900;line-height:1}.tile-value{font-size:3.25rem}.totals dd{font-size:2.75rem}.delta{margin:var(--space-2)0 0;font-family:var(--font-mono);color:var(--text-2);font-size:.75rem;font-weight:500}.delta.good{color:var(--good-text);font-weight:700}.delta.bad{color:var(--alarm-text);font-weight:700}.sparkline{margin-top:var(--space-2);display:block}.sparkline path{fill:none;stroke:var(--line);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.sparkline circle{fill:var(--volt);stroke:var(--line);stroke-width:2px}.card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.card-actions{justify-content:flex-end;gap:var(--space-1)var(--space-3);flex-wrap:wrap;display:flex}figure.card{margin:0}.chart{position:relative}.chart svg{max-width:100%;display:block;overflow:visible}.chart svg:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.tick{fill:var(--text-2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px}.grid{stroke:var(--grid);stroke-width:1.5px}.baseline{stroke:var(--line);stroke-width:3px}.avg{stroke:var(--text-2);stroke-width:1.5px;stroke-dasharray:5 4}.line{fill:none;stroke:var(--line);stroke-width:3px;stroke-linejoin:miter;stroke-linecap:butt}.dot{fill:var(--volt);stroke:var(--line);stroke-width:2.5px}.crosshair,.bar{stroke:var(--line);stroke-width:2px}.hit{fill:#0000;outline:none}.hit:focus-visible{fill:color-mix(in srgb,var(--volt)40%,transparent);stroke:var(--line);stroke-width:3px}.dimmed .bar{opacity:.45}.tooltip{pointer-events:none;background:var(--card);border:var(--border);box-shadow:var(--shadow);padding:var(--space-2)var(--space-3);font-family:var(--font-mono);white-space:nowrap;z-index:1;flex-direction:column;gap:2px;font-size:.75rem;display:flex;position:absolute;top:0}.tooltip strong{font-size:.875rem}.tooltip-row{align-items:center;gap:var(--space-2);display:flex}.legend{gap:var(--space-1)var(--space-4);margin:0 0 var(--space-2);font-family:var(--font-mono);color:var(--text);flex-wrap:wrap;padding:0;font-size:.75rem;list-style:none;display:flex}.legend li,.legend>span{align-items:center;gap:var(--space-2);display:inline-flex}.swatch{border:var(--border-thin);flex:none;width:16px;height:16px;display:inline-block}.pat-stripes{background-image:repeating-linear-gradient(45deg,var(--on-fill)0 2px,transparent 2px 5px)}.pat-dots{background-image:radial-gradient(var(--on-fill)1.4px,transparent 1.6px);background-size:5px 5px}.pat-cross{background-image:repeating-linear-gradient(45deg,var(--on-fill)0 1.5px,transparent 1.5px 5px),repeating-linear-gradient(-45deg,var(--on-fill)0 1.5px,transparent 1.5px 5px)}.pat-hlines{background-image:repeating-linear-gradient(0deg,var(--on-fill)0 2px,transparent 2px 5px)}.pat-vlines{background-image:repeating-linear-gradient(90deg,var(--on-fill)0 2px,transparent 2px 5px)}.pat-checks{background-image:conic-gradient(var(--on-fill)25%,transparent 0 50%,var(--on-fill)0 75%,transparent 0);background-size:6px 6px}.cal-dot{width:14px;height:14px;margin-right:var(--space-1);vertical-align:middle;display:inline-block}.calendar{table-layout:fixed;border-collapse:separate;border-spacing:3px;width:100%;font-family:var(--font-mono);font-size:.75rem}.calendar thead th:first-child{width:48px}.calendar+.legend{margin-top:var(--space-3)}.calendar th{color:var(--text);text-align:left;white-space:nowrap;font-weight:700}.calendar thead th{text-transform:uppercase;font-size:.6875rem}.calendar td{border:var(--border-w-thin)solid var(--grid);background:var(--paper);text-align:center;height:32px;line-height:1}.calendar td .pat-checks{background-image:conic-gradient(var(--on-fill)25%,transparent 0 50%,var(--on-fill)0 75%,transparent 0);background-size:6px 6px}.cal-dot{margin:0 -1px}.cal-link{line-height:0;display:inline-block}.calendar td.out{background:0 0;border-color:#0000}.table-scroll{border:var(--border);background:var(--card);overflow-x:auto}.card .table-scroll{border:0}.data-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);background:var(--card);font-size:.8125rem}.data-table th,.data-table td{text-align:left;padding:var(--space-2)var(--space-3);border-bottom:var(--border-w-thin)solid var(--grid);white-space:nowrap}.data-table th{background:var(--inverse);color:var(--on-inverse);letter-spacing:.04em;text-transform:uppercase;border-bottom:0;font-weight:700}.data-table tbody tr:last-child td{border-bottom:0}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.reference{pointer-events:none;stroke:var(--text);stroke-width:2px;stroke-dasharray:6 4}.reference-label{fill:var(--text);pointer-events:none;stroke:var(--card);stroke-width:4px;paint-order:stroke}.load-channels>section{margin-top:var(--space-5)}.channels-summary{margin:0 0 var(--space-2);font-size:1.125rem;font-weight:600}.channels-intro,.channel-note,.channel-explain{max-width:70ch;margin:var(--space-2)0 var(--space-4)}.run-compare{display:none}@media (max-width:600px){.run-compare{display:block}.runs-table .run-compared{display:none}}.run-flag{font-weight:700}.empty{border:var(--border);background:var(--card);color:var(--text);margin:var(--space-5)0;padding:var(--space-5)var(--space-4);border-style:dashed;font-size:1rem;font-weight:500}.chart>.empty{margin:0}.notice{margin-top:var(--space-5);gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.notice p{margin:0}.banner{margin:var(--space-3)0 var(--space-5);padding:var(--space-2)var(--space-3);background:var(--card);border:var(--border-thin);border-left-width:10px;font-size:.9375rem;font-weight:500}.banner.error{color:var(--alarm-text);border-color:var(--alarm);font-weight:700}.banner.error:before{content:"Error: ";text-transform:uppercase}.banner.success{color:var(--good-text);border-color:var(--good-text);font-weight:700}.banner.success:before{content:"Done: ";text-transform:uppercase}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.login{align-items:stretch;gap:var(--space-4);max-width:400px;box-shadow:var(--shadow-lg);padding:var(--space-5);flex-direction:column;margin:12vh auto 0}.login .brand{align-self:flex-start}.login h1{font-size:3.5rem}.login label{gap:var(--space-1);flex-direction:column;font-weight:700;display:flex}.login input,.field input,.field select,.field textarea{width:100%;min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);font-weight:400}.login input:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{background:color-mix(in srgb,var(--volt)35%,var(--card))}.strength-list{margin:0;padding:0;list-style:none}.strength-row{justify-content:space-between;gap:var(--space-2)var(--space-4);padding:var(--space-3)0;border-top:var(--border-thin);flex-wrap:wrap;display:flex}.strength-row:first-child{border-top:0}.strength-value{font-family:var(--font-display);margin:var(--space-1)0;font-size:2rem;font-weight:900;line-height:1}@media (max-width:480px){.dash{padding-inline:var(--space-4)}.tile-value{font-size:2.75rem}}.trends-link h2{margin-top:0}.trends-link{gap:var(--space-2);justify-items:start;display:grid}.login-after{max-width:400px;margin:var(--space-4)auto var(--space-6);gap:var(--space-2);flex-direction:column;display:flex}.login-after p{margin:0}.login .hint{margin:calc(-1*var(--space-3))0 0;color:var(--text-2);font-size:.875rem;font-weight:400}.login .login-forgot{margin-top:calc(-1*var(--space-2));align-self:flex-start;font-size:.875rem}.chart .band{fill:var(--grid);fill-opacity:.6;stroke:none}.garmin-card,.garmin-connection{align-items:flex-start;gap:var(--space-4);display:flex}.garmin-card h2{margin:0 0 var(--space-2)}.garmin-card p{margin:0 0 var(--space-3)}.garmin-tile{flex:none;width:48px;height:48px}.garmin-card-body{gap:var(--space-2);overflow-wrap:anywhere;flex-direction:column;flex:220px;min-width:0;display:flex}.garmin-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.garmin-confirm{margin-top:var(--space-2);padding:var(--space-3);border:var(--border-thin);background:var(--card)}.garmin-confirm p{margin:0}.banner.garmin-warn{margin:var(--space-2)0;background:var(--warn);color:var(--on-fill);border-color:var(--line)}.garmin-multisport,.garmin-auto-send{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.garmin-multisport-field{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.garmin-switch{align-items:center;gap:var(--space-2);font-weight:600;display:flex}.garmin-switch input{width:1.25rem;height:1.25rem;margin:0}.garmin-toast{padding:0 var(--space-4)}.garmin-toast .banner{justify-content:space-between;align-items:center;gap:var(--space-3);max-width:960px;margin:var(--space-3)auto 0;flex-wrap:wrap;display:flex}@media (max-width:480px){.garmin-card,.garmin-connection{flex-direction:column}}.garmin-line{margin:var(--space-4)0}.garmin-attribution{color:var(--attribution);margin:0;font-size:.875rem}.garmin-attribution.garmin-attribution-title{color:var(--text);font-size:1rem;font-weight:600}.send-garmin{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.send-garmin h2,.send-garmin p{margin:0}.send-garmin-range{gap:var(--space-2);padding:var(--space-3);border:var(--border-thin);flex-direction:column;margin:0;display:flex}.send-garmin-range label{align-items:center;gap:var(--space-2);min-height:44px;display:flex}.send-garmin-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.send-garmin-list li{align-items:baseline;gap:var(--space-1)var(--space-3);padding:var(--space-2)0;border-bottom:var(--border-thin);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.send-garmin-day{min-width:7.5em;color:var(--text-2);font-family:var(--font-mono);font-size:.875rem}.send-garmin-action{white-space:normal}.send-garmin-list li[data-action=failed] .send-garmin-action{color:var(--alarm-text);border-color:var(--alarm-text)}.send-garmin-list li[data-action=created] .send-garmin-action,.send-garmin-list li[data-action=updated] .send-garmin-action{background:var(--volt);color:var(--on-fill)}.send-garmin-unchanged ul{margin:var(--space-2)0 0;padding-left:var(--space-4)}.send-garmin-result:focus{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.badge.garmin-status[data-status=on_watch]{background:var(--inverse);color:var(--on-inverse)}.badge.garmin-status[data-status=changed]{background:var(--warn);color:var(--on-fill)}.badge.garmin-status[data-status=failed]{color:var(--alarm-text);border-color:var(--alarm-text)}.garmin-status-reason{color:var(--alarm-text);overflow-wrap:anywhere;font-size:.875rem}.fold-card>.card-head{align-items:center;margin-bottom:0}.fold-summary{margin:var(--space-1)0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.875rem;font-weight:700}.fold-toggle{flex-shrink:0;min-height:44px}.fold-card>[id]{margin-top:var(--space-3)}.term{display:inline;position:relative}.term-word{all:unset;cursor:help;color:inherit;font:inherit;text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:2px}.term-word:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.term-icon{min-width:44px;min-height:44px;color:var(--text);cursor:help;vertical-align:middle;background:0 0;border:0;place-items:center;margin:-11px -10px;padding:0;display:inline-grid}.term-dot{border:2px solid var(--line);background:var(--card);width:22px;height:22px;font:700 .75rem/1 var(--font-mono);border-radius:50%;place-items:center;display:grid}.term-pop{z-index:40;width:max-content;max-width:min(20rem,100vw - 32px);padding:var(--space-2)var(--space-3);background:var(--card);color:var(--text);border:var(--border);box-shadow:var(--shadow-lg);text-align:left;text-transform:none;letter-spacing:normal;white-space:normal;font-size:.875rem;font-weight:400;line-height:1.45;display:block;position:fixed;top:0;left:0}.term-pop[hidden]{display:none}.help-page{max-width:46rem}.help-page .glossary dt{margin-top:var(--space-4);font-weight:800}.help-page .glossary dd,.help-page .glossary dd p{margin:var(--space-1)0 0}.help-page ol.flow{padding-left:1.25rem}.help-page ol.flow li+li{margin-top:var(--space-2)}.tile-head{align-items:center;gap:var(--space-1);display:flex}.tile-head .tile-label,.activity-map{margin:0}.map-frame{aspect-ratio:4/3;background:var(--paper);border:var(--border);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden}@media (min-width:640px){.map-frame{aspect-ratio:16/9}}.map-frame .map-canvas{font:inherit;position:absolute;inset:0}.map-frame:not(.interactive) .maplibregl-canvas-container{cursor:default}.map-loading{color:var(--text-2);place-items:center;margin:0;font-size:.875rem;display:grid;position:absolute;inset:0}.map-attribution{box-sizing:border-box;max-width:100%;min-height:44px;padding:0 var(--space-3);background:var(--card);border-top:var(--border-thin);border-right:var(--border-thin);color:var(--text);flex-wrap:wrap;align-items:center;column-gap:.25em;margin:0;font-size:.75rem;font-weight:700;display:flex;position:absolute;bottom:0;left:0}.map-attribution>*{white-space:nowrap}.map-attribution a{min-height:44px;color:var(--link);align-items:center;display:inline-flex}.map-attribution a:focus-visible{outline-offset:-3px}.map-controls{top:var(--space-3);right:var(--space-3);gap:var(--space-2);display:flex;position:absolute}.map-controls button{min-width:44px;min-height:44px;padding:0 var(--space-3);background:var(--card);color:var(--text);border:var(--border-thin);border-radius:var(--radius);box-shadow:var(--shadow-sm);font:inherit;text-transform:uppercase;cursor:pointer;font-size:1rem;font-weight:700}.map-controls button:active{box-shadow:none;transform:translate(3px,3px)}.activity-map .legend{margin-top:var(--space-4);align-items:center}.map-zoom{align-items:center;min-height:44px;margin-left:auto;display:inline-flex}.map-zoom:disabled,.map-zoom:disabled:hover{opacity:.55;color:var(--link);cursor:progress;background:0 0;text-decoration-style:dashed}.activity-map .maplibregl-cooperative-gesture-screen{background:var(--scrim);font-size:.875rem}.activity-map .maplibregl-cooperative-gesture-screen>div{padding:var(--space-2)var(--space-3);background:var(--card);color:var(--text);border:var(--border-thin);font-weight:700}.activity-map .maplibregl-canvas:focus-visible{outline:var(--focus-ring);outline-offset:-6px}.rate-sessions{margin-bottom:var(--space-5)}.rate-sessions h2{margin-top:0}.rate-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.rate-row{border-top:var(--border-thin);padding-top:var(--space-3)}.rate-row[aria-busy=true]{opacity:.6}.rate-head{gap:var(--space-1)var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap;align-items:baseline;display:flex}.rate-pain{margin-top:var(--space-2)}.rate-pain>summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.rate-error{color:var(--alarm-text);border-left:6px solid var(--alarm);padding-left:var(--space-2)}.rpe-picker{gap:var(--space-1);border:0;grid-template-columns:repeat(10,minmax(0,1fr));min-width:0;margin:0;padding:0;display:grid}@media (max-width:560px){.rpe-picker{grid-template-columns:repeat(5,minmax(0,1fr))}}.rpe-option{min-height:44px;padding:var(--space-1);border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:relative}.rpe-option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.rpe-option:hover{background:var(--paper)}.rpe-option[data-selected]{background:var(--volt);color:var(--on-fill);border:var(--border)}.rpe-option:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.rpe-picker:disabled .rpe-option{cursor:progress}.rpe-number{font-family:var(--font-mono);font-size:1.1rem;font-weight:700}.rpe-anchor{overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;font-size:.7rem;line-height:1.2}@media (max-width:560px){.rpe-anchor{letter-spacing:-.01em;font-size:.65rem}}.field-hint{margin-bottom:var(--space-1);font-size:.85rem;display:block}.skip-reasons{gap:var(--space-2);margin:0 0 var(--space-2);border:0;flex-wrap:wrap;min-width:0;padding:0;display:flex}.skip-reasons legend{margin-bottom:var(--space-2)}.skip-reasons .chip{min-height:44px;padding:0 var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;align-items:center;display:inline-flex;position:relative}.skip-reasons .chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.skip-reasons .chip[data-selected]{background:var(--volt);color:var(--on-fill);border:var(--border)}.skip-reasons .chip:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.nav-count{margin-left:var(--space-1)}.logs-export{margin-block:var(--space-5)}.logs-export h2{margin-top:0}.logs-export-form{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}@media (max-width:639px){.logs-export-form .field:first-child{flex-basis:100%}}.logs-export .hint{color:var(--text-2);font-size:.8125rem}.log-week-head{gap:var(--space-3)var(--space-5);margin-bottom:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.log-list{margin:var(--space-5)0 0;gap:var(--space-4);padding:0;list-style:none;display:grid}.log-row{gap:var(--space-2);justify-items:start;display:grid}.log-row[aria-busy=true]{opacity:.6}.log-row p{margin:0}.log-row-head{gap:var(--space-1)var(--space-3);flex-wrap:wrap;align-items:baseline;display:flex}.log-parts{padding:0 0 0 var(--space-3);border-left:var(--border-w)solid var(--line);gap:var(--space-4);width:100%;margin:0;list-style:none;display:grid}@media (max-width:480px){.log-parts{border-left:0;padding-left:0}.log-part{padding-top:var(--space-3);border-top:var(--border-thin)}}.log-part{gap:var(--space-2);justify-items:start;display:grid}.log-part[aria-busy=true]{opacity:.6}.log-part p{margin:0}.log-part-number{border:var(--border-thin);width:1.6em;height:1.6em;font-family:var(--font-mono);place-items:center;font-weight:700;display:inline-grid}.log-day{font-family:var(--font-mono);text-transform:uppercase;font-weight:700}.badge.status[data-status=partial]{border-style:dashed}.badge.status[data-status=upcoming]{color:var(--text-2)}.log-form{gap:var(--space-4);width:100%;padding-top:var(--space-3);border-top:var(--border-thin);display:grid}.log-fields{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.field-label{font-size:.9375rem;font-weight:700}.outcome-picker{width:fit-content;margin:0;padding:0}.outcome-picker label{min-height:44px;padding:var(--space-1)var(--space-4);text-transform:uppercase;cursor:pointer;align-items:center;font-weight:700;display:inline-flex;position:relative}.outcome-picker label+label{border-left:var(--border)}.outcome-picker input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.outcome-picker label[data-selected]{background:var(--volt);color:var(--on-fill)}.outcome-picker label:has(input:focus-visible){outline:var(--focus-ring);outline-offset:-6px}.log-actions{gap:var(--space-4);align-items:center;display:flex}.log-prompt{margin-bottom:var(--space-5)}.log-prompt h2{margin-top:0}.log-buttons{gap:var(--space-2)var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.log-quick{font-weight:600}.log-date{gap:var(--space-2);flex-wrap:wrap;align-items:baseline;margin:0;display:flex}.log-catch-up{margin-bottom:var(--space-5);gap:var(--space-3);display:grid}.log-catch-up h2,.log-catch-up p{margin:0}.catch-up-list,.log-prompt-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.catch-up-list li{gap:var(--space-1)var(--space-3);padding-bottom:var(--space-2);border-bottom:var(--border-w)solid var(--line);flex-wrap:wrap;align-items:center;display:flex}.catch-up-actions{gap:var(--space-2);margin-left:auto;display:flex}.catch-up-skip-all{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.log-add h2{margin-top:0}.sheet-body>.log-form,.sheet-body>.log-add-sheet{padding:0}.log-steps{margin:var(--space-1)0 var(--space-2);padding-left:var(--space-5);font-family:var(--font-mono);font-size:.875rem}.sets-log{gap:var(--space-3);display:grid}.sets-log-exercise{padding:var(--space-3);border:var(--border-thin);background:var(--card);gap:var(--space-2);min-width:0;margin:0;display:grid}.sets-log-exercise legend{padding:0 var(--space-1);font-weight:700}.sets-log-rows{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.sets-log-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.sets-log-number{min-width:1.5em;font-weight:700}.sets-log-field{align-items:center;gap:var(--space-1);display:inline-flex}.sets-log-field input{width:5.5em}.sets-log-error{flex-basis:100%}.sets-log-exercise>.button{justify-self:start}@media (max-width:640px){.sets-log input,.sets-log .button,.sets-log .link-button{min-height:44px}}.log-buttons .link-button{align-items:center;min-height:44px;display:inline-flex}.activity h4{font-family:var(--font-display);text-transform:uppercase;margin:var(--space-4)0 var(--space-2);font-size:1.125rem;font-weight:800}.back-link{align-items:center;min-height:44px;font-weight:700;display:inline-flex}.activity-head h1{margin:var(--space-2)0}.activity-kind{align-items:center;gap:var(--space-1);margin:var(--space-3)0 0;padding:var(--space-1)var(--space-2);background:var(--card);border:var(--border-thin);box-shadow:var(--shadow-sm);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700;display:inline-flex}.activity-kind .muted{font-size:.75rem}.more-stats{margin-top:var(--space-2)}@media (max-width:639px){.activity .link-button,.planned-links a,.zones-add{align-items:center;min-height:44px;display:inline-flex}}.activity .table-scroll:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.activity figure.card{overflow-x:auto}.zones{margin:var(--space-3)0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.zone{align-items:center;gap:var(--space-3);font-family:var(--font-mono);grid-template-columns:11rem 1fr 7.5rem;font-size:.8125rem;display:grid}.zone-label .muted{font-size:.75rem}.zone-track{border:var(--border-thin);background:var(--paper);height:20px;display:block}.zone-bar{background-color:var(--fill-plain);border-right:var(--border-thin);height:100%;display:block}.zone-bar[data-zone="1"]{background-image:repeating-linear-gradient(90deg,var(--on-fill)0 1px,transparent 1px 8px)}.zone-bar[data-zone="2"]{background-image:repeating-linear-gradient(90deg,var(--on-fill)0 1px,transparent 1px 5px)}.zone-bar[data-zone="3"]{background-image:repeating-linear-gradient(45deg,var(--on-fill)0 2px,transparent 2px 5px)}.zone-bar[data-zone="4"]{background-image:repeating-linear-gradient(45deg,var(--on-fill)0 1.5px,transparent 1.5px 5px),repeating-linear-gradient(-45deg,var(--on-fill)0 1.5px,transparent 1.5px 5px)}.zone-bar[data-zone="5"]{background:var(--on-fill)}.zone-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width:480px){.zone{grid-template-columns:1fr auto}.zone-track{grid-area:2/1/auto/-1}}.route{margin:0}.route svg{background:var(--paper);border:var(--border-thin);max-width:100%;height:auto;display:block}.route-line{fill:none;stroke:var(--line);stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.route-start{fill:var(--volt);stroke:var(--line);stroke-width:2px}.route-finish{fill:var(--card);stroke:var(--line);stroke-width:2px}.route .legend{margin-top:var(--space-3)}.planned .data-table th[scope=row]{background:var(--card);color:var(--text);border-bottom:var(--border-w-thin)solid var(--grid)}.steps{padding-left:var(--space-5);font-family:var(--font-mono);margin:0;font-size:.8125rem}.notes{margin:var(--space-4)0 0}.files{margin:var(--space-3)0 0;gap:var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.files .button{background:var(--card);color:var(--text)}.files .button .muted{margin-left:var(--space-1);text-transform:none}.planned-links{gap:var(--space-3);flex-wrap:wrap;margin:0;display:flex}.rate-prompt{margin-top:var(--space-5)}.rate-prompt-line{margin:0 0 var(--space-3)}.rate-prompt-line:last-child{margin-bottom:0}.rate-prompt [role=alert]{color:var(--text);font-weight:700}.zones-estimate{margin:var(--space-2)0 0}.zones-add{font-weight:700}.multisport{margin-top:var(--space-3)}.multisport-line{align-items:center;column-gap:var(--space-2);flex-wrap:wrap;display:flex}.multisport-title{font-weight:700}.multisport-parts{align-items:center;column-gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.multisport-parts li:not(:last-child):after{content:"·";content:"·"/"";margin-left:var(--space-2)}.brick-workouts{margin:var(--space-3)0 0;padding-left:var(--space-5)}.multisport-parts li,.brick-workouts li{overflow-wrap:anywhere}.multisport a,.brick-workouts a{font-weight:700}@media (max-width:639px){.multisport a,.brick-workouts a{align-items:center;column-gap:var(--space-1);flex-wrap:wrap;min-height:44px;display:inline-flex}}.renewal-disclosure{padding:var(--space-3)var(--space-4);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);overflow-wrap:anywhere}.renewal-disclosure h2,.renewal-disclosure h3,.renewal-disclosure p{margin:0 0 var(--space-2)}.renewal-links{gap:var(--space-2)var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.renewal-links a{color:var(--link)}.renewal-consent{gap:var(--space-2);flex-direction:column;display:flex}.renewal-consent .banner{margin:0}.renewal-check{align-items:flex-start;gap:var(--space-2);cursor:pointer;flex-direction:row;font-weight:700;display:flex}.renewal-check input{width:24px;height:24px;min-height:24px;accent-color:var(--text);flex:none;margin:0}.billing-banner-wrap{max-width:1120px;padding:var(--space-3)var(--space-4)0;margin:0 auto}.billing-banner{overflow-wrap:anywhere;margin:0}.banner.warn.billing-banner:before{content:none}.billing-banner h2{margin:0 0 var(--space-1);font-size:inherit}.billing-banner p{margin:0 0 var(--space-1)}.billing-banner a{color:inherit}.billing-gate-actions{gap:var(--space-2)var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.billing-gate-actions a{color:var(--link)}.billing-refused{margin:var(--space-1)0 0;overflow-wrap:anywhere;font-size:.9em}.coach-lapse{overflow-wrap:anywhere}.banner.warn.coach-lapse:before{content:none}.coach-lapse h2{margin:0 0 var(--space-1);font-size:inherit}.coach-lapse p{margin:0 0 var(--space-2)}.coach-lapse-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.roster-locked{overflow-wrap:anywhere}.banner.warn.roster-locked:before{content:none}.roster-locked h2{margin:0 0 var(--space-1);font-size:inherit}.roster-locked p{margin:0 0 var(--space-2)}.roster-locked ul{margin:var(--space-2)0 0;padding-left:var(--space-4)}.checkout-return{overflow-wrap:anywhere;max-width:40rem}.checkout-return p{margin:0 0 var(--space-3)}.billing-section{overflow-wrap:anywhere}.billing-facts{gap:var(--space-2);margin:0 0 var(--space-3);display:grid}.billing-facts>div{gap:var(--space-1)var(--space-3);grid-template-columns:minmax(8rem,12rem) 1fr;display:grid}.billing-facts dt{font-weight:700}.billing-facts dd{margin:0}@media (max-width:639px){.billing-facts>div{grid-template-columns:1fr}}.billing-section .billing-inline{margin:0 0 var(--space-3)}.billing-actions,.billing-banner-actions{gap:var(--space-2)var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.billing-actions{margin:0 0 var(--space-3)}.billing-actions:empty{display:none}.billing-section a{color:var(--link)}.subscription-exit{overflow-wrap:anywhere}.subscription-exit h2{margin:0 0 var(--space-2)}.subscription-exit p{margin:0 0 var(--space-3)}.plan-picker{gap:var(--space-4);overflow-wrap:anywhere;flex-direction:column;max-width:1120px;display:flex}.picker-switches{gap:var(--space-3)var(--space-5);flex-wrap:wrap;display:flex}.picker-switch,.picker-plans{border:0;min-width:0;margin:0;padding:0}.picker-legend{margin-bottom:var(--space-2);padding:0;font-weight:700}.picker-seg{border:var(--border);background:var(--card);display:inline-flex}.picker-seg label{min-height:44px;padding:0 var(--space-4);color:var(--text);cursor:pointer;align-items:center;font-weight:700;display:flex;position:relative}.picker-seg label+label{border-left:var(--border)}.picker-seg input,.picker-card input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.picker-seg label[data-selected]{background:var(--inverse);color:var(--on-inverse)}.picker-seg label:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.picker-card:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.picker-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));display:grid}.picker-card{gap:var(--space-2);padding:var(--space-4);border:var(--border-thin);background:var(--card);color:var(--text);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;position:relative}.picker-card:hover{background:var(--paper)}.picker-card[data-selected]{border:var(--border);background:var(--volt);color:var(--on-fill);box-shadow:var(--shadow)}.picker-card label{gap:var(--space-1);cursor:pointer;flex-direction:column;display:flex}.picker-deal{padding:0 var(--space-2);border:var(--border-thin);align-self:flex-start;font-weight:700}.picker-badge{padding:0 var(--space-2);background:var(--inverse);color:var(--on-inverse);text-transform:uppercase;align-self:flex-start;font-size:.8em;font-weight:700}.picker-fit{color:var(--text);border:var(--border-w-thin)solid var(--text);background:0 0}.picker-hint{margin:0;font-weight:700}.picker-name{font-family:var(--font-display);text-transform:uppercase;font-size:1.6em;font-weight:900;line-height:1.1}.picker-who,.picker-eq{font-size:.9em}.picker-amount{font-family:var(--font-mono);font-size:1.6em;font-weight:700}.picker-details ul{margin:0 0 var(--space-2);padding-left:var(--space-5)}.picker-ai,.picker-note{margin:0}.picker-note a{color:var(--link)}.picker-subscribe{gap:var(--space-4);flex-direction:column;max-width:40rem;display:flex}.picker-subscribe p{margin:0}.billing-plans-page .plan-picker{margin-top:var(--space-4)}.billing-change-page{overflow-wrap:anywhere}.billing-change-page .plan-picker{margin-bottom:var(--space-4)}.billing-change-page a{color:var(--link)}.change-summary{padding:var(--space-3)var(--space-4);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text)}.change-summary p,.billing-change-page .banner p{margin:0 0 var(--space-2)}.change-summary p:last-child,.billing-change-page .banner p:last-child{margin:0}.coach-covers p{margin:0 0 var(--space-3)}.billing-banner-links{gap:var(--space-1)var(--space-4);flex-wrap:wrap;display:flex}.privacy{max-width:820px}.privacy-consent{gap:var(--space-2);flex-direction:column;display:flex}.privacy-consent .banner{margin:0}.privacy-check,.login .privacy-check{align-items:flex-start;gap:var(--space-2);cursor:pointer;flex-direction:row;font-weight:700;display:flex}.privacy-check input,.login .privacy-check input{width:24px;height:24px;min-height:24px;accent-color:var(--text);flex:none;margin:0}.privacy-link{color:var(--link)}.privacy-gate{max-width:820px}.privacy-gate-text{max-height:55vh;padding:var(--space-3)var(--space-4);border:var(--border);border-radius:var(--radius);background:var(--card);margin:var(--space-4)0;overflow-y:auto}.privacy-gate-text:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.privacy-gate-actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.login-legal{text-align:center}.login-legal a{color:var(--link)}.garmin-consent{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.garmin-consent p{margin:0}.country-prompt{align-items:flex-end;gap:var(--space-3);margin:var(--space-3)var(--space-4);flex-wrap:wrap;display:flex}.country-prompt p{flex-basis:100%;margin:0}.country-prompt label{gap:var(--space-1);flex-direction:column;display:flex}.philosophy{max-width:820px}.philosophy-toc{margin-bottom:var(--space-5)}.philosophy-toc summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.philosophy-toc ol{columns:2 260px;margin:var(--space-2)0 0;padding-left:var(--space-5)}.philosophy-toc a,.prose a{color:var(--link)}.philosophy-toc a[aria-current=location]{font-weight:900}.prose{line-height:1.6}.dash .prose h2{color:var(--text);margin:var(--space-7)0 var(--space-3);border-bottom:var(--border);background:0 0;padding:0;font-size:1.75rem;display:block}.prose h1{font-size:clamp(2rem,7vw,3rem)}.prose h3,.prose h4{margin:var(--space-5)0 var(--space-2)}.prose h2:target,.prose :focus{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.prose table{border-collapse:collapse;max-width:100%;margin:var(--space-4)0;display:block;overflow-x:auto}.prose th,.prose td{border:var(--border-thin);padding:var(--space-1)var(--space-2);text-align:left;vertical-align:top;background:var(--card)}.prose th{background:var(--inverse);color:var(--on-inverse)}.prose code{font-family:var(--font-mono);background:var(--card);border:var(--border-w-thin)solid var(--grid);padding:0 var(--space-1);font-size:.875em}.prose blockquote{margin:var(--space-4)0;padding:var(--space-2)var(--space-4);border-left:10px solid var(--line);background:var(--card)}.prose .plain-words{padding:var(--space-2)var(--space-3);border-left:6px solid var(--line);background:var(--card)}.philosophy-help{margin:0 0 var(--space-3)}.social-login{gap:var(--space-3);flex-direction:column;display:flex}.social-divider{align-items:center;gap:var(--space-3);color:var(--text-2);font-family:var(--font-mono);text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700;display:flex}.social-divider:before,.social-divider:after{content:"";border-top:var(--border-thin);flex:1}.provider-button{gap:var(--space-3);background:var(--card);color:var(--text);text-transform:none;letter-spacing:0;font-size:1rem}.provider-button.provider-apple{background:var(--inverse);color:var(--on-inverse)}.provider-button:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.provider-mark{flex:none;width:20px;height:20px}.mark-google .g-blue{fill:var(--brand-google-blue)}.mark-google .g-red{fill:var(--brand-google-red)}.mark-google .g-yellow{fill:var(--brand-google-yellow)}.mark-google .g-green{fill:var(--brand-google-green)}.mark-microsoft .ms-red{fill:var(--brand-microsoft-red)}.mark-microsoft .ms-green{fill:var(--brand-microsoft-green)}.mark-microsoft .ms-blue{fill:var(--brand-microsoft-blue)}.mark-microsoft .ms-yellow{fill:var(--brand-microsoft-yellow)}.account .card{margin-top:var(--space-5);max-width:720px}.account .card h2{margin-top:0}.identity-list{margin:var(--space-4)0;padding:0;list-style:none}.identity-list li{align-items:center;gap:var(--space-3);padding:var(--space-3)0;border-bottom:var(--border-w-thin)solid var(--grid);flex-wrap:wrap;display:flex}.identity-text{overflow-wrap:anywhere;flex-direction:column;flex:180px;min-width:0;display:flex}.link-providers{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.confirm-inline{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.confirm-question{font-weight:700}.invitations{margin-bottom:var(--space-5)}.invitations h2{margin-top:0}.invitation-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.invitation-list li{gap:var(--space-2);border-top:var(--border-thin);padding-top:var(--space-3);display:grid}.invitation-list li:first-child{border-top:0;padding-top:0}.invitation-list li[aria-busy=true]{opacity:.6}.invitation-list p{margin:0}.invitation-banner{margin:var(--space-3)var(--space-4);padding:var(--space-2)var(--space-3);border:var(--border);background:var(--warn);color:var(--on-fill);max-width:1200px}.invitation-banner p{margin:0}.invitation-banner a{color:var(--on-fill);font-weight:700}.my-team h3{margin-block:var(--space-4)var(--space-2)}.my-team-staff,.my-team-changes{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.my-team-staff>li{border-top:var(--border-thin);padding-top:var(--space-2)}.my-team-staff>li:first-child{border-top:0;padding-top:0}.my-team-staff p{margin:0}.my-team-person{align-items:center;gap:var(--space-1)var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.team-role{padding:0 var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700;line-height:1.6;display:inline-block}.my-team-sees,.my-team-never{margin:var(--space-1)0;padding-left:var(--space-5)}.my-team-switch{gap:var(--space-1);margin-block:var(--space-3);display:grid}.my-team-switch p{margin:0}.my-team-changes time{font-family:var(--font-mono);margin-right:var(--space-2);font-size:.85rem}.team-switcher{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.team-switcher label{gap:var(--space-1);flex-direction:column;min-width:0;max-width:100%;font-size:.9375rem;font-weight:700;display:flex}.team-switcher select{max-width:100%;min-height:44px;font:inherit;font-weight:400}.team-create{margin-bottom:var(--space-5)}.team-head h1{margin-bottom:var(--space-1);overflow-wrap:anywhere}.team-head p{margin-top:0}.team-section-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.team-section-head h2{margin:0}.staff-list{margin:0 0 var(--space-5);gap:var(--space-3);padding:0;list-style:none;display:grid}.staff-list>li{gap:var(--space-2);padding:var(--space-3);border:var(--border);background:var(--card);color:var(--text);min-width:0;display:grid}.staff-list>li[aria-busy=true]{opacity:.6}.staff-name{overflow-wrap:anywhere;margin:0}.staff-name .badge{margin-left:var(--space-2)}.role-chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.staff-list .form-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.team-invitations h3{margin-bottom:var(--space-1)}.role-picker{border:var(--border-thin);padding:var(--space-3);min-width:0;margin:0}.role-picker legend{padding:0 var(--space-1);font-weight:700}.role-picker ul{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.role-picker li{gap:var(--space-1);display:grid}.role-picker label{align-items:center;gap:var(--space-2);min-height:44px;display:flex}.role-picker input[type=checkbox]{flex:none;width:22px;height:22px}.role-picker .hint{color:var(--text-2);margin:0;font-size:.8125rem}.role-picker .field-error{margin:var(--space-2)0 0}.what-roles-do{border:var(--border-thin);padding:var(--space-3);background:var(--card);color:var(--text)}.what-roles-do summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.what-roles-do dl{margin:var(--space-2)0;gap:var(--space-2);display:grid}.what-roles-do dt{font-weight:700}.what-roles-do dd{margin:0}.what-you-can-do{margin:var(--space-1)0 0;padding-left:var(--space-5)}.join-link{margin-block:var(--space-5)}.join-link h3{margin-top:0}.join-link-switch,.bring-row{align-items:center;gap:var(--space-2);min-height:44px;display:flex}.join-link input[readonly]{width:100%;font-family:var(--font-mono);font-size:.85rem}.join-link .form-actions,.join-link-expiry{align-items:flex-end;gap:var(--space-2);margin-block:var(--space-3);flex-wrap:wrap;display:flex}.bring-list{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.bring-row span{overflow-wrap:anywhere}.bring-row .badge{margin-left:var(--space-2)}.team-preview{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.team-preview p{margin:0}.join-page{max-width:34rem}.group-athletes h3{margin-bottom:var(--space-2)}.group-filter select{max-width:100%}.group-people{margin:0 0 var(--space-5);gap:var(--space-2);border:0;min-width:0;padding:0;list-style:none;display:grid}.group-people li,.group-people .bring-row{overflow-wrap:anywhere}.group-people[aria-busy=true]{opacity:.6}.group-actions{gap:var(--space-2);margin-block:var(--space-3);top:var(--space-2);background:var(--card);z-index:1;display:grid;position:sticky}.group-actions p{margin:0}.group-actions .form-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.team-data{border-top:var(--border-thin);margin-top:var(--space-5);padding-top:var(--space-3)}.team-data h3{margin-block:0 var(--space-2)}.team-data-state{margin-block:var(--space-2);font-weight:600}.team-delete h3{color:var(--alarm-text)}.team-delete input{max-width:100%}.group-plans{gap:var(--space-2);justify-items:start;display:grid}.group-plans ul,.assign-notes{padding-left:var(--space-5);overflow-wrap:anywhere;margin:0}.assign-choice{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.assign-choice legend{margin-bottom:var(--space-1);font-weight:700}.assign-preview{margin-top:var(--space-5)}.assign-notes details summary{cursor:pointer}.assign-give{gap:var(--space-2);margin-top:var(--space-4);justify-items:start;display:grid}.assign-give p{margin:0}.group-plan-status{margin-left:var(--space-2);padding:0 var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700;display:inline-block}.group-plan-status.failed{background:var(--alarm);color:var(--on-alarm)}.team-roster-filters{align-items:end;gap:var(--space-2)var(--space-4);margin-block:var(--space-2)var(--space-4);flex-wrap:wrap;display:flex}.team-roster-filters label{gap:var(--space-1);font-weight:700;display:grid}.team-roster-filters select{max-width:100%;min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);font-weight:400}.team-roster-filters .roster-search{flex:16rem;min-width:0}.team-roster-groups,.team-roster-card{overflow-wrap:anywhere}.team-roster-card{cursor:default}.team-roster .sort-button{min-height:24px}.group-plan-updates{margin-top:var(--space-6);gap:var(--space-3);display:grid}.group-plan-updates h3,.group-plan-updates p{margin:0}.update-sessions{padding-left:var(--space-5);overflow-wrap:anywhere;margin:0}.update-preview,.update-last{gap:var(--space-3);display:grid}.demo-note{margin:0 0 var(--space-4);padding:var(--space-1)var(--space-3);background:var(--warn);color:var(--on-fill);border:var(--border-thin);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700;display:inline-block}.plans h1{font-size:clamp(2.25rem,8vw,3.5rem)}.plan-list{margin:var(--space-5)0 0;gap:var(--space-5);padding:0;list-style:none;display:grid}.plan-list .card{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.plan-list a{color:var(--text);font-family:var(--font-display);text-transform:uppercase;text-underline-offset:4px;font-size:1.5rem;font-weight:900;text-decoration-thickness:3px}.plan-list a:hover{background:var(--volt);color:var(--on-fill)}.plans-toolbar{gap:var(--space-3)var(--space-4);margin:var(--space-5)0 var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.filter-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-chip{font:inherit;padding:var(--space-1)var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;font-weight:700}.filter-chip[aria-pressed=true]{background:var(--volt);color:var(--on-fill)}.filter-chip:focus-visible{outline:3px solid var(--text);outline-offset:2px}.plans-search input{box-sizing:border-box;min-width:14rem;min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text)}.plans-search input:focus-visible{background:color-mix(in srgb,var(--volt)35%,var(--card))}.plans-table td{vertical-align:top;white-space:normal}.plans-table a{color:var(--link);font-weight:700}.plans-table .plan-size,.plans-table .plan-team-name{display:block}.your-plans h2{margin-top:0}.your-plans ul{margin:var(--space-2)0 0;padding-left:var(--space-4)}.other-plans{margin-top:var(--space-1)}.plans-team-filter{gap:var(--space-2)var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.plans-team-filter label{font-weight:700}.plans-team-filter select{max-width:100%;min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text)}.plan-header .plan-team{overflow-wrap:anywhere}.session-changes{margin-top:var(--space-4);border-top:var(--border);padding-top:var(--space-3)}.session-changes summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.session-changes ul{margin:0;padding:0;list-style:none}.session-changes li{padding:var(--space-2)0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}@media (max-width:639px){.plans-toolbar,.plans-search,.plans-search input{width:100%}.plans-search input{box-sizing:border-box;min-width:0}.plans-table,.plans-table tbody,.plans-table tr{display:block}.plans-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.plans-table tr{margin-bottom:var(--space-4);padding:var(--space-3);border:var(--border);background:var(--card)}.plans-table td{justify-content:space-between;gap:var(--space-3);padding:var(--space-1)0;border:0;display:flex}.plans-table .cell-value{text-align:right;min-width:0}.plans-table td:before{content:attr(data-label)/"";text-transform:uppercase;letter-spacing:.04em;flex:none;font-weight:700}}.button.secondary{background:var(--card);color:var(--text)}.button.danger{background:var(--alarm);color:var(--on-alarm)}.button.small{min-height:36px;padding:var(--space-1)var(--space-3);box-shadow:var(--shadow-sm);font-size:.8125rem}.button.small:active:not(:disabled){transform:translate(3px,3px)}.plan-header{gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.plan-header h1{margin:0}.plan-header>*{min-width:0}.plan-header form{flex:100%}.header-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.demand-profile{margin-top:var(--space-3)}.capacity-grid{border-collapse:collapse;background:var(--card);border:var(--border-thin);font-size:.875rem}.capacity-grid caption{text-align:left;font-family:var(--font-display);text-transform:uppercase;padding-bottom:var(--space-1);font-weight:800}.capacity-grid th,.capacity-grid td{padding:var(--space-1)var(--space-3);border-bottom:1px solid var(--grid);text-align:left}.capacity-grid thead th{border-bottom:var(--border-thin);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem}.capacity-grid tbody th{font-weight:400}.capacity-grid tr[data-level="3"] th{font-weight:700}.capacity-grid tr[data-level="0"] td{color:var(--text-2)}.capacity-grid .dots{min-width:3.5ch;font-family:var(--font-mono);letter-spacing:.1em;display:inline-block}.plan-form{gap:var(--space-4);max-width:520px;padding:var(--space-5);background:var(--card);border:var(--border);box-shadow:var(--shadow);display:grid}.plan-form h3{margin:0;font-size:1.75rem;font-weight:900}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{font-size:.9375rem;font-weight:700}.field textarea{min-height:88px}.field [aria-invalid=true]{border-color:var(--alarm);box-shadow:inset 6px 0 0 var(--alarm)}.field .hint,.add-part .hint{color:var(--text-2);font-size:.8125rem}.field-error{color:var(--alarm-text);font-size:.875rem;font-weight:700}.field-error:before{content:"! "}.plan-defaults{border:var(--border);margin:0;display:grid}.plan-defaults>div{gap:var(--space-3);padding:var(--space-2)var(--space-3);grid-template-columns:minmax(6rem,28%) 1fr;display:grid}.plan-defaults>div+div{border-top:var(--border)}.plan-defaults dt{color:var(--text-2);font-size:.875rem;font-weight:700}.plan-defaults dd{overflow-wrap:anywhere;margin:0}.plan-defaults-change{gap:var(--space-4);display:grid}.rpe-row{gap:var(--space-2);align-items:stretch;display:flex}.rpe-row input[type=number]{text-align:center;appearance:textfield;flex:none;width:6rem}.rpe-row input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.rpe-row input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.button.rpe-step{flex:none;width:44px;min-width:44px;padding:0;font-size:1.25rem;font-weight:900;line-height:1}.button.rpe-step[aria-disabled=true]{opacity:.55;box-shadow:none;cursor:default;border-style:dashed}.button.rpe-step[aria-disabled=true]:active{transform:none}.pack-row{gap:var(--space-2);align-items:center;display:flex}.pack-row input{flex:none;width:6rem}.form-actions{gap:var(--space-4);flex-wrap:wrap;display:flex}.form-foot{flex-basis:100%;min-width:0}.sheet-body .form-foot{align-items:center;min-height:44px;display:flex}.sheet-body .form-foot>.finding-preview{flex:1}.form-foot:has(>.finding-preview:empty){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;min-height:0;position:absolute;overflow:hidden}.plan-toolbar h2{margin:0}.plan-toolbar{gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;align-items:center;display:flex}.blocks{gap:var(--space-5)var(--space-4);margin:var(--space-5)0 0;flex-wrap:wrap;align-items:flex-start;padding:0;list-style:none;display:flex}.blocks>li{flex:360px;min-width:0}.block-card{background:var(--card);border:var(--border);box-shadow:var(--shadow);padding:var(--space-4)}.block-head{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.block-head h2{color:var(--text);background:0 0;margin:0;padding:0;font-size:1.625rem}.block-toggle{gap:var(--space-2);color:inherit;font:inherit;cursor:pointer;padding:var(--space-1)0;text-align:left;background:0 0;border:0;align-items:center;display:inline-flex}.block-toggle h2{margin:0}.block-toggle:hover h2{background:var(--volt);color:var(--on-fill)}.badge{padding:0 var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);font-family:var(--font-mono);text-transform:uppercase;white-space:nowrap;font-size:.75rem;font-weight:700;line-height:1.6;display:inline-block}.block-head .badge.type{background:var(--volt);color:var(--on-fill)}.session-card .badge.type,.library-item-facts .badge.type,.library-facts .badge.type{--chip:var(--modality-other);background:var(--chip);color:var(--on-fill)}.session-card .badge.type:before,.library-item-facts .badge.type:before,.library-facts .badge.type:before{content:"";background:var(--on-fill);width:.65em;height:.65em;margin-right:.45em;display:inline-block}.badge.type[data-type=run]{--chip:var(--modality-run)}.badge.type[data-type=strength]{--chip:var(--modality-strength)}.badge.type[data-type=ruck]{--chip:var(--modality-ruck)}.badge.type[data-type=conditioning]{--chip:var(--modality-conditioning)}.badge.type[data-type=bike]{--chip:var(--modality-bike)}.badge.type[data-type=row]{--chip:var(--modality-row)}.badge.type[data-type=mobility]{--chip:var(--modality-mobility)}.badge.type[data-type=run]:before{border-radius:50%}.badge.type[data-type=ruck]:before{clip-path:polygon(50% 0,100% 100%,0 100%)}.badge.type[data-type=conditioning]:before{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.badge.type[data-type=bike]:before{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.badge.type[data-type=row]:before{clip-path:polygon(50% 0,100% 38%,82% 100%,18% 100%,0 38%)}.badge.type[data-type=mobility]:before{clip-path:polygon(35% 0,65% 0,65% 35%,100% 35%,100% 65%,65% 65%,65% 100%,35% 100%,35% 65%,0 65%,0 35%,35% 35%)}.badge.intensity[data-intensity=hard]{background:var(--inverse);color:var(--on-inverse)}.badge.key{background:var(--volt);color:var(--on-fill)}.week-intensity{font-family:var(--font-mono);font-size:.875rem}.block-actions,.row-actions{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.week-rows{margin:var(--space-4)0 0;gap:var(--space-4);padding:0;list-style:none;display:grid}.week-row{border-top:var(--border);padding-top:var(--space-3);gap:var(--space-3);display:grid}.week-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.week-patterns{margin:var(--space-1)0 0;font-family:var(--font-mono);color:var(--text-2);font-size:.875rem}.week-head h3{color:var(--text);font-size:1.125rem}.session-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.session-card{gap:var(--space-2);border:var(--border-thin);background:var(--paper);box-shadow:var(--shadow-sm);padding:var(--space-1)var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.session-open{gap:var(--space-1)var(--space-2);font:inherit;color:inherit;text-align:left;cursor:pointer;padding:var(--space-2)0;background:0 0;border:0;flex-wrap:wrap;flex:200px;align-items:center;min-height:44px;display:flex}button.session-open:hover{text-decoration:underline;text-decoration-thickness:2px}.steps-mismatch{align-items:center;gap:var(--space-2,.5rem);border:2px solid var(--alarm);color:var(--alarm-text);flex-wrap:wrap;padding:.5rem .75rem;font-size:.875rem;display:flex}.badge.steps-mismatch-badge{border-color:var(--alarm);color:var(--alarm-text)}.session-notes,.session-steps{color:var(--text-2);flex-basis:100%;font-size:.8125rem}.session-notes-more{display:none}.brick-card{border-width:var(--border-w)}.brick-head{gap:var(--space-1)var(--space-2);flex-wrap:wrap;flex-basis:100%;align-items:center;display:flex}.badge.brick-badge{background:var(--inverse);color:var(--on-inverse)}.brick-parts{gap:var(--space-2);padding-left:var(--space-3);border-left:var(--border-w)solid var(--line);flex-basis:100%;display:grid}.brick-part{gap:var(--space-1)var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.brick-step{border:var(--border-thin);background:var(--card);width:1.6em;height:1.6em;color:var(--text);font-family:var(--font-mono);place-items:center;font-size:.75rem;font-weight:700;display:inline-grid}.brick-form-parts{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.brick-form-part{border:var(--border-thin);background:var(--card);min-width:0;margin:0;padding:0}.brick-form-part[data-open]{border:var(--border)}.part-legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.part-head{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2)var(--space-1)0;display:flex}.part-toggle{align-items:baseline;gap:var(--space-2);min-width:0;min-height:44px;padding:var(--space-1)var(--space-3);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;font-weight:700;display:flex}.part-toggle:hover{text-decoration:underline}.part-chevron{font-family:var(--font-mono);flex:none}.part-summary{overflow-wrap:anywhere;min-width:0}.part-body:not([hidden]){gap:var(--space-3);padding:0 var(--space-3)var(--space-3);display:grid}.brick-form-part[data-open] .part-head{border-bottom:var(--border-thin);margin-bottom:var(--space-3)}@media (max-width:639px){.part-head .session-more-button,.add-part .button{min-width:44px;min-height:44px}.part-body:not([hidden]){gap:var(--space-2);padding:0 var(--space-2)var(--space-2)}.brick-form-part[data-open] .part-head{margin-bottom:var(--space-2)}}.add-part{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.plan-findings{margin:0 0 var(--space-4)}.confirm{gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);border:var(--border-thin);border-left:10px solid var(--alarm);background:var(--card);flex-wrap:wrap;align-items:center;font-weight:700;display:flex}.schedule-panel{gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-4);background:var(--card);border:var(--border);box-shadow:var(--shadow);display:grid}.schedule-panel .banner,.schedule-panel p{margin:0}.schedule-head{gap:var(--space-2)var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:baseline;display:flex}.schedule-head h2{margin:0}.schedule-head a{color:var(--link);font-weight:700}.schedule-ok{color:var(--good-text);font-weight:700}.schedule-ok:before{content:"OK: "}.conflicts{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.conflict{gap:var(--space-2);padding:var(--space-3);border:var(--border-thin);border-left:10px solid var(--alarm);background:var(--paper);display:grid}.conflict[data-reason=missing_equipment]{border-left-style:double}.conflict-head{gap:var(--space-1)var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.conflict-reason:before{content:"! "}.conflict-fix{gap:var(--space-2)var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.conflict-fix p{margin:0}.conflict-actions{gap:var(--space-2)var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.schedule-off{margin:var(--space-3)0 0;padding-left:var(--space-4)}@media (max-width:640px){.conflict-actions .button{min-height:44px}.blocks>li{flex-basis:100%}.plan-form{padding:var(--space-4)}.form-actions .button{flex:auto}}.badge.finding-sev,.badge.finding-marker{border-left-width:6px}.badge[data-severity=warn]{border-color:var(--alarm);color:var(--alarm-text)}.badge[data-severity=suggest]{background:var(--warn);color:var(--on-fill)}.badge[data-severity=info]{border-style:dashed}.findings-summary{margin:0 0 var(--space-4)}.week-findings{gap:var(--space-2);padding:var(--space-2)var(--space-3);border:var(--border-thin);border-left:10px solid var(--line);background:var(--card);display:grid}.finding-counts{font-family:var(--font-mono);margin:0;font-size:.875rem;font-weight:700}.finding-items{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.finding-item{gap:var(--space-1)var(--space-2);text-align:left;font:inherit;color:inherit;flex-wrap:wrap;align-items:baseline;display:flex}button.finding-item{cursor:pointer;width:100%;min-height:44px;padding:var(--space-1)0;background:0 0;border:0;align-items:center}button.finding-item:hover span:last-child{text-decoration:underline}.finding-markers{gap:var(--space-1);flex-wrap:wrap;display:flex}.finding-marker-wrap{position:relative}button.finding-marker{cursor:pointer;text-align:left;white-space:normal;min-width:44px;max-width:100%;min-height:44px;font-size:.8125rem}.finding-group{gap:0;display:grid}.finding-group-head{gap:var(--space-1)var(--space-2);flex-wrap:wrap;align-items:baseline;display:flex}.finding-group button.finding-item{padding-left:var(--space-3)}.finding-code{font-family:var(--font-mono);color:var(--text-2);font-size:.75rem}.finding-tip{z-index:5;width:max-content;max-width:min(320px,80vw);padding:var(--space-2)var(--space-3);border:var(--border-thin);background:var(--inverse);color:var(--on-inverse);font-size:.8125rem;display:none;position:absolute;top:100%;right:0}.finding-marker-wrap:hover .finding-tip,.finding-marker-wrap:focus-within .finding-tip{display:block}.finding-panel{z-index:20;right:calc(var(--space-4) + var(--safe-right));bottom:calc(var(--space-4) + var(--safe-bottom));width:min(440px,calc(100vw - 2*var(--space-4)));max-height:calc(100vh - 2*var(--space-4) - var(--safe-top) - var(--safe-bottom));gap:var(--space-2);padding:var(--space-4);border:var(--border);border-left:10px solid var(--line);background:var(--card);box-shadow:var(--shadow-lg);display:grid;position:fixed;overflow-y:auto}.finding-panel[data-severity=warn]{border-left-color:var(--alarm)}.finding-panel h2{margin:0;font-size:1.25rem}.finding-panel p{margin:0}.finding-panel a{color:var(--link);font-weight:700}.finding-panel-head{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.finding-panel-head .button{margin-left:auto}.finding-message,.finding-fix{font-weight:700}.finding-details summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.finding-data{gap:var(--space-1);margin:0;font-size:.875rem;display:grid}.finding-data div{gap:var(--space-2);display:flex}.finding-data dt{font-family:var(--font-mono);text-transform:uppercase}.finding-data dd{margin:0}.finding-preview{gap:var(--space-2);display:grid}.finding-preview p{margin:0}.finding-preview .finding-item{padding:var(--space-2);border:var(--border-thin);background:var(--paper)}.preview-toggle{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-1)var(--space-2);border:var(--border-thin);background:var(--paper);color:var(--text);font:inherit;text-align:left;cursor:pointer;display:flex}.preview-toggle[data-severity=warn]{border-left:6px solid var(--alarm)}.preview-toggle[data-severity=suggest]{background:var(--warn);color:var(--on-fill)}.preview-toggle[data-severity=info]{border-style:dashed}.preview-toggle>span:last-child{flex:none;text-decoration:underline}.finding-preview[data-compact] .preview-list:not([hidden]){gap:var(--space-2);max-height:35vh;display:grid;overflow-y:auto}.readonly-note{padding:var(--space-2)var(--space-3);border:var(--border-thin);background:var(--paper);color:var(--text-2);margin:0}.badge.status[data-status=active]{background:var(--volt);color:var(--on-fill)}.badge.status[data-status=draft]{border-style:dashed}.badge.status[data-status=archived]{color:var(--text-2)}.checklist{margin:var(--space-3)0;gap:var(--space-2);padding:0;list-style:none;display:grid}.checklist-item{gap:var(--space-2);align-items:baseline;display:flex}.checklist-item[data-done=false]{font-weight:700}.checklist-mark{font-family:var(--font-mono)}.checklist-fix{margin-block:var(--space-1);margin-inline-start:var(--space-2);display:inline-block}.inline-fix{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:inline-flex}.plan-details{margin-top:var(--space-2)}.plan-details summary{cursor:pointer;color:var(--text);font-weight:700}.plan-builder{--week-switcher-clear:4.5rem}.week-switcher{top:var(--safe-top);z-index:5;gap:var(--space-2);margin:var(--space-3)0;padding:var(--space-2)0;background:var(--paper);border-bottom:var(--border-thin);display:grid;position:sticky}.week-switcher-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.week-switcher .button[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}.week-switcher-label{color:var(--text)}.week-switcher-nav{flex-wrap:nowrap}.week-switcher-row:not(.week-switcher-nav){scrollbar-width:none;flex-wrap:nowrap;margin:-3px;padding:3px;overflow-x:auto}.week-switcher-row:not(.week-switcher-nav)>*{flex-shrink:0}.week-switcher-row:not(.week-switcher-nav)::-webkit-scrollbar{display:none}@media (max-width:399px){.week-switcher .chip-button{padding:0 var(--space-2)}}@media (max-width:339px){.week-switcher .chip-button{padding:0 var(--space-1);font-size:.8125rem}}@media (min-width:640px){.week-switcher{flex-wrap:wrap;align-items:center;display:flex}.week-switcher-nav{flex:none}.week-switcher-nav .week-switcher-label{flex:0 auto}.week-switcher-row:not(.week-switcher-nav){flex:auto}.week-switcher .phase-strip{flex-basis:100%}}.week-switcher-nav .week-switcher-label{text-overflow:ellipsis;white-space:nowrap;text-align:center;flex:1;min-width:0;overflow:hidden}.week-switcher-all{margin-left:auto}.week-switcher-row:not(.week-switcher-nav)>.week-switcher-all{text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:4.5rem;overflow:hidden}.chip-button{font:inherit;min-height:2.25rem;padding:0 var(--space-3);border:var(--border-thin);background:var(--paper);color:var(--text);cursor:pointer;font-size:.875rem}.chip-button[aria-pressed=true],.chip-button[aria-checked=true]{background:var(--text);color:var(--paper)}.add-from{gap:var(--space-2);margin-bottom:var(--space-3);scroll-margin-top:calc(var(--safe-top) + var(--week-switcher-clear,0px));flex-wrap:wrap;display:flex}@media (max-width:639px){.week-head .button.small{min-height:44px}}.phase-strip{gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}.phase-strip li{flex-basis:0;min-width:0}.phase{text-align:left;width:100%;min-height:2.25rem;font:inherit;padding:var(--space-1)var(--space-2);border:var(--border-thin);background:var(--paper);color:var(--text);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;display:grid;overflow:hidden}.phase[aria-current=step]{border-width:3px;font-weight:700}.week-row.collapsed{padding-top:var(--space-2)}.week-collapsed{gap:var(--space-2);text-align:left;width:100%;min-height:2.75rem;font:inherit;padding:var(--space-2);border:var(--border-thin);color:var(--text);cursor:pointer;background:0 0;flex-wrap:wrap;align-items:center;display:flex}.session-actions{gap:var(--space-1);align-items:center;display:flex}.session-more{position:relative}.session-menu{right:0;top:calc(100% + var(--space-1));z-index:5;border:var(--border-thin);background:var(--paper);min-width:14rem;box-shadow:var(--shadow-sm);gap:0;display:grid;position:absolute}.session-menu ul{margin:0;padding:0;list-style:none}.session-menu .muted{padding:var(--space-1)var(--space-2);margin:0}.session-menu-item{width:100%;min-height:44px;padding:var(--space-1)var(--space-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:block}.session-menu-item:hover:not(:disabled),.session-menu-item:focus-visible{text-decoration:underline}.session-menu-item:disabled{color:var(--text-2);cursor:default}.session-menu-item.danger{border-top:var(--border-thin)}.move-effect{color:var(--text-2);font-size:.8125rem}.move-effect[data-clean=false]{color:var(--text);font-weight:700}.preview-lead{margin:0}div.session-open{cursor:default}@media (max-width:639px){.session-card .session-actions{flex-basis:100%;order:-1;justify-content:flex-end}}.keep-form{gap:var(--space-2);display:grid}.kept-findings{gap:var(--space-2);margin:var(--space-2)0;display:grid}.kept-findings ul{padding-left:var(--space-4);gap:var(--space-2);margin:0;display:grid}.keep-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.availability-note{gap:var(--space-2);margin:0 0 var(--space-4);padding:var(--space-3);border:var(--border-thin);background:var(--card);display:grid}.availability-note ul,.availability-note p{margin:0}.availability-note ul{padding-left:var(--space-4)}.lift-loads-panel{margin-bottom:var(--space-5);padding:var(--space-4)}.lift-loads-panel summary{cursor:pointer;font-weight:600}.lift-loads{gap:var(--space-2);margin:var(--space-3)0 0;padding-left:var(--space-4);display:grid}.phase-timeline .phase{cursor:default}.phase-timeline .phase[data-focus=deload],.phase-timeline .phase[data-focus=taper]{border-style:dashed}.plan-form fieldset.copy-targets,.plan-form fieldset.copy-lighter{border:var(--border-thin);padding:var(--space-3);gap:var(--space-2);margin:0;display:grid}.plan-form fieldset legend{color:var(--text);padding:0 var(--space-1);font-weight:700}.copy-weeks{gap:var(--space-1);max-height:16rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.copy-weeks .choice,.copy-targets>.choice,.copy-lighter>.choice{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:44px;display:flex}.copy-lighter-fields{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.copy-summary p{margin:0 0 var(--space-1)}.copy-targets .choice input,.copy-lighter .choice input{flex:none;width:auto}.plan-header.compact>div{flex:100%}.plan-details-row{gap:var(--space-2)var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.plan-header.compact .header-actions{margin-top:var(--space-3)}.plan-header.compact .header-actions[hidden]{display:none}.schedule-panel.collapsible>details{gap:var(--space-3);display:grid}.schedule-panel.collapsible summary{cursor:pointer;font-family:var(--font-display);text-transform:uppercase;font-size:1.25rem}.schedule-panel.collapsible:has(>details:not([open])){padding-block:var(--space-3)}.schedule-status{font-weight:700}.plan-ai-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.sheet-backdrop{z-index:50;background:var(--scrim);align-items:stretch;height:100%;display:flex;position:fixed;inset:0}.sheet{width:100%;min-height:0;padding:var(--safe-top)var(--safe-right)0 var(--safe-left);background:var(--card);color:var(--text);flex-direction:column;display:flex}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);border-bottom:var(--border);display:flex}.sheet-head h2{min-width:0;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:1.375rem;font-weight:900;line-height:1.1;overflow:hidden}.sheet-close{width:44px;height:44px;font:inherit;color:var(--text);border:var(--border-thin);border-radius:var(--radius);cursor:pointer;background:0 0;flex:none;padding:0;font-size:1.5rem;line-height:1}.sheet:focus{outline:none}.sheet-close:focus-visible{background:var(--volt);color:var(--on-fill)}.sheet-body{padding:var(--space-4)var(--space-4)0;overscroll-behavior:contain;flex-direction:column;flex:1;display:flex;overflow-y:auto}.sheet-body:not(:has(.form-actions)){padding-bottom:calc(var(--space-4) + var(--safe-bottom))}.sheet-body>*{flex:none}.sheet-body>:last-child:not(.form-actions){flex-direction:column;flex:1 0 auto;display:flex}.sheet-body>:last-child>.form-actions,.sheet-body>.form-actions:last-child{margin-top:auto}.sheet-body>:last-child>:is(button,a){align-self:flex-start}.sheet-body h3{margin:0;font-size:1.25rem;font-weight:800}.sheet-body .plan-form,.sheet-body>.card{max-width:none;box-shadow:none;background:0 0;border:0;padding:0}.sheet-body .plan-form>.banner{margin:0}.sheet-body .plan-form>h3,.sheet-body>.card>:is(h2,h3):first-child{display:none}.sheet-body .form-actions{z-index:1;margin-inline:calc(-1*var(--space-4));padding:var(--space-3)var(--space-4)calc(var(--space-3) + var(--safe-bottom));background:var(--card);border-top:var(--border);margin-bottom:0;position:sticky;bottom:0}.sheet :is(.chip-button,.button.small){min-height:44px}.team-event-note{white-space:pre-line;overflow-wrap:anywhere;display:block}.team-event-off{margin-inline:var(--space-1);padding:0 var(--space-2);border:var(--border-thin);background:var(--warn);color:var(--on-fill);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700;line-height:1.6;display:inline-block}.team-event[data-cancelled] strong,.sched-events [data-cancelled] strong{text-decoration:line-through}.team-event-notes{margin-top:var(--space-1);white-space:pre-line;overflow-wrap:anywhere}.team-events-past{margin-top:var(--space-4)}.team-events-past summary{cursor:pointer;font-weight:700}.week-strip-event,.sched-event{color:inherit;font-size:.875rem;line-height:1}.sched-events{margin-bottom:var(--space-3)}.sched-events li{overflow-wrap:anywhere}.today-team-event{margin:0 0 var(--space-2);overflow-wrap:anywhere;font-weight:700}.team-event-group{margin-left:var(--space-5)}.today>*+*{margin-top:var(--space-4)}.today .dash-head{margin-bottom:0}.today .card h2{margin:0 0 var(--space-3)}.today-tiles{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.today-tiles>li{min-width:0;display:flex}.today-tiles>.today-tile-wide{grid-column:span 2}.today-tile{align-items:flex-start;gap:var(--space-1);width:100%;min-height:44px;padding:var(--space-2)var(--space-3);border:var(--border);box-shadow:var(--shadow-sm);background:var(--card);color:var(--text);font:inherit;text-align:left;flex-direction:column;margin:0;text-decoration:none;display:flex}button.today-tile,a.today-tile{cursor:pointer}a.today-tile:hover .today-tile-label,button.today-tile:hover .today-tile-label{text-decoration:underline}.today-tile:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.today-tile[aria-expanded=true]{box-shadow:none;transform:translate(3px,3px)}.today-tile[data-todo]{border-style:dashed}.today-tile-label{font-family:var(--font-mono);text-transform:uppercase;color:var(--text-2);font-size:.75rem;font-weight:700}.today-tile-value{font-family:var(--font-display);font-size:1.5rem;font-weight:800;line-height:1.1}.today-tile-value .readiness-marker strong{font-size:1.5rem}.today-tile-detail{color:var(--text-2);font-size:.875rem}.today-glance .garmin-attribution{margin:0 0 var(--space-2)}.today-details{margin-top:var(--space-3)}.readiness-details p,.load-details p{margin:0 0 var(--space-2)}.today-tile-unit{font-family:var(--font-mono);font-size:.75rem;font-weight:700}.load-details-numbers{font-size:1.125rem}.load-details-links{gap:var(--space-2)var(--space-4);flex-wrap:wrap;display:flex}.load-details-links a{align-items:center;min-height:44px;display:inline-flex}.load-regions{margin:var(--space-4)0 var(--space-3);padding-top:var(--space-3);border-top:var(--border-thin)}.load-regions h3{margin:0 0 var(--space-2)}.region-rows{margin:var(--space-3)0;gap:var(--space-3);padding:0;list-style:none;display:grid}.region-row{gap:var(--space-1);display:grid}.region-label{font-weight:700}.region-track{border:var(--border-thin);background:var(--paper);height:20px;display:block;position:relative}.region-fill{background-color:var(--fill-plain);background-image:repeating-linear-gradient(45deg,var(--on-fill)0 2px,transparent 2px 6px);position:absolute;inset:0 auto 0 0}.region-planned{border:var(--border-w-thin)dashed var(--line);border-left:0;position:absolute;top:2px;bottom:2px}.region-usual{background:var(--line);width:3px;margin-left:-1.5px;position:absolute;top:-5px;bottom:-5px}.region-text{font-size:.9375rem}.region-gap,.load-regions .region-footer{margin:0 0 var(--space-2)}@media (min-width:641px){.region-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(12rem,1.2fr) minmax(8rem,1fr) minmax(12rem,1.4fr)}.region-text{grid-column:3}}.today-session{padding:var(--space-3)0}.today-session+.today-session{border-top:var(--border-thin)}.today-session h3{align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);flex-wrap:wrap;font-size:1.5rem;display:flex}.today-workout h4{margin:var(--space-3)0 var(--space-1)}.today-meta{margin:0;font-weight:700}.today-steps{margin:var(--space-2)0;padding-left:var(--space-5);font-family:var(--font-mono);font-size:.875rem}.today-more-steps{min-height:44px}.today-chip{padding:0 var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700;line-height:1.6;display:inline-block}.today-chip[data-key]{background:var(--volt);color:var(--on-fill)}.today-chip[data-intensity=hard]{background:var(--inverse);color:var(--on-inverse)}.today-chip[data-status=missed]{border-style:dashed}.today-tomorrow{margin:var(--space-3)0 0;padding-top:var(--space-3);border-top:var(--border-thin)}.today-rest{font-weight:700}.today-lighter{border-left:var(--border);padding-left:var(--space-3);font-weight:600}.today-change{gap:var(--space-2)var(--space-3);flex-wrap:wrap;display:flex}.today-change:empty{display:none}.heads-list{margin:0;padding:0;list-style:none}.heads-item{padding:var(--space-2)0 var(--space-2)var(--space-3);border-left:var(--border-w-thin)solid var(--line)}.heads-item+.heads-item{margin-top:var(--space-2)}.heads-item[data-level=alarm]{border-left:6px solid var(--alarm)}.heads-item[data-level=warn]{border-left:6px solid var(--line)}.heads-line{margin:0;font-weight:700}.heads-mark{width:1.25em;font-family:var(--font-mono);display:inline-block}.heads-actions{align-items:center;gap:var(--space-1)var(--space-4);flex-wrap:wrap;margin:0;display:flex}.heads-actions>a,.heads-actions>.link-button{align-items:center;min-height:44px;display:inline-flex}.heads-more a+a:before{content:" · ";color:var(--text-2)}.heads-why{margin-top:var(--space-1)}.heads-why p,.explanation p{margin:var(--space-1)0}.week-strip{gap:var(--space-1);margin:var(--space-3)0;grid-template-columns:repeat(7,minmax(0,1fr));padding:0;list-style:none;display:grid}.week-strip li{display:flex}.week-strip-day{align-items:center;gap:var(--space-1);width:100%;min-height:64px;padding:var(--space-2)0;border:var(--border-thin);background:var(--card);color:var(--text);flex-direction:column;text-decoration:none;display:flex}.week-strip-day:hover .week-strip-name{text-decoration:underline}.week-strip-day:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.week-strip li.is-today .week-strip-day{background:var(--volt);color:var(--on-fill);border:var(--border)}.week-strip-name{font-family:var(--font-mono);text-transform:uppercase;font-size:.75rem;font-weight:700}.week-strip-marks{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.week-strip-session{border:var(--border-thin);background:var(--fill-plain);width:1.5rem;height:1.5rem;color:var(--on-fill);justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:inline-flex}.week-strip-session[data-intensity=hard]{border-width:var(--border-w)}.week-strip-session[data-status=done]{background:var(--inverse);color:var(--on-inverse)}.week-strip-session[data-status=missed]{background:var(--warn)}.week-strip-session[data-status=planned]{border-style:dashed}.week-strip-rest{color:var(--text-2);font-size:.75rem}.is-today .week-strip-rest{color:var(--on-fill)}.today-links{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (max-width:640px){.today-tiles{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.today-tiles>.today-tile-wide{grid-column:1/-1}.today-session h3{font-size:1.25rem}.today-change>*{text-align:center;flex:100%}}.cal-nav{gap:var(--space-2);flex-wrap:wrap;display:flex}.card-head h3{margin:0}.planned-calendar td{vertical-align:top;height:56px;padding:var(--space-1);text-align:left}.planned-calendar td.today{border-color:var(--line);border-width:var(--border-w);background:var(--card)}.planned-calendar .cal-day{margin-bottom:var(--space-1);font-weight:700;display:block}.agenda{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.agenda li{align-items:baseline;gap:var(--space-2);border-top:var(--border-thin);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.agenda-day{font-family:var(--font-mono);min-width:6ch}.agenda-markers{gap:var(--space-1);display:inline-flex}.export-fields{gap:var(--space-4);flex-wrap:wrap;display:flex}.cal-error{color:var(--alarm-text);border-left:6px solid var(--alarm);padding-left:var(--space-2)}.import-help summary{cursor:pointer;font-weight:700}.import-help dt{margin-top:var(--space-2);font-weight:700}.import-help dd{margin:0}.plan-schedule{margin-bottom:var(--space-5)}.sched-head,.sched-nav{align-items:center;gap:var(--space-2)var(--space-3);flex-wrap:wrap;display:flex}.sched-head h2,.sched-nav h3{margin:0 auto 0 0}.sched-week,.sched-month{margin:var(--space-3)0;gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));padding:0;list-style:none;display:grid}.sched-head-day{text-align:center;font-size:.8rem;font-weight:700}.sched-day{width:100%;min-height:48px;padding:var(--space-1)0;border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;font:inherit;flex-direction:column;align-items:center;gap:2px;display:flex}.sched-week .sched-day{min-height:64px}.sched-day:hover{background:var(--paper)}.sched-day[data-today]{border:var(--border)}.sched-day[aria-pressed=true]{background:var(--volt);color:var(--on-fill);border:var(--border)}.sched-day:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.sched-weekday{font-size:.75rem}.sched-date{font-family:var(--font-mono);font-weight:700}.sched-markers{flex-wrap:wrap;justify-content:center;gap:2px;min-height:10px;display:inline-flex}.sched-day-panel h3{margin:var(--space-2)0}.sched-sessions li{border-top:0;padding-top:0;display:block}.sched-session{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer;display:flex}.sched-session:hover .sched-session-text strong{text-decoration:underline}.sched-session[aria-expanded=true]{border:var(--border)}.sched-session:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.sched-session-text{flex:1;min-width:0}.sched-session-open{font-family:var(--font-mono)}.sched-details{padding:var(--space-3)var(--space-2)var(--space-2)}.sheet-body>.sched-details{padding:0}.sched-details h4{margin:var(--space-2)0 var(--space-1)}.sched-details-chips:empty{display:none}.sched-workout-meta{margin:0;font-weight:700}.sched-notes p{white-space:pre-line;margin:0}.sched-details-actions{gap:var(--space-2);margin:var(--space-3)0 0;flex-wrap:wrap;display:flex}@media (max-width:480px){.plan-schedule.card{padding-left:var(--space-2);padding-right:var(--space-2)}.sched-week,.sched-month{gap:2px}}.readiness-marker{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.readiness-shape{fill:var(--fill-plain);stroke:var(--line);stroke-width:1.5px;flex:none}.readiness-marker[data-state=green] .readiness-shape{fill:var(--good-text)}.readiness-marker[data-state=amber] .readiness-shape{fill:var(--warn)}.readiness-marker[data-state=red] .readiness-shape{fill:var(--alarm)}.readiness-marker[data-state=unknown] .readiness-shape{fill:none}.readiness-review{font-weight:700}.readiness-card h2{margin:0 0 var(--space-2)}.readiness-card .readiness-state{font-size:1.25rem}.readiness-card p{margin:var(--space-2)0}.readiness-reasons{margin:var(--space-2)0;padding-left:var(--space-5)}.readiness-signals{margin-top:var(--space-3)}.readiness-signals summary{cursor:pointer;font-weight:700}.readiness-strip{gap:var(--space-1);margin:var(--space-3)0;grid-template-columns:repeat(14,minmax(0,1fr));display:grid}.readiness-day{align-items:center;gap:var(--space-1);padding:var(--space-2)0;background:var(--card);min-width:0;color:var(--text);border:var(--border-thin);font:inherit;cursor:pointer;flex-direction:column;font-size:.75rem;display:flex}.readiness-day[aria-pressed=true]{background:var(--inverse);color:var(--on-inverse);border-color:var(--line)}.readiness-day:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.readiness-day[aria-pressed=true] .readiness-shape{stroke:var(--on-inverse)}@media (max-width:640px){.readiness-strip{grid-template-columns:repeat(7,minmax(0,1fr))}}.profile h1{overflow-wrap:anywhere;font-size:clamp(2rem,7vw,3.25rem)}.profile-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;display:grid}.profile-stack{gap:var(--space-5);scroll-margin-top:var(--space-5);align-content:start;display:grid}.profile-stack:focus:not(:focus-visible){outline:none}.profile-section{gap:var(--space-3);min-width:0;display:grid}.profile-section .banner{margin:0}.profile-section-head{gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.profile-section-head h2{margin:0}.read-only-note,.profile-hint{padding:var(--space-2)var(--space-3);border:var(--border-w-thin)dashed var(--line);color:var(--text-2);margin:0;font-size:.875rem}.read-only-note:before{content:"Read only: ";color:var(--text);font-weight:700}.profile-facts{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.profile-facts dt{color:var(--text-2);text-transform:uppercase;font-size:.8125rem;font-weight:700}.profile-facts dd{font-family:var(--font-mono);overflow-wrap:anywhere;margin:0}.profile-rows{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.profile-row{gap:var(--space-2);border:var(--border-thin);background:var(--paper);box-shadow:var(--shadow-sm);padding:var(--space-2)var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.profile-row-body{gap:var(--space-1)var(--space-2);flex-wrap:wrap;flex:200px;align-items:center;min-width:0;display:flex}.profile-row .row-actions{margin-top:0}.profile-row-detail{color:var(--text-2);flex-basis:100%;font-size:.8125rem}.field-row{gap:var(--space-3);grid-template-columns:2fr 1fr;display:grid}.week-summary{gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.week-summary li{padding:var(--space-1)2px;border:var(--border-thin);font-family:var(--font-mono);text-align:center;justify-items:center;gap:2px;font-size:.75rem;display:grid}.week-summary .day{text-transform:uppercase;font-weight:700}.week-summary .windows{color:var(--text-2);font-size:.6875rem}.week-summary .open{background:var(--card);box-shadow:var(--shadow-sm)}.week-summary .rest{background:repeating-linear-gradient(135deg,var(--card)0 4px,var(--grid)4px 8px)}.profile-create{gap:var(--space-3);justify-items:start;display:grid}@media (max-width:640px){.week-summary{grid-template-columns:repeat(4,minmax(0,1fr))}}.me-page{max-width:56rem}.me-nav ul{gap:var(--space-2);margin:0 0 var(--space-5);flex-wrap:wrap;padding:0;list-style:none;display:flex}.me-nav a{padding:var(--space-1)var(--space-3);border:var(--border);color:var(--text);display:inline-block}.me-section{gap:var(--space-4);margin-bottom:var(--space-5);scroll-margin-top:var(--space-5);display:grid}.me-section>.card,.me-section>.banner{margin:0}#me-connected-apps{min-height:12rem}#me-account{min-height:14rem}.day-grid{margin:var(--space-3)0;gap:var(--space-2);padding:0;list-style:none;display:grid}.day-row{border:var(--border-thin);padding:var(--space-2)var(--space-3);gap:var(--space-2);min-width:0;display:grid}.day-row.open{background:var(--card);box-shadow:var(--shadow-sm)}.day-row.rest{background:repeating-linear-gradient(135deg,var(--card)0 4px,var(--grid)4px 8px)}.day-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.day-head strong,.day-toggle span{white-space:nowrap}.day-toggle,.day-split{align-items:center;gap:var(--space-2);cursor:pointer;min-height:2.75rem;display:inline-flex}.day-row input[type=checkbox]{flex:none;width:1.5rem;height:1.5rem}.day-body{gap:var(--space-3);flex-wrap:wrap;align-items:flex-start;display:flex}.day-minutes{gap:var(--space-1);display:grid}.day-minutes .presets{gap:var(--space-1);flex-wrap:wrap;display:flex}.day-minutes .presets .button{min-width:44px;min-height:44px}.rest-label{margin-right:auto;margin-left:var(--space-2);color:var(--text-2)}.day-time select{min-width:10rem}.day-minutes .presets .button[aria-pressed=true]{background:var(--volt);color:var(--on-fill)}.minutes-field,.day-time{gap:2px;font-size:.8125rem;display:grid}.minutes-field input{max-width:7rem}.day-split{flex-basis:100%}@media (min-width:900px){.day-row{grid-template-columns:12rem 1fr;align-items:start}}.away-dates{margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--border-w-thin)dashed var(--line)}.away-dates .profile-section.card{box-shadow:none;background:0 0;border:0;padding:0}.away-dates .profile-section-head h3{margin:0}.away-form .field-row{grid-template-columns:repeat(2,minmax(0,1fr))}.away-form .field,.away-form input,.away-form select{min-width:0;max-width:100%}.away-dates .button.small,.away-form .button.small,.away-form .form-actions .button{min-width:44px;min-height:44px}@media (max-width:480px){.away-form .field-row{grid-template-columns:minmax(0,1fr)}}@media (max-width:639px){.availability>form>.form-actions{z-index:1;padding-block:var(--space-3)calc(var(--space-3) + var(--safe-bottom));background:var(--card);border-top:var(--border);position:sticky;bottom:0}}.more-options summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.team-name-hint{overflow-wrap:anywhere;margin:0}.team-name{font-family:var(--font-mono)}.your-name-form{gap:var(--space-3);max-width:28rem;display:grid}.rule-list,.rule-changes{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.rule-row{gap:var(--space-2);padding:var(--space-4);border:var(--border);background:var(--card);display:grid}.rule-row[data-governed=false]{color:var(--muted);border-style:dashed}.rule-head{gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.rule-head h3,.rule-row p{margin:0}.rule-evidence[data-evidence=heuristic]{border-style:dashed}.rule-form{gap:var(--space-3);display:grid}.rule-toggle,.rule-check{gap:var(--space-2);align-items:center;min-height:44px;font-weight:700;display:flex}.rule-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.rule-history{margin-top:var(--space-4);gap:var(--space-2);display:grid}.rule-changes li{padding:var(--space-3);border:var(--border);background:var(--card)}.rule-kept{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.rule-overridden{border-left:var(--border-thin);padding-left:var(--space-2)}.team-rules-group{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;max-width:100%;font-size:.9375rem;font-weight:700;display:flex}.team-rules-group select{max-width:100%;min-height:44px;font:inherit;font-weight:400}.safety{margin-bottom:var(--space-5);border-color:var(--alarm)}.safety h2{background:var(--alarm);color:var(--on-alarm);margin-top:0}.safety-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.safety-alert{gap:var(--space-2);border-top:var(--border-thin);padding-top:var(--space-3);display:grid}.safety-alert:first-child{border-top:0;padding-top:0}.safety-alert[aria-busy=true]{opacity:.6}.safety-alert p{margin:0}.safety-message{font-weight:700}.safety-resolve{gap:var(--space-2);display:grid}.safety-resolve textarea{width:100%}.safety.health-check{border-color:var(--line)}.safety.health-check h2{color:var(--text);background:0 0}.checkin{margin-bottom:var(--space-5)}.checkin h2{margin-top:0}.checkin-form{gap:var(--space-4);display:grid}.checkin-scale{border:0;min-width:0;margin:0;padding:0}.checkin-scale legend{margin-bottom:var(--space-2);padding:0}.checkin-options{gap:var(--space-1);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.checkin-option,.checkin-choice{border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;position:relative}.checkin-option{min-height:44px;padding:var(--space-1);text-align:center;flex-direction:column;align-items:center;display:flex}.checkin-choices{gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));display:grid}.checkin-choice{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2);flex-wrap:wrap;display:flex}.checkin-option input,.checkin-choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.checkin-option:hover,.checkin-choice:hover{background:var(--paper)}.checkin-option[data-selected],.checkin-choice[data-selected]{background:var(--volt);color:var(--on-fill);border:var(--border)}:is(.checkin-option:has(input:focus-visible),.checkin-choice:has(input:focus-visible)){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.checkin-number{font-family:var(--font-mono);font-size:1.1rem;font-weight:700}.checkin-word{font-size:.7rem;line-height:1.2}.checkin-worry summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.checkin-flags{margin:0 0 var(--space-3);gap:var(--space-2);border:0;padding:0;display:grid}.checkin-flag{align-items:center;gap:var(--space-2);min-height:32px;display:flex}.checkin-pain{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.checkin-form label>.field-label{display:block}.checkin-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.checkin-total{margin:0 0 var(--space-2)}.checkin-answers{gap:var(--space-2)var(--space-4);margin:0 0 var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));display:grid}.checkin-answers dt{color:var(--text-2);font-size:.8125rem}.checkin-answers dd{margin:0;font-weight:700}.screening-share{gap:var(--space-1);margin-block:var(--space-3);display:grid}.screening-share p{margin:0}.screening-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.screening-list li{border-top:var(--border-thin);padding-top:var(--space-2)}.screening-list li:first-child{border-top:0;padding-top:0}.screening-list p{margin:0}.pain-and-flags{gap:var(--space-2);display:grid}.pain-row{gap:var(--space-2);border:0;margin:0;padding:0;display:grid}.pain-row label>.field-label{display:block}.pain-row select,.pain-row input{width:100%}.health-status h3{margin-bottom:var(--space-1)}.tendon-list{gap:var(--space-2);padding:0;list-style:none;display:grid}.tendon-list>li{border-left:3px solid var(--line);padding-left:var(--space-2)}.tendon-list>li[data-status=reduce_load]{border-left:6px solid var(--alarm)}.tendon-list>li[data-status=reduce_load]>strong{color:var(--alarm-text)}.tendon-list>li[data-status=unknown]{border-left-style:dashed}.checkin-worry>summary:before,.rate-pain>summary:before{content:"▸";margin-right:var(--space-2)}.checkin-worry[open]>summary:before,.rate-pain[open]>summary:before{content:"▾"}.checkin-line{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.checkin-line p{margin:0}.checkin.card-line{padding-top:var(--space-3);padding-bottom:var(--space-3)}.suggestion-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.suggestion{gap:var(--space-2);border-top:var(--border-thin);padding-top:var(--space-3);display:grid}.suggestion:first-child{border-top:0;padding-top:0}.suggestion[aria-busy=true]{opacity:.6}.suggestion p{margin:0}.suggestion-meta{gap:var(--space-2);flex-wrap:wrap;display:flex}.suggestion-change{font-weight:700}.suggestion-decide{gap:var(--space-2);display:grid}.requests-panel h2{margin-top:0}.requests-panel{margin-bottom:var(--space-5)}.ask-coach{gap:var(--space-3);border:var(--border-thin);padding:var(--space-3);background:var(--card);display:grid}.ask-coach fieldset{gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.ask-chip{border:var(--border-thin);padding:var(--space-1)var(--space-3);cursor:pointer;background:var(--card);color:var(--text);align-items:center;display:inline-flex}.ask-chip input{opacity:0;pointer-events:none;position:absolute}.ask-chip:has(input:checked){background:var(--volt);color:var(--on-fill)}.ask-chip:has(input:focus-visible){outline:var(--focus-ring);outline-offset:var(--focus-offset)}.plan-ask{gap:var(--space-3);display:grid}.plan-ask-bar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.request-steps{gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.request-steps li[aria-current=step]{font-weight:700;text-decoration:underline}.sheet-body>.ask-coach{border:0;padding:0}.sheet-body>.ask-coach>h3{display:none}.inbox-scope{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.inbox-scope label{gap:var(--space-1);flex-direction:column;min-width:0;max-width:100%;font-size:.9375rem;font-weight:700;display:flex}.inbox-scope select{max-width:100%;min-height:44px;font:inherit;font-weight:400}.coach .block{display:block}.coach td .badge{margin-left:var(--space-2)}.coach td.num .badge{margin-left:0}.roster-search{gap:var(--space-2);flex-wrap:wrap;align-items:stretch;display:flex}.roster-search input{min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);flex:200px}.roster-search input:focus-visible{background:color-mix(in srgb,var(--volt)35%,var(--card))}.sort-button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0}.sort-button:hover{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.sort-button:focus-visible{outline-color:var(--volt)}.data-table th[aria-sort]{background:var(--inverse-2)}.roster-table td{vertical-align:top}.roster-table th,.roster-table .sort-button{white-space:normal;text-align:inherit}.mini-bars svg{display:block;overflow:visible}.mini-bar{fill:var(--volt);stroke:var(--line);stroke-width:2px}.mini-bar.current{fill:var(--card);stroke-dasharray:3 2}.badge.flag{color:var(--alarm-text);border-color:var(--alarm);border-left-width:6px}.badge.estimate{border-style:dashed}.history-table .brick-row td{border-bottom-style:dashed}.history-table .brick-part-row td:nth-child(2){padding-left:var(--space-5)}.coach .block-badge{width:fit-content;margin:var(--space-1)0 0 auto;display:block}.badge.status[data-status=completed]{background:var(--volt);color:var(--on-fill)}.badge.status[data-status=not_logged]{border-style:dashed}.badge.status[data-status=missed],.badge.status[data-status=not_logged]{color:var(--alarm-text)}.coach .badge.type{background:var(--chip,var(--modality-other));color:var(--on-fill)}.coach .badge.type:before{content:"";background:var(--on-fill);width:.65em;height:.65em;margin-right:.45em;display:inline-block}.banner.warn{background:var(--warn);color:var(--on-fill);border-color:var(--line)}.banner.warn:before{content:"Note: ";text-transform:uppercase;font-weight:700}.pager{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.pager .button:disabled{cursor:not-allowed}.roster-import{margin-block:var(--space-5)}.roster-import h2{margin-top:0}.roster-import-form{gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.import-report{gap:var(--space-3);display:grid}.import-report caption{text-align:left;padding-bottom:var(--space-1);font-weight:700}.import-issues .mono{font-family:var(--font-mono);overflow-wrap:anywhere}.reason-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.reason-list a{font-weight:700}.reason-list [data-kind=safety_alert] a,.reason-list [data-kind=readiness_red] a{color:var(--alarm-text)}.reason-list [data-kind=safety_alert]:before,.reason-list [data-kind=readiness_red]:before{content:"! ";color:var(--alarm-text);font-weight:700}.roster-table .group-row th{padding-top:var(--space-4);background:var(--card);color:var(--text);border-bottom:var(--border);font-family:var(--font-display);text-align:left;text-transform:uppercase;font-size:1.125rem}.coach .athlete-context{gap:var(--space-3);margin-block:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.coach .athlete-context>section{padding:var(--space-3);border:var(--border-thin);background:var(--card)}.coach .athlete-context-title{margin:0 0 var(--space-1);text-transform:uppercase;font-size:.875rem}.coach .athlete-context p{margin:0}.coach .athlete-note{white-space:pre-wrap}.coach .reasons{margin:0;padding-left:1.1rem}.coach .athlete-tabs{gap:var(--space-2);margin-bottom:var(--space-4);border-bottom:var(--border);flex-wrap:nowrap;display:flex;overflow-x:auto}.coach .athlete-tabs a{white-space:nowrap;padding:var(--space-2)var(--space-3);border:var(--border-thin);color:var(--text);border-bottom:0;flex:none;text-decoration:none}.coach .athlete-tabs a[aria-current=page]{background:var(--volt);color:var(--on-fill);font-weight:700}.coach .athlete-range{margin-block:var(--space-3)}.athlete-card-list{margin:0 0 var(--space-4);gap:var(--space-2);padding:0;list-style:none;display:grid}.athlete-cards-title,.athlete-cards-ontrack>summary{font-family:var(--font-display);text-transform:uppercase;margin:var(--space-3)0 var(--space-2);font-size:1rem}.coach .athlete-cards-title{margin-top:var(--space-3)}.athlete-cards-ontrack>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.athlete-card{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3);border:var(--border);background:var(--card);color:var(--text);box-shadow:var(--shadow);text-decoration:none;display:flex}.athlete-card[data-state=attention]{border-left-width:6px;border-left-color:var(--alarm)}.athlete-card[data-state=waiting]{border-left-style:dashed;border-left-width:6px}.athlete-card-shape,.athlete-card-chevron{flex:none;font-size:1.25rem}.athlete-card-body{gap:var(--space-1);flex:auto;min-width:0;display:grid}.athlete-card-name{overflow-wrap:anywhere}.athlete-card-reasons{gap:2px;font-size:.875rem;display:grid}.athlete-card-last{font-size:.8125rem}.info-note{margin-block:0;font-size:.8125rem}.info-note>summary{cursor:pointer;align-items:center;min-height:44px;text-decoration:underline;display:flex}@media (max-width:639px){.coach .athlete-tabs a{padding-inline:var(--space-2)}}.athlete-sort{align-items:center;gap:var(--space-2);margin-block:var(--space-2)0;display:flex}.athlete-sort select{min-height:44px;font:inherit;padding:var(--space-2)var(--space-3);border:var(--border);border-radius:var(--radius);background:var(--card);color:var(--text);flex:auto}.roster-toolbar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.roster-toolbar .button{min-height:44px}.roster-toolbar .button[aria-expanded=true]{background:var(--volt);color:var(--on-fill)}.invite-athlete{margin-block:var(--space-5)}.invite-athlete h2{margin-top:0}.invite-athlete .field-row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.hr-calibration{margin:var(--space-2)0 0;padding:0;list-style:none}.athlete-card-readiness{margin-top:var(--space-1);display:block}.dash-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.seats-notice{gap:var(--space-2);display:grid}.seats-notice p{margin:0}.seats-dismissed:focus{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.seats-notice .seats-lower{align-items:center;gap:var(--space-2)var(--space-3);flex-wrap:wrap;margin:0;display:flex}.seats-lower p{flex:16rem}.history-table .history-activity{width:fit-content;min-height:44px;font-family:var(--font-body);align-items:center;display:flex}.attendance-panel{gap:var(--space-3);min-width:0;display:grid}.attendance-panel h3{overflow-wrap:anywhere;margin:0}.attendance-panel>p{margin:0}.attendance-counts{font-family:var(--font-mono);font-weight:700}.attendance-rest{gap:var(--space-2);flex-wrap:wrap;display:flex}.attendance-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.attendance-list>li{gap:var(--space-2);padding:var(--space-3);border:var(--border);background:var(--card);color:var(--text);min-width:0;display:grid}.attendance-who,.attendance-status{overflow-wrap:anywhere;margin:0}.attendance-who .block{display:block}.attendance-who .team-role{margin-left:var(--space-2)}.attendance-marks{border:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.attendance-marks button{min-height:44px;padding:0 var(--space-2);font:inherit;color:var(--text);background:var(--card);cursor:pointer;border:0;font-weight:700}.attendance-marks button+button{border-left:var(--border)}.attendance-marks button[aria-pressed=true]{background:var(--inverse);color:var(--on-inverse)}.attendance-marks button:disabled{cursor:not-allowed;color:var(--text-2)}.attendance-marks button[aria-pressed=true]:disabled{color:var(--on-inverse)}.attendance-marks button:focus-visible{outline:var(--focus-ring);outline-offset:calc(-1*var(--border-w) - var(--focus-offset))}.attendance-marks button[aria-pressed=true]:focus-visible{outline-color:var(--on-inverse)}.attendance-history{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.attendance-history li{overflow-wrap:anywhere}.steps-editor{gap:var(--space-3);min-width:0;display:grid}.steps-editor .steps-editor-title{padding-bottom:var(--space-1);border-bottom:var(--border-thin);margin:0;font-size:1rem;font-weight:700}.steps-editor-row{padding:var(--space-3);border:var(--border-thin);background:var(--card);gap:var(--space-3);min-width:0;margin:0;display:grid}.steps-editor-row legend{padding:0 var(--space-1);font-weight:700}.steps-editor-rows{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.steps-editor-exercise{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.steps-editor-numbers{gap:var(--space-3)var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.steps-editor-remove{padding-top:calc(1lh + var(--space-1));font-size:.9375rem}.steps-editor-remove>.button{width:100%;min-height:44px;padding-inline:var(--space-2);overflow-wrap:normal;white-space:nowrap}.steps-editor>.button{justify-self:start}@media (max-width:640px){.steps-editor input,.steps-editor select,.steps-editor .button{min-height:44px}.steps-editor-row,.steps-editor-exercise{gap:var(--space-2)}.steps-editor-row{padding:var(--space-2)}}.steps-editor-exercise>.button{place-self:end start}.library-group .library-group-heading{margin-block:var(--space-5)var(--space-2);padding-bottom:var(--space-1);border-bottom:var(--border-thin)}.library-list{margin:0;padding:0;list-style:none}.library-row{margin:0;padding:0}.library-row+.library-row{border-top:var(--border-thin)}.library-row-main{align-items:center;display:flex}.library-item{appearance:none;min-width:0;min-height:56px;padding:var(--space-2)var(--space-4);border-radius:var(--radius);background:var(--card);color:var(--text);font-family:var(--font-body);text-align:start;cursor:pointer;border:0;flex-direction:column;flex:1;justify-content:center;gap:2px;margin:0;font-size:1rem;line-height:1.3;display:flex}.library-item-name{overflow-wrap:anywhere;font-weight:700}.library-item-purpose{-webkit-line-clamp:2;line-clamp:2;color:var(--text-2);-webkit-box-orient:vertical;font-size:.875rem;display:-webkit-box;overflow:hidden}.library-item-facts{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.library-item:hover .library-item-name{text-decoration:underline}.library-item:focus-visible{outline:var(--focus-ring);outline-offset:calc(-1*(var(--border-w) + var(--focus-offset)))}.library-more:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.library-item:active{background:var(--inverse);color:var(--on-inverse)}.library-item:active .library-item-purpose{color:var(--on-inverse)}.library-item:active .badge.intensity[data-intensity=hard]{border-color:var(--on-inverse)}.button.library-more{width:44px;height:44px;min-height:44px;margin-inline:var(--space-2);letter-spacing:0;flex:none;padding:0;font-size:1.25rem;line-height:1}.button.library-more[aria-expanded=true]{background:var(--inverse);color:var(--on-inverse)}.library-row-actions,.library-rename{gap:var(--space-2);padding:0 var(--space-4)var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.library-rename{padding-top:var(--space-3)}.library-rename>.field{flex-basis:100%}.library-row .button{min-height:44px}.library-source{margin-top:0}.library-head .field{align-items:baseline;gap:var(--space-1)var(--space-3);grid-template-columns:1fr auto;margin:0;display:grid}.library-head .field input{grid-area:2/1/auto/-1}.library-head .field .hint{text-align:end;grid-area:1/2}.library-head input[type=search]{font-size:1rem}.sheet-body .library-head{z-index:1;background:var(--card);border-bottom:var(--border-thin);box-shadow:0 calc(-1*var(--space-4))0 var(--card);position:sticky;top:0}.sheet-body>.add-from,.sheet-body .library-picker>.banner{z-index:2;position:relative}.sheet-body .library-head+.library-group .library-group-heading{margin-top:var(--space-1)}.library-filters{gap:var(--space-2);margin-top:var(--space-1);padding-bottom:var(--space-2);overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.library-filters::-webkit-scrollbar{display:none}.library-filter{appearance:none;align-items:center;gap:var(--space-1);min-height:2.25rem;padding:0 var(--space-3);border:var(--border-thin);border-radius:var(--radius);background:var(--card);color:var(--text);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;cursor:pointer;flex:none;margin:0;font-size:.75rem;font-weight:700;display:inline-flex}.library-filter-count{font-variant-numeric:tabular-nums;font-weight:500}.library-filter[aria-pressed=true]{background:var(--inverse);color:var(--on-inverse)}.library-filter:focus-visible{outline:var(--focus-ring);outline-offset:calc(-1*(var(--border-w-thin) + var(--focus-offset) + var(--border-w)))}.library-filter[aria-pressed=true]:focus-visible{outline-color:var(--on-inverse)}@media (max-width:639px){.library-filter{min-height:44px}}@media (min-width:640px){.library-filters{flex-wrap:wrap;overflow-x:visible}}.library-empty{margin:var(--space-4)0;padding:var(--space-4);border:var(--border);background:var(--card);color:var(--text);border-style:dashed}.library-empty p{margin:0 0 var(--space-3);font-weight:500}.library-empty .library-empty-title{margin-bottom:var(--space-1);font-family:var(--font-display);text-transform:uppercase;font-size:1.25rem;font-weight:800;line-height:1.1}.library-empty-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.library-empty-actions .button{min-height:44px}.library-back{margin:0}.library-back-link{appearance:none;align-items:center;gap:var(--space-1);min-width:44px;min-height:44px;padding:0 var(--space-2);border-radius:var(--radius);color:var(--link);font-family:var(--font-body);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;margin-inline-start:calc(-1*var(--space-2));font-size:1rem;font-weight:700;text-decoration:underline;display:inline-flex}.library-back-link:focus-visible{outline:var(--focus-ring);outline-offset:calc(-1*var(--focus-offset))}.library-picker .library-chosen{margin:var(--space-2)0 var(--space-1);font-family:var(--font-display);text-transform:uppercase;overflow-wrap:anywhere;font-size:1.5rem;font-weight:900;line-height:1.1}.library-purpose{margin:0 0 var(--space-1);color:var(--text-2)}.library-picker>.field{margin-top:var(--space-4)}.library-stepper{align-items:stretch;display:flex}.library-step{appearance:none;border:var(--border-thin);border-radius:var(--radius);background:var(--card);width:44px;min-height:44px;color:var(--text);font-family:var(--font-body);cursor:pointer;flex:0 0 44px;margin:0;padding:0;font-size:1.5rem;font-weight:700;line-height:1}.library-step:active:not(:disabled){background:var(--inverse);color:var(--on-inverse)}.library-step:disabled{color:var(--text-2);cursor:not-allowed;border-style:dashed}.library-step:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset);position:relative}.library-stepper input{min-width:0;margin-inline:calc(-1*var(--border-w-thin));text-align:center;appearance:textfield;flex:1;font-size:1rem}.library-stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.library-stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.library-preview{margin-top:var(--space-5);padding-top:var(--space-3);border-top:var(--border-thin)}.library-preview-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.library-picker .library-preview-head h4{margin:0 0 var(--space-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.8125rem;font-weight:700}.library-updating{color:var(--text-2);font-family:var(--font-mono);font-size:.8125rem;font-weight:700}.library-preview-body{border-inline-start:var(--border-w-thin)dashed transparent;padding-inline-start:var(--space-2)}.library-preview-body[data-stale]{border-inline-start-color:var(--line);color:var(--text-2)}.library-workout+.library-workout{margin-top:var(--space-3)}.library-facts{align-items:center;gap:var(--space-1)var(--space-2);margin:0 0 var(--space-2);flex-wrap:wrap;display:flex}.library-effort{color:var(--text-2);font-size:.875rem}.library-steps{margin:0;padding-inline-start:var(--space-5);font-size:.9375rem;line-height:1.4}.library-steps li+li{margin-top:var(--space-1)}.library-notes{margin:var(--space-3)0 0;font-size:.9375rem}.library-preview-error{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.library-preview-error .field-error{margin:0}.library-preview-error .button{min-height:44px}@media (min-width:640px){.library-stepper{max-width:20rem}}.badge.outcome-chip[data-outcome=done]{background:var(--volt);color:var(--on-fill)}.badge.outcome-chip[data-outcome=partly]{border-style:dashed}.badge.outcome-chip[data-outcome=skipped]{border-color:var(--alarm-text);color:var(--alarm-text)}.badge.outcome-chip[data-outcome=not_logged]{background:var(--warn);color:var(--on-fill)}.outcome-activity{min-height:32px;padding-block:var(--space-1);font-weight:700;display:inline-block}.session-card>.outcome-activity{flex-basis:100%}@media (max-width:639px){.outcome-activity{flex:1 0 100%;align-items:center;min-height:44px;display:flex}}.past-week-summary{color:var(--text-2);font-size:.875rem}.past-week-summary .past-week-garmin{margin:0;display:inline}.week-grid{gap:var(--space-2);grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.week-grid-day{gap:var(--space-2);min-width:0;min-height:7rem;padding:var(--space-2);border:var(--border-thin);background:var(--card);flex-direction:column;display:flex}.week-grid-label{font-family:var(--font-mono);text-transform:uppercase;color:var(--text-2);margin:0;font-size:.75rem}.week-grid-rest{margin:0;font-size:.8125rem}.week-grid-add{align-self:flex-start}.week-grid .session-list{gap:var(--space-2);grid-template-columns:minmax(0,1fr)}.week-grid .session-card{align-items:stretch;gap:var(--space-1);padding:var(--space-1);flex-flow:column;min-width:0}.week-grid .session-open{overflow-wrap:anywhere;flex:none;min-width:0;padding:0}.week-grid .badge{white-space:normal;overflow-wrap:anywhere;max-width:100%}.week-grid .session-actions{flex-wrap:wrap}.week-grid .session-actions .button{white-space:nowrap}.week-grid .session-steps{font-size:.75rem}.week-grid .badge.recovery,.week-grid .session-open>.muted{display:none}.week-grid .session-notes{overflow-wrap:anywhere}.week-grid .session-notes:not(.open) .session-notes-text{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.week-grid .session-notes-more{font-size:.75rem;display:inline}.week-grid .brick-head>.muted{display:none}.week-grid .session-open>*,.week-grid .brick-head>*,.week-grid .brick-part>*,.week-grid-day>*,.week-grid .session-list>li,.week-grid .session-card{min-width:0;max-width:100%}.week-grid .brick-parts,.week-grid .brick-part{flex-wrap:wrap;min-width:0}.week-grid-day:nth-child(-n+3) .finding-tip{left:0;right:auto}.drafts .check{gap:var(--space-2);margin:var(--space-1)0;align-items:center;display:flex}.drafts fieldset{border:var(--border-thin);padding:var(--space-3);margin:0 0 var(--space-3)}.drafts .draft-red-flags{margin:var(--space-3)0}.draft-preview .draft-block{margin:var(--space-4)0}.draft-week h4{margin:var(--space-3)0 var(--space-2)}.draft-sessions,.draft-workouts,.draft-findings{margin:0;padding:0;list-style:none}.draft-session{border-top:var(--border-thin);padding:var(--space-2)0}.draft-session-head{margin:0 0 var(--space-1)}.draft-workouts li{margin:var(--space-1)0}.draft-rationale{color:var(--text-2)}.draft-cites{gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.draft-cites .chip{border:var(--border-thin);padding:0 var(--space-1);color:var(--text);background:var(--card);font-size:.85em}.draft-findings li{margin:var(--space-2)0}.draft-change{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.draft-why{margin:var(--space-4)0}.draft-inputs{border:var(--border-thin);background:var(--card);max-height:24rem;color:var(--text);padding:var(--space-2);font-size:.85em;overflow:auto}.draft-accept .form-actions{margin-top:var(--space-3)}.drafts .check input{flex:none;width:auto;min-height:auto}.draft-title-name{font-size:.6em;display:block}.draft-steps summary{cursor:pointer;width:fit-content}.draft-steps ul{margin:var(--space-1)0 0;padding-left:var(--space-4)}.chat-context{margin:var(--space-4)0 0;max-width:44rem;font-size:.8125rem}.chat-hint .chat-reads-toggle{font-size:inherit;white-space:normal;padding:0}.chat-reads,.chat-sent{gap:var(--space-2);min-width:0;font-size:.875rem;display:grid}.chat-reads{max-width:44rem;margin-top:var(--space-2);padding:var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text)}.chat-reads p,.chat-reads ul,.chat-sent>p{margin:0}.chat-reads ul,.chat-sent-list{gap:var(--space-1);padding-left:var(--space-4);margin:0;display:grid}.chat-reads-head{font-weight:700}.chat-sent-link{float:right;margin:0 0 var(--space-1)var(--space-2);padding:0;font-size:.75rem}.chat-sent{clear:both;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--border-thin)}.chat-sent-detail{color:var(--text-2);overflow-wrap:anywhere;display:block}.chat-sent>.button{justify-self:start}.chat-sent-raw{max-height:20rem;padding:var(--space-2);border:var(--border-thin);background:var(--paper);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.75rem;overflow:auto}@media (max-width:639px){.chat-hint{line-height:1.25}}.sheet-body>.chat-reads,.sheet-body>.chat-sent{background:0 0;border:0;flex:1 0 auto;align-content:start;max-width:none;margin:0;padding:0}.sheet-body>.chat-reads>.form-actions,.sheet-body>.chat-sent>.form-actions{margin-top:auto}.dash.coach-chat{max-width:calc(48rem + 2*var(--space-4))}.coach-weeks{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.coach-week{font:inherit;min-height:44px;padding:var(--space-1)var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;font-weight:700}.coach-week[aria-pressed=true]{background:var(--volt);color:var(--on-fill)}.coach-week:focus-visible{outline:3px solid var(--text);outline-offset:2px}.chat-thread{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.chat-turn{gap:var(--space-3);display:grid}.chat-you{max-width:min(36rem,90%);padding:var(--space-3)var(--space-4);border:var(--border-thin);background:var(--inverse);color:var(--on-inverse);white-space:pre-wrap;overflow-wrap:anywhere;justify-self:end;margin:0}.chat-coach{max-width:min(44rem,100%);scroll-margin-top:var(--space-3);padding:var(--space-3)var(--space-4);border:var(--border);background:var(--card);color:var(--text);box-shadow:var(--shadow-sm);overflow-wrap:anywhere}.chat-coach:focus-visible{outline:var(--focus-ring);outline-offset:2px}.chat-reply{white-space:pre-wrap;max-width:65ch;margin-top:0}.chat-proposal h3{margin:var(--space-3)0 var(--space-2);font-size:1rem}.chat-sessions,.chat-steps,.chat-findings{padding-left:var(--space-4);margin:0}.chat-session{margin-bottom:var(--space-3)}.chat-session>p,.chat-workout>p{margin:var(--space-1)0}.chat-steps{color:var(--text-2);font-size:.875rem}.chat-findings{margin-top:var(--space-2);font-size:.875rem}.chat-apply{margin-top:var(--space-3)}.chat-compose{gap:var(--space-2);margin-top:var(--space-5);z-index:1;padding:var(--space-2)0;background:var(--paper);display:grid;position:sticky;bottom:0}.chat-latest{bottom:calc(100% + var(--space-2));box-shadow:var(--shadow-sm);white-space:nowrap;position:absolute;left:50%;transform:translate(-50%)}.chat-box{gap:var(--space-2);align-items:flex-end;display:flex}.chat-box textarea{min-width:0;font:inherit;box-sizing:border-box;padding:var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);resize:none;flex:1;min-height:44px}.chat-hint{color:var(--text-2);margin:0;font-size:.8125rem}.chat-suggestions{gap:var(--space-2);margin:var(--space-3)0;flex-wrap:wrap;display:flex}.chat-chip{font:inherit;min-height:44px;padding:var(--space-1)var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text);cursor:pointer;border-radius:999px;font-size:.875rem}.chat-chip:hover{background:var(--fill-plain)}.chat-chip:focus-visible{outline:3px solid var(--text);outline-offset:2px}.chat-thinking{margin:0}.chat-dots:before{content:"●";animation:1.2s ease-in-out infinite chat-pulse;display:inline-block}@keyframes chat-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.chat-dots:before{animation:none}}.chat-assumptions{margin:var(--space-3)0;padding:var(--space-3);border:var(--border-thin);background:var(--paper)}.chat-assumptions h4{margin:0 0 var(--space-2);font-size:.9375rem}.chat-assumptions ul{margin:0 0 var(--space-3);gap:var(--space-2);padding:0;list-style:none;display:grid}.chat-assumptions li{gap:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.chat-assumptions li>span{flex:1;min-width:0}.chat-assumptions li>button{flex:none}.chat-check{gap:var(--space-2);align-items:center;min-height:44px;font-weight:700;display:flex}.chat-check input{width:1.25rem;height:1.25rem}.chat-findings summary{cursor:pointer;font-weight:700}@media (max-width:639px){.chat-compose{gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-2)0}html:has(.app-nav) .chat-compose{bottom:var(--tab-bar-height)}html[data-chat-typing] body{overflow:hidden}html[data-chat-typing] .coach-chat{inset:var(--chat-view-top,0px)0 auto;height:var(--chat-view-height,100dvh);z-index:45;box-sizing:border-box;overscroll-behavior:contain;padding-top:calc(var(--space-5) + var(--safe-top));background:var(--paper);padding-bottom:0;position:fixed;overflow-y:auto}html[data-chat-typing] .chat-compose{bottom:0}html[data-chat-typing]:not([data-chat-keyboard]) .chat-compose{padding-bottom:max(var(--space-2),var(--safe-bottom))}html[data-chat-typing] .chat-hint{display:none}.chat-suggestions{overscroll-behavior-x:contain;scroll-padding-inline:var(--space-1);padding:5px var(--space-1);margin-inline:calc(-1*var(--space-1));scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.chat-suggestions::-webkit-scrollbar{display:none}.chat-chip{white-space:nowrap;flex:none}.chat-box .button{min-height:44px;padding-inline:var(--space-3);flex:none}.chat-thread{gap:var(--space-4)}.chat-you{max-width:88%;padding:var(--space-2)var(--space-3)}.chat-coach{padding:var(--space-3)}.chat-sessions,.chat-steps,.chat-findings{padding-left:var(--space-3)}.chat-assumptions{padding:var(--space-2)var(--space-3)}.chat-assumptions li{gap:var(--space-1);flex-direction:column}}.tier-picker{border:0;min-width:0;margin:0;padding:0}.tier-picker legend{margin-bottom:var(--space-2);font-weight:700}.tier-options{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tier-option{border:var(--border-thin);background:var(--card);padding:var(--space-2)var(--space-3);position:relative}.tier-option[data-selected]{border-color:var(--text);box-shadow:inset 0 0 0 2px var(--volt)}.tier-option label{column-gap:var(--space-2);cursor:pointer;padding-right:var(--space-5);grid-template-columns:auto 1fr;display:grid}.tier-option input{grid-row:span 2;margin-top:.25rem}.tier-label{font-weight:700}.tier-purpose{color:var(--text-2);font-size:.8125rem}.tier-info{top:var(--space-2);right:var(--space-2);position:absolute}.tier-info-button{font:inherit;border:var(--border-thin);background:var(--paper);width:1.5rem;height:1.5rem;color:var(--text);cursor:pointer;border-radius:999px;font-size:.75rem;font-style:italic;font-weight:700}.tier-info-button:focus-visible{outline:3px solid var(--text);outline-offset:2px}.tier-info-text{right:0;top:calc(100% + var(--space-1));z-index:2;width:max-content;max-width:min(18rem,80vw);padding:var(--space-2)var(--space-3);border:var(--border-thin);background:var(--inverse);color:var(--on-inverse);box-shadow:var(--shadow-sm);font-size:.8125rem;position:absolute}.chat-tier{margin:0 0 var(--space-2);text-transform:uppercase;letter-spacing:.04em;cursor:help;font-size:.75rem}@media (max-width:639px){.tier-options{grid-template-columns:1fr}}.tier-compact{align-items:center;gap:var(--space-2);min-width:0;display:flex}.tier-compact label{flex:none;font-size:.875rem;font-weight:700}.tier-compact select{min-width:0;min-height:44px;font:inherit;padding:0 var(--space-2);border:var(--border-thin);background:var(--card);color:var(--text);border-radius:0;flex:1;font-size:1rem}.tier-compact select:focus-visible{outline:var(--focus-ring);outline-offset:2px}.tier-compact .tier-info{flex:none;position:relative;top:auto;right:auto}.tier-compact .tier-info-text{top:auto;bottom:calc(100% + var(--space-1))}.tier-compact .tier-info-button{width:2rem;height:2rem}.coach-new{margin-left:auto}.chat-history{margin:0 0 var(--space-4)}.chat-history summary{cursor:pointer;padding-block:10px;font-weight:700}.chat-history summary:focus-visible{outline:var(--focus-ring);outline-offset:2px}.chat-history ul{margin:var(--space-2)0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.chat-history-item{gap:var(--space-1);width:100%;min-height:44px;padding:var(--space-2)var(--space-3);border:var(--border-thin);background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer;display:grid}.chat-history-item:focus-visible{outline:var(--focus-ring);outline-offset:2px}.chat-history-item .muted{font-size:.8125rem}.chat-history-first{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.chat-ended{color:var(--text-2)}.chat-earlier>.banner{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.chat-earlier>.banner:focus{outline:var(--focus-ring);outline-offset:2px}.recovery{align-items:start}.activity-cards{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.activity-cards+.button{margin-top:var(--space-4)}.activity-card{gap:var(--space-1);padding:var(--space-3);display:grid}.activity-title{margin:0;font-weight:800}.activity-title a{color:var(--link);overflow-wrap:anywhere}.activity-facts{color:var(--text-2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:0;font-size:.8125rem}.activity-source{color:var(--attribution);margin:0;font-size:.8125rem}.data-table .cal-dot,.activity-title .cal-dot{margin:0 var(--space-2)0 0;vertical-align:middle}.app-header{gap:var(--space-2)var(--space-4);max-width:1120px;margin:0 auto var(--space-2);padding:var(--space-4)var(--space-4)0;flex-wrap:wrap;align-items:center;display:flex}.app-nav{gap:var(--space-2)var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.app-nav a,.help-link{min-height:44px;color:var(--text);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;padding:0 var(--space-2);border-bottom:4px solid #0000;align-items:center;font-size:1.375rem;font-weight:800;text-decoration:none;display:inline-flex}.app-nav a:hover,.help-link:hover{border-bottom-color:var(--line)}.app-nav a[aria-current=page],.help-link[aria-current=page]{background:var(--inverse);color:var(--on-inverse)}.app-nav .nav-count{margin-left:var(--space-1)}.mode-switch{border:var(--border);box-shadow:var(--shadow-sm);margin-left:auto;display:inline-flex}.mode-switch button{min-height:44px;padding:0 var(--space-3);font:inherit;color:var(--text);background:var(--card);cursor:pointer;border:0;font-weight:700}.mode-switch button+button{border-left:var(--border)}.mode-switch button[aria-pressed=true]{background:var(--inverse);color:var(--on-inverse)}.help-link{font-size:1rem}.mode-switch+.help-link{margin-left:0}.app-nav+.help-link{margin-left:auto}@media (max-width:639px){:root{--tab-bar-height:calc(56px + var(--border-w) + var(--safe-bottom))}.app-header{gap:var(--space-2);box-sizing:border-box;min-height:56px;padding:var(--space-1)var(--space-4);flex-wrap:nowrap;margin-bottom:0}.app-header .brand{padding:0 var(--space-1);flex:none;font-size:1rem}.mode-switch{flex:0 auto;min-width:0;margin-left:auto}.mode-switch button{min-width:0;min-height:44px;padding:0 var(--space-1);white-space:nowrap;font-size:.75rem}.help-link{min-width:44px;padding:0 var(--space-1);flex:none;justify-content:center;font-size:.875rem}.app-nav{z-index:40;padding-bottom:var(--safe-bottom);background:var(--card);border-top:var(--border);flex-wrap:nowrap;gap:0;position:fixed;inset:auto 0 0}.app-nav a{min-width:0;min-height:56px;padding:6px var(--space-1)0;white-space:nowrap;border-bottom:0;flex:1 1 0;justify-content:center;font-size:1rem;position:relative}.app-nav .nav-count{margin-left:0;padding:0 3px;font-size:.6875rem;line-height:1.25;position:absolute;top:3px;right:3px}body:has(.app-nav){padding-bottom:var(--tab-bar-height)}html:has(.app-nav){scroll-padding-bottom:calc(var(--tab-bar-height) + var(--space-2))}body:has(.app-nav) .availability>form>.form-actions{bottom:var(--tab-bar-height)}body:has(.app-nav) .toast-region{bottom:calc(var(--tab-bar-height) + var(--space-3))}html[data-chat-typing] .app-nav{display:none}}.training-choice .choice-list{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));padding:0;list-style:none;display:grid}.training-choice .choice-list .card{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.training-choice .choice-list .button{margin-top:auto}.get-started{gap:var(--space-3);display:grid}.get-started-head{gap:var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:baseline;display:flex}.get-started-head h2,.get-started p{margin:0}.get-started-progress{font-family:var(--font-mono);font-weight:700}.get-started-bar{width:100%;height:12px;accent-color:var(--volt)}.get-started-steps{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.get-started-step{gap:var(--space-1)var(--space-2);padding:var(--space-2)0;border-top:var(--border-thin);grid-template-columns:1.5rem 1fr;align-items:start;display:grid}.get-started-step[data-state=done] .get-started-text strong{text-decoration:line-through}.get-started-mark{font-family:var(--font-mono);text-align:center;font-weight:700}.get-started-desc{display:block}.get-started-resume{gap:var(--space-2);margin:0 0 var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.get-started-actions{gap:var(--space-2);flex-wrap:wrap;grid-column:2;display:flex}.get-started-form{grid-column:1/-1}.get-started-form .plan-form{margin:var(--space-2)0 0}.get-started-more{color:var(--link);align-self:center}.quick-more summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.toast-region{left:calc(var(--space-4) + var(--safe-left));right:calc(var(--space-4) + var(--safe-right));bottom:calc(var(--space-4) + var(--safe-bottom));z-index:60;pointer-events:none;justify-content:center;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);max-width:520px;padding:var(--space-2)var(--space-2)var(--space-2)var(--space-4);background:var(--card);color:var(--text);border:var(--border);box-shadow:var(--shadow-lg);pointer-events:auto;font-weight:700;animation:.15s ease-out toast-in;display:flex}.toast-text{flex:1}.toast .button{min-height:44px}.toast-close{min-width:44px;min-height:44px;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;font-size:1.25rem}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}body:has(.sheet-backdrop) div.toast-region{bottom:calc(80px + var(--space-3) + var(--safe-bottom))}
