@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-cyrillic-ext-wght-normal-hICkpzq7.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-cyrillic-wght-normal-mKek_fSS.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-latin-ext-wght-normal-B-I5lbAQ.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-latin-wght-normal-BS5oQT7X.woff2)format("woff2-variations");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:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-vietnamese-wght-normal-rat7GD3o.woff2)format("woff2-variations");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:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-ext-wght-normal-D6H-S6MW.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2)format("woff2-variations");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}:root{--bg-app:#fff;--bg-side:#f4f5f8;--bg-sunken:#eceef3;--bg-raised:#fff;--ink:#1a2233;--ink-2:#485267;--muted:#7a8396;--line:#e3e6ec;--line-strong:#cdd2dc;--pen:#2b3fbf;--pen-hover:#2233a3;--pen-soft:#e7eafb;--pen-ink:#fff;--marker:#f2e94e;--marker-soft:#faf5b5;--marker-swipe:var(--marker);--marker-ink:#1a2233;--red:#c8243a;--red-soft:#fce8eb;--amber:#b26a00;--p3:#d7263d;--p2:#e08a00;--p1:#3a7bd5;--p0:#9aa3b4;--radius-s:6px;--radius-m:10px;--radius-l:16px;--shadow-pop:0 12px 32px #141c322e, 0 2px 6px #141c3214;--shadow-fab:0 6px 16px #2b3fbf59;--font-ui:"Golos Text Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Unbounded Variable", var(--font-ui);--sidebar-w:248px;--bottom-nav-h:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-app:#1a1e26;--bg-side:#15181e;--bg-sunken:#252a35;--bg-raised:#222731;--ink:#e6e9ef;--ink-2:#b3bbca;--muted:#868fa1;--line:#2c323d;--line-strong:#3b4250;--pen:#8d9bff;--pen-hover:#a6b1ff;--pen-soft:#262d52;--pen-ink:#0f1430;--marker:#e4da3c;--marker-soft:#45421c;--marker-swipe:#8d8521;--marker-ink:#1a1d10;--red:#ff7385;--red-soft:#3c2128;--amber:#f0ad45;--p3:#ff6b7d;--p2:#f2a33a;--p1:#6fa4f0;--p0:#6a7385;--shadow-pop:0 12px 32px #00000080, 0 2px 6px #0000004d;--shadow-fab:0 6px 16px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg-app:#1a1e26;--bg-side:#15181e;--bg-sunken:#252a35;--bg-raised:#222731;--ink:#e6e9ef;--ink-2:#b3bbca;--muted:#868fa1;--line:#2c323d;--line-strong:#3b4250;--pen:#8d9bff;--pen-hover:#a6b1ff;--pen-soft:#262d52;--pen-ink:#0f1430;--marker:#e4da3c;--marker-soft:#45421c;--marker-swipe:#8d8521;--marker-ink:#1a1d10;--red:#ff7385;--red-soft:#3c2128;--amber:#f0ad45;--p3:#ff6b7d;--p2:#f2a33a;--p1:#6fa4f0;--p0:#6a7385;--shadow-pop:0 12px 32px #00000080, 0 2px 6px #0000004d;--shadow-fab:0 6px 16px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.pri-3{--pc:var(--p3)}.pri-2{--pc:var(--p2)}.pri-1{--pc:var(--p1)}.pri-0{--pc:var(--p0)}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow:hidden}body{background:var(--bg-app);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;font-size:15px;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--pen)}h1,h2,h3{margin:0;font-weight:600}:focus-visible{outline:2px solid var(--pen);outline-offset:2px}::selection{background:var(--marker);color:var(--marker-ink)}@media (width<=760px){input,select,textarea{font-size:16px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.btn{white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:14.5px;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn.small{height:32px;padding:0 11px;font-size:13.5px}.btn.block{width:100%}.btn.primary{background:var(--pen);color:var(--pen-ink)}.btn.primary:hover:not(:disabled){background:var(--pen-hover)}.btn.primary:disabled{opacity:.45}.btn.outline{border-color:var(--line-strong);background:var(--bg-app)}.btn.outline:hover,.btn.ghost:hover{background:var(--bg-sunken)}.btn.danger-ghost{color:var(--red);padding-inline:10px}.btn.danger-ghost:hover{background:var(--red-soft)}.btn.danger-ghost.is-armed{background:var(--red);color:#fff}.icon-btn{width:34px;height:34px;color:var(--ink-2);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;text-decoration:none;display:inline-grid}.icon-btn:hover{background:var(--bg-sunken);color:var(--ink)}.icon-btn[aria-pressed=true]{color:var(--pen)}.icon-btn.danger:hover{background:var(--red-soft);color:var(--red)}.link-btn{color:var(--pen);font-size:inherit;background:0 0;border:0;padding:0;font-weight:500}.link-btn:hover{text-decoration:underline}.spacer{flex:1}.segmented{background:var(--bg-sunken);border-radius:10px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.segment{height:30px;color:var(--ink-2);background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 12px;font-size:13.5px;font-weight:500;display:inline-flex}.segment:hover{color:var(--ink)}.segment[aria-checked=true]{background:var(--bg-raised);color:var(--ink);box-shadow:0 1px 2px #141c321f, 0 0 0 1px var(--line)}.segmented.small .segment{height:26px;padding:0 9px;font-size:12.5px}.segment .pri-flag{color:var(--pc)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--bg-app);height:28px;color:var(--ink-2);border-radius:999px;padding:0 11px;font-size:13px}.chip:hover{border-color:var(--ink-2)}.chip[aria-pressed=true]{border-color:var(--pen);background:var(--pen-soft);color:var(--pen);font-weight:500}.switch{color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:14px;display:inline-flex}.switch input{appearance:none;background:var(--line-strong);cursor:pointer;border-radius:999px;flex:none;width:34px;height:20px;margin:0;transition:background-color .15s;position:relative}.switch input:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch input:checked{background:var(--pen)}.switch input:checked:before{transform:translate(14px)}input[type=date],input[type=time],.select{border:1px solid var(--line-strong);background:var(--bg-app);font-variant-numeric:tabular-nums;border-radius:8px;height:36px;padding:0 10px;font-size:14.5px}input[type=date]:focus,input[type=time]:focus,.select:focus{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft);outline:none}.check{--pc:var(--p0);border:1.75px solid var(--pc);background:color-mix(in srgb, var(--pc) 9%, transparent);border-radius:50%;flex:none;place-items:center;width:20px;height:20px;padding:0;transition:background-color .15s;display:grid;position:relative}.check:before{content:"";position:absolute;inset:-10px}.check svg{fill:none;width:13px;height:13px;stroke:var(--pc);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16;stroke-dashoffset:16px;transition:stroke-dashoffset .2s ease-out}.check:hover svg{stroke-dashoffset:0;opacity:.6}.check[aria-checked=true]{background:var(--pc)}.check[aria-checked=true] svg{stroke:#fff;stroke-dashoffset:0;opacity:1}.check.pri-3{--pc:var(--p3)}.check.pri-2{--pc:var(--p2)}.check.pri-1{--pc:var(--p1)}.empty{color:var(--muted);max-width:52ch;margin:8px 0 24px;padding:20px 0;font-size:14.5px}.field-hint{color:var(--muted);margin:6px 0 0;font-size:13px}kbd{border:1px solid var(--line-strong);background:var(--bg-app);text-align:center;border-bottom-width:2px;border-radius:5px;min-width:22px;padding:1px 6px;font-family:inherit;font-size:12px;display:inline-block}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);height:var(--app-h,100dvh);display:grid}.main{overscroll-behavior:contain;min-width:0;min-height:0;position:relative;overflow-y:auto}.route-calendar .main,.route-notes .main{overflow:hidden}.view{max-width:720px;margin:0 auto;padding:36px 32px 96px}.view-head{margin-bottom:20px}.view-head h1{font-family:var(--font-display);letter-spacing:-.015em;font-size:26px;font-weight:600;line-height:1.2}.view-sub{color:var(--muted);margin:6px 0 0;font-size:14.5px}.view-head.with-action{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sidebar{border-right:1px solid var(--line);background:var(--bg-side);flex-direction:column;gap:14px;min-height:0;padding:18px 12px 12px;display:flex;overflow-y:auto}.brand{color:var(--ink);font-family:var(--font-display);align-items:center;gap:10px;padding:0 6px;font-size:18px;font-weight:600;text-decoration:none;display:flex}.brand img{border-radius:7px}.nav{flex-direction:column;gap:1px;display:flex}.nav-link{height:36px;color:var(--ink-2);border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:14.5px;text-decoration:none;display:flex}.nav-link:hover{background:var(--bg-sunken);color:var(--ink)}.nav-link[aria-current=page]{background:var(--pen-soft);color:var(--pen);font-weight:600}.nav-label{flex:1}.nav-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500}.nav-link[aria-current=page] .nav-count{color:var(--pen)}.nav-sep{background:var(--line);height:1px;margin:8px 10px}.sidebar-foot{margin-top:auto}.bottom-nav,.task-tabs,.fab{display:none}dialog.sheet{border-radius:var(--radius-l);background:var(--bg-raised);width:min(560px,100vw - 32px);max-height:calc(100dvh - 64px);color:var(--ink);box-shadow:var(--shadow-pop);overscroll-behavior:contain;border:0;padding:0;overflow-y:auto}dialog.sheet[open]{animation:.18s ease-out sheet-in}dialog.sheet::backdrop{background:#0c101e61}@keyframes sheet-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}.toast-region{z-index:50;width:max-content;max-width:calc(100vw - 32px);position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--ink);color:var(--bg-app);box-shadow:var(--shadow-pop);border-radius:12px;align-items:center;gap:4px;padding:6px 6px 6px 16px;font-size:14px;animation:.2s ease-out toast-in;display:flex}.toast-text{padding:6px 8px 6px 0}.toast-action{height:32px;color:var(--marker);background:0 0;border:0;border-radius:7px;padding:0 10px;font-weight:600}.toast-action:hover{background:#ffffff1a}.toast-close{width:32px;height:32px;color:inherit;opacity:.6;background:0 0;border:0;border-radius:7px;font-size:20px;line-height:1}.toast-close:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.settings-block{border-top:1px solid var(--line);padding:22px 0}.settings-block h2{margin-bottom:10px;font-size:16px}.settings-block p{max-width:62ch;color:var(--ink-2);margin:0 0 12px}.btn-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.syntax{grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;margin:0 0 8px;font-size:14px;display:grid}.syntax dt{color:var(--ink);font-weight:500}.syntax dd{color:var(--muted);text-align:right;margin:0}.syntax.keys{grid-template-columns:auto minmax(0,1fr)}.syntax.keys dd{text-align:left}@media (width<=760px){.app{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.view{padding:20px 16px 120px}.view-head h1{font-size:22px}.bottom-nav{height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--bg-side);grid-template-columns:repeat(5,1fr);display:grid}.bottom-link{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.bottom-link[aria-current=page]{color:var(--pen)}.task-tabs{z-index:5;padding:10px 16px;padding-top:calc(10px + env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--bg-app);scrollbar-width:none;gap:6px;display:flex;position:sticky;top:0;overflow-x:auto}.task-tab{background:var(--bg-sunken);height:32px;color:var(--ink-2);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:13.5px;font-weight:500;text-decoration:none;display:inline-flex}.task-tab[aria-current=page]{background:var(--pen);color:var(--pen-ink)}.task-tab[aria-current=page] .nav-count{color:inherit;opacity:.8}.fab{right:16px;bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom) + 16px);z-index:10;background:var(--pen);width:56px;height:56px;color:var(--pen-ink);box-shadow:var(--shadow-fab);border:0;border-radius:18px;place-items:center;display:grid;position:fixed}dialog.sheet{border-radius:var(--radius-l) var(--radius-l) 0 0;width:100%;max-width:100%;max-height:94dvh;padding-bottom:env(safe-area-inset-bottom);margin:auto 0 0}dialog.sheet[open]{animation:.22s ease-out sheet-up}.toast-region{bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom) + 12px)}.syntax{grid-template-columns:minmax(0,1fr);gap:2px}.syntax dd{text-align:left;margin-bottom:8px}}@keyframes sheet-up{0%{transform:translateY(100%)}}.auth{height:var(--app-h,100dvh);overscroll-behavior:contain;grid-template-columns:minmax(0,1.1fr) minmax(320px,1fr);display:grid;overflow-y:auto}.auth-intro{border-right:1px solid var(--line);background:var(--bg-side);flex-direction:column;justify-content:space-between;gap:40px;padding:40px 56px;display:flex}.auth-intro .brand{padding:0;font-size:20px}.auth-date{align-items:flex-end;gap:28px;display:flex}.auth-date .today-num{font-size:clamp(88px,10vw,136px)}.auth-date .today-rest{padding-bottom:4px;font-size:22px}.auth-lead{max-width:34ch;color:var(--ink-2);margin:0;font-size:17px}.auth-panel{place-items:center;padding:40px 24px;display:grid}.auth-form{flex-direction:column;gap:16px;width:min(360px,100%);display:flex}.auth-form h1{font-family:var(--font-display);letter-spacing:-.015em;margin-bottom:4px;font-size:26px}.auth-form .form-field{align-items:stretch}.auth-form .text-input,.auth-form .btn{height:42px}.field-hint code{background:var(--bg-sunken);border-radius:4px;padding:1px 5px;font-size:12px}@media (width<=760px){.auth{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.auth-intro{padding:calc(24px + env(safe-area-inset-top)) 20px 28px;border-right:0;border-bottom:1px solid var(--line);gap:24px}.auth-date .today-num{font-size:88px}.auth-date .today-rest{font-size:18px}.auth-lead{font-size:15px}.auth-panel{align-items:start;padding:28px 20px}}.today-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 20px;margin-bottom:24px;display:flex}.today-date{font-weight:inherit;align-items:flex-end;gap:20px;display:flex}.today-num{isolation:isolate;font-family:var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:76px;font-weight:700;line-height:.82;position:relative}.today-num:before{content:"";z-index:-1;background:var(--marker-swipe);transform-origin:0;border-radius:3px 10px 4px 12px;height:46%;animation:.5s ease-out .1s backwards marker-swipe;position:absolute;bottom:2%;left:-6%;right:-4%;transform:rotate(-2.5deg)skew(-10deg)}@keyframes marker-swipe{0%{transform:rotate(-2.5deg)skew(-10deg)scaleX(0)}}.today-rest{flex-direction:column;padding-bottom:2px;font-size:17px;line-height:1.25;display:flex;position:relative}.today-rest span:first-child{font-weight:600}.today-rest span:last-child{color:var(--muted)}.today-summary{color:var(--muted);margin:0 0 2px;font-size:14px}.quick-add{border:1px solid var(--line-strong);background:var(--bg-app);border-radius:12px;margin-bottom:28px;padding:5px 5px 5px 12px;transition:border-color .15s,box-shadow .15s;position:relative}.quick-add.is-focused{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft)}.quick-row{align-items:center;gap:8px;display:flex}.quick-plus{color:var(--pen);flex:none}.quick-row input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:36px;font-size:15.5px}.quick-row input::placeholder{color:var(--muted)}.quick-tokens{flex-wrap:wrap;gap:6px;padding:4px 0 5px 28px;display:flex}.token{background:var(--marker-soft);height:24px;color:var(--ink);border-radius:6px;align-items:center;gap:2px;padding:0 2px 0 8px;font-size:12.5px;font-weight:500;display:inline-flex}.token-deadline{background:var(--red-soft);color:var(--red)}.token button{width:20px;height:20px;color:inherit;opacity:.6;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.token button:hover{opacity:1;background:#00000014}.quick-hint{z-index:3;border:1px solid var(--line);background:var(--bg-raised);box-shadow:var(--shadow-pop);color:var(--muted);pointer-events:none;border-radius:10px;margin:0;padding:8px 12px;font-size:12.5px;position:absolute;top:calc(100% + 6px);left:0;right:0}.group{margin-bottom:28px}.group-head{border-bottom:1px solid var(--line);align-items:baseline;gap:8px;padding-bottom:8px;display:flex}.group-head h2{font-size:15px}.group.tone-red .group-head h2{color:var(--red)}.count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.group-action{margin-left:auto;font-size:13.5px}.task-list{margin:0;padding:0;list-style:none}.task{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:11px 2px;display:flex}.task .check{margin-top:1px}.task-body{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;gap:3px;min-width:0;padding:0;display:flex}.task-title{overflow-wrap:anywhere;font-size:15px;line-height:1.35}@media (hover:hover){.task-body:hover .task-title{color:var(--pen)}}.task-meta{color:var(--muted);flex-wrap:wrap;gap:2px 14px;font-size:12.5px;display:flex}.meta{font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.meta.tone-red{color:var(--red);font-weight:500}.meta.tone-amber{color:var(--amber);font-weight:500}.task.is-done .task-title{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 60%, transparent)}.done-fold summary{color:var(--muted);cursor:pointer;align-items:center;gap:6px;margin-bottom:12px;font-size:14px;font-weight:500;list-style:none;display:inline-flex}.done-fold summary::-webkit-details-marker{display:none}.done-fold summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;transition:transform .15s;transform:rotate(-45deg)}.done-fold[open] summary:before{transform:rotate(45deg)}.done-fold .group-head{display:none}.day{margin-bottom:22px}.day.is-empty{margin-bottom:4px}.day-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:36px;display:flex}.day-head h2{font-variant-numeric:tabular-nums;font-size:15px}.day.is-empty .day-head h2{color:var(--muted);font-weight:500}.day-rel{color:var(--muted);font-size:13.5px}.day.is-weekend .day-rel{color:var(--red)}.day-add{opacity:0;width:30px;height:30px;margin-left:auto}.day:hover .day-add,.day-add:focus-visible{opacity:1}@media (hover:none){.day-add{opacity:1}}.editor-form{padding:18px 20px 16px}.editor-head{align-items:center;gap:12px;display:flex}.editor-title{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:4px 0;font-size:19px;font-weight:600}.editor-title::placeholder,.editor-desc::placeholder{color:var(--muted);font-weight:400}.editor-desc{width:100%;min-height:52px;color:var(--ink-2);resize:vertical;background:0 0;border:0;outline:0;margin:6px 0 4px;padding:0;display:block}.field{border-top:1px solid var(--line);padding:14px 0}.field-label{color:var(--ink-2);align-items:center;gap:6px;margin-bottom:10px;font-size:13.5px;font-weight:600;display:flex}.field-row{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.dash{color:var(--muted)}.editor-foot{border-top:1px solid var(--line);align-items:center;gap:8px;padding-top:14px;display:flex}@media (width<=760px){.today-num{font-size:64px}.quick-add .btn:disabled{display:none}.editor .segmented{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.editor .segment{justify-content:center;gap:4px;padding:0 4px}.editor-foot{background:var(--bg-raised);margin:0 -20px -16px;padding:12px 20px;position:sticky;bottom:0}.editor-foot .btn.ghost{display:none}}.cal-page{grid-template-columns:minmax(0,1fr);height:100%;display:grid}.cal-page.has-panel{grid-template-columns:256px minmax(0,1fr)}.cal-panel{border-right:1px solid var(--line);flex-direction:column;gap:20px;min-height:0;padding:16px 14px;display:flex;overflow-y:auto}.cal-main{flex-direction:column;min-width:0;min-height:0;display:flex}.cal-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:12px 16px;display:flex}.cal-nav{display:flex}.cal-today-icon span{font-variant-numeric:tabular-nums;border:1.75px solid;border-radius:6px;place-items:center;width:22px;height:22px;font-size:11.5px;font-weight:700;display:grid}.cal-title{min-width:0;font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;margin-left:4px;font-size:19px;font-weight:600;overflow:hidden}.cal-body{flex:1;min-height:0}.cal-undated h2{font-size:14px}.cal-undated .field-hint{margin:2px 0 10px}.undated-list{flex-direction:column;gap:6px;display:flex}.undated-item{border:1px solid var(--line);background:var(--bg-app);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:flex-start;gap:9px;padding:8px 10px;font-size:13.5px;line-height:1.3;display:flex}.undated-item:hover{border-color:var(--line-strong);box-shadow:0 1px 3px #141c3214}.undated-item .check{width:16px;height:16px;margin-top:1px}.undated-item .check svg{width:10px;height:10px}.cal-done-toggle{margin-top:auto;font-size:13px}.mini-head{align-items:center;gap:2px;margin-bottom:4px;display:flex}.mini-head .icon-btn{width:28px;height:28px}.mini-title{flex:1;padding-left:4px;font-size:14px;font-weight:600}.mini-grid{text-align:center;grid-template-columns:repeat(7,1fr);row-gap:2px;display:grid}.mini-wd{color:var(--muted);padding:4px 0;font-size:11px}.mini-day{aspect-ratio:1;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:50%;padding:0;font-size:12.5px;position:relative}.mini-day:hover{background:var(--bg-sunken)}.mini-day.is-out{color:var(--muted)}.mini-day.is-in-range{background:var(--pen-soft);border-radius:0}.mini-day.is-today{background:var(--marker);color:var(--marker-ink);border-radius:46% 54% 44% 56%/56% 44%;font-weight:700}.mini-day.is-busy:after{content:"";background:var(--pen);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.mini-day.is-today.is-busy:after{background:var(--marker-ink)}.fc{--fc-border-color:var(--line);--fc-page-bg-color:var(--bg-app);--fc-neutral-bg-color:var(--bg-side);--fc-neutral-text-color:var(--muted);--fc-today-bg-color:transparent;--fc-now-indicator-color:var(--red);--fc-highlight-color:color-mix(in srgb, var(--marker) 50%, transparent);--fc-event-bg-color:var(--pen);--fc-event-border-color:var(--pen);--fc-event-text-color:var(--pen-ink);--fc-list-event-hover-bg-color:var(--bg-sunken);--fc-more-link-bg-color:transparent;--fc-more-link-text-color:var(--ink-2);font-size:13px}.fc .fc-scrollgrid{border-top:0;border-left:0}.fc .fc-scrollgrid-section>td,.fc .fc-scrollgrid-section>th{border-right:0}.fc a{color:inherit;text-decoration:none}.fc .fc-col-header-cell{border-left-color:#0000;border-right-color:#0000}.fc .fc-col-header-cell-cushion{padding:6px 0;display:block}.dh{flex-direction:column;align-items:center;gap:1px;display:flex}.dh-wd{color:var(--muted);font-size:11.5px;font-weight:500}.dh-num{font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:38px;height:38px;font-size:21px;font-weight:500;display:grid}.fc .fc-col-header-cell-cushion:hover .dh-num{background:var(--bg-sunken)}.dh-num.is-today,.fc .fc-col-header-cell-cushion:hover .dh-num.is-today{background:var(--marker);color:var(--marker-ink);border-radius:46% 54% 44% 56%/56% 44%;font-weight:700}.fc .fc-timegrid-slot{height:24px}.fc .fc-timegrid-slot-minor{border-top-style:none}.fc .fc-timegrid-slot-label-cushion,.fc .fc-timegrid-axis-cushion{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.fc .fc-timegrid-slot-label{vertical-align:top;border-top-color:#0000}.fc .fc-timegrid-slot-label-cushion{padding-right:8px;position:relative;top:-8px}.fc .fc-timegrid-axis-cushion{max-width:none;padding:4px 6px;font-size:10.5px}.fc .fc-timegrid-now-indicator-line{border-width:2px 0 0}.fc .fc-timegrid-now-indicator-line:before{content:"";background:var(--fc-now-indicator-color);border-radius:50%;width:12px;height:12px;position:absolute;top:-7px;left:-6px}.fc .fc-timegrid-now-indicator-arrow{display:none}.fc .fc-daygrid-day-top{flex-direction:row;justify-content:center}.fc .fc-daygrid-day-number{min-width:26px;color:var(--ink-2);text-align:center;font-variant-numeric:tabular-nums;border-radius:50%;margin-top:4px;padding:2px 6px;font-size:12.5px;font-weight:500}.fc .fc-daygrid-day-number:hover{background:var(--bg-sunken)}.fc .fc-day-today .fc-daygrid-day-number{background:var(--marker);color:var(--marker-ink);border-radius:46% 54% 44% 56%/56% 44%;font-weight:700}.fc .fc-day-other .fc-daygrid-day-top{opacity:.45}.fc-direction-ltr .fc-daygrid-more-link{margin-left:4px;font-size:12px;font-weight:500}.fc .fc-event.ev{--pc:var(--p0);background:color-mix(in srgb, var(--pc) 17%, var(--bg-app));box-shadow:inset 3px 0 0 var(--pc);color:var(--ink);border:0;border-radius:6px}.fc .fc-event.ev-p3{--pc:var(--p3)}.fc .fc-event.ev-p2{--pc:var(--p2)}.fc .fc-event.ev-p1{--pc:var(--p1)}.fc .fc-timegrid-event.ev{box-shadow:inset 3px 0 0 var(--pc), 0 0 0 1px var(--bg-app)}.fc .fc-event.ev .fc-event-main{color:var(--ink)}.fc .fc-event.ev:hover{background:color-mix(in srgb, var(--pc) 26%, var(--bg-app))}.fc .fc-event.ev-deadline{background:color-mix(in srgb, var(--red) 7%, var(--bg-app));box-shadow:inset 3px 0 0 var(--red), inset 0 0 0 1px color-mix(in srgb, var(--red) 30%, transparent)}.fc .fc-event.is-done{opacity:.5}.fc .fc-event.is-done .ev-title{text-decoration:line-through}.ev-inner{align-items:flex-start;gap:5px;min-width:0;height:100%;padding:2px 4px 2px 7px;display:flex;overflow:hidden}.fc-daygrid-event .ev-inner{align-items:center;padding-block:1px}.ev-check{border:1.5px solid var(--pc,var(--p0));background:var(--bg-app);cursor:pointer;border-radius:50%;flex:none;width:12px;height:12px;margin-top:2px}.fc-daygrid-event .ev-check{margin-top:0}.ev-check:hover{background:color-mix(in srgb, var(--pc,var(--p0)) 35%, var(--bg-app))}.ev-check[aria-checked=true]{background:var(--pc,var(--p0))}.ev-text{flex-direction:column;min-width:0;display:flex}.ev-title{text-overflow:ellipsis;font-weight:500;line-height:1.25;overflow:hidden}.fc-daygrid-event .ev-title,.fc-timegrid-event-short .ev-title{white-space:nowrap}.ev-flag{color:var(--red);vertical-align:-1px;margin-right:3px}.ev-time{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:11px}.fc-timegrid-event-short .ev-text{flex-direction:row;gap:6px}.fc .fc-event-mirror{opacity:.9}.fc .fc-highlight{border-radius:4px}.fc .fc-popover{border:1px solid var(--line);background:var(--bg-raised);box-shadow:var(--shadow-pop);border-radius:12px;overflow:hidden}.fc .fc-popover-header{background:var(--bg-side);padding:8px 10px;font-weight:600}.fc .fc-list{border:0}.fc .fc-list-day-cushion{padding:10px 14px;font-size:13.5px;font-weight:600}.fc .fc-list-day.fc-day-today .fc-list-day-cushion{background:var(--marker-soft)}.fc .fc-list-event td{border-color:var(--line);padding:8px 14px}.fc .fc-list-event.ev{box-shadow:none;background:0 0}.fc .fc-list-event.ev:hover{background:0 0}.fc .fc-list-event-graphic{display:none}.fc .fc-list-day-cushion .fc-list-day-text{font-weight:600}.fc .fc-list-event-time{color:var(--ink-2);font-variant-numeric:tabular-nums}.fc .fc-list-event .ev-inner{padding:0}.fc .fc-list-empty{color:var(--muted);background:0 0}@media (width<=760px){.cal-toolbar{padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top));gap:4px}.cal-title{order:-1;margin:0 4px 0 2px;font-size:17px}.cal-toolbar .select{height:32px;padding:0 6px}.dh-num{width:32px;height:32px;font-size:18px}.fc .fc-timegrid-slot{height:26px}}.notes-page{grid-template-columns:320px minmax(0,1fr);height:100%;display:grid}.notes-list-pane{border-right:1px solid var(--line);flex-direction:column;gap:12px;min-height:0;padding:28px 14px 24px;display:flex;overflow-y:auto}.notes-list-pane .view-head{align-items:center;margin:0 4px 4px}.search{border:1px solid var(--line-strong);height:38px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.search:focus-within{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft)}.search input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.tag-chips .chip{height:26px;font-size:12.5px}.notes-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.note-card{color:inherit;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:10px 12px;text-decoration:none;display:grid}.note-card:hover{background:var(--bg-sunken)}.note-card[aria-current=page]{background:var(--pen-soft)}.note-card-title{white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:600;overflow:hidden}.note-pin{color:var(--pen);vertical-align:-1px;margin-right:5px}.note-card-date{color:var(--muted);font-variant-numeric:tabular-nums;grid-area:1/2;font-size:12px}.note-card-snippet{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.note-pane{min-width:0;min-height:0;overflow-y:auto}.note-placeholder{height:100%;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.note-placeholder p{margin:0}.note-editor{max-width:74ch;margin:0 auto;padding:0 36px 96px}.note-toolbar{z-index:2;background:var(--bg-app);align-items:center;gap:6px;padding:16px 0 12px;display:flex;position:sticky;top:0}.note-back{display:none}.note-updated{color:var(--muted);font-size:12.5px}.note-title{width:100%;font-family:var(--font-display);letter-spacing:-.015em;background:0 0;border:0;outline:0;padding:8px 0 10px;font-size:26px;font-weight:600}.note-title::placeholder{color:var(--muted)}.md-tools{z-index:1;border-bottom:1px solid var(--line);background:var(--bg-app);align-items:center;gap:2px;margin-bottom:14px;padding:4px 0;display:flex;position:sticky;top:62px}.md-hint{color:var(--muted);margin-left:auto;font-size:12px}.note-body{resize:none;background:0 0;border:0;outline:0;width:100%;min-height:50vh;padding:0;font-size:16px;line-height:1.65;display:block;overflow:hidden}.note-body::placeholder{color:var(--muted)}.md{overflow-wrap:anywhere;cursor:text;min-height:40vh;font-size:16px;line-height:1.65}.md>:first-child{margin-top:0}.md h1,.md h2,.md h3{margin:1.4em 0 .5em;line-height:1.3}.md h1{font-size:22px}.md h2{font-size:19px}.md h3{font-size:16.5px}.md p{margin:0 0 .8em}.md ul,.md ol{margin:0 0 .8em;padding-left:1.4em}.md li{margin:.15em 0}.md li:has(>input[type=checkbox]){margin-left:-1.4em;list-style:none}.md li>input[type=checkbox]{vertical-align:-3px;width:17px;height:17px;accent-color:var(--pen);cursor:pointer;margin:0 .5em 0 0}.md li:has(>input[type=checkbox]:checked){color:var(--muted);text-decoration:line-through}.md blockquote{border-left:3px solid var(--marker);color:var(--ink-2);margin:0 0 .8em;padding:2px 0 2px 14px}.md code{background:var(--bg-sunken);border-radius:4px;padding:1px 5px;font-size:.9em}.md pre{background:var(--bg-sunken);border-radius:8px;padding:12px 14px;overflow-x:auto}.md pre code{background:0 0;padding:0}.md hr{border:0;border-top:1px solid var(--line);margin:1.5em 0}.md-empty{color:var(--muted)}@media (width<=760px){.notes-page{grid-template-columns:minmax(0,1fr)}.notes-list-pane{padding:calc(20px + env(safe-area-inset-top)) 12px 120px;border-right:0}.note-editor{padding:0 16px 120px}.note-toolbar{padding-top:calc(8px + env(safe-area-inset-top))}.note-back{margin-left:-8px;display:inline-grid}.note-title{font-size:22px}.md-tools{top:calc(54px + env(safe-area-inset-top))}.md-hint{display:none}}.route-assistant .main{overflow:hidden}.chat-page{flex-direction:column;height:100%;display:flex}.chat-head,.chat-thread,.composer{width:100%;max-width:760px;margin-inline:auto}.chat-head{align-items:center;gap:10px;padding:22px 24px 10px;display:flex}.chat-head h1{font-family:var(--font-display);letter-spacing:-.015em;font-size:22px}.chat-model{white-space:nowrap;text-overflow:ellipsis;background:var(--bg-sunken);min-width:0;color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px;overflow:hidden}.chat-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.chat-thread{flex-direction:column;gap:18px;padding:8px 24px 24px;display:flex}.chat-intro{max-width:58ch;color:var(--ink-2);padding:20px 0}.chat-intro p{margin:0 0 16px;font-size:15.5px}.chat-suggestions{flex-wrap:wrap;gap:8px;display:flex}.chat-suggestions .chip{text-align:left;border-radius:12px;height:auto;padding:8px 13px;font-size:14px}.msg-user{background:var(--pen-soft);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px 16px 4px;align-self:flex-end;max-width:80%;padding:10px 14px}.msg-assistant{flex-direction:column;gap:10px;display:flex}.md.msg-text{cursor:auto;min-height:0;font-size:15.5px}.md.msg-text>:last-child{margin-bottom:0}.msg-actions{border-left:3px solid var(--marker);background:color-mix(in srgb, var(--marker-soft) 55%, transparent);border-radius:0 8px 8px 0;flex-direction:column;gap:5px;margin:0;padding:8px 12px;font-size:13.5px;list-style:none;display:flex}.msg-action{align-items:flex-start;gap:8px;display:flex}.msg-action svg{color:var(--pen);flex:none;margin-top:3px}.msg-action.action-read{color:var(--muted)}.msg-action.action-read svg{color:inherit}.msg-action.action-delete svg{color:var(--red)}.msg-actions.is-undone .msg-action:not(.action-read){color:var(--muted);text-decoration:line-through}.msg-error{background:var(--red-soft);color:var(--red);border-radius:8px;margin:0;padding:8px 12px;font-size:14px}.msg-foot{font-size:13.5px}.msg-foot .link-btn,.msg-undone{align-items:center;gap:6px;display:inline-flex}.msg-undone{color:var(--muted)}.thinking{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.thinking .field-hint{margin:0}.typing{gap:4px;padding:8px 0;display:inline-flex}.typing span{background:var(--muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typing}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{opacity:.25}30%{opacity:1}}.composer{border:1px solid var(--line-strong);background:var(--bg-app);border-radius:18px;align-items:flex-end;gap:8px;width:calc(100% - 48px);margin-bottom:20px;padding:7px 7px 7px 16px;display:flex;box-shadow:0 2px 10px #141c320f}.composer:focus-within{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft)}.composer textarea{resize:none;background:0 0;border:0;outline:0;flex:1;max-height:168px;padding:7px 0;font-size:15.5px;line-height:1.45}.composer textarea::placeholder{color:var(--muted)}.send-btn{background:var(--pen);width:36px;height:36px;color:var(--pen-ink);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.send-btn:disabled{opacity:.35}.sync-badge{color:var(--muted);border-radius:8px;align-items:center;gap:8px;margin-top:4px;padding:6px 10px;font-size:12px;line-height:1.3;text-decoration:none;display:flex}.sync-badge:hover{background:var(--bg-sunken)}.sync-badge svg{flex:none}.sync-badge.tone-warn{color:var(--amber)}.is-spinning svg{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sync-line{align-items:center;gap:8px;display:flex}.text-input{border:1px solid var(--line-strong);background:var(--bg-app);border-radius:8px;min-width:0;height:36px;padding:0 12px}.btn-row .text-input{flex:200px;max-width:320px}.text-input:focus{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft);outline:none}.form-error{font-size:14px;color:var(--red)!important}@media (width<=760px){.chat-head{padding:calc(12px + env(safe-area-inset-top)) 16px 8px}.chat-head h1{flex:none}.chat-new{width:34px;padding:0}.chat-new span{display:none}.chat-thread{padding:8px 16px 16px}.composer{width:calc(100% - 24px);margin-bottom:12px}.msg-user{max-width:88%}}.sheet-form{padding:18px 20px 16px}.sheet-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.sheet-head h2{overflow-wrap:anywhere;flex:1;font-size:18px;line-height:1.3}.sheet-body{flex-direction:column;gap:16px;padding-bottom:16px;display:flex}.sheet-section{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:14px;display:flex}.sheet-section .field-label{margin:0}.sheet-section .quick-add{margin:4px 0 0}.form-field{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;max-width:100%;display:flex}.form-field .select{text-overflow:ellipsis;max-width:100%}.form-label{color:var(--ink-2);font-size:13.5px;font-weight:600}.form-row{flex-wrap:wrap;gap:12px 14px;display:flex}.text-input.wide{width:100%;max-width:none}.text-input.narrow{flex:none;width:96px;min-width:0}.text-area{border:1px solid var(--line-strong);background:var(--bg-app);resize:vertical;border-radius:8px;width:100%;padding:8px 12px}.text-area:focus{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft);outline:none}.weekday-chips .chip{min-width:40px}.meter{background:var(--pen-soft);border-radius:999px;height:8px;display:block;position:relative;overflow:hidden}.meter-fill{border-radius:inherit;background:var(--pen);height:100%;transition:width .3s ease-out;display:block}.is-over .meter{background:var(--red-soft)}.is-over .meter-fill{background:var(--red)}.habit-list{margin:0;padding:0;list-style:none}.habit{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:52px;padding:8px 2px;display:flex}.habit .check{--pc:var(--pen);width:22px;height:22px}.habit-body{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;gap:2px;min-width:0;padding:0;display:flex}.habit-body:disabled{cursor:default}.habit-title{overflow-wrap:anywhere;font-size:15px}@media (hover:hover){.habit-body:not(:disabled):hover .habit-title{color:var(--pen)}}.habit.is-done .habit-title{color:var(--muted)}.habit-list.is-muted .habit-title{color:var(--ink-2)}.habit-counter{border:1px solid var(--line-strong);border-radius:999px;flex:none;align-items:center;display:flex}.habit-counter .icon-btn{border-radius:999px;width:28px;height:28px}.habit-count{text-align:center;font-variant-numeric:tabular-nums;min-width:34px;font-size:13px;font-weight:600}.habit.is-done .habit-counter{border-color:var(--pen);background:var(--pen-soft);color:var(--pen)}.habit-streak{color:var(--amber);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:3px;font-size:13px;font-weight:600;display:inline-flex}.habit-week{flex:none;gap:3px;margin:0;padding:0;list-style:none;display:flex}.hw-day{border:1.5px solid var(--line-strong);width:22px;height:22px;color:var(--muted);border-radius:6px;place-items:center;font-size:10px;display:grid}.hw-day.is-done{border-color:var(--pen);background:var(--pen);color:var(--pen-ink)}.hw-day.is-part{border-color:var(--pen);background:var(--pen-soft);color:var(--pen)}.hw-day.is-off{opacity:.5;border-color:#0000}.hw-day.is-today{box-shadow:0 3px 0 -1px var(--marker)}.heatmap{gap:3px;display:flex}.heatmap-labels,.heatmap-col{grid-template-rows:repeat(7,14px);gap:3px;display:grid}.heatmap-labels{color:var(--muted);margin-right:4px;font-size:10px;line-height:14px}.hm-cell{background:var(--bg-sunken);border-radius:3px;width:14px;height:14px}.hm-full{background:var(--pen)}.hm-part{background:color-mix(in srgb, var(--pen) 40%, var(--bg-raised))}.hm-off{box-shadow:inset 0 0 0 1px var(--line);background:0 0}.hm-cell.is-today{outline:2px solid var(--marker);outline-offset:1px}.goal-list{flex-direction:column;gap:4px;margin:0 0 24px;padding:0;list-style:none;display:flex}.goal-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;flex-direction:column;gap:8px;width:100%;padding:14px 4px 16px;display:flex}@media (hover:hover){.goal-row:hover .goal-title{color:var(--pen)}}.goal-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.goal-title{font-size:16px;font-weight:600}.goal-deadline{color:var(--muted);font-size:13px}.goal-deadline.tone-red{color:var(--red)}.goal-progress{flex-direction:column;gap:5px;display:flex}.goal-progress-label{color:var(--ink-2);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;font-size:13px;display:flex}.goal-progress-label b{color:var(--ink);font-weight:600}.goal-desc{color:var(--ink-2);white-space:pre-wrap;margin:0}.empty .btn{margin-top:4px}.empty p{margin:0 0 12px}.day-nav{align-items:center;gap:2px;margin:6px 0 0 -8px;display:flex}.day-nav-label{color:var(--ink-2);background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:14.5px}.day-nav-label:hover{background:var(--bg-sunken)}.day-nav .icon-btn:disabled{opacity:.3;cursor:default}.day-summary{flex-direction:column;gap:14px;margin-bottom:24px;display:flex}.kcal-hero{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.kcal-num{font-family:var(--font-display);letter-spacing:-.03em;font-size:44px;font-weight:700;line-height:1}.kcal-of{color:var(--ink-2);font-size:15px}.kcal-left{color:var(--muted);margin-left:auto;font-size:14px}.kcal-left.tone-red{color:var(--red)}.macros{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.macro{flex-direction:column;gap:6px;display:flex}.macro-label{color:var(--ink-2);justify-content:space-between;gap:8px;font-size:13px;font-weight:500;display:flex}.macro-label span{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:400}.recognizer{margin-bottom:20px}.recognizer .quick-add{margin-bottom:8px}.meal-select{border-color:var(--line);height:32px;padding:0 6px;font-size:13.5px}.recognized{border-left:3px solid var(--marker);background:color-mix(in srgb, var(--marker-soft) 45%, transparent);border-radius:0 8px 8px 0;padding:4px 14px 12px}.recognized .btn-row{align-items:center;margin:10px 0 0}.meal{margin-bottom:18px}.meal.is-empty{margin-bottom:4px}.meal.is-empty .day-head h2{color:var(--muted);font-weight:500}.food-list{margin:0;padding:0;list-style:none}.food-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;width:100%;padding:9px 2px;display:grid}.food-row.is-static{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.food-row.is-static .food-macros{grid-column:1/3}.food-row.is-static .icon-btn{grid-area:1/3/3}@media (hover:hover){button.food-row:hover .food-name{color:var(--pen)}}.food-name{overflow-wrap:anywhere}.food-grams{color:var(--muted);margin-left:8px;font-size:13px}.food-kcal{font-variant-numeric:tabular-nums;text-align:right;font-weight:500}.food-macros{color:var(--muted);font-variant-numeric:tabular-nums;grid-column:1/-1;font-size:12.5px}.weight-panel{flex-direction:column;gap:14px;margin:32px 0 24px;display:flex}.weight-panel .group-head{margin-bottom:0}.weight-stats{flex-wrap:wrap;align-items:flex-end;gap:12px 32px;display:flex}.weight-now{align-items:baseline;gap:6px;display:flex}.weight-num{font-family:var(--font-display);letter-spacing:-.03em;font-size:40px;font-weight:700;line-height:1}.weight-unit{color:var(--ink-2);font-size:16px}.weight-facts{grid-template-rows:auto auto;grid-auto-flow:column;gap:2px 24px;margin:0;display:grid}.weight-facts dt{color:var(--muted);font-size:12.5px}.weight-facts dd{font-variant-numeric:tabular-nums;margin:0;font-weight:500}.weight-panel .btn-row{margin:0}.weight-chart{position:relative}.chart-range{margin-bottom:8px}.chart-empty{color:var(--muted);margin:0;padding:24px 0;font-size:14px}.weight-chart svg{touch-action:pan-y;display:block;overflow:visible}.weight-chart .grid{stroke:var(--line);stroke-width:1px}.weight-chart .target{stroke:var(--ink-2);stroke-width:1px}.weight-chart .tick{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.weight-chart .end-label{fill:var(--ink);font-size:12px;font-weight:600}.weight-chart .area{fill:var(--pen);opacity:.1}.weight-chart .line{fill:none;stroke:var(--pen);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.weight-chart .dot{fill:var(--pen);stroke:var(--bg-app);stroke-width:2px}.weight-chart .crosshair{stroke:var(--line-strong);stroke-width:1px}.chart-tip{z-index:2;background:var(--ink);color:var(--bg-app);pointer-events:none;white-space:nowrap;border-radius:8px;flex-direction:column;padding:6px 10px;font-size:12.5px;display:flex;position:absolute;transform:translate(-50%,-100%)}.weight-table{border-collapse:collapse;width:100%;font-size:14px}.weight-table td{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:6px 4px}.weight-table td:last-child{text-align:right;width:40px}.profile-panel{border-top:1px solid var(--line);padding-top:16px}.profile-panel summary{cursor:pointer;font-size:15px;font-weight:600}.profile-panel form{flex-direction:column;align-items:flex-start;gap:16px;padding:16px 0 8px;display:flex}.profile-panel .select{max-width:100%}.norm-line{background:var(--bg-sunken);border-radius:8px;margin:0;padding:10px 12px;font-size:14px}.profile-panel .field-hint{margin-top:-8px}.more-list{margin:0 0 16px;padding:0;list-style:none}.more-link{border-bottom:1px solid var(--line);color:var(--ink);align-items:center;gap:14px;padding:14px 4px;text-decoration:none;display:flex}.more-link>svg:first-child{color:var(--pen)}.more-link>span{flex-direction:column;flex:1;display:flex}.more-label{font-size:16px;font-weight:500}.more-hint{color:var(--muted);font-size:13px}@media (width<=760px){.kcal-num{font-size:38px}.macros{gap:10px}.macro-label{flex-direction:column;gap:0}.habit-week{display:none}.recognizer .quick-row{flex-wrap:wrap}.recognizer .quick-row input{flex-basis:calc(100% - 30px)}.recognizer .meal-select{margin-left:26px}.recognizer .quick-row .btn{margin-left:auto}.view-head.with-action{flex-wrap:wrap}}.nutrition-bar{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:-8px 0 22px;display:flex}.nutrition-bar .segment{text-decoration:none}.nutrition-bar .day-nav{margin:0}.day-journal{flex-direction:column;gap:14px;margin:28px 0 8px;display:flex}.day-journal .group-head{margin-bottom:0}.day-note{align-items:stretch}.day-note .text-area{resize:none;min-height:64px;overflow:hidden}.day-review{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.day-review .recognized{align-self:stretch;padding:10px 14px}.day-review .field-hint{margin:0}.diary-week{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;margin-bottom:20px;padding-bottom:18px;display:flex}.diary-list{margin:0 0 16px;padding:0;list-style:none}.diary-day{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;flex-direction:column;gap:7px;width:100%;padding:14px 2px 16px;display:flex}@media (hover:hover){.diary-day:hover .diary-date{color:var(--pen)}}.diary-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 16px;display:flex}.diary-date{font-size:15px;font-weight:600}.diary-kcal{font-variant-numeric:tabular-nums;font-weight:600}.diary-kcal span{color:var(--muted);font-weight:400}.diary-kcal.tone-red{color:var(--red)}.diary-meals{gap:2px;margin:0;font-size:13.5px;display:grid}.diary-meals>div{grid-template-columns:84px minmax(0,1fr);gap:8px;display:grid}.diary-meals dt{color:var(--muted)}.diary-meals dd{overflow-wrap:anywhere;margin:0}.diary-note{border-left:2px solid var(--line-strong);color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere;padding-left:10px;font-size:13.5px}.diary-review{color:var(--ink-2);gap:6px;font-size:13px;display:flex}.diary-review svg{color:var(--pen);flex:none;margin-top:2px}@media (width<=760px){.diary-meals>div{grid-template-columns:72px minmax(0,1fr)}.diary-week .weight-facts{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;gap:2px 20px;width:100%}.diary-week .weight-facts dd{margin-bottom:8px}}.plan-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:18px;display:flex}.plan-head .day-nav,.plan-head .btn-row{margin:0}.plan-head .day-nav-label{cursor:default}.plan-head .day-nav-label:hover{background:0 0}.plan-days{margin:0;padding:0;list-style:none}.plan-day{margin-bottom:18px}.plan-day.is-empty{margin-bottom:4px}.plan-day.is-empty .day-head h2{color:var(--muted);font-weight:500}.plan-item{border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex}.plan-item .food-row{border-bottom:0;flex:1;min-width:0}.plan-item>.btn{flex:none}.plan-item.is-eaten .food-name,.plan-item.is-eaten .food-kcal{color:var(--muted)}.plan-meal{min-width:74px;color:var(--muted);margin-right:8px;font-size:13px;display:inline-block}.plan-eaten{color:var(--pen);flex:none;align-items:center;gap:4px;font-size:12.5px;font-weight:500;display:inline-flex}.plan-for-day{border-left:3px solid var(--marker);background:color-mix(in srgb, var(--marker-soft) 40%, transparent);border-radius:0 8px 8px 0;margin-bottom:24px;padding:4px 14px 2px}.plan-for-day .group-head{border-bottom:0;padding-top:8px}.plan-for-day .plan-item:last-child{border-bottom:0}@media (width<=760px){.plan-day .day-head{flex-wrap:wrap;row-gap:0;padding-bottom:6px}.plan-day .day-head h2{flex:calc(100% - 44px)}.plan-day .day-rel{order:3;width:100%}.plan-meal{min-width:0;margin:0 0 1px;font-size:12px;display:block}.plan-head .btn-row{width:100%}}
