/* Carrinho clássico (loja v3; kit 4.5). Só tokens --ds-*. Carregado só em is_cart(). */

.woocommerce-cart .hentry{margin-bottom:0}

/* ---- Grade da página ---- */
.lm-carrinho{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 400px;column-gap:var(--ds-space-8);row-gap:var(--ds-space-3);align-items:start}
.lm-carrinho::before,.lm-carrinho::after,.woocommerce-cart-form::before,.woocommerce-cart-form::after{content:none;display:none}
/* O formulário some da grade (display:contents) para o cabeçalho e os itens entrarem nela. */
.woocommerce-cart-form{display:contents}
.lm-cart__caixa{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--ds-space-2) var(--ds-space-6);margin-bottom:var(--ds-space-3)}
.lm-cart__titulo{margin:0 0 6px;line-height:1.1}
.lm-cart__contagem{max-width:560px;margin:0;color:var(--ds-color-text-muted)}
.lm-cart__voltar{display:inline-flex;align-items:center;gap:6px;min-height:var(--ds-target);font-weight:var(--ds-weight-bold)}
.lm-itens{grid-column:1;grid-row:2;min-width:0;padding:4px var(--ds-space-6);border:var(--ds-border-width) solid var(--ds-color-line);border-radius:var(--ds-radius-box);background:var(--ds-color-surface)}
.woocommerce-cart .cart-collaterals{grid-column:2;grid-row:2 / span 3;position:sticky;top:var(--ds-space-4);width:auto;float:none;margin:0}
.woocommerce-cart .cart-collaterals::before,.woocommerce-cart .cart-collaterals::after{content:none;display:none}
.lm-cart__atualizar{grid-column:1;justify-self:start}
/* Com JavaScript o botão some (a quantidade atualiza sozinha); sem ele, fica à vista. */
body.woocommerce-js .lm-cart__atualizar{position:absolute;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lm-carrinho .blockUI.blockOverlay{background:var(--ds-color-bg)!important;opacity:.6!important}
@media (max-width:900px){
	.lm-carrinho{grid-template-columns:minmax(0,1fr)}
	.woocommerce-cart .cart-collaterals{grid-column:1;grid-row:auto;position:static}
}

/* ---- Itens ---- */
.lm-item{display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:var(--ds-space-4) 18px;align-items:center;padding:18px 0;border-bottom:var(--ds-border-width) solid var(--ds-color-line)}
.lm-item:last-child{border-bottom:0}
.lm-item__fim{display:flex;align-items:center;gap:var(--ds-space-4)}
.lm-mini{display:flex;align-items:flex-end;width:100%;aspect-ratio:3/4;overflow:hidden;border-radius:8px 12px 12px 8px;background:var(--ds-color-surface-soft);box-shadow:inset 5px 0 0 var(--ds-color-cover-spine),0 6px 14px var(--ds-color-shadow-art)}
.lm-mini img{display:block;width:100%;height:100%;max-width:none;margin:0;object-fit:cover}
.lm-mini--sem{align-items:center;justify-content:center;color:var(--ds-color-navy)}
.lm-item__texto{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.lm-item__colecao{min-height:24px;padding:0 10px;font-size:12px}
.lm-item__titulo,.lm-item__titulo a{color:var(--ds-color-text);font-weight:var(--ds-weight-bold);font-size:18px;line-height:1.3;overflow-wrap:anywhere}
.lm-item__titulo a:hover{color:var(--ds-color-blue)}
.lm-item__precos{color:var(--ds-color-text-muted);font-size:15px;font-variant-numeric:tabular-nums}
.lm-item .woocommerce-Price-amount{color:inherit;font:inherit}
.lm-item__total{min-width:92px;color:var(--ds-color-navy);font:var(--ds-weight-bold) 20px/1.2 var(--ds-font-heading);text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:640px){
	.lm-item{grid-template-columns:64px minmax(0,1fr);gap:14px}
	.lm-item__fim{grid-column:1/-1;justify-content:space-between;gap:var(--ds-space-2)}
	.lm-item__total{min-width:0}
}

/* Quantidade em pílula, com − e + de 44 px */
.lm-qtd{display:inline-flex;align-items:center;gap:2px;padding:2px;border:var(--ds-border-strong) solid var(--ds-color-border);border-radius:var(--ds-radius-pill);background:var(--ds-color-surface)}
.lm-qtd .quantity{margin:0}
.lm-qtd .quantity .qty,.lm-qtd input.qty{width:36px;min-height:var(--ds-target);margin:0;padding:0;border:0;background:transparent;color:var(--ds-color-text);font-weight:var(--ds-weight-bold);text-align:center;-moz-appearance:textfield;appearance:textfield;box-shadow:none}
.lm-qtd input.qty::-webkit-outer-spin-button,.lm-qtd input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.lm-qtd__botao{display:inline-flex;align-items:center;justify-content:center;width:var(--ds-target);height:var(--ds-target);padding:0;border:0;border-radius:var(--ds-radius-pill);background:transparent;color:var(--ds-color-navy);cursor:pointer}
.lm-qtd__botao:hover:not([disabled]){background:var(--ds-color-blue-soft)}
.lm-qtd__botao[disabled]{opacity:.35;cursor:default}
.lm-qtd:has(input:focus-visible){outline:var(--ds-focus-width) solid var(--ds-color-blue);outline-offset:var(--ds-focus-offset)}
.lm-qtd input.qty:focus-visible{outline:0}

/* Lixeira */
.woocommerce-cart .lm-item__remover a.remove{display:inline-flex;align-items:center;justify-content:center;width:var(--ds-target);height:var(--ds-target);border-radius:var(--ds-radius-pill);background:transparent;color:var(--ds-color-text-muted)!important;font-size:inherit;line-height:1}
.woocommerce-cart .lm-item__remover a.remove::before,.woocommerce-cart .lm-item__remover a.remove::after{content:none;display:none}
.woocommerce-cart .lm-item__remover a.remove:hover{background:var(--ds-color-danger-bg);color:var(--ds-color-danger)!important}

/* ---- Resumo ---- */
.woocommerce-cart .cart-collaterals .cart_totals.lm-resumo{display:flex;flex-direction:column;gap:var(--ds-space-4);float:none;width:auto;margin:0;padding:var(--ds-space-6);border:var(--ds-border-width) solid var(--ds-color-line);border-radius:var(--ds-radius-box);background:var(--ds-color-surface)}
.lm-resumo__titulo{margin:0;font-size:22px}
.lm-resumo__linha{display:flex;justify-content:space-between;align-items:baseline;gap:var(--ds-space-3);font-variant-numeric:tabular-nums}
.lm-resumo__linha strong,.lm-resumo__linha .woocommerce-Price-amount{font-weight:var(--ds-weight-bold)}
.lm-resumo__desconto{color:var(--ds-color-success-text)}
.lm-resumo .woocommerce-Price-amount{color:inherit;font:inherit}
.lm-resumo input.input-text{min-height:var(--ds-field-h)}
.lm-resumo input.input-text[aria-invalid="true"]{border-color:var(--ds-color-danger)}
.lm-cep label,.lm-cupom__campo label{display:block;margin:0 0 6px;font-weight:var(--ds-weight-bold)}
.lm-cep__linha,.lm-cupom__linha{display:flex;gap:10px}
.lm-cep__linha .lm-btn,.lm-cupom__linha .lm-btn{flex:none;padding:0 var(--ds-space-4)}
.lm-cep__erro,.lm-cupom__erro,.lm-frete__erro{margin:var(--ds-space-2) 0 0;color:var(--ds-color-danger);font-weight:var(--ds-weight-bold);font-size:var(--ds-text-small-size)}

/* Frete */
.lm-resumo .lm-frete{display:flex;flex-direction:column;gap:10px;margin:0;padding:0}
.lm-frete__titulo{margin:0;font-family:var(--ds-font-body);font-size:var(--ds-text-body-size)}
.lm-frete__ajuda,.lm-frete__destino,.lm-frete__nota{margin:0;color:var(--ds-color-text-muted);font-size:var(--ds-text-small-size)}
.lm-frete__destino strong{color:var(--ds-color-text)}
.lm-frete__alterar summary,.lm-cupom__abre summary{display:flex;align-items:center;min-height:var(--ds-target);color:var(--ds-color-blue);font-weight:var(--ds-weight-bold);cursor:pointer;list-style:none}
.lm-frete__alterar summary::-webkit-details-marker,.lm-cupom__abre summary::-webkit-details-marker{display:none}
.lm-frete__alterar summary:hover,.lm-cupom__abre summary:hover{color:var(--ds-color-navy)}
.lm-frete__opcoes{min-width:0;margin:0;padding:0;border:0}
.lm-frete__opcoes ul{display:grid;gap:var(--ds-space-2);margin:0;padding:0;list-style:none}
.lm-frete__opcoes li{margin:0}
.lm-frete__opcao{display:flex;align-items:center;gap:var(--ds-space-3);min-height:56px;margin:0;padding:10px 14px;border:var(--ds-border-strong) solid var(--ds-color-line);border-radius:var(--ds-radius-field);background:var(--ds-color-surface);cursor:pointer}
.lm-frete__opcao--on,.lm-frete__opcao:has(input:checked){border-color:var(--ds-color-blue);background:var(--ds-color-blue-soft)}
.lm-frete__opcao:has(input:focus-visible){outline:var(--ds-focus-width) solid var(--ds-color-blue);outline-offset:var(--ds-focus-offset)}
.lm-frete__opcao input{flex:none;margin:0}
.lm-frete__nome{display:flex;flex:1;flex-direction:column;min-width:0;line-height:1.3}
.lm-frete__nome span{color:var(--ds-color-text-muted);font-size:var(--ds-text-small-size);font-weight:var(--ds-weight-regular)}
.lm-frete__valor{flex:none;font-weight:var(--ds-weight-bold);font-variant-numeric:tabular-nums}

/* Cupom */
.lm-cupom__abre[open] summary{margin-bottom:6px}
.lm-cupom__ok{display:flex;align-items:center;gap:var(--ds-space-2);min-height:var(--ds-target);margin:var(--ds-space-2) 0 0;padding:0 var(--ds-space-3);border-radius:var(--ds-radius-pill);background:var(--ds-color-success-bg);color:var(--ds-color-success-text);font-weight:var(--ds-weight-bold)}
.lm-cupom__ok svg{flex:none;color:var(--ds-color-success-icon)}
.lm-cupom__ok .woocommerce-remove-coupon{display:inline-flex;align-items:center;min-height:var(--ds-target);margin-left:auto;color:var(--ds-color-success-text);text-decoration:underline}

/* Total */
.lm-total{display:grid;gap:2px;padding-top:14px;border-top:var(--ds-border-width) solid var(--ds-color-line)}
.lm-total__rotulo{font-weight:var(--ds-weight-bold)}
.lm-total__valor,.lm-total__valor strong{color:var(--ds-color-navy);font:var(--ds-weight-bold) 32px/1.1 var(--ds-font-heading);font-variant-numeric:tabular-nums}
.lm-total__cartao{color:var(--ds-color-text-muted);font-size:var(--ds-text-small-size);font-variant-numeric:tabular-nums}
.lm-resumo .wc-proceed-to-checkout{padding:0;margin:0}
.lm-resumo .wc-proceed-to-checkout .lm-btn{width:100%;margin:0}

/* Garantias */
.lm-garantias{display:flex;flex-direction:column;gap:10px;margin:0;padding:var(--ds-space-4) 0 0;border-top:var(--ds-border-width) solid var(--ds-color-line);list-style:none;font-size:15px;color:var(--ds-color-text-small)}
.lm-garantias li{display:flex;align-items:flex-start;gap:10px;margin:0}
.lm-garantias svg{flex:none;margin-top:2px;color:var(--ds-color-blue)}
.lm-garantias strong{font-weight:var(--ds-weight-bold)}

/* Barra fixa do celular (até 760 px): total e "Finalizar compra" */
.lm-barra{display:none}
@media (max-width:760px){
	.lm-barra{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-3);position:fixed;z-index:9000;left:0;right:0;bottom:0;padding:var(--ds-space-3) var(--ds-gutter);border-top:var(--ds-border-width) solid var(--ds-color-line);background:var(--ds-color-surface)}
	.lm-barra__total{display:flex;flex-direction:column;margin:0;line-height:1.2}
	.lm-barra__valor,.lm-barra__valor strong{color:var(--ds-color-navy);font:var(--ds-weight-bold) 22px/1.2 var(--ds-font-heading)}
	.lm-barra__nota{color:var(--ds-color-text-muted);font-size:var(--ds-text-tag-size)}
	.lm-barra .lm-btn{flex:none}
	.lm-carrinho{margin-bottom:96px}
	html{scroll-padding-bottom:96px}
	.lm-aviso{bottom:96px}
	.lm-resumo__titulo{font-size:20px}
}

/* ---- Avisos (saiu do carrinho + Desfazer, cupom, erro): pílula marinho acima do conteúdo ---- */
.woocommerce-cart .woocommerce-notices-wrapper{margin:0 0 var(--ds-space-3)}
.woocommerce-cart .woocommerce-notices-wrapper:empty{display:none}
.woocommerce-cart .woocommerce-message,.woocommerce-cart .woocommerce-info{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-3);margin:0 0 var(--ds-space-2);padding:var(--ds-space-2) var(--ds-space-2) var(--ds-space-2) 18px;border-radius:var(--ds-radius-pill);background:var(--ds-color-navy);color:var(--ds-color-on-navy);font-weight:var(--ds-weight-bold)}
.woocommerce-cart .woocommerce-message::before,.woocommerce-cart .woocommerce-info::before,.woocommerce-cart .woocommerce-error::before{display:none}
.woocommerce-cart .woocommerce-message a,.woocommerce-cart .woocommerce-info a{display:inline-flex;align-items:center;min-height:var(--ds-target);padding:0 18px;float:none;border:0;border-radius:var(--ds-radius-pill);background:var(--ds-color-surface);color:var(--ds-color-navy);font-weight:var(--ds-weight-bold)}
.woocommerce-cart .woocommerce-message a:hover,.woocommerce-cart .woocommerce-info a:hover{background:var(--ds-color-blue-soft);color:var(--ds-color-navy)}
.woocommerce-cart .woocommerce-message :focus-visible,.woocommerce-cart .woocommerce-info :focus-visible{outline-color:var(--ds-color-on-navy)}
.woocommerce-cart .woocommerce-error{margin:0 0 var(--ds-space-2)}

/* ---- Carrinho vazio ---- */
.lm-carrinho-vazio{display:flex;flex-direction:column;align-items:center;gap:var(--ds-space-5);padding:56px var(--ds-space-8);text-align:center;border:var(--ds-border-width) solid var(--ds-color-line);border-radius:var(--ds-radius-box-lg);background:var(--ds-color-surface)}
.lm-carrinho-vazio .lm-cart__titulo,.lm-carrinho-vazio .lm-cart__contagem{margin:0}
.lm-carrinho-vazio .lm-cart__contagem{max-width:420px}
.lm-vazio__livros{display:flex;align-items:flex-end;gap:var(--ds-space-2)}
.lm-vazio__livros span{display:block;width:44px;height:150px;border:var(--ds-border-dashed) dashed var(--ds-color-border);border-radius:4px 4px 2px 2px}
.lm-vazio__livros span:nth-child(2){height:170px}
.lm-vazio__livros span:nth-child(3){height:140px}
.lm-vazio__livros span:nth-child(4){height:160px}
.lm-vazio__colecoes{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none}
.lm-vazio__colecoes li{margin:0}
@media (max-width:760px){.lm-carrinho-vazio{padding:36px var(--ds-space-5)}}

/* Confirmações simples ("Carrinho atualizado.") somem em 5 s; a do Desfazer fica. */
@keyframes lm-msg-sai{to{opacity:0;visibility:hidden;max-height:0;margin:0;padding:0}}
.woocommerce-cart .woocommerce-message:not(:has(.restore-item)){overflow:hidden;max-height:80px;animation:lm-msg-sai .3s ease 5s forwards}
