:root{--text:#625f6b;--text-h:#18171c;--text-muted:#9d99a6;--bg:#fff;--surface:#fff;--surface-alt:#f7f6f9;--border:#ececef;--accent:#6d5ef8;--accent-bg:#6d5ef814;--accent-border:#6d5ef84d;--accent-contrast:#fff;--danger:#e11d48;--danger-bg:#e11d4814;--success:#16a34a;--shadow-sm:0 1px 2px #18171c0a;--shadow:0 1px 2px #18171c0a, 0 4px 10px -6px #18171c0f;--shadow-lg:0 2px 4px #18171c0d, 0 10px 20px -10px #18171c1a;--priority-low:#15803d;--priority-low-bg:#15803d14;--priority-medium:#b45309;--priority-medium-bg:#b4530917;--priority-high:#be123c;--priority-high-bg:#be123c14;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--display:"Lexend", var(--sans);--radius:14px;--radius-sm:10px;font:16px/1.55 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--text:#c6c2d1;--text-h:#f5f3fa;--text-muted:#8f8a9c;--bg:#121016;--surface:#18161e;--surface-alt:#1e1c25;--border:#2b2833;--accent:#a89bfb;--accent-bg:#a89bfb24;--accent-border:#a89bfb59;--accent-contrast:#17111f;--danger:#fb7185;--danger-bg:#fb718524;--success:#4ade80;--shadow-sm:0 1px 2px #0003;--shadow:0 1px 2px #00000040, 0 4px 10px -6px #0000004d;--shadow-lg:0 2px 4px #0000004d, 0 10px 20px -10px #0006;--priority-low:#4ade80;--priority-low-bg:#4ade8024;--priority-medium:#fbbf24;--priority-medium-bg:#fbbf2424;--priority-high:#fb7185;--priority-high-bg:#fb718524}}:root[data-theme=dark]{--text:#c6c2d1;--text-h:#f5f3fa;--text-muted:#8f8a9c;--bg:#121016;--surface:#18161e;--surface-alt:#1e1c25;--border:#2b2833;--accent:#a89bfb;--accent-bg:#a89bfb24;--accent-border:#a89bfb59;--accent-contrast:#17111f;--danger:#fb7185;--danger-bg:#fb718524;--success:#4ade80;--shadow-sm:0 1px 2px #0003;--shadow:0 1px 2px #00000040, 0 4px 10px -6px #0000004d;--shadow-lg:0 2px 4px #0000004d, 0 10px 20px -10px #0006;--priority-low:#4ade80;--priority-low-bg:#4ade8024;--priority-medium:#fbbf24;--priority-medium-bg:#fbbf2424;--priority-high:#fb7185;--priority-high-bg:#fb718524}*{box-sizing:border-box}body{background:var(--bg);min-height:100svh;margin:0}#app{max-width:720px;margin:0 auto;padding:56px 20px 90px}.app-header{text-align:center;margin-bottom:40px;position:relative}.header-actions{align-items:center;gap:8px;display:flex;position:absolute;top:0;right:0}.theme-toggle,.lang-toggle{border:1px solid var(--border);background:var(--surface);height:38px;color:var(--text-muted);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:color .15s,border-color .15s;display:inline-flex}.theme-toggle{width:38px}.lang-toggle{font:inherit;letter-spacing:.3px;padding:0 12px;font-size:13px;font-weight:700}.theme-toggle:hover,.lang-toggle:hover{color:var(--accent);border-color:var(--accent-border)}.theme-toggle:focus-visible,.lang-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle svg{width:18px;height:18px}.app-icon{background:var(--accent-bg);width:46px;height:46px;color:var(--accent);border-radius:13px;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.app-icon svg{width:24px;height:24px}.app-header h1{font-family:var(--display);color:var(--text-h);letter-spacing:-.4px;margin:0 0 8px;font-size:30px;font-weight:600}.app-subtitle{color:var(--text-muted);margin:0;font-size:15px}.app-main{flex-direction:column;gap:24px;display:flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px}.error-banner{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-bg);border-radius:var(--radius-sm);padding:12px 16px;font-size:14px;font-weight:600}.task-form{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{flex-direction:column;gap:7px;display:flex}.field-title,.field-description{grid-column:1/-1}.field label{letter-spacing:.3px;color:var(--text-muted);text-transform:uppercase;font-size:12.5px;font-weight:600}.field input,.field select,.field textarea{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);color:var(--text-h);padding:10px 12px;transition:border-color .15s,box-shadow .15s}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--accent-border)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.field textarea{resize:vertical}.btn{font:inherit;border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:10px 18px;font-size:14.5px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn-primary{background:var(--accent);color:var(--accent-contrast);grid-column:1/-1;justify-self:start;align-items:center;gap:8px;display:inline-flex}.btn-primary:hover{background:color-mix(in srgb, var(--accent) 88%, black)}.btn-ghost{border-color:var(--border);color:var(--text-muted);background:0 0}.btn-ghost:hover{border-color:var(--danger);color:var(--danger)}.btn-danger{background:var(--danger-bg);border-color:var(--danger-bg);color:var(--danger)}.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.stats-bar{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;padding:14px 12px}.stat-value{font-family:var(--display);color:var(--text-h);font-size:22px;font-weight:600;display:block}.stat-card.is-active .stat-value{color:var(--priority-medium)}.stat-card.is-completed .stat-value{color:var(--success)}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px;font-size:12px;display:block}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.search-input{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239d99a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") no-repeat 12px center;color:var(--text-h);flex:180px;padding:10px 12px 10px 36px;transition:border-color .15s,box-shadow .15s}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.filter-group{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);gap:3px;padding:3px;display:flex}.filter-btn{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:7px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.filter-btn:hover{color:var(--text-h)}.filter-btn.is-active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.sort-select{font:inherit;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);color:var(--text-h);padding:9px 10px}.task-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}@keyframes taskIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.task-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-left:3px solid #0000;align-items:flex-start;gap:14px;padding:15px 16px;transition:box-shadow .15s,border-color .15s;animation:.2s taskIn;display:flex}.task-item:hover{box-shadow:var(--shadow);border-color:var(--accent-border)}.task-item.priority-low{border-left-color:var(--priority-low)}.task-item.priority-medium{border-left-color:var(--priority-medium)}.task-item.priority-high{border-left-color:var(--priority-high)}.task-item.is-completed{opacity:.5}.task-item.is-completed:hover{opacity:.8}.task-item.is-completed .task-title{text-decoration:line-through;-webkit-text-decoration-color:var(--text-muted);text-decoration-color:var(--text-muted)}.task-check{cursor:pointer;flex:none;width:22px;height:22px;margin-top:1px;display:inline-flex;position:relative}.task-check input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.checkmark{border:1.5px solid var(--border);background:var(--surface-alt);color:#0000;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:background .15s,border-color .15s;display:flex}.checkmark svg{width:12px;height:12px;transition:transform .15s;transform:scale(.4)}.task-check input:checked+.checkmark{background:var(--accent);border-color:var(--accent);color:#fff}.task-check input:checked+.checkmark svg{transform:scale(1)}.task-check input:hover+.checkmark{border-color:var(--accent)}.task-check input:focus-visible+.checkmark{outline:2px solid var(--accent);outline-offset:2px}.task-body{flex:1;min-width:0}.task-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-title{color:var(--text-h);word-break:break-word;font-weight:600}.task-description{color:var(--text-muted);word-break:break-word;margin:5px 0 0;font-size:14px}.task-due{color:var(--text-muted);align-items:center;gap:5px;margin-top:8px;font-size:13px;display:inline-flex}.task-item.is-overdue .task-due{color:var(--danger);font-weight:600}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.4}.badge-low{color:var(--priority-low);background:var(--priority-low-bg)}.badge-medium{color:var(--priority-medium);background:var(--priority-medium-bg)}.badge-high{color:var(--priority-high);background:var(--priority-high-bg)}.badge-category{color:var(--accent);background:var(--accent-bg)}.task-actions{align-items:flex-start;display:flex}.icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:color .15s,background .15s;display:inline-flex}.icon-btn svg{width:16px;height:16px}.icon-btn:hover{color:var(--danger);background:var(--danger-bg)}.empty-state{text-align:center;color:var(--text-muted);background:var(--surface-alt);border:1px dashed var(--border);border-radius:var(--radius);padding:48px 16px}.empty-state svg{width:36px;height:36px;color:var(--text-muted);opacity:.7;margin-bottom:10px}.empty-state p{margin:0}@media (width<=560px){.task-form{grid-template-columns:1fr}.btn-primary{justify-content:center;justify-self:stretch}.stats-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat-card{padding:10px 6px}.stat-value{font-size:18px}}
