:root{font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4;background:linear-gradient(160deg,#f9fbff,#edf1ff 55%,#e6ecff);color:#0f172a}body{margin:0;min-height:100vh;display:flex;justify-content:center;padding:3.5rem 1.5rem 4rem;background-image:radial-gradient(circle at 20% 20%,rgba(101,173,255,.28),transparent 45%),radial-gradient(circle at 80% 0,rgba(126,220,216,.22),transparent 42%),linear-gradient(180deg,#ffffffb3,#e8eeffd9)}button{font-family:inherit;cursor:pointer}.app-shell{width:min(780px,100%);background:#ffffffc7;border-radius:28px;border:1px solid rgba(255,255,255,.6);padding:2.8rem 2.4rem;box-shadow:0 42px 90px #0f172a1f,0 18px 45px #5d6e9629;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.top-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}.brand-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.1rem .65rem;background:#0f6fff12;border-radius:999px;font-size:.85rem;font-weight:600;color:#0a84ff}.hero-copy h1{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:650;letter-spacing:-.015em;margin:.45rem 0 .25rem}.hero-copy .subtitle{margin:0;color:#1624479e;max-width:320px}.summary-pill{min-width:120px;display:grid;place-items:center;padding:1rem 1.2rem;border-radius:20px;background:linear-gradient(160deg,#0a84ff29,#007aff0f);border:1px solid rgba(10,132,255,.18);text-align:center}.summary-pill .value{font-size:2rem;font-weight:600;line-height:1}.summary-pill .label{font-size:.85rem;color:#0f172a8c}.summary-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:2.4rem 0 2rem}.summary-card{padding:1.2rem 1.4rem;border-radius:20px;background:#ffffffb8;border:1px solid rgba(15,23,42,.05);box-shadow:inset 0 1px #ffffff73}.summary-card .summary-label{display:block;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#0f172a80;margin-bottom:.35rem}.summary-card .summary-value{font-size:1.6rem;font-weight:600}.summary-card .summary-subtext{margin-top:.35rem;font-size:.85rem;color:#0f172a73}.task-form{display:flex;gap:1rem;flex-wrap:wrap;align-items:stretch;padding:1.1rem 1.2rem;border-radius:20px;background:#fafcffeb;border:1px solid rgba(15,23,42,.05);box-shadow:inset 0 1px #ffffff8c}.task-form .app-input{flex:1 1 220px}.app-input,.search-field{width:100%;padding:.95rem 1.2rem;border-radius:16px;border:1px solid rgba(15,23,42,.08);background:#ffffffeb;font-size:1rem;color:inherit;transition:border-color .2s ease,box-shadow .2s ease}.app-input:focus,.search-field:focus{outline:none;border-color:#0a84ff99;box-shadow:0 0 0 4px #0a84ff1f}.primary-button{padding:.95rem 1.6rem;border-radius:16px;border:none;background:linear-gradient(135deg,#0a84ff,#5ac8fa);color:#fff;font-weight:600;letter-spacing:.01em;box-shadow:0 12px 22px #0a84ff33;transition:transform .12s ease,box-shadow .12s ease}.primary-button:disabled{opacity:.55;cursor:progress;box-shadow:none}.primary-button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 16px 26px #0a84ff3d}.toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin:1.8rem 0 1.2rem}.filters{display:inline-flex;gap:.6rem;flex-wrap:wrap}.filter-button{padding:.5rem 1.1rem;border-radius:999px;border:1px solid rgba(15,23,42,.1);background:#fff9;color:#0f172ab3;font-size:.95rem;transition:all .15s ease}.filter-button.active{background:#0a84ff24;border-color:#0a84ff5c;color:#0a84ff;box-shadow:0 8px 18px #0a84ff2e}.search-field{flex:1 1 180px;max-width:240px;background:#fffc}.task-list{display:grid;gap:1rem;margin-top:1.4rem}.task-item{display:grid;grid-template-columns:auto 1fr auto;gap:1.2rem;align-items:center;padding:1.1rem 1.3rem;border-radius:22px;border:1px solid rgba(15,23,42,.06);background:#ffffffdb;box-shadow:inset 0 1px #ffffffa6,0 18px 32px #0f172a14}.task-item.completed{border-color:#34c75959;background:linear-gradient(160deg,#d2ffe7b8,#e5fff1e6)}.task-checkbox{position:relative;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.task-checkbox input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;border:1px solid rgba(15,23,42,.18);background:#fffc;box-shadow:inset 0 1px #ffffffb3;transition:all .18s ease;display:grid;place-content:center}.task-checkbox input[type=checkbox]:after{content:"";width:12px;height:12px;border-radius:50%;transform:scale(0);transition:transform .18s ease;background:linear-gradient(135deg,#0a84ff,#5ac8fa)}.task-checkbox input[type=checkbox]:checked{border-color:#0a84ff99}.task-checkbox input[type=checkbox]:checked:after{transform:scale(1)}.task-body{display:flex;flex-direction:column;gap:.35rem}.task-title{margin:0;font-size:1.05rem;font-weight:520;color:inherit;word-break:break-word}.task-title.completed{text-decoration:line-through;color:#0f172a80}.task-title-input{font-size:1.05rem;padding:.4rem .6rem;border-radius:12px;border:1px solid rgba(10,132,255,.25);background:#fffffff2;box-shadow:0 0 0 4px #0a84ff1f;color:inherit}.task-meta{font-size:.85rem;color:#0f172a73}.task-controls{display:flex;gap:.45rem;align-items:center}.danger-button{padding:.55rem 1rem;border-radius:14px;border:none;background:#ff453a1f;color:#ff3b30;font-weight:500;transition:background .15s ease,transform .15s ease}.danger-button:hover{background:#ff453a2e;transform:translateY(-1px)}.error-alert{margin:1rem 0;padding:.9rem 1.1rem;border-radius:16px;background:#ff453a1f;border:1px solid rgba(255,69,58,.25);color:#b81b11;font-weight:550}.empty-state{text-align:center;padding:2.4rem 1.4rem;border-radius:22px;background:#ffffffb8;border:1px dashed rgba(15,23,42,.08);color:#0f172a80}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (max-width: 720px){.app-shell{padding:2.2rem 1.5rem}.top-bar{flex-direction:column;align-items:flex-start}.summary-pill{align-self:stretch;flex-direction:row;justify-content:space-between}.task-form{flex-direction:column}.toolbar{flex-direction:column;align-items:stretch}.search-field{max-width:none}.task-item{grid-template-columns:auto 1fr;grid-template-rows:auto auto}.task-controls{grid-column:1 / -1;justify-content:flex-end}}
