:root{--ink:#183329;--green:#1b6b43;--muted:#6c7d73;--line:#e2e7df}*{box-sizing:border-box}body{margin:0;background:#f8f7f0;color:var(--ink);font-family:system-ui,sans-serif}main{max-width:920px;margin:auto;padding:54px 16px}header{display:flex;justify-content:space-between;align-items:end;padding:0 6px 35px}header b{font-size:.72rem;letter-spacing:.14em;color:var(--green)}h1{font:clamp(3.4rem,9vw,5.2rem)/.9 Georgia,serif;letter-spacing:-.08em;margin:10px 0}p{color:var(--muted)}aside{width:106px;height:106px;border-radius:50%;background:#e8f0df;display:grid;place-content:center;text-align:center}aside strong{font:2rem Georgia,serif}aside small{color:var(--muted)}section.add,article{background:#fff;border:1px solid var(--line);border-radius:15px}.add{padding:22px 25px}.add h2,.top h2{font-size:1rem;margin:0}form{display:grid;grid-template-columns:2fr .8fr 1.2fr auto;gap:10px;margin-top:16px}input,select,button{font:inherit}input,select{border:1px solid #d5ddd4;border-radius:8px;padding:12px;min-width:0}button{cursor:pointer;border:0;border-radius:8px;padding:10px;background:none;color:var(--green);font-weight:700}form button{background:var(--green);color:white}.top{display:flex;justify-content:space-between;align-items:center;margin-top:42px}.controls{display:flex;justify-content:space-between;gap:15px;margin:20px 0 13px}.controls input{padding:8px;width:190px}#filters{background:#e9ede6;border-radius:9px;padding:3px}.active{background:white;box-shadow:0 1px 4px #aeb8ae77}#list{display:grid;gap:9px}article{display:flex;align-items:center;gap:14px;padding:14px 15px}.check{width:25px;height:25px;padding:0;border:2px solid #a5b6a7;border-radius:50%;color:transparent}.copy{flex:1}.copy strong,.copy small{display:block}.copy small{color:var(--muted);margin-top:4px}.purchased{background:#fafbfa}.purchased .check{background:var(--green);border-color:var(--green);color:#fff}.purchased .copy strong{text-decoration:line-through;color:#87958b}.delete{color:#a45750}#empty{text-align:center;padding:52px;border:1px dashed #cfd8ce;border-radius:12px}#empty strong{font-size:1.1rem}@media(max-width:650px){main{padding-top:32px}aside{width:82px;height:82px}form{grid-template-columns:1fr 1fr}form input:first-child,form select{grid-column:1/-1}.controls{flex-direction:column}.controls input{width:100%}}@media(max-width:380px){aside{display:none}form{grid-template-columns:1fr}form input:first-child,form select{grid-column:auto}}