
/* ============================================================
   25. PÁGINA CARRINHO
   ============================================================ */
.aly-cart-intro{ padding:56px 0 8px; }
@media(max-width:1024px){ .aly-cart-intro{ padding:32px var(--pad-x) !important; } }
.aly-cart-intro h1{ font-family:var(--ff-display); font-weight:400; font-size:40px; }
.aly-cart-intro p{ font-size:14px; color:var(--ink-450); margin-top:8px; }
@media(max-width:720px){ .aly-cart-intro h1{ font-size:28px; } }

.aly-cart-page{
  display:grid; grid-template-columns:1fr 380px; gap:56px;
  padding:32px 0 var(--sec-pad); align-items:start;
}
@media(max-width:1024px){
  .aly-cart-page{ grid-template-columns:1fr; gap:28px; padding:0px var(--pad-x) 48px var(--pad-x) !important; }
}

/* ---------- upsell: adicione e ganhe frete grátis ---------- */
.aly-cart-upsell{ background:var(--gold-50); border-radius:var(--radius-l); padding:24px; margin-bottom:42px; }
.aly-cart-upsell__head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; flex-wrap:wrap; }
.aly-cart-upsell__title{ display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:var(--gold-800); }
.aly-cart-upsell__title .aly-ico{ width:16px; height:16px; }
.aly-cart-upsell__remain{ font-size:12px; color:var(--gold-800); }
.aly-cart-upsell__remain b{ font-weight:600; }

.aly-cart-upsell__list{ display:flex; flex-direction:column; }
.aly-cart-upsell__row{
  display:flex; align-items:center; gap:14px; padding:14px 0;
  border-bottom:1px solid rgba(21,21,21,.08);
}
.aly-cart-upsell__row:last-child{ border-bottom:none; padding-bottom:0; }
.aly-cart-upsell__row:first-child{ padding-top:8px; }
.aly-cart-upsell__thumb{
  width:52px; height:52px; border-radius:var(--radius-s); flex-shrink:0;
  background:var(--white); border:1px dashed var(--gold-100);
  display:flex; align-items:center; justify-content:center; color:var(--gold-600);
}
.aly-cart-upsell__info{ flex:1; min-width:0; }
.aly-cart-upsell__name{ font-size:14px; font-weight:600; color:var(--ink); line-height:1.3; }
.aly-cart-upsell__price{ font-size:13px; color:var(--ink-450); margin-top:2px; }
.aly-cart-upsell__add{
  flex-shrink:0; display:flex; align-items:center; gap:6px;
  padding:10px 16px; border-radius:var(--radius-full);
  background:var(--ink); color:var(--white); font-size:12px; font-weight:600;
  transition:background var(--dur-hover) var(--ease);
}
.aly-cart-upsell__add:hover{ background:var(--gold-800); }
@media(max-width:540px){
  .aly-cart-upsell__add span{ display:none; } /* só o ícone de "+" no mobile, economiza espaço */
  .aly-cart-upsell__add{ padding:6px; }
  .aly-cart-upsell__add .aly-ico{ display:block !important; }
}

/* ---------- lista de itens ---------- */
.aly-cart-list{ display:flex; flex-direction:column; }
.aly-cart-row{
  display:grid; grid-template-columns:96px 1fr auto; gap:20px;
  padding:22px 0; border-bottom:1px solid var(--ink-100); align-items:center;
}
.aly-cart-row:first-child{ padding-top:0; }
.aly-cart-row:last-child{ border-bottom:none; }
.aly-cart-row__thumb{
  width:96px; height:96px; border-radius:var(--radius-m); flex-shrink:0;
  background:var(--gold-50); border:1px dashed var(--gold-100);
  display:flex; align-items:center; justify-content:center; color:var(--gold-600);
}
.aly-cart-row__info{ min-width:0; }
.aly-cart-row__line{ font-size:10px; font-weight:600; color:var(--gold-600); text-transform:uppercase; letter-spacing:.04em; }
.aly-cart-row__name{ font-size:15px; font-weight:600; margin-top:4px; }
.aly-cart-row__actions{ display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; gap:16px; height:90%; }
.aly-cart-row__price{ font-size:16px; font-weight:600; white-space:nowrap; }
.aly-cart-row__remove{
  font-size:12px; color:var(--ink-450); display:flex; align-items:center; gap:6px;
  transition:color var(--dur-hover) var(--ease);
}
.aly-cart-row__remove .aly-ico{ width:14px; height:14px; padding-bottom:3px; }
.aly-cart-row__remove:hover{ color:#C24B3F; }
@media(max-width:540px){
  .aly-cart-row{ grid-template-columns:72px 1fr; }
  .aly-cart-row__thumb{ width:72px; height:72px; }
  .aly-cart-row__actions{ grid-column:1/-1; flex-direction:row; align-items:center; justify-content:space-between; height:auto; margin-top:0px; }
}

/* ---------- resumo do pedido ---------- */
.aly-cart-summary{
  position:sticky; top:calc(var(--sticky-h, 160px) + 24px);
  background:var(--surface); border-radius:var(--radius-l); padding:28px;
}
.aly-cart-summary h3{ font-family:var(--ff-body); font-size:16px; font-weight:600; margin-bottom:20px; }
.aly-cart-summary__row{ display:flex; align-items:center; justify-content:space-between; font-size:14px; color:var(--ink-700); padding:7px 0; }
.aly-cart-summary__row.is-total{
  font-size:18px; font-weight:600; color:var(--ink);
  border-top:1px solid var(--ink-100); margin-top:8px; padding-top:16px;
}
@media(max-width:720px){ .aly-cart-summary__row.is-total{ padding-top:20px !important; } }
.aly-cart-summary__free{ color:#3E7A52; font-weight:600; }
.aly-cart-summary__cep{ display:flex; gap:8px; margin:16px 0 16px; }
.aly-cart-summary__cep input{
  flex:1; border:1.5px solid var(--ink-200); border-radius:var(--radius-full);
  padding:10px 16px; font-size:13px; color:var(--ink);
  transition:border-color var(--dur-hover) var(--ease);
}
.aly-cart-summary__cep input:focus{ border-color:var(--gold-400); outline:none; }
.aly-cart-summary__cep button{
  padding:10px 18px; border-radius:var(--radius-full);
  background:var(--ink); color:var(--white); font-size:13px; font-weight:600;
  transition:background var(--dur-hover) var(--ease); flex-shrink:0;
}
.aly-cart-summary__cep button:hover{ background:var(--gold-800); }
.aly-cart-summary__checkout{
  width:100%; height:56px; border-radius:var(--radius-full);
  background:var(--ink); color:var(--white); font-size:15px; font-weight:600;
  display:flex; align-items:center; justify-content:center; gap:10px;
  margin-top:14px; transition:background var(--dur-hover) var(--ease);
}
.aly-cart-summary__checkout:hover{ background:var(--gold-800); }
@media(max-width:720px){ .aly-cart-summary__checkout{ margin-top:6px; } }
.aly-cart-summary__trust{ display:flex; flex-direction:column; gap:10px; margin-top:20px; }
.aly-cart-summary__trust span{ display:flex; align-items:center; gap:8px; font-size:12px; color:var(--ink-700); }
.aly-cart-summary__trust .aly-ico{ width:15px; height:15px; color:var(--gold-600); flex-shrink:0; }

/* ---------- carrinho vazio ---------- */
.aly-cart-empty{ display:none; flex-direction:column; align-items:center; text-align:center; padding:100px 24px; }
.aly-cart-empty.is-visible{ display:flex; }
.aly-cart-empty .aly-ico{ width:44px; height:44px; color:var(--ink-450); margin-bottom:18px; }
.aly-cart-empty h2{ font-family:var(--ff-display); font-weight:400; font-size:28px; }
.aly-cart-empty p{ color:var(--ink-450); margin-top:10px; max-width:360px; }
.aly-cart-empty a{
  margin-top:24px; padding:14px 28px; border-radius:var(--radius-full);
  background:var(--ink); color:var(--white); font-size:14px; font-weight:600;
  transition:background var(--dur-hover) var(--ease);
}
.aly-cart-empty a:hover{ background:var(--gold-800); }
