[data-stoef-shop],[data-stoef-product],[data-stoef-cart],[data-stoef-checkout]{--_ac:var(--stoef-shop-accent,#1a1a1a);--_act:var(--stoef-shop-accent-text,#fff);--_rad:var(--stoef-shop-radius,14px);--_bor:var(--stoef-shop-border,rgba(0,0,0,.12));--_mut:var(--stoef-shop-muted,#6b7280)}
.stoef-shop-search{width:100%;max-width:360px;margin:0 0 14px;padding:11px 14px;border:1px solid var(--_bor);border-radius:999px;font:inherit;background:transparent;color:inherit}
.stoef-shop-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 14px}
.stoef-shop-bar .stoef-shop-search{margin:0;flex:1;min-width:180px}
.stoef-shop-sort{padding:10px 14px;border:1px solid var(--_bor);border-radius:999px;font:inherit;background:transparent;color:inherit;cursor:pointer}
.stoef-shop-sort option{color:#1a1a1a}
.stoef-shop-more{margin-top:20px;text-align:center}
.stoef-shop-more button{margin:0;padding:9px 22px;font-size:.95em}
.stoef-shop-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.stoef-shop-filter button{padding:7px 14px;border:1px solid var(--_bor);border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:.9em;cursor:pointer;transition:background .15s,color .15s}
.stoef-shop-filter button[data-active]{background:var(--_ac);color:var(--_act);border-color:var(--_ac)}
.stoef-shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.stoef-product-card{display:flex;flex-direction:column;gap:6px;border:1px solid var(--_bor);border-radius:var(--_rad);padding:14px;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s;position:relative}
.stoef-product-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.08)}
.stoef-product-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:calc(var(--_rad) - 6px)}
.stoef-product-card h3{margin:4px 0 0;font-size:1em}
.stoef-product-card .stoef-price{margin:0}
.stoef-soldout{position:absolute;top:10px;right:10px;background:var(--_ac);color:var(--_act);font-size:.75em;padding:3px 9px;border-radius:999px}
.stoef-product-detail{display:grid;gap:28px;align-items:start}
@media(min-width:760px){.stoef-product-detail{grid-template-columns:1fr 1fr}}
.stoef-product-detail img{width:100%;max-height:min(60vh,460px);border-radius:var(--_rad);object-fit:contain;background:var(--_bor)}
.stoef-price{font-size:1.15em;font-weight:700}
.stoef-stock{color:var(--_mut);font-size:.9em;margin:4px 0 12px}
.stoef-back{display:inline-block;margin:0 0 16px;color:var(--_mut);text-decoration:none;font-size:.9em}
.stoef-credit{color:var(--_mut);font-size:.75em;margin:4px 0 0}
.stoef-credit a{color:inherit}
.stoef-qty{display:inline-flex;align-items:center;border:1px solid var(--_bor);border-radius:999px;overflow:hidden;vertical-align:middle}
.stoef-qty button{width:36px;height:36px;border:0;background:transparent;color:inherit;font-size:1.1em;cursor:pointer}
.stoef-qty input{width:44px;height:36px;border:0;text-align:center;font:inherit;background:transparent;color:inherit;-moz-appearance:textfield}
.stoef-qty input::-webkit-outer-spin-button,.stoef-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.stoef-add-btn{display:inline-flex;align-items:center;padding:11px 22px;margin-left:10px;border:0;border-radius:999px;background:var(--_ac);color:var(--_act);font:inherit;font-weight:600;cursor:pointer;transition:opacity .15s}
.stoef-add-btn:disabled{opacity:.45;cursor:not-allowed}
.stoef-cart-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.stoef-cart-lines li{display:grid;grid-template-columns:56px 1fr auto auto auto;gap:12px;align-items:center;border:1px solid var(--_bor);border-radius:var(--_rad);padding:10px 14px}
@media(max-width:560px){.stoef-cart-lines li{grid-template-columns:56px 1fr auto;grid-auto-rows:auto}}
.stoef-cart-lines img{width:56px;height:56px;object-fit:cover;border-radius:8px}
.stoef-noimg{width:56px;height:56px;border-radius:8px;background:var(--_bor)}
.stoef-cart-lines a{color:inherit;text-decoration:none;font-weight:600}
.stoef-line-total{font-weight:600;min-width:70px;text-align:right}
.stoef-rm{border:0;background:transparent;color:var(--_mut);font-size:1.2em;cursor:pointer;padding:4px 8px}
.stoef-cart-total{display:flex;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:2px solid var(--_bor);font-weight:700;font-size:1.15em}
.stoef-cart-actions{margin-top:16px}
.stoef-cart-actions a{color:var(--_mut)}
.stoef-shop-msg{color:var(--_mut)}
.stoef-checkout-lines{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:6px}
.stoef-checkout-lines li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--_bor)}
.stoef-checkout-total,.stoef-checkout-fee{display:flex;justify-content:space-between;margin:4px 0;color:var(--_mut)}
.stoef-fulfil{display:flex;gap:18px;margin:18px 0 8px}
.stoef-fulfil label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.stoef-checkout-form{display:flex;flex-direction:column;gap:10px;max-width:520px;margin-top:8px}
.stoef-checkout-grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:start}
@media(min-width:820px){.stoef-checkout-grid{grid-template-columns:minmax(0,1fr) 300px}}
.stoef-checkout-aside{border:1px solid var(--_bor);border-radius:var(--_rad);padding:18px}
@media(min-width:820px){.stoef-checkout-aside{position:sticky;top:16px}}
.stoef-checkout-aside-h{margin:0 0 12px;font-size:1.05em;font-weight:700}
.stoef-checkout-aside .stoef-cart-total{margin-top:12px}
[data-stoef-cart]+div{justify-content:flex-end}
.stoef-checkout-form input,.stoef-checkout-form textarea,.stoef-checkout-form select{padding:11px 14px;border:1px solid var(--_bor);border-radius:calc(var(--_rad) - 4px);font:inherit;background:transparent;color:inherit}
.stoef-checkout-form select{cursor:pointer}
.stoef-checkout-form select option{color:#1a1a1a}
.stoef-checkout-form textarea{min-height:70px;resize:vertical}
.stoef-addr{display:flex;flex-direction:column;gap:10px}
.stoef-addr-row{display:grid;grid-template-columns:1fr 2fr;gap:10px}
.stoef-checkout-form .stoef-add-btn{margin-left:0;align-self:flex-start}
.stoef-order-done{border:1px solid var(--_bor);border-radius:var(--_rad);padding:24px}
[data-stoef-checkout] [data-stoef-status]{color:inherit}
[data-stoef-status]{min-height:1.4em;color:var(--_mut);font-size:.9em}
.stoef-retry{margin-left:8px;border:1px solid var(--_bor);background:transparent;color:inherit;border-radius:999px;padding:5px 12px;cursor:pointer;font:inherit;font-size:.85em}
[data-stoef-cart-badge]{display:inline-flex;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--_ac);color:var(--_act);font-size:11px;line-height:18px;justify-content:center;align-items:center}
.stoef-cart-fab{position:fixed;right:20px;bottom:20px;z-index:9999;display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:var(--_ac);color:var(--_act);text-decoration:none;font:inherit;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.stoef-cart-fab .stoef-fab-count{display:inline-flex;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--_act);color:var(--_ac);font-size:12px;line-height:20px;justify-content:center;align-items:center;font-weight:700}
.stoef-checkout-biz{display:flex;flex-direction:column;gap:10px;margin:2px 0}
.stoef-checkout-biz label.stoef-check{flex-direction:row;align-items:center;gap:8px;cursor:pointer;color:inherit}
.stoef-ac{position:relative;display:block}
.stoef-ac-list{position:absolute;left:0;right:0;top:100%;z-index:30;background:#fff;color:#1a1a1a;border:1px solid var(--_bor);border-radius:calc(var(--_rad) - 4px);margin-top:4px;list-style:none;padding:4px;box-shadow:0 10px 30px rgba(0,0,0,.15);max-height:240px;overflow:auto}
.stoef-ac-list li{padding:9px 11px;border-radius:8px;cursor:pointer;font-size:.9em}
.stoef-ac-list li[aria-selected=true],.stoef-ac-list li:hover{background:rgba(0,0,0,.06)}