/* ===== checkout v2 (26/10/2026): 3 etapas, uma aberta por vez; total só depois da entrega ===== */
body.pagina-checkout-2 { background: var(--cinza-1); }
.topo-simples { position: static; }
.ck2 { padding-top: 22px; padding-bottom: 56px; }
.ck2-topo { margin-bottom: 18px; }
.ck2-topo h1 { margin: 0; font-size: var(--t-xl); letter-spacing: -.01em; }
.ck2-topo p { margin: 4px 0 0; color: var(--cinza-7); font-size: var(--t-sm); }
.ck2-grade { display: grid; gap: 18px; align-items: start; }
@media (min-width: 992px) { .ck2-grade { grid-template-columns: minmax(0, 1fr) 400px; gap: 28px; } .ck2-topo h1 { font-size: var(--t-2xl); } }
.ck2-form { display: grid; gap: 14px; }
.ck2-etapa { background: #fff; border: 1px solid var(--cinza-2); border-radius: var(--r-lg); padding: 20px; transition: box-shadow var(--medio), border-color var(--medio); }
.ck2-etapa.aberta { border-color: var(--grafite); box-shadow: var(--sombra-2); }
.ck2-etapa.futura { opacity: .6; }
.ck2-etapa.futura .ck2-sub { display: none; }
.ck2-cab { display: grid; grid-template-columns: 34px 1fr auto; gap: 12px; align-items: start; }
.ck2-num { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-weight: 800; background: var(--cinza-2); color: var(--cinza-7); }
.ck2-etapa.aberta .ck2-num { background: var(--grafite); color: #fff; }
.ck2-etapa.feita .ck2-num { background: var(--verde); color: #fff; font-size: 0; }
.ck2-etapa.feita .ck2-num::after { content: "✓"; font-size: 16px; }
.ck2-cab h2 { margin: 5px 0 0; font-size: var(--t-lg); line-height: 1.2; }
.ck2-sub { margin: 4px 0 0; color: var(--cinza-7); font-size: var(--t-sm); }
.ck2-sub[hidden], .ck2-feito[hidden], .ck2-alterar[hidden] { display: none; }
.ck2-feito { margin-top: 6px; font-size: var(--t-sm); color: var(--cinza-9); line-height: 1.5; }
.ck2-alterar { background: none; border: 0; color: var(--azul); font-weight: 700; font-size: var(--t-sm); text-decoration: underline; padding: 6px 0; }
.ck2-corpo { margin-top: 18px; display: grid; gap: 14px; }
.ck2-corpo[hidden] { display: none; }
.ck2-campos { display: grid; gap: 14px; }
@media (min-width: 768px) { .ck2-campos { grid-template-columns: 1fr 1fr; } .ck2-campo.largo { grid-column: 1 / -1; } }
.ck2-campo { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ck2-campo label { font-size: var(--t-sm); font-weight: 700; color: var(--grafite); }
.ck2-campo input { height: 50px; width: 100%; border: 1.5px solid var(--cinza-3); border-radius: var(--r); padding: 0 14px; font-size: 16px; background: #fff; transition: border-color var(--rapido), box-shadow var(--rapido); }
.ck2-campo input::placeholder { color: var(--cinza-5); }
.ck2-campo input:focus { border-color: var(--grafite); outline: none; box-shadow: 0 0 0 4px rgba(26,28,32,.08); }
.ck2-campo input[readonly] { background: var(--cinza-1); color: var(--cinza-7); }
.ck2-campo input[aria-invalid="true"] { border-color: var(--vermelho); box-shadow: 0 0 0 4px rgba(214,38,46,.08); }
.ck2-campo small { font-size: var(--t-xs); color: var(--cinza-5); }
.ck2-campo small a { text-decoration: underline; }
.ck2-opt { font-size: var(--t-sm); color: var(--cinza-9); }
.ck2-seguir { margin-top: 4px; }
.ck2-cep { display: grid; grid-template-columns: minmax(0, 240px) 1fr; gap: 14px; align-items: center; }
.ck2-cidade { display: flex; gap: 6px; align-items: center; font-weight: 700; font-size: var(--t-sm); color: var(--grafite); padding-top: 8px; }
@media (max-width: 600px) { .ck2-cep { grid-template-columns: 1fr; } .ck2-cidade { padding-top: 0; } }
.ck2-opcoes { display: grid; gap: 10px; }
.ck2-opcoes[hidden] { display: none; }
.ck2-opcao { display: block; cursor: pointer; }
.ck2-opcao input { position: absolute; opacity: 0; pointer-events: none; }
.ck2-opcao-corpo { display: grid; grid-template-columns: 20px 28px 1fr auto; gap: 12px; align-items: center; padding: 16px; border: 1.5px solid var(--cinza-3); border-radius: var(--r); background: #fff; transition: border-color var(--rapido), background var(--rapido), box-shadow var(--rapido); }
.ck2-opcao-corpo:hover { border-color: var(--cinza-5); }
.ck2-radio { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--cinza-5); display: grid; place-items: center; }
.ck2-opcao input:checked + .ck2-opcao-corpo, .ck2-opcao.sel .ck2-opcao-corpo { border-color: var(--verde); background: #f4fbf7; box-shadow: 0 0 0 1px var(--verde); }
.ck2-opcao input:checked + .ck2-opcao-corpo .ck2-radio, .ck2-opcao.sel .ck2-radio { border-color: var(--verde); }
.ck2-opcao input:checked + .ck2-opcao-corpo .ck2-radio::after, .ck2-opcao.sel .ck2-radio::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--verde); }
.ck2-opcao input:focus-visible + .ck2-opcao-corpo { outline: 3px solid var(--azul); outline-offset: 2px; }
.ck2-opcao-corpo .ico { width: 28px; height: 28px; color: var(--grafite); }
.ck2-opcao-txt b { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: var(--t-base); }
.ck2-opcao-txt small { display: block; margin-top: 3px; color: var(--cinza-7); font-size: var(--t-xs); line-height: 1.45; }
.ck2-preco { font-weight: 800; font-size: var(--t-md); white-space: nowrap; text-align: right; }
.ck2-opcao.destaque .ck2-opcao-txt b::after { content: "Grátis e mais rápido"; font-size: 11px; font-weight: 800; padding: 2px 8px; border-radius: 999px; background: var(--destaque); color: var(--destaque-texto); }
.ck2-tag { font-size: 11px; font-weight: 800; padding: 2px 8px; border-radius: 999px; background: var(--verde); color: #fff; }
@media (max-width: 600px) { .ck2-opcao-corpo { grid-template-columns: 20px 1fr auto; } .ck2-opcao-corpo .ico { display: none; } }
.ck2-endereco[hidden] { display: none; }
.ck2-nota { padding: 12px 14px; border-radius: var(--r); background: #fff8e1; border: 1px solid #ffe08a; font-size: var(--t-sm); color: #5c4400; }
.ck2-nota[hidden] { display: none; }
.ck2-nota a { font-weight: 700; text-decoration: underline; }
.ck2-alt { margin: 0; font-size: var(--t-sm); color: var(--cinza-7); }
.ck2-alt a { color: var(--azul); font-weight: 700; text-decoration: underline; }
.ck2-final { display: grid; gap: 12px; padding-top: 14px; border-top: 1px solid var(--cinza-2); }
.ck2-final-total { margin: 0; display: grid; gap: 2px; }
.ck2-final-total div { display: flex; justify-content: space-between; align-items: baseline; }
.ck2-final-total dt { font-weight: 800; font-size: var(--t-md); }
.ck2-final-total dd { margin: 0; color: var(--verde); font-weight: 800; font-size: 1.75rem; letter-spacing: -.01em; }
.ck2-final-total .obs dd { font-size: var(--t-xs); color: var(--cinza-7); font-weight: 600; margin-left: auto; }
.ck2-aceite { font-size: var(--t-sm); align-items: flex-start; }
.ck2-aceite a { text-decoration: underline; font-weight: 600; }
.ck2-enviar { min-height: 60px; font-size: 1.125rem; gap: 10px; box-shadow: 0 8px 20px rgba(10,138,62,.25); }
.ck2-enviar .ico { width: 20px; height: 20px; }
.ck2-seguro { margin: 0; text-align: center; font-size: var(--t-xs); color: var(--cinza-7); display: flex; gap: 6px; justify-content: center; align-items: center; }
/* lado: resumo + garantias */
.ck2-lado { display: grid; gap: 14px; }
@media (min-width: 992px) { .ck2-lado { position: sticky; top: 16px; } }
@media (max-width: 991px) { .ck2-lado .ck2-resumo { display: none; } }
.ck2-resumo { background: #fff; border: 1px solid var(--cinza-2); border-radius: var(--r-lg); padding: 20px; display: grid; gap: 14px; }
.ck2-resumo-cab { display: flex; justify-content: space-between; align-items: baseline; }
.ck2-resumo-cab h2 { margin: 0; font-size: var(--t-lg); }
.ck2-resumo-cab a { color: var(--azul); font-weight: 700; font-size: var(--t-sm); text-decoration: underline; }
.ck2-itens { display: grid; gap: 12px; max-height: 330px; overflow-y: auto; padding: 8px 8px 0 0; }
.ck2-item { display: grid; grid-template-columns: 64px 1fr auto; gap: 12px; align-items: center; }
.ck2-item-foto { position: relative; }
.ck2-item-foto img { width: 64px; height: 64px; object-fit: contain; border: 1px solid var(--cinza-2); border-radius: var(--r); background: #fff; }
.ck2-item-q { position: absolute; top: -7px; right: -7px; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--grafite); color: #fff; font-size: 11px; font-weight: 800; display: grid; place-items: center; }
.ck2-item-txt b { font-size: var(--t-sm); font-weight: 600; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ck2-item-txt small { display: block; color: var(--cinza-5); font-size: var(--t-xs); margin-top: 2px; }
.ck2-item-preco { font-weight: 700; font-size: var(--t-sm); white-space: nowrap; }
.ck-totais .pixd dt, .ck-totais .pixd dd { color: var(--verde); }
.ck-totais .pix.parcial dt { font-size: var(--t-base); }
.ck-totais .pix.parcial dd { font-size: 1.35rem; }
.ck-totais .cartao { border-top: 0; padding-top: 0; margin-top: -4px; }
.ck-totais .cartao dd { font-weight: 500; color: var(--cinza-7); font-size: var(--t-xs); }
.ck-totais .eco { justify-content: center; margin-top: 4px; padding: 10px; border-radius: var(--r); background: var(--verde-fundo); }
.ck-totais .eco dd { color: #075c2a; font-weight: 600; font-size: var(--t-sm); text-align: center; width: 100%; }
.ck2-meta-ok { padding: 10px 12px; border-radius: var(--r); background: var(--verde-fundo); color: #075c2a; font-size: var(--t-sm); }
.ck2-meta-falta { font-size: var(--t-xs); color: var(--cinza-9); }
.ck2-meta-falta .progresso-barra { margin-top: 6px; }
.ck2-garantias { list-style: none; margin: 0; padding: 18px 20px; background: #fff; border: 1px solid var(--cinza-2); border-radius: var(--r-lg); display: grid; gap: 14px; }
.ck2-garantias li { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: start; }
.ck2-garantias .ico { width: 26px; height: 26px; color: var(--grafite); }
.ck2-garantias b { display: block; font-size: var(--t-sm); }
.ck2-garantias span { font-size: var(--t-xs); color: var(--cinza-7); line-height: 1.45; }
.ck2-garantias a { color: var(--azul); text-decoration: underline; }
.ck2-resumo-cel { background: #fff; border: 1px solid var(--cinza-2); border-radius: var(--r-lg); margin-bottom: 14px; }
.ck2-resumo-cel summary { list-style: none; display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; font-weight: 700; cursor: pointer; }
.ck2-resumo-cel summary::-webkit-details-marker { display: none; }
.ck2-resumo-cel summary > span { display: flex; gap: 8px; align-items: center; color: var(--azul); }
.ck2-resumo-cel summary b { color: var(--verde); }
.ck2-resumo-cel-corpo { padding: 0 16px 16px; display: grid; gap: 12px; }
@media (min-width: 992px) { .ck2-resumo-cel { display: none; } }
@media (max-width: 991px) { body.pagina-checkout-2 { padding-bottom: 80px; } }
.ck2-fachada { width: 56px; height: 47px; object-fit: cover; border-radius: 8px; }
@media (max-width: 600px) { .ck2-fachada { display: none; } }
.ck2-opcao[data-opcao-retirada] .ck2-opcao-corpo { grid-template-columns: 20px 56px 1fr auto; }
@media (max-width: 600px) { .ck2-opcao[data-opcao-retirada] .ck2-opcao-corpo { grid-template-columns: 20px 1fr auto; } }
