*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;color-scheme:light dark;--color-bg: #faf7f1;--color-surface: #ffffff;--color-text: #1a1a1a;--color-text-muted: #767066;--color-accent: #e2793a;--color-border: #e6e0d4}@media(prefers-color-scheme:dark){:root{--color-bg: #16140f;--color-surface: #1e1c16;--color-text: #f2ede2;--color-text-muted: #a39c8e;--color-accent: #f0965c;--color-border: #322e25}}body{min-height:100dvh;background-color:var(--color-bg);color:var(--color-text)}.page{max-width:80ch;margin-inline:auto;padding:2rem}.todo{max-width:40rem;margin-inline:auto;padding:2.5rem 1.5rem 4rem}.todo__header{margin-bottom:2rem}.todo__wordmark{font-size:1.25rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text)}.todo__form{display:flex;gap:.5rem;margin-bottom:2.5rem}.todo__input{flex:1;padding:.75rem 1rem;font-size:1rem;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;transition:border-color .15s ease}.todo__input:focus-visible{outline:none;border-color:var(--color-accent)}.todo__add{padding:.75rem 1.25rem;font-size:1rem;font-weight:600;color:#fff;background-color:var(--color-accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .15s ease}.todo__add:hover{opacity:.9}.todo__section{margin-bottom:2rem;animation:todo-fade-in .15s ease}.todo__date-label{margin-bottom:.75rem;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.todo__list{list-style:none;border-top:1px solid var(--color-border)}.todo__item{border-bottom:1px solid var(--color-border)}.todo__label{display:flex;align-items:center;gap:.75rem;padding:.9rem .25rem;cursor:pointer}.todo__label input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--color-accent);flex-shrink:0}.todo__text{font-size:1rem;line-height:1.4;color:var(--color-text)}.todo__text--done{color:var(--color-text-muted);text-decoration:line-through}.todo__empty{color:var(--color-text-muted);font-size:.95rem}@keyframes todo-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}
