.shop-overlay{background:rgba(18,23,32,.48);backdrop-filter:blur(7px);padding:24px}
.shop-panel{max-width:1080px;border:0;border-radius:24px;box-shadow:0 30px 110px #10182840;background:#fff;color:#171b23}
.shop-head{padding:25px 30px 22px;align-items:flex-start;border-bottom:1px solid #e9ebee}
.shop-head-brand{font-size:10px;font-weight:800;letter-spacing:2px;color:#e51a2d}
.shop-head-title-row{display:flex;align-items:center;gap:12px;margin-top:8px}
.shop-head h2{font-size:28px;letter-spacing:-.8px;line-height:1.2}
.shop-head-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:50%;background:#f1f2f4;color:#5d6674;font-size:12px;font-weight:600}
.shop-head-subtitle{font-size:12px;line-height:1.5;color:#77808e;margin:8px 0 0}
.shop-head>.shop-remove{width:36px;height:36px;background:#f4f5f7;border-radius:50%;font-size:24px;padding:0;color:#525a66}
.shop-layout{grid-template-columns:minmax(0,1fr) 340px}
.shop-body{background:#fff;padding:5px 30px 22px;scrollbar-gutter:auto}
.shop-item{grid-template-columns:125px minmax(0,1fr);gap:20px;padding:24px 0;border-color:#eceef1}
.shop-item-media{width:125px;height:125px;padding:12px;border:0;background:#f4f5f7;border-radius:14px}
.shop-item-category{font-size:9px;letter-spacing:1px;color:#8b929e;margin-bottom:6px}
.shop-item-title strong{font-size:16px;font-weight:700;line-height:1.45}
.shop-item-title .shop-remove{font-size:11px;line-height:20px;padding:2px 0;text-decoration:underline;text-underline-offset:3px;color:#8a909a;flex-shrink:0;min-height:24px}
.shop-item-title .shop-remove:hover{color:#d91d31}
.shop-availability{font-size:11px;color:#418257;margin:8px 0 0;line-height:1.4}
.shop-option-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.shop-option-chips span{padding:4px 7px;background:#f4f5f7;border-radius:5px;color:#646d7b;font-size:10px;line-height:1.4}
.shop-item-detail>.shop-edit{color:#d9273a;padding:8px 0 0;text-decoration:none;font-size:11px}
.shop-item-bottom{margin-top:17px}
.shop-quantity{border:1px solid #e0e3e8;background:#fff;border-radius:9px}
.shop-quantity button{width:34px;height:34px;background:#fff;font-size:18px;cursor:pointer}
.shop-quantity button:hover:not(:disabled){background:#f2f3f5}
.shop-quantity span{min-width:30px;font-weight:600;font-size:12px}
.shop-item-pricing strong{font-size:19px;letter-spacing:-.4px}
.shop-item-pricing small{font-size:10px;color:#9299a4}
.shop-summary{background:#f6f7f9;border-left:1px solid #eceef1;scrollbar-gutter:auto}
.shop-foot{padding:28px 25px;gap:18px}
.shop-summary-eyebrow{color:#9198a4;font-size:9px;letter-spacing:1.7px}
.shop-summary-title{font-size:23px;margin:-8px 0 4px;color:#171b23}
.shop-summary-line{display:flex;align-items:baseline;justify-content:space-between;gap:15px;font-size:12px;color:#747d8b}
.shop-summary-line strong{font-size:12px;font-weight:500;text-align:right;color:#333c49}
.shop-total{border-top:1px solid #dfe3e9;padding-top:20px;margin-top:1px;font-size:14px;font-weight:600}
.shop-total strong{font-size:30px;color:#171b23}
.shop-shipping-note,.shop-checkout-note{font-size:11px;line-height:1.65;color:#7b8491;margin:-6px 0 0}
.shop-foot>.btn-primary{min-height:49px;border-radius:10px;background:#e51a2d;font-size:13px;font-weight:700;box-shadow:0 4px 12px #e51a2d1a}
.shop-foot>.btn-primary:hover{background:#cf1426}
.shop-foot>.btn-primary:disabled{opacity:.45;cursor:not-allowed}
.shop-checkout-note{font-size:10px;text-align:center;margin:-7px 0 0}
.shop-support-link{font-size:11px;text-align:center;color:#505b6d;text-underline-offset:4px}
.shop-continue{border:0;background:none;padding:5px;font:inherit;font-size:11px;color:#76808f;cursor:pointer}
.shop-empty-symbol{width:72px;height:72px;display:grid;place-items:center;margin:15px auto;background:#f5f6f8;border-radius:22px;font-size:36px;font-weight:300;color:#e51a2d}
.shop-empty-title{text-align:center;font-size:23px;margin:18px 0 0;letter-spacing:-.5px}
.shop-empty{padding:0 0 12px;font-size:13px;line-height:1.7;max-width:350px;margin:14px auto;color:#7b8491}
.shop-panel.is-empty .shop-head-count{display:none}
.shop-panel.is-empty .shop-summary{background:#fff}
.shop-panel.is-empty .shop-foot{padding:10px 30px 28px}
.shop-item button:focus-visible,.shop-head button:focus-visible,.shop-foot button:focus-visible,.shop-foot a:focus-visible{outline:2px solid #e51a2d;outline-offset:3px}
@media(max-width:780px){.shop-overlay{padding:10px}.shop-panel{border-radius:19px;max-width:560px;max-height:calc(100dvh - 20px)}.shop-head{padding:20px}.shop-head h2{font-size:24px}.shop-layout{display:block}.shop-body{padding:0 20px 5px}.shop-summary{border-left:0;border-top:1px solid #e7eaf0}.shop-foot{padding:24px 20px;gap:16px}.shop-item{grid-template-columns:84px minmax(0,1fr);gap:13px;padding:20px 0}.shop-item-media{width:84px;height:95px;padding:7px;border-radius:11px}.shop-item-title{flex-wrap:wrap;gap:2px}.shop-item-title strong{font-size:14px}.shop-item-title .shop-remove{margin-left:auto;font-size:10px}.shop-item-pricing strong{font-size:18px}.shop-item-bottom{gap:8px}.shop-quantity button{width:32px;height:34px}.shop-quantity span{min-width:27px}.shop-head-subtitle{max-width:265px;font-size:11px}.shop-layout{max-height:calc(100dvh - 157px)}}
@media(prefers-reduced-motion:no-preference){.shop-panel{animation:shop-in .18s ease-out}@keyframes shop-in{from{transform:translateY(12px);opacity:.65}to{transform:translateY(0);opacity:1}}}
