/* Seletor de idioma do checkout (PT/EN/ES). Alvo de toque >= 36px. */
.ck-idioma { display: flex; justify-content: flex-end; margin: 0 0 8px; position: relative; z-index: 30; }
.ck-idioma-caixa { position: relative; }
.ck-idioma-atual { list-style: none; display: inline-flex; align-items: center; gap: 6px; min-height: 36px; min-width: 36px; padding: 4px 10px; border: 1px solid #c9d6e2; border-radius: 8px; background: #fff; color: #222; font-size: 15px; font-weight: 700; cursor: pointer; }
.ck-idioma-atual::-webkit-details-marker { display: none; }
.ck-idioma-atual:focus-visible, .ck-idioma-item:focus-visible { outline: 3px solid #0099ff; outline-offset: 2px; }
.ck-bandeira { display: block; width: 24px; height: 16px; flex: none; }
.ck-idioma-lista { position: absolute; right: 0; top: calc(100% + 4px); margin: 0; padding: 4px; list-style: none; min-width: 160px; background: #fff; border: 1px solid #c9d6e2; border-radius: 8px; box-shadow: 0 4px 14px rgba(0, 0, 0, .18); }
.ck-idioma-item { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 6px 10px; border-radius: 6px; color: #222; font-size: 15px; text-decoration: none; }
.ck-idioma-item:hover { background: #f3f7fb; }
.ck-idioma-item-atual { font-weight: 700; }
/* faixa do carrinho: canto superior direito no desktop; no celular fica numa linha propria acima da trilha */
@media (min-width: 900px) {
  .ck-topo > .ck-idioma:not(.ck-idioma-pg) { position: absolute; right: 24px; top: 50%; transform: translateY(-50%); margin: 0; }
}
