html,body,#root{min-height:100%;margin:0}body{min-height:100vh}:root{--bg:#f4f2ea;--paper:#fffdf8;--text:#1d1b1a;--muted:#6a635c;--line:#dfd8cd;--accent:#0d9488;--accent-2:#0f766e;--done:#94a3b8}*{box-sizing:border-box}.page{background:radial-gradient(circle at 5% 10%, #efe6d6 0%, transparent 30%), radial-gradient(circle at 95% 20%, #d6efe8 0%, transparent 25%), var(--bg);min-height:100vh;color:var(--text);padding:28px 16px 40px;font-family:Avenir Next,Segoe UI,sans-serif}.hero,.panel{width:min(900px,100%);margin:0 auto}.hero{margin-bottom:18px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);margin:0;font-size:13px}h1{margin:8px 0;font-size:clamp(30px,5vw,44px);line-height:1.1}.subtitle{color:var(--muted);margin:0}.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 8px 20px #1d1b1a0f}.input-panel{margin-bottom:16px}label{margin-bottom:10px;font-weight:700;display:block}textarea,input,select{border:1px solid var(--line);width:100%;font:inherit;background:#fff;border-radius:10px;padding:12px}.provider-row{grid-template-columns:120px 1fr;align-items:center;gap:10px;margin-top:10px;display:grid}.provider-row span{color:var(--muted);font-weight:600}.actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:10px 14px;font-weight:700}button:hover{background:var(--accent-2)}button:disabled{opacity:.65;cursor:not-allowed}button.ghost{color:#17524c;background:#eef7f6;border:1px solid #c6e2de}button.danger{color:#9f1239;background:#fff1f2;border-color:#fecdd3}.hint{color:var(--muted);margin:10px 0 0;font-size:14px}.list-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.list-head h2{margin:0}.list-head p{color:var(--muted);margin:0}.task-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.task{border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.task-title{margin:0 0 4px;font-weight:600}.task-meta{color:var(--muted);margin:0;font-size:14px}.task-actions{gap:6px;display:flex}button.mini{padding:7px 10px;font-size:13px}.task.done{opacity:.75;border-style:dashed}.task.done .task-title{color:var(--done);text-decoration:line-through}@media (width<=640px){.task{flex-direction:column}.task-actions{width:100%}.provider-row{grid-template-columns:1fr}}
