:root{--bg:#13131c;--panel:#1a1b26;--panel2:#24283b;--line:#2f334d;--text:#c8d1f8;--sub:#a9b1d6;--dim:#6b74a0;--accent:#7aa2f7;--on:#13131c;--body:#9ece6a;--mind:#bb9af7;--money:#e0af68;--work:#ff9e64;--projects:#7aa2f7;--streaks:#f7768e;--danger:#f7768e;--now:#ff9e64;--r:1.1rem;--head-h:3.4rem;--ease:cubic-bezier(.32, .72, 0, 1);--row:1.9rem;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{font-size:clamp(10.5px,min(.94vw,1.6vh),19px)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{touch-action:manipulation;overscroll-behavior:none;background:var(--bg)}body{overscroll-behavior:none;background:var(--bg);color:var(--text);transition:background .3s,color .3s;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:.4rem}h1,h2,h3,p{margin:0}kbd{font:inherit;border:1px solid var(--line);color:var(--sub);border-radius:.3em;padding:.05em .4em;font-size:.78em}.app.wide{grid-template-columns:minmax(16rem,23%) 1fr;gap:1.25rem;height:100dvh;padding:1.5rem 1.8rem;display:grid}.sidebar{grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:.95rem;min-height:0;display:grid}.main{flex-direction:column;gap:.95rem;min-width:0;min-height:0;display:flex}.cell{flex-direction:column;min-width:0;min-height:0;display:flex}.cell>*{flex:1;min-height:0}.areas{grid-template-columns:repeat(3,minmax(0,1fr));gap:.95rem;min-height:0;display:grid}.mid{grid-template-columns:1.45fr 1fr;gap:.95rem;min-height:0;display:grid}.bottom{display:flex}.cards-row-wrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.cards-row{flex:1;gap:.95rem;min-height:0;display:grid}.pager{justify-content:center;gap:.4rem;display:flex;position:absolute;bottom:-.95rem;left:0;right:0}.pager-arrow{z-index:4;background:var(--panel2);border:1px solid var(--line);width:2.1rem;height:2.1rem;color:var(--text);border-radius:50%;place-items:center;font-size:1.3rem;line-height:1;transition:opacity .2s,background .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 .4rem 1rem #0000004d}.pager-arrow:hover:not(:disabled){background:var(--accent);color:var(--on)}.pager-arrow:disabled{opacity:0;pointer-events:none}.pager-arrow.left{left:-1.05rem}.pager-arrow.right{right:-1.05rem}.card{background:var(--panel);border-radius:var(--r);border:1px solid color-mix(in srgb, var(--line) 55%, transparent);flex-direction:column;min-width:0;min-height:0;padding:1rem 1.25rem;transition:background .3s,border-color .3s;display:flex;position:relative}.accent-card{box-shadow:inset 3.5px 0 0 var(--c);padding-left:1.35rem}.card-head{justify-content:space-between;align-items:center;gap:.5rem;min-height:1.4rem;margin-bottom:.55rem;display:flex}.label{letter-spacing:.04em;text-transform:uppercase;color:var(--sub);font-size:.82rem;font-weight:700}.count{color:var(--sub);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.hint{color:var(--dim);font-size:.8rem}.hint.italic{margin-top:.4rem;font-style:italic}.sub{color:var(--sub);margin-top:.15rem;font-size:.92rem}.empty{color:var(--dim);padding:.5rem 0;font-size:.85rem}.scroll{scrollbar-width:none;overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:.45rem;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - .9rem),#0000);mask-image:linear-gradient(#000 calc(100% - .9rem),#0000)}.scroll::-webkit-scrollbar{display:none}.num{vertical-align:bottom;font-variant-numeric:tabular-nums;display:inline-flex;overflow:hidden}.btn{height:2.6rem;transition:background .3s var(--ease), border-color .3s var(--ease), color .3s var(--ease), filter .3s var(--ease), transform .3s var(--ease);white-space:nowrap;border:1.5px solid #0000;border-radius:99rem;justify-content:center;align-items:center;gap:.35rem;padding:0 1.4rem;font-size:.95rem;font-weight:700;display:inline-flex}.btn.primary{background:var(--accent);color:var(--on)}.btn.primary:hover{filter:brightness(1.08)}.btn.outline{border-color:color-mix(in srgb, var(--c,var(--accent)) 70%, var(--line));color:var(--text)}.btn.outline:hover{background:color-mix(in srgb, var(--c,var(--accent)) 14%, transparent)}.btn.outline.danger{--c:var(--danger);color:var(--danger)}.btn.tiny{height:2rem;padding:0 .95rem;font-size:.82rem}.btn.full{width:100%;margin-top:.5rem}.btn.fill-body{background:var(--body);color:var(--on)}.btn-row{flex-wrap:wrap;gap:.6rem;margin:.4rem 0 .2rem;display:flex}.link-btn{color:var(--accent);align-self:flex-start;padding:.35rem 0 0;font-size:.88rem;font-weight:700}.link-btn:hover{text-underline-offset:3px;text-decoration:underline}.icon-btn{width:2.2rem;height:2.2rem;color:var(--sub);border-radius:50%;place-items:center;font-size:1rem;display:grid}.icon-btn:hover:not(:disabled){background:var(--panel2);color:var(--text)}.icon-btn:disabled{opacity:.25}.chip-btn{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent);border-radius:99rem;padding:.3rem .7rem;font-size:.78rem;font-weight:700}.logo{height:var(--head-h);align-items:center;gap:.75rem;min-width:0;display:flex}.logo-text{min-width:0}.logo-name{margin-bottom:.3rem;display:block}.logo-sub{color:var(--dim);font-size:.85rem}.sample-chip{color:var(--dim);border-bottom:1px dashed var(--dim);font-size:.8rem}.sample-chip:hover{color:var(--accent);border-color:var(--accent)}.topbar{height:var(--head-h);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;display:flex}.date-nav{align-items:center;gap:.35rem;min-width:0;display:flex}.date-nav h1{letter-spacing:-.01em;white-space:nowrap;font-size:1.75rem;font-weight:800}.nav-arrow{font-size:1.5rem;line-height:1}.week-no{color:var(--sub);white-space:nowrap;margin:0 .5rem;font-size:.95rem}.top-actions{align-items:center;gap:.6rem;display:flex}.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:.95rem;display:grid}.tile{text-align:left;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;padding:.85rem 1.25rem}.tile.clickable:hover{border-color:color-mix(in srgb, var(--c) 50%, transparent)}.tile-text{min-width:0}.tile-value{white-space:nowrap;font-size:1.95rem;font-weight:800;line-height:1.2}.tile-sub{color:var(--sub);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.tile-action{margin-left:.45rem;font-weight:700}.tile.glow{animation:2.4s ease-in-out infinite glow}@keyframes glow{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--c) 0%, transparent)}50%{box-shadow:0 0 1.4rem 0 color-mix(in srgb, var(--c) 35%, transparent);border-color:var(--c)}}.check{border:2px solid var(--dim);width:1.5rem;height:1.5rem;transition:background .3s var(--ease), border-color .3s var(--ease);border-radius:.38rem;flex-shrink:0;place-items:center;display:grid}.check.on{background:var(--c);border-color:var(--c)}.check svg{width:100%;height:100%}.habit-list{flex-direction:column;display:flex}.habit-row{min-height:var(--row);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:background .3s var(--ease);border-radius:.7rem;align-items:center;gap:.8rem;margin:0 -.55rem;padding:0 .55rem;display:flex}.habit-row:hover,.habit-row.menu-open{background:var(--panel2)}.habit-row.inactive{opacity:.45;cursor:default}.habit-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.98rem;transition:color .25s;overflow:hidden}.habit-name.done{color:var(--sub)}.badge{font-variant-numeric:tabular-nums;background:var(--panel2);color:var(--text);border-radius:99rem;flex-shrink:0;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.badge i{background:var(--streaks);border-radius:50%;width:.38rem;height:.38rem}.badge.zero{color:var(--dim)}.badge.zero i{background:var(--dim)}.badge.paused{color:var(--money);background:color-mix(in srgb, var(--money) 14%, transparent)}.habit-row:hover .badge,.habit-row.menu-open .badge{background:var(--panel)}.dots-btn{width:1.4rem;height:1.8rem;color:var(--sub);opacity:0;transition:opacity .25s var(--ease);border-radius:.4rem;flex-shrink:0;place-items:center;display:grid}.habit-row:hover .dots-btn,.habit-row.menu-open .dots-btn,.dots-btn:focus-visible,.dots-btn.always{opacity:1}.dots-btn:hover{color:var(--text);background:var(--panel2)}@media (hover:none){.habit-row .dots-btn{display:none}}.habit-row.editing{background:var(--panel2);cursor:default;margin:0 0 .35rem;position:relative}.grip{color:var(--dim);cursor:grab;touch-action:none;padding:.4rem .2rem;display:grid}.grip:active{cursor:grabbing}.minus{background:var(--danger);border-radius:50%;flex-shrink:0;place-items:center;width:1.45rem;height:1.45rem;display:grid}.minus span{background:var(--on);border-radius:1px;width:.7rem;height:.17rem}.inline-input{background:var(--bg);border:1.5px solid var(--accent);border-radius:.5rem;outline:none;flex:1;min-width:0;padding:.3rem .55rem;font-size:.95rem}.card>.inline-input{flex:none;margin-top:.3rem}.water-row{min-height:var(--row);align-items:center;gap:.8rem;display:flex}.water-label{width:3.2rem;font-size:.98rem}.glasses{flex:1;gap:.35rem;display:flex}.glass{border:1.5px solid var(--dim);border-radius:.45rem;flex:1;max-width:2.6rem;height:1.6rem;position:relative;overflow:hidden}.glass.on{border-color:var(--body)}.glass-fill{background:var(--body);transform-origin:bottom;position:absolute;inset:0}.water-amt{color:var(--sub);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:600}.graduate{border:1.5px solid var(--body);background:color-mix(in srgb, var(--body) 9%, transparent);border-radius:.8rem;flex-direction:column;gap:.5rem;margin:.2rem 0;padding:.65rem .8rem;display:flex}.graduate-text strong{color:var(--body);font-size:.95rem;display:block}.graduate-text span{color:var(--sub);font-size:.82rem}.graduate-btns{gap:.5rem;display:flex}.popover{z-index:60;background:var(--panel2);border:1px solid var(--line);border-radius:.9rem;padding:.4rem;position:fixed;box-shadow:0 1rem 2.5rem #00000059}.menu-item{text-align:left;border-radius:.55rem;width:100%;padding:.6rem .8rem;font-size:.95rem;display:block}.menu-item:hover{background:color-mix(in srgb, var(--text) 8%, transparent)}.menu-item.good{color:var(--body);font-weight:600}.menu-item.bad{color:var(--danger);font-weight:600}.menu-sep{background:var(--line);height:1px;margin:.3rem .4rem}.pop-pad{flex-direction:column;gap:.5rem;padding:.5rem;display:flex}.pop-title{color:var(--sub);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.quick-row{flex-wrap:wrap;gap:.4rem;display:flex}.quick-row .field{flex:1}.quote-card{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 5%, var(--panel));padding:1.1rem 1.4rem}.quote-mark{height:2.2rem;color:var(--sub);margin-top:.4rem;font-family:Georgia,serif;font-size:3.8rem;font-weight:800;line-height:.8}.quote-body{cursor:pointer;flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex;overflow:hidden}.quote-text{letter-spacing:-.01em;font-weight:800;line-height:1.22}.quote-sub{color:var(--sub);margin-top:.7rem;font-size:.95rem}.quote-foot{justify-content:space-between;align-items:center;margin:.6rem 0 .35rem;display:flex}.qdots{flex-wrap:wrap;gap:.45rem;display:flex}.qdot{background:var(--line);width:.5rem;height:.5rem;transition:background .35s var(--ease), transform .35s var(--ease);border-radius:50%;padding:0}.qdot:hover{transform:scale(1.3)}.qdot.on{background:var(--accent);transform:scale(1.25)}.grat-card{padding:.95rem 1.4rem}.grat-input{resize:none;width:100%;color:var(--text);background:0 0;background-image:linear-gradient(transparent calc(2rem - 1px), var(--line) 0);background-size:100% 2rem;border:0;outline:none;margin-top:.5rem;font-size:.98rem;font-style:italic;line-height:2rem}.grat-input::placeholder{color:var(--dim)}.year-card{padding:1rem 1.1rem}.year-nav{align-items:center;gap:.15rem;font-size:.95rem;display:flex}.year-nav b{text-align:center;font-variant-numeric:tabular-nums;min-width:2.9rem;font-weight:800}.ynav{width:1.6rem;height:1.6rem;color:var(--sub);border-radius:.5rem;place-items:center;font-size:1.15rem;line-height:1;display:grid}.ynav:hover:not(:disabled){background:var(--panel2);color:var(--text)}.ynav:disabled{opacity:.25;cursor:default}.year-left{color:var(--sub);white-space:nowrap;align-items:center;gap:.55rem;margin:-.15rem 0 .6rem;font-size:.8rem;display:flex}.year-left b{color:var(--text);font-weight:800}.year-bar{background:var(--panel2);border-radius:99rem;flex:1;height:.3rem;overflow:hidden}.year-bar span{border-radius:inherit;background:var(--body);height:100%;display:block}.ymonths{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem .6rem;width:100%;display:grid}.ymonths.big{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem 1.3rem}.ymo-head{justify-content:space-between;align-items:baseline;margin-bottom:.2rem;line-height:1;display:flex}.ymo-name{color:var(--dim);text-transform:uppercase;letter-spacing:.03em;font-size:.66rem;font-weight:700}.ymo-pct{color:var(--sub);font-variant-numeric:tabular-nums;font-size:.6rem}.ymo.now .ymo-name{color:var(--text)}.ymonths.big .ymo-name{font-size:.85rem}.ymonths.big .ymo-pct{font-size:.78rem}.ymo-days{grid-template-rows:repeat(6,auto);grid-template-columns:repeat(7,minmax(0,1fr));align-content:start;gap:1.5px;display:grid}.ymonths.big .ymo-days{grid-template-rows:auto repeat(6,auto);gap:3px}.ywk{color:var(--dim);text-align:center;font-size:.62rem}.ymonths.big .ycell{color:color-mix(in srgb, var(--text) 55%, transparent);font-variant-numeric:tabular-nums;border-radius:4px;place-items:center;font-size:.62rem;display:grid}.ymonths.big .ycell.l3,.ymonths.big .ycell.l4{color:var(--on)}.ymonths.big .ycell.future{color:var(--dim)}.ycell{--y0:color-mix(in srgb, var(--text) 10%, var(--panel));aspect-ratio:1;background:var(--y0);width:100%;min-width:0;animation:ycell-in .5s var(--ease) backwards;border-radius:2px;padding:0;display:block}.ycell.future{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--text) 10%, transparent);cursor:default;background:0 0}.ycell.l1{background:color-mix(in srgb, var(--body) 25%, var(--y0))}.ycell.l2{background:color-mix(in srgb, var(--body) 48%, var(--y0))}.ycell.l3{background:color-mix(in srgb, var(--body) 74%, var(--y0))}.ycell.l4{background:var(--body)}.ycell.today{outline:1.5px solid var(--text);outline-offset:1px}.ycell.picked{outline:1.5px solid var(--accent);outline-offset:1px}button.ycell:not(:disabled):hover{outline:1.5px solid var(--text);outline-offset:1px;z-index:1;position:relative}@keyframes ycell-in{0%{opacity:0;transform:scale(.4)}}.yline{color:var(--sub);white-space:nowrap;align-items:center;gap:.45rem;min-height:1.6rem;margin-top:.45rem;font-size:.8rem;display:flex;overflow:hidden}.yline b{color:var(--text);font-weight:700}.yline.dim{color:var(--dim)}.yline .link-btn{color:var(--body);margin-left:auto;font-size:.8rem}.yline-dot{background:color-mix(in srgb, var(--text) 10%, var(--panel));border-radius:3px;flex-shrink:0;width:.7rem;height:.7rem}.yline-dot.l1{background:color-mix(in srgb, var(--body) 25%, var(--panel2))}.yline-dot.l2{background:color-mix(in srgb, var(--body) 48%, var(--panel2))}.yline-dot.l3{background:color-mix(in srgb, var(--body) 74%, var(--panel2))}.yline-dot.l4{background:var(--body)}.ylegend{color:var(--dim);align-items:center;gap:2px;font-size:.65rem;display:inline-flex}.ylegend .ycell{flex-shrink:0;width:.6rem;animation:none}.ylegend .ycell:first-of-type{margin-left:.25rem}.ylegend .ycell:last-of-type{margin-right:.25rem}.year-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem .6rem;margin-top:.2rem;display:flex}.year-foot .year-stats{white-space:nowrap;gap:1rem;font-size:.9rem}.hist-year-head{justify-content:space-between;align-items:center;margin:.2rem 0 .5rem;display:flex}.hist-year-head .year-nav{font-size:1.15rem}.list-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;background:0 0;min-width:0;padding:0;overflow:hidden}.card-head .inline-input{text-transform:uppercase;letter-spacing:.04em;flex:1;min-width:0;font-size:.82rem;font-weight:700}.card-head .count{margin-left:auto}.area-card .list-dots{height:1.4rem;margin-right:-.4rem}.seg.wrap{border-radius:1.2rem;flex-wrap:wrap}.seg.wrap .seg-btn{flex:1 0 auto;padding:0 .8rem}.year-stats{gap:1.6rem;font-size:1.05rem;font-weight:600;display:flex}.year-stats b{font-weight:800}.seg{background:var(--bg);border-radius:99rem;gap:.1rem;padding:.25rem;display:flex}.seg-btn{height:2.2rem;color:var(--sub);border-radius:99rem;flex:1;font-size:.88rem;font-weight:600;position:relative}.seg-btn>span:last-child{z-index:1;position:relative}.seg-btn.on{color:var(--on)}.seg-pill{background:var(--accent);border-radius:99rem;position:absolute;inset:0}.seg-pill.colored{background:var(--c)}.seg.small .seg-btn{height:2.1rem}.week-grid{grid-template-rows:auto;grid-auto-rows:minmax(1.1rem,1fr);align-content:stretch;align-items:center;gap:.16rem .5rem;display:grid}.wk-day{color:var(--sub);text-align:center;border-radius:.35rem;padding:.15rem 0;font-size:.82rem;font-weight:700}.wk-day.today{color:var(--text)}.wk-day.sel{background:var(--panel2)}.wk-day:hover:not(:disabled){color:var(--text)}.wk-day:disabled{opacity:.5}.wk-name{white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;overflow:hidden}.wk-cell{background:var(--panel2);border-radius:.38rem;justify-self:center;place-items:center;width:100%;max-width:3.2rem;height:100%;min-height:1.15rem;max-height:2.2rem;transition:background .2s;display:grid}.wk-cell.on{background:var(--c)}.wk-cell svg{height:85%}.wk-cell svg path{fill:none;stroke:var(--on);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}.wk-cell.future{border:1.5px dashed var(--line);background:0 0}.wk-cell.na{background:0 0}.wk-cell.today:not(.on){box-shadow:inset 0 0 0 1.5px var(--dim)}.wk-cell:hover:not(:disabled):not(.on){background:color-mix(in srgb, var(--c) 30%, var(--panel2))}.now-chip{white-space:nowrap;background:var(--now);color:var(--on);font-variant-numeric:tabular-nums;border-radius:99rem;padding:.3rem .55rem;font-size:.76rem;font-weight:800}.flow-list{flex-direction:column;display:flex;position:relative}.flow-item{align-items:center;gap:.9rem;min-height:2.05rem;display:flex;position:relative}.flow-time{color:var(--sub);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;width:3rem;font-size:.9rem;font-weight:600}.flow-time.h12{width:4.4rem}.flow-dot{border:2px solid var(--now);background:var(--panel);z-index:1;border-radius:50%;flex-shrink:0;width:.95rem;height:.95rem;position:relative}.flow-item:not(:last-child) .flow-dot:after{content:"";background:color-mix(in srgb, var(--now) 35%, transparent);z-index:-1;width:2px;height:1.2rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}.flow-item.past .flow-dot{background:var(--now)}.flow-item.past .flow-label{color:var(--sub)}.flow-item.current .flow-label{color:var(--text);font-weight:700}.flow-item.current .flow-time{color:var(--now)}.flow-label{white-space:nowrap;text-overflow:ellipsis;font-size:.98rem;overflow:hidden}.pulse{border:2px solid var(--now);border-radius:50%;animation:1.8s ease-out infinite pulse;position:absolute;inset:-2px}@keyframes pulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}.flow-time-in{background:var(--bg);border:1px solid var(--line);width:7.4rem;color-scheme:inherit;border-radius:.4rem;flex-shrink:0;padding:.2rem .3rem;font-size:.85rem}.bottom-card{padding-top:1rem;padding-bottom:.9rem}.card-title{white-space:nowrap;text-overflow:ellipsis;margin-top:.1rem;font-size:1.4rem;font-weight:800;overflow:hidden}.bar{background:var(--panel2);border-radius:99rem;flex-shrink:0;height:.55rem;margin:.7rem 0 .3rem;overflow:hidden}.bar-fill{border-radius:99rem;height:100%}.book-row{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.35rem;display:flex}.big-pct{font-size:2rem;font-weight:800}.done-badge{color:var(--mind);font-weight:800}.steps{flex-direction:column;display:flex}.step-row{cursor:pointer;align-items:center;gap:.7rem;min-height:2.05rem;display:flex;overflow:hidden}.step-row .check{width:1.3rem;height:1.3rem}.step-text{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.95rem;transition:color .2s;overflow:hidden}.step-text.done{color:var(--sub)}.card-foot{margin-top:auto}.card-foot .bar{margin-top:.5rem}.add-slot{border:1.5px dashed var(--line);color:var(--dim);background:0 0;justify-content:center;align-items:center;gap:.3rem}.add-slot span{font-size:2rem;font-weight:300;line-height:1}.add-slot small{font-size:.82rem}.add-slot:hover{border-color:var(--accent);color:var(--accent)}.modal-back{z-index:50;-webkit-backdrop-filter:blur(6px);background:#05050a8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);scrollbar-width:thin;border-radius:1.3rem;width:min(32rem,100%);max-height:min(88dvh,50rem);padding:1.3rem 1.5rem 1.5rem;overflow-y:auto;box-shadow:0 2rem 5rem #00000073}.modal.wide{width:min(58rem,100%)}.modal-head{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.modal-head h2{font-size:1.35rem;font-weight:800}.kind-groups{flex-direction:column;gap:1.2rem;display:flex}.kind-group-head{flex-wrap:wrap;align-items:baseline;gap:.6rem;margin-bottom:.55rem;display:flex}.kind-group-head b{text-transform:uppercase;letter-spacing:.05em;color:var(--text);font-size:.8rem;font-weight:800}.kind-group-head span{color:var(--dim);font-size:.8rem}.kind-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.kind-grid.one{grid-template-columns:1fr}.kind-btn{text-align:left;background:var(--panel2);border:1.5px solid #0000;border-radius:1rem;align-items:center;gap:.85rem;padding:.85rem .95rem;transition:border-color .2s,background .2s;display:flex}.kind-btn:hover{border-color:var(--c)}.kind-icon{width:2.4rem;height:2.4rem;color:var(--c);background:color-mix(in srgb, var(--c) 16%, transparent);border-radius:.75rem;flex-shrink:0;place-items:center;display:grid}.kind-icon svg{width:1.35rem;height:1.35rem}.kind-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.kind-btn b{font-size:.98rem}.kind-btn small{color:var(--sub);font-size:.8rem;line-height:1.3}.gif-add-preview{background:var(--panel2);border-radius:.9rem;place-items:center;max-height:11rem;display:grid;overflow:hidden}.gif-add-preview img{object-fit:contain;max-width:100%;max-height:11rem}.form{flex-direction:column;gap:.9rem;display:flex}.field-label{color:var(--sub);flex-direction:column;flex:1;gap:.35rem;min-width:0;font-size:.85rem;font-weight:600;display:flex}.field-label small{color:var(--dim);font-weight:400}.field{background:var(--bg);border:1.5px solid var(--line);color:var(--text);resize:vertical;border-radius:.7rem;outline:none;width:100%;padding:.65rem .8rem;font-size:1rem;transition:border-color .2s}.field:focus{border-color:var(--accent)}.field.small{padding:.35rem .6rem;font-size:.9rem}.field-row{gap:.7rem;display:flex}.check-line{color:var(--sub);align-items:flex-start;gap:.6rem;font-size:.88rem;display:flex}.check-line input{accent-color:var(--accent);margin-top:.2rem}.swatches{align-items:center;gap:.4rem;height:2.6rem;display:flex}.swatch{border:2px solid #0000;border-radius:50%;width:1.6rem;height:1.6rem}.swatch.on{border-color:var(--text);transform:scale(1.1)}.err{color:var(--danger);font-size:.88rem}.form-foot{justify-content:space-between;align-items:center;margin-top:.3rem;display:flex}.section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--sub);margin:1.3rem 0 .5rem;font-size:.85rem}.section-title:first-of-type{margin-top:0}.hist-stats{grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:1rem;display:grid}.hist-stats div{background:var(--panel2);border-radius:.9rem;flex-direction:column;padding:.8rem 1rem;display:flex}.hist-stats b{font-size:1.7rem;font-weight:800}.hist-stats span{color:var(--sub);font-size:.8rem}.hist-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.9rem}.hist-table th{text-align:left;color:var(--dim);text-transform:uppercase;padding:.4rem;font-size:.75rem;font-weight:600}.hist-table td{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;padding:.45rem .4rem}.hist-table td:first-child{align-items:center;gap:.5rem;display:flex}.dot{border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem;display:inline-block}.core-star{color:var(--streaks);font-size:.75rem}.mini-bar{background:var(--panel2);vertical-align:middle;border-radius:99rem;width:5rem;height:.4rem;margin-right:.5rem;display:inline-block;overflow:hidden}.mini-bar span{height:100%;display:block}.mastered{flex-direction:column;gap:.5rem;display:flex}.mastered-item{border:1.5px solid var(--c);border-radius:.8rem;align-items:center;gap:.8rem;padding:.6rem .9rem;display:flex}.mastered-item span{color:var(--c);flex:1;font-weight:700}.mastered-item small{color:var(--dim)}.theme-list{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem;display:grid}.theme-btn{text-align:left;border:1.5px solid;border-radius:1rem;flex-direction:column;gap:.15rem;padding:.9rem 1.1rem;display:flex}.theme-btn.on{border-width:2px}.theme-dots{gap:.4rem;margin-top:.5rem;display:flex}.theme-dots i{border-radius:50%;width:1.25rem;height:1.25rem}.palette-input{font-size:1.1rem}.palette-list{flex-direction:column;max-height:50vh;margin-top:.6rem;display:flex;overflow-y:auto}.palette-item{text-align:left;border-radius:.6rem;align-items:center;gap:.7rem;padding:.6rem .8rem;display:flex}.palette-item.sel{background:var(--panel2)}.palette-label{flex:1}.palette-item small{color:var(--dim)}.toast-wrap{left:0;right:0;bottom:calc(1.5rem + env(safe-area-inset-bottom));z-index:70;pointer-events:none;justify-content:center;display:flex;position:fixed}.toast{pointer-events:auto;background:var(--panel2);border:1.5px solid var(--accent);border-radius:99rem;align-items:center;gap:1.2rem;max-width:calc(100vw - 2rem);min-height:3rem;padding:.55rem .6rem .55rem 1.3rem;display:flex;position:relative;overflow:hidden;box-shadow:0 1rem 2.5rem #0006}.toast-label{white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.toast:not(:has(.btn)){padding-right:1.3rem}.toast-timer{background:var(--accent);transform-origin:0;opacity:.6;width:100%;height:2px;position:absolute;bottom:0;left:0}.app.compact{--row:3rem;--tabbar-h:4.1rem;--bottom-gap:max(env(safe-area-inset-bottom), .75rem);height:100dvh;padding:env(safe-area-inset-top) 0 0;background:var(--bg);flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0}@media (display-mode:standalone){.app.compact{height:100vh}}@media (width<=899px),(aspect-ratio<=23/20){html{font-size:clamp(13px,3.7vw,17px)}}.compact-top{background:var(--bg);z-index:2;flex-direction:column;gap:.6rem;padding:.7rem 1rem .55rem;display:flex;position:relative}.compact .topbar{min-height:2.6rem}.compact .date-nav h1{font-size:1.3rem}.compact .nav-arrow{width:1.8rem}.compact .btn{height:2.3rem;padding:0 .95rem}.icon-add{border-radius:.85rem;place-items:center;width:2.6rem;height:2.6rem;display:grid;padding:0!important}.icon-add svg{width:1.3rem;height:1.3rem}.compact .tiles{grid-template-columns:repeat(2,1fr);gap:.5rem}.compact .tile{padding:.55rem .8rem}.compact .tile .label{font-size:.7rem}.compact .tile-value{font-size:1.3rem}.compact .tile-sub{font-size:.7rem}.compact .tile svg{width:2.4rem!important;height:2.4rem!important}.pages{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;flex:1;min-height:0;display:flex;overflow:auto hidden}.pages::-webkit-scrollbar{display:none}.page{scroll-snap-align:start;scroll-snap-stop:always;overscroll-behavior-y:contain;padding:.2rem 1rem calc(var(--tabbar-h) + var(--bottom-gap) + 1rem);scrollbar-width:none;flex-direction:column;flex:0 0 100%;gap:.7rem;display:flex;overflow-y:auto}.page::-webkit-scrollbar{display:none}.page>.card{flex:none}.page .scroll{flex:none;padding-bottom:0;overflow:visible;-webkit-mask-image:none;mask-image:none}.page .quote-card{min-height:15rem}.page .bottom-card{min-height:12rem}.page .add-slot{min-height:6rem}.compact .habit-row{margin:0 -.4rem;padding:0 .4rem}.compact .check{width:1.65rem;height:1.65rem}.compact .glass{height:2rem}.compact .wk-cell{height:1.6rem}.tabbar{left:.9rem;right:.9rem;bottom:var(--bottom-gap);height:var(--tabbar-h);z-index:5;border:1px solid color-mix(in srgb, var(--line) 80%, transparent);background:color-mix(in srgb, var(--panel) 78%, transparent);-webkit-backdrop-filter:blur(18px)saturate(1.6);border-radius:99rem;gap:.2rem;padding:.35rem;display:flex;position:absolute;box-shadow:0 .6rem 2rem #00000059}.tab{color:var(--sub);transition:color .3s var(--ease);border-radius:99rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;font-size:.7rem;font-weight:600;display:flex;position:relative}.tab>.tab-icon,.tab>.tab-label{z-index:1;position:relative}.tab-icon{width:1.35rem;height:1.35rem}.tab.on{color:var(--accent)}.tab-pill{background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:99rem;position:absolute;inset:0}@media (width<=899px),(aspect-ratio<=23/20){.modal-back{place-items:end center;padding:0}.modal{width:100%;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));border-radius:1.4rem 1.4rem 0 0;max-height:90dvh}.modal.wide{width:100%}.kind-grid{grid-template-columns:1fr}.field-row{flex-wrap:wrap}.hist-stats{grid-template-columns:repeat(2,1fr)}.toast-wrap{bottom:calc(4.1rem + max(env(safe-area-inset-bottom), .75rem) + .7rem)}}@media (prefers-reduced-motion:reduce){.pulse,.tile.glow{animation:none}}.plus-btn{width:2rem;padding:0;font-size:1.15rem;font-weight:600}.quote-foot{margin-bottom:0}.flow-head-right{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.btn.fill-now{background:var(--now);color:var(--on)}.habit-row.flash{animation:2s ease-out flashrow}@keyframes flashrow{0%,50%{background:color-mix(in srgb, var(--accent) 25%, transparent)}to{background:0 0}}.card.flash{animation:2s ease-out flashcard}@keyframes flashcard{0%,50%{border-color:var(--accent);box-shadow:inset 3.5px 0 0 var(--c), 0 0 1.2rem color-mix(in srgb, var(--accent) 35%, transparent)}}.cards-scroll{scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;--fl:0rem;--fr:0rem;min-height:0;-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fl), #000 calc(100% - var(--fr)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fl), #000 calc(100% - var(--fr)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--fl), #000 calc(100% - var(--fr)), transparent);flex:1;gap:.95rem;display:flex;overflow:auto hidden}.cards-scroll::-webkit-scrollbar{display:none}.cards-scroll>*{flex:0 0 calc((100% - (var(--per) - 1) * .95rem) / var(--per));min-width:0}.cards-scroll.overflowing{cursor:grab;-webkit-user-select:none;user-select:none}.cards-scroll.overflowing input,.cards-scroll.overflowing textarea{-webkit-user-select:text;user-select:text}.cards-scroll.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.cards-scroll.dragging *{pointer-events:none}.cards-scroll.fade-left{--fl:1.6rem}.cards-scroll.fade-right{--fr:2.4rem}.scroll-thumb-track{cursor:pointer;touch-action:none;align-items:center;width:5.5rem;height:1rem;display:flex;position:absolute;bottom:-1.05rem;left:50%;transform:translate(-50%)}.scroll-thumb-track:before{content:"";background:var(--line);height:.28rem;transition:height .3s var(--ease);border-radius:99rem;position:absolute;inset:auto 0}.scroll-thumb{background:var(--sub);height:.28rem;transition:height .3s var(--ease), background .3s var(--ease);border-radius:99rem;position:absolute}.scroll-thumb-track:hover:before,.scroll-thumb-track.active:before,.scroll-thumb-track:hover .scroll-thumb,.scroll-thumb-track.active .scroll-thumb{height:.45rem}.scroll-thumb-track:hover .scroll-thumb,.scroll-thumb-track.active .scroll-thumb{background:var(--accent)}.auth-wrap{place-items:center;min-height:100dvh;padding:1.5rem;display:grid;overflow-y:auto}.auth-card{background:var(--panel);border:1px solid var(--line);border-radius:1.5rem;flex-direction:column;gap:1.1rem;width:min(26rem,100%);padding:2rem 1.8rem 1.4rem;display:flex;box-shadow:0 2rem 5rem #00000059}.auth-logo{color:var(--accent);text-align:center;letter-spacing:.01em;font-size:2.1rem;font-weight:800}.auth-sub{text-align:center;color:var(--sub);margin-top:-.6rem}.auth-seg{margin:.3rem 0 .1rem}.auth-submit{width:100%;height:3rem;margin-top:.2rem;font-size:1rem}.auth-skip{color:var(--dim);align-self:center;font-weight:600}.pw-wrap{position:relative}.pw-toggle{color:var(--dim);font-size:.8rem;font-weight:700;position:absolute;top:50%;right:.7rem;transform:translateY(-50%)}.pw-toggle:hover{color:var(--accent)}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1.1rem;height:1.1rem;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn:disabled{opacity:.7}.avatar{background:color-mix(in srgb, var(--accent) 22%, var(--panel2));width:2.6rem;height:2.6rem;color:var(--accent);border:1.5px solid color-mix(in srgb, var(--accent) 45%, transparent);transition:background .3s var(--ease);border-radius:50%;flex-shrink:0;place-items:center;font-size:1.05rem;font-weight:800;display:grid;position:relative}.avatar:hover{background:color-mix(in srgb, var(--accent) 32%, var(--panel2))}.avatar.big{border-width:0;width:2.8rem;height:2.8rem}.sync-dot{border:2px solid var(--bg);background:var(--body);width:.7rem;height:.7rem;transition:background .3s var(--ease);border-radius:50%;position:absolute;bottom:-1px;right:-1px}.sync-dot.saving{background:var(--money)}.sync-dot.bad{background:var(--danger)}.profile-head{flex-direction:row;align-items:center;gap:.8rem}.profile-name{font-size:1.02rem;font-weight:800}.sync-line.bad{color:var(--danger)}.compact .avatar{width:2.4rem;height:2.4rem}.compact .top-actions{gap:.45rem}.avatar{overflow:visible}.avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.avatar.big{width:3.4rem;height:3.4rem;font-size:1.3rem}.photo-btn{position:relative}.cam-badge{background:var(--accent);width:1.4rem;height:1.4rem;color:var(--on);border:2px solid var(--panel2);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-.2rem;right:-.2rem}.cam-badge svg{width:.8rem;height:.8rem}.main>:nth-child(2){flex-shrink:0}.block-grid{--gap:.95rem;row-gap:var(--gap);min-height:0;margin:0 calc(var(--gap) / -2);flex:1;grid-template-columns:repeat(48,minmax(0,1fr));column-gap:0;display:grid;position:relative}.block{margin:0 calc(var(--gap) / 2);border-radius:var(--r);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.block>*{flex:1;min-height:0}.block-inner{flex-direction:column;min-width:0;min-height:0;display:flex}.block-inner>*{flex:1;min-height:0}.block.placeholder{border:2px dashed color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent)}.is-editing .block:not(.placeholder){cursor:grab}.block.wiggle:not(.placeholder){animation:.32s ease-in-out infinite alternate wiggle;animation-delay:var(--wiggle-delay)}@keyframes wiggle{0%{rotate:-.22deg}to{rotate:.22deg}}.block-ghost{z-index:80;pointer-events:none;border-radius:var(--r);box-shadow:0 1.6rem 3.5rem #00000080, 0 0 0 2px color-mix(in srgb, var(--accent) 60%, transparent);flex-direction:column;display:flex;position:fixed;top:0;left:0}.block-ghost>*{flex:1;min-height:0}body.block-dragging,body.block-dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.edit-hint{color:var(--accent);white-space:nowrap;font-size:.82rem;font-weight:600}@media (prefers-reduced-motion:reduce){.block.wiggle{animation:none}}.logo-gif{height:var(--head-h);object-fit:contain;border-radius:.7rem;flex-shrink:0;width:auto;max-width:7.5rem}.gif-settings{margin-bottom:.4rem}.gif-row{align-items:flex-start;gap:.9rem;display:flex}.gif-preview{background:var(--panel2);width:4.6rem;height:4.6rem;color:var(--dim);border-radius:.9rem;flex-shrink:0;place-items:center;font-size:.75rem;display:grid;overflow:hidden}.gif-preview img{object-fit:contain;width:100%;height:100%}.gif-form{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.intro{z-index:100;background:var(--bg);cursor:pointer;background-image:radial-gradient(60rem 30rem at 50% 45%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 70%);-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:fixed;inset:0}.intro-stage{text-align:center;flex-direction:column;align-items:center;padding:1rem;display:flex}.intro-mark-wrap{place-items:center;height:5.5rem;margin-bottom:1.2rem;display:grid;position:relative}.intro-mark{background:var(--panel);width:1.4rem;height:1.4rem;box-shadow:0 .8rem 2.4rem color-mix(in srgb, var(--accent) 30%, transparent);border-radius:50%;place-items:center;display:grid;position:relative;overflow:hidden}.intro-mark.tile{box-shadow:0 .8rem 2.4rem color-mix(in srgb, var(--accent) 22%, transparent), 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent)}.intro-mark-dot{background:var(--accent);position:absolute;inset:0}.intro-mark svg{width:100%;height:100%;position:absolute;inset:0}.intro-confetti{border-radius:50%;position:absolute;top:50%;left:50%}.intro-kicker{color:var(--sub);letter-spacing:.12em;text-transform:uppercase;min-height:1.4rem;font-size:1.05rem;font-weight:600}.intro-title{min-height:1.15em;color:var(--text);margin:.2rem 0 .4rem;font-size:clamp(3rem,10vw,6rem);line-height:1.1}.intro-title .wm-dot{vertical-align:.5em}.intro-title span{display:inline-block}.intro-by{color:var(--sub);align-items:center;gap:.35rem;min-height:1.6rem;font-size:1.05rem;display:flex}.intro-aizu{color:var(--streaks);font-size:1.2em;font-weight:800;display:inline-block}.intro-heart{color:var(--streaks);display:inline-block}.intro-line{min-height:1.8rem;color:var(--text);margin-top:1.6rem;font-size:1.25rem;font-weight:700}.intro-line span{display:inline-block}.intro-skip{bottom:calc(14vh + env(safe-area-inset-bottom));text-align:center;color:var(--sub);letter-spacing:.02em;font-size:.9rem;font-weight:500;position:absolute;left:0;right:0}.auth-gif{object-fit:contain;border-radius:.9rem;align-self:center;max-width:9rem;height:4.5rem;margin-bottom:-.3rem}.auth-by{color:var(--streaks);white-space:nowrap;font-weight:700}.intro-kicker span{display:inline-block}.intro-by-inner{align-items:center;gap:.35rem;display:inline-flex}.intro:focus-visible{outline:none}.is-editing .block:not(.placeholder):after{content:"";border-radius:calc(var(--r) + 5px);pointer-events:none;border:1.5px dashed color-mix(in srgb, var(--accent) 55%, transparent);animation:outline-in .4s var(--ease) both;position:absolute;inset:-5px}@keyframes outline-in{0%{opacity:0;inset:2px}to{opacity:1;inset:-5px}}.block.placeholder{border-radius:var(--r)}.wide .quote-card{container-type:size}@container (height<=210px){.quote-mark{display:none}}.settings{grid-template-columns:12rem minmax(0,1fr);gap:1.5rem;min-height:min(30rem,70dvh);display:grid}.settings-nav{border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:.15rem;min-height:100%;padding-right:1rem;display:flex;position:sticky;top:0}.settings-tab{color:var(--sub);text-align:left;white-space:nowrap;border-radius:.75rem;align-items:center;gap:.65rem;padding:.62rem .8rem;font-size:.92rem;font-weight:600;display:flex;position:relative}.settings-tab svg{z-index:1;flex-shrink:0;width:1.15rem;height:1.15rem;position:relative}.settings-tab span{z-index:1;position:relative}.settings-tab:hover:not(.on),.settings-tab.on{color:var(--text)}.settings-tab.on svg{color:var(--accent)}.settings-pill{border-radius:inherit;background:var(--panel2);position:absolute;inset:0}.settings-body{min-width:0}.settings-body>.section-title:first-child,.settings-body>.gif-settings:first-child .section-title{margin-top:0}.key-list{flex-direction:column;display:flex}.key-row{border-bottom:1px solid var(--line);align-items:center;gap:.8rem;padding:.55rem 0;font-size:.92rem;display:flex}.key-row>span{gap:.25rem;min-width:4.5rem;display:flex}@media (width<=899px),(aspect-ratio<=23/20){.settings{grid-template-columns:1fr;gap:1rem;min-height:0}.settings-nav{border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none;flex-direction:row;min-height:0;padding:0 0 .7rem;position:static;overflow-x:auto}.settings-tab{padding:.5rem .75rem;font-size:.85rem}}.top-hints{color:var(--dim);opacity:.7;white-space:nowrap;gap:.9rem;min-width:0;margin-left:auto;margin-right:.4rem;font-size:.75rem;transition:opacity .2s;display:flex;overflow:hidden}.top-hints:hover{opacity:1}.top-hints span{align-items:center;gap:.3rem;display:inline-flex}.top-hints kbd{padding:0 .3rem;font-size:.7rem}@media (hover:none),(width<=1250px){.top-hints{display:none}}.card.type-gif{padding:0;overflow:hidden}.gif-fill{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.page .card.type-gif{min-height:12rem}.gif-caption{color:#fff;-webkit-backdrop-filter:blur(8px);white-space:nowrap;text-overflow:ellipsis;background:#00000073;border-radius:99rem;max-width:calc(100% - 1.6rem);padding:.3rem .7rem;font-size:.82rem;font-weight:700;position:absolute;bottom:.8rem;left:.8rem;overflow:hidden}.gif-menu{-webkit-backdrop-filter:blur(8px);color:#fff;background:#00000059;border-radius:.6rem;position:absolute;top:.5rem;right:.5rem}.gif-menu .dots-btn{color:#fff}.gif-bad{text-align:center;color:var(--dim);margin:auto;padding:1.2rem;font-size:.85rem}.add-tile{text-align:center;cursor:pointer;border:1.5px dashed color-mix(in srgb, var(--line) 90%, var(--sub));color:var(--sub);transition:border-color .25s var(--ease), color .25s var(--ease), background .25s var(--ease);background:0 0;justify-content:center;align-items:center;gap:.35rem}.add-tile:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, transparent)}.add-tile-plus{background:var(--panel2);width:2.8rem;height:2.8rem;color:var(--text);transition:background .25s var(--ease), color .25s var(--ease), transform .35s var(--ease);border-radius:50%;place-items:center;margin-bottom:.25rem;display:grid}.add-tile-plus svg{width:1.3rem;height:1.3rem}.add-tile:hover .add-tile-plus{background:var(--accent);color:var(--on);transform:rotate(90deg)}.add-tile b{color:var(--text);font-size:.95rem}.add-tile small{color:var(--dim);font-size:.8rem}.is-editing .block[data-block=add]:after{display:none}.is-editing .block[data-block=add]{cursor:default;animation:none}.modal.settings-modal{flex-direction:column;height:min(88dvh,42rem);display:flex;overflow:hidden}.settings-modal .settings{flex:1;min-height:0}.settings-modal .settings-body{scrollbar-width:thin;overscroll-behavior:contain;min-height:0;padding-right:.4rem;overflow-y:auto}.settings-modal .settings-nav{min-height:0;position:static}@media (width<=899px),(aspect-ratio<=23/20){.modal.settings-modal{height:88dvh}.settings-modal .settings{grid-template-rows:auto minmax(0,1fr)}}.switch-row{background:var(--panel2);cursor:pointer;border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .9rem;display:flex}.switch-row b{font-size:.92rem;display:block}.switch-row small{color:var(--sub);margin-top:.1rem;font-size:.8rem;display:block}.switch{background:var(--line);border-radius:99rem;flex-shrink:0;justify-content:flex-start;width:2.9rem;height:1.7rem;padding:.2rem;transition:background .25s;display:flex}.switch.on{background:var(--accent);justify-content:flex-end}.switch-knob{background:#fff;border-radius:50%;width:1.3rem;height:1.3rem;box-shadow:0 1px 3px #0000004d}.no-bars .accent-card{box-shadow:none;padding-left:1.25rem}.menu-row{justify-content:space-between;align-items:center;gap:.8rem;padding:.35rem .55rem .35rem .8rem;font-size:.9rem;display:flex}.seg.mini{padding:.18rem}.seg.mini .seg-btn{flex:none;height:1.7rem;padding:0 .65rem;font-size:.8rem}.year-title{cursor:pointer;background:0 0;padding:0}.wide .area-card{container-type:inline-size}@container (width<=15rem){.habit-row .badge,.water-amt{display:none}.habit-row{gap:.6rem}}.card .dots-btn.always,.card .list-dots,.gif-menu{opacity:0;transition:opacity .2s var(--ease)}.card:hover .dots-btn.always,.card:hover .list-dots,.card:hover .gif-menu,.card:focus-within .dots-btn.always,.card:focus-within .list-dots,.card:focus-within .gif-menu{opacity:1}@media (hover:none){.card .dots-btn.always,.card .list-dots,.gif-menu{opacity:.8}}.btn.fill-money{background:var(--money);color:var(--on)}.savings-actions{justify-content:flex-start;gap:.5rem}.block-title{text-align:left;cursor:pointer;transition:filter .2s var(--ease), opacity .2s var(--ease);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;overflow:hidden}.block-title:hover,.year-title:hover{filter:brightness(1.3)saturate(1.1)}.block-title:active{opacity:.7}.year-title{transition:filter .2s var(--ease)}.modal.focus-modal{flex-direction:column;width:min(46rem,100%);height:min(86dvh,44rem);font-size:1.06rem;display:flex;overflow:hidden}.modal.focus-modal.list{width:min(70rem,100%)}.modal.focus-modal.week{width:min(64rem,100%)}.modal.focus-modal.flow{width:min(40rem,100%)}.modal.focus-modal.type-gif{width:min(52rem,100%)}.focus-body{flex:1;gap:1rem;min-height:0;display:flex}.focus-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.focus-main>*{flex:1;min-height:0}.focus-modal.list .focus-main{flex:0 0 22rem}.focus-body .card{background:var(--panel2);border-color:#0000}.focus-body .card-head{min-height:1.6rem}.focus-modal .habit-row{--row:2.6rem}.focus-modal .habit-row .badge{display:inline-flex}.focus-modal .flow-item{padding:.35rem 0}.focus-modal .area-card{container-type:normal}.focus-side{flex:1;min-width:0}.fh-grid{align-content:start;align-items:center;gap:.3rem .25rem;display:grid}.fh-day{color:var(--sub);font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;font-size:.78rem;font-weight:700;line-height:1.15;display:flex}.fh-day small{color:var(--dim);font-size:.62rem;font-weight:600}.fh-day.today{color:var(--text)}.fh-name{white-space:nowrap;text-overflow:ellipsis;padding-right:.4rem;font-size:.9rem;font-weight:500;overflow:hidden}.fh-cell{aspect-ratio:1;background:color-mix(in srgb, var(--text) 13%, var(--panel2));border-radius:.4rem;place-items:center;width:100%;display:grid}.fh-cell:hover:not(:disabled){outline:1.5px solid color-mix(in srgb, var(--c) 70%, transparent)}.fh-cell.on{background:var(--c)}.fh-cell.today:not(.on){box-shadow:inset 0 0 0 1.5px var(--text)}.fh-cell:disabled{opacity:.3}.fh-cell svg{fill:none;width:70%;height:70%;stroke:var(--on);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round}@media (width<=899px),(aspect-ratio<=23/20){.modal.focus-modal{height:88dvh}.focus-body{flex-direction:column;overflow-y:auto}.focus-modal.list .focus-main{flex:none;min-height:18rem}.focus-side{flex:none}}.date-year{color:var(--sub);font-weight:700}.clock-row{cursor:pointer;text-align:left;border-radius:.6rem;width:100%}.clock-row:hover{background:var(--panel2)}.clock-row .seg-btn{place-items:center;display:grid}.focus-name{font:inherit;color:var(--text);background:0 0;border:0;border-radius:.5rem;outline:none;width:100%;min-width:0;margin-left:-.4rem;padding:.1rem .4rem;font-size:1.35rem;font-weight:800;transition:background .2s}.focus-name:hover,.focus-name:focus{background:var(--panel2)}.modal-head{gap:.8rem}.focus-modal .accent-card{box-shadow:none;padding-left:1.25rem}.focus-modal.box{width:min(60rem,100%)}.focus-modal.box .focus-main .card-head{display:none}.focus-modal.box .focus-main{flex:1.3}.focus-modal.type-gif .focus-main{flex:1.6}.focus-modal .details{flex:1}.details-form{gap:.9rem}.details-foot{border-top:1px solid var(--line);justify-content:flex-end;margin-top:.3rem;padding-top:.6rem;display:flex}.link-chip{height:1.6rem;color:var(--dim);background:var(--panel2);border-radius:99rem;flex-shrink:0;align-items:center;gap:.3rem;max-width:8rem;padding:0 .45rem;font-size:.75rem;font-weight:600;display:inline-flex}.link-chip svg{flex-shrink:0;width:.95rem;height:.95rem}.link-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link-chip:hover{color:var(--text)}.link-chip.on{color:var(--c);background:color-mix(in srgb, var(--c) 15%, transparent)}.link-list{max-height:15rem;overflow-y:auto}.link-list .dot{border-radius:50%;width:.55rem;height:.55rem;margin-right:.5rem;display:inline-block}.linked-habit{width:1.05rem;height:1.05rem;box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--c) 70%, transparent);border-radius:50%;flex-shrink:0;place-items:center;margin-left:auto;transition:background .3s;display:grid}.linked-habit.on{background:var(--c);box-shadow:none}.linked-habit svg{fill:none;width:80%;height:80%;stroke:var(--on);stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round}.page .add-tile{flex:none;min-height:8.5rem}.page>.logo{padding:.2rem .2rem 0}.focus-body .bar,.focus-body .glass:not(.on){background:color-mix(in srgb, var(--text) 12%, var(--panel2))}.flow-time-in{width:5.9rem}.flow-time-btn~.flow-dot{display:none}.flow-item .inline-input{flex:1;min-width:3rem}.flow-item:has(.flow-time-btn){gap:.35rem}.modal.whatsnew-modal{flex-direction:column;width:min(40rem,100%);height:min(86dvh,46rem);display:flex;overflow:hidden}.whatsnew{scrollbar-width:thin;overscroll-behavior:contain;flex:1;min-height:0;padding-right:.3rem;overflow-y:auto}.release-head{align-items:center;gap:.6rem;margin-bottom:.5rem;display:flex}.version-badge{background:var(--accent);color:var(--on);border-radius:99rem;padding:.2rem .6rem;font-size:.78rem;font-weight:800}.version-badge.small{padding:.1rem .45rem;font-size:.7rem}.release-title{font-size:1.45rem;font-weight:800;line-height:1.2}.release-intro{color:var(--sub);margin:.4rem 0 1rem;font-size:.95rem;line-height:1.45}.release-sections{flex-direction:column;gap:.7rem;display:flex}.release-section{background:var(--panel2);border-radius:1rem;padding:.85rem 1rem}.release-section-title{align-items:center;gap:.55rem;margin-bottom:.35rem;font-size:1rem;font-weight:800;display:flex}.release-emoji{font-size:1.25rem}.release-section ul{flex-direction:column;gap:.3rem;margin:0;padding-left:1.15rem;display:flex}.release-section li{color:var(--text);font-size:.9rem;line-height:1.45}.release-section li::marker{color:var(--accent)}.whatsnew-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;margin-top:.6rem;padding-top:.9rem;display:flex}.whatsnew-item{justify-content:space-between;align-items:center;display:flex}.auth-icon{border-radius:1.1rem;width:4rem;height:4rem;margin:0 auto .4rem;display:block}.code-field{letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.auth-terms{text-align:center;color:var(--dim);margin-top:.5rem;font-size:.75rem;text-decoration:none;display:block}.auth-terms:hover{color:var(--sub)}.demo-chip{background:color-mix(in srgb, var(--accent) 12%, var(--panel));border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text);white-space:nowrap;border-radius:99rem;align-items:center;gap:.5rem;margin-left:auto;padding:.25rem .3rem .25rem .8rem;font-size:.8rem;display:flex}.compact .demo-chip{margin-left:auto;padding:.2rem}.about-row{background:var(--panel2);border-radius:.7rem;justify-content:space-between;margin-bottom:.7rem;padding:.55rem .8rem;font-size:.92rem;display:flex}.ok-note{color:var(--body);background:color-mix(in srgb, var(--body) 12%, transparent);border-radius:.7rem;padding:.6rem .8rem;font-size:.85rem;line-height:1.45}.forgot-link{color:var(--sub);align-self:center;font-size:.82rem}.auth-forgot-head{text-align:center;flex-direction:column;gap:.25rem;margin:.2rem 0 .4rem;display:flex}.auth-forgot-head b{font-size:1.05rem}.auth-forgot-head span{color:var(--sub);font-size:.85rem}.profile-email{text-overflow:ellipsis;white-space:nowrap;max-width:11rem;font-size:.75rem;overflow:hidden}.add-email-nudge{text-align:left;background:color-mix(in srgb, var(--accent) 13%, transparent);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:.8rem;flex-direction:column;gap:.15rem;width:calc(100% - 1rem);margin:.1rem .5rem .5rem;padding:.6rem .75rem;display:flex}.add-email-nudge b{color:var(--accent);font-size:.88rem}.add-email-nudge span{color:var(--sub);font-size:.76rem;line-height:1.35}.add-email-nudge:hover{background:color-mix(in srgb, var(--accent) 20%, transparent)}.email-reminder{z-index:60;background:var(--panel);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));border-radius:1.1rem;flex-direction:column;gap:.7rem;width:min(23rem,100vw - 2rem);padding:1rem 1.1rem;display:flex;position:fixed;bottom:1.4rem;right:1.4rem;box-shadow:0 1.2rem 3rem #0006}.email-reminder b{margin-bottom:.15rem;font-size:.95rem;display:block}.email-reminder span{color:var(--sub);font-size:.82rem;line-height:1.4}.email-reminder-btns{justify-content:flex-end;gap:.5rem;display:flex}.compact .email-reminder,.app.compact~.email-reminder{bottom:calc(5.2rem + env(safe-area-inset-bottom));right:1rem}@media (width<=899px),(aspect-ratio<=23/20){.email-reminder{bottom:calc(5.2rem + env(safe-area-inset-bottom));width:auto;left:1rem;right:1rem}}.auth-tagline{text-align:center;color:var(--sub);margin:-.1rem 0 .6rem;font-size:1.05rem}.auth-tagline b{color:var(--text);font-weight:800}.auth-row{justify-content:space-between;align-items:center;margin-top:.1rem;display:flex}.auth-small{color:var(--dim);background:0 0;padding:.15rem 0;font-size:.78rem;transition:color .2s}.auth-small:hover{color:var(--text)}.auth-row .auth-small:only-child{margin-right:auto}.auth-foot{color:var(--dim);opacity:.75;justify-content:center;gap:.4rem;margin-top:.4rem;font-size:.68rem;display:flex}.auth-foot a{color:inherit;text-decoration:none}.auth-foot a:hover{color:var(--sub)}.wordmark{letter-spacing:-.03em;color:var(--text);white-space:nowrap;font-family:Nunito,Inter,system-ui,sans-serif;font-weight:900;line-height:1;display:inline-block}.wm-dot{background:var(--accent);vertical-align:.5em;border-radius:50%;width:.19em;height:.19em;margin-left:.03em;display:inline-block}.logo .wordmark{font-size:2.15rem}.auth-brand{text-align:center;margin:.3rem 0 .1rem;font-size:2.6rem}.flow-time-btn{background:var(--bg);border:1px solid var(--line);min-width:4.6rem;height:1.9rem;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:left;border-radius:.45rem;flex-shrink:0;padding:0 .5rem;font-size:.82rem;font-weight:600}.flow-time-btn:hover{border-color:var(--now)}.time-pick{align-items:center;gap:.35rem;margin-top:.4rem;display:flex}.time-pick select{background:var(--bg);color:var(--text);border:1px solid var(--line);height:2.1rem;font:inherit;font-variant-numeric:tabular-nums;border-radius:.5rem;padding:0 .4rem;font-size:.9rem}.time-pick>span{color:var(--dim);font-weight:700}.time-pick .ampm{margin-left:auto}.feedback-sent{flex-direction:column;gap:.5rem;display:flex}.feedback-sent b{font-size:1.15rem}
