:root{--ink:#3a2e30;--shop-accent:#843e4d;--shop-muted:#665451;--shop-line:#e2d6d0;--shop-success:#24633c;--shop-error:#9e2525}
[hidden]{display:none!important}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--shop-accent);outline-offset:3px}input,select,textarea{font-size:1rem}h1,h2,h3{text-wrap:balance}.shop-primary,.shop-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:12px;font:600 1rem 'Jost',sans-serif;line-height:1.4;text-decoration:none;transition:background .18s ease,color .18s ease;gap:8px}.shop-primary{background:var(--shop-accent);color:#fff;border:1px solid var(--shop-accent)}.shop-primary:hover{background:#68303d}.shop-secondary{background:#fff;color:var(--shop-accent);border:1px solid var(--shop-line)}.shop-secondary:hover{background:#f7e8e6}.shop-cart{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--shop-line);border-radius:12px;padding:8px 14px;min-height:44px;font-weight:600;background:#fff;color:var(--shop-accent)}.shop-cart svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.shop-count{font-variant-numeric:tabular-nums}.shop-muted{color:var(--shop-muted)}.shop-price{font-family:'Jost',sans-serif;font-weight:600;font-size:1.35rem;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.4}.shop-status{color:var(--shop-muted);font-size:.92rem}.shop-field{display:block;margin:16px 0;font-weight:500}.shop-field input,.shop-field select,.shop-field textarea{display:block;width:100%;padding:12px;border:1px solid var(--shop-line);background:#fff;color:var(--ink);border-radius:10px;min-height:48px;margin-top:6px;line-height:1.5}.shop-field textarea{resize:vertical;min-height:92px}.shop-field small{display:block;font-weight:400;color:var(--shop-muted);margin-top:6px}.shop-note{padding:14px 16px;background:#f7e8e6;border-radius:10px;color:#693340;font-size:.95rem;line-height:1.5;margin:12px 0}.shop-error{background:#fbe8e8;color:var(--shop-error)}.shop-success{background:#e9f4ed;color:var(--shop-success)}.shop-line{border-top:1px solid var(--shop-line);margin:24px 0}.shop-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.shop-step{display:flex;gap:8px;align-items:center;color:var(--shop-muted);font-size:.9rem;margin:20px 0 28px}.shop-step strong{color:var(--shop-accent)}.shop-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.shop-full{grid-column:1/-1}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}.shop-summary{background:#fff;border:1px solid var(--shop-line);padding:24px;border-radius:16px;position:sticky;top:90px}.shop-summary h2{font-size:1.8rem;margin-bottom:20px}.shop-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:12px 0}.shop-total-row strong{font-size:1.2rem}.shop-total-row.total{border-top:1px solid var(--shop-line);padding-top:16px;margin-top:20px}.shop-item{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:20px;padding:24px 0;border-bottom:1px solid var(--shop-line);align-items:start}.shop-item img{width:90px;height:110px;object-fit:cover;border-radius:10px}.shop-item h2{font-size:1.65rem}.shop-qty{display:inline-flex;align-items:center;border:1px solid var(--shop-line);border-radius:8px;background:#fff;margin:12px 0}.shop-qty button{width:44px;height:44px;border:0;background:transparent;color:var(--ink);font-size:1.4rem}.shop-qty span{min-width:32px;text-align:center}.shop-remove{padding:8px 0;min-height:44px;border:0;background:none;color:var(--shop-accent);text-decoration:underline}.shop-empty{text-align:center;padding:56px 16px}.shop-empty h2{font-size:2rem}.shop-empty p{margin:12px 0 24px;color:var(--shop-muted)}.shop-shell{max-width:1140px;margin:0 auto;padding:32px 24px 80px}.shop-shell>h1{font-size:2.75rem;margin-bottom:8px}.shop-alert{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:150;background:var(--ink);color:#fff;padding:14px 20px;border-radius:12px;max-width:calc(100% - 32px);box-shadow:0 8px 28px #0002}.shop-alert a{color:#fff;text-decoration:underline;margin-left:12px}.delivery-box{border-top:1px solid var(--shop-line);padding-top:16px;margin-top:24px}.delivery-box legend{font-weight:600}.delivery-box fieldset{border:0}.delivery-slots{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.delivery-slots label{position:relative;cursor:pointer}.delivery-slots input{position:absolute;opacity:0;width:1px;height:1px}.delivery-slots span{display:block;padding:12px 16px;border:1px solid var(--shop-line);border-radius:10px;background:#fff;min-height:48px}.delivery-slots input:checked+span{border-color:var(--shop-accent);background:#f7e8e6;color:var(--shop-accent);box-shadow:inset 0 0 0 1px var(--shop-accent)}.delivery-slots input:focus-visible+span{outline:3px solid var(--shop-accent);outline-offset:3px}.delivery-strip{background:#f7e8e6;color:#693340;text-align:center;padding:10px 16px;font-size:.92rem}.shop-search{max-width:560px;margin:0 auto 24px}.shop-search input{width:100%;padding:14px 18px;border:1px solid var(--shop-line);border-radius:12px;background:#fff;color:var(--ink)}.skip-link{position:absolute;left:16px;top:-100px;z-index:160;background:#fff;padding:14px}.skip-link:focus{top:12px}
@media(max-width:820px){.shop-layout{grid-template-columns:1fr;gap:24px}.shop-summary{position:static}.shop-shell{padding:24px 16px 64px}.shop-form-grid{grid-template-columns:1fr}.shop-full{grid-column:auto}.shop-item{grid-template-columns:72px minmax(0,1fr);gap:16px}.shop-item img{width:72px;height:90px}.shop-item>strong{grid-column:2}.shop-shell>h1{font-size:2.25rem}.shop-cart{padding:8px 10px}.shop-cart-label{display:none}.delivery-strip{font-size:.85rem}.shop-item h2{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
