/* Seletor de compra (cor · tamanho · quantidade) → checkout seguro da Yampi. */
/* Trava: nunca exibir o widget nativo da Yampi caso seu script seja carregado. */
.ymp-buy-button-holder,.ymp-script{display:none!important}
#checkout-dialog{width:min(500px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:32px;border:0;border-radius:18px;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain}
#checkout-dialog::backdrop{background:#151b18b8;backdrop-filter:blur(6px)}
#checkout-dialog .dialog-close{position:absolute;width:44px;height:44px;top:12px;right:12px;background:transparent;font-size:1.5rem;line-height:1;border-radius:50%}
#checkout-dialog>.eyebrow{font-size:.625rem;letter-spacing:.12em;color:#636955;padding-right:32px}
#checkout-dialog h2{font-size:2.4rem;line-height:1.05;letter-spacing:-.06em;margin:14px 0 8px}
#checkout-dialog h2 em{font-style:normal;color:#ca4009}
#checkout-dialog .checkout-intro{font-size:.875rem;line-height:1.6;margin:0;color:#5d6258}
#checkout-dialog .checkout-footnote{font-size:.75rem;line-height:1.6;margin:16px 0 0;color:#60645b;text-align:center}
body:has(#checkout-dialog[open]){overflow:hidden}
.offer-button[type=button]{width:100%;text-align:left}

/* Prévia do produto + preço */
.co-preview{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;column-gap:16px;background:#e8ecdf;border-radius:14px;padding:14px 20px 14px 4px;margin:20px 0 22px}
.co-preview img{width:120px;height:104px;object-fit:contain;transform:rotate(-8deg) scale(1.18)}
.co-price{display:flex;flex-direction:column;gap:2px}
.co-price span{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:#5d6258;font-weight:700}
.co-price strong{font-size:2rem;letter-spacing:-.04em;line-height:1}
.co-unit-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px}
.co-unit-price small{font-size:.75rem;line-height:1.4;color:#5d6258;white-space:nowrap}
.co-total{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:14px;margin-bottom:16px;border-top:1px solid #d7dbcd}
.co-total>span{font-size:.875rem;font-weight:700}
.co-total>strong{font-size:1.75rem;line-height:1.2;letter-spacing:-.04em;white-space:nowrap}

/* Campos */
.co-field{margin-bottom:20px}
.co-field-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.co-label{font:750 .8125rem Manrope,Arial,sans-serif;letter-spacing:-.01em}
.co-value{font-size:.8125rem;color:#5d6258}
.co-guide-link{background:transparent;padding:0;font:600 .75rem Manrope,Arial,sans-serif;color:#ca4009;text-decoration:underline;text-underline-offset:3px}

/* Cores */
.co-swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.co-swatch{display:flex;flex-direction:column;align-items:center;gap:7px;background:#fff;border:1.5px solid #d7dbcd;border-radius:10px;padding:10px 4px;font:600 .75rem Manrope,Arial,sans-serif;transition:border-color .15s,box-shadow .15s}
.co-swatch i{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}
.co-swatch:hover{border-color:#b6bca8}
.co-swatch.is-active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}

/* Tamanhos */
.co-sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.co-size{background:#fff;border:1.5px solid #d7dbcd;border-radius:10px;padding:14px 4px;font:700 .9375rem Manrope,Arial,sans-serif;letter-spacing:-.02em;transition:border-color .15s,box-shadow .15s}
.co-size:hover:not(:disabled){border-color:#b6bca8}
.co-size.is-active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink);background:var(--ink);color:#fff}
.co-size:disabled{opacity:.4;text-decoration:line-through}

/* Quantidade */
.co-qty-field{display:flex;align-items:center;justify-content:space-between;gap:12px}
.co-qty{display:inline-flex;align-items:center;border:1.5px solid #d7dbcd;border-radius:10px;background:#fff;overflow:hidden}
.co-qty-btn{width:46px;height:46px;background:transparent;font-size:1.4rem;line-height:1;color:var(--ink)}
.co-qty-btn:hover{background:#eef1e7}
.co-qty-value{min-width:44px;text-align:center;font:700 1rem Manrope,Arial,sans-serif;border-left:1.5px solid #d7dbcd;border-right:1.5px solid #d7dbcd;line-height:46px}

/* Continuar */
.co-continue{width:100%;min-height:56px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--ink);color:#fff;border-radius:8px;font:750 .9375rem Manrope,Arial,sans-serif;letter-spacing:.01em;margin-top:4px;transition:background .2s,opacity .2s}
.co-continue span{font-size:1.25rem;line-height:1}
.co-continue:hover:not(:disabled){background:#343d2b}
.co-continue:disabled{opacity:.45}
.co-hint{font-size:.75rem;line-height:1.5;color:#60645b;text-align:center;margin:12px 0 0}

:where(.co-swatch,.co-size,.co-qty-btn,.co-continue,.co-guide-link):focus-visible{outline:3px solid #244ccc;outline-offset:3px}

@media(max-width:760px){
  #checkout-dialog{padding:26px 22px;border-radius:14px}
  #checkout-dialog h2{font-size:2.15rem}
  .co-preview{grid-template-columns:100px minmax(0,1fr);column-gap:12px}
  .co-preview img{width:100px;height:90px}
  .co-price strong{font-size:1.75rem}
  .co-swatch span{font-size:.6875rem}
}
