:root{--color-surface:#fffbf5;--color-surface-dim:#e0d9cf;--color-surface-bright:var(--color-surface);--color-surface-container-lowest:#fff;--color-surface-container-low:#faf2e8;--color-surface-container:#f7efe5;--color-surface-container-high:#efe7dd;--color-surface-container-highest:#e9e1d8;--color-on-surface:#1e1b15;--color-on-surface-variant:#59413a;--color-inverse-surface:#343029;--color-inverse-on-surface:#f8f0e6;--color-outline:#8d7169;--color-outline-variant:#e0bfb6;--color-primary:#ac3509;--color-on-primary:#fff;--color-primary-container:#ff7043;--color-on-primary-container:#641800;--color-inverse-primary:#ffb59f;--color-secondary:#006a63;--color-on-secondary:#fff;--color-secondary-container:#8bf1e6;--color-on-secondary-container:#006f67;--color-tertiary:#735c00;--color-on-tertiary:#fff;--color-tertiary-container:#cda721;--color-on-tertiary-container:#4e3d00;--color-error:#ba1a1a;--color-on-error:#fff;--color-error-container:#ffdad6;--color-on-error-container:#93000a;--color-primary-fixed:#ffdbd0;--color-primary-fixed-dim:#ffb59f;--color-on-primary-fixed:#3a0a00;--color-on-primary-fixed-variant:#852300;--color-secondary-fixed:#8ef4e9;--color-secondary-fixed-dim:#71d7cd;--color-on-secondary-fixed:#00201d;--color-on-secondary-fixed-variant:#00504a;--color-tertiary-fixed:#ffe087;--color-tertiary-fixed-dim:#ebc23e;--color-on-tertiary-fixed:#241a00;--color-on-tertiary-fixed-variant:#574500;--color-background:var(--color-surface);--color-on-background:var(--color-on-surface);--color-surface-tint:var(--color-primary);--color-surface-variant:var(--color-surface-container-highest);--font-family-sans:"Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--type-display-lg-font-size:48px;--type-display-lg-line-height:56px;--type-display-lg-font-weight:800;--type-display-lg-letter-spacing:-.02em;--type-display-lg-mobile-font-size:32px;--type-display-lg-mobile-line-height:40px;--type-display-lg-mobile-font-weight:800;--type-display-lg-mobile-letter-spacing:-.02em;--type-headline-lg-font-size:32px;--type-headline-lg-line-height:40px;--type-headline-lg-font-weight:700;--type-headline-lg-letter-spacing:-.01em;--type-headline-md-font-size:24px;--type-headline-md-line-height:32px;--type-headline-md-font-weight:700;--type-headline-md-letter-spacing:0;--type-body-lg-font-size:18px;--type-body-lg-line-height:28px;--type-body-lg-font-weight:500;--type-body-lg-letter-spacing:0;--type-body-md-font-size:16px;--type-body-md-line-height:24px;--type-body-md-font-weight:400;--type-body-md-letter-spacing:0;--type-label-md-font-size:14px;--type-label-md-line-height:20px;--type-label-md-font-weight:600;--type-label-md-letter-spacing:.02em;--space-0:0;--space-unit:8px;--space-1:var(--space-unit);--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-7:56px;--space-8:64px;--space-gutter:var(--space-3);--space-sticker-offset:4px;--layout-page-margin-mobile:20px;--layout-page-margin-desktop:64px;--layout-content-width-mobile:calc(100% - var(--layout-page-margin-mobile) - var(--layout-page-margin-mobile));--layout-content-max-width-form:448px;--layout-content-max-width-reading:672px;--layout-content-max-width-selection:1024px;--layout-content-max-width:1280px;--radius-sm:8px;--radius-default:16px;--radius-md:24px;--radius-lg:32px;--radius-xl:48px;--radius-full:9999px;--radius-card:var(--radius-md);--radius-control:var(--radius-full);--border-thin:1px;--border-strong:2px;--border-accent-edge:var(--space-unit);--border-focus:var(--border-strong);--border-decorative:var(--border-strong);--elevation-none:none;--elevation-soft:0 8px 24px #1e1b1514;--elevation-sticker-primary:4px 4px 0 var(--color-primary);--elevation-sticker-secondary:4px 4px 0 var(--color-secondary);--elevation-sticker-tertiary:4px 4px 0 var(--color-tertiary);--elevation-interactive:var(--elevation-sticker-primary);--elevation-interactive-hover:6px 6px 0 var(--color-primary);--elevation-navigation:0 -4px 0 color-mix(in srgb, var(--color-primary) 10%, transparent);--focus-ring-color:var(--color-secondary);--focus-ring-width:2px;--focus-ring-offset:2px;--interaction-target-min-size:44px;--motion-duration-fast:.12s;--motion-duration-standard:.2s;--motion-duration-slow:.3s;--motion-easing-standard:cubic-bezier(.2, 0, 0, 1);--motion-easing-emphasized:cubic-bezier(.2, 0, 0, 1.2);--sticker-rotation-positive:2deg;--sticker-rotation-negative:-3deg;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-family-sans);color:var(--color-on-surface);background:var(--color-surface);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{background:var(--color-surface)}body,html{min-width:320px}body{background:radial-gradient(circle at 96% 4%,color-mix(in srgb,var(--color-secondary-container) 32%,transparent),transparent 32%),linear-gradient(145deg,var(--color-surface) 0,var(--color-surface-container) 100%);min-height:100vh;margin:0}button,input{font:inherit}button{min-height:var(--interaction-target-min-size)}button:focus-visible,input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}h1,h2,h3,p{margin:0}h1{max-width:16ch;font-size:var(--type-display-lg-mobile-font-size);font-weight:var(--type-display-lg-mobile-font-weight);line-height:var(--type-display-lg-mobile-line-height);letter-spacing:var(--type-display-lg-mobile-letter-spacing)}h2{letter-spacing:var(--type-headline-md-letter-spacing)}h2,h3{font-size:var(--type-headline-md-font-size);font-weight:var(--type-headline-md-font-weight);line-height:var(--type-headline-md-line-height)}.app-shell{width:100%;min-height:100dvh;padding:0 var(--layout-page-margin-mobile) var(--space-6)}.app-header{align-items:center;gap:var(--space-2);width:min(100%,var(--layout-content-max-width));grid-template-columns:auto minmax(0,1fr) auto;min-height:72px;margin:0 auto;display:grid}.app-header__leading{align-items:center;gap:var(--space-1);min-width:0;display:flex}.brand-lockup{color:var(--color-on-surface);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);letter-spacing:var(--type-label-md-letter-spacing);white-space:nowrap;align-items:center;gap:10px;display:inline-flex}.brand-mark{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-on-primary);background:var(--color-primary);box-shadow:var(--elevation-sticker-primary);letter-spacing:.04em;place-items:center;font-size:11px;font-weight:800;display:grid}.brand-name{letter-spacing:.01em}.header-person{min-width:0;color:var(--color-on-surface-variant);text-align:right}.header-person__meta,.header-person__name{overflow-wrap:anywhere;display:block}.header-person__name{color:var(--color-on-surface);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight)}.header-person__meta{font-size:12px;line-height:18px}.header-actions{justify-content:flex-end;display:flex}.page-content{width:100%;min-height:calc(100dvh - 72px - var(--space-6));align-content:center;margin:0 auto;display:grid}.page-content--form{max-width:var(--layout-content-max-width-form)}.page-content--selection{max-width:var(--layout-content-max-width-selection)}.page-content--reading{max-width:var(--layout-content-max-width-reading);padding-top:var(--space-5);align-content:start}.screen-card{width:100%;padding:clamp(var(--space-3),8vw,var(--space-5));border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-lg);background:var(--color-surface-container-lowest);box-shadow:var(--elevation-soft)}.login-screen,.selection-screen{gap:var(--space-4);display:grid}.plan-intro,.section-intro{gap:var(--space-1);display:grid}.eyebrow{color:var(--color-secondary);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);letter-spacing:var(--type-label-md-letter-spacing);line-height:var(--type-label-md-line-height);text-transform:uppercase}.selection-screen .eyebrow{max-width:100%;color:var(--color-secondary);letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap;overflow:hidden}.supporting-copy{max-width:38ch;color:var(--color-on-surface-variant);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height)}.app-input,.autocomplete,.stack-form{gap:var(--space-1);display:grid}.stack-form{gap:var(--space-3)}label{font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);line-height:var(--type-label-md-line-height)}input,label{color:var(--color-on-surface)}input{border:var(--border-strong) solid var(--color-outline);border-radius:var(--radius-control);background:var(--color-surface-container-lowest);width:100%;min-height:52px;padding:12px 16px}input::placeholder{color:var(--color-on-surface-variant);opacity:.82}input[type=search]::-webkit-search-cancel-button{appearance:none}button:disabled,input:disabled{cursor:wait;opacity:.65}.app-button{gap:var(--space-1);border:var(--border-strong) solid transparent;border-radius:var(--radius-control);width:fit-content;min-width:120px;font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);line-height:var(--type-label-md-line-height);cursor:pointer;transition:transform var(--motion-duration-fast) var(--motion-easing-standard),box-shadow var(--motion-duration-fast) var(--motion-easing-standard),background-color var(--motion-duration-fast) var(--motion-easing-standard);padding:12px 20px}.app-button,.app-button__icon{justify-content:center;align-items:center;display:inline-flex}.app-button--sm{min-width:0;min-height:var(--interaction-target-min-size);padding:8px 4px}.app-button--primary{color:var(--color-on-primary);background:var(--color-primary);box-shadow:var(--elevation-interactive)}.app-button--primary:not(:disabled):active,.app-button--primary:not(:disabled):hover{box-shadow:var(--elevation-interactive-hover);transform:translate(-1px,-1px)}.app-button--secondary{border-color:var(--color-secondary);color:var(--color-on-secondary-fixed);background:var(--color-secondary-container)}.app-button--secondary:not(:disabled):hover{background:var(--color-secondary-fixed)}.app-button--quiet{min-width:0;color:var(--color-secondary);background:0 0}.app-button--quiet:not(:disabled):hover{background:color-mix(in srgb,var(--color-secondary-container) 42%,transparent)}.app-action-navigation{gap:var(--space-2);display:flex}.app-action-navigation--header{flex-wrap:wrap;justify-content:flex-end}.app-action-navigation--bottom,.app-action-navigation--inline{gap:var(--space-2);width:100%;display:grid}.app-action-navigation--bottom>.app-button,.app-action-navigation--inline>.app-button,.stack-form>.app-button,.status-actions>.app-button{width:100%}.autocomplete,.autocomplete-input{position:relative}.autocomplete-input input{padding-right:48px}.autocomplete-clear{border-radius:var(--radius-full);width:44px;min-height:44px;color:var(--color-secondary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:24px;line-height:1;display:grid;position:absolute;top:4px;right:4px}.autocomplete-clear:hover{background:color-mix(in srgb,var(--color-secondary-container) 42%,transparent)}.autocomplete-results{z-index:2;width:100%;max-height:min(304px,42dvh);margin:var(--space-1) 0 0;padding:var(--space-1) 0;border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-card);background:var(--color-surface-container-lowest);box-shadow:var(--elevation-soft);list-style:none;position:static;overflow-y:auto}.person-option{min-height:var(--interaction-target-min-size);color:var(--color-on-surface);cursor:pointer;padding:10px 16px;display:grid}.person-option--active,.person-option--selected,.person-option:hover{background:var(--color-secondary-container)}.person-option-content{gap:2px;min-width:0;display:grid}.person-option__name{font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);line-height:var(--type-label-md-line-height);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.person-option__meta{color:var(--color-on-surface-variant);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.person-option__group:before{content:"·";margin-right:4px}.person-option__selected{color:var(--color-secondary)}.person-option__selected,.role-badge{font-size:12px;font-weight:var(--type-label-md-font-weight)}.role-badge{border:var(--border-thin) solid currentColor;border-radius:var(--radius-full);align-items:center;min-height:24px;padding:2px 8px;line-height:18px;display:inline-flex}.role-badge--runner{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary-fixed) 72%,transparent)}.role-badge--coach{color:var(--color-secondary);background:color-mix(in srgb,var(--color-secondary-fixed) 72%,transparent)}.role-badge--combined{color:var(--color-on-tertiary-fixed-variant);background:color-mix(in srgb,var(--color-tertiary-fixed) 58%,transparent)}.autocomplete-empty{color:var(--color-on-surface-variant);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height);padding:12px 16px}.button-spinner{border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:12px;height:12px;animation:.7s linear infinite spin;display:inline-block}.status-screen{align-items:start;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);display:grid}.status-copy{gap:var(--space-1);min-width:0;display:grid}.status-icon{border-radius:var(--radius-full);width:28px;height:28px;font-size:var(--type-label-md-font-size);flex:none;place-items:center;margin-top:4px;font-weight:800;display:grid}.status-icon--loading{color:var(--color-primary);background:var(--color-primary-fixed)}.status-icon--error{color:var(--color-on-error-container);background:var(--color-error-container)}.status-actions{grid-column:2}.plan-actions,.status-actions{gap:var(--space-2);display:grid}.status-message{margin:var(--space-3) 0 0;color:var(--color-on-surface-variant);font-size:.875rem;line-height:1.45}.error-message{border-left:var(--border-accent-edge) solid var(--color-error);color:var(--color-on-error-container);background:var(--color-error-container);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height);padding:12px 14px}.plan-screen{gap:var(--space-4);display:grid}.complete-plan-screen{gap:var(--space-5);min-width:0;padding-bottom:var(--space-6);display:grid}.complete-plan-intro{gap:var(--space-1);padding:0 4px;display:grid}.complete-plan-intro h1{max-width:none}.complete-plan-heading__date{color:var(--color-on-surface-variant);font-size:.62em;font-weight:var(--type-headline-md-font-weight);letter-spacing:normal}.complete-plan-context{color:var(--color-on-surface-variant);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height)}.complete-plan-days{gap:var(--space-6);min-width:0;display:grid}.plan-day{gap:var(--space-3);min-width:0;padding:var(--space-3);border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-card);background:color-mix(in srgb,var(--color-surface-container-lowest) 84%,var(--color-primary-fixed));box-shadow:var(--elevation-soft);scroll-margin-top:var(--space-3);display:grid}.plan-day--today{border-color:var(--color-primary);box-shadow:var(--elevation-interactive)}.plan-day__header{min-width:0;padding-bottom:var(--space-1);border-bottom:var(--border-thin) solid var(--color-outline-variant);gap:2px;display:grid}.plan-day__header h2{overflow-wrap:anywhere;color:var(--color-on-surface);font-size:var(--type-headline-md-font-size);line-height:var(--type-headline-md-line-height)}.plan-day--today .plan-day__header h2,.plan-day__eyebrow{color:var(--color-primary)}.plan-day__eyebrow{font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);letter-spacing:var(--type-label-md-letter-spacing);line-height:var(--type-label-md-line-height);text-transform:uppercase}.plan-day__entries,.plan-day__notes{gap:var(--space-2);min-width:0;display:grid}.plan-day__notes{padding-bottom:var(--space-1)}.plan-intro{padding:0 4px}.role-line{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.plan-identity{gap:var(--space-1);display:grid}.identity-meta{align-items:center;gap:var(--space-1);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height);flex-wrap:wrap;display:flex}.identity-meta,.plan-date{color:var(--color-on-surface-variant)}.plan-date{font-size:var(--type-label-md-font-size);line-height:var(--type-label-md-line-height)}.plan-date,.plan-period-message{font-weight:var(--type-label-md-font-weight)}.plan-period-message{padding:var(--space-2) var(--space-3);border-left:var(--border-accent-edge) solid var(--color-secondary);border-radius:var(--radius-sm);color:var(--color-on-secondary-fixed);background:var(--color-secondary-container);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height)}.current-notes{gap:var(--space-2);display:grid}.current-notes h2{color:var(--color-secondary);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);letter-spacing:var(--type-label-md-letter-spacing);line-height:var(--type-label-md-line-height);text-transform:uppercase}.plan-section{gap:var(--space-2);display:grid}.plan-content{gap:var(--space-4);display:grid}.plan-section__header{gap:2px;padding:0 4px;display:grid}.plan-section__header h2{overflow-wrap:anywhere}.plan-section__date{color:var(--color-secondary);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);line-height:var(--type-label-md-line-height)}.plan-section--current .plan-section__header h2{color:var(--color-primary)}.day-note-list,.plan-entry-list,.plan-section__content{gap:var(--space-2);display:grid}.plan-status{padding:var(--space-4) var(--space-3);border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-card);color:var(--color-on-surface-variant);background:var(--color-surface-container);font-size:var(--type-body-lg-font-size);font-weight:var(--type-body-lg-font-weight);line-height:var(--type-body-lg-line-height);text-align:center}.day-note,.empty-plan-state,.timed-entry-card{overflow-wrap:anywhere;min-width:0}.timed-entry-card{gap:var(--space-1);padding:var(--space-3);border:var(--border-thin) solid var(--color-outline-variant);border-left:var(--border-accent-edge) solid var(--color-secondary);border-radius:var(--radius-card);background:var(--color-surface-container-lowest);box-shadow:var(--elevation-soft);display:grid}.timed-entry-card--current{border-left-color:var(--color-primary)}.timed-entry-card--complete{border-left-color:var(--color-tertiary)}.timed-entry-card__topline{justify-content:space-between;align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.timed-entry-card__time{color:var(--color-primary);font-size:var(--type-label-md-font-size);font-weight:var(--type-label-md-font-weight);letter-spacing:var(--type-label-md-letter-spacing);line-height:var(--type-label-md-line-height)}.timed-entry-card__title{overflow-wrap:anywhere}.day-note__text,.empty-plan-state p,.timed-entry-card__detail{color:var(--color-on-surface-variant);font-size:var(--type-body-md-font-size);line-height:var(--type-body-md-line-height)}.entry-badge{border:var(--border-thin) solid var(--color-tertiary);border-radius:var(--radius-full);min-height:24px;color:var(--color-on-tertiary-fixed-variant);background:var(--color-tertiary-fixed);font-size:12px;font-weight:var(--type-label-md-font-weight);align-items:center;padding:2px 8px;line-height:18px;display:inline-flex}.day-note{min-height:var(--interaction-target-min-size);justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-card);background:var(--color-surface-container);display:flex}.day-note--important{border-left:var(--border-accent-edge) solid var(--color-tertiary)}.empty-plan-state{align-items:start;gap:var(--space-2);padding:var(--space-3);border:var(--border-thin) solid var(--color-outline-variant);border-radius:var(--radius-card);background:var(--color-surface-container);grid-template-columns:auto minmax(0,1fr);display:grid}.empty-plan-state__mark{border-radius:var(--radius-full);width:28px;height:28px;color:var(--color-on-secondary-fixed);background:var(--color-secondary-container);place-items:center;font-weight:800;display:grid}.empty-plan-state>div{gap:var(--space-1);min-width:0;display:grid}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}@media (width>=640px){.app-shell{padding-right:var(--layout-page-margin-desktop);padding-left:var(--layout-page-margin-desktop)}.app-header{min-height:88px}.page-content{min-height:calc(100dvh - 88px - var(--space-6))}h1{font-size:var(--type-display-lg-font-size);line-height:var(--type-display-lg-line-height)}}@media (width<=639px){.app-header--with-back{align-items:start;row-gap:var(--space-1);padding:var(--space-2) 0 var(--space-3);grid-template-columns:minmax(0,1fr);grid-template-areas:"leading""person""actions"}.app-header--with-back .app-header__leading{grid-area:leading}.app-header--with-back .header-person{text-align:left;grid-area:person}.app-header--with-back .header-actions{grid-area:actions;justify-content:flex-start}}@media (width<=359px){.app-shell{padding-left:16px;padding-right:16px}.app-header{gap:var(--space-1)}.brand-lockup{gap:6px}.brand-name{display:none}.screen-card{padding:var(--space-2)}}
