:root{--bg:#f7f7f4;--surface:#fff;--surface-2:#f0efe9;--text:#1d2125;--muted:#646a70;--border:#e2e0d8;--accent:#1a7f37;--accent-text:#fff;--danger:#b42318;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#141614;--surface:#1c1f1c;--surface-2:#252925;--text:#e8eae6;--muted:#a0a69f;--border:#2f342f;--accent:#5fd27e;--accent-text:#0c1a10;--danger:#ff8a7a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);flex-direction:column;min-height:100vh;margin:0;display:flex}main{flex:1}h1{margin:0 0 1rem;font-size:1.6rem}h2{margin:0;font-size:1.2rem}a{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);margin:0;font-size:.9rem}.container{width:100%;max-width:72rem;margin:0 auto;padding:1.25rem 1rem}.narrow{max-width:36rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}button{font:inherit;border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:var(--accent-text);cursor:pointer;padding:.6rem 1.1rem}button:disabled{opacity:.5;cursor:default}button.link{color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}input,textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);min-width:0;padding:.55rem .7rem}input[aria-invalid=true]{border-color:var(--danger)}.site-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:5;position:sticky;top:0}.header-row{justify-content:space-between;align-items:center;gap:1rem;padding-top:.8rem;padding-bottom:.8rem;display:flex}.brand{color:var(--text);font-size:1.2rem;font-weight:700;text-decoration:none}.cart-link{white-space:nowrap;font-weight:600;text-decoration:none}.badge{background:var(--accent);min-width:1.4rem;color:var(--accent-text);text-align:center;border-radius:999px;padding:0 .4rem;font-size:.85rem;display:inline-block}.site-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:2rem}.footer-row{flex-wrap:wrap;gap:.4rem 1.2rem;font-size:.92rem;display:flex}.catalog{grid-template-columns:14rem 1fr;align-items:start;gap:1.5rem;display:grid}.categories{flex-direction:column;gap:.2rem;display:flex;position:sticky;top:4.5rem}.categories a{border-radius:var(--radius);color:var(--text);justify-content:space-between;padding:.45rem .7rem;text-decoration:none;display:flex}.categories a.active,.categories a:hover{background:var(--surface-2);font-weight:600}.search{gap:.5rem;margin-bottom:1rem;display:flex}.search input{flex:1}.grid{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.product{align-content:start;gap:.5rem;display:grid}.product-link{color:var(--text);gap:.5rem;text-decoration:none;display:grid}.product-link:hover .name{text-decoration:underline}.thumb{aspect-ratio:4/3;border-radius:calc(var(--radius) - 2px);background:var(--surface-2);color:var(--muted);place-items:center;font-size:2.4rem;font-weight:700;display:grid}.thumb.large{aspect-ratio:1;font-size:5rem}.name{font-weight:600}.price{font-weight:700}.price.big{margin:.5rem 0;font-size:1.6rem}.add-to-cart{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.add-to-cart label{gap:.2rem;display:grid}.add-to-cart input{width:7rem}.pager{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.product-page{gap:1rem;display:grid}.product-detail{grid-template-columns:minmax(12rem,22rem) 1fr;gap:1.5rem;display:grid}.checkout{grid-template-columns:1fr 24rem;align-items:start;gap:1.5rem;display:grid}.cart-lines{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.cart-lines li{grid-template-columns:1fr 5rem auto auto auto;align-items:center;gap:.8rem;display:grid}.cart-lines input{text-align:right;width:5rem}.totals{font-size:1.05rem}.order-form{gap:.8rem;display:grid;position:sticky;top:4.5rem}.field{gap:.3rem;display:grid}.field span:first-child{color:var(--muted);font-size:.9rem}.choice{border:none;gap:.4rem;margin:0;padding:0;display:grid}.choice legend{color:var(--muted);margin-bottom:.3rem;font-size:.9rem}.done{gap:.5rem;margin:2rem auto;display:grid}@media (max-width:760px){.catalog,.checkout,.product-detail{grid-template-columns:1fr}.categories{flex-direction:row;position:static;overflow-x:auto}.categories a{white-space:nowrap}.cart-lines li{grid-template-columns:1fr 4.5rem}.order-form{position:static}}
