.modal{background:var(--surface);max-width:none;max-height:none;color:var(--text);border:1px solid var(--border);padding:0}.modal[open]{flex-direction:column;display:flex}.modal::backdrop{background:var(--backdrop)}.modal-sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-width:1px 0 0;width:100%;max-height:100dvh;margin:0;inset:auto 0 0}.modal-alert{width:min(420px, calc(100vw - var(--space-6)));max-height:calc(100vh - var(--space-6));max-height:calc(100dvh - var(--space-6));border-radius:var(--radius-lg);margin:auto}@media (width>=720px){.modal-sheet{width:min(560px, calc(100vw - var(--space-6)));height:fit-content;max-height:calc(100dvh - var(--space-7));border-radius:var(--radius-lg);border-width:1px;margin:auto;inset:0}}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:52px;padding:var(--space-1) var(--space-1) 0 var(--space-4);flex:none;display:flex}.modal-alert .modal-header{padding:var(--space-3) var(--space-4) 0}.modal-title{min-width:0;font-size:var(--text-lg)}.modal-body{gap:var(--space-3);min-height:0;padding:var(--space-1) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;flex-direction:column;scroll-padding-bottom:7rem;display:flex;overflow-y:auto}.modal-alert .modal-body{padding-bottom:var(--space-4)}.modal-alert .button-stack{margin-top:var(--space-1)}.type-list{gap:var(--space-2);flex-direction:column;display:flex}.type-button{min-height:64px;padding:var(--space-2) var(--space-4);background:var(--surface-2);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--radius);font-size:var(--text-lg);font-weight:var(--weight-medium);text-align:left;align-items:center;gap:14px;display:flex}.type-row{align-items:center;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.type-row .event-icon{margin-top:0}.type-row .text-button{margin-left:auto}.event-when{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.event-when-part{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}@media (width>=600px){.event-when{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.event-when .inline-row{flex-wrap:nowrap}}@media (width<=719px){.event-form .textarea{height:5.5rem}}.event-delete{align-items:center;gap:var(--space-2);display:inline-flex}.dialog-actions{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dialog-actions-sticky{z-index:1;margin:0 calc(var(--space-4) * -1) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -4px 14px var(--shadow-sticky-color);position:sticky;bottom:0}.modal-body:has(.dialog-actions-sticky){padding-bottom:0}.notice-block{gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border:2px solid var(--control-border);border-radius:var(--radius-sm);flex-direction:column;display:flex}.notice-block .button-stack{margin-top:var(--space-1)}.notice-title{font-size:var(--text-base)}.server-values{gap:var(--space-1) var(--space-3);font-size:var(--text-sm);grid-template-columns:auto minmax(0,1fr);display:grid}.server-values dt{color:var(--muted)}.app-banners{flex-direction:column;gap:12px;display:flex}.app-banners:not(:empty){margin-bottom:16px}.update-banner{gap:8px 12px}.update-banner-text{align-items:center;gap:8px;min-width:0;display:flex}.update-banner-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.history-filters{gap:var(--space-4)}.filter-label{color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium)}.filter-group{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.filters-block{min-width:0;padding:0 var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.filters-head{align-items:center;gap:var(--space-2);min-height:var(--control-height);cursor:pointer;display:flex}.filters-title{font-weight:var(--weight-medium);flex:none}.filters-value{min-width:0;color:var(--muted);font-size:var(--text-sm);flex:auto}.filters-icon{color:var(--muted);transition:transform var(--motion-fast) ease;flex:none}.filters-block[open] .filters-icon{transform:rotate(180deg)}.filters-body{gap:var(--space-3);padding-bottom:var(--space-3);flex-direction:column;display:flex}.history-days{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.history-list{gap:var(--space-3);flex-direction:column;display:flex}.card.history-message{padding:var(--space-3) var(--space-4)}.card.history-card{box-shadow:var(--shadow-card);padding:0}.history-heading{font-size:var(--text-base);font-weight:var(--weight-regular)}.history-row{align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-height);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);color:var(--text);border-radius:var(--radius);font-size:var(--text-sm);text-align:left;background:0 0;border:0;display:flex}.history-main{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;flex:1 1 0;min-width:0;display:flex}.history-date{font-size:var(--text-lg);line-height:var(--leading-tight);flex:0 0 100%}.history-weight{font-variant-numeric:tabular-nums;min-width:4.6rem}.history-sleep{font-variant-numeric:tabular-nums;min-width:6rem}.history-marks{gap:var(--space-2);margin-left:auto;display:flex}.history-mark{align-items:center;gap:3px;display:inline-flex}.history-mark .event-icon{width:1.2rem;height:1.2rem;margin-top:0}.history-chevron{color:var(--muted);transition:transform var(--motion-fast) ease}.history-row[aria-expanded=true] .history-chevron{transform:rotate(180deg)}@media (width>=600px){.history-date{flex-basis:9.5rem}}.history-panel{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.metrics{gap:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);font-size:var(--text-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metric{min-width:0}.metric dt{color:var(--muted);font-size:var(--text-xs)}.metric dd{font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}@media (width>=480px){.history-open-day{align-self:flex-start}}.history-workouts{flex-direction:column;flex:0 0 100%;gap:2px;min-width:0;margin-top:2px;display:flex}.history-workout{align-items:flex-start;gap:var(--space-1) 6px;min-width:0;font-size:var(--text-sm);line-height:1.35;display:flex}.history-workout .event-icon{width:1.05rem;height:1.05rem;margin-top:.1em}.history-workout-text{overflow-wrap:anywhere;flex-direction:column;flex:auto;min-width:0;display:flex}.history-workout-type{font-weight:var(--weight-medium)}.history-workout-program{max-width:100%;display:inline-block}.history-workout-head{min-width:0}.history-workout-preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.history-events{flex-direction:column;display:flex}.history-event{gap:var(--space-1);min-width:0;padding:var(--space-3) 0 var(--space-1);border-top:1px solid var(--border-subtle);font-size:var(--text-sm);flex-direction:column;display:flex}.history-event:first-child{border-top:0;padding-top:0}.history-event .event-title{align-items:center}.history-event .event-icon{margin-top:0}.event-actions{align-items:center;gap:var(--space-1);margin:var(--space-1) -10px 0;flex-wrap:wrap;display:flex}.event-actions>.text-button{font-size:var(--text-sm);align-self:center}.event-actions>.history-event-edit{min-height:44px;padding:var(--space-1) 14px;background:var(--accent-soft);border-color:var(--accent);font-size:var(--text-sm)}.event-actions>.history-event-edit:first-child{margin-left:10px}.history-event-edit svg{width:1.05em;height:1.05em}.event-actions>.text-button-danger{margin-left:auto}mark{background:var(--mark);color:inherit;border-bottom:2px solid var(--accent);font-weight:var(--weight-bold);padding:0 1px}.card.calendar-card{padding:var(--space-3) 0;box-shadow:var(--shadow-card)}@media (width<=480px){.card.calendar-card{margin-inline:calc(var(--space-3) * -1)}}.calendar-head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 10px var(--space-2);display:flex}.calendar-title{text-align:center;flex:1 1 0;min-width:0}.calendar-card>[role=alert]{padding:0 var(--space-3) var(--space-3)}.calendar-card>.muted,.calendar-card>.hint{padding:var(--space-2) var(--space-3) 0}.calendar{table-layout:fixed;border-collapse:separate;border-spacing:2px;width:100%}.calendar th{color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium);padding-bottom:2px}.calendar td{padding:0}.calendar-empty{height:48px}.calendar-cell{width:100%;min-width:0;min-height:48px;padding:var(--space-1) 1px;background:var(--surface-2);color:var(--text);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);flex-direction:column;justify-content:flex-start;align-items:center;gap:2px;display:flex}.calendar-number{font-size:var(--text-sm);font-variant-numeric:tabular-nums;line-height:1.1}.calendar-cell-today .calendar-number{font-weight:var(--weight-bold);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:2px}.calendar-cell-selected{border:2.5px solid var(--control-border)}.calendar-cell-future{color:var(--muted);border-color:var(--border);cursor:default;background:0 0;border-style:dashed}.calendar-marks{flex-wrap:wrap;justify-content:center;align-items:center;gap:1px;min-height:14px;display:flex}.calendar-mark{align-items:center;gap:1px;display:inline-flex}.calendar-marks .event-icon{width:14px;height:14px;margin-top:0}.calendar-count{color:var(--muted);font-size:.68rem;line-height:1}.calendar-skeleton{background:var(--border);border-radius:3px;display:block}.calendar-skeleton-marks{width:55%;height:8px;margin-top:3px}.calendar-skeleton-fill{width:80%;height:4px;margin-top:auto}.calendar-fill{gap:1px;width:80%;margin-top:auto;display:flex}.calendar-seg{background:var(--border);border-radius:2px;flex:1 1 0;height:4px}.calendar-seg-on{background:var(--muted)}.calendar-fill-full{gap:0}.calendar-fill-full .calendar-seg{background:var(--text);border-radius:0;height:5px}.calendar-fill-full .calendar-seg:first-child{border-radius:3px 0 0 3px}.calendar-fill-full .calendar-seg:last-child{border-radius:0 3px 3px 0}.calendar-legend{gap:2px var(--space-3);padding:var(--space-2) var(--space-3) 0;color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;margin:0;list-style:none;display:flex}.calendar-legend li{align-items:center;gap:6px;display:inline-flex}.calendar-legend .event-icon{width:14px;height:14px;margin-top:0}.calendar-legend .calendar-fill{flex:none;width:28px;margin-top:0}.undo-notice{align-items:stretch;gap:var(--space-2);padding:var(--space-3) var(--space-4);flex-direction:column}.undo-line{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.undo-line>.button{margin-left:auto}.workout-block,.workout-example,.workout-source{min-width:0}.workout-block>summary,.workout-example>summary,.workout-source>summary{align-items:center;gap:var(--space-2);min-height:44px;color:var(--accent);font-weight:var(--weight-medium);cursor:pointer;display:flex}.workout-block>summary:after,.workout-example>summary:after,.workout-source>summary:after{content:"";width:1.25em;height:1.25em;-webkit-mask-image:var(--chevron-down);mask-image:var(--chevron-down);transition:transform var(--motion-fast) ease;background:currentColor;flex:none;margin-left:auto;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.workout-block[open]>summary:after,.workout-example[open]>summary:after,.workout-source[open]>summary:after{transform:rotate(180deg)}.workout-block{padding:0 var(--space-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.workout-block>summary{min-height:var(--control-height)}.workout-block-body{gap:var(--space-3);padding-bottom:var(--space-3);flex-direction:column;display:flex}.workout-example-body{padding-top:var(--space-1);flex-direction:column;gap:10px;display:flex}.workout-example-item{gap:var(--space-1);flex-direction:column;min-width:0;margin:0;display:flex}.workout-example-text{padding:var(--space-2) 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--control-radius);font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.45}.workout-fieldset{gap:var(--space-1);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.workout-fieldset>legend{margin-bottom:var(--space-1);padding:0}.duration-row{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5rem),1fr));display:grid}.duration-part{align-items:center;gap:6px;min-width:0;display:flex}.duration-part>.input{flex:1 1 0;min-width:0}.duration-part>label{min-width:2.2em;font-weight:var(--weight-regular);flex:none}.workout-speed{margin-top:calc(var(--space-1) * -1)}.paste-open{margin-top:var(--space-1);justify-content:flex-start}.parsed-subtitle{font-weight:var(--weight-medium)}.workout-warnings,.workout-unrecognized{gap:var(--space-1);font-size:var(--text-sm);flex-direction:column;padding-left:1.25rem;list-style:outside;display:flex}.workout-unrecognized{padding:var(--space-2) 10px;background:var(--bg);border-radius:var(--control-radius);list-style:none}.workout-warning{font-weight:var(--weight-medium)}.workout-source-text{padding:var(--space-2) 10px;background:var(--bg);border-radius:var(--control-radius);font-size:var(--text-sm)}.similar-list{flex-direction:column;gap:10px;display:flex}.similar-item{border-top:1px solid var(--border);flex-direction:column;gap:6px;min-width:0;padding-top:10px;display:flex}.similar-item .event-icon{margin-top:0}.similar-item>.button{align-self:flex-start}.workout-metrics{font-size:var(--text-sm);overflow-wrap:anywhere}.workout-value{white-space:nowrap}.import-file-input{max-width:100%;min-height:var(--control-height);color:var(--muted);font:inherit;font-size:.92rem}.import-file-input::file-selector-button{min-height:var(--control-height);background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--control-radius);font:inherit;cursor:pointer;margin-right:12px;padding:8px 18px;font-weight:600}.import-file-input:disabled::file-selector-button{cursor:not-allowed;opacity:.45}.import-file-name{overflow-wrap:anywhere}.import-block,.import-preview{flex-direction:column;gap:12px;min-width:0;display:flex}.import-block{border-top:1px solid var(--border);padding-top:12px}.import-heading,.import-group>h4{margin:0}.import-heading{align-items:flex-start;gap:var(--space-2);font-size:var(--text-lg);overflow-wrap:anywhere;scroll-margin-top:var(--space-3);display:flex}.import-group>h4{font-size:var(--text-base)}.import-done svg{color:var(--accent);margin-top:.1em}.import-changed{gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border:2px solid var(--control-border);border-radius:var(--radius-sm);scroll-margin-top:var(--space-3);flex-direction:column;display:flex}.import-changed-title{align-items:flex-start;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-bold);display:flex}.import-table{border-collapse:collapse;width:100%;max-width:560px;font-size:.92rem}.import-table th,.import-table td{border-bottom:1px solid var(--border);text-align:right;padding:6px 0 6px 12px;font-weight:400}.import-table th:first-child{text-align:left;padding-left:0}.import-table td{white-space:nowrap}.import-table thead th{color:var(--muted);font-size:.82rem;font-weight:600}.import-group{border-top:1px solid var(--border);flex-direction:column;gap:10px;min-width:0;padding-top:12px;display:flex}.import-bulk{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:8px;display:grid}.import-list,.import-plain-list,.import-matches{flex-direction:column;gap:10px;min-width:0;display:flex}.import-plain-list>li{border-top:1px solid var(--border);overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;padding-top:8px;font-size:.95rem;display:flex}.import-plain-list>li:first-child{border-top:none;padding-top:0}.import-item{border:1.5px solid var(--control-border);border-radius:var(--control-radius);flex-direction:column;gap:10px;min-width:0;margin:0;padding:10px 12px 12px;display:flex}.import-item-title{float:left;overflow-wrap:anywhere;width:100%;padding:0;font-weight:700}.import-compare{flex-direction:column;gap:8px;margin:0;display:flex}.import-compare-row{flex-direction:column;gap:2px;min-width:0;display:flex}.import-compare-row dt{font-weight:600}.import-compare-row dd{overflow-wrap:anywhere;margin:0}.import-side{color:var(--muted);font-size:.9rem}.import-value{white-space:pre-wrap;font-weight:600}.import-matches{border-left:3px solid var(--border);gap:8px;padding-left:12px}.import-event{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.import-event .event-title{flex-wrap:nowrap;align-items:flex-start}.import-event .event-title>span{min-width:0}.import-event .event-icon{margin-top:.05em}.import-event-details{font-size:.95rem}.import-choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:8px;display:grid}.import-choice{min-width:0;min-height:var(--control-height);background:var(--surface);border:1.5px solid var(--control-border);border-radius:var(--control-radius);cursor:pointer;align-items:center;gap:10px;padding:6px 12px;font-weight:400;display:flex}.import-choice input{width:1.25rem;height:1.25rem;accent-color:var(--accent);flex:none;margin:0}.import-choice:has(input:checked){background:var(--accent-soft);border:2.5px solid var(--accent);font-weight:700}.import-choice:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.import-choice input:focus-visible{outline:none}.import-choice:has(input:disabled){cursor:not-allowed;opacity:.6}.import-details{min-width:0}.import-details>summary{align-items:center;gap:var(--space-2);min-height:44px;color:var(--accent);cursor:pointer;font-weight:600;display:flex}.import-details>summary:after{content:"";width:1.25em;height:1.25em;-webkit-mask-image:var(--chevron-down);mask-image:var(--chevron-down);transition:transform var(--motion-fast) ease;background:currentColor;flex:none;margin-left:auto;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.import-details[open]>summary:after{transform:rotate(180deg)}.import-details-body{flex-direction:column;gap:8px;padding-bottom:8px;display:flex}.import-nowrap{white-space:nowrap}.import-invalid-reason{overflow-wrap:anywhere}.import-summary{border-top:1px solid var(--border);padding-top:12px}.import-backup-note{font-weight:600}.import-plan{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.import-backup-name{overflow-wrap:anywhere}.page.settings{--page-max:680px;gap:var(--space-6)}.settings-group{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.settings-group-title{padding-inline:var(--space-1);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:.03em}.settings-subhead{font-size:var(--text-base);font-weight:var(--weight-bold);margin:0}.settings-current{align-items:baseline;gap:var(--space-2) var(--space-4);min-width:0;padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.settings-current-empty{font-size:var(--text-sm)}.segmented.settings-theme{grid-template-columns:minmax(0,1fr)}@media (width>=430px){.segmented.settings-theme{grid-template-columns:repeat(auto-fit,minmax(min(100%,6.5rem),1fr))}}.settings-period{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=479px){.settings-period{grid-template-columns:minmax(0,1fr)}}.settings-update{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;display:flex}.settings-build{padding-inline:var(--space-1);overflow-wrap:anywhere}.settings .state-text{font-size:.95rem}.settings .trash-list{gap:var(--space-3);flex-direction:column;display:flex}.settings .trash-item{align-items:flex-start;gap:var(--space-2) var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle);flex-wrap:wrap;display:flex}.settings .trash-item:first-child{border-top:none;padding-top:0}.settings .trash-item>.event-body{flex-basis:11rem}.settings .trash-item>.button{flex:1 0 auto}@media (width>=480px){.settings .trash-item>.button{flex:none}}.day-progress{gap:var(--space-2);flex-direction:column;display:flex}.day-progress-apart{border:2px dashed var(--control-border)}.day-progress-now{gap:var(--space-1);flex-direction:column;display:flex}.day-progress .day-progress-stat{gap:0}.day-progress .stat-unit{margin-left:0}.day-progress-change{font-size:var(--text-base);font-weight:var(--weight-medium)}.day-progress-empty{font-size:var(--text-base)}.day-progress-row{color:var(--muted);font-size:var(--text-sm);display:grid}.day-progress-row:before{content:attr(data-reserve);visibility:hidden}.day-progress-row>span,.day-progress-row:before{grid-area:1/1}.day-progress-notes{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-tight)}.day-progress .day-progress-action{padding-inline:0}.day-progress-start-link{min-height:44px;color:var(--accent);font-size:var(--text-sm);font-weight:var(--weight-medium);text-underline-offset:3px;align-items:center;text-decoration:underline;display:inline-flex}.day-progress-error{flex-direction:column;align-items:flex-start;display:flex}.today-cards{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));display:grid}.today-cards-apart{padding:var(--space-2);border:2px dashed var(--control-border);border-radius:var(--radius-sm)}.today-cards-title{flex-direction:column;grid-column:1/-1;display:flex}.today-card{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);display:flex}.today-card-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.today-card-label{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-tight)}.today-card-value{font-size:var(--text-lg);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.today-card-note{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-tight)}.today-card>.today-card-action{flex:none;align-self:center}.today-card:has(>.today-card-start){flex-wrap:wrap}.today-card>.today-card-start{text-align:left;flex:0 auto;min-width:0;padding:0}.day-header{gap:var(--space-3);flex-direction:column;display:flex}.day-nav{align-items:center;gap:var(--space-2);display:flex}.day-title{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;flex:1 1 0;min-width:0;display:flex}.day-heading{justify-content:center;align-items:baseline;gap:0 var(--space-2);font-size:var(--text-base);font-weight:var(--weight-regular);flex-wrap:wrap;display:flex}.day-date{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.day-weekday{color:var(--muted)}.badge{padding:2px var(--space-3);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-medium)}.badge-accent{background:var(--accent-soft);border-color:var(--accent)}.day-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.day-actions>.button{padding-inline:var(--space-3);flex:auto}.day-actions>.day-return{flex-basis:100%}.day-actions>.day-jump{flex:13rem}.day-actions>.day-calendar{flex:none}.day-jump-toggle[aria-expanded=true]{background:var(--accent-soft);border:2.5px solid var(--accent)}@media (width<=899px){.day-jump:not(.day-jump-open),.day-actions-folded{display:none}.day-title{container-type:inline-size}.day-date{font-size:min(var(--text-xl), 19cqi)}.day-weekday{font-size:min(var(--text-base), 16cqi)}}@media (width>=900px){.day-header{flex-flow:wrap;justify-content:space-between;align-items:center}.day-nav{gap:var(--space-3)}.day-title{justify-content:center;gap:var(--space-3);flex-direction:row;flex:none;min-width:24rem}.day-actions>.button,.day-actions>.day-return,.day-actions>.day-jump{flex:none}.day-jump-toggle{display:none}}.day-form{display:contents}.day-card .card-head-text{flex:1 1 min-content}.day-card .card-head{column-gap:var(--space-2)}.day-fields{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=900px){.day-fields{align-items:start;column-gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr))}.day-fields>.block-field{padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.day-fields .field-unit-box,.day-fields .stepper,.day-fields .sleep-row{max-width:22rem}}.block-field{gap:var(--space-1);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.day-fields>.block-field+.block-field{padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.field-head{align-items:center;gap:0 var(--space-2);flex-wrap:nowrap;min-height:44px;display:flex}.field-head-text{align-items:baseline;gap:0 var(--space-2);min-width:0;line-height:var(--leading-tight);flex-wrap:wrap;display:flex}.field-label{font-size:var(--text-base);font-weight:var(--weight-medium)}.field-state{color:var(--muted);font-size:var(--text-sm)}.field-state-set{color:var(--text);font-weight:var(--weight-bold)}.field-head>.field-clear{flex:none;align-self:center;margin-left:auto}.field-unit-box{min-width:0;display:flex;position:relative}.field-unit-box>.input{padding-right:3rem}.field-unit-box>.input::placeholder{font-size:var(--text-base);font-weight:var(--weight-regular)}.field-unit{top:0;right:var(--space-3);color:var(--muted);font-size:var(--text-base);font-weight:var(--weight-medium);pointer-events:none;align-items:center;display:flex;position:absolute;bottom:0}.stepper{gap:var(--space-2);display:flex}.stepper>.input{flex:1 1 0}.stepper>.stepper-button{width:var(--control-height-lg);height:var(--control-height-lg)}.sleep-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sleep-part{align-items:center;gap:var(--space-2);min-width:0;display:flex}.sleep-part>.input{flex:1 1 0}.day-fill{align-items:center;gap:var(--space-1);min-height:44px;padding:0 var(--space-2);color:var(--muted);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.day-fill-value{color:var(--text);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.day-fill-toggle{background:var(--surface);border:1.5px solid var(--control-border);border-radius:var(--radius-pill);padding-inline:var(--space-2)}.day-fill-toggle[aria-expanded=true]{background:var(--accent-soft);border:2px solid var(--accent)}.day-fill-chevron{transition:transform var(--motion-fast) ease}.day-fill-toggle[aria-expanded=true] .day-fill-chevron{transform:rotate(180deg)}.day-fill-done svg{color:var(--accent)}.day-fill-list{gap:var(--space-2);min-width:0;margin-bottom:var(--space-4);padding:var(--space-3);scroll-margin-block:var(--space-3) var(--space-6);background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;display:flex}.day-fill-list[hidden]{display:none}.day-fill-title{color:var(--muted);font-size:var(--text-sm)}.day-fill-items{gap:var(--space-2);flex-wrap:wrap;display:flex}.day-fill-item{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-1) 14px;background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--radius-pill);font-weight:var(--weight-medium);text-align:left;display:inline-flex}.day-fill-invalid{color:var(--danger);border-color:var(--danger)}.day .block-field{scroll-margin-block:var(--space-3) 160px}.day .block-field.field-flash{background:var(--accent-soft);border-radius:var(--radius-sm);box-shadow:0 0 0 6px var(--accent-soft);animation:1s ease-out forwards field-flash}@keyframes field-flash{0%{background-color:var(--accent-soft);box-shadow:0 0 0 6px var(--accent-soft)}to{background-color:#0000;box-shadow:0 0 0 6px #0000}}@media (prefers-reduced-motion:reduce){.day .block-field.field-flash{animation:none}}.save-bar{align-items:center;gap:var(--space-2) var(--space-3);padding:0 var(--space-1);flex-wrap:wrap;display:flex}.save-bar-active{z-index:10;right:var(--content-inline-end);bottom:var(--sticky-bottom);left:var(--content-inline-start);max-width:var(--page-max,600px);padding:var(--space-3);background:var(--surface);border:1.5px solid var(--control-border);border-radius:var(--radius);box-shadow:var(--shadow-sticky);margin-inline:auto;position:fixed}.day:has(.save-bar-active){padding-bottom:calc(var(--save-bar-height,160px) + var(--sticky-gap))}.save-date{color:var(--muted);font-size:var(--text-xs);flex-basis:100%}.save-date strong{color:var(--text)}.save-status{align-items:flex-start;gap:var(--space-1);min-width:0;font-size:var(--text-sm);overflow-wrap:anywhere;display:flex}.save-status:empty{display:none}.save-status-error{color:var(--danger);font-weight:var(--weight-medium);flex-basis:100%}.save-actions{gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.save-actions>.button{flex:8rem}.save-bar .save-state{font-size:var(--text-sm);overflow-wrap:anywhere;flex-basis:100%}.save-bar .save-draft{color:var(--muted)}.save-bar .save-state>.save-status{display:inline}.save-bar .save-state>.save-status>svg{margin-right:var(--space-1);vertical-align:-.25em}.save-bar .save-discard{font-size:var(--text-sm);white-space:nowrap;align-items:center;margin-block:-12px;margin-inline-start:var(--space-3);padding:0;display:inline-flex}.day-draft{gap:var(--space-2);border:2px solid var(--control-border);flex-direction:column;display:flex}.card.day-draft>h2{margin-bottom:0}.day-draft-title{font-size:var(--text-lg)}.day-draft-warning{align-items:flex-start;gap:var(--space-1);display:flex}.day-draft-warning svg{margin-top:.15em}.day-draft-actions{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.conflict{gap:var(--space-3);border:2px solid var(--control-border);scroll-margin-top:var(--space-3);flex-direction:column;display:flex}.conflict-title{align-items:flex-start;gap:var(--space-2);font-size:var(--text-lg);display:flex}.conflict-list{gap:var(--space-2);flex-direction:column;display:flex}.conflict-list li{padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;display:flex}.conflict-field{font-weight:var(--weight-bold)}.day-program .disclosure-panel{padding-top:var(--space-1)}.events{gap:var(--space-3);flex-direction:column;display:flex}.events .day-add-event{padding-inline:var(--space-4)}.event-list{gap:var(--space-2);flex-direction:column;display:flex}.event-item{align-items:flex-start;gap:var(--space-3);display:flex}:root{--chart-km:var(--lightningcss-light,#2a78d6)var(--lightningcss-dark,#3987e5)}.week-km{border-top:1px solid var(--border);min-width:0;padding-top:12px}.week-km-frame{overscroll-behavior-x:contain;min-height:200px;overflow-x:auto}.week-km-canvas{position:relative}@media (width>=546px){.week-km-frame{min-height:240px}}.week-km-plot{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.week-km-bar{fill:var(--chart-km)}.week-km-bar-partial{fill-opacity:.35;stroke:var(--chart-km);stroke-width:1.5px;stroke-dasharray:3 3}.week-km-bar-zero{fill:var(--text)}.week-km-unknown{fill:var(--surface);stroke:var(--text);stroke-width:1.5px}.week-km-band{fill:var(--accent-soft)}.week-km-hits{position:absolute;inset:0}.week-km-hit{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0;position:absolute;top:0}@media (hover:hover){.week-km-hit:hover{box-shadow:inset 0 0 0 1px var(--control-border)}}.week-km-hit[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--text)}@media (forced-colors:active){.week-km-hit[aria-pressed=true]{outline-offset:-2px;outline:2px solid canvastext}}.week-km-legend{color:var(--muted);flex-wrap:wrap;gap:4px 16px;font-size:.88rem;display:flex}.week-km-legend li{align-items:center;gap:6px;display:inline-flex}.week-km-readout-row{flex-direction:column;gap:8px;display:flex}.week-km-readout{min-width:0;font-size:.95rem}.week-km-controls{gap:8px;display:flex}@media (width>=560px){.week-km-readout-row{flex-direction:row;justify-content:space-between;align-items:center}.week-km-controls{flex:none}}.week-km-rides{border:1px solid var(--border);border-radius:var(--control-radius);flex-direction:column;gap:8px;padding:12px;display:flex}.week-km-rides-title{margin:0;font-size:.95rem}.week-km-ride-list{flex-direction:column;gap:4px;display:flex}.week-km-open{align-self:flex-start}.week-km-table tr>:first-child{z-index:1;background:var(--surface);padding-right:8px;position:sticky;left:0}.week-km-table tr>:last-child{text-align:left}@media (width<=480px){.data-table.week-km-table th,.data-table.week-km-table td{padding-left:8px}.data-table.week-km-table tr>:last-child{white-space:normal}.week-km-th-tail{display:block}}:root{--chart-sleep:var(--lightningcss-light,#2a78d6)var(--lightningcss-dark,#3987e5);--chart-sleep-zero:var(--lightningcss-light,#22201c)var(--lightningcss-dark,#ece7df)}@media (width>=900px){.dynamics{--page-max:960px}}.dynamics-columns{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=900px){.dynamics-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.preset-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5rem),1fr));gap:8px;display:grid}.choice{min-width:0;min-height:var(--control-height);background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--control-radius);justify-content:center;align-items:center;gap:6px;padding:6px;font-size:.95rem;display:flex}.choice[aria-pressed=true]{background:var(--accent-soft);border:2.5px solid var(--accent);font-weight:700}@media (width>=600px){.preset-grid.period-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.preset-grid.period-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.preset-grid.period-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}.card.period-card{gap:var(--space-3);padding:0 var(--space-4) 0;flex-direction:column;display:flex}.period-card>.hint,.period-card>.message{margin-bottom:var(--space-4)}.period-head{align-items:center;gap:var(--space-2) var(--space-3);min-height:var(--control-height);cursor:pointer;display:flex}.period-title{font-weight:var(--weight-bold);flex:none}.period-dates{min-width:0;font-size:var(--text-sm);flex:auto}.period-icon{color:var(--muted);transition:transform var(--motion-fast) ease;flex:none}.period-block[open] .period-icon{transform:rotate(180deg)}.period-body{gap:var(--space-3);padding-bottom:var(--space-4);flex-direction:column;display:flex}.stat-grid{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));display:grid}.summary-interval{font-weight:var(--weight-bold)}.fact-list{flex-direction:column;gap:6px;display:flex}.fact-sublist{padding-left:var(--space-4);flex-direction:column;gap:2px;display:flex}.chart-figure{flex-direction:column;gap:4px;min-width:0;margin:0;display:flex}.chart-legend{padding-bottom:var(--space-2);flex-wrap:wrap;align-items:center;gap:0 20px;font-size:.92rem;display:flex}.legend-item{align-items:center;gap:var(--space-2);min-height:44px;font-size:inherit;font-weight:var(--weight-regular);display:inline-flex}.legend-note{min-height:0;padding-top:var(--space-1);color:var(--muted);flex-basis:100%}.legend-key{width:28px;height:12px;overflow:visible}.check-row{cursor:pointer}.check-row input{appearance:none;border-radius:var(--control-radius);cursor:pointer;background:0 0;border:0;flex:none;width:44px;height:44px;margin:0 -8px 0 -11px;position:relative}.check-row input:before{content:"";background:var(--surface);border:1.5px solid var(--control-border);border-radius:6px;position:absolute;inset:11px}.check-row input:checked:before{background:var(--accent);border-color:var(--accent)}.check-row input:checked:after{content:"";border:solid var(--on-accent);border-width:0 2.5px 2.5px 0;width:7px;height:12px;position:absolute;top:14px;left:18.5px;transform:rotate(45deg)}.chart-frame{border-radius:var(--control-radius);min-height:220px}@media (width>=546px){.chart-frame{min-height:300px}}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis{stroke:var(--control-border);stroke-width:1px}.chart-tick{fill:var(--muted);font-size:13px}.chart-crosshair{stroke:var(--control-border);stroke-width:1px}.chart-line{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.chart-measure{stroke:var(--chart-measure)}.chart-average{stroke:var(--chart-average)}.chart-gap{stroke-dasharray:3 6}.chart-goal{stroke:var(--muted);stroke-dasharray:9 5}.chart-goal-label{fill:var(--muted);font-size:13px}.chart-dot{fill:var(--chart-measure);stroke:var(--surface);paint-order:stroke}.chart-average-dot{fill:var(--surface);stroke:var(--chart-average);stroke-width:2px}.chart-readout{min-height:2.9em;font-size:.95rem}.weight-chart{flex-direction:column;gap:6px;min-width:0;display:flex}.weight-plot{cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.data-table{border-collapse:collapse;width:100%;max-width:560px;font-size:.92rem}.data-table caption{padding-top:var(--space-2);caption-side:bottom;text-align:left}.data-table th,.data-table td{border-bottom:1px solid var(--border-subtle);font-weight:var(--weight-regular);text-align:right;white-space:nowrap;padding:6px 0 6px 12px}.data-table th:first-child{text-align:left;padding-left:0}.data-table thead th{color:var(--muted);font-size:.82rem;font-weight:var(--weight-medium)}.sleep-frame{min-height:200px}@media (width>=546px){.sleep-frame{min-height:260px}}.sleep-plot{cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.sleep-bar{fill:var(--chart-sleep)}.sleep-bar-zero{fill:var(--chart-sleep-zero)}.sleep-bar-selected{stroke:var(--text);stroke-width:2px;paint-order:stroke}.sleep-day-row{gap:var(--space-2);flex-direction:column;display:flex}.sleep-day-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.sleep-day{min-width:0;font-size:.95rem}@media (width>=560px){.sleep-day-row{flex-direction:row;justify-content:space-between;align-items:center}.sleep-day-controls{flex:none}}.event-strip{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.strip-frame{border-radius:var(--control-radius);position:relative}.strip-plot{cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.strip-row-line{stroke:var(--border);stroke-width:1px}.strip-marker{fill:var(--muted)}.strip-marker-active{fill:var(--text);stroke:var(--surface);stroke-width:2px;paint-order:stroke}.strip-count{fill:var(--text);font-size:11px;font-weight:var(--weight-bold)}.strip-labels{pointer-events:none;margin:0;padding:0;position:absolute;inset:0}.strip-label{line-height:0;position:absolute;transform:translateY(-50%)}.strip-label .event-icon{width:1.25rem;height:1.25rem;color:var(--muted);margin:0}.strip-readout{color:var(--muted);font-size:var(--text-sm)}.strip-types{flex-wrap:wrap;gap:0 20px;font-size:.92rem;display:flex}.event-card{gap:var(--space-2);padding:var(--space-3);background:var(--surface);border:1.5px solid var(--control-border);border-radius:var(--radius);flex-direction:column;display:flex}.event-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.event-card-title{min-width:0;margin:0}.event-card-title:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.event-card-list{gap:var(--space-3);flex-direction:column;min-width:0;max-height:40vh;display:flex;overflow-y:auto}.event-card-item{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.event-card-item+.event-card-item{padding-top:var(--space-3);border-top:1px solid var(--border)}@media (width<=699px){.event-card{right:0;bottom:var(--sticky-bottom);z-index:20;border-radius:var(--radius) var(--radius) 0 0;max-height:60dvh;box-shadow:var(--shadow-sticky);position:fixed;left:0;overflow-y:auto}}.compare-periods{color:var(--muted);font-size:var(--text-sm)}.compare-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));display:grid}.compare-card{padding:var(--space-3);background:var(--surface-2);border-radius:var(--control-radius);flex-direction:column;gap:2px;display:flex}.compare-label{color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium)}.compare-value{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.compare-previous{color:var(--muted);font-size:var(--text-sm)}.compare-diff{color:var(--text);font-size:.95rem}.report-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.report-actions>.button{flex:200px}.report-stale{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:2px solid var(--control-border);border-radius:var(--control-radius);font-size:.92rem;font-weight:var(--weight-medium);display:flex}.week-nav{align-items:center;gap:var(--space-2);display:flex}.week-title{min-width:0;font-weight:var(--weight-bold);text-align:center;flex:1 1 0}.week-partial{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:2px solid var(--control-border);border-radius:var(--control-radius);font-size:.92rem;font-weight:var(--weight-medium);display:flex}.injection-last{padding:var(--space-3);background:var(--surface-2);border-radius:var(--control-radius);flex-direction:column;gap:2px;display:flex}.injection-last-label{color:var(--muted);font-size:var(--text-sm)}.injection-last-value{font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.injection-history{flex-direction:column;display:flex}.injection-item{border-bottom:1px solid var(--border-subtle);flex-direction:column;padding:6px 0;display:flex}.injection-item:last-child{border-bottom:0}.injection-item-main{min-width:0}.injection-item-interval{color:var(--muted);font-size:var(--text-sm)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#f5f2ec)var(--lightningcss-dark,#171614);--surface:var(--lightningcss-light,#fffdf9)var(--lightningcss-dark,#211f1c);--surface-2:var(--lightningcss-light,#f2eee6)var(--lightningcss-dark,#2a2724);--text:var(--lightningcss-light,#22201c)var(--lightningcss-dark,#ece7df);--muted:var(--lightningcss-light,#6b655c)var(--lightningcss-dark,#a59e92);--border:var(--lightningcss-light,#ddd6ca)var(--lightningcss-dark,#3a3631);--border-subtle:var(--lightningcss-light,#ebe5d9)var(--lightningcss-dark,#2f2c28);--control-border:var(--lightningcss-light,#8a8378)var(--lightningcss-dark,#7d766b);--accent:var(--lightningcss-light,#2f5d50)var(--lightningcss-dark,#7fb8a4);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#10201b);--accent-soft:var(--lightningcss-light,#e1ebe6)var(--lightningcss-dark,#25352f);--danger:var(--lightningcss-light,#9a2a1c)var(--lightningcss-dark,#f0a498);--danger-soft:var(--lightningcss-light,#f7e6e2)var(--lightningcss-dark,#3a2320);--mark:var(--lightningcss-light,#f4e3a6)var(--lightningcss-dark,#57470f);--backdrop:var(--lightningcss-light,#14120f8c)var(--lightningcss-dark,#000000a6);--chart-measure:var(--lightningcss-light,#2a78d6)var(--lightningcss-dark,#3987e5);--chart-average:var(--lightningcss-light,#eb6834)var(--lightningcss-dark,#d95926);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:10px;--radius:14px;--radius-lg:20px;--radius-pill:999px;--control-radius:12px;--text-xs:.78rem;--text-sm:.88rem;--text-base:1rem;--text-lg:1.12rem;--text-xl:1.35rem;--text-2xl:1.75rem;--text-3xl:2.4rem;--weight-regular:400;--weight-medium:600;--weight-bold:700;--leading-tight:1.2;--leading-normal:1.45;--focus-ring:3px solid var(--accent);--focus-ring-offset:2px;--shadow-card-color:var(--lightningcss-light,#22201c12)var(--lightningcss-dark,#0006);--shadow-sticky-color:var(--lightningcss-light,#00000024)var(--lightningcss-dark,#0000008c);--shadow-card:0 1px 2px var(--shadow-card-color);--shadow-sticky:0 4px 14px var(--shadow-sticky-color);--motion-fast:.12s;--motion-base:.2s;--control-height:48px;--control-height-lg:56px;--nav-height:60px;--bottom-bar:calc(var(--nav-height) + env(safe-area-inset-bottom,0px))}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width>=720px){:root{--bottom-bar:env(safe-area-inset-bottom,0px)}}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0s;--motion-base:0s}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:106.25%}html:has(dialog[open]){overflow:hidden}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:var(--leading-normal);font-variant-numeric:tabular-nums;overflow-wrap:break-word;margin:0}h1,h2,h3,p,ul,dl,dd{margin:0}ul{padding:0;list-style:none}h1{font-size:var(--text-xl);line-height:var(--leading-tight)}h2{font-size:var(--text-lg);line-height:1.3}h3{font-size:var(--text-base)}svg{flex:none;width:1.25em;height:1.25em}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}[tabindex="-1"]:focus{outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.85rem}.user-text{white-space:pre-wrap;overflow-wrap:anywhere}.selectable{-webkit-user-select:all;user-select:all}.card{min-width:0;padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.card>h2{margin-bottom:var(--space-3)}.form-stack{gap:var(--space-3);flex-direction:column;display:flex}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}label,legend{font-size:.95rem;font-weight:var(--weight-medium)}.input{width:100%;min-width:0;max-width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--control-radius);font:inherit;font-size:var(--text-base);font-variant-numeric:tabular-nums;display:block}.input::placeholder{color:var(--muted);opacity:1}.input[aria-invalid=true]{border-color:var(--danger);border-width:2px}.input-center{text-align:center}.input-lg{min-height:var(--control-height-lg);font-size:var(--text-2xl);font-weight:var(--weight-bold)}.textarea{resize:vertical;min-height:0;line-height:1.4}@media (height<=420px){.textarea{max-height:6.5rem}}.counter{text-align:right}.inline-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.inline-row>.input{flex:1 1 0}.date-field{align-items:center;gap:var(--space-2);min-width:0;display:flex}.date-field>.input{flex:1 1 0}.date-picker{flex:none;display:inline-flex;position:relative}.date-native{opacity:0;pointer-events:none;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.field-error,.message{overflow-wrap:anywhere;align-items:flex-start;gap:6px;font-size:.92rem;display:flex}.field-error,.message-error{color:var(--danger);font-weight:var(--weight-medium)}.field-error svg,.message svg{margin-top:.1em}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.button{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--control-height);padding:var(--space-2) 18px;background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--control-radius);font-weight:var(--weight-medium);text-align:center;display:inline-flex}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--weight-bold);box-shadow:var(--shadow-card)}.button-danger{border-color:var(--danger);color:var(--danger)}.button-accent{background:var(--accent-soft);border:2px solid var(--accent)}a.button{text-decoration:none}.button-wide{width:100%}.button-stack{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.text-button{min-height:44px;padding:0 var(--space-2);color:var(--accent);border-radius:var(--control-radius);font-weight:var(--weight-medium);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;text-decoration:underline}.inline-row>.text-button,.type-row>.text-button,.notice>.text-button{align-self:center}.text-button-danger{color:var(--danger)}.icon-button{width:var(--control-height);height:var(--control-height);color:var(--text);border-radius:var(--control-radius);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button-bordered{background:var(--surface);border:1.5px solid var(--control-border)}.card-head{align-items:baseline;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.card-head-text{gap:var(--space-1);flex-direction:column;flex:10rem;min-width:0;display:flex}.card-title{min-width:0}.card-subtitle{color:var(--muted);font-size:var(--text-sm)}.card-action{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.card-tight{padding:var(--space-3)}.card-plain{box-shadow:none;background:0 0;border-color:#0000;padding:0}.stat{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.stat-label{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-tight)}.stat-value{font-size:var(--text-2xl);font-weight:var(--weight-bold);line-height:var(--leading-tight);font-variant-numeric:tabular-nums}.stat-lg .stat-value{font-size:var(--text-3xl)}.stat-sm .stat-value{font-size:var(--text-xl)}.stat-unit{color:var(--muted);font-size:var(--text-base);font-weight:var(--weight-medium)}.stat-note{color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-tight)}.segmented{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5rem),1fr));display:grid}.segmented-option{justify-content:center;align-items:center;gap:var(--space-1);min-width:0;min-height:var(--control-height);padding:var(--space-1) var(--space-2);background:var(--surface);color:var(--text);border:1.5px solid var(--control-border);border-radius:var(--control-radius);font-size:.95rem;font-weight:var(--weight-medium);display:flex}.segmented-option[aria-pressed=true]{background:var(--accent-soft);border:2.5px solid var(--accent);font-weight:var(--weight-bold)}.tabs{gap:var(--space-1);overscroll-behavior-x:contain;border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);color:var(--muted);font-size:var(--text-base);font-weight:var(--weight-medium);white-space:nowrap;border-bottom:3px solid #0000;flex:none;text-decoration:none;display:inline-flex}.tab[aria-current=page]{color:var(--accent);font-weight:var(--weight-bold);border-bottom-color:var(--accent)}.tab:focus-visible{outline-offset:-3px}.disclosure{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.disclosure-plain{background:0 0;border:0;border-radius:0}.disclosure-heading{font-size:inherit;font-weight:inherit;margin:0}.disclosure-toggle{align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);color:var(--text);border-radius:inherit;font-size:var(--text-base);font-weight:var(--weight-medium);text-align:left;background:0 0;border:0;display:flex}.disclosure-plain .disclosure-toggle{padding-inline:0}.disclosure-title{flex:auto;min-width:0}.disclosure-summary{color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-regular);flex:none}.disclosure-icon{transition:transform var(--motion-fast) ease}:root{--chevron-down:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.disclosure-toggle[aria-expanded=true] .disclosure-icon{transform:rotate(180deg)}.disclosure-panel{padding:0 var(--space-3) var(--space-3);animation:disclosure-open var(--motion-base) ease-out}.disclosure-plain .disclosure-panel{padding-inline:0}@keyframes disclosure-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.notice{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:8px 8px 8px 16px;display:flex}.event-icon{width:1.5rem;height:1.5rem;color:var(--accent);margin-top:2px}.event-body{flex-direction:column;flex:1 1 0;gap:4px;min-width:0;display:flex}.event-title{flex-wrap:wrap;gap:2px 10px;display:flex}.period-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width<=479px){.period-row{grid-template-columns:minmax(0,1fr)}}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.copy-status:empty,.status-line:empty{display:none}.is-stale{opacity:.5}.table-scroll{overflow-x:auto}:root{--header-height:52px;--sticky-gap:var(--space-2);--sticky-bottom:calc(var(--bottom-bar) + var(--sticky-gap));--content-bottom:calc(var(--bottom-bar) + var(--space-6));--content-inline-start:max(var(--space-4), env(safe-area-inset-left,0px));--content-inline-end:max(var(--space-4), env(safe-area-inset-right,0px))}.app-header{padding-top:env(safe-area-inset-top,0px);background:var(--surface);border-bottom:1px solid var(--border)}.app-header-inner{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:992px;min-height:var(--header-height);padding-right:max(var(--space-2), env(safe-area-inset-right,0px));padding-left:max(var(--space-4), env(safe-area-inset-left,0px));margin:0 auto;display:flex}.brand{font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:.01em}.brand-large{font-size:1.6rem}.content{max-width:992px;padding:var(--space-4) var(--content-inline-end) var(--content-bottom) var(--content-inline-start);margin:0 auto}.nav{z-index:20;padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);background:var(--surface);border-top:1px solid var(--border);display:flex;position:fixed;inset:auto 0 0}.nav-link{min-width:0;min-height:var(--nav-height);padding:6px var(--space-1);color:var(--muted);font-size:var(--text-xs);line-height:var(--leading-tight);border-top:3px solid #0000;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.nav-link[aria-current=page]{color:var(--accent);font-weight:var(--weight-bold);border-top-color:var(--accent)}.nav-link[aria-current=page] svg{stroke-width:2.4px}.nav-link:focus-visible{outline-offset:-3px}@media (width>=720px){.app-header{z-index:30;position:sticky;top:0}html{scroll-padding-top:calc(var(--header-height) + env(safe-area-inset-top,0px) + var(--space-2))}.nav{background:0 0;border:0;padding:0;position:static}.nav-link{gap:var(--space-2);min-height:var(--control-height);border-top:0;border-bottom:3px solid #0000;flex-direction:row;flex:none;padding:0 14px;font-size:.95rem}.nav-link[aria-current=page]{border-bottom-color:var(--accent)}}@media (width>=720px) and (width<=900px){.nav-link{padding:0 var(--space-2)}}.startup{max-width:420px;min-height:100dvh;padding:12vh var(--space-4) var(--space-6);text-align:center;flex-direction:column;align-items:center;gap:14px;margin:0 auto;display:flex}.login-form{text-align:left;width:100%}.page,.day{gap:var(--space-4);width:100%;max-width:var(--page-max,600px);flex-direction:column;margin:0 auto;display:flex}@media (width>=900px){.day{--page-max:960px}}
