@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-wght-normal-Czsa-EzN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-wght-normal-C-3rgBeH.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--page:#F4EEE6;--card:#FFFDFA;--tile:#F7F1EA;--side:#FAF6F0;--line:#E6DBCD;--line2:#F0E8DE;--track:#F0E7DC;--ink:#2A2320;--ink2:#4F4540;--mute:#6E625A;--label:#776A60;--empty:#9C8D7E;--btnline:#DCCFBF;--accent:#7A3E5C;--accent2:#5E2E47;--onaccent:#FFFFFF;--navon:#EFE5EA;--linkline:#7A3E5C66;--ok:#3E7A55;--warn:#8A3F2B;--warnbar:#A4523A;--sleep:#6894AE;--todaybar:#A86F8C;--work:#CFE0EA;--health:#D3E3CA;--people:#F2D2D3;--home:#F5D6BF;--money:#F1E6C2;--block:#E5DEF0;--personal:#E5DEF0;--shadow:0 1px 2px rgba(42,35,32,.04),0 4px 16px rgba(42,35,32,.04);--serif:"Newsreader Variable",Georgia,serif;--sans:"Figtree Variable",system-ui,sans-serif;color-scheme:light}.dark{--page:#1C1917;--card:#2A2421;--tile:#2E2824;--side:#211D1A;--line:#453C36;--line2:#332C28;--track:#3A332E;--ink:#F3ECE6;--ink2:#D2C7BD;--mute:#B3A79D;--label:#A89B90;--empty:#8A7D73;--btnline:#4A413B;--accent:#C49AB0;--accent2:#EBD3DF;--onaccent:#1C1917;--navon:#3B2D35;--linkline:#D9B3C666;--ok:#7FC195;--warn:#F0A58C;--warnbar:#E08C6E;--sleep:#8FB3C9;--todaybar:#8E6A7D;--work:#34404A;--health:#3A4337;--people:#4A3539;--home:#4A3D33;--money:#4A4334;--block:#403A4A;--personal:#403A4A;--shadow:0 1px 2px rgba(0,0,0,.25),0 4px 16px rgba(0,0,0,.25);color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%}body{font-family:var(--sans);font-size:15px;line-height:1.45;background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--linkline)}a:hover{color:var(--accent2);text-decoration-color:currentColor}.app{display:flex;min-height:100vh}.side{width:236px;flex:none;background:var(--side);border-right:1px solid var(--line);padding:24px 16px 20px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0;height:100vh;overflow-y:auto}.brandrow{display:flex;align-items:center;gap:10px;padding:0 10px;font-family:var(--serif);font-size:20px;font-weight:500}.navgroup{display:flex;flex-direction:column;gap:2px}.navlabel{font-size:12px;font-weight:600;color:var(--label);padding:0 12px 6px}.navitem{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:12px;font-size:15px;font-weight:500;color:var(--ink);text-align:left;width:100%}.navitem svg{color:var(--mute)}.navitem.on{background:var(--navon);font-weight:600}.navitem.on svg{color:var(--accent)}.navitem:hover:not(.on){background:var(--tile)}.backupbox{margin-top:auto;padding:12px;border-radius:12px;background:var(--tile);font-size:13px;line-height:1.5;color:var(--ink2)}.backupbox b{display:flex;align-items:center;gap:7px;color:var(--ink);font-weight:600}.backupbox b svg{color:var(--ok)}.backupbox button{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--linkline);font-size:13px}.main{flex:1;min-width:0;padding:32px 40px 40px;display:flex;flex-direction:column;gap:24px}.tabbar{display:none}@media (max-width:899px){.side{display:none}.main{padding:22px 16px calc(100px + env(safe-area-inset-bottom));gap:14px}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;background:var(--side);border-top:1px solid var(--line);padding:8px 8px calc(10px + env(safe-area-inset-bottom));z-index:20}.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:52px;justify-content:center;font-size:13px;font-weight:500;color:var(--mute)}.tabbar button.on{color:var(--accent);font-weight:700}}.demobar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-radius:12px;background:var(--navon);color:var(--ink);text-decoration:none;font-size:15px}.demobar b{color:var(--accent);white-space:nowrap}.phead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.psub{font-size:15px;color:var(--mute)}.h1{font-family:var(--serif);font-variation-settings:"opsz" 72;font-weight:500;font-size:44px;line-height:1.05;letter-spacing:-1px;margin-top:4px}@media (max-width:899px){.h1{font-size:34px;letter-spacing:-.6px}}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:24px}@media (max-width:899px){.card{padding:18px 20px}}.h2{font-family:var(--serif);font-variation-settings:"opsz" 24;font-weight:500;font-size:20px;line-height:1.2}.meta{font-size:13px;color:var(--mute)}.tile{background:var(--tile);border-radius:12px}.btn{min-height:44px;padding:0 18px;border-radius:12px;background:var(--accent);color:var(--onaccent);font-size:15px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--btnline);padding:0 16px}.dim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c191759;z-index:30}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:85vh;overflow-y:auto;background:var(--card);border-radius:20px 20px 0 0;padding:10px 16px calc(20px + env(safe-area-inset-bottom));z-index:31;box-shadow:0 -10px 40px #00000026}.grab{width:40px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 12px}.morelist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.morelist .navitem{background:var(--tile)}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(110px + env(safe-area-inset-bottom));background:var(--ink);color:var(--page);padding:12px 18px;border-radius:14px;font-size:15px;font-weight:600;max-width:calc(100% - 32px);z-index:40;box-shadow:0 10px 30px #0003}.soon{display:flex;flex-direction:column;gap:6px;max-width:560px}.soon p{color:var(--ink2)}.cardhead{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:32px}.more{display:inline-flex;align-items:center;gap:2px;min-height:32px;font-size:13px;font-weight:600;color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--linkline)}.row{display:flex;align-items:center;gap:16px;min-height:64px;padding:8px 0;border-bottom:1px solid var(--line2)}.row:last-child{border-bottom:0}.rowtext{flex:1;min-width:0}.rowlabel{font-weight:500}.selectwrap{position:relative;display:inline-flex;flex:none}.selectwrap select{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-height:44px;padding:0 40px 0 14px;border-radius:12px;border:1px solid var(--btnline);background:var(--card);font-size:15px;font-weight:500;cursor:pointer}.selectwrap svg{position:absolute;right:12px;top:13px;pointer-events:none;color:var(--ink2)}.seg{display:inline-flex;padding:4px;border-radius:14px;background:var(--track);flex-wrap:wrap}.seg button{min-height:44px;padding:0 14px;border-radius:10px;font-size:15px;font-weight:600;color:var(--ink2)}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #2a23201f}.switch{position:relative;width:52px;height:32px;flex:none;border-radius:16px;background:#9c8d7e}.switch span{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #2a232040;transition:left .15s}.switch.on{background:var(--accent)}.switch.on span{left:23px}.chip{font-size:13px;font-weight:600;padding:2px 10px;border-radius:20px;background:var(--block);color:var(--ink);white-space:nowrap}.btn:disabled{opacity:.5;cursor:default}.btnrow{display:flex;gap:10px;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;align-items:start}.col{display:flex;flex-direction:column;gap:20px}@media (max-width:899px){.col,.grid2{gap:14px}}.lead{color:var(--ink2);margin-top:6px}.stack>*+*{margin-top:14px}.field{min-height:44px;width:100%;padding:0 14px;border-radius:12px;border:1px solid var(--btnline);background:var(--card);font-size:15px}.field:focus{outline:2px solid var(--accent);outline-offset:1px}.codebox{flex:1 1 200px;min-height:56px;border-radius:12px;border:1.5px dashed var(--empty);background:var(--side);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-variant-numeric:lining-nums;font-size:22px;font-weight:500;letter-spacing:1px;padding:0 12px;text-align:center;word-break:break-all}.okline{display:flex;align-items:center;gap:10px;color:var(--ink2)}.okline svg{color:var(--ok);flex:none}.bigtile{display:flex;align-items:center;gap:14px;padding:16px}.bigtile .ico{width:44px;height:44px;flex:none;border-radius:12px;background:var(--health);display:flex;align-items:center;justify-content:center;color:var(--ink)}.bigtile .t{font-family:var(--serif);font-variation-settings:"opsz" 24;font-size:22px;font-weight:500}.swatches{display:flex;gap:8px}.swatch{width:44px;height:44px;border-radius:50%;border:2px solid transparent;display:flex;align-items:center;justify-content:center;background:var(--card)}.swatch[aria-checked=true]{border-color:var(--ink)}.swatch span{width:30px;height:30px;border-radius:50%}.btn.danger{background:var(--card);color:var(--warn);border:1px solid #C98C7C}.dark .btn.danger{border-color:#8a5a4e}@media (min-width:900px){.sheet{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 48px));border-radius:20px;padding:24px}.sheet .grab{display:none}}.banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;background:var(--tile);border:1px solid var(--line)}:root{--water:#A9C6D6;--waterline:#6894AE}.dark{--water:#4E7189;--waterline:#8FB3C9}.focusline{display:flex;align-items:center;gap:8px;margin-top:10px;color:var(--ink2)}.focusline svg{color:var(--accent);flex:none}.todaygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;align-items:stretch}@media (max-width:899px){.todaygrid{gap:14px}.hide-phone{display:none}}.ringcard{display:flex;gap:24px;align-items:center}.ringwrap{position:relative;width:136px;height:136px;flex:none}.ringlabel{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ringlabel .num{font-family:var(--serif);font-variation-settings:"opsz" 72;font-variant-numeric:lining-nums tabular-nums;font-size:36px;font-weight:500;line-height:1}.ringstats{display:flex;flex-direction:column;gap:8px;min-width:0;font-weight:500}.ringstats b{font-weight:700}.checklist{margin-top:8px;display:flex;flex-direction:column}.checkrow{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer;border-bottom:1px solid var(--line2);font-weight:500}.checkrow:last-child{border-bottom:0}.grow{flex:1;min-width:0}.doneText{color:var(--mute);text-decoration:line-through}input.chk{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;flex:none;border-radius:50%;border:1.5px solid var(--empty);background:var(--card);margin:0;display:grid;place-content:center;cursor:pointer}input.chk:checked{background:var(--accent);border-color:var(--accent)}input.chk:checked:after{content:"";width:5px;height:10px;border:solid var(--onaccent);border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}.sched{display:flex;flex-direction:column;gap:10px;margin-top:12px}.schedrow{display:flex;gap:14px;align-items:center}.schedtime{width:64px;flex:none;font-size:13px;color:var(--mute);font-variant-numeric:tabular-nums}.schedbox{flex:1;min-width:0;border-radius:12px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px}.meta2{font-size:13px;color:var(--ink2)}.bell{color:var(--ink2);display:inline-flex;flex:none}.glasses{display:flex;gap:4px;margin-top:12px}.glasses button{flex:1;min-width:0;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center}.moods{display:flex;gap:6px;margin-top:12px}.moods button{flex:1;min-width:0;min-height:76px;border-radius:12px;border:2px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:13px;font-weight:600;color:var(--ink)}.moods button.on{border-color:var(--accent);background:var(--tile)}.card.grow{flex:1}.dinnercard{display:flex;flex-direction:column;gap:2px}.billrow{margin-top:auto;border-top:1px solid var(--line2);padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:8px}.dinnercard .billrow{margin-top:14px}@media (min-width:900px){.dinnercard .billrow{margin-top:auto}}@media (max-width:899px){.phead.todayhead{flex-wrap:nowrap;align-items:flex-start}.addbtn{width:48px;height:48px;padding:0;border-radius:14px;flex:none}.addbtn svg{width:20px;height:20px}}:root{--workline:#A9C3D3;--healthline:#AFC8A2;--peopleline:#D9A9AB;--homeline:#DDB08F;--moneyline:#CDBB86;--blockline:#8A72A8;--hourline:#E8DED2;--halfline:#F2EBE2}.dark{--workline:#55687A;--healthline:#5C6E55;--peopleline:#7A5358;--homeline:#7A6350;--moneyline:#76694C;--blockline:#9C87BA;--hourline:#3A332E;--halfline:#2F2925}.iconbtn{width:48px;height:48px;border-radius:12px;border:1px solid var(--btnline);background:var(--card);display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--ink2);align-items:center}.legend span{display:flex;align-items:center;gap:7px}.legend i{width:14px;height:14px;border-radius:4px;box-sizing:border-box;display:inline-block}.legend .hint{margin-left:auto}.calwrap{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.calcard{flex:999 1 600px;min-width:0;padding:16px 16px 16px 8px}.calaside{flex:1 1 260px;max-width:320px}@media (max-width:899px){.calcard{padding:10px 8px 10px 4px}.calwrap{gap:14px}}.tgrid{overflow-x:auto}.tghead,.tgallday,.tgbody{display:grid;min-width:0}.tgday{display:flex;flex-direction:column;align-items:center;gap:2px;padding-bottom:6px}.tgnum{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-variant-numeric:lining-nums;font-size:17px;font-weight:500}.tgnum.on{background:var(--accent);color:var(--onaccent)}.tgallday{border-top:1px solid var(--hourline);padding:4px 0;align-items:center}.alldaycol{display:flex;flex-direction:column;gap:3px;padding:0 3px;min-width:0}.evchip{font-size:13px;font-weight:600;text-align:left;padding:3px 8px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:26px}.evchip.sel{outline:2px solid var(--accent)}.tgscroll{max-height:min(680px,calc(100vh - 290px));overflow-y:auto;border-top:1px solid var(--hourline)}@media (max-width:899px){.tgscroll{max-height:calc(100vh - 330px)}}.hourlab{height:52px;font-size:13px;color:var(--mute);text-align:right;padding-right:10px;margin-top:-9px;margin-bottom:9px;box-sizing:border-box;white-space:nowrap}.hourlab:first-child{visibility:hidden}.daycol{position:relative;border-left:1px solid var(--hourline);background:repeating-linear-gradient(to bottom,var(--hourline) 0,var(--hourline) 1px,transparent 1px,transparent 26px,var(--halfline) 26px,var(--halfline) 27px,transparent 27px,transparent 52px);cursor:copy}.evblock{position:absolute;border-radius:8px;overflow:hidden;box-sizing:border-box}.evblock.block{border:1.5px dashed var(--blockline)}.evblock.sel{outline:2px solid var(--accent);box-shadow:0 6px 16px #2a232029;z-index:2}.evblock.dragging{opacity:.85;box-shadow:0 8px 20px #2a232038;z-index:3}.evbtn{position:absolute;top:0;right:0;bottom:0;left:0;text-align:left;padding:5px 8px;display:flex;flex-direction:column;cursor:grab;touch-action:manipulation;color:var(--ink)}.evbtn:active{cursor:grabbing}.evtitle{font-size:13px;font-weight:600;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.evtime{font-size:13px;line-height:1.3;color:var(--ink2);display:flex;align-items:center;gap:4px;white-space:nowrap}.evline{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.evresize{position:absolute;left:0;right:0;bottom:0;height:8px;cursor:ns-resize}@media (max-width:899px){.evresize{display:none}}.nowline{position:absolute;left:0;right:0;height:2px;background:var(--accent);pointer-events:none;z-index:4}.nowline span{position:absolute;left:-5px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding-left:8px}.monthwd{text-align:center;font-weight:600;padding-bottom:4px}.mcell{min-height:104px;border-radius:10px;border:1px solid var(--line2);padding:6px;display:flex;flex-direction:column;gap:3px;text-align:left;align-items:stretch;min-width:0}.mcell:hover{background:var(--tile)}.mcell.out{opacity:.55}.mnum{font-family:var(--serif);font-variant-numeric:lining-nums;font-size:16px;font-weight:500;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center}.mnum.on{background:var(--accent);color:var(--onaccent)}.mchip{font-size:12.5px;font-weight:500;padding:1px 6px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mchip.block{border:1px dashed var(--blockline)}@media (max-width:899px){.mcell{min-height:64px;padding:4px}.mchip{font-size:0;height:6px;padding:0}.month{gap:2px;padding-left:4px}}.radios{border:0;display:flex;flex-direction:column}.radios legend{font-weight:600;margin-bottom:4px}.radios label{display:flex;align-items:center;gap:12px;min-height:44px;font-weight:500;cursor:pointer}.radios input{width:20px;height:20px;accent-color:var(--accent)}.form label{display:flex;flex-direction:column;gap:6px;font-weight:600}.form .field{font-weight:400}.formrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.checkline{flex-direction:row!important;align-items:center;gap:10px!important;min-height:44px}.checkline input{width:20px;height:20px;accent-color:var(--accent)}.flabel{font-weight:600;margin-bottom:6px}.tintpick{display:flex;flex-wrap:wrap;gap:8px}.tintpick button{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border-radius:20px;border:1.5px solid var(--btnline);font-size:13px;font-weight:600}.tintpick button.on{border-color:var(--ink)}.tintpick span{width:16px;height:16px;border-radius:5px;display:inline-block;box-sizing:border-box}textarea.field{padding:10px 14px;min-height:64px;resize:vertical}select.field{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.warnlink{color:var(--warn)}.sheet{max-height:90vh}@media (max-width:899px){.calhead .btnrow{gap:8px;flex-wrap:nowrap}.calhead .seg button{padding:0 10px}}:root{--prihigh:#B5484E;--primed:#A8732F;--prilow:#8A7D73}.dark{--prihigh:#E08A8F;--primed:#D9A766;--prilow:#A89B90}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filters button{min-height:44px;padding:0 16px;border-radius:22px;border:1px solid var(--btnline);background:var(--card);font-size:15px;font-weight:600;color:var(--ink)}.filters button.on{background:var(--ink);border-color:var(--ink);color:var(--page)}.filters .hint{margin-left:auto}.boardgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;align-items:start}.tcol{background:var(--track);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;min-height:120px;transition:box-shadow .15s}.tcol.over{box-shadow:inset 0 0 0 2px var(--accent)}.tcolhead{display:flex;justify-content:space-between;align-items:center;min-height:32px;padding:0 4px}.tcard{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.tcard[draggable=true]{cursor:grab}.tcard.dragging{opacity:.5}.tcardmain{display:flex;flex-direction:column;gap:10px;padding:16px;width:100%;text-align:left}.ttitle{font-weight:600}.tmeta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;width:100%}.pri{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink2)}.pri i{width:7px;height:7px;border-radius:50%;display:inline-block}.tsteps{display:flex;align-items:center;gap:10px;width:100%}.bar{flex:1;height:6px;border-radius:6px;background:var(--track);overflow:hidden;display:block}.bar span{display:block;height:100%;background:var(--accent);border-radius:6px}.topen{border-top:1px solid var(--line2);padding:4px 16px 14px}.steprow{display:flex;align-items:center;gap:10px;margin-top:6px}.steprow .field{flex:1}.iconbtn.small{width:44px;height:44px}.addcard{min-height:44px;border-radius:12px;border:1.5px dashed var(--empty);color:var(--ink2);font-weight:600}.addcard:hover{background:var(--card)}.listcard{padding:4px 20px}.lrow{display:flex;align-items:center;gap:12px;min-height:60px;border-bottom:1px solid var(--line2)}.lrow:last-child{border-bottom:0}.lrowtext{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left;padding:8px 0}.pridot{width:10px;height:10px;border-radius:50%;flex:none}.num{font-variant-numeric:tabular-nums}.habscroll{overflow-x:auto;margin-top:8px}.habgrid{display:grid;grid-template-columns:minmax(220px,1fr) repeat(7,52px) 84px;gap:6px;align-items:center;min-width:680px}.habhead{padding-bottom:8px;border-bottom:1px solid var(--line)}.habday{text-align:center;font-size:13px;font-weight:600;color:var(--mute)}.habday.now{color:var(--ink);font-weight:700}.habrate{text-align:right;font-weight:600}.habhead .habrate{font-weight:400}.habrow{min-height:60px;border-bottom:1px solid var(--line2)}.habrow:last-child{border-bottom:0}.habname{justify-self:start;max-width:100%;display:flex;align-items:baseline;gap:10px;text-align:left;min-height:44px;padding:4px 8px;margin-left:-8px;border-radius:10px;min-width:0;flex-wrap:wrap}.habname:hover{background:var(--tile)}.habrow.sel .habname{background:var(--navon)}.habtitle{font-weight:500}.habcellwrap{display:flex;justify-content:center}.habcell{width:22px;height:22px;border-radius:50%;box-sizing:border-box;display:grid;place-items:center;color:var(--onaccent)}button.habcell{width:44px;height:44px;background-clip:content-box;padding:11px;position:relative}button.habcell:before{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;box-sizing:border-box}button.habcell svg{position:relative}.habcell.done{background:var(--accent)}button.habcell.done{background:var(--accent);background-clip:content-box}.habcell.missed{border:1.5px solid var(--empty)}button.habcell.missed{border:0}button.habcell.missed:before{border:1.5px solid var(--empty)}button.habcell.today{padding:9px}button.habcell.today:before{top:9px;right:9px;bottom:9px;left:9px;border:1.5px solid var(--empty)}button.habcell.today.done:before{border:0}.habcell.later{border:1.5px dotted var(--empty)}button.habcell.later{border:0}.habcell.off{background:none}.habcell.off:after{content:"";width:8px;height:1.5px;background:var(--line);display:block}button.habcell:hover:before{box-shadow:0 0 0 3px var(--navon)}.habkey{margin-top:14px}.habkey i.habcell{width:14px;height:14px;border-radius:50%}.habkey .meta{margin-left:auto}.habdetail{display:flex;flex-wrap:wrap;gap:24px;margin-top:16px;align-items:flex-start}.habstats{flex:0 0 200px;display:flex;flex-direction:column;gap:10px}.habstat{padding:12px 14px;display:flex;align-items:baseline;gap:10px}.habstat .big,.habcount .big{font-family:var(--serif);font-variation-settings:"opsz" 72;font-variant-numeric:lining-nums tabular-nums;font-size:28px;font-weight:500;line-height:1.1;min-width:56px}.habheatwrap{--hc:22px;flex:0 0 auto}.habheat{display:grid;grid-template-columns:repeat(13,var(--hc));grid-template-rows:repeat(7,var(--hc));grid-auto-flow:column;gap:4px}.hh{border-radius:5px;background:var(--track)}.hh.done{background:var(--accent)}.hh.missed{background:var(--track)}.hh.off,.hh.later{background:transparent;box-shadow:inset 0 0 0 1px var(--line2)}.habmonths{display:grid;grid-template-columns:repeat(13,var(--hc));gap:4px;margin-top:8px;font-size:13px;color:var(--mute);white-space:nowrap}.habside{flex:1 1 220px;display:flex;flex-direction:column;gap:10px}.habtile{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.habtile .more{display:inline-flex;align-items:center;gap:6px}.daypick{display:flex;flex-wrap:wrap;gap:6px}.daypick button{min-width:48px;min-height:44px;border-radius:12px;border:1.5px solid var(--btnline);font-size:13px;font-weight:600}.daypick button.on{background:var(--accent);border-color:var(--accent);color:var(--onaccent)}.habcount{display:flex;align-items:center;gap:14px}.habcount .big{font-size:34px;min-width:0;white-space:nowrap}.habcount .meta{font-size:15px}.habprow{min-height:76px}input.chk.big{width:26px;height:26px}.chk-off{width:26px;height:26px;flex:none;border-radius:50%;border:1.5px dotted var(--line)}.habpline{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.habbar{display:flex;gap:5px;margin-top:6px}.habbar i{flex:1;height:8px;border-radius:6px;box-sizing:border-box;background:var(--line2)}.habbar i.done{background:var(--accent)}.habbar i.missed{background:transparent;border:1.5px solid var(--empty)}.habbar i.off{background:transparent}@media (max-width:899px){.habheatwrap{--hc:18px}.habstats{flex:1 1 100%;flex-direction:row}.habstat{flex:1;flex-direction:column;gap:2px;padding:10px 12px}.habstat .big{font-size:24px;min-width:0}}.goalgrid{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.goalgrid>.col:first-child{flex:999 1 520px;min-width:0}.goalgrid>.col:last-child{flex:1 1 320px;min-width:0}.goalcard{display:flex;flex-direction:column;gap:14px}.goalhead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.goaltitle{text-align:left;display:block}.goaltitle:hover{color:var(--accent)}.goalbar{display:flex;align-items:center;gap:14px}.bar.thick{height:10px}.goalpct{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;font-size:22px;font-weight:500;min-width:56px;text-align:right}.miles{display:flex;flex-wrap:wrap;gap:2px 16px}.mile{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;min-height:44px;text-align:left}.mile i{width:16px;height:16px;border-radius:50%;box-sizing:border-box;border:1.5px solid var(--empty);display:grid;place-items:center;flex:none;color:var(--onaccent)}.mile.done i{background:var(--accent);border-color:var(--accent)}.mile:hover i{box-shadow:0 0 0 3px var(--navon)}.goalnext{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.vgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.vtile{height:150px;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:12px;text-align:left;position:relative;overflow:hidden;color:var(--ink)}.vtile img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.vtile:has(img):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 45%,#140e0ca6)}.vtile:has(img) .vcap{color:#fff}.vcap{font-family:var(--serif);font-size:17px;font-weight:500;line-height:1.2;position:relative;z-index:1;margin-top:auto}.vtile svg{position:relative;z-index:1}.vtile.preview{width:100%;max-width:240px}button.vtile:hover{outline:2px solid var(--accent);outline-offset:2px}.badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;margin-top:14px}.badge{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.bdot{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border:1.5px dashed var(--empty);color:var(--empty)}.badge.on .bdot{border:0;background:var(--navon);color:var(--accent)}.blabel{font-size:13px;line-height:1.25;color:var(--mute)}.badge.on .blabel{color:var(--ink)}.jgrid{display:grid;grid-template-columns:240px minmax(0,1fr) 280px;gap:20px;align-items:start}@media (max-width:1279px){.jgrid{grid-template-columns:220px minmax(0,1fr)}.jright{grid-column:1/-1;display:grid!important;grid-template-columns:1fr 1fr;align-items:start}}@media (max-width:899px){.jgrid{grid-template-columns:minmax(0,1fr);gap:14px}.jmid{order:-1}.jright{grid-template-columns:1fr;gap:14px}.jleft{order:2}}.jlist{padding:16px;display:flex;flex-direction:column;gap:2px}.jlisthead{padding:4px 8px 8px;font-weight:600;font-size:15px}.jentry{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:12px;text-align:left;width:100%;min-height:44px}.jentry:hover{background:var(--tile)}.jentry.on{background:var(--navon)}.jdot{width:12px;height:12px;border-radius:50%;margin-top:5px;flex:none;border:1px solid var(--empty);box-sizing:border-box}.jentrytext{min-width:0;display:flex;flex-direction:column}.jentrytext b{font-weight:600}.jentrytext .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jpage{display:flex;flex-direction:column;gap:20px;min-width:0}.jtitle{font-size:26px}@media (max-width:899px){.jtitle{font-size:22px}}.jsaved{display:flex;align-items:center;gap:6px;white-space:nowrap}.jsaved svg{color:var(--ok)}.jlabel{font-weight:600;display:block;margin-bottom:8px}.jmoods{margin-top:0;max-width:420px}.jmoods button{min-height:72px}.jmoods button:disabled{opacity:.5;cursor:default}.jfield{display:flex;flex-direction:column;gap:8px}.jfield .jlabel{margin-bottom:0}.jtext{font-family:var(--serif);font-variation-settings:"opsz" 16;font-size:18px;line-height:1.6;color:var(--ink);background:var(--side);border:1px solid var(--line);border-radius:12px;padding:14px 16px;resize:vertical;min-height:150px}.jtext::placeholder{color:var(--mute)}.jgood{display:flex;align-items:center;gap:12px}.jgood .field{flex:1;min-width:0}.jnum{width:28px;height:28px;flex:none;border-radius:50%;background:var(--navon);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.jmonthnav{gap:18px;margin-top:8px}.jmonthnav .more{display:inline-flex;align-items:center;gap:2px;min-height:44px}.jcal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:12px}.jwk{text-align:center;font-size:13px;color:var(--mute)}.jc{aspect-ratio:1;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--ink);box-sizing:border-box}.jc.none{color:var(--mute);box-shadow:inset 0 0 0 1px var(--line)}.jc.later{color:var(--label);box-shadow:inset 0 0 0 1px var(--line2)}.jc.on{box-shadow:inset 0 0 0 2px var(--accent)}button.jc:hover{box-shadow:inset 0 0 0 2px var(--accent2)}.jlegend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 8px;margin-top:12px;font-size:13px;color:var(--ink2)}.jlegend span{display:flex;align-items:center;gap:6px}.jlegend i{width:12px;height:12px;border-radius:4px;border:1px solid var(--empty);box-sizing:border-box}.jq{margin:10px 0 12px;font-family:var(--serif);font-size:18px;line-height:1.45}.warntext{color:var(--warn);font-weight:600}.warntext.small{font-size:13px}.monthhead{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.monthnav{display:flex;align-items:center;gap:6px;padding-bottom:4px}.statrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.stat{padding:20px 24px}.statlabel{font-size:15px;color:var(--mute)}.statnum{font-family:var(--serif);font-variation-settings:"opsz" 72;font-variant-numeric:lining-nums tabular-nums;font-size:34px;font-weight:500;line-height:1.1;margin:4px 0 2px}.statnum.small{font-size:28px;margin:0}.budgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;align-items:start}.homegrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}@media (max-width:899px){.statrow,.budgrid,.homegrid{gap:14px}.homegrid{grid-template-columns:minmax(0,1fr)}.statrow{grid-template-columns:1fr}.stat{padding:16px 20px}.statnum{font-size:30px}}.catlist{display:flex;flex-direction:column;gap:6px;margin-top:10px}.catrow{display:flex;flex-direction:column;gap:6px;text-align:left;padding:8px;margin:0 -8px;border-radius:12px;min-height:44px}.catrow:hover{background:var(--tile)}.catline{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.catname{display:flex;align-items:center;gap:8px;font-weight:500}.catname i{width:10px;height:10px;border-radius:3px;flex:none}.catline b{font-weight:700}.billline{min-height:56px;gap:10px}.billamt{font-weight:600;white-space:nowrap}.bellmark{width:22px;display:flex;justify-content:center;color:var(--accent);flex:none}.savlist{gap:12px;margin-top:12px}.savtile{display:flex;flex-direction:column;gap:6px;padding:16px;text-align:left;width:100%}.savtile:hover{box-shadow:inset 0 0 0 1.5px var(--btnline)}.savtile b{font-weight:600}.savamt b{font-weight:700}.savadd{display:flex;align-items:flex-end;gap:10px;padding:12px}.savadd label{flex:1}.moneyfield{position:relative;display:block}.moneyfield>span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--mute);pointer-events:none}.moneyfield .field{padding-left:28px}.txlist{margin-top:6px}.txrow{display:grid;grid-template-columns:110px minmax(0,1fr) 160px 100px;gap:12px;align-items:center;min-height:48px;border-bottom:1px solid var(--line2);width:100%;text-align:left}.txrow:last-child{border-bottom:0}.txrow:hover .txname{color:var(--accent)}.txname{font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.txamt{text-align:right;font-weight:600}@media (max-width:899px){.txrow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name amt" "date cat";row-gap:2px;padding:8px 0}.txname{grid-area:name}.txamt{grid-area:amt}.txdate{grid-area:date}.txcat{grid-area:cat;justify-self:end}}.lrowline{width:100%;text-align:left;gap:12px}.lrowline:hover .ttitle{color:var(--accent)}.lrow .lrowtext.pad,.lrow.lrowtext.pad{padding:10px 0}.lrow.lrowtext{align-items:flex-start;justify-content:center;flex-direction:column;gap:0}.subtotal{padding:14px 16px;margin-top:12px;display:flex;justify-content:space-between;align-items:baseline}.docico{width:36px;height:36px;flex:none;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}.invstats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.invstats .tile{padding:14px}.invrecent{justify-content:space-between;min-height:44px}.listcard.plain{border:0;box-shadow:none;padding:0;background:none}.invrow{width:100%;text-align:left;gap:12px;min-height:56px}.invrow img,.invph{width:40px;height:40px;border-radius:10px;object-fit:cover;flex:none}.invph{background:var(--tile);display:flex;align-items:center;justify-content:center;color:var(--mute)}.itemphoto{display:flex;flex-direction:column;gap:10px}.itemphoto img{width:100%;max-width:260px;max-height:220px;object-fit:cover;border-radius:12px}.catrow .bar,.savtile .bar{flex:none;width:100%}.iconbtn.bare{border:0;background:none}.mealgrid{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.mealgrid>.col:first-child{flex:999 1 520px;min-width:0}.mealgrid>.col:last-child{flex:1 1 320px;min-width:0}@media (max-width:899px){.mealgrid{gap:14px}}.weeknav{display:flex;align-items:center;gap:2px;white-space:nowrap}.plan{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,1fr);gap:8px 12px;margin-top:14px}.planrow{display:contents}.planhead{font-weight:600}.planday{display:flex;align-items:center;font-weight:500;color:var(--ink2)}.planday.today{font-weight:700;color:var(--ink)}.mealcell{min-height:60px;border-radius:12px;padding:6px 12px;background:var(--side);border:1px solid var(--line2);display:flex;flex-direction:column;justify-content:center;text-align:left;min-width:0}.mealcell.today{background:var(--home)}.mealcell.tonight{box-shadow:inset 0 0 0 2px var(--accent);border-color:transparent}.mealcell.empty{background:none;border:1.5px dashed var(--line)}.mealcell:hover{border-color:var(--btnline)}.mealname{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mealmiss{font-size:13px;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media (max-width:899px){.plan{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);gap:6px 8px}.mealcell{padding:6px 10px;min-height:56px}.mealname{white-space:normal;font-size:14px;line-height:1.25}.mealmiss{display:none}}.pantryrow{min-height:44px;gap:10px}.fillbtn{margin-top:12px;width:100%;min-height:44px;border-radius:12px;border:1px solid var(--btnline);background:var(--side);font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.fillbtn:hover{border-color:var(--accent)}.groadd{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;margin-top:10px}.aisle{margin-top:14px}.aislename{font-weight:600;margin-bottom:2px}.groitem{display:flex;align-items:center;gap:4px}.groitemmain{flex:1;display:flex;align-items:center;gap:12px;min-height:44px;padding:4px 0;cursor:pointer;min-width:0}.fitstats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media (max-width:899px){.fitstats{grid-template-columns:1fr 1fr}}.stepchart{position:relative;display:flex;align-items:flex-end;gap:10px;height:180px;margin-top:16px;border-bottom:1px solid var(--line)}.goalline{position:absolute;left:0;right:0;border-top:1.5px dashed var(--empty);pointer-events:none}.goalline span{position:absolute;right:0;bottom:2px;font-size:13px;color:var(--ink2);background:var(--card);padding-left:6px}.stepbar{flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;min-width:0}.stepbar i{display:block;width:100%;max-width:34px;border-radius:8px 8px 0 0;background:var(--accent)}.stepbar.today i{background:var(--todaybar)}.stepbar:not(:disabled):hover i{opacity:.85}.steplabels{display:flex;gap:10px;margin-top:6px}.steplabels span{flex:1;text-align:center;font-size:13px;color:var(--mute);line-height:1.3}.steplabels b{display:block;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.sleeplist{display:flex;flex-direction:column;gap:2px;margin-top:10px}.sleeprow{display:grid;grid-template-columns:40px minmax(0,1fr) 60px;gap:10px;align-items:center;min-height:30px;text-align:left;border-radius:8px}.sleeprow:not(:disabled):hover{background:var(--tile)}.sleepbar{height:12px;position:relative;overflow:visible}.sleepbar span{background:var(--sleep);border-radius:6px}.sleepbar i{position:absolute;top:-3px;bottom:-3px;width:0;border-left:1.5px dashed var(--empty)}.sleepval{font-size:13px;text-align:right}.plantiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px}.plantile{padding:14px;display:flex;flex-direction:column;gap:4px;text-align:left;min-height:44px}.plantile:not(:disabled):hover{box-shadow:inset 0 0 0 1.5px var(--btnline)}.planstatus{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink2)}.planstatus i{width:8px;height:8px;border-radius:50%;background:var(--empty)}.planstatus.done{color:var(--ok)}.planstatus.done i{background:var(--ok)}.planstatus.missed{color:var(--warn)}.planstatus.missed i{background:var(--warn)}.planstatus.today{color:var(--accent)}.planstatus.today i{background:var(--accent)}.planedit{display:grid;grid-template-columns:130px minmax(0,1fr) 110px 44px;gap:8px;align-items:center}@media (max-width:599px){.planedit{grid-template-columns:1fr 1fr 44px}.planedit input{grid-column:1/3;grid-row:2}}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.focusgrid{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch}.focusgrid>.focuscard{flex:999 1 520px;min-width:0}.focusgrid>.col{flex:1 1 300px;min-width:0}@media (max-width:899px){.focusgrid{gap:14px}}.focuscard{padding:40px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center}.meta.big{font-size:15px}.focuswhat{display:flex;flex-direction:column;align-items:center;gap:4px}.focustaskrow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;justify-content:center}.focustask{font-family:var(--serif);font-variation-settings:"opsz" 24;font-size:26px;font-weight:500;line-height:1.2}.focusring{position:relative;width:280px;height:280px;max-width:100%}.focusring svg{width:100%;height:100%}.focusringin{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.focusclock{font-family:var(--serif);font-variation-settings:"opsz" 72;font-variant-numeric:lining-nums tabular-nums;font-size:64px;font-weight:500;line-height:1;letter-spacing:-1px}@media (max-width:899px){.focuscard{padding:28px 16px;gap:18px}.focusring{width:240px;height:240px}.focusclock{font-size:54px}.focustask{font-size:22px}}.focusbtns{justify-content:center}.sessionbars{display:flex;gap:8px}.sessionbars i{width:40px;height:8px;border-radius:8px;background:var(--line)}.sessionbars i.done{background:var(--accent)}.sessionbars i.now{background:var(--todaybar)}.sounds{border:0;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.soundrow{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 12px;border-radius:12px;cursor:pointer;border:1.5px solid transparent}.soundrow.on{background:var(--navon);border-color:var(--accent)}.soundrow input{width:20px;height:20px;margin:0;accent-color:var(--accent)}.volume{display:flex;flex-direction:column;gap:6px;margin-top:14px}.volume input{accent-color:var(--accent);height:32px}.timerset{margin-top:6px}.timerset .row{min-height:52px}.lrow.picked{background:var(--navon);border-radius:10px;padding-left:10px;padding-right:10px}.focuspill{position:fixed;right:24px;bottom:24px;z-index:25;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:22px;background:var(--accent);color:var(--onaccent);font-weight:600;font-variant-numeric:tabular-nums;box-shadow:0 4px 16px #2a23202e}.focuspill i{width:8px;height:8px;border-radius:50%;background:var(--onaccent);animation:pulse 2s ease-in-out infinite}.focuspill i.paused{animation:none;opacity:.5}@keyframes pulse{50%{opacity:.35}}@media (max-width:899px){.focuspill{right:16px;bottom:calc(84px + env(safe-area-inset-bottom))}}.privacy{display:flex;align-items:center;gap:10px;color:var(--ink2);margin-top:-8px}.privacy svg{color:var(--ok);flex:none}.suggrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;align-items:stretch}@media (max-width:899px){.suggrid{gap:14px}}.sugcard{display:flex;flex-direction:column;gap:14px}.sughead{display:flex;align-items:center;gap:12px}.sugico{width:40px;height:40px;flex:none;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--ink)}.suglines{list-style:none;display:flex;flex-direction:column;gap:10px}.suglines li{display:flex;gap:10px;font-weight:500}.suglines li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);margin-top:9px;flex:none}.timerset .row{display:flex;justify-content:space-between;align-items:center;gap:12px}
