@import"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap";:root{--font: "Nunito", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--p1: #E44332;--p2: #F5A623;--p3: #2D7FF9;--today: #1F9D55}[data-theme=light]{--bg: #FAF9F6;--bg-side: #F4F2EE;--bg-elev: #FFFFFF;--hover: #EBEAE6;--hover-strong: #E2E1DC;--active: #EEF2FF;--border: #E8E6E2;--border-2: #DCDAD5;--text: #1E1E1C;--text-2: #5D5C58;--text-3: #95938E;--accent: #2563EB;--accent-press: #1D4ED8;--accent-soft: #EFF6FF;--accent-text: #1D4ED8;--shadow-sm: 0 2px 8px rgba(30, 28, 24, .04), 0 1px 3px rgba(30, 28, 24, .02);--shadow-md: 0 8px 24px rgba(30, 28, 24, .06), 0 2px 8px rgba(30, 28, 24, .04);--shadow-lg: 0 20px 40px rgba(30, 28, 24, .08), 0 4px 12px rgba(30, 28, 24, .04);--scrim: rgba(30, 28, 24, .25);--check-empty: #C5C3BD}[data-theme=dark]{--bg: #141416;--bg-side: #1A1A1E;--bg-elev: #222227;--hover: #2B2B32;--hover-strong: #36363E;--active: #1D2D44;--border: #2D2D32;--border-2: #3E3E45;--text: #ECECED;--text-2: #A1A1A7;--text-3: #6C6C72;--accent: #60A5FA;--accent-press: #93C5FD;--accent-soft: #1E293B;--accent-text: #60A5FA;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 10px 30px rgba(0, 0, 0, .4), 0 2px 10px rgba(0, 0, 0, .3);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .5), 0 4px 16px rgba(0, 0, 0, .3);--scrim: rgba(0, 0, 0, .5);--check-empty: #48484E}*{box-sizing:border-box}.app-root{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;height:100vh;height:100dvh}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea{font-family:inherit}.scroll{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.scroll::-webkit-scrollbar{width:9px;height:9px}.scroll::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:99px;border:2px solid transparent;background-clip:padding-box}.scroll::-webkit-scrollbar-thumb:hover{background:var(--text-3);background-clip:padding-box}.scroll::-webkit-scrollbar-track{background:transparent}.no-sel{user-select:none;-webkit-user-select:none}@keyframes pop{0%{transform:scale(.5)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(6px)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes panelIn{0%{transform:translate(14px)}to{transform:translate(0)}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes strike{0%{background-size:0 1.5px}to{background-size:100% 1.5px}}.checkbox{position:relative;flex:none;display:grid;place-items:center;border-radius:999px;cursor:pointer;transition:background .12s,border-color .12s}.checkbox .cb-check{opacity:0;transition:opacity .12s;color:#fff}.checkbox:hover .cb-check{opacity:.45}.checkbox.is-done .cb-check{opacity:1;animation:pop .22s ease}.task-row{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;cursor:pointer;border-radius:10px;transition:background .12s}.task-row.is-selected{background:var(--active)}.task-row .row-hover{opacity:0;transition:opacity .32s cubic-bezier(.16,1,.3,1)}.task-row.is-selected .row-hover{opacity:1}.task-row.is-done .task-title{color:var(--text-3);text-decoration:line-through;text-decoration-color:var(--text-3)}.task-note-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.task-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm)}.task-card.is-selected{border-color:var(--border-2);box-shadow:var(--shadow-md)}.divrow+.divrow{border-top:1px solid var(--border)}.chip{display:inline-flex;align-items:center;gap:5px;height:21px;padding:0 8px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.nav-item{position:relative;display:flex;align-items:center;gap:11px;height:34px;padding:0 10px;border-radius:8px;cursor:pointer;color:var(--text-2);font-weight:600;font-size:14.5px;transition:background .1s,color .1s}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.is-active{background:var(--active);color:var(--accent-text)}.nav-item.is-active .nav-ico{color:var(--accent)}.nav-count{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--text-3)}.nav-item.is-active .nav-count{color:var(--accent-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 14px;border-radius:9px;font-weight:700;font-size:14px;transition:background .12s,transform .06s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-press)}.btn-ghost{color:var(--text-2)}.btn-ghost:hover{background:var(--hover);color:var(--text)}.icon-btn{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;color:var(--text-2);transition:background .12s,color .12s}.icon-btn:hover{background:var(--hover);color:var(--text)}.seg{display:inline-flex;padding:3px;gap:2px;background:var(--hover);border-radius:10px}.seg button{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:7px;font-size:13px;font-weight:700;color:var(--text-2);transition:all .12s}.seg button.on{background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-sm)}.field{width:100%;background:var(--bg);border:1.5px solid var(--border-2);border-radius:10px;padding:10px 12px;font-size:14.5px;color:var(--text);outline:none;transition:border-color .12s,box-shadow .12s}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field::placeholder{color:var(--text-3)}.exit-wrap{max-height:260px;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .26s ease,transform .26s ease}.exit-wrap[data-expanded="1"]{max-height:1500px}.exit-wrap[data-exit]{max-height:0!important;opacity:0;transform:translate(10px);overflow:hidden;pointer-events:none}.pop{position:absolute;z-index:60;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;animation:slideUp .14s ease}.pop-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:8px;font-size:14px;font-weight:600;color:var(--text);cursor:pointer;white-space:nowrap}.pop-item:hover{background:var(--hover)}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);z-index:4000;animation:fadeIn .15s ease}.pop-sheet{position:fixed;left:0;right:0;bottom:0;z-index:4001;background:var(--bg-elev);border-top-left-radius:20px;border-top-right-radius:20px;box-shadow:var(--shadow-lg);padding:6px 10px calc(24px + env(safe-area-inset-bottom));max-height:82vh;overflow-y:auto;overscroll-behavior:contain;animation:sheetUp .26s cubic-bezier(.16,1,.3,1)}.sheet-handle{width:38px;height:5px;border-radius:99px;background:var(--border-2);margin:8px auto 12px}.pop-sheet .pop-item{height:48px!important;font-size:16px!important;padding:0 12px!important}.pop-sheet .divider{margin:6px 0}.dark-seg .seg{background:#0e0e10}.dark-seg .seg button{color:#9a9aa2;font-family:Nunito,system-ui,sans-serif}.dark-seg .seg button.on{background:#2e2e34;color:#fff;box-shadow:none}.icon-btn:active{background:var(--hover-strong)}.pop-item:active,.nav-item:active{background:var(--hover)}@media (max-width: 767px){.task-row{border-radius:0}.exit-wrap+.exit-wrap .task-row{border-top:1px solid var(--border)}}@media (hover: none){.checkbox:hover .cb-check{opacity:0}.nav-item:hover{background:transparent;color:var(--text-2)}.btn-primary:hover{background:var(--accent)}.btn-ghost:hover,.icon-btn:hover{background:transparent;color:var(--text-2)}.pop-item:hover{background:transparent}}.section-title{font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3)}.divider{height:1px;background:var(--border)}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);animation:fadeIn .15s ease}html,body{margin:0;height:100%;background:#0c0c0e;overscroll-behavior:none}.app-root{touch-action:manipulation}.scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#root{height:100%}body{font-family:Nunito,system-ui,sans-serif}.task-expand-container{animation:expandIn .22s cubic-bezier(.4,0,.2,1) forwards;background:var(--bg-side);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-top:12px;width:100%;box-shadow:inset 0 1px 2px #1e1c1805}@keyframes expandIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.bulk-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--bg-elev);border:1.5px solid var(--border-2);border-radius:16px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:16px;padding:10px 20px;z-index:1000;animation:slideUp .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media (max-width: 600px){.bulk-bar{bottom:84px;padding:8px 14px;gap:10px;width:calc(100% - 32px);justify-content:space-between}}.bulk-bar-mobile{position:fixed;left:0;right:0;bottom:0;z-index:1000;background:var(--bg-elev);border-top:1px solid var(--border-2);box-shadow:var(--shadow-lg);padding:12px 16px calc(12px + env(safe-area-inset-bottom));animation:sheetUp .26s cubic-bezier(.16,1,.3,1)}.active-scale{transition:transform .12s cubic-bezier(.2,.8,.2,1),opacity .12s ease}.active-scale:active{transform:scale(.95);opacity:.75}.frosted-glass{background:color-mix(in srgb,var(--bg-elev) 80%,transparent)!important;backdrop-filter:blur(20px) saturate(190%)!important;-webkit-backdrop-filter:blur(20px) saturate(190%)!important}.scandinavian-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease}.scandinavian-card:active{transform:scale(.985);box-shadow:var(--shadow-sm)}.bottom-sheet{background:var(--bg-elev);border-top-left-radius:24px;border-top-right-radius:24px;border:1px solid var(--border);border-bottom:none;box-shadow:var(--shadow-lg);padding:24px 20px 34px;animation:sheetUp .28s cubic-bezier(.16,1,.3,1)}.sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn .2s ease-out;z-index:200}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--p1);border-radius:50%;animation:spin .8s linear infinite}.pulse-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;animation:fadeIn .3s ease-out}.pulse-loader-text{font-size:15px;font-weight:700;color:var(--text-2);letter-spacing:-.01em;animation:pulse 1.5s ease-in-out infinite}.m-navbar{flex:none;display:flex;align-items:center;padding:12px 14px;background:var(--bg);border-bottom:1px solid var(--border)}.m-navback{display:flex;align-items:center;gap:1px;min-width:88px;color:var(--accent);font-weight:750;font-size:16px}.m-navback span{margin-left:-2px}.m-navtitle{flex:1;text-align:center;font-weight:800;font-size:17px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-navright{min-width:88px;display:flex;justify-content:flex-end;align-items:center}.push-screen{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;flex-direction:column;animation:pushIn .26s cubic-bezier(.32,.72,0,1)}@keyframes pushIn{0%{transform:translate(100%)}to{transform:translate(0)}}.m-group{background:var(--bg-elev);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px #1e1c180a}[data-theme=dark] .m-group{box-shadow:0 1px 2px #0000004d}.m-toggle-row{display:flex;align-items:center;gap:12px;padding:15px 16px}.m-timeinput{font-family:inherit;font-weight:700;font-size:15px;color:var(--text);background:var(--hover);border:none;border-radius:9px;padding:7px 10px;outline:none;cursor:pointer;transition:background .15s ease}.m-timeinput:hover{background:var(--hover-strong)}.ios-toggle{width:51px;height:31px;border-radius:99px;padding:2px;display:flex;align-items:center;cursor:pointer;transition:background .22s;flex:none}.ios-toggle-thumb{width:27px;height:27px;border-radius:99px;background:#fff;box-shadow:0 2px 5px #00000047;transition:all .22s cubic-bezier(.4,0,.2,1)}.scroll-x{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.scroll-x::-webkit-scrollbar{display:none}
