/* Public shopping bag. No checkout, stock reservation or order submission. */
.store-nav-entry{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.bag-open{position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--navy);background:none;border:0;padding:8px 5px;cursor:pointer;min-width:34px;min-height:38px}
.bag-count{position:absolute;top:-2px;right:0;background:var(--blue);color:#fff;border-radius:20px;font-size:10px;line-height:18px;min-width:18px;padding:0 4px;text-align:center;font-weight:700}
.store-buy-panel{margin:25px 0;padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff}
.store-buy-price{font-size:28px;font-weight:750;margin:0 0 15px}.store-buy-form{display:grid;grid-template-columns:minmax(120px,1fr) 85px;gap:16px}.store-buy-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650}.store-buy-form select,.store-buy-form input{width:100%;min-height:44px;font:inherit;color:var(--navy);border:1px solid #b8c8dd;border-radius:5px;padding:8px;background:#fff}.store-buy-form .store-add{grid-column:1/-1;justify-content:center;cursor:pointer}.store-buy-note{font-size:12px;color:var(--muted);margin:14px 0 0}
.store-card-add{display:block;margin-top:12px;min-height:42px;border:0;border-radius:5px;padding:9px 22px;background:var(--navy);color:#fff;font-weight:650;font-size:13px;cursor:pointer}.store-card-add:hover{background:var(--blue)}
dialog.bag-dialog{width:min(94vw,740px);max-width:740px;max-height:90dvh;padding:0;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);box-shadow:0 20px 80px #08274e33}
.bag-dialog::backdrop{background:#061a36a8}.bag-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line)}.bag-header h2{font-size:26px;letter-spacing:-.8px;margin:0}.bag-close{width:42px;height:42px;border:0;background:var(--pale);border-radius:50%;font-size:28px;cursor:pointer}.bag-lines{padding:0 24px}.bag-empty{padding:30px 0;margin:0;color:var(--muted)}
.bag-item{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:18px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}.bag-dialog .bag-item img{display:block;width:84px;height:84px;object-fit:contain;background:var(--pale);border-radius:7px}.bag-item-title{font-size:17px;font-weight:700;text-decoration:none}.bag-item-title:hover{text-decoration:underline}.bag-dialog .bag-item-colour,.bag-dialog .bag-unit-price{text-align:left;margin:3px 0;color:var(--muted);font-size:13px}.bag-item-controls{display:flex;flex-wrap:wrap;align-items:end;gap:18px;margin-top:12px}.bag-item-controls label{font-size:11px;display:flex;flex-direction:column;gap:4px}.bag-quantity{width:75px;min-height:38px;border:1px solid #b8c8dd;border-radius:4px;color:var(--navy);padding:6px;font:inherit}.bag-remove{padding:8px 0;border:0;background:none;text-decoration:underline;font-size:12px;cursor:pointer}.bag-line-total{font-size:16px;white-space:nowrap}
.bag-summary{padding:16px 24px}.bag-dialog .bag-subtotal{display:flex;justify-content:space-between;margin:0 0 8px;font-size:20px;text-align:left}.bag-dialog .bag-delivery-note,.bag-dialog .bag-storage-note{font-size:12px;text-align:left;margin:0;color:var(--muted)}.bag-dialog .bag-storage-note{margin:0 24px 16px;color:#8b4d00}.bag-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 24px;background:var(--pale);border-top:1px solid var(--line)}.bag-continue{background:#fff;border:1px solid var(--navy);border-radius:5px;padding:11px 16px;cursor:pointer;font-size:13px}.bag-checkout:disabled{opacity:.55;cursor:not-allowed;font-size:13px;border:0}
.bag-toast{position:fixed;z-index:1001;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;background:var(--navy);color:#fff;padding:16px 22px;border-radius:8px;max-width:calc(100vw - 30px);box-shadow:0 6px 25px #08274e30;font-size:13px}.bag-toast button{border:1px solid #fff;background:none;color:#fff;border-radius:4px;padding:8px 12px;white-space:nowrap;cursor:pointer}
@media(max-width:740px){.bag-header{padding:16px}.bag-header h2{font-size:22px}.bag-lines{padding:0 16px}.bag-item{grid-template-columns:65px minmax(0,1fr);gap:12px}.bag-dialog .bag-item img{width:65px;height:65px}.bag-line-total{grid-column:2}.bag-summary{padding:16px}.bag-footer{padding:16px;flex-wrap:wrap}.bag-checkout{flex:1}.bag-toast{width:calc(100vw - 30px);bottom:12px;gap:10px;padding:13px}.store-card-add{width:100%;padding:9px 12px}.store-nav-entry{gap:9px}}

.bag-dialog .bag-gift-quantity{font-size:11px;text-align:left;margin:12px 0 0}.bag-gift .bag-item-title:hover{text-decoration:none}
