@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.p.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.p.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_9a6bdfa3-module__1mXABa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_9a6bdfa3-module__1mXABa__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/3fe0c37ce42eed87-s.3p5eday94yd-4.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/02adf4530898f811-s.p.066bjbm5i19v_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/8977c1cd2337358b-s.3le20i-q6iq1d.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/81b6a121427f6096-s.20rerpx5ni1b9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/224c524ea68f4a61-s.1vtk-5-2f64np.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/f2cfe3151537ae33-s.p.2ccnl8wncv_qb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_a9e54e0e-module__OamlLG__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal;font-weight:400}.ibm_plex_sans_a9e54e0e-module__OamlLG__variable{--font-sans:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b6a3ba25a63ffdc2-s.3yf3vfn2c_9tw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/c46d9efd5b21dbaa-s.p.0izap24bx7j_o.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/6308822089fd3411-s.1g4p5h7qohzvf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/ff4d9f8b7294524b-s.0o02v0n75imht.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/0e64cfb82a47c250-s.p.1lv8u_7b7mo9m.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7f49c72243bdcede-s.08hd2gmdgg53j.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a2797aaeec05c026-s.p.1ijh3eiienigl.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b3baf9375001c1f5-s.26q94mkznr9q6.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9096fd5f49bfad97-s.2u1f8c8uadqqu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Serif;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ef7be03ed7e60a63-s.p.3v7282xeqat89.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Serif Fallback;src:local(Times New Roman);ascent-override:88.04%;descent-override:23.62%;line-gap-override:0.0%;size-adjust:116.43%}.ibm_plex_serif_f00163ad-module__f-zWjW__className{font-family:IBM Plex Serif,IBM Plex Serif Fallback;font-weight:400}.ibm_plex_serif_f00163ad-module__f-zWjW__variable{--font-serif:"IBM Plex Serif", "IBM Plex Serif Fallback"}
html{--paper:#ecebe8;--card:#f7f6f4;--ink:#111;--muted:#8a8987;--soft:#c9c8c4;--line:#dddcd8;--danger:#b3261e;--gain:#3d9a5c;--font:var(--font-mono), ui-monospace, "SF Mono", Menlo, monospace;--font-text:var(--font-sans), system-ui, sans-serif;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.3, 1.35, .5, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:12px;line-height:1.5}a{color:inherit}button,input,textarea{font:inherit;color:inherit}.panel{background:var(--card);box-shadow:0 1px #00000008,0 10px 40px #00000014}.link-button{cursor:pointer;text-transform:uppercase;letter-spacing:.02em;text-align:left;background:0 0;border:none;padding:0}.link-button:hover{text-decoration:underline}.link-button:disabled{opacity:.4}.solid-button{background:var(--ink);color:var(--paper);cursor:pointer;text-transform:uppercase;letter-spacing:.04em;border:none;padding:10px 16px;transition:opacity .2s,transform .15s}.solid-button:active{transform:scale(.97)}.solid-button:disabled{opacity:.25;cursor:default}.error{color:var(--danger)}.muted{color:var(--muted)}.diary{min-height:100dvh;padding-bottom:calc(160px + env(safe-area-inset-bottom))}.topbar{z-index:10;padding:env(safe-area-inset-top) 20px 0 0;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);align-items:center;gap:16px;display:flex;position:sticky;top:0}.tabs{scrollbar-width:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:1;gap:18px;min-width:0;padding:0 20px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 24px),#0000)}.tabs::-webkit-scrollbar{display:none}.tab{font:inherit;text-transform:uppercase;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .2s, transform .25s var(--ease-out), opacity .2s;background:0 0;border:none;flex:none;padding:14px 0 12px;position:relative}.tab:after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .35s var(--ease-out);position:absolute;bottom:8px;left:0;right:0;transform:scaleX(0)}.tab:hover,.tab.is-active{color:var(--ink)}.tab.is-active:after{transform:scaleX(1)}.tabs.is-sorting .tab:not(.is-dragging){opacity:.45}.tab.is-dragging{color:var(--ink);cursor:grabbing;transform:translateY(-2px)}.logout{color:var(--muted);flex:none;transition:color .2s}.logout:hover{color:var(--ink)}.toast{z-index:40;left:50%;top:calc(52px + env(safe-area-inset-top));background:var(--ink);max-width:calc(100% - 40px);color:var(--paper);text-transform:uppercase;cursor:pointer;animation:toast-in .3s var(--ease-spring) both;padding:10px 14px;position:fixed;transform:translate(-50%)}.feed{max-width:620px;margin:0 auto;padding:4px 16px}.feed-empty{color:var(--muted);font-family:var(--font-text);text-align:center;padding:4px 4px 0}.feed>.day:has(+.feed-empty){text-align:center;border-bottom:0;justify-content:center}.feed>.day:has(+.feed-empty)>span:first-child{color:var(--muted)}.backdate .link-button{color:var(--muted)}.backdate .link-button:hover{color:var(--ink)}.day-picker{display:inline-block;position:relative}.day-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.backdate{border-left:2px solid var(--gain);background:color-mix(in srgb, var(--gain) 8%, transparent);letter-spacing:.02em;text-transform:uppercase;flex-wrap:wrap;align-items:baseline;gap:8px 20px;margin:-2px 0 14px;padding:10px 14px;font-size:10px;display:flex}.backdate>span{color:var(--ink)}.backdate-time{color:var(--muted);align-items:baseline;gap:6px;display:inline-flex}.backdate-time input{border:none;border-bottom:1px solid var(--soft);font-family:var(--font-mono);color:var(--ink);background:0 0;outline:none;padding:0;font-size:16px}.dash-fill{color:var(--ink);margin:18px auto 0;display:block}.node-from{letter-spacing:.04em;color:var(--muted);padding:0 4px 6px;font-size:10px}.branch{margin-left:14px}.branch>.node{padding:8px 0 0 18px;position:relative}.branch>.node:before{content:"";border-left:1px solid var(--ink);opacity:.25;position:absolute;top:0;bottom:0;left:0}.branch>.node:last-child:before{height:30px;bottom:auto}.branch>.node:after{content:"";border-top:1px solid var(--ink);opacity:.25;width:14px;position:absolute;top:30px;left:0}.branch .block{gap:12px;padding:14px 18px 10px}.branch .block-text{font-size:16px}.block.is-branching{box-shadow:0 0 0 1px var(--ink)}.block-branch{cursor:pointer;-webkit-tap-highlight-color:transparent;width:24px;height:24px;transition:background .2s, transform .15s var(--ease-spring);background:0 0;border:none;border-radius:50%;place-items:center;display:grid}.block-branch:active{transform:scale(.9)}.block-branch svg{fill:none;width:12px;height:12px;stroke:var(--muted);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s}.block-branch:hover svg{stroke:var(--ink)}.block-branch.is-active{background:var(--ink)}.block-branch.is-active svg{stroke:var(--paper)}.sheet-parent{border-left:1px solid var(--soft);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:12px;padding-left:10px;font-size:11px;overflow:hidden}.day{letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px;padding:36px 4px 8px;font-size:10px;font-weight:400;display:flex}.day>span:first-child{letter-spacing:.02em;color:var(--ink);font-size:12px;font-weight:500}.feed>.day:first-child{padding-top:22px}.day-total{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.diary:has(.dash){padding-bottom:calc(24px + env(safe-area-inset-bottom))}.dash{min-height:calc(100dvh - 41px - env(safe-area-inset-top) - 24px - env(safe-area-inset-bottom));flex-direction:column;justify-content:center;padding:16px 0;animation:.35s both fade-in;display:flex}.dash.has-day{justify-content:flex-start}.dash-month{background:var(--card);touch-action:pan-y;padding:16px 22px 22px}.dash-month.is-next{animation:dash-in-next .32s var(--ease-out) both}.dash-month.is-prev{animation:dash-in-prev .32s var(--ease-out) both}@keyframes dash-in-next{0%{opacity:0;transform:translate(24px)}}@keyframes dash-in-prev{0%{opacity:0;transform:translate(-24px)}}.dash-head{text-align:center}.dash-nav{justify-content:space-between;align-items:center;margin:0 -10px;display:flex}.dash-head h2{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:400}.dash-arrow{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;place-items:center;width:36px;height:36px;transition:background .2s;display:grid}.dash-arrow svg{fill:none;width:12px;height:12px;stroke:var(--ink);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.dash-arrow:hover:not(:disabled){background:var(--paper)}.dash-arrow:disabled{cursor:default}.dash-arrow:disabled svg{stroke:var(--soft)}.dash-head p{color:var(--muted);text-transform:uppercase;font-variant-numeric:tabular-nums;margin-top:4px;font-size:10px}.dash-grid{grid-template-columns:repeat(7,1fr);row-gap:6px;margin-top:18px;display:grid}.dash-weekday{color:var(--muted);text-align:center;text-transform:uppercase;padding-bottom:6px;font-size:9px}.dash-day{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:6px 0;display:flex}.dash-day:disabled{cursor:default}.dash-day i{width:14px;height:14px;transition:background .2s, transform .25s var(--ease-spring);border-radius:50%}.dash-day svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.dash-day circle{fill:none;stroke:color-mix(in srgb, var(--ink) 14%, transparent);stroke-width:2.8px;transition:stroke .2s}.dash-day circle.is-on{stroke:var(--ink)}.dash-day span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:9px;line-height:1}.dash-day.is-future i{background:color-mix(in srgb, var(--ink) 7%, transparent)}.dash-day.is-future span{opacity:.5}.dash-day.is-missed i{background:color-mix(in srgb, var(--ink) 28%, transparent)}.dash-day.is-full i{background:var(--ink)}.dash-day.is-selected i{transform:scale(1.2)}.dash-day.is-selected:not(.is-partial) i{background:var(--gain)}.dash-day.is-selected circle.is-on{stroke:var(--gain)}.dash-day.is-today span,.dash-day.is-selected span{color:var(--ink)}.dash-day:not(:disabled):hover i{transform:scale(1.15)}.dash-goal{background:var(--card);text-align:center;margin-bottom:8px;padding:16px 22px 18px}.dash-goal h2{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:400}.dash-goal p{color:var(--muted);text-transform:uppercase;font-variant-numeric:tabular-nums;margin-top:4px;font-size:10px}.dash-ticks{grid-template-columns:repeat(30,1fr);gap:3px;margin-top:14px;display:grid}.dash-ticks button{height:16px;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s, transform .25s var(--ease-spring);border:none;border-radius:2px;padding:0}.dash-ticks button:disabled{cursor:default}.dash-ticks .is-future{background:color-mix(in srgb, var(--ink) 7%, transparent)}.dash-ticks .is-missed{background:color-mix(in srgb, var(--ink) 28%, transparent)}.dash-ticks .is-partial{background:linear-gradient(to top, var(--ink) var(--fill), color-mix(in srgb, var(--ink) 14%, transparent) var(--fill))}.dash-ticks .is-full{background:var(--ink)}.dash-ticks .is-today{box-shadow:0 0 0 1px var(--card), 0 0 0 2px var(--ink)}.dash-ticks .is-selected{background:var(--gain);transform:scaleY(1.25)}.dash-day-view{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);margin-top:18px;animation:.3s both fade-in}.dash-day-view .day{text-transform:uppercase;padding:16px 0 4px}.dash-section{margin-top:26px}.dash-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--ink);align-items:center;gap:8px;margin:0 0 10px;font-size:11px;font-weight:500;display:flex}.dash-section-title:after{content:"";background:color-mix(in srgb, var(--ink) 14%, transparent);flex:1;height:1px}.dash-section-count{background:var(--ink);min-width:18px;color:var(--card);text-align:center;border-radius:9px;padding:1px 5px;font-size:10px}.dash-section-list{background:var(--paper);border-radius:3px;overflow:hidden}.dash-section-list .block{background:var(--paper);box-shadow:none;border-radius:0}.dash-section-list>div+div{border-top:1px dashed color-mix(in srgb, var(--ink) 16%, transparent)}.food-day{background:var(--paper);border-radius:3px;flex-direction:column;gap:12px;margin-top:8px;padding:14px 22px;font-size:11px;display:flex}.food-day-micros{grid-template-columns:1fr 1fr;gap:6px 22px;list-style:none;display:grid}.food-day-micros li{border-bottom:1px dashed color-mix(in srgb, var(--ink) 10%, transparent);justify-content:space-between;gap:8px;padding-bottom:4px;display:flex}.micro-amount,.food-day-micros li span:last-child{color:var(--muted)}.food-day-micros li span:last-child{font-variant-numeric:tabular-nums}.food-day-caption,.food-day-supplements span{font-family:var(--font);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-right:12px;font-size:10px}@media (max-width:520px){.food-day-micros{grid-template-columns:1fr}}.dash-section-empty{color:var(--muted);margin-top:26px;font-size:11px}.block-photo{object-fit:cover;background:var(--paper);width:calc(100% + 44px);max-height:360px;margin:-20px -22px 0;display:block}.food{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);font-variant-numeric:tabular-nums;--food-num:40px;flex-direction:column;gap:10px;padding-top:12px;font-size:11px;animation:.35s both fade-in;display:flex}.food-head{justify-content:space-between;align-items:center;margin:-4px 0 -6px;display:flex}.food-meal{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px}.food-sum{grid-template-columns:1fr repeat(3, var(--food-num));align-items:end;display:grid}.food-kcal{align-items:baseline;gap:6px;display:flex}.food-kcal b{letter-spacing:-.02em;font-size:26px;font-weight:400;line-height:1}.food-kcal span,.food-macro span{color:var(--muted);text-transform:uppercase;font-size:10px}.food-macro{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.food-macro b{font-size:13px;font-weight:400;line-height:1}.food-edit{cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:-6px;display:grid}.food-edit svg{fill:none;width:11px;height:11px;stroke:var(--muted);stroke-width:1.2px;stroke-linejoin:round;transition:stroke .2s}.food-edit:hover svg{stroke:var(--ink)}.food-items,.food-context{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);padding-top:10px}.food-items{flex-direction:column;gap:5px;list-style:none;display:flex}.food-items li{grid-template-columns:1fr auto var(--food-num);color:var(--muted);gap:16px;display:grid}.food-items li span:not(.food-name){text-align:right}.food-context{flex-direction:column;gap:10px;display:flex}.food-facts{grid-template-columns:64px 1fr;gap:5px 12px;display:grid}.food-facts dt,.food-scales span:first-child{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.food-facts dt{line-height:15px}.food-facts dd{font-family:var(--font-text);margin:0;font-size:12px;line-height:16px}.food-name,.info-title,.fe-name,.food-day-supplements,.food-day-micros li span:first-child{font-family:var(--font-text);font-size:12px}.food-scales{flex-wrap:wrap;gap:8px 18px;display:flex}.food-scales>div{flex-direction:column;gap:5px;min-width:64px;display:flex}.work-time{white-space:nowrap;align-items:center;gap:10px;display:flex}.work-total{color:var(--muted)}.info-sum{grid-template-columns:1fr auto;align-items:start;gap:16px;display:grid}.info-title{flex-direction:column;gap:4px;min-width:0;display:flex}.info-title b{font-size:15px;font-weight:400;line-height:1.3}.info-title span{color:var(--muted)}.info-time{white-space:nowrap;font-size:15px;line-height:1.3}.food-dots{gap:3px;display:flex}.food-dots i{background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:50%;width:6px;height:6px}.food-dots i.is-on{background:var(--ink)}.food-dots i.is-gain{background:var(--gain)}.food-dots i.is-loss{background:var(--muted)}.food-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.food-status{color:var(--muted);text-transform:uppercase;font-size:10px}.food-status.is-busy{animation:1.1s steps(2,end) infinite blink}.food-fill{align-self:flex-start;font-size:10px}.sheet.steps{padding:16px 20px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:18px;min-height:340px;display:flex;overflow:hidden}.steps-head{align-items:center;gap:12px;display:flex}.steps-back{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;place-items:center;width:28px;height:28px;margin-left:-6px;display:grid}.steps-back:disabled{opacity:.2;cursor:default}.steps-back svg,.steps-next svg{fill:none;width:12px;height:12px;stroke:var(--ink);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.steps-progress{flex:1;gap:4px;display:flex}.steps-progress span{background:var(--soft);opacity:.5;border-radius:1px;flex:1;height:2px;transition:background .3s,opacity .3s}.steps-progress span.is-done{background:var(--ink);opacity:1}.steps-body{animation:steps-in-fwd .32s var(--ease-out) both;flex-direction:column;flex:1;gap:14px;display:flex}.steps-body.is-back{animation-name:steps-in-back}.steps-title{text-transform:uppercase;color:var(--muted)}.steps-options{flex-wrap:wrap;gap:8px;display:flex}.steps-option{border:1px solid var(--soft);font-family:var(--font-serif), Georgia, serif;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s, color .15s, border-color .15s, transform .15s var(--ease-spring);background:0 0;border-radius:3px;padding:12px 16px;font-size:17px}.steps-option:active,.steps-dot:active{transform:scale(.95)}.steps-option.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.steps-scale{flex-direction:column;gap:6px;display:flex}.steps-dots{gap:8px;display:flex}.steps-dot{aspect-ratio:1;border:1px solid var(--soft);max-width:64px;font:inherit;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s, color .15s, border-color .15s, transform .15s var(--ease-spring);background:0 0;border-radius:50%;flex:1;font-size:14px}.steps-dot.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.steps-ends{max-width:352px;color:var(--muted);text-transform:uppercase;justify-content:space-between;font-size:10px;display:flex}.steps-row{flex-direction:column;gap:6px;display:flex}.steps-row .steps-dot{max-width:44px;font-size:12px}.steps-row .steps-ends{max-width:252px}.steps-row-label{font-family:var(--font-serif), Georgia, serif;font-size:16px}.steps-inline{align-items:center;gap:8px;display:flex}.steps-inline input{border:none;border-bottom:1px solid var(--soft);min-width:0;font-family:var(--font-serif), Georgia, serif;background:0 0;outline:none;flex:1;padding:10px 0;font-size:17px}.steps-next{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.steps-foot{justify-content:space-between;align-items:center;display:flex}@keyframes steps-in-fwd{0%{opacity:0;transform:translate(24px)}}@keyframes steps-in-back{0%{opacity:0;transform:translate(-24px)}}.food-error{color:var(--danger);text-transform:uppercase;font-size:10px}.food-editor{flex-direction:column;gap:16px;max-height:calc(100dvh - 32px);padding:20px 20px 16px;font-size:11px;display:flex;overflow-y:auto}.fe-total{font-variant-numeric:tabular-nums;font-size:13px}.fe-section{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);flex-direction:column;gap:10px;padding-top:14px;display:flex}.fe-row{flex-direction:column;gap:6px;display:flex}.fe-name,.fe-nums input,.fe-nums select{border:none;border-bottom:1px solid var(--soft);font:inherit;color:inherit;background:0 0;border-radius:0;outline:none;padding:4px 0}.fe-name{font-size:13px}.fe-name:focus,.fe-nums input:focus{border-bottom-color:var(--ink)}.fe-nums{align-items:flex-end;gap:10px;display:flex}.fe-nums label{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fe-nums input{font-variant-numeric:tabular-nums;width:100%}.fe-nums label span,.fe-label,.fe-scale>span{text-transform:uppercase;color:var(--muted);font-size:9px}.fe-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 2px 4px;font-size:16px}.fe-supplement{flex-direction:row;align-items:flex-end;gap:10px}.fe-supplement .fe-name{flex:1;min-width:0}.fe-supplement .fe-dose{flex:0 0 34%}.fe-scale{justify-content:space-between;align-items:center;gap:10px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--soft);text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:2px;padding:5px 9px;font-size:10px;transition:background .15s,color .15s,border-color .15s}.chip.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.fe-actions{justify-content:space-between;align-items:center;padding-top:6px;display:flex}.fe-actions-right{align-items:center;gap:18px;display:flex}.sheet-photo{width:72px;height:72px;margin-bottom:12px;position:relative}.sheet-photo img{object-fit:cover;border-radius:2px;width:100%;height:100%}.sheet-photo button{background:var(--ink);width:20px;height:20px;color:var(--paper);cursor:pointer;border:none;border-radius:50%;font-size:12px;line-height:1;position:absolute;top:-6px;right:-6px}.sheet-attach{cursor:pointer;place-items:center;width:30px;height:30px;display:grid;position:absolute;bottom:14px;left:14px}.sheet-attach input{opacity:0;cursor:pointer;position:absolute;inset:0}.sheet-attach svg{fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:1.1px;stroke-linejoin:round;pointer-events:none}.feed-item{padding-bottom:8px}.block-wrap{animation:rise .5s var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms);grid-template-rows:1fr;display:grid}.block-wrap>.block{min-height:0}.block-wrap.is-new{animation:grow .55s var(--ease-out) both}.block-wrap.is-new>.block{animation:land .6s var(--ease-spring) both}.block{background:var(--card);border-radius:3px;flex-direction:column;gap:16px;padding:20px 22px 12px;transition:box-shadow .3s,opacity .3s;display:flex;overflow:hidden;box-shadow:0 1px #00000008}.block.is-pending{opacity:.75}.block.is-failed{box-shadow:inset 2px 0 0 var(--danger)}.block-foot{letter-spacing:.03em;color:var(--muted);grid-template-columns:28px 1fr;grid-auto-columns:auto;grid-auto-flow:column;align-items:center;gap:10px;font-size:10px;display:grid}.block-foot.no-cipher{grid-template-columns:1fr}.cipher-mark{opacity:.8;width:28px;height:28px}.block-meta{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.block-code{opacity:.7}.block-status{animation:1.1s steps(2,end) infinite blink}.block-status.error{animation:none}.block-action{color:var(--ink);font-size:10px}.block-text{font-family:var(--font-serif), Georgia, serif;letter-spacing:-.005em;white-space:pre-wrap;overflow-wrap:anywhere;text-wrap:pretty;font-size:18px;line-height:1.55}.cipher{width:100%;height:100%;stroke:var(--ink);stroke-linecap:round;fill:none;display:block;overflow:visible}.cipher .fill-ink{fill:var(--ink);stroke:none}.cipher-orbit{opacity:.35}.cipher-line{stroke-dasharray:1;stroke-dashoffset:1px;animation:draw .3s var(--ease-out) forwards;animation-delay:calc(var(--delay,0s) + .12s)}.cipher-dot{transform-box:fill-box;transform-origin:50%;animation:pop .35s var(--ease-spring) both;animation-delay:calc(var(--delay,0s) + .12s)}.cipher .fill-card{fill:var(--card)}.cipher-large{width:120px;height:120px}.voice{grid-template-columns:26px minmax(0,auto) auto auto;justify-content:start;align-items:center;gap:12px;display:grid}.voice-play{border:1px solid var(--ink);cursor:pointer;width:26px;height:26px;transition:background .2s, transform .15s var(--ease-spring);background:0 0;border-radius:50%;place-items:center;display:grid}.voice-play:active{transform:scale(.9)}.voice-play svg{width:9px;height:9px;fill:var(--ink);transition:fill .2s}.voice.is-playing .voice-play{background:var(--ink)}.voice.is-playing .voice-play svg{fill:var(--card)}.voice-bars{cursor:pointer;align-items:center;gap:3px;height:18px;display:flex}.voice-bars span{background:var(--soft);border-radius:1px;flex:0 3px;min-width:1px;transition:background .15s}.voice-bars span.is-played{background:var(--ink)}.voice-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.voice-transcript{cursor:pointer;-webkit-tap-highlight-color:transparent;width:26px;height:26px;transition:background .2s, transform .15s var(--ease-spring);background:0 0;border:none;border-radius:50%;place-items:center;display:grid}.voice-transcript:active{transform:scale(.9)}.voice-transcript svg{fill:none;width:12px;height:12px;stroke:var(--muted);stroke-width:1.3px;stroke-linecap:round;transition:stroke .2s}.voice-transcript:hover svg,.voice-transcript.is-open svg{stroke:var(--ink)}.voice-transcript.is-open{background:var(--paper)}.voice-transcript.is-busy svg{animation:1.1s steps(2,end) infinite blink}.block-text.is-transcript{animation:.35s both fade-in}.block-note{color:var(--danger);text-transform:uppercase;font-size:10px}.sheet-backdrop{z-index:30;-webkit-backdrop-filter:blur(6px);padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));background:#ecebe8b8;justify-content:center;align-items:flex-end;animation:.25s both fade-in;display:flex;position:fixed;inset:0}.sheet-backdrop.is-closing,.sheet-backdrop.is-sending{animation:.3s forwards fade-out}.sheet{width:100%;max-width:560px;animation:sheet-in .45s var(--ease-spring) both;border-radius:3px;padding:20px 22px 56px;position:relative}.sheet.is-closing{animation:.24s ease-in forwards sheet-out}.sheet.is-sending{animation:.34s cubic-bezier(.5,0,.75,0) forwards sheet-send}.sheet-label{text-transform:uppercase;color:var(--muted)}.sheet textarea{resize:none;width:100%;font-family:var(--font-serif), Georgia, serif;background:0 0;border:none;outline:none;font-size:18px;line-height:1.55;display:block}.sheet-send{background:var(--ink);cursor:pointer;opacity:0;pointer-events:none;-webkit-tap-highlight-color:transparent;width:34px;height:34px;transition:opacity .2s, transform .3s var(--ease-spring);border:none;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:12px;right:12px;transform:scale(.6)}.sheet-send.is-ready{opacity:1;pointer-events:auto;transform:scale(1)}.sheet-send:active{transform:scale(.88)}.sheet-send svg{fill:none;width:12px;height:12px;stroke:var(--paper);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.dock{z-index:15;padding:24px 0 calc(18px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--paper) 55%, transparent);pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.live-bars{opacity:0;align-items:center;gap:2px;width:72px;height:18px;transition:opacity .25s;display:flex}.dock.is-hidden{display:none}.dock.is-recording .live-bars{opacity:1}.live-bars span{background:var(--danger);border-radius:1px;flex:1;transition:height 80ms linear}.record{pointer-events:auto;background:var(--ink);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;width:52px;height:52px;transition:transform .3s var(--ease-spring), background-color .25s, box-shadow .25s;border:none;border-radius:50%;place-items:center;display:grid;box-shadow:0 6px 18px #00000024}.record:active,.record.is-holding{transform:scale(.9)}.dock-camera{pointer-events:auto;left:calc(50% + 44px);bottom:calc(26px + env(safe-area-inset-bottom));background:var(--card);cursor:pointer;-webkit-tap-highlight-color:transparent;width:38px;height:38px;transition:transform .3s var(--ease-spring);animation:rise .4s var(--ease-out) both;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 4px 14px #0000001a}.dock-camera:active{transform:scale(.9)}.dock-camera input{opacity:0;cursor:pointer;position:absolute;inset:0}.dock-camera svg{fill:none;width:18px;height:18px;stroke:var(--ink);stroke-width:1.1px;stroke-linejoin:round;pointer-events:none}.record-core{background:var(--paper);width:6px;height:6px;transition:all .3s var(--ease-spring);border-radius:50%}.record.is-holding .record-core{width:10px;height:10px}.record.is-recording{background:var(--danger);box-shadow:none;animation:1.4s ease-in-out infinite pulse;transform:scale(1.08)}.record.is-recording .record-core{border-radius:3px;width:14px;height:14px}.login{flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100dvh;padding:24px;display:flex}.login-form{width:100%;max-width:320px;animation:rise .6s var(--ease-out) .3s both;flex-direction:column;gap:12px;padding:18px;display:flex}.login-form label{grid-template-columns:80px 1fr;align-items:center;display:grid}.login-form input{background:#fff;border:none;outline:none;min-width:0;padding:6px 8px;font-size:16px}.login-brand{animation:rise .6s var(--ease-out) both;flex-direction:column;align-items:center;gap:16px;display:flex}.login-brand h1{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:13px;font-weight:500}.login-mark{gap:6px;display:flex}.login-mark i{background:var(--ink);border-radius:50%;width:18px;height:18px}.login-mark i.is-gain{background:var(--gain)}.login-mark i.is-empty{background:var(--soft)}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes blink{50%{opacity:.3}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}}@keyframes grow{0%{opacity:0;grid-template-rows:0fr}40%{opacity:1}}@keyframes land{0%{transform:translateY(-24px)scale(.94)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(60px)scale(.96)}}@keyframes sheet-out{to{opacity:0;transform:translateY(40px)scale(.97)}}@keyframes sheet-send{to{opacity:0;transform:translateY(-55vh)scale(.6)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes pulse{0%,to{box-shadow:0 0 #b3261e4d}50%{box-shadow:0 0 0 12px #b3261e00}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}.dash-fold{background:var(--card);margin-top:8px}.dash-fold summary{cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:center;gap:10px;padding:16px 22px;list-style:none;display:flex}.dash-fold summary::-webkit-details-marker{display:none}.dash-fold-title{text-transform:uppercase;letter-spacing:.08em;font-size:11px}.dash-fold-hint{text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:10px;overflow:hidden}.dash-fold summary svg{fill:none;width:12px;height:12px;stroke:var(--ink);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--ease-out);flex:none}.dash-fold-title+svg{margin-left:auto}.dash-fold[open] summary svg{transform:rotate(180deg)}.dash-fold-body{padding:2px 22px 22px;animation:.3s both fade-in}.dash-fold-body>.dash-insights>.dash-insight:first-child,.dash-fold-body>.dash-review-actions{margin-top:0}.people-search{border:none;border-bottom:1px solid var(--soft);width:100%;font-family:var(--font-text);color:var(--ink);background:0 0;outline:none;margin-bottom:10px;padding:6px 0;font-size:16px}.people-search:focus{border-bottom-color:var(--ink)}.people{margin:0;padding:0;list-style:none}.people>li+li{border-top:1px solid var(--soft)}.people-row{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;align-items:baseline;gap:10px;padding:10px 0;display:flex}.people-name{font-family:var(--font-text);flex:none;font-size:14px}.people-who{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-family:var(--font-text);color:var(--muted);font-size:12px;overflow:hidden}.people-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.people>li.is-open .people-who{white-space:normal}.people-mentions{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;animation:.25s both fade-in;display:flex}.people-mentions li{flex-direction:column;gap:3px;display:flex}.people-where{text-transform:uppercase;letter-spacing:.02em;color:var(--muted);font-size:10px}.people-context{font-family:var(--font-text);font-size:13px;line-height:1.4}.dash-chart+.dash-chart{margin-top:16px}.dash-chart-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding-bottom:6px;font-size:10px;display:flex}.dash-chart-title span:first-child{color:var(--ink)}.dash-bars{gap:2px;height:32px;display:grid}.dash-bars button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:0;position:relative}.dash-bars button:disabled{cursor:default}.dash-bars button:before{content:"";background:color-mix(in srgb, var(--ink) 8%, transparent);height:1px;position:absolute;bottom:0;left:0;right:0}.dash-chart.is-change .dash-bars button:before{bottom:50%}.dash-bars i{background:var(--ink);border-radius:1px;transition:background .2s;position:absolute;left:0;right:0}.dash-bars i.is-gain{background:var(--gain)}.dash-bars i.is-loss{background:var(--muted)}.dash-bars .is-selected i{background:var(--gain);box-shadow:0 0 0 1px var(--gain)}.dash-bars .is-selected i.is-loss{background:var(--ink);box-shadow:0 0 0 1px var(--ink)}.dash-insight{margin-top:16px}.dash-insight-row{grid-template-columns:1fr auto 68px;align-items:center;gap:12px;padding:3px 0;font-size:12px;display:grid}.dash-insight-label small{color:var(--muted);font-size:10px}.dash-link+.dash-link{border-top:1px solid var(--line);padding-top:6px}.dash-links-empty,.dash-links-note{color:var(--muted);margin:0;font-size:11px}.dash-links-note{margin-top:8px;font-size:10px}.dash-insight-num{text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.dash-insight-bar{background:color-mix(in srgb, var(--ink) 8%, transparent);width:80px;height:4px}.dash-insight-bar i{background:var(--ink);height:100%;display:block}.dash-review-actions{justify-content:center;gap:6px;margin-top:12px;display:flex}.dash-review-actions .chip:disabled{opacity:.5;cursor:default}.dash-review-note{color:var(--muted);text-align:center;margin-top:10px;font-size:11px}.dash-review-note.is-error{color:var(--ink)}.dash-review-tabs{flex-wrap:wrap;justify-content:center;gap:4px 12px;margin-top:14px;display:flex}.dash-review-tabs button{font:inherit;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #0000;padding:2px 0;font-size:10px}.dash-review-tabs button.is-active{color:var(--ink);border-bottom-color:var(--ink)}.dash-review-body{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent);margin-top:18px;padding-top:16px;animation:.3s both fade-in}.dash-review-range{text-transform:uppercase;color:var(--muted);font-size:10px}.dash-review-summary{margin-top:8px;font-size:14px;line-height:1.5}.dash-review-part{margin-top:18px}.dash-review-part h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding-bottom:6px;font-size:10px;font-weight:400}.dash-review-part ul,.dash-review-part ol{margin:0;padding-left:18px;font-size:13px;line-height:1.5}.dash-review-part li+li{margin-top:6px}.dash-review-part li b{font-weight:500;display:block}.dash-review-part li span{color:color-mix(in srgb, var(--ink) 75%, transparent)}.dash-foot{text-transform:uppercase;color:var(--muted);justify-content:center;gap:14px;margin-top:18px;font-size:10px;display:flex}.dash-foot a{color:var(--ink);border-bottom:1px solid var(--soft);text-decoration:none}.dash-reminder{text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;margin-top:22px;font-size:10px;display:flex}.dash-reminder.is-muted{text-transform:none;text-align:center;font-size:11px}.dash-reminder label{align-items:center;gap:6px;display:flex}.dash-reminder select{border:none;border-bottom:1px solid var(--soft);font:inherit;color:var(--ink);cursor:pointer;background:0 0;padding:0 0 1px}.dash-reminder>button:not(.chip){font:inherit;text-transform:uppercase;color:var(--ink);border:none;border-bottom:1px solid var(--soft);cursor:pointer;background:0 0;padding:0}.dash-reminder button:disabled{opacity:.5;cursor:default}.dash-reminder-note{text-align:center;text-transform:none;flex-basis:100%;font-size:11px}.dash-danger{text-transform:uppercase;max-width:320px;color:var(--muted);flex-direction:column;align-items:center;gap:10px;margin:26px auto 8px;font-size:10px;display:flex}.dash-danger button{font:inherit;text-transform:uppercase;color:var(--muted);border:none;border-bottom:1px solid var(--soft);cursor:pointer;background:0 0;padding:0}.dash-danger.is-open p{text-transform:none;text-align:center;color:var(--ink);font-size:11px}.dash-danger input{border:none;border-bottom:1px solid var(--ink);width:100%;font:inherit;text-transform:none;color:var(--ink);background:0 0;padding:4px 0;font-size:13px}.dash-danger-actions{gap:18px;display:flex}.dash-danger button.is-danger{color:var(--danger);border-bottom-color:currentColor}.dash-danger button:disabled{opacity:.5;cursor:default}.dash-danger-error{color:var(--danger)}.onboarding{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));justify-content:center;align-items:center;display:flex}.onboarding-panel{width:100%;max-width:380px;animation:rise .6s var(--ease-out) both;flex-direction:column;gap:14px;padding:20px;display:flex}.onboarding-panel h1{margin:0;font-size:18px;font-weight:400;line-height:1.25}.onboarding-note{color:var(--muted);margin:-6px 0 0;font-size:11px}.onboarding-goals{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.onboarding-goals button{border:1px solid var(--line);width:100%;font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border-radius:2px;align-items:flex-start;gap:10px;padding:10px;transition:border-color .15s,background .15s;display:flex}.onboarding-goals button.is-active{border-color:var(--ink);background:color-mix(in srgb, var(--ink) 4%, transparent)}.onboarding-goals b{font-size:12px;font-weight:400;display:block}.onboarding-goals small{color:var(--muted);font-size:10px;display:block}.onboarding-check{border:1px solid var(--soft);border-radius:50%;flex:none;width:12px;height:12px;margin-top:2px;transition:background .15s,border-color .15s}.is-active>.onboarding-check{background:var(--ink);border-color:var(--ink)}.onboarding-tips{flex-direction:column;gap:8px;margin:0;padding-left:18px;font-size:12px;display:flex}.onboarding-tips b{text-transform:uppercase;letter-spacing:.02em;font-size:10px;font-weight:400}.onboarding-panel .link-button{color:var(--muted);align-self:center;font-size:10px}.dash-sections{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:22px;display:flex}.dash-sections-title{text-align:center;text-transform:uppercase;color:var(--muted);flex-basis:100%;font-size:10px}.tab-add{padding-left:2px;padding-right:2px;font-size:16px;line-height:1}.training-items li{grid-template-columns:1fr auto}.custom .food-facts{grid-template-columns:minmax(64px,max-content) 1fr;column-gap:14px}.new-section-input{border:none;border-bottom:1px solid var(--soft);resize:none;width:100%;font-family:var(--font-serif), Georgia, serif;color:var(--ink);background:0 0;outline:none;margin-bottom:14px;padding:10px 0;font-size:17px}.new-section-hint{color:var(--muted);font-size:12px}.new-section-error{padding:0 0 8px}.new-section-fields{flex-direction:column;max-height:52vh;list-style:none;display:flex;overflow-y:auto}.new-section-fields li{border-bottom:1px solid color-mix(in srgb, var(--ink) 8%, transparent);grid-template-columns:1fr auto;grid-template-areas:"label remove""type remove";column-gap:12px;padding:8px 0;display:grid}.new-section-fields input{min-width:0;font-family:var(--font-serif), Georgia, serif;color:var(--ink);background:0 0;border:none;outline:none;grid-area:label;padding:2px 0;font-size:17px}.new-section-fields span{color:var(--muted);grid-area:type;font-size:12px}.new-section-remove{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:none;grid-area:remove;align-self:center;font-size:18px}.new-section-type{color:var(--muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;grid-area:type;justify-self:start;padding:0;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.info-sum:has(.info-cover){grid-template-columns:auto 1fr auto}.info-cover{background:color-mix(in srgb, var(--ink) 6%, transparent);cursor:pointer;border:none;border-radius:2px;width:56px;height:80px;padding:0;overflow:hidden;box-shadow:0 1px 3px #0000001f}.info-cover img{object-fit:cover;width:100%;height:100%;display:block}.info-cover.is-empty{box-shadow:none;border:1px dashed var(--soft);color:var(--muted);font-size:18px}.music-sum{grid-template-columns:auto 1fr;align-items:center;gap:16px;display:grid}.block-link{color:inherit;border-bottom:1px solid var(--soft);text-decoration:none}.block-link:hover{border-bottom-color:var(--ink)}.music-link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.02em;align-items:baseline;gap:12px;margin-top:4px;font-size:10px;display:flex}.music-link a{color:var(--ink);border-bottom:1px solid var(--soft);text-decoration:none}.music-link a:hover{border-bottom-color:var(--ink)}.info-title .music-link .link-button{color:var(--muted)}.music-link-form{flex-direction:column;gap:8px;margin-top:4px;display:flex}.music-link-form input{border:none;border-bottom:1px solid var(--soft);min-width:0;font-family:var(--font-text);color:var(--ink);background:0 0;outline:none;padding:4px 0;font-size:16px}.music-link-form input:focus{border-bottom-color:var(--ink)}.music-link-form>span{font-family:var(--font-mono);gap:16px;font-size:10px;display:flex}.vinyl{--size:88px;width:calc(var(--size) * 1.55);height:var(--size);cursor:pointer;background:0 0;border:none;padding:0;position:relative}.vinyl-sleeve{width:var(--size);background:color-mix(in srgb, var(--ink) 6%, transparent);color:var(--muted);border-radius:2px;place-items:center;font-size:18px;display:grid;position:absolute;inset:0 auto 0 0;overflow:hidden;box-shadow:0 1px 2px #0000002e,2px 0 6px #0000001f}.vinyl-sleeve img{object-fit:cover;width:100%;height:100%;display:block}.vinyl-disc{top:3px;left:calc(var(--size) * .5);width:calc(var(--size) - 6px);height:calc(var(--size) - 6px);transition:left .4s var(--ease-out);background:repeating-radial-gradient(circle,#141414 0 1px,#232323 1px 2px);border-radius:50%;position:absolute;box-shadow:0 1px 4px #0000004d}.vinyl-shine{top:3px;left:calc(var(--size) * .5);width:calc(var(--size) - 6px);height:calc(var(--size) - 6px);pointer-events:none;background:conic-gradient(from 30deg, transparent 0 10%, #ffffff29 15%, transparent 21% 60%, #ffffff1c 65%, transparent 71%);transition:left .4s var(--ease-out);border-radius:50%;position:absolute;-webkit-mask:radial-gradient(circle,#0000 0 20%,#000 21%);mask:radial-gradient(circle,#0000 0 20%,#000 21%)}.vinyl:hover .vinyl-shine{left:calc(var(--size) * .56)}.vinyl-disc:after{content:"";background:var(--card);border-radius:50%;position:absolute;inset:calc(50% - 2px)}.vinyl-label{object-fit:cover;border-radius:50%;width:38%;height:38%;position:absolute;inset:31%}.vinyl-disc.is-spinning{animation:3.6s linear infinite vinyl-spin}.vinyl:hover .vinyl-disc{left:calc(var(--size) * .56)}.vinyl.is-empty .vinyl-disc{opacity:.35;animation:none}@keyframes vinyl-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.vinyl-disc.is-spinning{animation:none}}.cover-grid{grid-template-columns:repeat(3,1fr);align-content:start;gap:10px;max-height:52vh;display:grid;overflow-y:auto}.cover-option{background:color-mix(in srgb, var(--ink) 6%, transparent);cursor:pointer;border:none;border-radius:2px;padding:0;transition:opacity .2s,transform .2s;overflow:hidden}.cover-option img{aspect-ratio:2/3;object-fit:cover;width:100%;display:block}.cover-grid.is-square img{aspect-ratio:1}.cover-option:hover{transform:translateY(-2px)}.cover-option.is-busy,.cover-upload.is-busy{opacity:.5}.cover-option:disabled:not(.is-busy){opacity:.35}.cover-upload{cursor:pointer;position:relative;overflow:hidden}.cover-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}
