/* Carrinho (/carrinho/). Prévia aprovada: artes/2026-09-29-carrinho/carrinho.css (29/09/2026).
   Carrega depois de checkout.css (opções de entrega, barra do frete grátis, resumo) e pdp.css (bloco de frete, quantidade). */
main.carrinho{max-width:var(--largura-loja);margin-inline:auto;padding:28px clamp(16px,3vw,32px) 72px}
main.carrinho .num{white-space:nowrap}
main.carrinho [id^="t-"]{scroll-margin-top:150px}
.car-topo{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}
.car-topo h1{font-size:1.75rem;font-weight:900;letter-spacing:-.01em}
.car-topo small{font-size:1rem;font-weight:500;color:var(--apoio)}

/* Duas colunas: itens, frete e sugestões à esquerda; resumo fixo à direita */
.car-grade{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"itens resumo" "frete resumo" "junto resumo";gap:24px 40px;align-items:start}
.car-itens{grid-area:itens;display:grid;gap:12px}
.car-grade>.frete-p{grid-area:frete;margin-top:0}
.junto-car{grid-area:junto}
.resumo-car{grid-area:resumo;position:sticky;top:146px}

/* Lista de itens */
.lista-car{background:#fff;border-radius:var(--raio);box-shadow:var(--sombra-p);padding:2px 20px;list-style:none}
.lc{display:grid;grid-template-columns:88px minmax(0,1fr) auto 112px;grid-template-areas:"f info q sub";gap:6px 20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--linha)}
.lc:last-child{border-bottom:0}
.lc-f{grid-area:f;width:88px;height:88px;object-fit:contain;border:1px solid var(--linha);border-radius:var(--raio-in);background:#fff}
.lc-info{grid-area:info;display:grid;gap:4px;justify-items:start;min-width:0}
.lc-nome{color:var(--tinta);font-weight:700;line-height:1.3;text-decoration:none}
.lc-nome:hover{color:var(--terra-dk);text-decoration:underline;text-underline-offset:3px}
.tag-frio{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:700;color:var(--frio);background:var(--frio-bg);padding:2px 9px;border-radius:999px}
.tag-frio svg{width:12px;height:12px}
.lc-un{font-size:.875rem;color:var(--apoio)}
.lc-un s{margin-right:6px}
.lc-rem{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0;border:0;background:none;font:inherit;font-size:.875rem;font-weight:600;color:var(--apoio);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.lc-rem:hover{color:var(--erro)}
.lc-rem svg{width:16px;height:16px}
.lc-q{grid-area:q;height:46px;justify-self:start}
.lc-q button{width:44px;height:44px;font-size:1.25rem}
.lc-q input{width:40px;height:44px;font-size:1rem}
.lc-sub{grid-area:sub;text-align:right;font-weight:900;font-size:1.0625rem}
.lc .erro-p{grid-column:2/-1;margin-top:4px}
.lc .erro-p svg{flex:none}

/* Frete (bloco da PDP) com as opções do checkout */
.frete-p .endereco{margin-top:14px}
.frete-p .sub{margin-top:18px}
.aviso .acoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.aviso .acoes .btn-sec{min-height:44px;padding:10px 16px;font-size:.9375rem;border-color:var(--aviso-tx);color:var(--aviso-tx)}
.aviso .acoes .btn-sec.cheio{background:var(--aviso-tx);color:#fff}
.aviso p+p{margin-top:4px}
.lista-ref{margin:8px 0 0 18px;font-weight:700}

/* Resumo */
.resumo-car{background:#fff;border-radius:var(--raio);box-shadow:var(--sombra-m);padding:24px}
.resumo-car h2{font-size:1.1875rem;font-weight:700;margin-bottom:14px}
.resumo-car .gratis{margin-top:0}
.gratis.ok{background:#eef7f1;border-color:#cfe6d8}
.gratis.ok p b{color:var(--ok)}
.gratis.ok .barra i{background:var(--ok)}
.resumo-car .btn{text-decoration:none}
.resumo-car .btn-sec{width:100%;margin-top:10px}
.pix-linha{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:14px;font-size:.875rem;color:var(--apoio)}
.pix-linha svg{width:18px;height:18px;color:var(--terra-dk)}
.contas .falta{color:var(--apoio);font-weight:500}

/* Sugestões: cartão da categoria, sem a linha do cartão de crédito */
.junto-car h2{font-size:1.375rem;font-weight:900;letter-spacing:-.01em;margin-bottom:14px}
.junto-car .grade-cat{grid-template-columns:repeat(4,minmax(0,1fr))}
.junto-car .b-longo{display:none}
.junto-car .b-curto{display:inline}

/* Carrinho vazio */
.vazio{background:#fff;border-radius:var(--raio);box-shadow:var(--sombra-p);padding:48px 24px;display:grid;justify-items:center;text-align:center;gap:10px;margin-bottom:40px}
.vazio svg.grande{width:56px;height:56px;stroke:var(--terra-dk);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;margin-bottom:6px}
.vazio h2{font-size:1.5rem;font-weight:900}
.vazio p{color:var(--apoio);font-size:1.0625rem}
.acoes-v{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:12px}
.acoes-v .btn{width:auto;text-decoration:none;padding-inline:28px}

/* Celular: uma coluna, resumo depois do frete e botão fixo embaixo (o .barra-fim do checkout) */
@media (max-width:960px){
  .car-grade{grid-template-columns:minmax(0,1fr);grid-template-areas:"itens" "frete" "resumo" "junto";gap:20px}
  .resumo-car{position:static}
  main.carrinho{padding-bottom:120px}
  .barra-fim .btn{text-decoration:none}
}
@media (max-width:640px){
  main.carrinho{padding-top:20px}
  .car-topo h1{font-size:1.5rem}
  .lista-car{padding:0 14px}
  .lc{grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"f info info" "f q sub";gap:10px 14px;align-items:start;padding:16px 0}
  .lc-f{width:72px;height:72px}
  .lc-sub{align-self:center}
  .lc-rem{min-height:44px;margin-block:-6px}
  .lc .erro-p{grid-column:1/-1}
  .junto-car .grade-cat{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .aviso .acoes{flex-direction:column}
  .aviso .acoes>*{justify-content:center;width:100%}
  .resumo-car{padding:20px}
  .vazio{padding:36px 18px}
  .acoes-v{flex-direction:column;width:100%}
  .acoes-v>*{width:100%}
}

/* Grade das sugestões (a da categoria) */
.grade-cat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.grade-cat .card-p{display:flex;flex-direction:column}
.grade-cat .card-p .btn-sec{margin-top:auto}
.grade-cat .card-p .pr{margin-bottom:8px}
.junto-car{margin-top:8px}
/* Montagem */
.an-car-msg:empty,.an-car-cep-msg:empty{display:none}
.an-car-msg{margin-bottom:0}
.an-car-msg a,.an-car-msg button.an-desfazer{color:var(--terra-dk);font-weight:700;background:none;border:0;padding:0;font:inherit;text-decoration:underline;cursor:pointer;min-height:44px}
.an-car-cep-msg{margin-top:10px}
.frete-p .endereco{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--raio-in);background:#f3faf6}
.frete-p .endereco p{flex:1;display:grid;font-size:.9375rem}
.frete-p .endereco svg{color:var(--ok)}
.frete-p .endereco button{background:none;border:0;font:inherit;font-weight:700;color:var(--terra-dk);text-decoration:underline;cursor:pointer;min-height:44px}
.an-car-frete .an-frete{margin-top:0}
main.carrinho[aria-busy=true] .car-grade{opacity:.6;transition:opacity .15s}
.lc-rem{text-decoration:underline}

/* Celular estreito: quantidade embaixo da foto e subtotal à direita, sem encostar */
@media (max-width:400px){.lc{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"f info" "q sub"}.lc-sub{justify-self:end}}
.car-topo+.an-car-msg{margin:0 0 16px}
