:root{--bg:#f1f4ee;--card:#fff;--ink:#101810;--ink-2:#3c463c9e;--ink-3:#3c463c52;--sep:#3c463c29;--fill:#76807621;--tint:#23863a;--leaf:#4cb944;--leaf-hi:#8fe06a;--red:#e5372b;--bar:#f6f8f4c7;--shadow:0 10px 30px #1e6b2f59;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, sans-serif;--rounded:ui-rounded, "SF Pro Rounded", -apple-system, system-ui, sans-serif;--ease:cubic-bezier(.2, .9, .25, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#000;--card:#1b1d1b;--ink:#f1f6ee;--ink-2:#e8f0e499;--ink-3:#e8f0e44d;--sep:#e8f0e424;--fill:#828c823d;--tint:#6cd65a;--bar:#121412b8;--sheet:#151715;--sheet-card:#252825;--shadow:0 10px 30px #4cb94447}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:17px/1.35 var(--font);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{opacity:.4;cursor:default}:focus-visible{outline:2px solid var(--tint);outline-offset:2px;border-radius:6px}.icon{flex:none;display:block}.destructive{color:var(--red)}.navbar{z-index:5;min-height:calc(48px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0 8px;background:var(--bar);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);box-shadow:0 .5px 0 var(--sep);align-items:center;gap:8px;display:flex;position:sticky;top:0}.nav-back{color:var(--tint);align-items:center;min-width:0;padding:8px 4px;display:flex}.nav-back span{white-space:nowrap;text-overflow:ellipsis;max-width:55vw;overflow:hidden}.nav-actions{gap:4px;margin-left:auto;display:flex}.brand{font:700 17px/1 var(--rounded);letter-spacing:-.02em;align-items:center;gap:8px;padding-left:8px;display:flex}.icon-btn{width:40px;height:40px;color:var(--tint);border-radius:50%;place-items:center;display:grid}.icon-btn.destructive{color:var(--red)}.icon-btn:active{background:var(--fill)}.text-btn{color:var(--tint);padding:10px 8px;font-size:17px}.text-btn.strong{font-weight:600}.page{max-width:640px;padding:0 16px calc(130px + env(safe-area-inset-bottom));margin:0 auto}.push{animation:push .42s var(--ease)}@keyframes push{0%{opacity:0;transform:translate(28%)}}.large-title{letter-spacing:.01em;overflow-wrap:anywhere;margin:6px 4px 10px;font-size:34px;font-weight:700;line-height:41px}.section{letter-spacing:-.01em;margin:26px 4px 8px;font-size:20px;font-weight:700}.offline{z-index:6;padding:calc(6px + env(safe-area-inset-top)) 16px 6px;color:#ffd36b;background:#3b2f0d;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex;position:sticky;top:0}.offline+.navbar{top:0}.searchbar{background:var(--fill);height:38px;color:var(--ink-2);border-radius:11px;align-items:center;gap:6px;padding:0 10px;display:flex}.searchbar input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:17px}.searchbar input::placeholder{color:var(--ink-2)}.searchbar input::-webkit-search-cancel-button{filter:grayscale()}.group{background:var(--card);border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.group>li{position:relative}.group>li+li:before{content:"";z-index:1;background:var(--sep);height:.5px;position:absolute;top:0;left:16px;right:0}.group>li:has(.row-icon)+li:before{left:54px}.row{text-align:left;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;align-items:center;gap:12px;width:100%;min-height:46px;padding:10px 16px;transition:background .15s;display:flex;position:relative}a.row:active,button.row:active,label.row:active{background:var(--fill);transition:none}.row>.icon:last-child{color:var(--ink-3)}.row-icon{width:26px;color:var(--tint);flex:none;place-items:center;display:grid}.row-main{text-align:left;flex:1;min-width:0}.row-value{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;max-width:50%;overflow:hidden}.row.tint .row-main{color:var(--tint)}.row-select{opacity:0;width:100%;font-size:16px;position:absolute;inset:0}.note-row{align-items:flex-start;padding-top:11px;padding-bottom:11px}.note-row .row-main strong{white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.note-row .row-main p{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:2px 0 0;font-size:15px;display:-webkit-box;overflow:hidden}.note-row .row-main p time{color:var(--ink);opacity:.78;margin-right:4px}.note-row>time{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:15px}.pending .row-icon{color:var(--ink-2);margin-top:1px}.row-buttons{gap:18px;margin-top:6px;display:flex}.row-buttons button{color:var(--tint);font-size:15px;font-weight:500}.row-buttons .destructive{color:var(--red)}.empty{text-align:center;color:var(--ink-2);padding:34px 24px}.empty img{opacity:.9;margin-bottom:6px}.empty p{max-width:28ch;margin:0 auto}.drag-ghost{z-index:30;pointer-events:none;background:var(--card);opacity:.88;animation:lift .2s var(--ease);border-radius:12px;margin:0;position:fixed;transform:scale(.9)rotate(-1.5deg);box-shadow:0 12px 32px #00000047}@keyframes lift{0%{transform:none}}.drag-source{opacity:.35}.dragging,.dragging *{-webkit-user-select:none;user-select:none}[data-project]{transition:background .15s,box-shadow .15s}[data-project].drop-over{background:color-mix(in srgb, var(--tint) 18%, var(--card));box-shadow:inset 0 0 0 2px var(--tint)}.fab-wrap{z-index:4;pointer-events:none;padding:30px 0 calc(18px + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--bg) 60%);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.fab{pointer-events:auto;width:80px;height:80px;box-shadow:var(--shadow);transition:transform .25s var(--ease);-webkit-tap-highlight-color:transparent;border-radius:50%;padding:0;overflow:hidden}.fab img{width:100%;height:100%;display:block}.fab:active{transform:scale(.9)}.record-sheet{z-index:20;color:#f1f6ee;animation:sheet-up .5s var(--ease);background:radial-gradient(120% 70% at 50% 0,#10240f,#020402 70%);position:fixed;inset:0}@keyframes sheet-up{0%{transform:translateY(100%)}}.record-sheet>*{height:100%}.record-surface{height:100%;padding:calc(10px + env(safe-area-inset-top)) 20px calc(40px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex}.record-top{justify-content:center;align-items:center;width:100%;min-height:44px;display:flex;position:relative}.record-top .icon-btn{color:#f1f6ee;background:#ffffff1a;position:absolute;left:-6px}.record-where{color:#f1f6eeb3;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;max-width:60%;font-size:15px;display:flex;overflow:hidden}.record-title{text-align:center;width:100%;max-width:480px;font:600 24px/1.2 var(--font);letter-spacing:-.01em;color:#fff;caret-color:var(--leaf);background:0 0;border:0;outline:0;margin-top:28px}.record-title::placeholder{color:#f1f6ee59}.record-clock{text-align:center;margin:auto 0}.record-time{font:300 64px/1 var(--rounded);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.record-clock p{color:#f1f6ee99;margin:10px 0 0;font-size:15px}.record-controls{align-items:center;gap:36px;margin-bottom:18vh;display:flex}.ctl{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:64px;height:64px;transition:transform .2s var(--ease);background:#ffffff1f;border-radius:50%;place-items:center;display:grid}.ctl.done{background:var(--leaf);width:80px;height:80px;box-shadow:0 8px 32px #4cb94473}.ctl:active{transform:scale(.9)}.note-page{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.note-title{letter-spacing:.005em;width:100%;color:var(--ink);background:0 0;border:0;outline:0;margin:6px 0 0;padding:0 4px;font-size:28px;font-weight:700;line-height:34px}.note-title::placeholder{color:var(--ink-3)}.note-meta{color:var(--ink-2);margin:4px 4px 16px;font-size:15px}.segmented{background:var(--fill);border-radius:9px;margin-bottom:14px;padding:2px;display:flex}.segmented button{height:30px;color:var(--ink-2);border-radius:7px;flex:1;justify-content:center;align-items:center;gap:5px;font-size:14px;font-weight:500;transition:background .2s,color .2s;display:flex}.segmented [aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 2px 6px #0000001f}.note-body{white-space:pre-wrap;overflow-wrap:anywhere;resize:none;field-sizing:content;background:0 0;border:0;outline:0;width:100%;min-height:6em;margin:0 0 20px;padding:4px;font-size:17px;line-height:1.6;display:block}textarea.note-body{background:var(--card);border-radius:12px;padding:12px}.toolbar{z-index:4;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--bar);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);box-shadow:0 -.5px 0 var(--sep);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.toolbar .icon-btn{border-radius:10px;width:48px;height:44px}.toast{left:50%;bottom:calc(76px + env(safe-area-inset-bottom));z-index:30;background:var(--ink);color:var(--bg);animation:toast .3s var(--ease);border-radius:99px;padding:10px 18px;font-size:15px;font-weight:600;position:fixed;transform:translate(-50%)}@keyframes toast{0%{opacity:0;transform:translate(-50%,12px)}}.toast.undo{bottom:calc(112px + env(safe-area-inset-bottom));white-space:nowrap;align-items:center;gap:16px;padding:6px 6px 6px 18px;display:flex}.toast.undo button{color:inherit;background:#7f7f7f38;border-radius:99px;padding:6px 12px;font-weight:700}.swipe{position:relative;overflow:hidden}.swipe-del{background:var(--red);color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:88px;font-size:13px;font-weight:600;display:flex;position:absolute;inset:0 0 0 auto}.swipe-row{background:var(--card);touch-action:pan-y;transition:transform .3s var(--ease);position:relative}.swipe-row.dragging-x{transition:none}.row-switch{justify-content:space-between;align-items:center;gap:12px;display:flex}.switch{appearance:none;background:var(--fill);cursor:pointer;border-radius:99px;flex:none;width:51px;height:31px;margin:0;transition:background .25s;position:relative}.switch:after{content:"";width:27px;height:27px;transition:transform .3s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 3px 8px #00000026,0 1px 1px #00000029}.switch:checked{background:var(--leaf)}.switch:checked:after{transform:translate(20px)}.sheet{width:100%;max-width:600px;max-height:90vh;padding:6px 16px calc(28px + env(safe-area-inset-bottom));background:var(--sheet,var(--bg));color:var(--ink);animation:sheet-up .4s var(--ease);border:0;border-radius:14px 14px 0 0;margin:auto auto 0}.sheet .group{background:var(--sheet-card,var(--card))}.sheet::backdrop{background:#00000059;animation:.3s fade}@keyframes fade{0%{opacity:0}}.grabber{background:var(--ink-3);border-radius:3px;width:36px;height:5px;margin:0 auto 6px}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.sheet-head h2{margin:0 4px;font-size:20px}.sheet .group+.group,.footnote+.group{margin-top:24px}.footnote{color:var(--ink-2);margin:8px 16px 0;font-size:13px;line-height:1.4}.login{max-width:400px;min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;display:flex}.login-logo{box-shadow:var(--shadow);border-radius:26px;animation:4s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-6px)rotate(-2deg)}}.login h1{font:800 28px/1.1 var(--rounded);letter-spacing:-.03em;margin:22px 0 6px}.login-sub{color:var(--ink-2);margin:0 0 28px}.login form{gap:14px;width:100%;display:grid}.fields{display:grid}.fields input{background:0 0;border:0;outline:0;min-width:0;padding:14px 16px;font-size:17px}.fields input+input{box-shadow:0 -.5px 0 var(--sep)}.form-error{color:var(--red);margin:0;font-size:15px}.btn-primary{color:#fff;background:linear-gradient(180deg, var(--leaf), #2f9a3f);border-radius:14px;height:52px;font-weight:600;box-shadow:inset 0 1px #ffffff4d}.btn-primary:active{filter:brightness(.92)}.login .text-btn{margin-top:10px}@media (prefers-reduced-motion:reduce){*,:before,:after,::backdrop{transition:none!important;animation:none!important}}
