.brand{font-family:var(--font-rounded);color:var(--text);font-size:22px;font-weight:700;text-decoration:none}.stack{gap:var(--space-3);flex-direction:column;display:flex}.stack-tight{gap:var(--space-1);flex-direction:column;display:flex}.row{gap:var(--space-3);align-items:flex-end;display:flex}.row>*{flex:1}.row-tight{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.grid-2{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.grid-sidebar{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 360px;align-items:start;display:grid}@media (width<=1000px){.grid-2,.grid-sidebar{grid-template-columns:minmax(0,1fr)}}.shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{gap:var(--space-4);height:100vh;padding:var(--space-4) var(--space-3);border-right:1px solid var(--background-selected);flex-direction:column;display:flex;position:sticky;top:0}.sidebar nav{gap:var(--space-1);flex-direction:column;display:flex}.nav-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-input);color:var(--text);text-decoration:none}.nav-link:hover{background:var(--background-element)}.nav-link.active{background:var(--background-selected);font-weight:700}.sidebar-foot{gap:var(--space-2);flex-direction:column;align-items:flex-start;margin-top:auto;display:flex}.sidebar-email{overflow-wrap:anywhere}.content{padding:var(--space-5) var(--space-5) var(--space-6);min-width:0}@media (width<=760px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{border-right:none;border-bottom:1px solid var(--background-selected);height:auto;padding:var(--space-3);position:static}.sidebar nav{flex-flow:wrap}.sidebar-foot{flex-direction:row;align-items:center}.content{padding:var(--space-4) var(--space-3) var(--space-6)}}.page{gap:var(--space-4);max-width:var(--content-width);flex-direction:column;display:flex}.page-reading{max-width:var(--reading-width)}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-headings{gap:var(--space-1);flex-direction:column;display:flex}.page-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.auth{align-items:center;gap:var(--space-4);min-height:100vh;padding:var(--space-5) var(--space-3);flex-direction:column;display:flex}.auth-card{gap:var(--space-3);flex-direction:column;width:100%;max-width:420px;display:flex}.auth-card-wide{max-width:560px}.auth-links{gap:var(--space-2);flex-direction:column;align-items:center;display:flex}.auth-footer{gap:var(--space-3);margin-top:auto;display:flex}.link-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.link-list li{background:var(--background-element);border-radius:var(--radius-card);padding:var(--space-3);flex-direction:column;display:flex}.btn{min-height:48px;padding:0 var(--space-4);border-radius:var(--radius-card);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);border:none;font-weight:700;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn[aria-busy]{opacity:.8}.btn-primary{background:var(--tint);color:var(--on-tint)}.btn-secondary{background:var(--background-element);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-small{min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-input);font-size:14px}.text-button{font:inherit;color:var(--tint);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px}.text-button:disabled{opacity:.5;cursor:default}.text-button.danger{color:var(--danger)}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.input{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-input);background:var(--background-element);color:var(--text);font:inherit;border:1px solid #0000}.input:focus{border-color:var(--tint);outline:none}.input::placeholder{color:var(--text-secondary)}.textarea{resize:vertical;min-height:96px}select.input{appearance:auto}.checkbox{gap:var(--space-2);cursor:pointer;align-items:flex-start;display:flex}.checkbox input{width:20px;height:20px;accent-color:var(--tint);margin:2px 0 0}fieldset{border:none;min-width:0;margin:0;padding:0}.segmented-field{gap:var(--space-1);flex-direction:column;display:flex}.segmented-field legend{margin-bottom:var(--space-1);padding:0}.segmented{background:var(--background-element);border-radius:var(--radius-input);padding:var(--space-half);gap:var(--space-half);display:flex;overflow-x:auto}.segmented button{padding:0 var(--space-2);min-height:40px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1 0 auto}.segmented button.selected{background:var(--background);font-weight:700;box-shadow:0 1px 2px #00000026}.choice-list{gap:var(--space-2);flex-direction:column;display:flex}.choice{align-items:flex-start;gap:var(--space-half);text-align:left;padding:var(--space-3);border-radius:var(--radius-card);background:var(--background-element);color:var(--text);font:inherit;cursor:pointer;border:2px solid #0000;flex-direction:column;display:flex}.choice.selected{border-color:var(--tint)}.choice-label{font-weight:700}.spinner-wrap{gap:var(--space-2);align-items:center;display:inline-flex}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading{padding:var(--space-5);color:var(--text-secondary);justify-content:center;display:flex}.card{background:var(--background-element);border-radius:var(--radius-card);padding:var(--space-3);gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.card-plain{border:1px solid var(--background-selected);background:0 0}.collapsible{border:1px solid var(--background-selected);border-radius:var(--radius-card);overflow:hidden}.collapsible>summary{cursor:pointer;background:var(--background-element);padding:var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-3);list-style:none;display:flex}.collapsible>summary::-webkit-details-marker{display:none}.collapsible>summary:after{content:"⌄";color:var(--text-secondary)}.collapsible[open]>summary:after{content:"⌃"}.collapsible-headings{flex-direction:column;gap:2px;display:flex}.collapsible-title{font-size:18px;font-weight:700}.collapsible-body{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.facts{background:var(--background-element);border-radius:var(--radius-card);padding:var(--space-3);gap:var(--space-1);flex-direction:column;margin:0;display:flex}.fact{justify-content:space-between;gap:var(--space-3);display:flex}.fact dd{margin:0}.big-number{font-size:32px;font-weight:600;line-height:44px}.macro-trio{justify-content:space-between;display:flex}.macro-figure{flex-direction:column;flex:1;align-items:center;display:flex}.tone-protein{color:var(--protein)}.tone-carbs{color:var(--carbs)}.tone-fat{color:var(--fat)}.tone-success{color:var(--success)}.tone-warning{color:var(--warning)}.tone-danger{color:var(--danger)}.list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list-row{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--background-element);border-radius:var(--radius-card);padding:var(--space-3);color:var(--text);width:100%;font:inherit;text-align:left;border:none;text-decoration:none;display:flex}button.list-row,a.list-row{cursor:pointer}button.list-row:hover,a.list-row:hover{background:var(--background-selected)}.list-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.notice{background:var(--background-element);border-left:4px solid var(--tint);border-radius:var(--radius-input);padding:var(--space-3)}.notice-success{border-left-color:var(--success)}.notice-warning{border-left-color:var(--warning)}.table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.table th,.table td{padding:var(--space-2) var(--space-2);text-align:right}.table th:first-child,.table td:first-child{text-align:left}.table thead th{color:var(--text-secondary);font-size:14px;font-weight:500}.table tbody tr+tr td{border-top:1px solid var(--background-selected)}.numeric{font-variant-numeric:tabular-nums}.entry-items{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.entry-items li{justify-content:space-between;gap:var(--space-3);display:flex}.entry-items li>:last-child{text-align:right}.exercise-readout{gap:var(--space-half);flex-direction:column;display:flex}.run{padding-left:var(--space-3)}a.card{color:var(--text);text-decoration:none}a.card:hover{background:var(--background-selected)}a.btn{text-decoration:none}.row>.grow-0{flex:none}.receipt{border:1px solid var(--success);border-radius:var(--radius-card);padding:var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.dismiss{color:var(--text-secondary);font:inherit;cursor:pointer;padding:var(--space-1) var(--space-2);background:0 0;border:none}.exercise-name{background:0 0;padding-left:0;font-weight:700}.exercise-name:focus{background:var(--background);padding-left:var(--space-3)}.sets-table th,.sets-table td{text-align:center;padding:var(--space-1)}.sets-table th:first-child,.sets-table td:first-child{text-align:center;width:44px}.numeric-input{text-align:center;font-variant-numeric:tabular-nums;background:var(--background)}.row-tight.end{justify-content:flex-end;gap:var(--space-4)}.session-group{border:1px solid #0000}.session-group.active{border-color:var(--tint)}.session-group.done{border-color:var(--success)}.session-toggle{align-items:center;gap:var(--space-2);font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;padding:0;display:flex}.session-name{flex:1}.tint{color:var(--tint)}.icon-button{font:inherit;cursor:pointer;padding:var(--space-1) var(--space-2);background:0 0;border:none}.icon-button:disabled{opacity:.4;cursor:default}.pending-slot{font-style:italic;text-align:center!important}.slot-actions{gap:var(--space-1);display:inline-flex}.proposal{gap:var(--space-2);flex-direction:column;display:flex}.chart-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));display:grid}.chart-card{gap:var(--space-3)}.chart-card-title{margin:0;font-size:16px}.chart{width:100%;min-width:0;position:relative}.chart svg{touch-action:pan-y;display:block;overflow:visible}.chart-tick{font-variant-numeric:tabular-nums}.chart-halo{paint-order:stroke;stroke:var(--background-element);stroke-width:4px;stroke-linejoin:round}.chart-hit{cursor:crosshair}.chart-tooltip{z-index:2;pointer-events:none;background:var(--text);max-width:240px;color:var(--background);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:8px;flex-direction:column;gap:1px;padding:6px 9px;font-size:12px;line-height:1.35;display:flex;position:absolute;transform:translate(-50%,-100%)}.chart-headline{align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.chart-headline-value{font-family:var(--font-rounded);font-size:26px;font-weight:700;line-height:1.1}.chart-subhead{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:0;font-size:12px;font-weight:700}.chart-legend{gap:var(--space-1) var(--space-3);color:var(--text-secondary);flex-wrap:wrap;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:inline-flex}.chart-swatch{background:var(--swatch);border-radius:3px;width:10px;height:10px;display:inline-block}.chart-swatch-line{border-radius:1px;width:14px;height:2px}.chart-swatch-dash{border-top:2px dashed var(--swatch);background:0 0;border-radius:0;width:14px;height:0}.chart-swatch-dot{border-radius:50%;width:7px;height:7px}.chart-swatch-ring{background:var(--background);width:8px;height:8px;box-shadow:0 0 0 2px var(--swatch);border-radius:50%}.chart-tiles,.tape-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.chart-tile{background:var(--background);border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.page>.stack>.chart-tiles .chart-tile,section[aria-label]>.chart-tiles .chart-tile{background:var(--background-element)}.chart-tile-value{font-family:var(--font-rounded);font-size:22px;font-weight:700;line-height:1.15}.chart-empty{margin:0}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{font:inherit;cursor:pointer;border:1px solid var(--background-selected);background:var(--background);color:var(--text-secondary);border-radius:999px;padding:4px 11px;font-size:13px;font-weight:600}.chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--background)}.chip:focus-visible{outline:2px solid var(--tint);outline-offset:2px}.chart-list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.chart-link{color:inherit;text-decoration:none}.chart-link:hover{background:var(--background-selected)}.progress-calendar-heading{margin-top:var(--space-4)}.compare{gap:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:640px;display:grid}.compare-shot{gap:var(--space-1);flex-direction:column;margin:0;display:flex}.compare-shot img,.wipe img{aspect-ratio:3/4;object-fit:cover;background:var(--background-selected);border-radius:12px;width:100%;max-width:100%}.compare-picker{flex-direction:column;gap:2px;display:flex}.compare-picker select{font:inherit;max-width:100%}.wipe{width:100%;max-width:420px;position:relative}.wipe .wipe-after{position:absolute;inset:0}.wipe-bar{background:var(--background);width:2px;box-shadow:0 0 0 1px var(--text-secondary);pointer-events:none;position:absolute;top:0;bottom:0}#wipe-range{width:100%;max-width:420px}.calendar{table-layout:fixed;border-spacing:4px;width:100%}.calendar th{font-weight:500}.calendar-day{aspect-ratio:1;background:var(--background-element);border-radius:var(--radius-input);width:100%;max-height:88px;font:inherit;color:var(--text);border:2px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}button.calendar-day{cursor:pointer}button.calendar-day:hover{background:var(--background-selected)}.calendar-day.today{border-color:var(--tint)}.calendar-day.future{opacity:.35}.mark{min-height:20px}.tone-won{color:var(--success)}.tone-tried{color:var(--warning)}.tone-lost{color:var(--danger)}.legend{gap:var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.legend li{gap:var(--space-2);align-items:center;display:flex}.readout th,.readout td{text-align:center;padding:var(--space-1)}.readout th:first-child,.readout td:first-child{text-align:center;width:44px}.photo-large{aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-card);width:100%;max-width:480px}.photo-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.photo-tile{gap:var(--space-1);flex-direction:column;display:flex}.photo-tile img{aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-input);background:var(--background-element);width:100%}.month-heading{flex-direction:column;align-items:center;display:flex}.plain-button{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.photo-tile.selected img{outline:3px solid var(--tint);outline-offset:2px}.order-row{gap:var(--space-2);background:var(--background-element)}.order-row.dragging{z-index:1;position:relative;box-shadow:0 4px 16px #00000040}.order-handle{min-width:40px;min-height:40px;color:var(--text-secondary);font:inherit;cursor:grab;touch-action:none;background:0 0;border:none;border-radius:6px;font-size:1.25rem}.order-handle:active{cursor:grabbing}.today-food{gap:var(--space-3)}.today-food-row{align-items:center;gap:var(--space-3);display:flex}.today-ring{flex:none;width:140px;height:140px;position:relative}.today-ring svg{display:block}.today-ring-centre{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.today-ring-value{font-size:28px;font-weight:700;line-height:32px}.today-bars{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.today-bars .spread{gap:0 var(--space-2);flex-wrap:wrap}.today-bar-track{background:var(--background-selected);border-radius:4px;height:8px;overflow:hidden}.today-bar-fill{border-radius:4px;height:100%}.today-numbers-toggle{align-self:flex-start}.set-segments{gap:var(--space-1);display:flex}.set-segment{background:var(--background-selected);border-radius:4px;flex:1;height:8px}.set-segment.done{background:var(--tint)}@media (width<=420px){.today-food-row{flex-direction:column;align-items:stretch}.today-ring{align-self:center}}
