@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-arabic-wght-normal-CGnJ-sf6.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-ext-wght-normal-BjodpZir.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-wght-normal-DveCct9I.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-hebrew-wght-normal-BIkpbuMU.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-ext-wght-normal-OacczzuJ.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:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.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{--bg: #151517;--surface: #1e1e21;--surface-2: #26262b;--line: #2a2a2f;--text: #f2f2f4;--dim: #98989f;--faint: #5b5b63;--accent: #f2a33c;--accent-soft: rgba(242, 163, 60, .14);--on-accent: #1a1204;--danger: #ff6b6b;--hover: rgba(255, 255, 255, .02);--radius: 14px;color-scheme:dark}:root[data-theme=light]{--bg: #f4f4f6;--surface: #ffffff;--surface-2: #ececf0;--line: #e2e2e7;--text: #1d1d20;--dim: #71717a;--faint: #b3b3bc;--accent: #d9820b;--accent-soft: rgba(217, 130, 11, .12);--on-accent: #ffffff;--danger: #d92d2d;--hover: rgba(0, 0, 0, .03);color-scheme:light}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{height:100%}body{min-height:100%;background:var(--bg);color:var(--text);font-family:Rubik Variable,Rubik,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.45;overscroll-behavior-y:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,textarea{font:inherit;color:inherit;background:none;border:none;outline:none}.splash{min-height:100dvh;background:var(--bg)}.app{max-width:640px;margin:0 auto;padding:0 20px calc(48px + env(safe-area-inset-bottom))}.header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:8px;position:sticky;top:0;z-index:10;background:var(--bg)}.header:after{content:"";position:absolute;inset-inline:0;top:100%;height:14px;background:linear-gradient(var(--bg),transparent);pointer-events:none}.header h1{font-size:26px;font-weight:700;letter-spacing:-.01em}.header-actions{display:flex;gap:8px;padding-top:4px}.icon-btn{position:relative;width:40px;height:40px;border-radius:12px;background:var(--surface);color:var(--dim);display:grid;place-items:center;transition:background .15s,color .15s}.icon-btn:active{background:var(--surface-2)}.icon-btn-active{background:var(--accent-soft);color:var(--accent)}.icon-btn-text{font-size:13px;font-weight:600}.badge{position:absolute;top:-4px;inset-inline-end:-4px;min-width:17px;height:17px;padding-inline:4px;border-radius:9px;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:700;display:grid;place-items:center}.not-today-banner{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:14px;font-weight:500;overflow:hidden;padding-block:4px}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.list-toggle{display:flex;gap:4px;width:fit-content;padding:4px;background:var(--surface);border-radius:12px}.done-today-count{font-size:13px;font-weight:500;color:var(--dim);white-space:nowrap}.done-today-num{font-size:15px;font-weight:700;color:var(--accent)}.list-toggle button{padding:5px 14px;border-radius:9px;font-size:13px;font-weight:600;color:var(--dim);transition:background .15s,color .15s}.list-toggle button.active{background:var(--accent-soft);color:var(--accent)}.task-cat-prefix{color:var(--dim)}.task-row-draggable{position:relative;background:var(--bg)}.drag-handle{flex-shrink:0;width:40px;height:46px;display:grid;place-items:center;color:var(--faint);touch-action:none;cursor:grab}.drag-handle:active{cursor:grabbing;color:var(--dim)}.flag-btn{flex-shrink:0;width:40px;height:46px;display:grid;place-items:center;color:var(--faint);transition:color .15s}.flag-btn.flag-on{color:var(--accent)}.category-section{margin-top:26px}.category-header{font-size:18px;font-weight:700;margin-bottom:4px}.cat-done-count{margin-inline-start:8px;font-size:13px;font-weight:600;color:var(--accent)}.task-row{display:flex;align-items:center;gap:2px;min-height:46px;border-bottom:1px solid var(--line)}.check-btn{flex-shrink:0;width:42px;height:46px;display:grid;place-items:center}.checkbox{width:23px;height:23px;border-radius:50%;border:1.6px solid var(--faint);display:grid;place-items:center;transition:border-color .15s,background .15s}.checkbox svg{width:21px;height:21px}.checkbox-checked{background:var(--accent);border-color:var(--accent)}.checkbox-ghost{opacity:.35;margin-inline:9.5px}.task-title-btn{flex:1;display:flex;align-items:center;gap:8px;min-height:46px;padding-block:10px;text-align:start}.task-title{flex:1;font-size:16px;word-break:break-word;unicode-bidi:plaintext}.task-done .task-title{color:var(--dim)}.row-moon{color:var(--accent);flex-shrink:0;display:grid;place-items:center}.btn-icon-text{display:inline-flex;align-items:center;justify-content:center;gap:7px}.add-row{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;color:var(--faint);font-size:15px;transition:color .15s}.add-row:active,.add-row:hover{color:var(--dim)}.unstar-all{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:20px;color:var(--faint);font-size:14px;font-weight:500;transition:color .15s}.unstar-all:active,.unstar-all:hover{color:var(--dim)}.unstar-all-confirm,.unstar-all-confirm:active,.unstar-all-confirm:hover{color:var(--accent)}.add-plus{width:23px;height:23px;margin-inline:9.5px;display:grid;place-items:center;font-size:20px;line-height:1}.add-row-editing{display:flex;align-items:center;min-height:46px;border-bottom:1px solid var(--line)}.add-row-editing input{flex:1;min-height:46px;font-size:16px;unicode-bidi:plaintext}.add-row-editing input::placeholder{color:var(--faint)}.suggest-list{overflow:hidden}.suggest-item{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding-block:4px;padding-inline-start:42px;padding-inline-end:8px;color:var(--dim);font-size:15px;text-align:start;border-bottom:1px solid var(--line);transition:background .15s,color .15s}.suggest-item:active,.suggest-item:hover{background:var(--hover);color:var(--text)}.suggest-title{flex:1;word-break:break-word;unicode-bidi:plaintext}.suggest-count{flex-shrink:0;color:var(--faint);font-size:12.5px;font-variant-numeric:tabular-nums}.done-stats{display:flex;gap:12px;margin-top:20px}.done-stat{flex:1;background:var(--surface);border:1.5px solid transparent;border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:2px;font:inherit;color:inherit;text-align:start;cursor:pointer;transition:border-color .15s ease,opacity .15s ease}.done-stat:not(.active){opacity:.6}.done-stat.active{border-color:var(--accent)}.done-stat-num{font-size:34px;font-weight:600;line-height:1.15;color:var(--accent)}.done-stat-label{color:var(--dim);font-size:13.5px;font-weight:500}.done-row{gap:10px;padding-inline-start:4px}.done-check{flex-shrink:0;width:23px;height:23px;border-radius:50%;background:var(--accent);display:grid;place-items:center}.done-check svg{width:21px;height:21px}.done-row .task-title{padding-block:10px}.done-meta{flex-shrink:0;display:flex;align-items:baseline;gap:8px;font-size:12.5px}.done-category{color:var(--dim)}.done-time{color:var(--faint);font-variant-numeric:tabular-nums}.empty-state{text-align:center;color:var(--dim);padding-block:80px 40px;font-size:16px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:40}.sheet{position:fixed;inset-inline:0;bottom:0;z-index:50;max-width:640px;margin:0 auto;background:var(--surface);border-radius:22px 22px 0 0;padding:8px 20px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -12px 40px #00000073;touch-action:none}.sheet-handle{width:40px;height:4.5px;border-radius:3px;background:var(--faint);margin:6px auto 14px}.sheet-heading{font-size:18px;font-weight:700;margin-bottom:14px}.sheet-title-input{width:100%;font-size:19px;font-weight:600;resize:none;unicode-bidi:plaintext;margin-bottom:14px;border-radius:10px}.sheet-section-label{font-size:12.5px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.chip{padding:7px 14px;border-radius:20px;background:var(--surface-2);color:var(--dim);font-size:14px;font-weight:500;transition:background .15s,color .15s}.chip-active{background:var(--accent);color:var(--on-accent);font-weight:600}.sheet-meta{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--bg);border-radius:var(--radius);margin-bottom:18px;font-size:13.5px}.sheet-meta>div{display:flex;gap:8px}.meta-label{color:var(--dim)}.meta-done{color:var(--accent)}.sheet-actions{display:flex;flex-direction:column;gap:10px}.sheet-btn{min-height:48px;border-radius:var(--radius);background:var(--surface-2);font-size:16px;font-weight:500;transition:filter .15s}.sheet-btn:active{filter:brightness(1.2)}.sheet-btn:disabled{opacity:.4}.sheet-btn-accent{background:var(--accent-soft);color:var(--accent)}.sheet-btn-danger{color:var(--danger)}.category-manager{max-height:70dvh;overflow-y:auto}.category-row{display:flex;align-items:center;gap:10px;min-height:52px;border-bottom:1px solid var(--line)}.category-arrows{display:flex;gap:2px}.category-arrows button{width:30px;height:34px;border-radius:8px;background:var(--surface-2);color:var(--dim);font-size:14px}.category-arrows button:disabled{opacity:.3}.category-row>input{flex:1;min-height:52px;font-size:16px;unicode-bidi:plaintext}.category-delete{width:40px;height:40px;border-radius:10px;color:var(--danger);font-size:15px;font-weight:600;flex-shrink:0}.category-add{display:flex;gap:10px;margin-top:16px}.category-add input{flex:1;min-height:48px;padding-inline:14px;background:var(--bg);border-radius:var(--radius);font-size:16px;unicode-bidi:plaintext}.category-add input::placeholder{color:var(--faint)}.category-add .sheet-btn{padding-inline:16px;white-space:nowrap}.category-hint{color:var(--faint);font-size:12.5px;margin-top:12px}.login-screen{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:360px;background:var(--surface);border-radius:22px;padding:36px 28px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.login-icon{width:68px;height:68px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:8px}.login-card h1{font-size:21px;font-weight:700}.login-card p{color:var(--dim);font-size:14.5px;margin-bottom:14px}.login-card input{width:100%;min-height:50px;background:var(--bg);border-radius:var(--radius);padding-inline:16px;font-size:17px;text-align:center;letter-spacing:.15em}.login-error{color:var(--danger);font-size:13.5px}.login-card button[type=submit]{width:100%;min-height:50px;margin-top:8px;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:700;transition:opacity .15s}.login-card button[type=submit]:disabled{opacity:.45}@media(min-width:700px){.task-row:hover{background:var(--hover)}.sheet{border-radius:22px;bottom:24px;inset-inline:24px}}.confetti-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:60}.count-pop{position:fixed;inset-inline:0;top:20vh;display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none;z-index:70;animation:count-pop-in .35s cubic-bezier(.2,1.6,.4,1),count-pop-out .35s ease-in 1.4s forwards}.count-pop:before{content:"";position:absolute;top:-70px;width:280px;height:280px;border-radius:50%;background:radial-gradient(closest-side,var(--accent-soft),transparent);z-index:-1}.count-roll{position:relative;height:1.05em;min-width:1.4em;overflow:hidden;font-size:92px;font-weight:700;line-height:1.05;color:var(--accent);text-align:center;font-variant-numeric:tabular-nums}.count-roll span{position:absolute;inset-inline:0}.count-old{animation:count-roll-out .45s cubic-bezier(.55,0,.7,.4) .3s forwards}.count-new{transform:translateY(1.05em);animation:count-roll-in .5s cubic-bezier(.2,.9,.3,1.15) .3s forwards}.count-label{font-size:15px;font-weight:500;color:var(--dim)}.count-praise{margin-top:6px;padding:5px 16px;max-width:88vw;text-align:center;border-radius:999px;background:var(--surface);border:1px solid var(--line);box-shadow:0 4px 18px #0000001f;font-size:21px;font-weight:600;color:var(--text)}.count-pop-grand{animation:count-pop-in .35s cubic-bezier(.2,1.6,.4,1),count-pop-out .35s ease-in 2.3s forwards}.count-pop-grand .count-praise{font-size:25px;color:var(--accent)}@keyframes count-pop-in{0%{opacity:0;transform:scale(.6) translateY(14px)}to{opacity:1;transform:none}}@keyframes count-pop-out{to{opacity:0;transform:scale(.92) translateY(-10px)}}@keyframes count-roll-out{to{transform:translateY(-1.05em)}}@keyframes count-roll-in{to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.count-pop,.count-pop-grand{animation:count-pop-out .3s ease-in 1.3s forwards}.count-old{display:none}.count-new{transform:none;animation:none}}
