/* Frosted V122 — carrinho. Regras limitadas a esta página e aos seus diálogos. */
.cart-body { --cart-line:rgba(255,255,255,.08); --cart-muted:#97a3b2; background:#090d13; }
.cart-body .cart-page { width:min(1520px,calc(100% - 40px)); padding-top:calc(var(--nav-height) + 24px); min-height:0; }
.cart-body .cart-hero { width:100%; margin-bottom:18px; padding:18px 22px; align-items:center; border-radius:22px; background:#101720; }
.cart-body .cart-title .page-refresh-badge { margin-bottom:10px; }
.cart-body .cart-title h1 { font-size:clamp(1.7rem,3vw,2.25rem); letter-spacing:-.035em; }
.cart-body .cart-title p { margin-top:8px; font-size:.84rem; }
.cart-body button { font-family:inherit; }
.cart-import-open { min-height:44px; padding:11px 17px; display:inline-flex; align-items:center; justify-content:center; gap:9px; flex-shrink:0; border:1px solid rgba(92,225,253,.25); border-radius:12px; color:#b6edfb; background:rgba(92,225,253,.07); font-size:.83rem; font-weight:750; cursor:pointer; }
.cart-import-open:hover { background:rgba(92,225,253,.12); }
.cart-body button:disabled,.cart-dialog button:disabled { opacity:.46; cursor:not-allowed; transform:none; }
.cart-body .cart-layout { width:100%; grid-template-columns:minmax(0,1fr) 310px; gap:18px; align-items:stretch; }
.cart-body .cart-panel { width:100%; margin:0; min-width:0; background:#101720; border-radius:20px; display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.cart-body .cart-panel-header { padding:20px; gap:10px; flex-wrap:wrap; min-height:84px; align-items:flex-start; }
.cart-body .cart-panel-header > div:first-child { display:grid; gap:5px; }
.cart-body .cart-panel-header h2 { margin:0; font-size:1rem; line-height:1.35; }
.cart-body .cart-panel-header [data-cart-items-label] { font-size:.74rem; color:var(--cart-muted); }
.cart-view-toggle { display:flex; border:1px solid var(--cart-line); border-radius:10px; padding:3px; gap:3px; background:rgba(0,0,0,.17); }
.cart-view-toggle button { min-height:34px; display:flex; align-items:center; gap:6px; padding:6px 9px; border:0; border-radius:7px; background:transparent; color:#9ca8b7; font-size:.7rem; font-weight:700; cursor:pointer; }
.cart-view-toggle button[aria-pressed="true"] { color:#a5eafb; background:rgba(92,225,253,.1); }
.cart-body .cart-items { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); grid-auto-rows:max-content; align-items:stretch; align-content:start; gap:10px; max-height:540px; min-height:0; padding:14px; overflow:auto; overflow-x:hidden; scrollbar-gutter:auto; overscroll-behavior-y:contain; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; }
.cart-body .cart-items,.cart-body .cart-stock-grid,.cart-dialog .cart-review-list { scrollbar-width:thin; scrollbar-color:rgba(92,225,253,.45) rgba(255,255,255,.025); }
.cart-body .cart-items::-webkit-scrollbar,.cart-body .cart-stock-grid::-webkit-scrollbar,.cart-dialog .cart-review-list::-webkit-scrollbar { width:6px; }
.cart-body .cart-items::-webkit-scrollbar-track,.cart-body .cart-stock-grid::-webkit-scrollbar-track,.cart-dialog .cart-review-list::-webkit-scrollbar-track { background:rgba(255,255,255,.025); }
.cart-body .cart-items::-webkit-scrollbar-thumb,.cart-body .cart-stock-grid::-webkit-scrollbar-thumb,.cart-dialog .cart-review-list::-webkit-scrollbar-thumb { border-radius:8px; background:rgba(92,225,253,.38); }
.cart-body .cart-item { position:relative; display:flex; flex-direction:column; justify-content:flex-start; align-items:stretch; min-width:0; min-height:0; height:auto; padding:10px; gap:7px; margin:0; border:1px solid rgba(255,255,255,.065); border-radius:14px; background:#191f29; box-shadow:none; transform:none; }
.cart-body .cart-item:hover { transform:none; border-color:rgba(92,225,253,.2); }
.cart-body .cart-thumb { width:54px; height:54px; flex:0 0 54px; align-self:center; }
.cart-body .cart-item img { width:100%; height:100%; max-width:none; max-height:none; object-fit:contain; }
/* Neutraliza height:100% / flex:1 herdados de style.css: o preço fica junto ao nome. */
.cart-body .cart-info { min-width:0; width:100%; height:auto; flex:0 0 auto; display:flex; flex-direction:column; justify-content:flex-start; gap:3px; text-align:center; }
.cart-body .cart-info h3 { margin:0; min-height:0; height:auto; color:#f4f6fa; font-size:.79rem; line-height:1.3; white-space:normal; overflow:visible; overflow-wrap:anywhere; text-overflow:clip; }
.cart-body .cart-info > span { margin:0; color:var(--cart-muted); font-size:.69rem; line-height:1.4; }
.cart-body .cart-right { display:flex; flex-direction:column; flex:0 0 auto; flex-wrap:nowrap; width:100%; gap:6px; margin:0; margin-top:auto; padding:0; border:0; align-items:stretch; }
.cart-body .cart-qty-wrap { display:grid; grid-template-columns:32px minmax(0,1fr) 32px; align-items:stretch; gap:0; width:100%; min-width:0; height:36px; padding:0; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:#0c1218; overflow:hidden; }
.cart-body .cart-qty-wrap:focus-within { border-color:rgba(92,225,253,.6); box-shadow:inset 0 0 0 1px rgba(92,225,253,.24); }
.cart-body .cart-qty-btn { display:grid; place-items:center; width:100%; min-width:0; height:34px; padding:0; background:transparent; color:#bceffc; border:0; font-size:1.05rem; border-radius:0; cursor:pointer; }
.cart-body .cart-qty-btn:hover:not(:disabled) { background:rgba(92,225,253,.09); }
.cart-body .cart-qty { width:100%; min-width:0; height:34px; padding:0; border:0; border-radius:0; color:#f3f5f8; background:transparent; text-align:center; font:700 .84rem Inter,sans-serif; appearance:textfield; -moz-appearance:textfield; }
.cart-body .cart-qty::-webkit-inner-spin-button,.cart-body .cart-qty::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.cart-body .cart-price-block { display:flex; justify-content:space-between; align-items:center; gap:4px; min-width:0; margin:0; }
.cart-body .cart-price-block small { color:var(--cart-muted); font-size:.65rem; }
.cart-body .cart-price-block strong { font-size:.85rem; color:#66dafa; white-space:nowrap; }
.cart-body .cart-remove { position:absolute; top:8px; right:8px; width:30px; height:30px; min-width:0; display:grid; place-items:center; padding:0; border:0; border-radius:8px; background:rgba(0,0,0,.15); color:#8f9bab; font-size:.73rem; cursor:pointer; }
.cart-body .cart-remove:hover { background:rgba(240,110,123,.12); color:#ffabb5; }
.cart-body .cart-item.is-unavailable { border-color:rgba(248,153,153,.35); }
.cart-body .cart-item.is-unavailable .cart-info > span { color:#ffabb5; }
.cart-body .cart-empty { grid-column:1 / -1; min-height:240px; padding:24px 16px; margin:0; }
.cart-body .cart-empty p { max-width:340px; line-height:1.6; }
.cart-body .cart-empty-action { cursor:pointer; border:0; min-height:42px; justify-content:center; }
.cart-body .cart-empty-action i { display:inline-block; margin:0; font-size:.95rem; line-height:1; opacity:1; }
.cart-body .cart-empty-icon { width:54px; height:54px; margin-bottom:12px; }
.cart-body .cart-empty-icon i { font-size:2rem; margin:0; line-height:1; }
.cart-body .cart-items.is-empty { display:flex; align-items:stretch; }
.cart-body .cart-items.is-empty .cart-empty { width:100%; flex:1 0 auto; }
.cart-body .cart-items.is-compact { grid-template-columns:minmax(0,1fr); }
.cart-body .cart-items.is-compact .cart-item { display:grid; grid-template-columns:46px minmax(0,1fr) 220px 28px; align-items:center; gap:12px; padding:12px; }
.cart-body .cart-items.is-compact .cart-thumb { width:46px; height:46px; flex-basis:auto; }
.cart-body .cart-items.is-compact .cart-info { text-align:left; }
.cart-body .cart-items.is-compact .cart-info h3 { min-height:0; margin:0; font-size:.85rem; }
.cart-body .cart-items.is-compact .cart-right { flex-direction:row; align-items:center; gap:14px; margin-top:0; }
.cart-body .cart-items.is-compact .cart-qty-wrap { width:110px; flex:0 0 110px; }
.cart-body .cart-items.is-compact .cart-price-block { flex:1; flex-direction:column; align-items:flex-end; }
.cart-body .cart-items.is-compact .cart-remove { position:static; }
.cart-panel-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 18px; border-top:1px solid var(--cart-line); }
.cart-panel-footer a,.cart-panel-footer button { padding:6px 0; display:flex; align-items:center; gap:7px; background:none; border:0; font-size:.73rem; font-weight:650; }
.cart-panel-footer a { color:#a3e8f9; }
.cart-panel-footer button { color:var(--cart-muted); cursor:pointer; }
.cart-body .cart-checkout-card { position:static; padding:20px; margin:0; min-width:0; border-radius:20px; background:#101720; display:flex; flex-direction:column; align-self:stretch; }
.cart-body .cart-checkout-head { display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:10px; min-height:0; flex:0 0 auto; }
.cart-body .cart-checkout-heading { gap:8px; align-items:flex-start; }
.cart-body .cart-checkout-icon { width:24px; height:24px; flex:0 0 24px; border-radius:7px; font-size:.82rem; }
.cart-body .cart-checkout-heading h2 { margin:0; font-size:1rem; line-height:1.35; }
.cart-orders-link { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:38px; padding:10px 12px; border:1px solid rgba(92,225,253,.18); border-radius:12px; background:rgba(92,225,253,.06); color:#b7ecf8; font-size:.74rem; font-weight:750; white-space:nowrap; }
.cart-orders-link:hover { background:rgba(92,225,253,.1); }
.cart-body .cart-summary { display:flex; flex-direction:column; gap:13px; margin-top:16px; }
.cart-body .cart-total { display:flex; flex-direction:column; align-items:flex-start; gap:11px; padding:17px; border-radius:13px; }
.cart-body .cart-total-copy { gap:6px; }
.cart-body .cart-total small { line-height:1.5; font-size:.7rem; }
.cart-body .cart-total strong { color:#5bdbfa; font-size:1.9rem; font-weight:850; letter-spacing:-.035em; }
.cart-body .cart-actions { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
.cart-body .cart-btn { min-height:46px; width:100%; padding:10px 14px; gap:8px; font-family:inherit; font-size:.83rem; border-radius:12px; cursor:pointer; line-height:1.35; }
.cart-body .btn-site-chat,.cart-dialog .btn-site-chat { color:#07171e; border:1px solid transparent; background:var(--gradient-primary,linear-gradient(120deg,#4fdcf1,#37a4ec)); font-weight:800; }
.cart-body .btn-copy { background:rgba(255,255,255,.035); color:#ccd5df; border:1px solid var(--cart-line); font-weight:700; }
.cart-body .cart-btn:hover { transform:none; filter:brightness(1.07); }
.cart-other-channels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.cart-other-channels .cart-channel-btn { display:inline-flex; justify-content:center; align-items:center; gap:8px; min-height:44px; border-radius:12px; padding:10px 14px; font-size:.78rem; font-weight:800; color:#f7fbff; border:0; box-shadow:0 10px 24px rgba(0,0,0,.18); }
.cart-other-channels .btn-discord.cart-channel-btn { background:#5865F2; }
.cart-other-channels .btn-whatsapp.cart-channel-btn { background:#25D366; color:#0b1c11; }
.cart-body .cart-checkout-footer { display:flex; flex-direction:column; gap:14px; align-items:stretch; padding-top:16px; margin-top:16px; }
.cart-body .cart-checkout-footer p { text-align:left; font-size:.72rem; line-height:1.6; }
.cart-body .cart-continue-link { white-space:normal; font-size:.73rem; background:transparent; }
.cart-price-status { color:var(--cart-muted); font-size:.71rem; line-height:1.6; margin:0; }
.cart-price-status.is-error { color:#ffb0b7; }
.cart-retry { border:0; background:transparent; color:#8de3f9; font-size:.74rem; text-align:left; cursor:pointer; }
.cart-notice { display:flex; gap:10px; padding:13px 17px; margin-bottom:15px; border:1px solid rgba(92,225,253,.16); border-radius:12px; background:rgba(92,225,253,.05); font-size:.79rem; color:#b0e6f3; line-height:1.5; }
.cart-notice i { margin-top:3px; }
.cart-notice.is-error { border-color:rgba(255,140,154,.25); background:rgba(255,140,154,.07); color:#ffc4cc; }
.cart-body .cart-stock { width:100%; margin-top:22px; padding:22px; background:#101720; }
.cart-body .cart-stock-head { gap:17px; }
.cart-body .cart-stock-grid { grid-template-columns:repeat(5,minmax(0,1fr)); max-height:550px; grid-auto-rows:max-content; gap:10px; overflow-y:auto; overflow-x:hidden; align-items:start; align-content:start; }
.cart-body .cart-stock-card { min-height:92px; height:auto; padding:11px 42px 10px 10px; margin:0; background:#141b25; border:1px solid rgba(255,255,255,.06); border-radius:13px; }
.cart-body .cart-stock-card img { object-fit:contain; }
.cart-body .cart-stock-name { white-space:normal; display:block; line-height:1.4; overflow:visible; font-size:.74rem; overflow-wrap:anywhere; }
.cart-body .cart-stock-price { font-size:.78rem; color:#65d8f7; font-weight:800; }
.cart-body .cart-stock-grid.is-combos { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cart-body .cart-stock-card.is-combo { min-height:124px; }
.cart-body .cart-stock-card .buy-btn-cart { width:32px; height:34px; bottom:11px; border-radius:9px; }
.cart-combo-details { display:block; background:none; border:0; padding:6px 0 0; color:#a6e7f5; font-size:.69rem; line-height:1.5; font-weight:650; cursor:pointer; }
.cart-body .cart-info .cart-combo-details { margin-inline:auto; }
.cart-body .is-compact .cart-info .cart-combo-details { margin-inline:0; }
.cart-catalog-count { margin:14px 0 -4px; color:var(--cart-muted); font-size:.73rem; }
.cart-body .cs { min-width:0; }
.cart-body .cs__dropdown { z-index:30; }
.cart-body .cs__option:focus-visible { outline:2px solid #64ddf9; outline-offset:-3px; background:rgba(92,225,253,.1); }
.cart-body .back-to-top { bottom:24px; }
.cart-mobile-checkout { display:none; }
/* Modal nativo: foco, Escape e fundo inerte, sem HTML vindo do texto importado. */
body.cart-dialog-open { overflow:hidden; }
.cart-dialog { width:min(620px,calc(100% - 28px)); max-width:none; max-height:90vh; max-height:90dvh; margin:auto; padding:0; color:#f0f4f8; background:#161d27; border:1px solid rgba(255,255,255,.13); border-radius:22px; box-shadow:0 26px 100px rgba(0,0,0,.65); overflow:hidden; font-family:Inter,sans-serif; }
.cart-dialog[open] { display:flex; flex-direction:column; }
.cart-dialog::backdrop { background:rgba(0,0,0,.73); }
.cart-dialog-head { display:flex; justify-content:space-between; align-items:flex-start; padding:23px 24px 18px; gap:14px; border-bottom:1px solid rgba(255,255,255,.08); flex:0 0 auto; }
.cart-dialog-head h2 { margin:0; font-size:1.22rem; line-height:1.35; overflow-wrap:anywhere; }
.cart-dialog-eyebrow { color:#85dff4; font-size:.68rem; font-weight:750; margin:0 0 8px; }
.cart-dialog-head > button { width:34px; height:34px; flex:0 0 34px; border:1px solid rgba(255,255,255,.1); border-radius:10px; background:rgba(255,255,255,.04); color:#bac6d1; cursor:pointer; }
.cart-dialog-body { padding:20px 24px; min-height:0; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#397582 transparent; }
.cart-dialog label { display:block; font-size:.78rem; color:#d1dce6; font-weight:650; margin-bottom:9px; }
.cart-dialog textarea { display:block; width:100%; min-height:135px; max-height:230px; padding:13px; resize:vertical; border:1px solid rgba(255,255,255,.13); border-radius:12px; outline:none; color:#eef4fb; background:#0e141b; font:400 .82rem/1.65 Inter,sans-serif; }
.cart-dialog textarea:focus { border-color:#56cfe9; }
.cart-dialog textarea::placeholder { color:#647286; }
.cart-dialog-hint { color:#9fabbc; font-size:.74rem; line-height:1.65; margin:10px 0; }
.cart-dialog-hint i { color:#65daef; }
.cart-import-mode { display:flex; flex-wrap:wrap; gap:12px 22px; border:0; padding:0; margin:18px 0; }
.cart-import-mode legend { font-size:.76rem; color:#aab6c3; margin-bottom:10px; }
.cart-import-mode label { display:flex; align-items:center; gap:7px; font-size:.75rem; margin:0; }
.cart-import-mode input { accent-color:#5cdef6; width:17px; height:17px; margin:0; }
.cart-dialog-secondary,.cart-dialog-danger { display:inline-flex; justify-content:center; align-items:center; gap:8px; min-height:40px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.035); color:#ced9e4; border-radius:10px; padding:10px 14px; font:700 .76rem Inter,sans-serif; cursor:pointer; }
.cart-dialog-danger { background:rgba(255,123,146,.12); color:#ffb6c1; border-color:rgba(255,123,146,.25); }
.cart-import-status { white-space:pre-line; color:#a9e2f0; font-size:.75rem; line-height:1.6; padding:11px 13px; border:1px solid rgba(92,225,253,.16); border-radius:10px; background:rgba(92,225,253,.045); margin:14px 0; }
.cart-import-status.is-error { color:#ffc0c9; background:rgba(255,130,150,.07); border-color:rgba(255,130,150,.22); }
.cart-import-preview { border:1px solid rgba(255,255,255,.1); border-radius:13px; overflow:hidden; margin-top:14px; }
.cart-review-head { display:grid; gap:5px; padding:14px 16px; border-bottom:1px solid rgba(255,255,255,.08); }
.cart-review-head strong { font-size:.82rem; }.cart-review-head span { color:#9daabc; font-size:.68rem; }
.cart-review-list { max-height:235px; min-height:0; overflow-y:auto; overscroll-behavior:contain; }
.cart-review-row { display:flex; justify-content:space-between; gap:16px; padding:12px 16px; font-size:.79rem; color:#b7c1ce; border-bottom:1px solid rgba(255,255,255,.055); }
.cart-review-row:last-child { border-bottom:0; }.cart-review-row span { min-width:0; overflow-wrap:anywhere; }.cart-review-row strong { color:#e6edf5; flex-shrink:0; white-space:nowrap; }
.cart-review-total { display:flex; justify-content:space-between; gap:12px; padding:14px 16px; border-top:1px solid rgba(255,255,255,.1); font-size:.79rem; }.cart-review-total strong { color:#63dcf4; font-size:1rem; }
.cart-dialog-footer { display:flex; align-items:center; justify-content:space-between; flex:0 0 auto; gap:12px; padding:18px 24px; border-top:1px solid rgba(255,255,255,.09); background:#131b25; }
.cart-dialog-footer .cart-btn { min-height:44px; width:auto; flex:1; padding:11px 16px; border-radius:11px; display:flex; align-items:center; justify-content:center; gap:8px; font:800 .79rem Inter,sans-serif; cursor:pointer; }
.cart-combo-dialog .cart-review-list { max-height:52vh; }
.cart-combo-total { display:grid; gap:4px; min-width:110px; }.cart-combo-total small { color:#a1aebf; font-size:.68rem; }.cart-combo-total strong { color:#66dbf9; font-size:1.3rem; }
.cart-clear-dialog { max-width:450px; }.cart-clear-dialog .cart-dialog-body p { color:#a9b5c4; font-size:.84rem; line-height:1.7; margin:0; }
.cart-toast { position:fixed; z-index:5000; left:50%; bottom:24px; transform:translateX(-50%); display:flex; align-items:center; gap:18px; width:max-content; max-width:calc(100vw - 32px); padding:13px 18px; background:#20303c; color:#e4f1f6; border:1px solid rgba(110,209,236,.25); border-radius:12px; box-shadow:0 14px 35px rgba(0,0,0,.4); font:500 .8rem/1.5 Inter,sans-serif; }
.cart-toast button { border:0; padding:8px; background:none; color:#89e6fa; font:800 .8rem Inter,sans-serif; cursor:pointer; flex-shrink:0; }
.cart-body :focus-visible,.cart-dialog :focus-visible { outline:2px solid #67dff7; outline-offset:3px; }
@media(min-width:1151px) and (max-width:1279px) { .cart-body .cart-items:not(.is-compact) { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media(max-width:1150px) { .cart-body .cart-items:not(.is-compact) { grid-template-columns:repeat(4,minmax(0,1fr)); } .cart-body .cart-layout { grid-template-columns:minmax(0,1fr) 280px; gap:14px; }.cart-body .cart-items { gap:8px; padding:10px; }.cart-body .cart-item { padding:10px 9px; }.cart-body .cart-stock-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }.cart-body .cart-items.is-compact .cart-item { grid-template-columns:38px minmax(0,1fr) 180px 26px; gap:8px; }.cart-body .cart-items.is-compact .cart-right { gap:8px; }.cart-body .cart-items.is-compact .cart-qty-wrap { width:100px; flex-basis:100px; } }
@media(max-width:1000px) { .cart-body .cart-layout { grid-template-columns:minmax(0,1fr); }.cart-body .cart-checkout-card { position:static; }.cart-body .cart-checkout-card .cart-summary { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px 20px; }.cart-body .cart-total { grid-row:span 3; }.cart-body .cart-checkout-footer { flex-direction:row; align-items:center; }.cart-body .cart-checkout-footer p { flex:1; }.cart-body .cart-stock-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:640px) {
 .cart-body .cart-page { width:calc(100% - 24px); padding-top:calc(var(--nav-height) + 18px); padding-bottom:32px; }
 .cart-body .cart-hero { flex-direction:column; align-items:stretch; gap:14px; padding:18px; }.cart-body .cart-title h1 { font-size:1.75rem; }.cart-body .cart-title p { font-size:.8rem; }
 .cart-import-open { width:100%; }.cart-body .cart-panel-header { padding:15px; }.cart-view-toggle button span { display:none; }.cart-view-toggle button { padding:8px 11px; }
 .cart-body .cart-items:not(.is-compact) { grid-template-columns:repeat(2,minmax(0,1fr)); } .cart-body .cart-items { max-height:60vh; max-height:60svh; gap:10px; padding:11px; }.cart-body .cart-item { padding:12px 11px; gap:8px; }.cart-body .cart-thumb { width:54px; height:54px; flex-basis:54px; }.cart-body .cart-info h3 { font-size:.77rem; }
 .cart-body .cart-panel-footer { padding:10px 14px; }.cart-body .cart-panel-footer a,.cart-body .cart-panel-footer button { font-size:.69rem; }
 .cart-body .cart-items.is-compact .cart-item { grid-template-columns:36px minmax(0,1fr) 24px; gap:9px; padding:12px; }.cart-body .cart-items.is-compact .cart-thumb { width:36px; height:36px; flex-basis:auto; }.cart-body .cart-items.is-compact .cart-info { grid-column:2; }.cart-body .cart-items.is-compact .cart-right { grid-column:2 / -1; grid-row:2; }.cart-body .cart-items.is-compact .cart-qty-wrap { width:112px; flex-basis:112px; }.cart-body .cart-items.is-compact .cart-price-block { align-items:flex-end; }.cart-body .cart-items.is-compact .cart-remove { grid-column:3; grid-row:1; }
 .cart-body .cart-checkout-card { padding:18px; }.cart-body .cart-checkout-head { min-height:0; flex-wrap:wrap; }.cart-body .cart-checkout-card .cart-summary { display:flex; gap:12px; }.cart-body .cart-total { flex-direction:row; align-items:center; padding:14px; }.cart-body .cart-total strong { font-size:1.45rem; }.cart-body .cart-total small { font-size:.67rem; }.cart-body .cart-checkout-footer { flex-direction:column; align-items:stretch; }.cart-body #openSiteChatBtn { display:none; }
 .cart-body.has-cart-bar { padding-bottom:calc(88px + env(safe-area-inset-bottom,0px)); }
 .cart-mobile-checkout:not([hidden]) { display:flex; align-items:center; justify-content:space-between; gap:14px; position:fixed; left:0; right:0; bottom:0; z-index:1080; min-height:78px; padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px)); border-top:1px solid rgba(92,225,253,.18); background:#101821; box-shadow:0 -12px 30px rgba(0,0,0,.24); }
 .cart-mobile-checkout > div { display:grid; gap:3px; flex-shrink:0; }.cart-mobile-checkout small { font-size:.65rem; color:#9caabd; }.cart-mobile-checkout strong { color:#66def6; font-size:1.18rem; }.cart-mobile-checkout .cart-btn { width:auto; flex:1; max-width:235px; font-size:.76rem; min-height:46px; }
 .cart-body.has-cart-bar .back-to-top { bottom:calc(96px + env(safe-area-inset-bottom,0px)); }.cart-body.has-cart-bar .cart-toast { bottom:calc(96px + env(safe-area-inset-bottom,0px)); }
 .cart-body .cart-stock { padding:16px; margin-top:18px; }.cart-body .cart-stock-grid,.cart-body .cart-stock-grid.is-combos { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:600px; }.cart-body .cart-stock-card { grid-template-columns:1fr; padding:11px; align-items:start; align-content:start; gap:8px; text-align:center; min-height:0; }.cart-body .cart-stock-card.is-combo { min-height:0; }.cart-body .cart-stock-card img { width:62px; height:62px; margin:0 auto; }.cart-body .cart-stock-card .buy-btn-cart { position:static; width:100%; height:36px; margin:0; }.cart-body .cart-stock-name { min-height:2.8em; font-size:.74rem; }.cart-body .cart-stock-hint { font-size:.73rem; line-height:1.6; }.cart-body .cart-stock-card .cart-combo-details { margin-inline:auto; }
 .cart-body .cart-stock-filters { grid-template-columns:1fr 1fr; gap:8px; }.cart-body .cart-stock-search-wrap { grid-column:1 / -1; }.cart-body .cs__trigger { padding-inline:12px; font-size:.78rem; }
 .cart-dialog { border-radius:18px; }.cart-dialog-head { padding:18px; }.cart-dialog-head h2 { font-size:1.12rem; }.cart-dialog-body { padding:18px; }.cart-dialog textarea { font-size:16px; }.cart-dialog-footer { padding:15px 18px; flex-wrap:wrap; }.cart-dialog-footer .cart-btn { font-size:.75rem; padding:11px 10px; }.cart-import-mode { flex-direction:column; gap:12px; }.cart-review-row { font-size:.73rem; padding:12px; }.cart-review-head { padding:12px; }.cart-review-total { padding:12px; }.cart-combo-total { min-width:90px; }.cart-toast { font-size:.75rem; }
}
@media(max-width:360px) { .cart-body .cart-items { gap:8px; padding:9px; }.cart-body .cart-item { padding:12px 9px; }.cart-body .cart-price-block strong { font-size:.82rem; }.cart-body .cart-info h3 { font-size:.74rem; }.cart-body .cart-qty-wrap { grid-template-columns:30px minmax(0,1fr) 30px; }.cart-mobile-checkout { gap:8px!important; padding-inline:12px!important; }.cart-mobile-checkout .cart-btn { font-size:.71rem; padding-inline:10px; }.cart-body .cart-total { flex-wrap:wrap; }.cart-dialog-footer .cart-btn { flex-basis:140px; } }
@media(prefers-reduced-motion:reduce) { .cart-body *,.cart-dialog * { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }

@media(max-width:640px) { .cart-orders-link { width:100%; } .cart-other-channels { grid-template-columns:1fr 1fr; } .cart-dialog-footer { flex-direction:column; } .cart-dialog-footer .cart-btn,.cart-dialog-footer .cart-dialog-danger,.cart-dialog-footer .cart-dialog-secondary { width:100%; } }

/* V122 — foco único e arredondado no grupo, sem outline cortado de style.css.
   :focus também é necessário: clicar e refocar via JS não ativa sempre :focus-visible. */
.cart-body .cart-qty-btn:focus,
.cart-body .cart-qty-btn:focus-visible,
.cart-body .cart-qty:focus,
.cart-body .cart-qty:focus-visible { outline:none; outline-offset:0; box-shadow:none; }
.cart-body .cart-qty-btn:focus-visible { background:rgba(92,225,253,.16); }
.cart-body .cart-qty-btn.cart-qty-minus { border-radius:9px 0 0 9px; }
.cart-body .cart-qty-btn.cart-qty-plus { border-radius:0 9px 9px 0; }

/* O resumo determina a altura compartilhada no desktop, não a quantidade de sets.
   A contenção só afeta a contribuição intrínseca de tamanho do painel esquerdo.
   O grid externo estica ambos igualmente; a lista interna recebe o espaço restante.
   Não há JS de medição, cards esticados nem altura fixa que corte o resumo. */
@media(min-width:1001px) {
 .cart-body .cart-panel { contain:size; min-height:520px; align-self:stretch; }
 .cart-body .cart-checkout-card { row-gap:16px; }
 .cart-body .cart-summary { margin-top:0; }
 .cart-body .cart-items { min-height:0; max-height:none; }
 .cart-body .cart-items.is-empty .cart-empty { min-height:0; }
 .cart-body .cart-checkout-footer { margin-top:auto; }
}

/* V123 — alinha o texto ao centro do ícone também em telas estreitas. */
@media (max-width: 1000px) {
  .cart-body .cart-checkout-heading { display:flex; align-items:center; }
  .cart-body .cart-checkout-heading h2 { align-self:center; margin:0; }
}

.cart-body #cartStockTitle { scroll-margin-top:calc(var(--nav-height) + 20px); }