:root{--bg:#0f172a;--panel:#111827;--muted:#94a3b8;--text:#e5e7eb;--accent:#6366f1;--accent-2:#22c55e;--danger:#ef4444;--border:#1f2937;--shadow:0 10px 25px rgba(0,0,0,.35)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:linear-gradient(180deg,#0b1223,#0f172a 35%);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Helvetica Neue,Arial}.container{max-width:900px;margin:40px auto;padding:0 16px}.card{background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:24px}.header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.title{display:flex;align-items:center;gap:10px;margin:0;font-size:28px;font-weight:700;letter-spacing:.2px}.badge{font-size:12px;color:var(--muted);border:1px solid var(--border);padding:4px 8px;border-radius:999px}.row{display:flex;gap:10px}input[type=text]{background:#0b1223;border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:10px;outline:none;transition:border .15s,box-shadow .15s}input[type=text]:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f140}button{appearance:none;border:1px solid transparent;background:#2563eb;color:#fff;font-weight:700;padding:10px 14px;border-radius:10px;cursor:pointer;transition:transform .15s,background .15s,box-shadow .15s,opacity .15s}button:hover{transform:translateY(-1px);background:#1d4ed8}button:active{transform:translateY(0)}button:focus-visible{outline:none;box-shadow:0 0 0 3px #2563eb59}button.secondary{background:#0b1223;border-color:var(--border);color:var(--text)}button.secondary:hover{border-color:#334155}button.danger{background:var(--danger)}button.danger:hover{background:#dc2626}hr{border:0;border-top:1px solid var(--border);margin:18px 0}.list{list-style:none;margin:0;padding:0}.item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #334155}.item:last-child{border-bottom:none}.checkbox{appearance:none;width:20px;height:20px;border-radius:6px;background:#0b1223;border:2px solid #64748b;position:relative;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s,transform .05s}.item:hover .checkbox{border-color:#94a3b8}.checkbox:focus-visible{outline:none;box-shadow:0 0 0 3px #6366f159;border-color:#cbd5e1}.checkbox:checked{background:var(--accent-2);border-color:var(--accent-2)}.checkbox:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:2px solid #052e11;border-top:0;border-left:0;transform:rotate(45deg)}.item-title{font-weight:700}.item-desc{color:var(--muted);font-size:14px}.item.done .item-title,.item.done .item-desc{text-decoration:line-through;color:var(--muted)}.toolbar{display:flex;gap:8px;margin-left:auto}.footer{margin-top:12px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}button{appearance:none;border:2px solid #3b82f6;background:#1d4ed8;color:#fff;font-weight:800;padding:10px 16px;border-radius:10px;cursor:pointer;box-shadow:0 6px 16px #1d4ed840;transition:transform .15s,background .15s,box-shadow .15s,opacity .15s}button:hover{background:#1e40af;box-shadow:0 8px 20px #1d4ed859}button:focus-visible{outline:none;box-shadow:0 0 0 3px #3b82f673,0 6px 16px #1d4ed840}.btn-primary{border:2px solid #16a34a;background:#22c55e;color:#0b1223;box-shadow:0 6px 16px #22c55e40}.btn-primary:hover{background:#16a34a;box-shadow:0 8px 20px #22c55e52}.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px #22c55e59,0 8px 20px #22c55e52}button:disabled,.btn-primary:disabled{background:#334155;border-color:#475569;color:#cbd5e1;opacity:1;cursor:not-allowed;box-shadow:none}.task-form{display:flex;gap:10px;margin-bottom:12px}.task-form input{min-width:0}.task-form input:first-of-type{flex:2}.task-form input:nth-of-type(2){flex:3}.task-form button{white-space:nowrap}@media(max-width:768px){.container{margin:20px auto;padding:0 12px}.card{padding:16px}.header{flex-direction:column;align-items:flex-start}.title{font-size:22px;line-height:1.15}.task-form{flex-direction:column}.task-form input,.task-form button{width:100%}.footer{flex-direction:column;align-items:stretch;gap:12px}.footer button{width:100%}.toolbar{margin-left:0}.item{align-items:flex-start}}
