@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:ital,wght@0,400;0,700;1,400&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--vt-x:calc(100% - 30px);--vt-y:30px;--c-primary-50:#f5f3ff;--c-primary-100:#ede9fe;--c-primary-200:#ddd6fe;--c-primary-300:#c4b5fd;--c-primary-400:#a78bfa;--c-primary-500:#8b5cf6;--c-primary-600:#7c3aed;--c-primary-700:#6d28d9;--c-primary-800:#5b21b6;--grad-primary:linear-gradient(135deg, #8b5cf6 0%, #6366f1 100%);--grad-primary-hover:linear-gradient(135deg, #7c3aed 0%, #4f46e5 100%);--glow-primary:0 4px 14px #8b5cf659;--ring-primary:0 0 0 3px #8b5cf638;--surface-deep:#0a0a0f;--surface-canvas:#111118;--surface-card:#16161f;--surface-raised:#1c1c27;--surface-overlay:#1c1c27f5;--surface-input:#ffffff0a;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff29;--border-focus:var(--c-primary-500);--text-primary:#f4f4f8;--text-secondary:#b4b3c5;--text-tertiary:#7e7d92;--text-disabled:#4d4c5e;--text-inverse:#0a0a0f;--c-success:#34d399;--c-warning:#fbbf24;--c-danger:#fb7185;--c-info:#60a5fa;--tag-violet-bg:#a78bfa29;--tag-violet-fg:#c4b5fd;--tag-pink-bg:#f472b629;--tag-pink-fg:#f9a8d4;--tag-amber-bg:#fbbf2424;--tag-amber-fg:#fcd34d;--tag-green-bg:#34d39924;--tag-green-fg:#6ee7b7;--tag-blue-bg:#60a5fa24;--tag-blue-fg:#93c5fd;--tag-rose-bg:#fb718524;--tag-rose-fg:#fda4af;--tag-cyan-bg:#22d3ee24;--tag-cyan-fg:#67e8f9;--tag-slate-bg:#94a3b824;--tag-slate-fg:#cbd5e1;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--fs-xs:11px;--fs-sm:12px;--fs-base:14px;--fs-md:15px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:30px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.2;--lh-base:1.5;--lh-relaxed:1.6;--tracking-tight:-.01em;--tracking-normal:0;--tracking-wide:.04em;--tracking-wider:.08em;--sp-0:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--sp-9:48px;--sp-10:64px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:10px;--r-xl:14px;--r-2xl:18px;--r-pill:999px;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 12px #00000047;--shadow-lg:0 12px 32px #0006;--shadow-card:0 1px 3px #00000038, 0 0 0 1px #ffffff0a;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.32s;--z-base:1;--z-dropdown:100;--z-sticky:200;--z-modal:1000;--z-toast:2000;--font-display:var(--font-sans);--font-body:var(--font-sans);--bg-void:var(--surface-canvas);--bg-deep:var(--surface-deep);--bg-panel:var(--surface-card);--bg-glass:var(--surface-overlay);--bg-item:var(--surface-input);--c-cyan:var(--c-primary-400);--c-blue:var(--c-info);--c-violet:var(--c-primary-300);--c-pink:var(--c-danger);--c-green:var(--c-success);--c-gold:var(--c-warning);--t-primary:var(--text-primary);--t-soft:var(--text-secondary);--t-muted:var(--text-tertiary);--b-subtle:var(--border-default);--b-active:#8b5cf673;--b-glow:#8b5cf6cc;--glow-cyan:0 0 0 3px #8b5cf62e, 0 0 20px #8b5cf61a;--glow-blue:0 0 0 3px #60a5fa2e, 0 0 20px #60a5fa14;--glow-pink:0 0 0 3px #fb71852e, 0 0 20px #fb718514;--radius-sm:var(--r-xs);--radius-md:var(--r-sm);--radius-lg:var(--r-md);--radius-xl:var(--r-lg);--focus-ring:var(--c-primary-500)}*{scrollbar-width:thin;scrollbar-color:#8b5cf61f transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#8b5cf61f;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#8b5cf6 0%,#6366f1 100%)}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:#7c3aed24}:root[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:linear-gradient(#7c3aed 0%,#4f46e5 100%)}::selection{color:#fff;background:#8b5cf659}:root[data-theme=light] ::selection{color:#1a1a24;background:#7c3aed33}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){clip-path:circle(0 at var(--vt-x) var(--vt-y));animation:.46s cubic-bezier(.22,1,.36,1) forwards theme-reveal}@keyframes theme-reveal{to{clip-path:circle(150vmax at var(--vt-x) var(--vt-y))}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--c-primary-300:#a78bfa;--c-primary-400:#8b5cf6;--c-primary-500:#7c3aed;--c-primary-600:#6d28d9;--c-primary-700:#5b21b6;--grad-primary:linear-gradient(135deg, #7c3aed 0%, #4f46e5 100%);--grad-primary-hover:linear-gradient(135deg, #6d28d9 0%, #4338ca 100%);--glow-primary:0 4px 14px #7c3aed47;--ring-primary:0 0 0 3px #7c3aed2e;--surface-deep:#f4f4f8;--surface-canvas:#fafafa;--surface-card:#fff;--surface-raised:#f7f7fb;--surface-overlay:#fffffff5;--surface-input:#00000006;--border-subtle:#0000000d;--border-default:#00000017;--border-strong:#00000024;--text-primary:#1a1a24;--text-secondary:#52525e;--text-tertiary:#6a6a76;--text-disabled:#c8c8d0;--text-inverse:#fff;--c-success:#059669;--c-warning:#d97706;--c-danger:#e11d48;--c-info:#2563eb;--tag-violet-bg:#7c3aed1a;--tag-violet-fg:#6d28d9;--tag-pink-bg:#db27771a;--tag-pink-fg:#be185d;--tag-amber-bg:#d977061a;--tag-amber-fg:#b45309;--tag-green-bg:#0596691a;--tag-green-fg:#047857;--tag-blue-bg:#2563eb1a;--tag-blue-fg:#1d4ed8;--tag-rose-bg:#e11d481a;--tag-rose-fg:#be123c;--tag-cyan-bg:#0891b21a;--tag-cyan-fg:#0e7490;--tag-slate-bg:#4755691a;--tag-slate-fg:#334155;--shadow-sm:0 1px 2px #14141e0f;--shadow-md:0 4px 12px #14141e14;--shadow-lg:0 12px 32px #14141e1f;--shadow-card:0 1px 3px #14141e0f, 0 0 0 1px #0000000a;--b-active:#7c3aed73;--b-glow:#7c3aedbf;--glow-cyan:0 0 0 3px #7c3aed26;--glow-blue:0 0 0 3px #2563eb26;--glow-pink:0 0 0 3px #e11d4826}.lucide{vertical-align:-.13em;pointer-events:none;stroke-width:1.75px;flex-shrink:0;width:1em;height:1em;display:inline-block}.task-actions>button .lucide{stroke-width:2px;width:13px;height:13px}.drag-handle .lucide{stroke-width:2px;width:13px;height:13px;color:var(--t-muted)}.expand-indicator .lucide{stroke-width:2px;width:12px;height:12px}.task-kebab-btn .lucide{width:14px;height:14px}.sidebar-expand-btn .lucide{stroke-width:2px;width:13px;height:13px}.mobile-icon-btn .lucide{stroke-width:2px;width:18px;height:18px}.global-search-btn .lucide{stroke-width:2px;width:13px;height:13px}.agenda-nav-btn .lucide{stroke-width:2px;width:15px;height:15px}.sheet-action-btn .lucide{stroke-width:1.75px;width:16px;height:16px}.empty-state-icon .lucide{stroke-width:1.25px;width:48px;height:48px}.profile-item-ico .lucide{stroke-width:2px;width:13px;height:13px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}body{font-family:var(--font-body);color:var(--t-primary);background-color:var(--bg-void);background-image:radial-gradient(80% 50% at 50% -10%,#6366f138 0%,#0000 65%);align-items:stretch;height:100dvh;font-size:15px;display:flex;overflow:hidden}:root[data-theme=light] body{background-image:radial-gradient(80% 50% at 50% -10%,#7c3aed12 0%,#0000 65%)}.brand-logo{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;flex-shrink:0;width:auto;max-width:100%;height:35px;margin-bottom:0;display:block}.brand-logo--light,:root[data-theme=light] .brand-logo--dark{display:none}:root[data-theme=light] .brand-logo--light{display:block}.theme-toggle{z-index:100;border:1px solid var(--b-subtle);background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:2.6rem;height:2.6rem;color:var(--t-soft);cursor:pointer;border-radius:50%;justify-content:center;place-items:center;font-family:inherit;font-size:1rem;transition:border-color .2s,color .2s,transform .2s;display:grid;position:fixed;top:1.1rem;right:1.1rem}.theme-toggle:hover{border-color:var(--b-active);color:var(--c-cyan);transform:rotate(20deg)scale(1.08)}.layout{z-index:1;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.mobile-body{flex-direction:row;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.mobile-header,.mobile-toolbar,.task-action-sheet,.sheet-backdrop,.sidebar-backdrop,.mobile-fab,.fab-sheet,.fab-backdrop{display:none}.task-kebab-btn{display:none!important}.sidebar-header-actions{align-items:center;gap:var(--sp-1);flex-shrink:0;display:flex}.sidebar-icon-btn,.sidebar-collapse-btn{border-radius:var(--r-xs);width:26px;height:26px;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:flex}.sidebar-icon-btn:hover,.sidebar-collapse-btn:hover{border-color:var(--border-subtle);color:var(--c-primary-300);background:#8b5cf614}:root[data-theme=light] .sidebar-icon-btn:hover,:root[data-theme=light] .sidebar-collapse-btn:hover{color:var(--c-primary-500);background:#7c3aed0f}.sidebar-icon-btn .lucide,.sidebar-collapse-btn .lucide{stroke-width:2px;width:16px;height:16px}.sidebar-expand-btn{width:20px;height:20px;color:var(--t-muted);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.6rem;line-height:1;transition:background .13s,border-color .13s,color .13s;display:none}.sidebar-expand-btn:hover{color:var(--c-cyan);background:#8b5cf61a;border-color:#8b5cf659}.sidebar-is-collapsed .sidebar-expand-btn{display:flex}.sidebar-expand-btn-empty{position:absolute;top:1rem;left:1rem}.sidebar{background:var(--surface-deep);border-right:1px solid var(--border-subtle);width:240px;transition:width var(--dur-base) var(--ease-out);flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}:root[data-theme=light] .sidebar{background:var(--surface-deep);border-right-color:var(--border-default)}.sidebar.sidebar-collapsed{width:0}.sidebar-header{padding:var(--sp-5) var(--sp-4) var(--sp-4)}.sidebar-header-top{justify-content:space-between;align-items:center;margin-bottom:0;display:flex}.sidebar-header h1{margin-bottom:0;font-size:1rem}.project-list{padding:var(--sp-2) var(--sp-2) var(--sp-3);scrollbar-width:thin;scrollbar-color:#8b5cf626 transparent;flex-direction:column;flex:1;gap:1px;list-style:none;display:flex;overflow-y:auto}.project-list::-webkit-scrollbar{width:4px}.project-list::-webkit-scrollbar-thumb{border-radius:var(--r-pill)}.project-item{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border:1px solid #0000;flex-direction:column;gap:0;display:flex;position:relative}.project-item:before{content:"";background:var(--project-color,var(--c-primary-500));border-radius:0 var(--r-pill) var(--r-pill) 0;width:3px;height:0;transition:height var(--dur-base) var(--ease-out), opacity var(--dur-fast) var(--ease-out);opacity:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.project-item:hover{background:color-mix(in srgb, var(--project-color,var(--c-primary-500)) 8%, transparent)}.project-item:hover:before{opacity:.4;height:16px}.project-item.active{background:linear-gradient(100deg, transparent 20%, #ffffff14 50%, transparent 80%) -100% 0 / 200% 100% no-repeat, linear-gradient(90deg, color-mix(in srgb, var(--project-color,var(--c-primary-500)) 22%, transparent) 0%, color-mix(in srgb, var(--project-color,var(--c-primary-500)) 6%, transparent) 100%);animation:3.5s ease-in-out infinite project-shimmer}@keyframes project-shimmer{0%{background-position:-100% 0,0 0}60%{background-position:250% 0,0 0}to{background-position:250% 0,0 0}}.project-item.active:before{opacity:1;height:65%;box-shadow:0 0 14px 2px color-mix(in srgb, var(--project-color,var(--c-primary-500)) 70%, transparent)}:root[data-theme=light] .project-item:before{background:var(--c-primary-500)}:root[data-theme=light] .project-item:hover{background:color-mix(in srgb, var(--project-color,var(--c-primary-600)) 6%, transparent)}:root[data-theme=light] .project-item.active{background:linear-gradient(90deg, color-mix(in srgb, var(--project-color,var(--c-primary-600)) 16%, transparent) 0%, color-mix(in srgb, var(--project-color,var(--c-primary-600)) 4%, transparent) 100%)}:root[data-theme=light] .project-item.active:before{box-shadow:0 0 12px 1px color-mix(in srgb, var(--project-color,var(--c-primary-600)) 50%, transparent)}.project-item-name{font-size:var(--fs-base);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:color var(--dur-fast) var(--ease-out);cursor:pointer;flex:1;overflow:hidden}.project-item:hover .project-item-name{color:var(--text-primary)}.project-item.active .project-item-name{color:var(--text-primary);font-weight:var(--fw-semibold)}.project-item-count{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:color-mix(in srgb, var(--project-color,var(--c-primary-400)) 65%, var(--text-tertiary));font-variant-numeric:tabular-nums;flex-shrink:0}.project-item.active .project-item-count{color:var(--project-color,var(--c-primary-400))}:root[data-theme=light] .project-item.active .project-item-count{color:var(--project-color,var(--c-primary-500))}.project-item-top{justify-content:space-between;align-items:center;gap:.4rem;width:100%;min-width:0;display:flex}.project-progress-bar{background:#ffffff12;border-radius:0;height:2px;margin-top:.28rem;overflow:hidden}.project-progress-fill{background:var(--project-color,var(--c-cyan));opacity:.6;border-radius:0;height:100%;transition:width .35s cubic-bezier(.4,0,.2,1)}.project-item.active .project-progress-fill{opacity:1}:root[data-theme=light] .project-progress-bar{background:#00000012}.project-empty{color:var(--t-muted);padding:.7rem .65rem;font-size:.78rem;font-style:italic}.sidebar-footer{padding:var(--sp-3) var(--sp-3) var(--sp-3);border-top:1px solid var(--border-subtle);gap:var(--sp-2);flex-direction:column;display:flex}.new-project-btn{width:100%;font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-normal);padding:var(--sp-3) var(--sp-3);background:var(--grad-primary);color:#fff;border-radius:var(--r-md);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border:1px solid #0000;justify-content:center;box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #8b5cf64d,0 4px 16px #8b5cf66b}.new-project-btn:hover{background:var(--grad-primary-hover);border-color:#0000;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #8b5cf680,0 6px 24px #8b5cf68c,0 2px 8px #6366f147}.new-project-btn:active{transform:translateY(0);box-shadow:inset 0 1px #ffffff14,0 0 0 1px #8b5cf661,0 2px 8px #8b5cf661}.new-project-btn .lucide{stroke-width:2.25px;width:15px;height:15px}:root[data-theme=light] .new-project-btn,:root[data-theme=light] .task-form button[type=submit]{color:#fff;box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #7c3aed47,0 4px 16px #7c3aed52}:root[data-theme=light] .new-project-btn:hover,:root[data-theme=light] .task-form button[type=submit]:hover{box-shadow:inset 0 1px #ffffff38,0 0 0 1px #7c3aed73,0 6px 24px #7c3aed73,0 2px 8px #7c3aed40}:root[data-theme=light] .empty-state:before{background-image:radial-gradient(circle,#7c3aed38 1px,#0000 1px)}:root[data-theme=light] .empty-orb--1{background:radial-gradient(circle,#7c3aed2e,#0000 70%)}:root[data-theme=light] .empty-orb--2{background:radial-gradient(circle,#ec489924,#0000 70%)}:root[data-theme=light] .empty-orb--3{background:radial-gradient(circle,#06b6da1f,#0000 70%)}:root[data-theme=light] .empty-orb--4{background:radial-gradient(circle,#7c3aed14,#0000 70%)}:root[data-theme=light] .empty-orb--5{background:radial-gradient(circle,#06b6da12,#0000 70%)}:root[data-theme=light] .empty-logo{filter:drop-shadow(0 0 14px #7c3aed4d)}.main-panel{background:var(--surface-canvas);flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.mobile-bottom-nav{display:none}.empty-state{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex;position:relative;overflow:hidden}.empty-state:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,#8b5cf62e 1px,#0000 1px);background-size:30px 30px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70%,#000 20%,#0000 80%);mask-image:radial-gradient(70% 70%,#000 20%,#0000 80%)}.empty-state:after{content:"";background:radial-gradient(ellipse 80% 80% at 50% 50%, transparent 50%, var(--surface-canvas) 100%);pointer-events:none;z-index:0;position:absolute;inset:0}.empty-state-visual{z-index:1;justify-content:center;align-items:center;width:180px;height:180px;margin-bottom:.25rem;display:flex;position:relative}.empty-orb{pointer-events:none;border-radius:50%;position:absolute}.empty-orb--1{filter:blur(28px);background:radial-gradient(circle,#7c3aed59,#0000 70%);width:150px;height:150px;animation:7s ease-in-out infinite orb-drift-1}.empty-orb--2{filter:blur(22px);background:radial-gradient(circle,#ec489940,#0000 70%);width:110px;height:110px;animation:10s ease-in-out infinite orb-drift-2}.empty-orb--3{filter:blur(18px);background:radial-gradient(circle,#06b6da33,#0000 70%);width:80px;height:80px;animation:13s ease-in-out infinite orb-drift-3}.empty-orb--4{filter:blur(50px);background:radial-gradient(circle,#7c3aed1f,#0000 70%);width:200px;height:200px;animation:15s ease-in-out infinite reverse orb-drift-1}.empty-orb--5{filter:blur(40px);background:radial-gradient(circle,#06b6da1a,#0000 70%);width:160px;height:160px;animation:18s ease-in-out infinite reverse orb-drift-2}.empty-ring{border:1px solid #8b5cf633;border-radius:50%;justify-content:center;align-items:flex-start;display:flex;position:absolute}.empty-ring--1{width:130px;height:130px;animation:18s linear infinite ring-spin}.empty-ring--2{border-color:#ec489926;width:170px;height:170px;animation:28s linear infinite reverse ring-spin}.empty-ring-dot{background:var(--c-primary-400);border-radius:50%;width:5px;height:5px;margin-top:-2.5px;box-shadow:0 0 6px 2px #8b5cf699}.empty-ring--2 .empty-ring-dot{background:#ec4899;box-shadow:0 0 6px 2px #ec489980}@keyframes ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-logo{z-index:1;filter:drop-shadow(0 0 18px #7c3aed8c);width:68px;height:auto;animation:4.5s ease-in-out infinite empty-float;position:relative}@keyframes empty-float{0%,to{filter:drop-shadow(0 2px 14px #7c3aed66);transform:translateY(0)rotate(-1deg)}50%{filter:drop-shadow(0 12px 28px #7c3aedbf);transform:translateY(-16px)rotate(1deg)}}@keyframes orb-drift-1{0%,to{opacity:.8;transform:translate(-18px,-8px)}50%{opacity:1;transform:translate(18px,8px)}}@keyframes orb-drift-2{0%,to{opacity:.7;transform:translate(14px,18px)}50%{opacity:1;transform:translate(-14px,-18px)}}@keyframes orb-drift-3{0%,to{opacity:.6;transform:translate(-8px,16px)}50%{opacity:.9;transform:translate(8px,-16px)}}.empty-state-title{color:var(--t-soft);letter-spacing:.01em;z-index:1;font-size:1rem;font-weight:600;position:relative}.empty-state-sub{color:var(--t-muted);text-align:center;z-index:1;max-width:240px;font-size:.82rem;line-height:1.5;position:relative}.ctrl-bar{padding:var(--sp-6) var(--sp-6) 0;animation:panelIn .3s var(--ease-out) both;z-index:10;flex-direction:column;flex-shrink:0;display:flex;position:relative}.tasks-panel{padding:0 var(--sp-6) var(--sp-4);flex-direction:column;flex:1;display:flex;overflow:hidden}@keyframes panelIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tasks-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-wrap:wrap;flex-shrink:0;display:flex}.tasks-header-left{align-items:flex-start;gap:var(--sp-3);min-width:0;display:flex}.tasks-header-left .sidebar-expand-btn{margin-top:var(--sp-3)}.tasks-header-titleblock{flex-direction:column;min-width:0;display:flex}.view-eyebrow{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-tertiary);margin-bottom:var(--sp-1);line-height:1.2;display:inline-block}.project-title{font-family:var(--font-sans);font-size:clamp(1.25rem,2.4vw,1.75rem);font-weight:var(--fw-semibold);color:var(--text-primary);line-height:var(--lh-tight);margin-bottom:var(--sp-1);letter-spacing:var(--tracking-tight)}.header-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.delete-project-btn{min-height:2.2rem}.close-panel-btn{border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.close-panel-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.close-panel-btn svg{stroke-width:2px;width:16px;height:16px}.delete-project-btn{color:var(--c-pink);border-radius:var(--radius-sm);box-shadow:none;background:#fb718512;border:1px solid #fb718533;padding:.48rem .85rem;font-size:.78rem}.delete-project-btn:hover{box-shadow:none;background:#fb718521;border-color:#fb718566;transform:none}h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--t-primary);margin-bottom:.2rem;font-size:clamp(1rem,2.5vw,1.4rem);font-weight:700;line-height:1.2}.subtitle{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--text-tertiary);letter-spacing:var(--tracking-normal);margin-top:0}.task-form{gap:var(--sp-2);margin:0 0 var(--sp-4);flex-shrink:0;display:flex}.task-form input{font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-regular);color:var(--text-primary);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);outline:none;flex:1}.task-form input::placeholder{color:var(--text-tertiary)}.task-form input:focus-visible{border-color:var(--c-primary-500);background:var(--surface-card);box-shadow:var(--ring-primary)}:root[data-theme=light] .task-form input:focus-visible{background:var(--surface-card)}button,.import-label{font-family:var(--font-body);letter-spacing:0;text-transform:none;color:var(--t-soft);border:1px solid var(--b-subtle);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:.35rem;padding:.52rem .9rem;font-size:.78rem;font-weight:600;transition:background .18s,border-color .18s,color .18s;display:inline-flex;position:relative;overflow:hidden}button:hover,.import-label:hover{color:var(--t-primary);box-shadow:none;background:#ffffff0a;border-color:#ffffff26;transform:none}button:active,.import-label:active{transform:none}button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;box-shadow:none}.task-form button[type=submit]{color:#fff;background:var(--grad-primary);font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-normal);padding:var(--sp-3) var(--sp-5);border-radius:var(--r-md);white-space:nowrap;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border:1px solid #0000;flex-shrink:0;box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #8b5cf64d,0 4px 16px #8b5cf66b}.task-form button[type=submit]:hover{background:var(--grad-primary-hover);color:#fff;border-color:#0000;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #8b5cf680,0 6px 24px #8b5cf68c,0 2px 8px #6366f147}.task-form button[type=submit]:active{transform:translateY(0);box-shadow:inset 0 1px #ffffff14,0 0 0 1px #8b5cf661,0 2px 8px #8b5cf661}.task-form button[type=submit] .lucide{stroke-width:2.25px;width:15px;height:15px}.alt-panel{flex-direction:column;flex:1;animation:.25s cubic-bezier(.16,1,.3,1) both panelIn;display:flex;overflow:hidden}.view-nav{justify-content:space-between;align-items:center;gap:var(--sp-3);padding-bottom:var(--sp-4);border-bottom:1px solid var(--border-subtle);flex-shrink:0;margin-top:0;margin-bottom:0;display:flex}.view-nav-tabs{background:var(--surface-deep);border:1px solid var(--border-subtle);border-radius:var(--r-lg);scrollbar-width:none;-ms-overflow-style:none;align-items:center;gap:2px;padding:3px;display:inline-flex;overflow-x:auto}.view-nav-tabs::-webkit-scrollbar{display:none}.view-tab{align-items:center;gap:var(--sp-2);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--tracking-normal);color:var(--text-tertiary);border-radius:var(--r-md);padding:5px var(--sp-3);cursor:pointer;white-space:nowrap;min-height:30px;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;flex-shrink:0;display:inline-flex}.view-tab svg{stroke-width:2px;flex-shrink:0;width:13px;height:13px}.view-tab:hover{color:var(--text-secondary);background:#ffffff0d}.view-tab--active{color:var(--c-primary-300);background:var(--surface-card);border-color:var(--border-default);box-shadow:var(--shadow-sm), 0 0 0 1px #8b5cf61a}.view-tab--active:hover{color:var(--c-primary-200);background:var(--surface-card)}:root[data-theme=light] .view-tab:hover{background:#0000000a}:root[data-theme=light] .view-nav-tabs{background:var(--surface-deep)}:root[data-theme=light] .view-tab--active,:root[data-theme=light] .view-tab--active:hover{background:var(--surface-card);color:var(--c-primary-500);box-shadow:var(--shadow-sm), 0 0 0 1px #7c3aed1f}.view-nav-right{align-items:center;gap:var(--sp-1);flex-shrink:0;display:flex}.filter-trigger-btn{align-items:center;gap:var(--sp-2);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);cursor:pointer;white-space:nowrap;min-height:30px;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;display:inline-flex}.filter-trigger-btn svg{stroke-width:2px;flex-shrink:0;width:13px;height:13px}.filter-caret{transition:transform var(--dur-base) var(--ease-out)}.filter-trigger-btn.open .filter-caret{transform:rotate(180deg)}.filter-trigger-btn:hover,.filter-trigger-btn.open{color:var(--text-primary);border-color:var(--border-strong);background:#ffffff0a}.filter-trigger-btn--active{color:var(--c-primary-300);background:#8b5cf61a;border-color:#8b5cf64d}.filter-trigger-btn--active:hover{background:#8b5cf629}:root[data-theme=light] .filter-trigger-btn:hover,:root[data-theme=light] .filter-trigger-btn.open{background:#00000008}:root[data-theme=light] .filter-trigger-btn--active{color:var(--c-primary-500);background:#7c3aed14;border-color:#7c3aed40}.filter-panel{border-radius:var(--radius-md);z-index:200;background:#16162a;border:1px solid #ffffff1a;border-top:2px solid #8b5cf673;flex-direction:column;gap:.5rem;min-width:190px;padding:.65rem .7rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 32px #000000a6,0 2px 8px #0006}:root[data-theme=light] .filter-panel{background:#fafafd;border-color:#4f46e566 #00000017 #00000017;box-shadow:0 8px 24px #0000001f}.filter-panel-section{flex-direction:column;gap:.35rem;display:flex}.filter-panel-label{text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-tertiary);padding:0 .25rem;font-size:.6rem;font-weight:700}.filter-panel-opts{flex-wrap:wrap;gap:4px;display:flex}.filter-panel-sep{background:var(--b-subtle);height:1px;margin:.1rem 0}.filter-opt{letter-spacing:0;color:var(--t-muted);border:1px solid var(--b-subtle);cursor:pointer;white-space:nowrap;background:#ffffff0a;border-radius:3px;padding:.25rem .55rem;font-size:.72rem;font-weight:500;transition:color .13s,background .13s,border-color .13s}.filter-opt:hover{color:var(--t-soft);background:#ffffff12;border-color:#ffffff24}.filter-opt--active{color:var(--c-cyan);background:#8b5cf61f;border-color:#8b5cf64d}.filter-opt--active:hover{background:#8b5cf62e}:root[data-theme=light] .filter-opt--active{color:var(--c-primary-500);background:#7c3aed14;border-color:#7c3aed40}.more-actions-btn{width:30px;height:30px;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:var(--r-md);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;display:inline-flex}.more-actions-btn svg{stroke-width:2px;width:14px;height:14px}.more-actions-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:#ffffff0a}:root[data-theme=light] .more-actions-btn:hover{background:#00000008}.more-actions-panel{border-radius:var(--radius-md);z-index:200;background:#16162a;border:1px solid #ffffff1a;border-top:2px solid #8b5cf666;min-width:175px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 32px #000000a6}:root[data-theme=light] .more-actions-panel{background:#fafafd;border-color:#4f46e559 #00000017 #00000017;box-shadow:0 8px 24px #0000001f}.more-actions-panel button{letter-spacing:0;width:100%;color:var(--t-soft);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:.5rem;padding:.6rem .85rem;font-size:.78rem;font-weight:500;transition:background .13s,color .13s;display:flex}.more-actions-panel button svg{flex-shrink:0;width:13px;height:13px}.more-actions-panel button:hover{color:var(--t-primary);background:#ffffff0d}.more-actions-panel button.danger{color:var(--c-pink)}.more-actions-panel button.danger:hover{background:#fb718514}.select-mode-btn{width:30px;height:30px;color:var(--text-tertiary);border:1px solid var(--border-default);border-radius:var(--r-md);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;padding:0;font-size:0;display:inline-flex}.select-mode-btn svg{stroke-width:2px;width:14px;height:14px}.select-mode-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:#ffffff0a}.select-mode-btn.active{color:var(--c-primary-300);background:#8b5cf61a;border-color:#8b5cf64d}:root[data-theme=light] .select-mode-btn:hover{background:#00000008}:root[data-theme=light] .select-mode-btn.active{color:var(--c-primary-500);background:#7c3aed14;border-color:#7c3aed40}.cal-month-nav{justify-content:center;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6) var(--sp-3);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--sp-3);flex-shrink:0;display:flex}.toolbar{flex-wrap:wrap;flex-shrink:0;gap:.4rem;margin-bottom:.55rem;display:flex}.toolbar button{letter-spacing:0;color:var(--t-muted);border-radius:var(--r-sm);background:0 0;border-color:#ffffff12;padding:.32rem .75rem;font-size:.72rem;font-weight:500}.toolbar button:hover{color:var(--t-soft);background:#ffffff0a;border-color:#ffffff1f}.toolbar button.active{color:var(--c-cyan);border-color:#8b5cf647;border-left:2px solid var(--c-cyan);background:#8b5cf61a;padding-left:calc(.75rem - 1px)}:root[data-theme=light] .toolbar button.active{color:var(--c-cyan);border-color:#7c3aed40;border-left-color:var(--c-cyan);background:#7c3aed14}.sort-wrapper{align-items:center;display:inline-flex}.sort-select{letter-spacing:0;color:var(--t-soft);border-radius:var(--r-sm);cursor:pointer;appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239491b2' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") right .55rem center no-repeat;border:1px solid #ffffff12;outline:none;padding:.32rem 1.7rem .32rem .75rem;font-size:.72rem;font-weight:500;transition:border-color .18s,color .18s,background-color .18s}.sort-select:hover{color:var(--c-cyan);background-color:#8b5cf60f;border-color:#8b5cf64d}.sort-select:focus-visible{border-color:var(--b-active);outline:2px solid var(--focus-ring);outline-offset:2px}.sort-select option{color:var(--t-primary);background:#1c1c2e}:root[data-theme=light] .sort-select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236b6882' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}:root[data-theme=light] .sort-select option{color:var(--t-primary);background:#fff}#clear-done{color:var(--c-pink);background:#fb71850f;border-color:#fb718533}#clear-done:hover{color:var(--c-pink);background:#fb71851f;border-color:#fb718566}.backup-tools{flex-wrap:wrap;flex-shrink:0;gap:.5rem;margin-bottom:.6rem;display:flex}#import-file{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.task-list{scrollbar-width:thin;scrollbar-color:#8b5cf62e transparent;padding-bottom:2rem;padding-right:.2rem;list-style:none;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 3rem),#0000 100%);mask-image:linear-gradient(#000 calc(100% - 3rem),#0000 100%)}.task-list::-webkit-scrollbar{width:4px}.task-list::-webkit-scrollbar-track{background:0 0}.task-item{padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--r-md);margin-bottom:var(--sp-2);cursor:pointer;max-width:100%;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), opacity var(--dur-base) var(--ease-out);animation:itemIn .22s var(--ease-out) both;box-shadow:var(--shadow-card);gap:0;display:grid;position:relative;overflow:hidden}.task-item:before{content:"";border-radius:0 var(--r-pill) var(--r-pill) 0;width:3px;height:18px;transition:height var(--dur-base) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#8b5cf633;position:absolute;top:50%;left:0;transform:translateY(-50%)}.task-item:has(.priority-high-btn):before{background:#fb718566;height:50%}.task-item:has(.priority-medium-btn):before{background:#fbbf2466;height:50%}.task-item:has(.priority-low-btn):before{background:#60a5fa66;height:50%}.task-item:hover{background:var(--surface-raised);border-color:var(--border-default);box-shadow:var(--shadow-md);transform:translateY(-1px)}.task-item:hover:before{height:60%;box-shadow:none;background:#8b5cf68c}.task-item:has(.priority-high-btn):hover:before{box-shadow:none;background:#fb7185a6}.task-item:has(.priority-medium-btn):hover:before{box-shadow:none;background:#fbbf24a6}.task-item:has(.priority-low-btn):hover:before{box-shadow:none;background:#60a5faa6}.task-item:has(.status-progress-btn){background:#34d39908}.task-item:has(.status-waiting-btn){background:#fbbf2408}.task-item:focus-visible{border-color:var(--c-primary-500);box-shadow:var(--ring-primary);outline:none}:root[data-theme=light] .task-item{background:var(--surface-card);border-color:var(--border-default);box-shadow:var(--shadow-sm)}:root[data-theme=light] .task-item:before{background:#7c3aed38}:root[data-theme=light] .task-item:hover{background:var(--surface-raised);border-color:var(--border-strong);box-shadow:var(--shadow-md)}:root[data-theme=light] .task-item:hover:before{background:#7c3aedd9;box-shadow:0 0 8px #7c3aed40}@keyframes itemIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes itemOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}@keyframes taskComplete{0%{opacity:1;transform:scale(1)}20%{opacity:1;transform:scale(1.005)}to{opacity:.45;transform:scale(1)}}@keyframes taskUncomplete{0%{opacity:.5;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.task-completing{pointer-events:none;animation:.32s cubic-bezier(.4,0,.2,1) forwards taskComplete}.task-uncompleting{pointer-events:none;animation:.22s forwards taskUncomplete}.task-main-row{justify-content:space-between;align-items:center;gap:var(--sp-3);min-width:0;display:flex}.task-summary{align-items:center;gap:var(--sp-3);flex:1;min-width:0;display:flex;overflow:hidden}.task-summary .task-toggle{flex-shrink:0}.task-toggle{appearance:none;border:1.5px solid var(--border-strong);border-radius:var(--r-pill);cursor:pointer;width:18px;height:18px;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:0 0;flex-shrink:0;position:relative}.task-toggle:checked{background:var(--c-primary-500);border-color:var(--c-primary-500);animation:check-pop .25s var(--ease-out) both;box-shadow:0 0 8px #8b5cf666}.task-toggle:checked:after{content:"✓";color:#fff;animation:check-draw .22s var(--ease-out) 50ms both;place-items:center;font-size:11px;font-weight:800;line-height:1;display:grid;position:absolute;inset:0}@keyframes check-pop{0%{transform:scale(.72)}60%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes check-draw{0%{clip-path:inset(0 100% 0 0);opacity:.4}to{clip-path:inset(0 0% 0 0);opacity:1}}.task-toggle:hover{border-color:var(--c-primary-400);box-shadow:0 0 6px #8b5cf633}:root[data-theme=light] .task-toggle:checked{background:var(--c-primary-500);border-color:var(--c-primary-500);box-shadow:0 0 8px #7c3aed4d}.task-text{font-family:var(--font-sans);font-size:var(--fs-md);font-weight:var(--fw-regular);letter-spacing:var(--tracking-tight);color:var(--text-primary);cursor:text;min-width:0;transition:color var(--dur-fast) var(--ease-out), text-decoration-color var(--dur-base) ease;flex:1;line-height:1.4;-webkit-text-decoration:line-through #0000;text-decoration:line-through #0000}.task-item:not(.expanded) .task-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.task-item.expanded .task-text{white-space:normal;overflow-wrap:anywhere;line-height:var(--lh-base)}.task-item.done{opacity:.45}.task-item.done:before{background:var(--border-default)!important;box-shadow:none!important}.task-item.done .task-text{-webkit-text-decoration-color:var(--text-tertiary);text-decoration-color:var(--text-tertiary);color:var(--text-tertiary)}.expand-indicator{color:var(--text-tertiary);opacity:.5;transition:transform var(--dur-base) var(--ease-out), color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);flex-shrink:0;font-size:.7rem}.task-item:hover .expand-indicator{opacity:1}.task-item.expanded .expand-indicator{color:var(--c-primary-400);opacity:1;transform:rotate(180deg)}.task-actions{align-items:center;gap:var(--sp-1);flex-wrap:nowrap;flex-shrink:0;display:flex}.task-actions>button{min-width:26px;height:26px;padding:0 var(--sp-2);border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);font-family:var(--font-sans);letter-spacing:var(--tracking-tight);text-transform:none;color:var(--text-tertiary);cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.task-actions>.priority-btn,.task-actions>.status-btn,.task-actions>.date-btn,.task-actions>.recur-btn,.task-actions>.comment-btn,.task-actions>.label-add-btn,.task-actions>.subtask-add-btn{opacity:0;pointer-events:none;transform:scale(.96)}.task-item:hover .task-actions>button,.task-item:focus-within .task-actions>button,.task-actions>.priority-btn.priority-high-btn,.task-actions>.priority-btn.priority-medium-btn,.task-actions>.priority-btn.priority-low-btn,.task-actions>.status-btn.status-progress-btn,.task-actions>.status-btn.status-waiting-btn{opacity:1;pointer-events:auto;transform:scale(1)}.comment-btn:hover{color:var(--c-primary-400);background:#8b5cf614;border-color:#8b5cf638}.subtask-add-btn:hover{color:var(--c-info);background:#60a5fa14;border-color:#60a5fa38}body.hide-task-priority .task-actions>.priority-btn:not(.priority-high-btn):not(.priority-medium-btn):not(.priority-low-btn),body.hide-task-status .task-actions>.status-btn:not(.status-progress-btn):not(.status-waiting-btn),body.hide-task-date .task-actions>.date-btn,body.hide-task-recur .task-actions>.recur-btn,body.hide-task-comment .task-actions>.comment-btn,body.hide-task-labels .task-actions>.label-add-btn,body.hide-task-subtasks .task-actions>.subtask-add-btn{display:none!important}body.tasks-compact .task-item{padding-top:var(--sp-2);padding-bottom:var(--sp-2);border-radius:var(--r-sm);margin-bottom:2px}body.tasks-compact .task-item:before{height:12px}body.tasks-compact .task-main-row{gap:var(--sp-2)}body.tasks-compact .task-text{font-size:var(--fs-sm)}body.tasks-compact .task-labels-container{gap:2px}body.tasks-compact .task-labels-container .task-label-chip{padding:1px 6px;font-size:.68rem}.task-pref-list{flex-direction:column;gap:2px;margin:.5rem 0 .75rem;display:flex}.task-pref-row{cursor:pointer;border-radius:var(--r-sm);transition:background var(--dur-fast) var(--ease-out);align-items:center;gap:10px;padding:9px 10px;display:flex}.task-pref-row:hover{background:#8b5cf612}:root[data-theme=light] .task-pref-row:hover{background:#7c3aed0f}.task-pref-icon{color:var(--text-tertiary);flex-shrink:0;justify-content:center;align-items:center;width:16px;display:flex}.task-pref-icon svg{width:14px;height:14px}.task-pref-label{color:var(--text-secondary);flex:1;font-size:.875rem}.task-pref-toggle{border-radius:var(--r-pill);cursor:pointer;width:38px;height:22px;transition:background .2s var(--ease-out), border-color .2s;background:#ffffff12;border:1px solid #ffffff1a;flex-shrink:0;position:relative}:root[data-theme=light] .task-pref-toggle{background:#00000014;border-color:#0000001a}.task-pref-toggle.task-pref-on{background:linear-gradient(135deg, var(--c-primary-500), var(--c-primary-600));border-color:var(--c-primary-500);box-shadow:0 0 10px #8b5cf64d}.task-pref-thumb{width:14px;height:14px;transition:left .2s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.task-pref-toggle.task-pref-on .task-pref-thumb{left:19px}.delete-btn{color:#fb718573;margin-left:var(--sp-2);border-left:1px solid var(--border-subtle);padding-left:var(--sp-2);opacity:.5}.task-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:var(--c-danger);box-shadow:none;background:#fb718514;border-color:#fb718538;transform:scale(1)}.task-extra-content{opacity:0;gap:.55rem;min-width:0;max-height:0;transition:max-height .28s,opacity .2s,padding .28s;display:grid;overflow:hidden}.task-item.expanded .task-extra-content{opacity:1;border-top:1px solid var(--b-subtle);max-height:400px;margin-top:.55rem;padding-top:.65rem}.task-comment{border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--c-primary-300);word-break:break-word;overflow-wrap:anywhere;background:#8b5cf60d;border:1px solid #8b5cf624;border-left:2px solid #8b5cf673;margin:0;padding:.5rem .75rem;font-size:.8rem;line-height:1.5}:root[data-theme=light] .task-comment{color:var(--c-cyan);background:#7c3aed0a;border-color:#7c3aed24 #7c3aed24 #7c3aed24 #7c3aed73}.subtask-list{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.subtask-item{border:1px solid var(--border-subtle);border-radius:var(--r-md);background:var(--surface-input);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;gap:.5rem;padding:.36rem .6rem;display:flex}.subtask-item:hover{background:#8b5cf60f;border-color:#8b5cf640;transform:translate(2px);box-shadow:inset 2px 0 #8b5cf680}:root[data-theme=light] .subtask-item{background:#00000005;border-color:#00000012}.subtask-checkbox{cursor:pointer;flex-shrink:0}.subtask-text{color:var(--t-primary);overflow-wrap:anywhere;cursor:text;flex:1;min-width:0;font-size:.86rem}.subtask-text.done{color:var(--t-muted);opacity:.65;text-decoration:line-through}.subtask-inline-edit{padding:.05rem .32rem;font-size:.86rem}.subtask-delete-btn{color:#fb718573;background:0 0;border-color:#0000;padding:.1rem .35rem;font-size:.78rem}.subtask-delete-btn:hover{color:var(--c-pink);box-shadow:none;background:#fb718514;transform:none}.subtask-empty{color:var(--t-muted);padding:.15rem 0;font-size:.78rem;font-style:italic}.stats{background-color:var(--surface-canvas);border-top:1px solid var(--b-subtle);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;width:calc(100% - 50px);margin-top:.7rem;padding-top:.7rem;display:flex;position:absolute;bottom:15px}#task-counter{font-variant-numeric:tabular-nums;color:var(--text-tertiary);font-size:.72rem}.save-status{color:var(--text-tertiary);font-size:.7rem}.notes-label{color:var(--t-soft);margin-bottom:.55rem;font-size:.76rem;font-weight:500;display:inline-block}.editor-toolbar{background:var(--bg-glass);border:1px solid var(--b-subtle);border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:1px solid var(--b-subtle);flex-shrink:0;gap:.35rem;padding:.42rem .6rem;display:flex}.fmt-btn{font-family:var(--font-body);min-width:2rem;height:2rem;color:var(--t-soft);border-radius:var(--radius-sm);letter-spacing:0;text-transform:none;background:0 0;border:1px solid #0000;place-items:center;padding:0 .5rem;font-size:.88rem;font-weight:500;transition:all .15s;display:grid}.fmt-btn:hover{color:var(--c-cyan);box-shadow:none;background:#8b5cf614;border-color:#8b5cf62e;transform:none}.fmt-btn.fmt-active{color:var(--c-cyan);border-color:var(--b-active);background:#8b5cf61f}:root[data-theme=light] .fmt-btn:hover,:root[data-theme=light] .fmt-btn.fmt-active{color:var(--c-cyan)}:root[data-theme=light] .fmt-btn.fmt-active{border-color:var(--b-active);background:#7c3aed17}.notes-editor{width:100%;min-height:0;font-family:var(--font-sans);font-size:.95rem;line-height:var(--lh-relaxed);letter-spacing:0;color:var(--t-primary);background:var(--bg-glass);word-break:break-word;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#8b5cf62e transparent;border-top:none;outline:none;flex:1;padding:1rem 1.1rem;line-height:1.75;transition:border-color .18s;overflow-y:auto}.notes-editor::-webkit-scrollbar{width:4px}.notes-editor::-webkit-scrollbar-track{background:0 0}.notes-editor:focus{border-color:var(--b-active);background:#14141ee6}.notes-editor:empty:before{content:attr(data-placeholder);color:var(--t-muted);pointer-events:none;font-style:italic}:root[data-theme=light] .notes-editor{background:#ffffffe6;border-color:#00000017}:root[data-theme=light] .notes-editor:focus{background:#fff}:root[data-theme=light] .editor-toolbar{background:#ffffffd9;border-color:#00000017}#notes-status{color:var(--t-muted);flex-shrink:0;margin-top:.5rem;font-size:.7rem}input.inline-edit{font-family:var(--font-body);color:var(--t-primary);border:1px solid var(--c-primary-500);border-radius:var(--r-md);width:100%;min-width:0;box-shadow:var(--ring-primary);caret-color:var(--c-primary-400);background:#8b5cf60f;outline:none;padding:.1rem .42rem;font-size:.9rem}:root[data-theme=light] input.inline-edit{border-color:var(--b-active);box-shadow:var(--glow-blue);caret-color:var(--c-cyan);background:#fff}.status-btn{color:var(--t-muted);letter-spacing:0;text-transform:none;background:0 0;border-color:#0000;padding:.28rem .52rem;font-size:.7rem;font-weight:500;transition:all .18s}.status-btn:hover{color:var(--t-soft);box-shadow:none;border-color:#ffffff24}.status-btn.status-progress-btn{color:var(--c-green);border-radius:var(--r-pill);background:#34d39914;border-color:#34d39947}.status-btn.status-progress-btn:hover{border-color:#34d3998c;box-shadow:0 0 12px #34d3992e}.status-btn.status-waiting-btn{color:var(--c-gold);border-radius:var(--r-pill);background:#fbbf2414;border-color:#fbbf2447}.status-btn.status-waiting-btn:hover{border-color:#fbbf248c;box-shadow:0 0 12px #fbbf242e}.task-item.status-progress{background:#34d3990a;border-color:#34d39938}.task-item.status-progress:before{background:linear-gradient(180deg, var(--c-green), #10b98166);opacity:1}.task-item.status-waiting{background:#fbbf240a;border-color:#fbbf2438}.task-item.status-waiting:before{background:linear-gradient(180deg, var(--c-gold), #d9770666);opacity:1}:root[data-theme=light] .task-item.status-progress{background:#10b98114;border-color:#10b9814d}:root[data-theme=light] .task-item.status-waiting{background:#d9770614;border-color:#d977064d}:root[data-theme=light] .status-btn.status-progress-btn{color:#059669;background:#10b9811a;border-color:#10b98159}:root[data-theme=light] .status-btn.status-waiting-btn{color:#d97706;background:#d977061a;border-color:#d9770659}@media (width<=520px){.task-actions{gap:.3rem}.comment-btn,.subtask-add-btn{display:none}.task-item.expanded .comment-btn,.task-item.expanded .subtask-add-btn{display:inline-flex}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(12px);opacity:0;background:#040409c7;justify-content:center;align-items:center;padding:1rem;transition:opacity .18s;display:flex;position:fixed;inset:0}.modal-overlay.modal-visible{opacity:1}.modal-box{opacity:0;background:linear-gradient(160deg,#1c1c2e 0%,#111119 100%);border:1px solid #8b5cf62e;border-radius:16px;width:min(420px,92vw);padding:1.75rem 1.75rem 1.4rem;transition:transform .24s cubic-bezier(.16,1,.3,1),opacity .18s;position:relative;overflow:hidden;transform:scale(.96)translateY(10px);box-shadow:0 0 0 1px #8b5cf614,0 4px 6px #0006,0 20px 60px #000000b3,0 0 80px #8b5cf60f}.modal-box:before{content:"";background:linear-gradient(90deg,#0000 0%,#8b5cf6e6 30%,#6366f1b3 70%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.modal-overlay.modal-visible .modal-box{opacity:1;transform:scale(1)translateY(0)}:root[data-theme=light] .modal-overlay{background:#8c8caf73}:root[data-theme=light] .modal-box{background:linear-gradient(160deg,#fff 0%,#f5f5fb 100%);border-color:#7c3aed24;box-shadow:0 0 0 1px #7c3aed0f,0 4px 6px #0000000f,0 20px 48px #0000001f}:root[data-theme=light] .modal-box:before{background:linear-gradient(90deg,#0000 0%,#7c3aedb3 30%,#4f46e580 70%,#0000 100%)}.modal-icon{border-radius:var(--r-lg);width:40px;height:40px;color:var(--c-primary-400);background:#8b5cf61f;border:1px solid #8b5cf633;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.modal-icon svg,.modal-icon .lucide{width:18px;height:18px}.modal-icon--danger{color:#f43f5e;background:#f43f5e1a;border-color:#f43f5e38}.modal-label{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:1.1rem;font-size:1rem;font-weight:600;line-height:1.4}.modal-label strong{color:var(--c-primary-300);font-weight:600}.modal-label.modal-label-error{color:var(--c-danger)}.modal-input{box-sizing:border-box;width:100%;font-family:var(--font-body);color:var(--text-primary);border-radius:var(--r-md);caret-color:var(--c-primary-400);background:#ffffff0a;border:1px solid #ffffff17;outline:none;margin-bottom:1.25rem;padding:.65rem .9rem;font-size:.95rem;transition:border-color .14s,background .14s,box-shadow .14s}.modal-input::placeholder{color:var(--text-tertiary);font-style:normal}.modal-input:focus{background:#8b5cf612;border-color:#8b5cf68c;box-shadow:0 0 0 3px #8b5cf624}:root[data-theme=light] .modal-input{color:var(--text-primary);background:#00000008;border-color:#0000001a}:root[data-theme=light] .modal-input:focus{background:#7c3aed0a;border-color:#7c3aed73;box-shadow:0 0 0 3px #7c3aed1a}.modal-actions{justify-content:flex-end;gap:.5rem;padding-top:.25rem;display:flex}.modal-btn{letter-spacing:0;text-transform:none;border-radius:var(--r-md);cursor:pointer;border:1px solid #0000;padding:.55rem 1.1rem;font-size:.82rem;font-weight:600;transition:background .13s,border-color .13s,box-shadow .13s,transform .13s;position:relative;overflow:hidden}.modal-btn-cancel{color:var(--text-tertiary);background:0 0;border-color:#ffffff14}.modal-btn-cancel:hover{color:var(--text-secondary);background:#ffffff0d;border-color:#ffffff26}:root[data-theme=light] .modal-btn-cancel{color:var(--text-tertiary);border-color:#0000001a}:root[data-theme=light] .modal-btn-cancel:hover{color:var(--text-secondary);background:#0000000a;border-color:#0000002e}.modal-btn-confirm{color:#fff;background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);border-color:#8b5cf680;box-shadow:inset 0 1px #ffffff1f,0 4px 14px #8b5cf64d}.modal-btn-confirm:hover{color:#fff;background:linear-gradient(135deg,#7c3aed 0%,#4f46e5 100%);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff26,0 6px 20px #8b5cf670}.modal-btn-danger{color:#fff;background:linear-gradient(135deg,#f43f5e 0%,#e11d48 100%);border-color:#e11d4880;box-shadow:inset 0 1px #ffffff1a,0 4px 14px #e11d4840}.modal-btn-danger:hover{color:#fff;background:linear-gradient(135deg,#e11d48 0%,#be123c 100%);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff1f,0 6px 18px #e11d4861}:root[data-theme=light] .modal-btn-confirm{background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);border-color:#7c3aed66;box-shadow:inset 0 1px #ffffff2e,0 4px 14px #7c3aed47}:root[data-theme=light] .modal-btn-danger{box-shadow:inset 0 1px #ffffff24,0 4px 14px #e11d4833}.task-due-container{flex-shrink:0;align-items:center;display:inline-flex}.due-badge{letter-spacing:.02em;text-transform:uppercase;border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;flex-shrink:0;margin-right:.35rem;padding:.1rem .4rem;font-size:.63rem;font-weight:600}.due-future{color:var(--c-blue);background:#60a5fa14;border-color:#60a5fa38}.due-soon{color:var(--c-gold);background:#fbbf2412;border-color:#fbbf2438}.due-today{color:#fb923c;background:#fb923c1f;border-color:#fb923c80;font-weight:700;animation:2s ease-in-out infinite pulseDue}.due-overdue{color:var(--c-pink);background:#fb71851a;border-color:#fb718566;animation:1.5s ease-in-out infinite pulseDue}@keyframes pulseDue{0%,to{opacity:1}50%{opacity:.6}}:root[data-theme=light] .due-future{color:var(--c-blue);background:#2563eb12;border-color:#2563eb38}:root[data-theme=light] .due-soon{color:#d97706;background:#d9770612;border-color:#d9770640}:root[data-theme=light] .due-today{color:#d97706;background:#d977061a;border-color:#d9770666}:root[data-theme=light] .due-overdue{color:var(--c-pink);background:#e11d4812;border-color:#e11d4859}.recur-badge{letter-spacing:.01em;border-radius:var(--r-pill);color:var(--c-primary-300);white-space:nowrap;background:#8b5cf61a;border:1px solid #8b5cf640;align-items:center;gap:.18rem;padding:.1rem .4rem;font-size:.68rem;font-weight:500;display:inline-flex}.recur-badge .lucide{stroke-width:2.5px;width:9px;height:9px}.recur-btn{color:var(--t-muted);letter-spacing:0;text-transform:none;background:0 0;border-color:#0000;padding:.28rem .52rem;font-size:.7rem}.recur-btn:hover{color:var(--c-primary-300);box-shadow:none;background:#8b5cf612;border-color:#8b5cf638;transform:none}.recur-btn.recur-active{color:var(--c-primary-300);background:#8b5cf614;border-color:#8b5cf647}.recur-toast{opacity:0;background:var(--surface-overlay);color:var(--c-primary-300);border-radius:var(--r-lg);letter-spacing:0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;pointer-events:none;white-space:nowrap;border:1px solid #8b5cf659;padding:.5rem 1rem;font-size:.74rem;font-weight:600;transition:opacity .22s,transform .22s;position:fixed;bottom:2.5rem;left:50%;transform:translate(-50%)translateY(20px)}.recur-toast-visible{opacity:1;transform:translate(-50%)translateY(0)}.date-btn{color:var(--t-muted);letter-spacing:0;text-transform:none;background:0 0;border-color:#0000;padding:.28rem .52rem;font-size:.7rem}.date-btn:hover{color:var(--c-cyan);box-shadow:none;background:#8b5cf612;border-color:#8b5cf62e;transform:none}.date-quick-picks{grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:.75rem;display:grid}.date-quick-btn{font-family:var(--font-body);letter-spacing:0;text-transform:none;border-radius:var(--radius-sm);border:1px solid var(--b-subtle);color:var(--t-soft);cursor:pointer;text-align:center;white-space:nowrap;background:#ffffff0a;padding:.52rem .6rem;font-size:.78rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}.date-quick-btn:hover{color:var(--c-cyan);box-shadow:none;background:#8b5cf61a;border-color:#8b5cf64d;transform:none}.date-quick-btn.active{border-color:var(--b-active);color:var(--c-cyan);background:#8b5cf624;font-weight:600}:root[data-theme=light] .date-quick-btn{color:var(--t-soft);background:#00000008;border-color:#00000017}:root[data-theme=light] .date-quick-btn:hover,:root[data-theme=light] .date-quick-btn.active{color:var(--c-cyan);background:#7c3aed14;border-color:#7c3aed4d}.modal-input-date{cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light] .modal-input-date{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.modal-actions-date{justify-content:space-between}.modal-btn-clear{color:var(--c-pink);background:0 0;border-color:#fb718538;margin-right:auto}.modal-btn-clear:hover{color:var(--c-pink);box-shadow:none;background:#fb718514;border-color:#fb718573;transform:none}.drag-handle{color:var(--t-muted);cursor:grab;opacity:.35;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;padding:0 .25rem 0 0;font-size:.95rem;line-height:1;transition:color .15s,opacity .15s}.drag-handle:hover{color:var(--c-cyan);opacity:1;cursor:grab}.drag-handle:active{cursor:grabbing}.task-item.drag-ghost{opacity:.3;border-color:var(--c-cyan)!important}.project-drag-handle{color:var(--t-muted);cursor:grab;opacity:0;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;align-items:center;margin-right:.15rem;transition:opacity .13s;display:flex}.project-drag-handle .lucide{stroke-width:2px;width:12px;height:12px}.project-item:hover .project-drag-handle{opacity:.45}.project-drag-handle:hover{color:var(--c-cyan);opacity:1!important}.project-drag-handle:active{cursor:grabbing}.project-item.drag-ghost{opacity:.3;background:#8b5cf60f!important}.drop-indicator{background:linear-gradient(90deg, transparent, var(--c-cyan), var(--c-violet), transparent);pointer-events:none;border-radius:999px;height:2px;margin:2px 0;animation:.1s both dropLineIn;box-shadow:0 0 8px #8b5cf680}@keyframes dropLineIn{0%{opacity:0;transform:scaleX(.5)}to{opacity:1;transform:scaleX(1)}}.priority-btn{color:var(--t-muted);letter-spacing:0;text-transform:none;background:0 0;border-color:#0000;padding:.2rem .42rem;font-size:.63rem;font-weight:500;transition:all .18s}.priority-btn svg{width:12px;height:12px}.priority-btn:hover{color:var(--t-soft);box-shadow:none;border-color:#ffffff24;transform:none}.priority-btn.priority-high-btn{letter-spacing:.03em;text-transform:uppercase;color:var(--c-pink);border-radius:var(--r-pill);background:#fb718514;border-color:#fb718538;padding:.1rem .4rem;font-size:.62rem;font-weight:700}.priority-btn.priority-high-btn:hover{box-shadow:none;background:#fb718521;border-color:#fb718573}.priority-btn.priority-medium-btn{letter-spacing:.03em;text-transform:uppercase;color:var(--c-gold);border-radius:var(--r-pill);background:#fbbf2412;border-color:#fbbf2438;padding:.1rem .4rem;font-size:.62rem;font-weight:700}.priority-btn.priority-medium-btn:hover{box-shadow:none;background:#fbbf241f;border-color:#fbbf2473}.priority-btn.priority-low-btn{letter-spacing:.03em;text-transform:uppercase;color:var(--c-blue);border-radius:var(--r-pill);background:#60a5fa12;border-color:#60a5fa38;padding:.1rem .4rem;font-size:.62rem;font-weight:700}.priority-btn.priority-low-btn:hover{box-shadow:none;background:#60a5fa1f;border-color:#60a5fa73}.task-item.priority-high:before{background:var(--c-pink);box-shadow:3px 0 12px #fb718566}.task-item.priority-medium:before{background:var(--c-gold);box-shadow:3px 0 12px #fbbf244d}.task-item.priority-low:before{background:var(--c-blue);box-shadow:3px 0 12px #60a5fa4d}.task-labels-container{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.22rem;display:inline-flex}.label-badge{letter-spacing:.01em;border-radius:var(--r-pill);background:var(--tag-bg,#8b5cf61f);color:var(--tag-fg,var(--c-primary-300));border:1px solid color-mix(in srgb, var(--tag-fg,var(--c-primary-300)) 30%, transparent);white-space:nowrap;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none;padding:.12rem .48rem;font-size:.7rem;font-weight:500}.label-badge:hover{opacity:.75;transform:scale(1.05)}.label-add-btn{color:var(--c-violet);background:#c084fc0f;border-color:#c084fc33;padding:.28rem .52rem;font-size:.7rem}.label-add-btn:hover{color:var(--c-violet);border-color:#c084fc73;box-shadow:0 0 10px #c084fc26}.label-filter-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.3rem;margin-bottom:.3rem;padding:.4rem 0;display:flex}.label-filter-btn{letter-spacing:.01em;border-radius:var(--r-pill);color:var(--t-muted);border:1px solid var(--b-subtle);cursor:pointer;white-space:nowrap;background:0 0;padding:.26rem .62rem;font-size:.72rem;font-weight:500;transition:all .15s}.label-filter-btn:hover{color:var(--t-soft);box-shadow:none;border-color:#ffffff2e;transform:none}.label-filter-btn.active{background:var(--tag-bg,#8b5cf61f);color:var(--tag-fg,var(--c-primary-300));border-color:color-mix(in srgb, var(--tag-fg,var(--c-primary-400)) 45%, transparent)}.label-filter-btn.active:first-child{color:var(--c-primary-300);background:#8b5cf61f;border-color:#8b5cf666}.label-picker-list{scrollbar-width:thin;scrollbar-color:#8b5cf626 transparent;flex-direction:column;gap:.3rem;max-height:180px;margin-bottom:.7rem;display:flex;overflow-y:auto}.label-picker-row{border-radius:var(--radius-sm);border:1px solid var(--b-subtle);cursor:pointer;background:#ffffff08;align-items:center;gap:.52rem;padding:.32rem .52rem;transition:background .14s;display:flex}.label-picker-row:hover{background:#8b5cf60f}.label-picker-row input[type=checkbox]{accent-color:var(--c-cyan);cursor:pointer;flex-shrink:0;width:.88rem;height:.88rem}.label-picker-dot{border-radius:50%;flex-shrink:0;width:.6rem;height:.6rem}.label-picker-name{color:var(--t-primary);flex:1;font-size:.82rem;font-weight:500}.label-delete-btn{color:#fb718573;background:0 0;border-color:#0000;flex-shrink:0;margin-left:auto;padding:.08rem .32rem;font-size:.72rem}.label-delete-btn:hover{color:var(--c-pink);box-shadow:none;background:#fb718514;transform:none}.label-picker-new{align-items:center;gap:.45rem;margin-bottom:.45rem;display:flex}.label-create-btn{flex-shrink:0;padding:.52rem .75rem;font-size:.74rem}:root[data-theme=light] .label-picker-row{background:#00000005}:root[data-theme=light] .label-picker-row:hover{background:#7c3aed0d}:root[data-theme=light] .label-add-btn{color:var(--c-violet);background:#7c3aed0d;border-color:#7c3aed38}@media (width<=768px){.sidebar-collapse-btn,.sidebar-expand-btn,.sidebar-expand-btn-empty{display:none!important}body{height:100dvh;overflow:hidden}.theme-toggle{display:none}.layout{flex-direction:column;height:100dvh;overflow:hidden}.mobile-body{flex-direction:row;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.task-action-sheet,.sheet-backdrop{position:fixed!important}.sidebar{z-index:300;width:min(280px,82vw);height:100%;box-shadow:none;transition:transform .28s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0);box-shadow:4px 0 24px #0000008c}.sidebar-backdrop{z-index:299;background:#00000080;animation:.2s both fadeIn;display:none;position:absolute;inset:0}.sidebar-backdrop.active{display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mobile-header{padding:0 var(--sp-3);justify-content:space-between;align-items:center;gap:var(--sp-2);border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:200;background:#09090dfa;flex-shrink:0;width:100%;height:56px;display:flex;position:relative}:root[data-theme=light] .mobile-header{border-bottom-color:var(--border-default);background:#f6f6fcfc}.mobile-header-left,.mobile-header-right{flex-shrink:0;align-items:center;display:flex}.mobile-header-center{flex:1;justify-content:flex-start;align-items:center;min-width:0;display:flex;overflow:hidden}.mobile-header-center h1{font-size:var(--fs-md);margin-bottom:0}.mobile-header-project{align-items:center;gap:var(--sp-2);flex-direction:row;flex:1;min-width:0;display:none;overflow:hidden}.mobile-header-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;min-width:0;line-height:1.2;overflow:hidden}.mobile-header-count{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-primary-300);border-radius:var(--r-pill);white-space:nowrap;background:#8b5cf624;border:1px solid #8b5cf638;flex-shrink:0;padding:2px 8px;line-height:1}:root[data-theme=light] .mobile-header-count{color:var(--c-primary-500);background:#7c3aed1a;border-color:#7c3aed38}.mobile-header--project .mobile-header-project{display:flex}.mobile-header--project .brand-logo--dark,.mobile-header--project .brand-logo--light{display:none!important}.tasks-header{display:none}.mobile-icon-btn{border-radius:var(--r-md);width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);letter-spacing:0;text-transform:none;background:0 0;border:none;flex-shrink:0;place-items:center;padding:0;font-family:inherit;display:grid}.mobile-icon-btn:active{color:var(--c-primary-300);background:#8b5cf61a;transform:none}:root[data-theme=light] .mobile-icon-btn:active{color:var(--c-primary-500);background:#7c3aed14}.mobile-icon-btn .lucide{stroke-width:2px;width:22px;height:22px}.main-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.tasks-panel{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.project-title{white-space:nowrap;text-overflow:ellipsis;font-size:clamp(.88rem,4vw,1.05rem);overflow:hidden}.header-actions{display:none}.ctrl-bar{padding:var(--sp-2) var(--sp-3) 0;animation:none}.view-nav{gap:var(--sp-2);margin-top:var(--sp-2);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border-subtle);flex-wrap:nowrap;align-items:center}.view-nav-tabs{border-radius:var(--r-md);flex:1;grid-template-columns:repeat(4,1fr);gap:2px;width:auto;min-width:0;padding:3px;display:grid}.view-tab{flex:unset;border-radius:var(--r-sm);justify-content:center;gap:0;padding:6px;font-size:0}.view-tab:first-child,.view-tab:last-child{border-radius:var(--r-sm)}.view-tab svg{stroke-width:2px;width:18px;height:18px}.view-tab span{display:none}.view-nav-right{justify-content:flex-end;gap:var(--sp-1);border-bottom:none;flex:none;padding:0;display:flex}.select-mode-btn{display:none!important}.filter-trigger-btn,.more-actions-btn{border-radius:var(--r-md);justify-content:center;align-items:center;gap:0;width:36px;height:36px;padding:0;font-size:0;display:inline-flex}.filter-trigger-btn .lucide,.more-actions-btn .lucide{stroke-width:2px;width:16px;height:16px}.filter-trigger-btn .filter-caret,.filter-trigger-btn span{display:none}.filter-panel{top:auto;bottom:calc(56px + env(safe-area-inset-bottom,0));min-width:unset;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:1rem 1.1rem calc(1.2rem + env(safe-area-inset-bottom,0));z-index:500;border:none;border-top:2px solid #8b5cf673;animation:.22s cubic-bezier(.16,1,.3,1) both slideUpPanel;position:fixed;left:0;right:0;box-shadow:0 -8px 32px #0009}:root[data-theme=light] .filter-panel{border-top-color:#7c3aed59;box-shadow:0 -4px 24px #0000001a,0 -1px #0000000f}.filter-panel-opts{gap:6px}.filter-opt{padding:.38rem .75rem;font-size:.75rem}.more-actions-panel{top:auto;bottom:calc(56px + env(safe-area-inset-bottom,0));border-radius:var(--radius-lg) var(--radius-lg) 0 0;z-index:500;border:none;border-top:2px solid #8b5cf666;animation:.22s cubic-bezier(.16,1,.3,1) both slideUpPanel;position:fixed;left:0;right:0;box-shadow:0 -8px 32px #0009}:root[data-theme=light] .more-actions-panel{border-top-color:#7c3aed4d;box-shadow:0 -4px 24px #0000001a,0 -1px #0000000f}.more-actions-panel button{border-bottom:1px solid var(--b-subtle);min-height:44px;padding:.85rem 1.1rem;font-size:.82rem}.more-actions-panel button:last-child{border-bottom:none}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-5px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slideUpPanel{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.agenda-panel{padding:.4rem .85rem 0}.task-list{-webkit-overflow-scrolling:touch;padding:.5rem .72rem;padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0));flex:1;overflow-y:auto}.undo-toast{bottom:calc(56px + env(safe-area-inset-bottom,0) + 5rem)}.task-item{margin-bottom:var(--sp-2);padding:var(--sp-3) var(--sp-3);border-radius:var(--r-md)}.task-main-row{gap:6px var(--sp-2);flex-wrap:wrap;align-items:center}.task-item.expanded .task-text{white-space:normal;text-overflow:clip;font-weight:var(--fw-semibold);overflow:visible}.drag-handle{display:none}.task-summary{align-items:center;gap:var(--sp-3);flex:0 0 100%;min-width:0;display:flex;overflow:hidden}.task-text{font-size:var(--fs-base);font-weight:var(--fw-regular);white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text-primary);flex:1;overflow:hidden}.task-actions{padding-left:calc(20px + var(--sp-3));flex-wrap:wrap;flex:0 0 100%;align-items:center;gap:6px;display:flex}.task-main-row:not(:has(.due-badge,.priority-high-btn,.priority-medium-btn,.priority-low-btn,.status-progress-btn,.status-waiting-btn)) .task-actions{flex:none;margin-left:auto;padding-left:0}.task-main-row:not(:has(.due-badge,.priority-high-btn,.priority-medium-btn,.priority-low-btn,.status-progress-btn,.status-waiting-btn)) .task-summary{flex:1}.task-actions .task-kebab-btn{margin-left:auto}.task-actions .priority-btn,.task-actions .status-btn,.task-actions .date-btn,.task-actions .recur-btn,.task-actions .comment-btn,.task-actions .label-add-btn,.task-actions .subtask-add-btn,.task-actions .delete-btn{display:none}.task-actions .due-badge{font-size:var(--fs-xs);border-radius:var(--r-pill);margin-right:0;padding:2px 8px}.task-actions .priority-high-btn,.task-actions .priority-medium-btn,.task-actions .priority-low-btn,.task-actions .status-progress-btn,.task-actions .status-waiting-btn{font-size:var(--fs-xs);border-radius:var(--r-pill);padding:2px 8px;display:inline-flex}.task-item.expanded .task-actions .comment-btn,.task-item.expanded .task-actions .subtask-add-btn{display:none!important}.task-actions .expand-indicator{display:none}.task-kebab-btn{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex!important}.task-kebab-btn .lucide{stroke-width:2px;width:18px;height:18px}.task-kebab-btn:active{color:var(--c-primary-300);box-shadow:none;background:#8b5cf61a;transform:none}:root[data-theme=light] .task-kebab-btn:active{color:var(--c-primary-500);background:#7c3aed14}.task-action-sheet{z-index:400;border-radius:var(--radius-xl) var(--radius-xl) 0 0;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);padding:0 0 env(safe-area-inset-bottom,0);background:#1a1a2e;border-top:1px solid #8b5cf647;transition:transform .3s cubic-bezier(.16,1,.3,1);display:block;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 40px #000000b3}:root[data-theme=light] .task-action-sheet{background:#fff;border-top-color:#7c3aed38;box-shadow:0 -8px 40px #0000001f}.task-action-sheet.open{transform:translateY(0)}.task-action-sheet-handle{background:#ffffff2e;border-radius:999px;width:38px;height:4px;margin:.7rem auto .5rem}:root[data-theme=light] .task-action-sheet-handle{background:#00000026}.task-action-sheet-title{letter-spacing:0;color:var(--t-primary);white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff1a;padding:0 1.1rem .65rem;font-size:.78rem;font-weight:600;overflow:hidden}.task-action-sheet-body{grid-template-columns:1fr 1fr;gap:.5rem;padding:.75rem .95rem 1.2rem;display:grid}.sheet-action-btn{font-family:var(--font-body);letter-spacing:0;text-transform:none;border-radius:var(--radius-md);color:var(--t-soft);cursor:pointer;white-space:nowrap;background:#ffffff0e;border:1px solid #ffffff1a;justify-content:flex-start;align-items:center;gap:.5rem;width:100%;min-height:48px;padding:.78rem .9rem;font-size:.8rem;font-weight:600;transition:all .15s;display:flex}.sheet-action-btn:hover,.sheet-action-btn:active{color:var(--c-cyan);box-shadow:none;background:#8b5cf61a;border-color:#8b5cf666;transform:none}.sheet-action-btn.danger{color:var(--c-pink);background:#fb71850d;border-color:#fb718538}.sheet-action-btn.danger:hover,.sheet-action-btn.danger:active{color:var(--c-pink);box-shadow:none;background:#fb71851f;border-color:#fb718580}.sheet-action-btn.full-width{grid-column:1/-1}.sheet-sub-panel{border-top:1px solid var(--b-subtle);padding:.55rem .9rem .9rem;animation:.16s cubic-bezier(.16,1,.3,1) both dropdownIn}.sheet-sub-title{letter-spacing:.08em;text-transform:uppercase;color:var(--t-muted);margin-bottom:.45rem;font-size:.66rem;font-weight:700}.sheet-sub-grid{grid-template-columns:repeat(2,1fr);gap:.35rem;display:grid}.sheet-sub-btn{font-family:var(--font-body);letter-spacing:0;text-transform:none;border:1px solid var(--b-subtle);border-radius:var(--radius-sm);color:var(--t-soft);cursor:pointer;background:#ffffff0a;justify-content:center;align-items:center;width:100%;padding:.55rem .7rem;font-size:.76rem;font-weight:600;transition:all .13s;display:flex}.sheet-sub-btn:hover,.sheet-sub-btn:active{border-color:var(--b-active);color:var(--c-cyan);box-shadow:none;background:#8b5cf614;transform:none}.sheet-sub-btn.sub-high{color:var(--c-pink);background:#fb71850d;border-color:#fb718540}.sheet-sub-btn.sub-medium{color:var(--c-gold);background:#fbbf240d;border-color:#fbbf2440}.sheet-sub-btn.sub-low{color:var(--c-blue);background:#60a5fa0a;border-color:#60a5fa38}.sheet-sub-btn.sub-progress{color:var(--c-green);background:#34d3990d;border-color:#34d39940}.sheet-sub-btn.sub-waiting{color:var(--c-gold);background:#fbbf240d;border-color:#fbbf2440}.sheet-sub-btn.sub-none{color:var(--c-pink);background:0 0;border-color:#fb71852e;grid-column:1/-1}.sheet-backdrop{z-index:399;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;display:none;position:fixed;inset:0}.sheet-backdrop.active{display:block}.subtask-item{padding:.36rem .48rem}.subtask-item .subtask-text{font-size:.8rem}.subtask-inline-edit{font-size:1rem}.mobile-inline-actions{grid-template-columns:1fr;gap:.35rem;margin-top:.3rem;display:grid}.mobile-inline-btn{color:var(--t-soft);border:1px solid var(--b-subtle);background:#8b5cf60a;justify-content:center;padding:.42rem .55rem;font-size:.72rem;font-weight:500}.mobile-inline-btn:hover{color:var(--c-cyan);box-shadow:none;border-color:#8b5cf647;transform:none}.task-form{display:none}input.inline-edit,.modal-input{font-size:1rem}.stats{display:none}.label-filter-bar{scrollbar-width:none;flex-wrap:nowrap;gap:.28rem;padding:.35rem .72rem;overflow-x:auto}.label-filter-bar::-webkit-scrollbar{display:none}.empty-state{padding:2rem 1.4rem}.empty-state-icon .lucide{width:38px;height:38px}.modal-box{width:min(340px,90vw);padding:1.35rem 1.15rem}.notes-panel .tasks-header{padding:.55rem .85rem .38rem}.notes-panel .header-actions{display:none}.notes-link-mobile{display:inline-flex}.notes-editor{border-left:none;border-right:none;border-radius:0;padding:.8rem .88rem;font-size:1rem}.editor-toolbar{border-left:none;border-right:none;border-radius:0;padding:.38rem .65rem}#notes-status{margin-top:0;padding:.28rem .85rem .45rem}.notes-panel{padding:0}.sidebar-search-row{display:none}.mobile-bottom-nav{height:calc(56px + env(safe-area-inset-bottom,0));padding-bottom:env(safe-area-inset-bottom,0);border-top:1px solid var(--b-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:200;background:#09090dfa;flex-direction:row;flex-shrink:0;align-items:stretch;width:100%;display:flex}:root[data-theme=light] .mobile-bottom-nav{background:#f6f6fcfc;border-top-color:#00000014}.mobile-bottom-spacer{pointer-events:none;flex:0 0 80px}.mobile-bottom-btn{color:var(--text-tertiary);cursor:pointer;padding:var(--sp-2) 0 0;font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:0;text-transform:none;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.mobile-bottom-btn svg{stroke-width:1.75px;flex-shrink:0;width:22px;height:22px}.mobile-bottom-btn:before{content:"";border-radius:0 0 var(--r-pill) var(--r-pill);width:24px;height:3px;transition:background var(--dur-fast) var(--ease-out);background:0 0;position:absolute;top:0;left:50%;transform:translate(-50%)}.mobile-bottom-btn:active{color:var(--c-primary-300);box-shadow:none;background:0 0;border-color:#0000;transform:none}.mobile-bottom-btn.active{color:var(--c-primary-300)}.mobile-bottom-btn.active:before{background:var(--c-primary-500);box-shadow:0 0 8px #8b5cf680}:root[data-theme=light] .mobile-bottom-btn:hover,:root[data-theme=light] .mobile-bottom-btn:active,:root[data-theme=light] .mobile-bottom-btn.active{color:var(--c-primary-500)}:root[data-theme=light] .mobile-bottom-btn.active:before{background:var(--c-primary-500);box-shadow:0 0 8px #7c3aed66}.mobile-fab{bottom:calc(47px + env(safe-area-inset-bottom,0) - 22px);background:var(--grad-primary);color:#fff;cursor:pointer;z-index:380;width:60px;height:60px;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), opacity .15s var(--ease-out);border:0 solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:0;display:none;position:fixed;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #8b5cf666,0 8px 28px #8b5cf68c}:root[data-theme=light] .mobile-fab{border-color:#f6f6fcfc;box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #7c3aed66,0 8px 28px #7c3aed66}.mobile-fab.visible{display:flex}.mobile-fab svg{stroke-width:2.5px;width:24px;height:24px}.mobile-fab:active{transform:translate(-50%)scale(.92);box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #8b5cf666,0 4px 16px #8b5cf673}.fab-icon-close,.mobile-fab.open .fab-icon-plus{display:none}.mobile-fab.open .fab-icon-close{display:block}.mobile-fab.open{opacity:0;pointer-events:none;transform:translate(-50%)scale(.7)}.fab-backdrop{z-index:420;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;animation:.18s both fadeIn;display:none;position:fixed;inset:0}.fab-backdrop.active{display:block}.fab-sheet{z-index:430;transform:translateY(calc(100% + 56px + env(safe-area-inset-bottom,0) + 8px));visibility:hidden;background:#16162a;border-top:2px solid #8b5cf680;border-radius:20px 20px 0 0;padding:.55rem 1rem 1.5rem;transition:transform .28s cubic-bezier(.16,1,.3,1);display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 32px #000000a6}.fab-sheet.open{visibility:visible;transform:translateY(0)}:root[data-theme=light] .fab-sheet{background:#fafafd;border-top-color:#7c3aed66;box-shadow:0 -4px 24px #0000001a}.fab-sheet-drag{background:#ffffff26;border-radius:2px;width:36px;height:4px;margin:0 auto .85rem}:root[data-theme=light] .fab-sheet-drag{background:#0000001f}.fab-form{gap:.55rem;display:flex}.fab-form input{font-family:var(--font-sans);color:var(--text-primary);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-md);appearance:none;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);outline:none;flex:1;padding:.72rem .9rem;font-size:1rem}.fab-form input::placeholder{color:var(--text-tertiary)}.fab-form input:focus{border-color:var(--c-primary-500);box-shadow:var(--ring-primary)}.fab-form button[type=submit]{color:#fff;background:var(--grad-primary);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-semibold);padding:.72rem var(--sp-5);border-radius:var(--r-md);white-space:nowrap;border:1px solid #0000;flex-shrink:0;box-shadow:0 0 0 1px #8b5cf64d,0 4px 14px #8b5cf666}.fab-form button[type=submit]:active{transform:scale(.97)}.fab-form button[type=submit] svg{width:13px;height:13px}}@media (width>=769px){.sheet-backdrop,.sidebar-backdrop{display:none!important}}.global-search-btn{border:1px solid var(--border-subtle);color:var(--text-tertiary);border-radius:var(--r-md);font-size:.78rem;font-weight:500;font-family:var(--font-body);cursor:pointer;text-align:left;letter-spacing:0;text-transform:none;transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;padding:.42rem .72rem}.global-search-btn:hover{color:var(--c-primary-300);background:#8b5cf60f;border-color:#8b5cf659}.modal-box-search{flex-direction:column;width:min(540px,92vw);max-height:82vh;display:flex}.search-results{flex-direction:column;flex:1;gap:0;max-height:54vh;margin-top:.5rem;display:flex;overflow-y:auto}.search-hint{color:var(--t-muted);text-align:center;padding:1.4rem 0;font-size:.8rem}.search-section{flex-direction:column;gap:0;display:flex}.search-section+.search-section{margin-top:.5rem}.search-section-label{letter-spacing:var(--tracking-wider);text-transform:uppercase;border-radius:var(--r-sm) var(--r-sm) 0 0;align-items:center;gap:.4rem;margin-bottom:.18rem;padding:.28rem .5rem .22rem;font-size:.63rem;font-weight:700;display:flex}.search-section-label svg{flex-shrink:0;width:12px;height:12px}.search-section-label--tasks{color:var(--c-primary-400);background:color-mix(in srgb, var(--c-primary-500) 8%, transparent);border-bottom:1px solid color-mix(in srgb, var(--c-primary-500) 20%, transparent)}.search-section-label--notes{color:#f59e0b;background:#f59e0b14;border-bottom:1px solid #f59e0b33}.search-group{margin-bottom:.3rem}.search-group-heading{color:var(--text-tertiary);letter-spacing:.04em;text-transform:none;align-items:center;gap:.38rem;margin-bottom:.1rem;padding:.22rem .5rem;font-size:.67rem;font-weight:600;display:flex}.search-group-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.search-result-item{border-radius:var(--r-md);cursor:pointer;text-align:left;width:100%;color:var(--t-primary);letter-spacing:0;text-transform:none;transition:background var(--dur-fast) var(--ease-out);box-shadow:none;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.4rem .55rem .4rem 1.3rem;font-family:inherit;font-size:.84rem;font-weight:400;display:flex;position:relative}.search-result-item:hover{background:#8b5cf614}.search-result-item--note:hover{background:#f59e0b14}.search-result-done{opacity:.45}.search-result-check{color:var(--t-muted);align-items:center;display:flex;position:absolute;top:.48rem;left:.5rem}.search-result-check svg{width:12px;height:12px}.search-result-check--note{color:#f59e0b}.search-result-text{flex:1;line-height:1.3}.search-result-snippet{color:var(--t-muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.73rem;line-height:1.3;overflow:hidden}mark.search-hl{background:color-mix(in srgb, var(--c-gold) 30%, transparent);color:var(--c-gold);border-radius:2px;padding:0 1px}@keyframes taskFlash{0%{box-shadow:0 0 0 2px var(--c-primary-500), inset 0 0 0 9999px #8b5cf614}70%{box-shadow:0 0 0 2px var(--c-primary-500), inset 0 0 0 9999px #8b5cf614}to{box-shadow:none}}.task-highlight{animation:2s forwards taskFlash}.undo-toast{z-index:9999;background:#22223a;border:1px solid #8b5cf652;border-radius:9px;align-items:center;gap:.7rem;min-width:240px;padding:.65rem 1rem .55rem;font-size:.84rem;transition:transform .24s cubic-bezier(.34,1.56,.64,1);display:flex;position:fixed;bottom:2rem;left:50%;overflow:hidden;transform:translate(-50%)translateY(120%);box-shadow:0 4px 24px #00000073}:root[data-theme=light] .undo-toast{background:#fff;border-color:#7c3aed33;box-shadow:0 4px 24px #0000001f}.undo-toast-visible{transform:translate(-50%)translateY(0)}.undo-toast-msg{color:var(--t-soft);flex:1}.undo-toast-btn{color:var(--c-cyan);cursor:pointer;white-space:nowrap;letter-spacing:0;text-transform:none;background:0 0;border:1px solid #8b5cf666;border-radius:5px;padding:.24rem .62rem;font-family:inherit;font-size:.78rem;font-weight:600;transition:background .12s}.undo-toast-btn:hover{box-shadow:none;background:#8b5cf61a;transform:none}.undo-toast-bar{background:var(--c-cyan);transform-origin:0;width:100%;height:2px;animation:5s linear forwards undoBarShrink;position:absolute;bottom:0;left:0}@keyframes undoBarShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.task-swipe-content{display:contents}.task-swipe-hint{opacity:0;pointer-events:none;z-index:2;font-size:1.3rem;font-weight:700;line-height:1;transition:opacity .14s;position:absolute;top:50%;transform:translateY(-50%)}.task-swipe-hint-right{color:var(--c-green);left:.85rem}.task-swipe-hint-left{color:var(--c-pink);right:.85rem}.task-select-cb{cursor:pointer;width:1rem;height:1rem;accent-color:var(--c-cyan);flex-shrink:0;display:none}.task-list.select-mode .task-select-cb{display:block}.task-list.select-mode .drag-handle{display:none}.task-list.select-mode .task-item{cursor:pointer}.task-item.selected{background:#8b5cf617;border-color:#8b5cf661!important}.task-item.selected:before{opacity:1!important}.select-mode-btn{border:1px solid var(--b-subtle);color:var(--t-soft);border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;background:0 0;padding:.24rem .62rem;font-size:.78rem;transition:color .14s,border-color .14s,background .14s}.select-mode-btn:hover{color:var(--c-cyan);border-color:var(--b-active);box-shadow:none;background:#8b5cf60f;transform:none}.select-mode-btn.active{color:var(--c-cyan);border-color:var(--b-active);background:#8b5cf614}.bulk-action-bar{background:var(--bg-glass);border:1px solid var(--b-active);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:.65rem;padding:.55rem .85rem;animation:.2s bulk-bar-in;display:flex}@media (width<=768px){.bulk-action-bar{margin:.65rem}}@keyframes bulk-bar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.bulk-count{font-variant-numeric:tabular-nums;color:var(--t-soft);flex:1;min-width:80px;font-size:.78rem}.bulk-action-bar button{border:1px solid var(--b-subtle);color:var(--t-soft);font-size:.76rem;font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:0 0;border-radius:5px;padding:.2rem .55rem;transition:color .14s,background .14s,border-color .14s}.bulk-action-bar button:hover{color:var(--c-cyan);border-color:var(--b-active);box-shadow:none;background:#8b5cf614;transform:none}.bulk-action-bar button.bulk-delete-btn:hover{color:var(--c-pink);background:#fb718514;border-color:#fb718573}.bulk-action-bar button.bulk-cancel-btn{color:var(--t-muted)}.bulk-action-bar button.bulk-move-btn:hover{color:var(--c-primary);border-color:var(--b-active);background:#8b5cf61f}.modal-project-list{flex-direction:column;gap:.3rem;max-height:260px;margin-bottom:.75rem;padding-right:.2rem;display:flex;overflow-y:auto}.modal-project-item{border:1px solid var(--b-subtle);cursor:pointer;text-align:left;font-family:var(--font-body);background:0 0;border-radius:6px;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.5rem .75rem;transition:background .12s,border-color .12s;display:flex}.modal-project-item:hover,.modal-project-item:focus{border-color:var(--b-active);background:#8b5cf61a;outline:none}.modal-project-name{color:var(--t-base);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.84rem;font-weight:500;overflow:hidden}.modal-project-count{color:var(--t-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.72rem}kbd{font-family:var(--font-mono);color:var(--t-soft);background:var(--bg-deep);border:1px solid var(--b-subtle);white-space:nowrap;border-bottom-width:2px;border-radius:4px;padding:.1rem .38rem;font-size:.72rem;font-weight:600;line-height:1.5;display:inline-block}:root[data-theme=light] kbd{color:var(--t-soft);background:#eeeef4}.shortcuts-table{border-collapse:collapse;width:100%;margin:.75rem 0 .25rem;font-size:.84rem}.shortcuts-table td{color:var(--t-soft);vertical-align:middle;padding:.3rem .5rem}.shortcuts-table td:first-child{white-space:nowrap;min-width:110px}.shortcuts-table td:last-child{color:var(--t-primary)}.shortcuts-sep td{border-top:1px solid var(--b-subtle);padding:.2rem 0}.sidebar-search-row{align-items:center;gap:.35rem;display:flex}@media (width<=768px){.sidebar-search-row{display:none}}.sidebar-search-row .global-search-btn{flex:1}.sync-section{border-top:1px solid var(--b-subtle);flex-direction:column;gap:.3rem;margin-top:.15rem;padding-top:.5rem;display:flex}.sync-signin-btn{text-align:center;width:100%;color:var(--t-soft);border:1px solid var(--b-subtle);border-radius:var(--r-sm);cursor:pointer;background:0 0;padding:.46rem .52rem;font-size:.74rem;font-weight:500;transition:color .14s,border-color .14s,background .14s}.sync-signin-btn:hover{color:var(--c-cyan);border-color:var(--b-active);box-shadow:none;background:#8b5cf60f;transform:none}.sync-user-info{align-items:center;gap:.45rem;padding:.2rem .1rem;display:flex}.sync-user-avatar{width:22px;height:22px;color:var(--c-primary-300);background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex}.sync-user-details{flex:1;min-width:0}.sync-user-name{color:var(--t-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;display:block;overflow:hidden}.sync-signout-btn{border:1px solid var(--b-subtle);color:var(--t-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;flex-shrink:0;padding:.2rem .38rem;font-size:.7rem;line-height:1;transition:color .14s,border-color .14s,background .14s}.sync-signout-btn:hover{color:var(--c-pink);box-shadow:none;background:#fb71850d;border-color:#fb71854d;transform:none}#splash{z-index:9999;background:var(--bg-void);background-image:radial-gradient(80% 60% at 50% -5%,#6366f124 0%,#0000 68%);justify-content:center;align-items:center;transition:opacity .45s cubic-bezier(.4,0,.2,1),transform .45s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;inset:0}:root[data-theme=light] #splash{background-image:radial-gradient(80% 60% at 50% -5%,#7c3aed14 0%,#0000 68%)}#splash.splash-done{opacity:0;pointer-events:none;transform:scale(1.04)}.splash-inner{-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:22px;padding:32px;display:flex}.splash-icon{transform-origin:50%;filter:drop-shadow(0 0 32px #7c3aed80)drop-shadow(0 0 12px #ec48994d);width:100px;height:108px;animation:.55s cubic-bezier(.34,1.56,.64,1) 80ms both splash-logo-pop,3.2s ease-in-out .9s infinite splash-logo-breathe;overflow:visible}@media (width>=768px){.splash-icon{width:126px;height:136px}}.splash-mark{transform-box:fill-box;transform-origin:50%}@keyframes splash-logo-pop{0%{opacity:0;transform:scale(.05)}60%{opacity:1;transform:scale(1.1)}80%{transform:scale(.97)}to{transform:scale(1)}}@keyframes splash-logo-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes splash-fade-in{0%{opacity:0}to{opacity:1}}.splash-wordmark{font-family:var(--font-display);letter-spacing:-2.5px;opacity:0;font-size:46px;line-height:1;animation:.5s cubic-bezier(.2,0,.1,1) .72s both splash-rise;display:flex;transform:translateY(14px)}@media (width>=768px){.splash-wordmark{letter-spacing:-3px;font-size:58px}}@keyframes splash-rise{to{opacity:1;transform:translateY(0)}}.splash-an{color:var(--text-primary);font-weight:400}.splash-task{background:linear-gradient(90deg,#818cf8 0%,#c084fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:800}:root[data-theme=light] .splash-an{color:var(--text-primary)}:root[data-theme=light] .splash-task{background:linear-gradient(90deg,#4f46e5 0%,#7c3aed 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.splash-tagline{letter-spacing:.025em;color:var(--t-soft);opacity:0;margin-top:-10px;font-size:13px;animation:.4s .9s both splash-fade-in}@media (width>=768px){.splash-tagline{font-size:14px}}.archived-section-wrap{border-top:1px solid var(--b-subtle);flex-shrink:0}.archived-section-toggle{align-items:center;gap:var(--sp-2);cursor:pointer;width:100%;padding:var(--sp-3) var(--sp-3) var(--sp-2);border-radius:var(--r-xs);-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease-out);font-family:var(--font-sans);background:0 0;border:none;display:flex}.archived-section-toggle:hover{background:#8b5cf60f}.archived-section-toggle i{stroke-width:2px;width:12px;height:12px;color:var(--t-muted);flex-shrink:0}.archived-section-toggle span:not(.archived-section-count){font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);flex:1}.archived-section-count{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-tertiary);font-variant-numeric:tabular-nums;opacity:.7;flex-shrink:0}.archived-project-list{max-height:180px;padding:.25rem var(--sp-2);scrollbar-width:thin;scrollbar-color:#8b5cf626 transparent;flex-direction:column;gap:1px;list-style:none;display:flex;overflow-y:auto}.project-item-archived{opacity:.5}.project-item-archived:hover{opacity:.8}.section-header{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-3) var(--sp-2);margin-top:var(--sp-2);cursor:pointer;border-radius:var(--r-xs);-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease-out);list-style:none;display:flex}.section-header:first-child{margin-top:var(--sp-1)}.section-header:hover{background:#8b5cf60f}.section-drag-handle{color:var(--t-muted);cursor:grab;opacity:0;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;align-items:center;transition:opacity .13s;display:flex}.section-drag-handle .lucide{stroke-width:2px;width:11px;height:11px}.section-header:hover .section-drag-handle{opacity:.45}.section-drag-handle:hover{color:var(--c-cyan);opacity:1!important}.section-drag-handle:active{cursor:grabbing}.section-header.drag-ghost{opacity:.3;background:#8b5cf60f!important}body.project-dragging .section-header{outline-offset:-1px;outline:1px dashed #8b5cf64d}.section-header.section-drop-target{outline-offset:-2px;transition:background .1s,scale .1s;scale:1.01;background:#8b5cf624!important;outline:2px dashed #8b5cf699!important}body.task-dragging .project-item:not(.active):not(.project-item-archived){outline-offset:-1px;outline:1px dashed #8b5cf64d}.project-item.project-task-drop-target{outline-offset:-2px;transition:background .1s,scale .1s;scale:1.01;background:#8b5cf624!important;outline:2px dashed #8b5cf699!important}.section-chevron{color:var(--t-muted);flex-shrink:0;align-items:center;width:14px;transition:opacity .18s;display:flex}.section-chevron .lucide{stroke-width:2px;width:12px;height:12px}.section-name{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.section-count{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-tertiary);font-variant-numeric:tabular-nums;opacity:.7;background:0 0;border-radius:0;flex-shrink:0;padding:0}.section-menu-btn{color:var(--t-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:0;background:0 0;border:none;flex-shrink:0;align-items:center;padding:.1rem .3rem;font-size:.78rem;transition:opacity .14s,background .13s;display:flex}.section-menu-btn .lucide{stroke-width:2px;width:13px;height:13px}.section-header:hover .section-menu-btn{opacity:1}.section-menu-btn:hover{color:var(--t-soft);background:#8b5cf61a}.project-item-indented{padding-left:var(--sp-5)}.project-item-icon{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;transition:background .13s,transform .1s;display:flex}.project-item-icon:hover{background:#8b5cf61f;transform:scale(1.15)}.icon-picker-grid{grid-template-columns:repeat(10,1fr);gap:2px;max-height:220px;margin-bottom:.75rem;display:grid;overflow-y:auto}.icon-picker-emoji{aspect-ratio:1;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:100%;padding:0;font-size:18px;line-height:1;transition:background .1s,border-color .1s,transform .1s;display:flex}.icon-picker-emoji:hover{border-color:var(--b-active);background:#8b5cf61f;transform:scale(1.18)}.icon-picker-emoji--active{border-color:var(--c-primary-400);background:#8b5cf62e}.icon-picker-custom{margin-bottom:.5rem}.icon-picker-input{text-align:center;letter-spacing:.1em;font-size:1.1rem}.project-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:1px;box-shadow:inset 0 0 0 1.5px #00000026}.color-picker-grid{grid-template-columns:repeat(8,1fr);gap:.55rem;margin-bottom:1.25rem;display:grid}.color-picker-swatch{aspect-ratio:1;cursor:pointer;width:100%;transition:transform .14s var(--ease-out), box-shadow .14s;border:2px solid #0000;border-radius:50%;box-shadow:0 2px 6px #0000004d}.color-picker-swatch:hover{transform:scale(1.2);box-shadow:0 4px 12px #00000059}.color-picker-swatch--active{border-color:#fff;transform:scale(1.14);box-shadow:0 0 0 2px #ffffff40,0 4px 12px #00000059}.new-item-row{gap:.4rem;margin-bottom:.25rem;display:flex}.new-project-btn,.new-note-btn{border-radius:var(--r-sm);letter-spacing:0;color:#fff;cursor:pointer;width:auto;transition:background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.45rem .5rem;font-size:.78rem;font-weight:600;display:flex}.new-project-btn{background:linear-gradient(135deg,#8b5cf6 0%,#6366f1 100%);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #8b5cf647,0 4px 14px #8b5cf652}.new-project-btn:hover{background:linear-gradient(135deg,#7c3aed 0%,#4f46e5 100%);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #8b5cf67a,0 6px 22px #8b5cf67a}.new-project-btn:active{transform:translateY(0)}.new-note-btn{background:linear-gradient(135deg,#0ea5e9 0%,#6366f1 100%);box-shadow:inset 0 1px #ffffff1f,0 0 0 1px #0ea5e947,0 4px 14px #0ea5e947}.new-note-btn:hover{background:linear-gradient(135deg,#0284c7 0%,#4f46e5 100%);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #0ea5e97a,0 6px 22px #0ea5e970}.new-note-btn:active{transform:translateY(0)}:root[data-theme=light] .new-project-btn{color:#fff;box-shadow:inset 0 1px #fff3,0 0 0 1px #7c3aed38,0 4px 14px #7c3aed47}:root[data-theme=light] .new-project-btn:hover{box-shadow:inset 0 1px #ffffff40,0 0 0 1px #7c3aed61,0 6px 22px #7c3aed61}:root[data-theme=light] .new-note-btn{color:#fff;box-shadow:inset 0 1px #fff3,0 0 0 1px #0ea5e933,0 4px 14px #0ea5e93d}:root[data-theme=light] .new-note-btn:hover{box-shadow:inset 0 1px #ffffff40,0 0 0 1px #0ea5e95c,0 6px 22px #0ea5e957}.new-project-btn .lucide,.new-note-btn .lucide{width:13px;height:13px}.notes-sidebar-section-wrap{border-top:1px solid var(--b-subtle);flex-shrink:0}.note-sidebar-item{border-radius:var(--r-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);align-items:center;gap:.45rem;padding:.42rem .75rem;display:flex;position:relative}.note-sidebar-item:before{content:"";background:var(--project-color,var(--c-primary-500));border-radius:0 var(--r-pill) var(--r-pill) 0;width:3px;height:0;transition:height var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);opacity:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.note-sidebar-item:hover{background:color-mix(in srgb, var(--project-color,var(--c-primary-500)) 8%, transparent)}.note-sidebar-item:hover:before{opacity:.4;height:16px}.note-sidebar-item.active{background:color-mix(in srgb, var(--project-color,var(--c-primary-500)) 12%, transparent)}.note-sidebar-item.active:before{opacity:1;height:60%;box-shadow:0 0 8px color-mix(in srgb, var(--project-color,var(--c-primary-500)) 50%, transparent)}.note-sidebar-icon{color:var(--t-muted);flex-shrink:0;align-items:center;display:flex}.note-sidebar-icon .lucide{width:13px;height:13px}.note-sidebar-name{color:var(--t-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.825rem;overflow:hidden}.note-sidebar-item .project-kebab-btn{opacity:0;transition:opacity .15s}.note-sidebar-item:hover .project-kebab-btn,.note-sidebar-item.active .project-kebab-btn{opacity:1}.note-panel{background:var(--bg-void);flex-direction:column;height:100%;display:flex;overflow:hidden}.note-panel-header{border-bottom:1px solid var(--b-subtle);flex-shrink:0;align-items:center;gap:.75rem;padding:.65rem 1.25rem;display:flex}.note-title{color:var(--t-primary);border-radius:var(--r-xs);white-space:nowrap;text-overflow:ellipsis;cursor:text;background:0 0;border:none;outline:none;flex:0 220px;min-width:80px;padding:.1rem .2rem;font-size:1.35rem;font-weight:700;transition:background .15s;overflow:hidden}.note-title:empty:before{content:attr(data-placeholder);color:var(--t-muted);pointer-events:none;font-weight:400}.note-title:focus{background:#8b5cf60f;outline:none}.note-toolbar{flex:1;justify-content:center;align-items:center;gap:.2rem;display:flex}.note-toolbar .fmt-btn{border-radius:var(--r-xs);color:var(--t-soft);cursor:pointer;background:0 0;border:1px solid #0000;padding:.3rem .5rem;font-size:.8rem;line-height:1;transition:background .12s,color .12s,border-color .12s}.note-toolbar .fmt-btn:hover{color:var(--t-primary);background:#8b5cf61a;border-color:#8b5cf640}.note-toolbar .fmt-btn.fmt-active{color:var(--c-primary-400);background:#8b5cf629;border-color:#8b5cf659}.note-toolbar-sep{background:var(--b-subtle);flex-shrink:0;width:1px;height:16px;margin:0 .2rem}.notes-editor font[size="1"],.note-editor font[size="1"]{font-size:.65rem}.notes-editor font[size="2"],.note-editor font[size="2"]{font-size:.78rem}.notes-editor font[size="3"],.note-editor font[size="3"]{font-size:.95rem}.notes-editor font[size="5"],.note-editor font[size="5"]{font-size:1.35rem}.notes-editor font[size="7"],.note-editor font[size="7"]{font-size:1.75rem}.fmt-color-wrap{align-items:center;display:flex;position:relative}.fmt-color-label{border-bottom:3px solid;padding-bottom:1px;font-size:.9em;font-weight:700;line-height:1;display:block}.fmt-color-palette{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--r-md);z-index:600;flex-wrap:wrap;gap:5px;width:130px;padding:7px;display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000059}.fmt-color-swatch{cursor:pointer;width:22px;height:22px;color:var(--text-primary);border:2px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.7rem;transition:transform .1s,border-color .1s;display:flex}.fmt-color-swatch:hover{border-color:#ffffff80;transform:scale(1.2)}.fmt-color-clear{color:var(--text-tertiary);background:var(--surface-input)!important;border-color:var(--border-default)!important}.fmt-color-clear:hover{color:var(--text-primary);border-color:var(--border-default)!important}.note-save-status{color:var(--t-muted);white-space:nowrap;flex-shrink:0;font-size:.72rem;transition:opacity .3s}.note-save-status--flash{color:var(--c-success)}.note-editor{color:var(--t-primary);caret-color:var(--c-primary-400);outline:none;flex:1;padding:1.75rem 2rem;font-size:.95rem;line-height:1.75;overflow-y:auto}.note-editor:empty:before{content:attr(data-placeholder);color:var(--t-muted);pointer-events:none}.note-editor p{margin:0 0 .5em}.note-editor ul,.note-editor ol{margin:.25em 0 .75em;padding-left:1.5em}.note-editor li{margin:.15em 0}.note-editor b,.note-editor strong{color:var(--t-primary)}.note-editor::-webkit-scrollbar{width:4px}.note-editor::-webkit-scrollbar-track{background:0 0}.project-kebab-btn{color:var(--t-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:0;background:0 0;border:none;flex-shrink:0;align-items:center;padding:.08rem .28rem;font-size:.78rem;transition:opacity .14s,background .13s;display:flex}.project-kebab-btn .lucide{stroke-width:2px;width:13px;height:13px}.project-item:hover .project-kebab-btn{opacity:1}.project-kebab-btn:hover{color:var(--t-soft);background:#8b5cf61a}.ctx-menu{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;background:#1c1c2e;border:1px solid #ffffff21;border-radius:8px;min-width:170px;max-width:230px;margin:0;padding:.3rem 0;list-style:none;box-shadow:0 8px 36px #0009}:root[data-theme=light] .ctx-menu{background:#fff;box-shadow:0 6px 22px #0000001f}.ctx-header{letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);padding:.32rem .75rem .2rem;font-size:.6rem;font-weight:700}.ctx-item{text-align:left;width:100%;color:var(--t-soft);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;background:0 0;border:none;padding:.42rem .75rem;font-family:inherit;font-size:.78rem;transition:background .12s,color .12s;display:block;overflow:hidden}.ctx-item:hover{color:var(--t-primary);background:#8b5cf614}.ctx-item-danger{color:var(--c-pink)}.ctx-item-danger:hover{color:var(--c-pink);background:#fb718514}.ctx-sep{background:var(--b-subtle);height:1px;margin:.25rem 0}.profile-wrap{margin-top:var(--sp-2);position:relative}.profile-btn{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;display:flex}.profile-btn:hover{border-color:var(--border-subtle);background:#8b5cf60f}.profile-avatar{border-radius:var(--r-pill);background:var(--grad-primary);color:#fff;width:32px;height:32px;font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 6px #8b5cf64d}.profile-meta{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.profile-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);letter-spacing:var(--tracking-tight);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.profile-sub{font-size:var(--fs-xs);color:var(--text-tertiary);letter-spacing:var(--tracking-normal)}.profile-dots{color:var(--text-tertiary);letter-spacing:-.08em;flex-shrink:0;font-size:1rem;line-height:1}.profile-dropdown{background:var(--surface-overlay);border:1px solid var(--border-subtle);border-radius:var(--r-lg);z-index:500;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:.3rem 0;animation:.18s cubic-bezier(.34,1.3,.64,1) both profile-drop-in;position:absolute;bottom:calc(100% + 6px);left:0;right:0;box-shadow:0 -8px 40px #0009,0 0 0 1px #8b5cf60f}:root[data-theme=light] .profile-dropdown{background:#fff;box-shadow:0 -4px 20px #0000001c}@keyframes profile-drop-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.profile-dropdown-user{align-items:center;gap:.6rem;padding:.55rem .75rem;display:flex}.profile-avatar-lg{width:36px;height:36px;font-size:.9rem}.profile-dropdown-name{color:var(--t-primary);font-size:.8rem;font-weight:600}.profile-dropdown-sub{color:var(--t-muted);margin-top:.08rem;font-size:.62rem}.profile-sep{background:var(--b-subtle);height:1px;margin:.28rem 0}.profile-item{width:100%;font-size:.78rem;font-family:var(--font-body);color:var(--t-soft);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);white-space:nowrap;background:0 0;border:none;align-items:center;gap:.55rem;padding:.44rem .75rem;text-decoration:none;display:flex}.profile-item:hover{color:var(--text-primary);background:#8b5cf614;transform:translate(2px)}.profile-item-ico{text-align:center;flex-shrink:0;width:1.1em;font-size:.88rem}.profile-item-danger{color:var(--c-pink)}.profile-item-danger:hover{background:#fb718514}.profile-item-toggle .profile-item-label{flex:1;min-width:0}.profile-toggle-pill{letter-spacing:var(--tracking-wider);border-radius:var(--r-pill);color:var(--t-muted);border:1px solid var(--b-subtle);background:#ffffff0f;flex-shrink:0;padding:.1rem .44rem;font-size:.6rem;font-weight:700}.profile-toggle-pill.on{color:var(--c-green);background:#34d3991a;border-color:#34d39952}:root[data-theme=light] .profile-toggle-pill{background:#0000000d}.profile-notif-options{border-top:1px solid var(--b-subtle);border-bottom:1px solid var(--b-subtle);background:#8b5cf60a;flex-direction:column;gap:.45rem;padding:.45rem .75rem .55rem;display:flex}.profile-notif-times-block{flex-direction:column;gap:.4rem;display:flex}.profile-notif-times-label{color:var(--text-tertiary);letter-spacing:var(--tracking-wider);text-transform:uppercase;font-size:.6rem;font-weight:700}.profile-notif-times-list{flex-wrap:wrap;gap:.3rem;min-height:1.4rem;display:flex}.profile-notif-time-chip{border-radius:var(--r-pill);color:var(--c-primary-300);font-variant-numeric:tabular-nums;background:#8b5cf61a;border:1px solid #8b5cf647;align-items:center;gap:.25rem;padding:.18rem .3rem .18rem .5rem;font-size:.72rem;font-weight:500;display:inline-flex}.profile-notif-time-del{width:16px;height:16px;color:var(--t-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.profile-notif-time-del:hover{color:var(--c-pink);background:#fb718533}.profile-notif-time-del .lucide{stroke-width:2.5px;width:11px;height:11px}.profile-notif-times-add{align-items:center;gap:.35rem;display:flex}.profile-notif-times-add input[type=time]{background:var(--bg-glass);border:1px solid var(--b-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--t-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;flex:1;padding:.2rem .4rem;font-size:.72rem}:root[data-theme=light] .profile-notif-times-add input[type=time]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.profile-notif-add-btn{border-radius:var(--r-sm);color:var(--c-primary-400);cursor:pointer;background:#8b5cf614;border:1px solid #8b5cf64d;align-items:center;gap:.25rem;padding:.26rem .45rem;font-size:.68rem;font-weight:600;transition:background .13s,border-color .13s;display:inline-flex}.profile-notif-add-btn:hover{background:#8b5cf629;border-color:#8b5cf68c}.profile-notif-add-btn .lucide{stroke-width:2.5px;width:11px;height:11px}.profile-notif-test-btn{border:1px solid var(--b-subtle);border-radius:var(--r-sm);color:var(--t-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.35rem;padding:.32rem .55rem;font-size:.7rem;font-weight:500;transition:color .13s,border-color .13s,background .13s;display:inline-flex}.profile-notif-test-btn:hover{color:var(--c-primary-300);background:#8b5cf612;border-color:#8b5cf652}.profile-notif-test-btn .lucide{stroke-width:2.5px;width:11px;height:11px}.profile-sync-row{color:var(--t-muted);align-items:center;gap:.55rem;padding:.32rem .75rem;font-size:.72rem;display:flex}.agenda-nav-btn{border:1px solid var(--border-default);color:var(--text-tertiary);border-radius:var(--r-md);font-size:var(--fs-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);font-family:var(--font-sans);background:0 0;flex-shrink:0;padding:.46rem .6rem;line-height:1}.agenda-nav-btn:hover,.agenda-nav-btn.active{color:var(--c-primary-300);box-shadow:none;background:#8b5cf614;border-color:#8b5cf666;transform:none}.agenda-panel{padding:.75rem 1.6rem 0}.agenda-content{scrollbar-width:thin;scrollbar-color:#8b5cf62e transparent;gap:var(--sp-7);padding:var(--sp-4) 0px;flex-direction:column;flex:1;display:flex;overflow:hidden auto}.agenda-content::-webkit-scrollbar{width:4px}.agenda-content::-webkit-scrollbar-track{background:0 0}.agenda-group{flex-direction:column;gap:.5rem;display:flex}.agenda-group-header{align-items:center;gap:var(--sp-2);padding-bottom:var(--sp-3);margin-bottom:var(--sp-2);border-bottom:1px solid var(--border-subtle);display:flex}.agenda-group-label{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary)}.agenda-group-count{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-radius:var(--r-pill);background:var(--surface-raised);color:var(--text-tertiary);border:1px solid var(--border-subtle);padding:2px 8px}.agenda-group-overdue .agenda-group-label{color:var(--c-danger)}.agenda-group-overdue .agenda-group-count{color:var(--c-danger);background:#fb71851f}.agenda-group-today .agenda-group-label{color:var(--c-warning)}.agenda-group-today .agenda-group-count{color:var(--c-warning);background:#fbbf241f}.agenda-group-week .agenda-group-label{color:var(--c-info)}.agenda-group-week .agenda-group-count{color:var(--c-info);background:#60a5fa1f}.agenda-group-later .agenda-group-label{color:var(--text-secondary)}.agenda-group-later .agenda-group-count{background:var(--surface-raised);color:var(--text-secondary)}.agenda-task-list{gap:var(--sp-2);flex-direction:column;list-style:none;display:flex}.agenda-task-item{padding:var(--sp-3) var(--sp-4) var(--sp-3) calc(var(--sp-4) + 4px);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--r-lg);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);gap:var(--sp-2);box-shadow:var(--shadow-sm);flex-direction:column;animation:.25s cubic-bezier(.22,1,.36,1) both itemIn;display:flex;position:relative;overflow:hidden}.agenda-task-item:before{content:"";background:var(--border-strong);width:4px;transition:background var(--dur-fast) var(--ease-out);position:absolute;top:0;bottom:0;left:0}.agenda-task-item:hover{background:var(--surface-raised);border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.agenda-task-item:active{transform:translateY(0)}.agenda-priority-high:before{background:var(--c-danger)}.agenda-priority-medium:before{background:var(--c-warning)}.agenda-priority-low:before{background:var(--c-info)}.agenda-group-overdue .agenda-task-item:not(.agenda-priority-high):not(.agenda-priority-medium):not(.agenda-priority-low):before{background:#fb718599}.agenda-task-main{flex-direction:column;gap:.35rem;min-width:0;display:flex}.agenda-task-text{font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-regular);color:var(--text-primary);line-height:var(--lh-base);word-break:break-word}.agenda-task-badges{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.agenda-badge{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-normal);border-radius:var(--r-pill);white-space:nowrap;border:1px solid #0000;padding:.1rem .5rem}.agenda-badge-priority.agenda-badge-high{color:var(--c-danger);background:#fb71851a;border-color:#fb718540}.agenda-badge-priority.agenda-badge-medium{color:var(--c-warning);background:#fbbf241a;border-color:#fbbf2440}.agenda-badge-priority.agenda-badge-low{color:var(--c-info);background:#60a5fa1a;border-color:#60a5fa40}.agenda-badge-status.agenda-badge-progress{color:var(--c-success);background:#34d3991a;border-color:#34d39940}.agenda-badge-status.agenda-badge-waiting{color:var(--c-warning);background:#fbbf241a;border-color:#fbbf2440}.agenda-badge-project{color:var(--c-primary-300);background:#8b5cf61a;border-color:#8b5cf638}.agenda-badge-date{color:var(--text-tertiary);margin-left:auto}.agenda-group-overdue .agenda-badge-date{color:var(--c-danger)}.agenda-group-today .agenda-badge-date{color:var(--c-warning)}.agenda-empty{color:var(--t-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:4rem 2rem;display:flex}.agenda-empty-icon{opacity:.35;font-size:2.6rem;animation:3s ease-in-out infinite pulse}.agenda-empty p{font-size:.9rem;line-height:1.55}:root[data-theme=light] .agenda-badge-project{background:#7c3aed12;border-color:#7c3aed2e}:root[data-theme=light] .agenda-group-count{background:#0000000f}@media (width<=768px){.agenda-panel{padding:.4rem .85rem 0}.agenda-content{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0))}}.paste-toast{visibility:hidden;z-index:9999;white-space:nowrap;background:#22223a;border:1px solid #8b5cf652;border-radius:9px;align-items:center;gap:.55rem;padding:.6rem .85rem .5rem;font-size:.82rem;transition:transform .24s cubic-bezier(.34,1.56,.64,1),visibility 0s .24s;display:flex;position:fixed;bottom:2rem;left:50%;overflow:hidden;transform:translate(-50%)translateY(100vh);box-shadow:0 4px 24px #00000073}:root[data-theme=light] .paste-toast{background:#fff;border-color:#7c3aed33;box-shadow:0 4px 24px #0000001f}.paste-toast-visible{visibility:visible;transition:transform .24s cubic-bezier(.34,1.56,.64,1),visibility;transform:translate(-50%)translateY(0)}.paste-toast-msg{color:var(--t-soft);margin-right:.15rem}.paste-toast-btn{color:var(--t-soft);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #8b5cf659;border-radius:5px;padding:.26rem .7rem;font-family:inherit;font-size:.78rem;transition:background .12s,color .12s}.paste-toast-btn:hover{box-shadow:none;background:#8b5cf61a;transform:none}.paste-toast-btn-fmt{color:var(--c-cyan);border-color:#8b5cf68c;font-weight:600}.paste-toast-btn-fmt:hover{background:#8b5cf624}.paste-toast-bar{background:var(--c-cyan);transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0}@keyframes paste-bar-shrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.img-resize-overlay{outline:2px solid var(--c-cyan);outline-offset:1px;pointer-events:none;z-index:800;border-radius:1px;display:none;position:absolute}.img-resize-visible{display:block}.img-rh{background:var(--c-cyan);pointer-events:all;touch-action:none;border:2px solid #fff;border-radius:3px;width:12px;height:12px;position:absolute}.img-rh-nw{cursor:nw-resize;top:-6px;left:-6px}.img-rh-ne{cursor:ne-resize;top:-6px;right:-6px}.img-rh-sw{cursor:sw-resize;bottom:-6px;left:-6px}.img-rh-se{cursor:se-resize;bottom:-6px;right:-6px}.img-rh-se:after{content:"";position:absolute;inset:-12px}.notes-editor img{vertical-align:middle;border-radius:4px;max-width:100%;height:auto;display:inline-block}.cal-panel{padding:0}.cal-nav{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.cal-month-label{font-family:var(--font-sans);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-primary);text-align:center;min-width:11rem;letter-spacing:var(--tracking-tight)}.cal-nav-btn{border:1px solid var(--border-default);border-radius:var(--r-md);background:var(--surface-card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;display:flex}.cal-nav-btn:hover{border-color:var(--c-primary-500);color:var(--c-primary-300);box-shadow:0 0 0 1px #8b5cf633, var(--shadow-sm);background:#8b5cf61f;transform:translateY(-1px)}.cal-nav-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.cal-content{padding:0px var(--sp-6) var(--sp-3);flex-direction:column;flex:1;gap:0;display:flex;overflow:hidden auto}.cal-content::-webkit-scrollbar{width:4px}.cal-content::-webkit-scrollbar-track{background:0 0}.cal-day-headers{flex-shrink:0;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px;display:grid}.cal-day-header{text-align:center;font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding:var(--sp-2) 0}.cal-grid{flex:1;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-cell{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--r-md);min-height:108px;padding:var(--sp-2) var(--sp-2) var(--sp-1);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);cursor:default;flex-direction:column;gap:.25rem;display:flex;overflow:hidden}.cal-cell:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.cal-cell-has-tasks{cursor:pointer}.cal-cell-has-tasks:hover{box-shadow:var(--shadow-md);background:#8b5cf606;border-color:#8b5cf659}.cal-cell-other{opacity:.25;pointer-events:none;background:0 0;border-color:#0000}.cal-cell-today{border-color:var(--c-primary-500);background:#8b5cf614;box-shadow:inset 0 0 0 1px #8b5cf626}.cal-cell-today:hover{box-shadow:0 0 0 1px #8b5cf633 inset, var(--shadow-md);background:#8b5cf61f}.cal-cell-selected{border-color:var(--c-primary-400)!important;background:#8b5cf61f!important;box-shadow:inset 0 0 0 1px #8b5cf640!important}.cal-cell-num{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-tertiary);flex-shrink:0;align-self:flex-end;line-height:1}.cal-cell-today .cal-cell-num{color:#fff;background:var(--c-primary-500);border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:1.5rem;height:1.5rem;display:flex;box-shadow:0 2px 6px #8b5cf680}.cal-dots{flex-wrap:wrap;gap:3px;margin-top:.2rem;display:none}.cal-dot{background:#8b5cf6a6;border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-dot-high{background:var(--c-pink)}.cal-dot-medium{background:var(--c-gold)}.cal-dot-low{background:var(--c-green)}.cal-dot-done{opacity:.35}.cal-dot-extra{font-variant-numeric:tabular-nums;color:var(--t-muted);align-self:center;font-size:.58rem;line-height:6px}.cal-task-chip{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--r-xs);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:#8b5cf61a;border-left:2px solid #8b5cf673;flex-shrink:0;padding:.15rem .4rem;line-height:1.25;overflow:hidden}.cal-task-chip:hover{color:var(--text-primary);background:#8b5cf62e}.cal-chip-high{border-left-color:var(--c-danger);color:var(--c-danger);background:#fb71851a}.cal-chip-high:hover{background:#fb71852e}.cal-chip-medium{border-left-color:var(--c-warning);color:var(--c-warning);background:#fbbf241a}.cal-chip-medium:hover{background:#fbbf242e}.cal-chip-low{border-left-color:var(--c-success);color:var(--c-success);background:#34d3991a}.cal-chip-low:hover{background:#34d3992e}.cal-chip-done{opacity:.4;text-decoration:line-through}.cal-task-more{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-tertiary);padding:0 var(--sp-1);cursor:default;flex-shrink:0}.cal-day-detail{margin-top:var(--sp-3);border-radius:var(--r-lg);box-shadow:var(--shadow-card);background:#8b5cf60a;border:1px solid #8b5cf64d;flex-shrink:0;animation:.2s cubic-bezier(.16,1,.3,1) both panelIn;overflow:hidden}.cal-day-detail-title{font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--c-primary-300);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding:var(--sp-3) var(--sp-4) var(--sp-2);border-bottom:1px solid var(--border-subtle)}.cal-day-detail-list{margin:0;padding:0;list-style:none}.cal-day-detail-item{justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);display:flex}.cal-day-detail-item:last-child{border-bottom:none}.cal-day-detail-item:hover{background:var(--surface-raised)}.cal-day-detail-left{align-items:center;gap:var(--sp-3);flex:1;min-width:0;display:flex}.cal-day-detail-dot{background:#8b5cf6a6;border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-detail-priority-high .cal-day-detail-dot{background:var(--c-danger)}.cal-detail-priority-medium .cal-day-detail-dot{background:var(--c-warning)}.cal-detail-priority-low .cal-day-detail-dot{background:var(--c-success)}.cal-day-detail-text{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-detail-done .cal-day-detail-text{opacity:.4;text-decoration:line-through}.cal-day-detail-proj{font-family:var(--font-sans);font-size:var(--fs-xs);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}@media (width<=768px){.cal-panel{padding:0}.cal-month-nav{padding:.5rem .85rem .4rem}.cal-month-label{min-width:7.5rem;font-size:.8rem}.cal-day-header{padding:.25rem 0;font-size:.6rem}.cal-cell{border-radius:3px;gap:.1rem;min-height:52px;padding:.28rem .2rem .22rem}.cal-cell-num{align-self:flex-start;font-size:.65rem}.cal-cell-today .cal-cell-num{align-self:flex-start;width:1.2rem;height:1.2rem;font-size:.65rem}.cal-dots{display:flex}.cal-dot{width:5px;height:5px}.cal-task-chip,.cal-task-more{display:none}.cal-grid,.cal-day-headers{gap:1px}.cal-content{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0))}.cal-day-detail-item{min-height:44px;padding:.7rem .85rem}.cal-day-detail-text{font-size:.86rem}}:root[data-theme=light] .cal-cell{background:var(--surface-card);border-color:var(--border-default);box-shadow:var(--shadow-sm)}:root[data-theme=light] .cal-cell:hover{border-color:var(--border-strong)}:root[data-theme=light] .cal-cell-has-tasks:hover{border-color:#7c3aed4d}:root[data-theme=light] .cal-cell-today{background:#7c3aed0d;border-color:#7c3aed80}:root[data-theme=light] .cal-cell-today .cal-cell-num{color:#fff;background:var(--c-primary-500);box-shadow:0 2px 6px #7c3aed66}:root[data-theme=light] .cal-cell-selected{border-color:var(--c-primary-500)!important;background:#7c3aed14!important}:root[data-theme=light] .cal-nav-btn{border-color:var(--border-default)}:root[data-theme=light] .cal-nav-btn:hover{border-color:var(--c-primary-500);color:var(--c-primary-500);background:#7c3aed14}:root[data-theme=light] .cal-day-detail{box-shadow:var(--shadow-md);background:#7c3aed08;border-color:#7c3aed38}:root[data-theme=light] .cal-day-detail-title{color:var(--c-primary-500)}:root[data-theme=light] .cal-day-detail-item:hover{background:var(--surface-raised)}:root[data-theme=light] .cal-task-chip{color:var(--text-secondary);background:#7c3aed14;border-left-color:#7c3aed66}:root[data-theme=light] .cal-task-chip:hover{color:var(--text-primary);background:#7c3aed24}:root[data-theme=light] .agenda-task-item{background:var(--surface-card);border-color:var(--border-default);box-shadow:var(--shadow-sm)}:root[data-theme=light] .agenda-task-item:hover{background:var(--surface-raised);border-color:var(--border-strong);box-shadow:var(--shadow-md)}:root[data-theme=light] .agenda-nav-btn{border-color:var(--border-default)}:root[data-theme=light] .agenda-nav-btn:hover,:root[data-theme=light] .agenda-nav-btn.active{color:var(--c-primary-500);background:#7c3aed0f;border-color:#7c3aed59}@media (hover:none){.task-item:hover{transform:none}.task-item:hover:before{width:3px;transform:none}.subtask-item:hover{box-shadow:none;transform:none}.profile-item:hover,.search-result-item:hover,.modal-btn-confirm:hover{transform:none}}button,.modal-btn,.new-project-btn,.new-note-btn,.view-tab,.filter-trigger-btn,.task-actions>button,.sidebar-footer button,.fmt-btn{position:relative;overflow:hidden}@keyframes btn-ripple{0%{opacity:.38;transform:translate(-50%,-50%)scale(0)}70%{opacity:.2;transform:translate(-50%,-50%)scale(.85)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}.btn-ripple-wave{pointer-events:none;z-index:99;animation:btn-ripple .55s var(--ease-out) forwards;background:#ffffff4d;border-radius:50%;position:absolute}@keyframes count-roll-in{0%{opacity:0;transform:translateY(-60%)}to{opacity:1;transform:translateY(0)}}.project-item-count{display:inline-block;overflow:hidden}.project-item-count.count-flip{animation:.28s cubic-bezier(.34,1.56,.64,1) both count-roll-in}@media (prefers-reduced-motion:reduce){.btn-ripple-wave,.project-item-count.count-flip{animation:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.project-item-pinned{font-weight:var(--fw-semibold)}.project-item-pinned .project-item-icon--system{font-size:1.05em}.project-item-today.active .project-item-icon--system,.project-item-inbox.active .project-item-icon{filter:drop-shadow(0 0 4px #8b5cf666)}.project-pinned-sep{height:1px;margin:var(--sp-2) var(--sp-3);background:var(--border-subtle);list-style:none}.today-empty{padding:var(--sp-8) var(--sp-4);text-align:center;color:var(--text-tertiary);list-style:none}.today-empty-icon{margin-bottom:var(--sp-3);font-size:2.5rem}.today-empty-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-secondary);margin:0 0 var(--sp-1) 0}.today-empty-sub{font-size:var(--fs-sm);color:var(--text-tertiary);margin:0}.today-item{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-2);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--r-md);transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);list-style:none;display:flex}.today-item:hover{border-color:var(--border-default);background:var(--surface-raised)}.today-check{cursor:pointer;width:18px;height:18px;accent-color:var(--c-primary-500);flex-shrink:0;margin-top:.15rem}.today-body{cursor:pointer;gap:var(--sp-2);flex-direction:column;flex:1;min-width:0;display:flex}.today-text{font-size:var(--fs-base);color:var(--text-primary);line-height:var(--lh-base);word-break:break-word;display:block}.today-meta{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.today-date{font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-radius:var(--r-pill);background:var(--surface-input);color:var(--text-tertiary);letter-spacing:var(--tracking-wide);padding:2px 8px}.today-date-overdue{color:var(--c-danger);background:#fb718529}.today-prio{font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-radius:var(--r-pill);letter-spacing:var(--tracking-wide);padding:2px 8px}.today-prio-high{color:#fda4af;background:#fb718524}.today-prio-medium{color:#fcd34d;background:#fbbf2424}.today-prio-low{color:#93c5fd;background:#60a5fa24}.today-project-badge{font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--r-pill);color:var(--text-secondary);border:1px solid var(--border-default);cursor:pointer;transition:background var(--dur-fast), border-color var(--dur-fast), color var(--dur-fast);white-space:nowrap;text-overflow:ellipsis;background:0 0;max-width:220px;padding:2px 8px;overflow:hidden}.today-project-badge:hover{color:var(--c-primary-300);background:#8b5cf614;border-color:#8b5cf64d}.today-priority-high{border-left:3px solid var(--c-danger)}.today-priority-medium{border-left:3px solid var(--c-warning)}.today-priority-low{border-left:3px solid var(--c-info)}.today-overdue{box-shadow:inset 2px 0 0 var(--c-danger)}.today-completing{opacity:.4;transition:opacity .25s var(--ease-out), transform .25s var(--ease-out);transform:translate(8px)}:root[data-theme=light] .today-item{background:#fff;border-color:#0000000f}:root[data-theme=light] .today-item:hover{background:#fafafa;border-color:#0000001a}:root[data-theme=light] .today-date{background:#0000000a}.modal-box-quick{max-width:520px;padding:var(--sp-5)}.quick-capture-header{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.quick-capture-eyebrow{font-size:var(--fs-xs);color:var(--text-tertiary);letter-spacing:var(--tracking-wide)}.quick-capture-target{align-items:center;gap:var(--sp-1);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--c-primary-300);border-radius:var(--r-pill);text-overflow:ellipsis;white-space:nowrap;background:#8b5cf61a;border:1px solid #8b5cf638;max-width:280px;padding:3px 10px;display:inline-flex;overflow:hidden}.quick-capture-target .lucide{flex-shrink:0;width:12px;height:12px}.quick-capture-target--inbox{color:var(--c-warning);background:#fbbf241a;border-color:#fbbf2440}.quick-capture-input{font-size:var(--fs-lg);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-3);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-md);color:var(--text-primary);width:100%;transition:border-color var(--dur-fast), background var(--dur-fast)}.quick-capture-input:focus{border-color:var(--c-primary-500);background:var(--surface-card);box-shadow:var(--ring-primary);outline:none}.quick-capture-preview{margin:0 0 var(--sp-3);justify-content:center;padding:0}.quick-capture-hint{font-size:var(--fs-xs);color:var(--text-tertiary);text-align:center}.quick-capture-hint kbd{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-xs);font-family:var(--font-mono);color:var(--text-secondary);margin:0 2px;padding:1px 6px;font-size:.85em;display:inline-block}:root[data-theme=light] .quick-capture-target{color:var(--c-primary-600);background:#7c3aed14;border-color:#7c3aed2e}:root[data-theme=light] .quick-capture-target--inbox{color:#b45309;background:#fbbf2424}.quick-toast{top:var(--sp-5);right:var(--sp-5);z-index:var(--z-toast);padding:var(--sp-2) var(--sp-4);background:var(--surface-overlay);border:1px solid var(--border-default);border-radius:var(--r-md);color:var(--text-primary);font-size:var(--fs-sm);font-weight:var(--fw-medium);box-shadow:var(--shadow-lg);opacity:0;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);pointer-events:none;position:fixed;transform:translateY(-10px)}.quick-toast-visible{opacity:1;transform:translateY(0)}:root[data-theme=light] .quick-toast{background:#fff;border-color:#00000014;box-shadow:0 8px 24px #0000001f}.sidebar-section-empty{margin:var(--sp-1) 0 var(--sp-2) calc(var(--sp-7) + 2px);padding:2px var(--sp-2);font-size:var(--fs-xs);color:var(--text-tertiary);font-style:italic;list-style:none}.smart-lists-header{margin:var(--sp-2) 0 var(--sp-1);align-items:center;list-style:none;display:flex}.smart-lists-toggle{align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer;border-radius:var(--r-sm);transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:none;flex:1;display:flex}.smart-lists-toggle:hover{background:var(--surface-raised);color:var(--text-primary)}.smart-lists-toggle--empty{opacity:.55}.smart-lists-toggle--empty:hover{opacity:1}.smart-lists-toggle .lucide{flex-shrink:0;width:12px;height:12px}.smart-lists-toggle .archived-section-count{font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:0;text-transform:none;color:var(--text-tertiary);background:var(--surface-input);border-radius:var(--r-pill);margin-left:auto;padding:1px 8px}.smart-lists-add-btn{width:24px;height:24px;margin-right:var(--sp-2);border-radius:var(--r-sm);color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.smart-lists-add-btn:hover{color:var(--c-primary-300);background:#8b5cf61a;border-color:#8b5cf64d}.smart-lists-add-btn .lucide{width:12px;height:12px}.smart-list-item{cursor:pointer;padding:4px var(--sp-3);border-radius:var(--r-sm);transition:background var(--dur-fast), color var(--dur-fast);margin:0 var(--sp-2);list-style:none}.smart-list-item:hover{background:var(--surface-raised)}.smart-list-item.active{color:var(--c-primary-300);background:#8b5cf61f}.smart-list-item .project-item-top{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);display:flex}.smart-list-item .project-item-icon{flex-shrink:0;font-size:.95em}.smart-list-item .project-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.smart-list-item .smart-list-kebab{opacity:0;transition:opacity var(--dur-fast)}.smart-list-item:hover .smart-list-kebab,.smart-list-item.active .smart-list-kebab{opacity:1}.modal-box-smart-list{max-width:460px}.modal-box-smart-list .sl-form-row{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.modal-box-smart-list .sl-form-label{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:var(--fw-medium);flex:0 0 110px}.modal-box-smart-list .modal-input{flex:1;margin:0}.modal-box-smart-list .sl-icon{text-align:center;font-size:var(--fs-lg);flex:0 0 80px}.modal-box-smart-list select.modal-input{cursor:pointer}:root[data-theme=light] .smart-list-item.active{color:var(--c-primary-600);background:#7c3aed1a}.task-actions>.reminder-btn.reminder-active{opacity:1;pointer-events:auto;color:var(--c-warning);background:#fbbf241a;border-color:#fbbf244d;transform:scale(1)}.task-actions>.reminder-btn.reminder-active:hover{background:#fbbf2429;border-color:#fbbf2480}body.hide-task-reminder .task-actions>.reminder-btn{display:none!important}:root[data-theme=light] .task-actions>.reminder-btn.reminder-active{color:#b45309;background:#fbbf2424;border-color:#fbbf2459}.nl-preview{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);margin-top:calc(var(--sp-2) * -.5);font-size:var(--fs-xs);color:var(--text-secondary);animation:nl-preview-in .14s var(--ease-out) both;flex-wrap:wrap;display:flex}@keyframes nl-preview-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nl-preview-arrow{color:var(--text-tertiary);margin-right:var(--sp-1)}.nl-chip{border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-wide);background:var(--surface-input);border:1px solid var(--border-default);color:var(--text-secondary);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.nl-chip .lucide{flex-shrink:0;width:11px;height:11px}.nl-chip-date{color:var(--c-primary-300);background:#8b5cf61a;border-color:#8b5cf638}.nl-chip-recur{color:#6ee7b7;background:#34d3991f;border-color:#34d39942}.nl-chip-prio-high{color:#fda4af;background:#fb718524;border-color:#fb718547}.nl-chip-prio-medium{color:#fcd34d;background:#fbbf2424;border-color:#fbbf2447}.nl-chip-prio-low{color:#93c5fd;background:#60a5fa24;border-color:#60a5fa47}.nl-chip-label{color:#67e8f9;background:#22d3ee1a;border-color:#22d3ee38}.nl-preview-rest{font-size:var(--fs-xs);color:var(--text-tertiary);opacity:.8}.nl-preview-rest:before{content:"→ ";color:var(--text-tertiary)}:root[data-theme=light] .nl-chip-date{color:var(--c-primary-600)}:root[data-theme=light] .nl-chip-recur{color:#047857}:root[data-theme=light] .nl-chip-prio-high{color:#be123c}:root[data-theme=light] .nl-chip-prio-medium{color:#a16207}:root[data-theme=light] .nl-chip-prio-low{color:#1d4ed8}:root[data-theme=light] .nl-chip-label{color:#0e7490}.modal-box-onb{max-width:540px;padding:var(--sp-7) var(--sp-7) var(--sp-5);text-align:center}.onb-eyebrow{font-size:var(--fs-xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--sp-4)}.onb-icon{margin-bottom:var(--sp-4);filter:drop-shadow(0 4px 16px #8b5cf640);font-size:3.2rem;line-height:1}.onb-title{font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight);color:var(--text-primary);margin:0 0 var(--sp-4) 0;background:linear-gradient(135deg,#fff 0%,#c4b5fd 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.onb-body{text-align:left;margin-bottom:var(--sp-5)}.onb-lead{font-size:var(--fs-md);color:var(--text-secondary);margin:0 0 var(--sp-3) 0;line-height:var(--lh-relaxed)}.onb-muted{font-size:var(--fs-sm);color:var(--text-tertiary);margin:var(--sp-3) 0 0 0}.onb-body kbd{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-xs);font-family:var(--font-mono);color:var(--text-secondary);margin:0 1px;padding:1px 6px;font-size:.85em;display:inline-block}.onb-bullets{gap:var(--sp-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.onb-bullets li{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--surface-input);border:1px solid var(--border-subtle);border-radius:var(--r-md);font-size:var(--fs-base);color:var(--text-secondary);line-height:var(--lh-base);display:flex}.onb-bullet-icon{flex-shrink:0;font-size:1.4rem;line-height:1}.onb-bullets strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.onb-syntax-demo{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--r-md);padding:var(--sp-4);margin:var(--sp-4) 0}.onb-syntax-input{font-family:var(--font-mono);font-size:var(--fs-md);color:var(--text-primary);background:var(--surface-card);padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);border:1px solid var(--border-subtle);text-align:center;display:block}.onb-syntax-arrow{text-align:center;color:var(--text-tertiary);font-size:var(--fs-lg);margin:var(--sp-2) 0}.onb-syntax-chips{gap:var(--sp-2);flex-wrap:wrap;justify-content:center;display:flex}.onb-chip{border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:var(--fw-medium);border:1px solid #0000;align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.onb-chip-date{color:var(--c-primary-300);background:#8b5cf629;border-color:#8b5cf647}.onb-chip-prio{color:#fda4af;background:#fb718529;border-color:#fb718547}.onb-chip-label{color:#67e8f9;background:#22d3ee29;border-color:#22d3ee47}.onb-shortcuts{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.onb-shortcuts td{padding:var(--sp-2) var(--sp-3);vertical-align:middle}.onb-shortcuts td:first-child{white-space:nowrap;width:40%}.onb-shortcuts td:last-child{color:var(--text-secondary)}.onb-shortcuts tr{border-bottom:1px solid var(--border-subtle)}.onb-shortcuts tr:last-child{border-bottom:none}.onb-cta-text{font-size:var(--fs-md);color:var(--text-secondary);text-align:center;margin-top:var(--sp-4)}.onb-dots{justify-content:center;gap:var(--sp-2);margin:var(--sp-4) 0;display:flex}.onb-dot{background:var(--border-default);width:8px;height:8px;transition:width var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);border-radius:50%}.onb-dot-active{border-radius:var(--r-pill);background:var(--c-primary-500);width:24px}.onb-actions{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.onb-skip{color:var(--text-tertiary);font-size:var(--fs-sm);cursor:pointer;padding:var(--sp-2) var(--sp-3);transition:color var(--dur-fast);background:0 0;border:none}.onb-skip:hover{color:var(--text-secondary)}.onb-nav{gap:var(--sp-2);display:flex}.onb-prev,.onb-next{font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:var(--fw-medium);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-5);cursor:pointer;transition:background var(--dur-fast), border-color var(--dur-fast), transform var(--dur-fast)}.onb-prev{color:var(--text-secondary);border:1px solid var(--border-default);background:0 0}.onb-prev:hover{border-color:var(--border-strong);color:var(--text-primary)}.onb-next{background:var(--grad-primary);color:#fff;box-shadow:var(--glow-primary);border:none}.onb-next:hover{background:var(--grad-primary-hover);transform:translateY(-1px)}.onb-next:focus-visible{box-shadow:var(--glow-primary), var(--ring-primary);outline:none}:root[data-theme=light] .onb-title{background:linear-gradient(135deg,#18181b 0%,#7c3aed 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}:root[data-theme=light] .onb-bullets li,:root[data-theme=light] .onb-syntax-demo{background:#00000005;border-color:#00000014}:root[data-theme=light] .onb-syntax-input{background:#fff;border-color:#00000014}:root[data-theme=light] .onb-chip-date{color:var(--c-primary-600)}:root[data-theme=light] .onb-chip-prio{color:#be123c}:root[data-theme=light] .onb-chip-label{color:#0e7490}.consent-banner{z-index:9999;background:var(--surface-overlay);border-top:1px solid var(--border-default);-webkit-backdrop-filter:blur(12px);padding:12px 16px;transition:transform .3s,opacity .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(0)}.consent-banner--out{opacity:0;transform:translateY(100%)}.consent-banner__body{flex-wrap:wrap;align-items:center;gap:16px;max-width:760px;margin:0 auto;display:flex}.consent-banner__text{min-width:200px;color:var(--text-secondary);flex:1;margin:0;font-size:13px;line-height:1.5}.consent-banner__link{color:var(--c-primary-400);white-space:nowrap;text-decoration:none}.consent-banner__link:hover{text-decoration:underline}.consent-banner__actions{flex-shrink:0;gap:8px;display:flex}.consent-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:opacity .15s}.consent-btn:hover{opacity:.85}.consent-btn--secondary{background:var(--surface-raised);color:var(--text-secondary);border:1px solid var(--border-default)}.consent-btn--primary{background:var(--c-primary-600);color:#fff}@media (width<=500px){.consent-banner__body{flex-direction:column;align-items:stretch}.consent-banner__actions{justify-content:flex-end}}
