:root{--ink:#1a2925;--muted:#63736e;--paper:#f4f7f3;--border:#d4dfd7;--border-strong:#afc0b7;--accent:#16705d;--accent-dark:#0f5748;--accent-soft:#16705d2e;--danger:#a73a32;--danger-soft:#f7e3df;--sans:"Trebuchet MS", "Segoe UI", sans-serif;--display:"Palatino Linotype", "Book Antiqua", Georgia, serif;color:var(--ink);background:var(--paper);font:16px/1.5 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background-color:var(--paper);background-image:repeating-linear-gradient(0deg,#0000 0 31px,#16705d0b 32px),repeating-linear-gradient(90deg,#0000 0 31px,#16705d0b 32px);min-width:320px;min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,p{margin:0}h1{color:var(--ink);font:700 3.5rem/1 var(--display);letter-spacing:0}@media (width<=640px){h1{font-size:2.75rem}}.todo-shell{box-sizing:border-box;width:min(100%,760px);margin:0 auto;padding:72px 32px 56px;animation:.36s ease-out both enter}.page-header{margin-bottom:44px}.eyebrow{color:var(--accent);font:700 .72rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}.page-header h1{margin:10px 0 0}.key-panel{border-block:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(280px,auto);align-items:end;gap:24px;padding:18px 0 22px;display:grid}.key-panel h2{font:700 1rem/1.2 var(--sans);margin:0 0 4px}.key-panel p,.todo-copy span{color:var(--muted);font-size:.82rem}.key-controls,.new-todo{gap:8px;display:flex}input{border:1px solid var(--border-strong);min-width:0;color:var(--ink);font:inherit;background:#fff;border-radius:4px;outline:none;padding:10px 12px}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.key-controls input{width:168px}button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;font:700 .82rem/1 var(--sans);letter-spacing:.02em;border-radius:4px;flex:none;padding:11px 13px}button:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.55}.button-secondary,.delete-button{color:var(--ink);background:0 0}.button-secondary:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:#fff}.new-todo{margin:32px 0 18px}.new-todo input{flex:1}.todo-list{border-top:1px solid var(--border);gap:0;margin:0;padding:0;list-style:none;display:grid}.todo-item{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:18px 0;display:flex}.todo-check{cursor:pointer;align-items:flex-start;gap:13px;min-width:0;display:flex}.todo-check input{width:19px;height:19px;accent-color:var(--accent);margin:2px 0 0}.todo-copy{gap:5px;display:grid}.todo-copy strong{color:var(--ink);font:600 1rem/1.35 var(--sans);overflow-wrap:anywhere}.is-done .todo-copy strong{color:var(--muted);text-decoration:line-through}.delete-button{color:var(--danger);border-color:#0000;padding-inline:8px}.delete-button:hover:not(:disabled){background:var(--danger-soft);color:var(--danger);border-color:#0000}.empty-state,.status-message,.error-message{color:var(--muted);margin:28px 0 0;padding:18px 0}.error-message{border-bottom:1px solid var(--danger);color:var(--danger)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.todo-shell{padding:44px 20px 36px}.key-panel{grid-template-columns:1fr;gap:14px}.key-controls{flex-wrap:wrap}.key-controls input{flex:130px}.todo-item{align-items:flex-start}.delete-button{margin-top:-4px}}
