.cart-btn{position:relative;background:none;border:0;color:var(--ink);cursor:pointer;padding:6px;margin-left:24px;display:flex;align-items:center}
.cart-count{position:absolute;top:-2px;right:-4px;background:var(--accent);color:#fff;font-size:.68rem;font-weight:600;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}
.cart-count[hidden]{display:none}
header .wrap{align-items:center}
.cart-overlay{position:fixed;inset:0;background:rgba(23,20,15,.45);opacity:0;pointer-events:none;transition:opacity .25s;z-index:200}
.cart-overlay.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:#fff;z-index:210;transform:translateX(100%);transition:transform .3s;display:flex;flex-direction:column;box-shadow:-8px 0 30px rgba(0,0,0,.12)}
.cart-drawer.open{transform:none}
.cart-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}
.cart-head h2{font-size:1.2rem}
.cart-close{background:none;border:0;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--ink)}
.cart-items{flex:1;overflow:auto;padding:8px 24px}
.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.cart-item img{width:72px;height:72px;object-fit:cover;border-radius:3px;background:var(--bg-alt)}
.ci-info{display:flex;flex-direction:column;gap:2px;font-size:.92rem}
.ci-info a{font-family:'Fraunces',serif;font-weight:600}
.ci-info span{color:var(--muted);font-size:.82rem}
.ci-qty{display:inline-flex;align-items:center;gap:10px;margin-top:8px}
.ci-qty button{width:26px;height:26px;border:1px solid var(--line);background:#fff;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1}
.ci-qty b{font-weight:500;min-width:16px;text-align:center}
.ci-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;font-size:.92rem}
.ci-rm{background:none;border:0;color:var(--muted);font-size:.78rem;text-decoration:underline;cursor:pointer;font-family:inherit}
.cart-foot{padding:20px 24px 24px;border-top:1px solid var(--line)}
.cart-total{display:flex;justify-content:space-between;font-size:1.1rem;margin-bottom:6px}
.cart-total strong{font-family:'Fraunces',serif;color:var(--accent)}
.cart-note{font-size:.8rem;color:var(--muted);margin-bottom:14px}
.cart-err{font-size:.85rem;color:#B3261E;margin-bottom:12px}
.cart-err[hidden]{display:none}
.cart-checkout{width:100%;padding:14px;background:var(--ink);color:#fff;border:0;border-radius:999px;font-size:.95rem;font-weight:500;cursor:pointer;font-family:inherit}
.cart-checkout:disabled{opacity:.6;cursor:wait}
.cart-empty{padding:48px 24px;text-align:center;color:var(--muted)}
.cart-link{display:inline-block;margin-top:16px;text-decoration:underline;color:var(--ink)}
@media(max-width:960px){.cart-btn{margin-left:16px}}
header nav{margin-left:auto}

.cart-frete{margin-bottom:14px}
.cart-frete>label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}
.cep-row{display:flex;gap:8px}
.cep-row input{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:999px;font:inherit;font-size:.95rem;min-width:0}
.cep-btn{padding:10px 18px;border:1px solid var(--ink);background:none;border-radius:999px;cursor:pointer;font:inherit;font-size:.85rem}
.cep-btn:hover{background:var(--ink);color:#fff}
.cep-msg{font-size:.82rem;color:var(--muted);margin-top:8px}
.cep-msg.err{color:#B3261E}
.cep-opts{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.cep-opt{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:.9rem}
.cep-opt span{flex:1;display:flex;flex-direction:column}
.cep-opt small{color:var(--muted);font-size:.78rem}
.cep-opt input{accent-color:var(--ink)}
.cart-sub{display:flex;justify-content:space-between;font-size:.9rem;color:var(--muted);margin-bottom:4px}
.cart-checkout:disabled{opacity:.5;cursor:not-allowed}

.cart-cupom{display:flex;gap:8px;align-items:center;margin-bottom:10px;font-size:.88rem}
.cart-cupom input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:999px;font:inherit;font-size:.9rem;text-transform:uppercase}
.cart-cupom span{flex:1}
.cupom-btn,.cupom-rm{padding:9px 16px;border:1px solid var(--ink);background:none;border-radius:999px;cursor:pointer;font:inherit;font-size:.82rem}
.cupom-btn:hover{background:var(--ink);color:#fff}
.cupom-rm{border:0;text-decoration:underline;color:var(--muted);padding:0}
