:root{color-scheme:light;--green:#174832;--pink:#f9d8e2;--paper:#fffdf8}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--green);font:16px/1.5 Arial,sans-serif}main{max-width:1100px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-bottom:28px;border-bottom:1px solid #c8d5bb}header a{font:30px Georgia,serif}a{color:inherit}header span,small{font-size:14px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:clamp(36px,6vw,58px);margin:18px 0}h2{font-size:28px}h3{font-size:24px;margin:0 0 12px}.eyebrow{letter-spacing:.12em;font-size:14px;margin-top:36px}#notice{background:var(--pink);border-radius:12px;padding:16px}.layout{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;margin-top:32px}article{background:#edf2df;border:1px solid #c8d5bb;border-radius:18px;padding:24px;margin-bottom:16px}article p{white-space:pre-wrap}article button{display:block;margin-top:18px}aside{border:1px solid #c8d5bb;border-radius:18px;padding:24px;background:white;align-self:start}button{background:var(--green);color:white;border:1px solid var(--green);border-radius:10px;min-height:44px;padding:11px 18px;font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:default}label{display:block;margin:18px 0 7px;font-weight:600}input,textarea{width:100%;border:1px solid #8eaa94;border-radius:9px;padding:12px;font:inherit;color:var(--green);background:white}textarea{min-height:90px}#pay{width:100%;margin-top:20px}.cart-row{border-bottom:1px solid #d5dfd0;padding:16px 0;display:grid;grid-template-columns:1fr auto;gap:10px}.quantity{display:flex;align-items:center;gap:16px;grid-column:1/-1}.quantity button{background:white;color:var(--green);min-width:44px}.total{display:flex;justify-content:space-between;font-size:20px}footer{text-align:center;padding:40px 0;font-family:Georgia,serif}button:focus-visible,a:focus-visible,input:focus,textarea:focus{outline:3px solid #bb527b;outline-offset:3px}#status{overflow-wrap:anywhere}.result{max-width:600px;margin:60px auto}.result h1{font-size:42px}.result nav{display:flex;gap:20px;margin-top:28px}@media(max-width:760px){.layout{grid-template-columns:1fr}main{padding:20px}header span{max-width:150px;text-align:right}aside{padding:20px}} 
