:root{--bg-color:#0f172a;--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--surface:#1e293bb3;--surface-hover:#1e293be6;--border:#ffffff1a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--primary:#8b5cf6;--primary-hover:#7c3aed;--accent:#0ea5e9;--danger:#ef4444;--danger-hover:#dc2626;--success:#10b981;--font-family:"Outfit", sans-serif;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow:0 8px 32px 0 #0000004d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg-gradient);color:var(--text-primary);justify-content:center;align-items:flex-start;min-height:100vh;padding:40px 20px;display:flex}h1,h2,h3{letter-spacing:-.02em;font-weight:700}.app-container{background:var(--surface);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:600px;box-shadow:var(--shadow);flex-direction:column;gap:24px;padding:32px;display:flex}.header{text-align:center}.header h1{background:linear-gradient(to right, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:2.5rem}.header p{color:var(--text-secondary);font-size:1rem}.input-group{gap:12px;display:flex}.todo-input{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-family);background:#0003;outline:none;flex:1;padding:14px 16px;font-size:1rem;transition:all .3s}.todo-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.btn{border-radius:var(--radius-md);font-family:var(--font-family);cursor:pointer;color:#fff;border:none;justify-content:center;align-items:center;padding:14px 24px;font-size:1rem;font-weight:600;transition:transform .2s,background .3s;display:flex}.btn:active{transform:scale(.95)}.btn-primary{background:var(--primary)}.btn-primary:hover{background:var(--primary-hover)}.filter-tabs{border-radius:var(--radius-md);background:#0003;gap:4px;padding:4px;display:flex}.filter-tab{color:var(--text-secondary);font-family:var(--font-family);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex:1;padding:10px;font-size:.95rem;font-weight:500;transition:all .3s}.filter-tab.active{background:var(--surface-hover);color:var(--text-primary);box-shadow:0 2px 8px #0003}.filter-tab:hover:not(.active){color:var(--text-primary);background:#ffffff0d}.todo-list{flex-direction:column;gap:12px;margin-top:8px;list-style:none;display:flex}.todo-item{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;justify-content:space-between;align-items:center;padding:16px;transition:all .3s;animation:.4s forwards slideIn;display:flex}.todo-item:hover{background:#ffffff0f;border-color:#ffffff26;transform:translateY(-2px)}.todo-item.completed .todo-text{color:var(--text-secondary);text-decoration:line-through}.todo-content{flex:1;align-items:center;gap:16px;display:flex}.todo-text{word-break:break-word;font-size:1.05rem;transition:color .3s}.checkbox-container{cursor:pointer;width:24px;height:24px;position:relative}.checkbox-container input{opacity:0;width:0;height:0}.checkmark{border:2px solid var(--text-secondary);background-color:#0000;border-radius:6px;width:24px;height:24px;transition:all .3s;position:absolute;top:0;left:0}.checkbox-container input:checked~.checkmark{background-color:var(--success);border-color:var(--success)}.checkmark:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;display:none;position:absolute;top:4px;left:8px;transform:rotate(45deg)}.checkbox-container input:checked~.checkmark:after{display:block}.btn-delete{color:var(--text-secondary);border-radius:var(--radius-sm);background:0 0;justify-content:center;align-items:center;padding:8px;display:flex}.btn-delete:hover{color:var(--danger);background:#ef44441a;transform:scale(1.05)}.empty-state{text-align:center;color:var(--text-secondary);padding:40px 20px}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
