/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid;--tw-border-style:solid;--tw-font-weight:initial}}}@layer theme{:root,:host{--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-accent:var(--accent)}}@layer base;@layer components{.cn-button{border-radius:var(--radius-input);border-style:var(--tw-border-style);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);background-clip:padding-box;border-width:1px;border-color:#0000}.cn-button-variant-default{background-color:var(--primary);color:var(--primary-foreground)}.cn-button-variant-outline{border-color:var(--border);background-color:var(--background);color:var(--foreground)}.cn-button-variant-secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.cn-button-variant-ghost{color:var(--foreground);background-color:#0000}.cn-button-variant-destructive{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.cn-button-variant-destructive{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.cn-button-variant-destructive{color:var(--destructive)}.cn-button-variant-link{color:var(--primary);text-underline-offset:4px;background-color:#0000}.cn-button-size-default{min-height:calc(var(--spacing) * 11);min-width:calc(var(--spacing) * 11);gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 3)}.cn-button-size-icon{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.cn-input{min-height:calc(var(--spacing) * 11);border-radius:var(--radius-input);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);padding-inline:calc(var(--spacing) * 2.5);padding-block:var(--spacing);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.cn-textarea{border-radius:var(--radius-input);border-style:var(--tw-border-style);border-width:1px;border-color:var(--input);background-color:var(--background);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none}.inline-flex{display:inline-flex}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-full{width:100%}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.items-center{align-items:center}.justify-center{justify-content:center}.whitespace-nowrap{white-space:nowrap}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-none{-webkit-user-select:none;user-select:none}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--color-paper:oklch(98.181% .00443 179.74);--color-surface:oklch(99.524% .00248 165.08);--color-canvas:oklch(95.85% .00827 157.09);--color-ink:oklch(32.722% .04354 178.95);--color-ink-muted:oklch(51.793% .03502 164.23);--color-green:oklch(50.395% .09472 163.45);--color-mint:oklch(94.671% .02971 161.1);--color-mint-soft:oklch(96.671% .01402 155.59);--color-blue:oklch(50.787% .1002 243.09);--color-sky:oklch(95.187% .02408 248.08);--color-line:oklch(92.478% .01334 159.9);--color-input-line:oklch(64.456% .02804 157.82);--color-water-surface:oklch(96.952% .01135 217.54);--color-water-ink:oklch(49.936% .0698 227.12);--color-water-line:oklch(91.494% .02279 217.64);--color-water-muted:oklch(50.094% .0441 226.29);--color-tea:oklch(93.938% .02034 58.06);--color-tea-ink:oklch(49.726% .06494 52.7);--color-tea-line:oklch(84.79% .03233 62.76);--color-tea-primary:oklch(53.231% .06332 56.29);--color-error:oklch(50.178% .14859 24.21);--color-error-surface:oklch(96.667% .01632 22.08);--color-error-line:oklch(85.726% .03935 27.79);--color-warning-surface:oklch(97.858% .02034 81.78);--color-warning-ink:oklch(50.259% .07059 82.23);--color-warning-line:oklch(92.244% .03719 84.58);--color-inactive-surface:oklch(95.475% .00618 137.77);--color-accent:var(--color-green);--color-accent-ink:var(--color-surface);--color-focus:var(--color-blue);--font-body:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-display:var(--font-body);--font-numeric:ui-rounded, "SF Pro Rounded", var(--font-body);--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-gutter:20px;--space-lg:24px;--space-xl:32px;--text-caption:.75rem;--text-small:.8125rem;--text-body:1rem;--text-section:1.0625rem;--text-title:clamp(1.5625rem, 6.5vw, 1.75rem);--text-number:2.25rem;--text-display:2.5rem;--radius-input:8px;--radius-card:12px;--radius-small:8px;--radius-pill:999px;--rule-width:1px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.2s;--background:var(--color-paper);--foreground:var(--color-ink);--card:var(--color-surface);--card-foreground:var(--color-ink);--popover:var(--color-surface);--popover-foreground:var(--color-ink);--primary:var(--color-green);--primary-foreground:var(--color-surface);--secondary:var(--color-mint);--secondary-foreground:var(--color-green);--muted:var(--color-inactive-surface);--muted-foreground:var(--color-ink-muted);--accent:var(--color-mint-soft);--accent-foreground:var(--color-green);--destructive:var(--color-error);--border:var(--color-line);--input:var(--color-input-line);--ring:var(--color-focus);color:#183c35;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--nav-height:64px;--bg:#f6faf9;--ink:#183c35;--mint:#ddf4e7;--sky:#e3f1ff;--green:#217555;--blue:#286b9a;--ink-muted:#61766c;--line:#e5ede8;--danger:#a83737;--radius:24px;--shadow:0 4px 30px #183c3504;background:#edf3ef;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-weight:400;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}button{color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #286b9a88}button:active:not(:disabled),.action-card:active,.record-row:active{opacity:.75}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.35}h1{letter-spacing:-1px;font-size:26px}h2{font-size:18px}h3{font-size:16px}small{font-size:13px;font-weight:400}svg{vertical-align:middle;flex-shrink:0}strong,.weekly-value,.weight-summary,.detail-summary,.workout-main-stat{font-variant-numeric:tabular-nums;margin:14px 0 2px}fieldset{border:0;min-width:0;margin:0;padding:0}label{font-size:14px;font-weight:500;display:block}input,textarea,select{width:100%;min-width:0;color:var(--ink);appearance:none;background:#fff;border:1px solid #d8e4dc;border-radius:13px;min-height:48px;margin-top:8px;padding:13px 14px;font-size:16px;line-height:1.4;display:block}input::placeholder,textarea::placeholder{color:#819189}input[type=checkbox]{appearance:auto;width:20px;height:20px;min-height:20px;accent-color:var(--green);flex-shrink:0;margin:0}input[type=datetime-local],input[type=date],input[type=month]{-webkit-appearance:none;width:100%;min-width:0}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2361766c' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}textarea{resize:vertical}input[aria-invalid=true]{border-color:var(--danger)}.muted,.caption{color:var(--ink-muted)}.caption{font-size:12px;font-weight:400;line-height:1.6;display:block}.center{text-align:center}.full{width:100%}.mint{background:var(--mint)}.sky{background:var(--sky);color:var(--blue)}.small-label,.eyebrow{color:var(--ink-muted);font-size:12px;font-weight:500}.eyebrow{letter-spacing:1.2px;font-size:11px}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:12px;padding:16px}.card h2+p{margin-top:12px}.button{text-align:center;border:0;border-radius:15px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:10px 16px;font-size:15px;font-weight:600;display:inline-flex}.blue-primary{background:var(--blue);color:#fff}.secondary{background:var(--mint);color:var(--green)}.secondary.blue{background:var(--sky);color:var(--blue)}.text-button{color:var(--green);background:0 0;border:0;justify-content:center;align-items:center;gap:5px;min-width:44px;min-height:44px;padding:5px 9px;font-size:13px;font-weight:600;display:inline-flex}.icon-button{background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.danger{color:var(--danger)}.danger-outline{color:var(--danger);background:#fff;border:1px solid #ecd9d6}.app-shell{background:var(--bg);max-width:480px;min-height:100dvh;padding-top:var(--safe-top);margin:auto;box-shadow:0 0 60px #183c3505}.app-header{justify-content:space-between;align-items:center;height:56px;padding:6px 20px;display:flex}.wordmark{letter-spacing:1px;align-items:center;gap:9px;font-size:23px;font-weight:650;display:flex}.wordmark-dot{color:var(--green)}.page-content{padding:6px 20px calc(var(--nav-height) + var(--safe-bottom) + 12px)}.page-title{justify-content:space-between;align-items:flex-end;margin:0;display:flex}.page-title h1{margin-top:4px}.page-title h1:first-child{margin-top:0}.intro{color:var(--ink-muted);margin-top:4px;font-size:14px}.bottom-nav{z-index:15;width:min(480px,100%);height:calc(var(--nav-height) + var(--safe-bottom));padding:5px 24px calc(5px + var(--safe-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);background:#ffffffef;justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav a{color:#788a81;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:76px;font-size:11px;font-weight:500;display:flex}.bottom-nav a.active{color:var(--green)}.bottom-nav a.active svg{stroke-width:2.3px}.morning-card{background:#f1f6ec;border:1px solid #e1eae0;border-radius:18px;align-items:center;gap:13px;margin-top:12px;padding:12px 14px;display:flex}.sun-icon{color:#62774a;background:#e6eedb;border-radius:14px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.morning-card h2{font-size:15px}.morning-card p{color:var(--ink-muted);margin-top:4px;font-size:11px}.morning-card.complete{background:#eaf6ef;border-color:#daeade}.morning-card.complete .sun-icon{color:var(--green);background:var(--mint)}.action-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.action-card{border-radius:20px;flex-direction:column;min-height:132px;padding:16px;display:flex;position:relative;overflow:hidden}.weight-action{background:var(--mint);color:var(--green)}.workout-action{background:var(--sky);color:var(--blue)}.action-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.action-add{background:#ffffff80;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.action-label{letter-spacing:-.4px;font-size:21px;font-weight:600}.action-caption{opacity:.9;margin-top:4px;font-size:11px}.scale-lines{opacity:.19;align-items:flex-end;gap:7px;height:25px;display:flex;position:absolute;bottom:-2px;left:21px;right:0}.scale-lines i{background:var(--green);flex-shrink:0;width:1px;height:14px}.scale-lines i:nth-child(3n){height:24px}.trail-lines{fill:none;width:100%;height:48px;stroke:var(--blue);stroke-width:1.1px;opacity:.2;position:absolute;bottom:-7px;left:10%}.weekly-card{border:1px solid var(--line);background:#fff;border-radius:21px;align-items:center;gap:14px;margin-top:12px;padding:12px 16px;display:flex}.weekly-icon{color:#6d8376;background:#f1f5f2;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.weekly-value{letter-spacing:-1px;margin-top:2px;font-size:28px;font-weight:600;line-height:1.3}.weekly-value span{letter-spacing:0;color:var(--ink-muted);margin-left:7px;font-size:12px;font-weight:400}.circle-link{border:1px solid var(--line);width:44px;height:44px;color:var(--green);border-radius:50%;place-items:center;margin-left:auto;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:8px;margin:18px 0 10px;display:flex}.section-heading h2{font-size:17px}.section-heading>span{color:var(--ink-muted);font-size:12px}.record-list{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden}.record-list .record-row:last-child{border-bottom:0}.record-row{border-bottom:1px solid #eef3ef;align-items:center;gap:12px;min-height:72px;padding:12px 14px;display:flex}.record-icon{width:43px;height:43px;color:var(--green);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.record-icon.sky{color:var(--blue)}.record-main{flex:1;min-width:0}.record-main strong{font-size:15px;display:block}.record-main>span{color:var(--ink-muted);margin-top:4px;font-size:11px;display:block}.empty{text-align:left;border:1px dashed #dce7df;border-radius:22px;grid-template-columns:40px minmax(0,1fr);align-items:center;column-gap:12px;padding:12px 14px;display:grid}.empty-icon{color:#94aa97;background:#edf4ee;border-radius:50%;grid-row:span 2;place-items:center;width:40px;height:40px;margin:0;display:grid}.empty h3{color:#597063;font-size:14px}.empty p{color:var(--ink-muted);max-width:none;margin:3px 0 0;font-size:12px}.empty a{color:var(--green);min-height:44px;padding:10px;text-decoration:underline;display:inline-block}.gentle-note{color:#74877b;text-align:center;letter-spacing:.5px;margin:14px 0 0;font-size:11px}.draft-banner{color:#786032;background:#fff7e9;border:1px solid #f1e4ca;border-radius:16px;gap:12px;margin-top:12px;padding:0 12px;display:block}.draft-banner strong{font-size:13px}.draft-banner p{font-size:11px}.draft-banner a{align-items:center;min-height:44px;margin-right:9px;font-size:12px;display:inline-flex}.draft-banner>svg{margin-top:2px}.draft-banner summary{cursor:pointer;align-items:center;gap:9px;min-height:48px;display:flex}.draft-banner summary svg:last-child{margin-left:auto}.draft-banner>div{padding:0 0 8px 27px}.draft-banner[open] summary svg:last-child{transform:rotate(90deg)}.draft-banner summary::-webkit-details-marker{display:none}.calendar-card{border:1px solid var(--line);background:#fff;border-radius:24px;margin-top:12px;padding:12px}.app-shell[data-page=calendar] .section-heading{margin:14px 0 8px}.month-heading{justify-content:space-between;align-items:center;padding:0 2px 4px;display:flex}.month-heading h2{font-size:16px}.month-heading h2 span{margin-left:5px;font-weight:400}.calendar-week,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-week span{text-align:center;color:#829187;padding:4px 0 7px;font-size:11px}.calendar-day{background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:44px;padding:5px 0;font-size:14px;font-weight:500;display:flex}.calendar-day.today:not(.selected){color:var(--green);background:#f0f7f2}.day-markers{align-items:center;gap:4px;height:7px;display:flex}.weight-dot,.workout-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.workout-dot{background:var(--blue);border-radius:1px}.selected .weight-dot{background:#bfe9d2}.selected .workout-dot{background:#c8e6ff}.calendar-legend{border-top:1px solid var(--line);align-items:center;gap:14px;margin-top:6px;padding:10px 2px 0;font-size:11px;display:flex}.calendar-legend span{align-items:center;gap:5px;display:inline-flex}.calendar-legend .muted{margin-left:auto;font-size:10px}.inline-actions{gap:11px;margin-top:12px;display:flex}.inline-actions>*{flex:1}.deep-page .page-content{padding-top:0;padding-bottom:calc(16px + var(--safe-bottom))}.back-header{justify-content:space-between;align-items:center;height:56px;margin:0 -6px 4px;display:flex}.back-header h1{letter-spacing:0;font-size:17px}.header-spacer{width:44px}.record-form{padding-top:0}.record-fields input,.record-fields select{min-height:44px;margin-top:4px;padding-top:10px;padding-bottom:10px}.record-fields .unit-input{margin-top:4px}.record-fields .unit-input input{margin-top:0}.workout-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.workout-fields>*{grid-column:span 2}.workout-fields>.workout-half{grid-column:span 1}.workout-fields .form-field{margin-bottom:0}.optional-note{border-top:1px solid var(--line)}.optional-note summary,.settings-help summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:14px;font-weight:500}.optional-note .form-field{margin:4px 0 12px}.form-submit-row{align-items:center;gap:8px;display:flex}.form-submit-row>.button{flex:1;width:auto}.form-field{margin-bottom:12px;font-size:14px;position:relative}.field-label{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:14px;font-weight:500;display:flex}.form-field>.caption{margin-top:4px}.unit-input{background:#fff;border:1px solid #d8e4dc;border-radius:13px;align-items:center;margin-top:8px;padding-right:14px;display:flex;overflow:hidden}.unit-input input{border-radius:inherit;background:0 0;border:0;flex:1;width:0;margin:0;padding-right:5px}.unit-input>span{color:var(--ink-muted);white-space:nowrap;flex-shrink:0;font-size:13px}.big-input{background:#edf6ef;border:1px solid #deeadf;border-radius:18px;padding:4px 18px}.big-input input{letter-spacing:-2px;min-height:62px;color:var(--green);font-variant-numeric:tabular-nums;padding:4px 0;font-family:ui-rounded,-apple-system,sans-serif;font-size:40px;font-weight:500}.record-fields .big-input input{min-height:60px;padding:2px 0}.big-input>span{color:var(--green);font-size:18px}.big-input input::placeholder{color:#98b9a5}.condition-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.condition-options button{text-align:left;background:#fff;border:1px solid #dce5df;border-radius:15px;min-height:60px;padding:10px 12px}.condition-options strong{justify-content:space-between;align-items:center;font-size:14px;font-weight:500;display:flex}.condition-options span{color:var(--ink-muted);margin-top:3px;font-size:11px;display:block}.condition-options button.selected{border-color:var(--green);color:var(--green);background:#edf8f1}.form-two-columns{grid-template-columns:1fr 1fr;gap:13px;display:grid}.fatigue-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}.fatigue-options button{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:56px;padding:5px 0}.fatigue-options strong{font-size:19px;font-weight:500;display:block}.fatigue-options span{white-space:nowrap;color:var(--ink-muted);font-size:11px}.fatigue-options button.selected{border-color:var(--blue);background:var(--sky);color:var(--blue)}.fatigue-options button.selected span{color:var(--blue)}.required-label{color:var(--ink-muted);font-size:11px;font-weight:400}.photo-pickers{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.photo-picker{min-height:80px;color:var(--green);cursor:pointer;background:#fff;border:1px dashed #bdcfc2;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex;position:relative;overflow:hidden}.photo-picker strong{font-size:12px;font-weight:500}.photo-picker input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.photo-picker:focus-within{outline-offset:3px;outline:3px solid #286b9a88}.photo-preview{border:1px solid var(--line);background:#e9efeb;border-radius:14px;flex-shrink:0;width:96px;margin-bottom:0;position:relative;overflow:hidden}.photo-input{align-items:stretch;gap:10px;display:flex}.photo-input.expanded{flex-wrap:wrap}.photo-preview.expanded{width:100%}.photo-open{background:0 0;border:0;width:100%;height:80px;padding:0;display:block;position:relative}.photo-open img{object-fit:contain;width:100%;height:100%;display:block}.photo-preview.expanded .photo-open{height:clamp(180px,30dvh,300px)}.photo-zoom{background:#ffffffe6;border-radius:5px;padding:1px 5px;font-size:11px;position:absolute;bottom:2px;left:5px}.photo-remove{background:#ffffffeb;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:0;right:0}.photo-remove[hidden]{display:none}.heic-preview{text-align:center;min-height:80px;padding:6px}.heic-preview p{word-break:break-all;margin-top:2px;font-size:11px}.heic-preview span{color:var(--ink-muted);font-size:10px}.optional{color:var(--ink-muted);margin-left:8px;font-size:11px;font-weight:400}.form-footer{padding:8px 0 0}.draft-status{color:var(--ink-muted);text-align:center;margin-top:8px;margin-bottom:0;font-size:11px}.discard-draft{flex-shrink:0;margin:0;display:flex}.form-footer>.caption{margin-top:10px}.field-error{color:var(--danger);margin-top:6px;font-size:12px;display:block}.notice{color:var(--blue);background:#eaf2f9;border-radius:12px;align-items:center;gap:9px;margin-bottom:10px;padding:8px 12px;font-size:12px;display:flex}.offline-banner{margin:12px;font-size:11px}.error-box{color:#8c3431;background:#fff0ef;border:1px solid #f1d5d1;border-radius:14px;margin:12px 0;padding:14px 15px;font-size:13px}.error-box .text-button{color:#8c3431;padding-left:0}.conflict-actions{flex-wrap:wrap;margin-bottom:14px;display:flex}.loading{color:var(--ink-muted);justify-content:center;align-items:center;gap:10px;min-height:100px;padding:50px 10px;font-size:13px;display:flex}.profile-card{align-items:center;gap:14px;padding:8px 0 20px;display:flex}.profile-card img{border-radius:16px;width:52px;height:52px}.profile-card h2{margin:0 0 3px;font-size:24px}.profile-card .muted{font-size:13px}.install-heading{align-items:center;gap:10px;margin-bottom:10px;display:flex}.settings-help{padding-top:4px;padding-bottom:4px}.settings-help[open]{padding-bottom:14px}.settings-help .muted{font-size:13px}.install-card h2{margin:0}.install-card p{color:var(--ink-muted);font-size:13px;line-height:1.7}.install-card p.caption{font-size:11px}.settings-row{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:12px;min-height:48px;margin-bottom:12px;padding:12px 16px;font-size:14px;display:flex}.settings-row svg:last-child{margin-left:auto}.logout-button{color:#94635d;background:#fff;border:1px solid #e4dbd9}.detail-summary{text-align:center;border-radius:20px;margin-top:4px;padding:16px}.detail-symbol{margin:0 auto 3px;display:block}.detail-summary .small-label{color:inherit;opacity:.85}.detail-summary h2{letter-spacing:-2px;margin-top:2px;font-size:42px;font-weight:500}.detail-summary h2 small{letter-spacing:0;margin-left:8px;font-size:17px}.detail-summary p{margin-top:3px;font-size:12px}.condition-tag{background:#ffffff90;border-radius:20px;margin-top:7px;padding:4px 12px;font-size:11px;display:inline-block}.detail-metrics{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;padding:12px 5px;display:grid}.detail-metrics>div{color:var(--blue);flex-direction:column;align-items:center;gap:3px;display:flex}.detail-metrics strong{color:var(--ink);font-size:20px}.detail-metrics small{margin-left:3px;font-size:10px}.detail-metrics span{color:var(--ink-muted);font-size:11px}.record-photo{object-fit:contain;background:#eaf0ec;border-radius:20px;width:100%;max-height:clamp(180px,28dvh,260px);display:block}.photo-error{text-align:center;color:var(--ink-muted);background:#ecf1ee;border-radius:20px;padding:40px}.photo-error p{margin-top:8px;font-size:13px}.detail-actions{gap:12px;margin-top:12px;margin-bottom:8px;display:flex}.detail-actions>a{flex:1}.note-text{white-space:pre-wrap;word-break:break-word;margin-top:12px;font-size:14px}.photo-section{margin-bottom:12px}.trend-card{margin-top:12px;padding:14px}.trend-tabs{margin-top:12px;display:flex}.trend-tabs button{flex:1;font-size:14px}.trend-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.weight-chart{height:clamp(160px,23dvh,220px)}.data-table-details .hollow-dot{margin-top:0}.trend-card .section-heading,.workout-stats .section-heading{margin:0 0 18px}.segmented{background:#eef3ef;border-radius:10px;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.segmented button{min-width:44px;min-height:44px;color:var(--ink-muted);background:0 0;border:0;border-radius:8px;padding:6px 11px;font-size:12px}.segmented button.active{color:var(--green);background:#fff;font-weight:600;box-shadow:0 1px 4px #183c3510}.period-nav{justify-content:center;align-items:center;gap:0;margin:0;display:flex}.period-nav strong{text-align:center;min-width:88px;font-size:14px}.weight-summary{grid-template-columns:1fr 1fr;margin:8px 3px;display:grid}.weight-summary>div:last-child{border-left:1px solid var(--line);padding-left:22px}.weight-summary strong{letter-spacing:-1px;font-size:32px;font-weight:500;line-height:1.25;display:block}.weight-summary strong small{letter-spacing:0;color:var(--ink-muted);margin-left:6px;font-size:12px}.weight-summary .change-value{padding-top:4px;font-size:28px}.toggle-row{align-items:center;gap:8px;min-height:44px;margin:0 3px;font-size:12px;display:flex}.toggle-row input{width:17px;height:17px}.chart-note{color:var(--ink-muted);gap:6px;padding:10px 5px 0;font-size:10px;line-height:1.8;display:flex}.hollow-dot{border:1.5px solid var(--green);border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px;display:inline-block}.chart-tooltip{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 16px;font-size:11px;box-shadow:0 5px 20px #183c3512}.chart-tooltip span{color:var(--ink-muted);margin-top:3px;display:block}.chart-tooltip strong{font-size:16px}.data-table-details{margin-top:0}.data-table-details summary{color:var(--green);cursor:pointer;align-items:center;gap:7px;min-height:44px;padding:10px 3px;font-size:11px;display:flex}.data-table{border-collapse:collapse;width:100%;font-size:11px}.data-table td,.data-table th{text-align:left;border-bottom:1px solid var(--line);padding:9px 5px}.data-table td a{color:var(--green);text-decoration:underline}.workout-stats{margin-top:12px;padding:16px}.workout-filters{justify-content:space-between;align-items:center;gap:10px;display:flex}.workout-filters select{width:auto;max-width:160px;min-height:44px;margin:0;padding-top:10px;padding-bottom:10px;font-size:16px}.workout-main-stat{color:var(--blue);justify-content:center;align-items:baseline;gap:9px;margin:20px 0 4px;display:flex}.workout-main-stat svg{align-self:center;margin-right:3px}.workout-main-stat strong{letter-spacing:-2px;font-size:44px;font-weight:500;line-height:1.4}.workout-main-stat>span{font-size:12px}.workout-substats{color:var(--ink-muted);justify-content:center;align-items:center;gap:20px;font-size:12px;display:flex}.workout-substats span:last-child{align-items:center;gap:5px;display:flex}.type-stats{margin-top:14px}.type-stats>div{border-top:1px solid var(--line);align-items:center;gap:11px;margin-top:10px;padding:10px 0 0;display:flex}.type-stats>div>div{flex:1}.type-stats>div strong{font-size:13px}.type-stats>div>div span{color:var(--ink-muted);margin-top:3px;font-size:11px;display:block}.type-stats>div>strong{font-size:19px}.type-stats small{color:var(--ink-muted);margin-left:5px;font-size:10px}.type-stats .record-icon{border-radius:11px;width:37px;height:37px}.workout-stats>.muted{font-size:12px}.update-banner{background:#e7f0f8;align-items:center;gap:4px;padding:11px 17px;font-size:11px;display:flex}.update-banner>span{flex:1}.update-banner .text-button{padding:4px;font-size:11px}.login-page{background:var(--bg);max-width:480px;min-height:100dvh;padding:calc(20px + var(--safe-top)) 24px calc(20px + var(--safe-bottom));margin:auto;overflow:hidden}.login-art{padding:10px 4px 20px;position:relative}.login-mark{border-radius:17px;width:48px;height:48px;margin-bottom:14px;display:block;position:relative}.login-art>.eyebrow{letter-spacing:2px;font-size:10px;position:relative}.login-art h1{letter-spacing:-2px;margin:8px 0;font-size:36px;font-weight:550;line-height:1.25;position:relative}.login-art p{color:var(--ink-muted);font-size:13px;position:relative}.orb{filter:blur(4px);pointer-events:none;border-radius:50%;position:absolute}.orb-one{background:radial-gradient(circle,#d6eee0a0 0%,#ddf4e700 70%);width:250px;height:250px;top:10px;right:-70px}.orb-two{background:radial-gradient(circle,#e3f1ffe0 0%,#e3f1ff00 70%);width:230px;height:230px;top:150px;right:-110px}.login-form{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:26px;padding:20px;position:relative}.login-form>.muted{margin-top:5px;margin-bottom:16px;font-size:12px}.login-form>label{margin-bottom:12px;font-size:13px}.login-form .button{margin-top:7px}.password-field{position:relative}.password-field input{padding-right:45px}.password-field .icon-button{color:var(--ink-muted);position:absolute;top:2px;right:4px}.login-note{color:var(--ink-muted);justify-content:center;align-items:center;gap:5px;margin-top:12px;font-size:10px;display:flex}.login-footer{text-align:center;color:#7d9083;letter-spacing:1px;margin-top:16px;font-size:10px}.manage-shell{max-width:760px}.manage-shell .page-content{padding-top:0;padding-bottom:calc(16px + var(--safe-bottom))}.manage-top{justify-content:space-between;align-items:center;margin:-3px -7px 4px;font-size:11px;display:flex}.manage-top>span{color:var(--green);align-items:center;gap:6px;padding-right:7px;display:flex}.manage-tabs{border-bottom:1px solid var(--line);gap:0;margin:12px 0 16px;display:flex}.manage-tabs button{white-space:nowrap;min-height:49px;color:var(--ink-muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:10px 3px;font-size:12px}.manage-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:600}.admin-toolbar{align-items:flex-end;gap:13px;margin-bottom:18px;display:flex}.admin-toolbar label{flex:1;font-size:12px}.admin-toolbar a{min-height:48px;padding:10px;font-size:11px}.admin-toolbar input{font-size:16px}.manage-shell .inline-actions{margin:8px 0 14px}.manage-shell .inline-actions .button{font-size:13px}.manage-shell .muted{margin-bottom:12px;font-size:12px}.type-editor label,.account-editor label{margin-bottom:16px;font-size:12px}.type-editor .button,.account-editor .button{min-height:45px;margin-top:2px;font-size:13px}.type-editor-heading{align-items:center;gap:10px;margin-bottom:12px;display:flex}.type-editor-heading h3{flex:1}.status-pill{color:var(--green);background:var(--mint);white-space:nowrap;border-radius:15px;padding:3px 10px;font-size:10px}.status-pill.inactive{color:#7a776f;background:#efefea}.checkbox-label{align-items:center;gap:8px;min-height:44px;display:flex}.account-editor h3{margin-bottom:12px}.account-editor-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.account-editor-heading h3{overflow-wrap:anywhere;min-width:0;margin-bottom:0}.session-card{align-items:center;gap:5px;padding:17px 18px;display:flex}.management-row{align-items:center;gap:10px;min-height:72px;margin-bottom:8px;padding:12px 14px;display:flex}.management-row>div{overflow-wrap:anywhere;flex:1;min-width:0}.management-row strong{font-size:15px}.management-row .caption{font-size:12px}.management-row .text-button{flex-shrink:0}.sessions-details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 0;display:flex}.sessions-details summary h2{font-size:16px}.sessions-details summary span{color:var(--ink-muted);font-size:12px}.session-card>div{flex:1}.session-card strong{font-size:14px}.session-card p{color:var(--ink-muted);margin-top:5px;font-size:10px}.audit-list{border:1px solid var(--line);background:#fff;border-radius:20px;padding:5px 18px}.audit-list>div{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:17px 0;display:flex}.audit-list>div:last-child{border:0}.audit-dot{background:#9ab7a4;border-radius:50%;width:7px;height:7px;margin-top:7px}.audit-list strong{font-size:13px}.audit-list p{color:var(--ink-muted);margin-top:5px;font-size:10px}@media (width>=600px){.app-shell{border:1px solid #e0e9e2;border-radius:30px;min-height:calc(100dvh - 40px);margin:20px auto;overflow:hidden}.bottom-nav{border-radius:0 0 27px 27px;width:478px;bottom:20px}.login-page{border:1px solid #e0e9e2;border-radius:30px;min-height:calc(100dvh - 40px);margin:20px auto}.manage-shell .page-content,.manage-shell .app-header{padding-left:35px;padding-right:35px}}@media (width<=374px){.page-content{padding-left:15px;padding-right:15px}.calendar-card{padding-left:5px;padding-right:5px}.action-card{padding:18px 15px}.calendar-legend{gap:10px}.calendar-legend .muted{font-size:9px}.fatigue-options{gap:4px}.fatigue-options span{font-size:11px}.login-page{padding-left:20px;padding-right:20px}.weight-summary strong{font-size:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--tea:#f6e8de;--tea-ink:#80583f;--water-surface:#edf7fa;--water-ink:#326b82;--water-line:#d3e7ed;--water-muted:#537581}.home-record-actions .action-card{border-radius:21px;height:auto;min-height:91px;padding:6px 13px 0}.home-record-link{align-items:center;gap:9px;min-height:44px;font-size:17px;font-weight:600;display:flex}.home-record-link span{flex:1}.home-record-caption,.home-weekly-link{align-items:center;gap:4px;min-height:36px;margin:0;font-size:11px;display:flex}.home-weekly-link{justify-content:space-between;min-height:44px;margin-top:-5px}.hydration-card{background:var(--water-surface);border:1px solid var(--water-line);border-radius:var(--radius);color:var(--water-ink);margin:12px 0;padding:12px 16px 0}.hydration-content{align-items:center;gap:8px;min-width:0;display:flex}.water-buddy{flex-shrink:0;width:118px}.water-buddy svg{width:100%;display:block}.hydration-copy{flex:1;min-width:0}.hydration-heading{align-items:center;gap:0;display:flex}.hydration-heading h2{flex:1;font-size:13px;font-weight:600}.hydration-heading .icon-button{width:44px;height:44px;margin:-10px -12px -8px 0}.water-number{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:6px;line-height:1.2;display:flex}.water-number strong{letter-spacing:-1px;margin:4px 0;font-size:31px;font-weight:550}.water-number>span{color:var(--water-muted);font-size:11px}.water-encouragement{color:var(--water-muted);margin-top:5px;font-size:11px;line-height:1.6}.hydration-actions{grid-template-columns:1fr 1fr;gap:9px;margin:5px 0 0;display:grid}.hydration-actions a{border-radius:13px;justify-content:center;align-items:center;gap:7px;min-height:44px;font-size:13px;font-weight:550;display:flex}.water-action{color:var(--water-ink);background:#fff;border:1px solid #d8e8ec}.drink-action{color:var(--tea-ink);background:var(--tea);border:1px solid #ead9ca}.hydration-actions a:active{opacity:.7}.sugar-day{min-height:44px;color:var(--water-muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.sugar-day>span{align-items:center;gap:5px;display:flex}.sugar-day button{min-height:44px;color:var(--water-ink);background:0 0;border:0;align-items:center;gap:4px;padding:0 2px 0 10px;font-size:12px;display:flex}.sugar-marker{background:#99adb1;border-radius:50%;flex-shrink:0;width:5px;height:5px}.sugar-marker.confirmed_none{background:#458564}.sugar-marker.sugary{background:#a77d55}.sugar-marker.unknown{background:#aa9869}.hydration-card .error-box{margin:0 0 12px}.hydration-card.compact{border-radius:18px;grid-template-columns:1fr 1.1fr;gap:0 8px;margin:10px 0;padding:6px 12px 0;display:grid}.hydration-card.compact .hydration-heading h2{font-size:11px}.hydration-card.compact .hydration-heading .icon-button,.hydration-card.compact .water-encouragement{display:none}.hydration-card.compact .water-number strong{margin:0;font-size:22px}.hydration-card.compact .water-number{gap:3px}.hydration-card.compact .water-number>span{font-size:10px}.hydration-card.compact .hydration-actions{align-self:center;gap:4px;margin:0}.hydration-card.compact .hydration-actions a{gap:4px;font-size:11px}.hydration-card.compact .sugar-day,.hydration-card.compact .error-box{grid-column:1/-1}.water-form{border:1px solid var(--line);background:#fff;border-radius:24px;padding:17px}.water-form-art{background:var(--water-surface);border-radius:19px;align-items:center;gap:15px;margin-bottom:21px;padding:8px;display:flex}.water-form-art .water-buddy{width:112px}.water-form-art h2{margin:4px 0;font-size:19px}.water-form-art p{color:var(--ink-muted);font-size:11px}.water-form-art .eyebrow{font-size:11px}.water-total-label{font-size:14px}.water-presets{gap:8px;margin:12px 0;display:flex}.water-presets button{background:var(--water-surface);border:1px solid var(--water-line);min-height:44px;color:var(--water-ink);border-radius:12px;flex:1;font-size:12px}.water-presets button:last-child{color:var(--ink-muted);border-color:var(--line);background:#f7f9f8}.water-form .form-submit-row{margin-top:24px}.water-form .conflict-actions{flex-wrap:wrap;align-items:center;font-size:13px;display:flex}.water-form .conflict-actions a{align-items:center;min-height:44px;display:flex}.hydration-goal{margin-bottom:12px;padding:0 15px}.hydration-goal summary{cursor:pointer;align-items:center;gap:8px;min-height:54px;font-size:13px;display:flex}.hydration-goal summary span{flex:1}.hydration-goal summary strong{color:var(--water-ink);margin:0;font-size:13px;font-weight:500}.hydration-goal form{padding:0 0 15px}.hydration-goal .button{margin-top:12px}.drink-type-options,.sugar-options{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;display:grid}.drink-type-options button,.sugar-options button{border:1px solid var(--line);min-height:44px;color:var(--ink-muted);background:#fff;border-radius:12px;font-size:13px}.drink-type-options button.selected,.sugar-options button.selected{background:var(--tea);color:var(--tea-ink);border-color:#d2b9a4;font-weight:600}.drink-fields .optional-note>.form-field,.drink-fields .optional-note .form-two-columns{margin-top:12px}.drink-fields .optional-note .caption{margin-top:8px;display:block}.tea,.tea-primary{background:var(--tea);color:var(--tea-ink)}.tea-primary{color:#fff;background:#896348}.drink-detail-tags{color:var(--tea-ink);flex-wrap:wrap;gap:8px;margin:15px 0;font-size:12px;display:flex}.drink-detail-tags span{background:var(--tea);border:1px solid #e8dbce;border-radius:10px;padding:6px 10px}.detail-summary.tea h2{overflow-wrap:anywhere;font-size:25px}.water-dot,.drink-dot{background:#7ba5b2;border-radius:50%;width:5px;height:5px;display:inline-block}.water-dot.met{background:#3a788c;box-shadow:0 0 0 1.5px #cae3e9}.drink-dot{background:#af886a}.hydration-trends{margin-top:12px;padding:14px 15px 4px}.hydration-summary{grid-template-columns:1.2fr 1fr;margin-top:17px;display:grid}.hydration-summary>div,.hydration-sugar-stats>div{flex-direction:column;display:flex}.hydration-summary span,.hydration-sugar-stats span{color:var(--ink-muted);font-size:12px}.hydration-summary strong{color:var(--water-ink);letter-spacing:-1px;margin:1px 0;font-size:34px;font-weight:500;line-height:1.4}.hydration-summary small,.hydration-sugar-stats small{letter-spacing:0;color:var(--ink-muted);margin-left:5px;font-size:11px}.hydration-coverage{color:var(--ink-muted);margin-top:2px;font-size:10px}.hydration-chart{height:170px;margin:6px -4px 0}.hydration-chart-legend{color:var(--ink-muted);justify-content:center;gap:16px;font-size:10px;display:flex}.hydration-chart-legend span{align-items:center;gap:5px;display:flex}.hydration-chart-legend i{background:#7fbecb;border-radius:2px;width:8px;height:8px}.hydration-chart-legend span:last-child i{background:0 0;border-top:1.5px dashed #8cae9b;width:14px;height:0}.hydration-sugar-stats{background:#fbf6f0;border-radius:14px;grid-template-columns:1fr 1fr;margin:13px 0 4px;padding:12px 14px;display:grid}.hydration-sugar-stats strong{color:var(--tea-ink);margin:1px 0 0;font-size:23px;font-weight:500}.hydration-trends .data-table{font-size:10px}.hydration-trends .empty{margin-top:15px}.admin-hydration{margin:8px 0;padding:0 12px}.admin-hydration summary{cursor:pointer;align-items:center;min-height:44px;font-size:12px;display:flex}.admin-hydration a{margin:0 8px 10px 0}:root{font-family:var(--font-body);color:var(--color-ink);background:var(--color-canvas);--bg:var(--color-paper);--ink:var(--color-ink);--ink-muted:var(--color-ink-muted);--green:var(--color-green);--mint:var(--color-mint);--blue:var(--color-blue);--sky:var(--color-sky);--line:var(--color-line);--danger:var(--color-error);--tea:var(--color-tea);--tea-ink:var(--color-tea-ink);--water-surface:var(--color-water-surface);--water-ink:var(--color-water-ink);--water-line:var(--color-water-line);--water-muted:var(--color-water-muted);--radius:var(--radius-card);--shadow:none}html,body{overflow-x:clip}h1,h2,h3{font-family:var(--font-display);overflow-wrap:anywhere;min-width:0;font-style:normal}h1{font-size:var(--text-title);letter-spacing:-.035em}.wordmark{letter-spacing:.04em;gap:var(--space-xs);font-size:21px}.wordmark img{border-radius:var(--radius-small);width:30px;height:30px}.app-header>.icon-button{color:var(--ink-muted);background:var(--color-surface)}.page-title .eyebrow{letter-spacing:.04em;font-size:var(--text-caption)}.intro{font-size:var(--text-small)}.card,.calendar-card,.record-list,.water-form,.login-form,.settings-row,.detail-metrics,.audit-list{background:var(--color-surface);border-color:var(--line);border-radius:var(--radius-card);box-shadow:none}.button,.hydration-actions a{border-radius:var(--radius-input);white-space:nowrap}.primary{background:var(--color-accent);color:var(--color-accent-ink)}.blue-primary{color:var(--color-surface)}.tea-primary{background:var(--color-tea-primary);color:var(--color-surface)}.button:active:not(:disabled),.home-record-link:active,.home-weekly-link:active,.bottom-nav a:active,.settings-row:active{opacity:.72}.action-card:active{opacity:1}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.photo-picker:focus-within,.unit-input:focus-within{outline:3px solid var(--color-focus);outline-offset:3px}input,textarea,select,.unit-input{color:var(--ink);background-color:var(--color-surface);border-color:var(--color-input-line);border-radius:var(--radius-input)}input::placeholder,textarea::placeholder,.big-input input::placeholder{color:var(--ink-muted)}.unit-input input{background:0 0}.unit-input input:focus-visible{outline:none}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger)}.unit-input:has([aria-invalid=true]){border-color:var(--danger)}.record-main strong,.condition-options strong,.fatigue-options strong,.period-nav strong,.detail-metrics strong,.type-stats strong,.chart-tooltip strong,.draft-banner strong{margin:0}.record-main strong,.big-input input,.weight-summary strong,.workout-main-stat strong,.detail-summary h2,.water-number strong,.hydration-summary strong,.hydration-sugar-stats strong{font-family:var(--font-numeric);font-variant-numeric:tabular-nums}.home-record-actions{gap:var(--space-sm)}.home-record-actions .action-card{border-radius:var(--radius-card);padding-inline:var(--space-sm)}.home-record-link{gap:var(--space-xs)}.home-record-link>svg:last-child{opacity:.65}.home-record-caption,.home-weekly-link{font-size:var(--text-caption)}.hydration-card{border-radius:var(--radius-card);padding-inline:var(--space-md);border-color:#0000}.hydration-heading h2{font-size:var(--text-small)}.water-number strong{font-size:var(--text-number);letter-spacing:-.04em}.water-action{background:var(--color-surface);border-color:var(--color-water-line)}.drink-action{border-color:#0000}.sugar-day{border-top:var(--rule-width) solid var(--water-line);margin-top:var(--space-xs)}.section-heading h2{font-size:var(--text-section);letter-spacing:-.02em}.section-heading>span{font-variant-numeric:tabular-nums}.record-row{border-color:var(--line)}.record-main>span{font-size:var(--text-caption)}.record-icon{border-radius:var(--radius-input)}.empty{border:var(--rule-width) solid var(--line);background:var(--color-surface);border-radius:var(--radius-card)}.empty-icon{color:var(--ink-muted);background:var(--color-mint-soft)}.empty h3,.gentle-note,.login-footer,.calendar-week span{color:var(--ink-muted)}.bottom-nav{background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;padding-top:var(--space-xs)}.bottom-nav a{color:var(--ink-muted);gap:var(--space-2xs);border-radius:var(--radius-input);white-space:nowrap;min-width:80px}.bottom-nav a.active{color:var(--green);background:var(--color-mint-soft)}.calendar-day{font-variant-numeric:tabular-nums;border-radius:var(--radius-small)}.calendar-day.today:not(.selected){background:var(--color-mint-soft)}.calendar-day.selected{background:var(--green);color:var(--color-accent-ink)}.segmented{background:var(--color-inactive-surface);border-radius:var(--radius-input)}.segmented button,.trend-tabs button{white-space:nowrap}.segmented button.active{background:var(--color-surface);color:var(--green);box-shadow:none}.big-input{background:var(--color-mint-soft);border-color:var(--color-input-line)}.condition-options button,.fatigue-options button,.drink-type-options button,.sugar-options button{background:var(--color-surface);border-radius:var(--radius-input);border-color:var(--color-input-line)}.condition-options button.selected{background:var(--color-mint-soft);border-color:var(--green)}.fatigue-options button.selected{background:var(--sky);border-color:var(--blue)}.drink-type-options button.selected,.sugar-options button.selected{background:var(--tea);border-color:var(--tea-ink)}.photo-picker{background:var(--color-surface);border-color:var(--color-input-line);border-radius:var(--radius-input)}.error-box{color:var(--danger);background:var(--color-error-surface);border-color:var(--color-error-line);border-radius:var(--radius-input)}.error-box .text-button{color:var(--danger)}.draft-banner{color:var(--color-warning-ink);background:var(--color-warning-surface);border-color:var(--color-warning-line);border-radius:var(--radius-input)}.login-art .orb{display:none}.login-art h1{font-size:var(--text-display);letter-spacing:-.045em;font-weight:650}.login-art>.eyebrow{letter-spacing:.12em}.login-art p{font-size:14px}.login-form{padding:var(--space-gutter)}.login-form h2{font-size:20px}.login-form>label{font-size:14px}@media (hover:hover) and (pointer:fine){.button:hover:not(:disabled),.home-record-link:hover,.home-weekly-link:hover,.hydration-actions a:hover,.record-row:hover,.settings-row:hover,.text-button:hover:not(:disabled){opacity:.78}}@media (width<=360px){.page-content,.app-header{padding-inline:var(--space-xs)}.calendar-card{margin-inline:calc(-1 * var(--space-2xs));padding-inline:0}.calendar-legend{gap:var(--space-xs);padding-inline:var(--space-xs);flex-wrap:wrap}.hydration-card:not(.compact){padding-inline:var(--space-sm)}.hydration-content>.water-buddy{width:92px}.home-record-caption,.home-weekly-link{font-size:11px}.sugar-day{gap:0 var(--space-xs);flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){button,.button,.record-row,.home-record-link,.home-weekly-link,.hydration-actions a,.bottom-nav a,.settings-row{transition:none}}.card,.calendar-card,.record-list,.water-form,.login-form,.settings-row,.detail-metrics,.audit-list,.hydration-card,.home-record-actions .action-card{border-radius:var(--radius-card)}.cn-button,.cn-input,.cn-textarea{border-radius:var(--radius-input)}.sugar-day{font-size:var(--text-small);border-top:0}.sugar-day .sugar-confirm{justify-content:center;gap:var(--space-xs);width:100%;min-height:44px;padding:0 var(--space-sm);border:var(--rule-width) solid var(--water-line);border-radius:var(--radius-input);color:var(--water-ink);background:var(--color-surface);font-size:var(--text-small)}.sugar-pending{color:var(--water-muted);font-size:var(--text-caption);font-weight:400}.sugar-day-status{justify-content:space-between;align-items:center;gap:var(--space-xs);width:100%;min-height:44px;display:flex}.sugar-day-confirmed{padding-left:var(--space-xs);color:var(--green);background:var(--color-mint-soft);border-radius:var(--radius-input)}.sugar-status-copy{align-items:center;gap:var(--space-2xs);min-width:0;display:flex}.sugar-status-copy>svg{flex-shrink:0}.sugar-day .sugar-undo,.sugar-record-link{justify-content:center;align-items:center;gap:var(--space-2xs);min-width:44px;min-height:44px;padding-inline:var(--space-xs);color:var(--green);font-size:var(--text-small);white-space:nowrap;flex-shrink:0;display:inline-flex}.sugar-record-link{color:var(--water-ink);border:var(--rule-width) solid var(--water-line);background:var(--color-surface);border-radius:var(--radius-input)}.weight-chart-options{justify-content:space-between;align-items:center;gap:0 var(--space-xs);flex-wrap:wrap;display:flex}.weight-chart-legend{align-items:center;gap:var(--space-2xs);font-size:var(--text-caption);color:var(--ink-muted);white-space:nowrap;display:inline-flex}.weight-chart-legend .hollow-dot{margin-top:0}.data-table-details>summary{padding:var(--space-xs) var(--space-sm);border:var(--rule-width) solid var(--line);border-radius:var(--radius-input);background:var(--color-mint-soft);font-size:var(--text-small);white-space:nowrap;font-weight:550;list-style:none}.data-table-details>summary::-webkit-details-marker{display:none}.data-table-details>summary>svg:last-child{margin-left:auto}.data-table-details>summary:active{opacity:.72}@media (width<=360px){.sugar-day .sugar-confirm{padding-inline:var(--space-xs)}.sugar-confirm>svg{display:none}}.condition-options .cn-button,.fatigue-options .cn-button{display:block}.view-banner{justify-content:space-between;align-items:center;gap:var(--space-xs);margin-block:var(--space-xs) var(--space-sm);color:var(--color-water-ink);background:var(--color-water-surface);flex-wrap:wrap;display:flex}.view-banner>span,.view-selector{overflow-wrap:anywhere;min-width:0}.view-selector{padding-block:var(--space-xs)}.view-selector .form-field{align-items:center;gap:var(--space-sm);grid-template-columns:auto minmax(0,1fr);margin-bottom:0;display:grid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}.water-home-action{background:var(--color-water-surface);color:var(--color-water-ink)}.meal-home-action{background:var(--color-mint-soft);color:var(--color-green)}.home-water-footer{justify-content:space-between;gap:var(--space-2xs);min-height:44px;font-size:var(--text-caption);align-items:center;margin-top:-5px;display:flex}.home-water-footer>span{font-variant-numeric:tabular-nums}.home-water-footer .water-number{font-size:inherit;margin:0;display:inline}.home-water-footer .water-number strong{font-size:inherit;letter-spacing:0}.home-water-footer a{align-items:center;gap:var(--space-2xs);min-width:44px;min-height:44px;display:flex}.home-record-actions .action-card{min-width:0}.sugar-only.hydration-card{padding:0 var(--space-sm);margin-block:var(--space-xs)}.sugar-only .sugar-day{border-top:0;margin-top:0}.record-meal-thumb{object-fit:cover;border-radius:var(--radius-small);width:44px;height:44px}.record-main{min-width:0}.record-main>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meal-dot{background:var(--color-ink)}.day-markers{gap:3px}.calendar-add-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.calendar-add-actions .button{gap:var(--space-2xs);padding-inline:var(--space-2xs);font-size:var(--text-small)}.meal-form{gap:var(--space-sm);display:grid}.meal-form-fields{gap:var(--space-sm);border:0;min-width:0;margin:0;padding:0;display:grid}.meal-form label{gap:var(--space-2xs);font-size:var(--text-small);min-width:0;font-weight:500;display:grid}.meal-form input,.meal-form select,.meal-form textarea{width:100%;min-width:0}.meal-types{gap:var(--space-2xs);padding:var(--space-2xs);background:var(--color-canvas);border-radius:var(--radius-card);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.meal-types button{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:44px;padding-inline:var(--space-2xs);font-size:var(--text-small);color:var(--color-ink-muted);display:flex}.meal-types button[aria-pressed=true]{background:var(--color-surface);color:var(--color-green)}.meal-form .section-heading{margin:0 0 var(--space-xs)}.meal-form .section-heading h2{font-size:var(--text-section)}.meal-photo-pickers{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.meal-photo-pickers label{justify-content:center;align-items:center;gap:var(--space-xs);cursor:pointer;min-height:44px;display:flex;position:relative;overflow:clip}.meal-photo-pickers input{opacity:0;cursor:pointer;height:100%;position:absolute;inset:0}.meal-photo-pickers label:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.empty-pickers{background:var(--color-canvas);border:1px dashed var(--color-input-line);border-radius:var(--radius-card);padding:var(--space-md) var(--space-xs)}.meal-photo-grid{gap:var(--space-xs);margin-bottom:var(--space-xs);grid-template-columns:repeat(auto-fit,minmax(108px,1fr));display:grid}.meal-photo-thumb{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-small);min-width:0;overflow:clip}.meal-thumb-open{background:var(--color-canvas);border-radius:0;width:100%;height:76px;padding:0;display:block}.meal-thumb-open img{object-fit:cover;width:100%;height:100%}.meal-preview-unavailable{padding:var(--space-xs);font-size:var(--text-caption);color:var(--color-ink-muted);line-height:1.5;display:block}.meal-photo-thumb.expanded{grid-column:1/-1}.meal-photo-thumb.expanded .meal-thumb-open{height:auto}.meal-photo-thumb.expanded img{object-fit:contain;max-height:60vh}.meal-thumb-actions{justify-content:space-between;display:flex}.meal-thumb-actions button{min-width:44px;min-height:44px;padding:var(--space-2xs);font-size:var(--text-caption);color:var(--color-ink-muted);gap:2px}.meal-thumb-actions button[aria-pressed=true]{color:var(--color-green)}.meal-items-empty{align-items:center;gap:var(--space-xs);color:var(--color-ink-muted);font-size:var(--text-small);margin:0 0 var(--space-xs);display:flex}.meal-item-editor{padding:var(--space-sm);margin-bottom:var(--space-xs);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card)}.meal-item-name{align-items:end;gap:var(--space-xs);margin-bottom:var(--space-xs);grid-template-columns:minmax(0,1fr) 44px;display:grid}.meal-item-name button{min-height:44px}.meal-quantity-row{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.meal-portion-shortcuts{gap:var(--space-xs);margin-top:var(--space-2xs);flex-wrap:wrap;display:flex}.meal-portion-shortcuts button{min-width:54px;min-height:44px;font-size:var(--text-small);color:var(--color-ink-muted)}.meal-portion-shortcuts button[aria-pressed=true]{background:var(--color-mint);color:var(--color-green)}.meal-add-food{color:var(--color-green);border-style:dashed;min-height:44px}.food-picker{background:var(--color-mint-soft);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:var(--space-sm);gap:var(--space-xs);display:grid}.food-search>div{position:relative}.food-search svg{inset-inline-start:var(--space-sm);color:var(--color-ink-muted);position:absolute;top:50%;transform:translateY(-50%)}.food-search input{padding-inline-start:38px}.food-picker-results{gap:var(--space-2xs);overscroll-behavior:contain;grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px;display:grid;overflow-y:auto}.food-picker-results button{justify-content:space-between;gap:var(--space-2xs);min-height:58px;padding:var(--space-xs);background:var(--color-surface);white-space:normal;text-align:start;display:flex}.food-picker-results button>span{overflow-wrap:anywhere;min-width:0;font-size:var(--text-small)}.food-picker-results small{color:var(--color-ink-muted);font-weight:400;font-size:var(--text-caption);display:block}.food-picker-results svg{flex-shrink:0}.meal-custom summary,.meal-note summary{cursor:pointer;min-height:44px;font-size:var(--text-small);color:var(--color-ink-muted);align-items:center;display:flex}.meal-custom[open]{gap:var(--space-xs);display:grid}.meal-custom[open] label{margin-bottom:var(--space-xs)}.meal-note textarea{min-height:88px}.meal-form .form-submit-row{margin-top:0}.meal-notebook-heading{justify-content:space-between;align-items:center;gap:var(--space-sm);margin:var(--space-sm) 0 var(--space-md);display:flex}.meal-notebook-heading .eyebrow{font-size:var(--text-caption);color:var(--color-ink-muted);letter-spacing:0}.meal-notebook-heading h1{margin:var(--space-2xs) 0 0;font-size:var(--text-title);letter-spacing:-.035em}.meal-notebook-heading .button{flex-shrink:0}.meal-view-switch{padding:var(--space-2xs);border-radius:var(--radius-card);background:var(--color-canvas);margin-bottom:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.meal-view-switch button{gap:var(--space-xs);min-height:44px;font-size:var(--text-small);color:var(--color-ink-muted)}.meal-view-switch button[aria-pressed=true]{background:var(--color-surface);color:var(--color-green)}.meal-filters{gap:var(--space-xs);margin-bottom:var(--space-md);display:grid}.meal-date-control{align-items:center;gap:var(--space-xs);grid-template-columns:44px minmax(0,1fr) 44px;display:grid}.meal-date-control label{min-width:0}.meal-date-control input{text-align:center;width:100%;min-width:0;font-size:16px}.meal-date-control button{min-height:44px}.meal-filter-selects{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.meal-filter-selects label{min-width:0}.meal-filter-selects select{width:100%}.meal-feed .section-heading{margin-block:var(--space-md) var(--space-sm)}.meal-day+.meal-day{margin-top:var(--space-lg)}.meal-card{border-radius:var(--radius-card);background:var(--color-surface);border:1px solid var(--color-line);margin-bottom:var(--space-sm);min-width:0;display:block;overflow:clip}.meal-card-image{aspect-ratio:16/10;background:var(--color-canvas);position:relative}.meal-card-image>img{object-fit:cover;width:100%;height:100%;display:block}.meal-photo-count{bottom:var(--space-xs);right:var(--space-xs);align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-xs);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-pill);font-size:var(--text-caption);display:flex;position:absolute}.meal-card-copy{padding:var(--space-sm)}.meal-card-copy>div{justify-content:space-between;align-items:center;gap:var(--space-xs);display:flex}.meal-card-title{align-items:center;gap:var(--space-2xs);font-weight:600;font-size:var(--text-small);display:flex}.meal-card time{color:var(--color-ink-muted);font-size:var(--text-caption);font-variant-numeric:tabular-nums}.meal-card-copy p{margin:var(--space-xs) 0 0;font-size:var(--text-small);color:var(--color-ink-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.6;display:-webkit-box;overflow:clip}.meal-empty-slot{align-items:center;gap:var(--space-sm);padding:0 var(--space-sm);margin-bottom:var(--space-xs);border:1px dashed var(--color-line);border-radius:var(--radius-card);color:var(--color-ink-muted);display:flex}.meal-empty-slot>span{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;flex:1;display:flex}.meal-empty-slot strong{font-size:var(--text-small);color:var(--color-ink);font-weight:500}.meal-empty-slot small{font-size:var(--text-caption)}.meal-empty-slot a{min-width:44px;min-height:44px}.meal-album{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.meal-album-card{margin:0}.meal-album-card .meal-card-image{aspect-ratio:1}.meal-album-card .meal-card-copy{padding:var(--space-xs)}.meal-album-card .meal-card-copy>div{align-items:start;gap:var(--space-2xs);flex-direction:column}.meal-album-card .meal-card-copy p{font-size:var(--text-caption)}.meal-empty{padding:var(--space-lg) var(--space-md);text-align:center;color:var(--color-ink-muted)}.meal-empty>svg{margin:0 auto var(--space-sm)}.meal-empty h3{font-size:var(--text-section);color:var(--color-ink)}.meal-empty p{font-size:var(--text-small);line-height:1.7}.meal-photo-failed{justify-content:center;align-items:center;gap:var(--space-xs);width:100%;height:100%;min-height:100px;color:var(--color-ink-muted);background:var(--color-canvas);font-size:var(--text-caption);flex-direction:column;display:flex}.meal-photo-failed button{min-height:44px}.meal-detail{border-radius:var(--radius-card);background:var(--color-surface);border:1px solid var(--color-line);overflow:clip}.meal-detail-heading{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-md);flex-wrap:wrap;display:flex}.meal-detail-type{align-items:center;gap:var(--space-xs);color:var(--color-green);font-size:var(--text-section);font-weight:600;display:flex}.meal-detail-heading>span:last-child{font-size:var(--text-caption);color:var(--color-ink-muted)}.meal-detail-photo{aspect-ratio:4/3;background:var(--color-canvas);width:100%}.meal-detail-photo>img{object-fit:cover;width:100%;height:100%;display:block}.meal-detail-photo.expanded{aspect-ratio:auto}.meal-detail-photo.expanded>img{object-fit:contain;height:auto}.meal-detail-photo-caption{justify-content:space-between;gap:var(--space-xs);padding-inline:var(--space-sm);font-size:var(--text-caption);color:var(--color-ink-muted);align-items:center;display:flex}.meal-detail-photo-caption button{min-height:44px;font-size:var(--text-caption)}.meal-detail-thumbs{gap:var(--space-xs);padding:0 var(--space-sm) var(--space-xs);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.meal-detail-thumbs button{aspect-ratio:1;background:var(--color-canvas);border:2px solid #0000;min-height:44px;padding:0;overflow:clip}.meal-detail-thumbs button[aria-pressed=true]{border-color:var(--color-green)}.meal-detail-thumbs img{object-fit:cover;width:100%;height:100%}.meal-detail-foods{padding:var(--space-sm) var(--space-md) var(--space-md)}.meal-detail-foods .section-heading{margin:0 0 var(--space-xs)}.meal-detail-foods h2{font-size:var(--text-section)}.meal-detail-foods dl{margin:0}.meal-detail-foods dl>div{justify-content:space-between;align-items:start;gap:var(--space-md);padding-block:var(--space-sm);border-bottom:1px solid var(--color-line);font-size:var(--text-body);display:flex}.meal-detail-foods dt{overflow-wrap:anywhere;min-width:0}.meal-detail-foods dd{color:var(--color-green);font-variant-numeric:tabular-nums;flex-shrink:0;margin:0;font-weight:500}.meal-detail-note{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 var(--space-md) var(--space-md);color:var(--color-ink-muted);font-size:var(--text-small);line-height:1.8}.meal-detail-actions{gap:var(--space-xs);margin-top:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.meal-detail-actions .button,.meal-detail-actions button{padding-inline:var(--space-xs);gap:var(--space-2xs);white-space:nowrap;min-height:44px}.meal-saved{padding:var(--space-sm);border-radius:var(--radius-small);background:var(--color-mint);color:var(--color-green);font-size:var(--text-small)}@media (width<=360px){.meal-types button{gap:2px}.meal-types svg{width:16px}.home-water-footer{font-size:11px}.meal-notebook-heading{gap:var(--space-xs)}.meal-notebook-heading .button{padding-inline:var(--space-xs)}.meal-album{gap:var(--space-xs)}}
