:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#eef2ff;background:#0b1020}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(circle at 10% 0,#27375f 0,#0b1020 42%);}.shell{max-width:760px;margin:auto;padding:28px 18px 42px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}h1{font-size:2.35rem;line-height:1;margin:6px 0 8px}.eyebrow{font-size:.72rem;letter-spacing:.16em;color:#93c5fd;font-weight:800;margin:0}.muted{color:#aab5cf;margin:0 0 22px}.toolbar,.add,.notice{display:flex;gap:9px;margin-bottom:12px;flex-wrap:wrap}.notice{align-items:center;color:#aab5cf;font-size:.85rem;padding:4px 0}.overdue{border-color:#ef4444}.due-today{border-color:#f59e0b}input,select,button{font:inherit;border-radius:12px;border:1px solid #3b4a6e;background:#121a30;color:#f8fafc;padding:12px}input{min-width:0}.toolbar input{flex:1 1 220px}.add input{flex:1 1 240px}.add select,.toolbar select{flex:0 1 170px}.add button,button:not(.ghost):not(.text-btn){background:#60a5fa;border-color:#60a5fa;color:#061326;font-weight:800}.check{display:flex;align-items:center;gap:6px;color:#b9c4dc;font-size:.9rem;padding:0 4px}.check input{accent-color:#60a5fa}.card{background:rgba(18,26,48,.86);border:1px solid #293758;border-radius:16px;padding:14px;margin:10px 0;display:flex;gap:12px;align-items:flex-start;box-shadow:0 8px 24px #0002}.card.done{opacity:.56}.card input{margin-top:4px;width:20px;height:20px;accent-color:#60a5fa}.task{flex:1;min-width:0}.task p{margin:0 0 8px;line-height:1.35;overflow-wrap:anywhere}.task p.done{text-decoration:line-through}.meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;font-size:.75rem;color:#aab5cf}.pill{padding:4px 8px;border-radius:99px;background:#263554;color:#bfdbfe}.delete{background:transparent!important;border:0;color:#fca5a5;padding:5px 7px}.empty{text-align:center;color:#aab5cf;padding:48px 12px}.ghost{background:transparent;border-color:#53658e}.text-btn{border:0;background:transparent;color:#9fb3d8;padding:10px 0;font-size:.8rem}footer{display:flex;justify-content:space-between;align-items:center;color:#7182a5;margin-top:22px;font-size:.78rem}@media(max-width:520px){.shell{padding:22px 14px 30px}h1{font-size:2rem}.add select{flex:1}.add button{flex:0 0 80px}.toolbar select{flex:1}.check{width:100%;padding:2px 0}}
