/* =========================================================
   PROMOCOMBO — CHECKOUT UNIFICADO RC31.57

   Esta hoja se carga al final y reemplaza visualmente el
   panel heredado sin alterar la lógica del carrito.
========================================================= */

:root {
    --checkout-rojo: #e30613;
    --checkout-rojo-oscuro: #b9000b;
    --checkout-negro: #17191d;
    --checkout-texto: #24272d;
    --checkout-gris: #6f7782;
    --checkout-borde: #e1e5ea;
    --checkout-fondo: #f4f6f8;
    --checkout-verde: #19bd63;
    --checkout-radio: 22px;
}

.datosPedidoBackdrop {
    position: fixed;
    inset: 0;
    z-index: 19990;
    visibility: hidden;
    opacity: 0;
    background: rgba(17, 19, 24, .45);
    backdrop-filter: blur(4px);
    pointer-events: none;
    transition:
        opacity .25s ease,
        visibility .25s ease;
}

.datosPedidoBackdrop.abierto {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

body.checkoutAbierto {
    overflow: hidden !important;
}

body #panelDatos {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    z-index: 20000 !important;
    display: flex !important;
    flex-direction: column !important;
    width: min(100%, 520px) !important;
    height: 100dvh !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 28px 0 0 28px !important;
    background: var(--checkout-fondo) !important;
    color: var(--checkout-texto) !important;
    box-shadow: -28px 0 75px rgba(17, 19, 24, .25) !important;
    transform: translateX(105%) !important;
    transition: transform .3s cubic-bezier(.2, .8, .2, 1) !important;
}

body #panelDatos.abierto {
    transform: translateX(0) !important;
}

body #panelDatos .cabeceraDatos {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: calc(20px + env(safe-area-inset-top)) 22px 19px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--checkout-borde) !important;
    background: rgba(255, 255, 255, .96) !important;
    color: var(--checkout-texto) !important;
    backdrop-filter: blur(18px) !important;
}

.cabeceraDatosMarca {
    min-width: 0;
}

.cabeceraDatosPaso {
    display: block;
    margin-bottom: 5px;
    color: var(--checkout-rojo);
    font-size: 10px;
    font-weight: 950;
    letter-spacing: 1.8px;
}

body #panelDatos .cabeceraDatos h2 {
    margin: 0 !important;
    color: var(--checkout-negro) !important;
    font-size: clamp(25px, 5vw, 31px) !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: -.85px !important;
}

.cabeceraDatosMarca p {
    margin: 7px 0 0;
    color: var(--checkout-gris);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 650;
}

body #panelDatos #cerrarDatos {
    display: grid !important;
    flex: 0 0 45px !important;
    width: 45px !important;
    height: 45px !important;
    place-items: center !important;
    border: 1px solid #d9dde3 !important;
    border-radius: 15px !important;
    background: #fff !important;
    color: var(--checkout-negro) !important;
    box-shadow: 0 8px 20px rgba(17, 19, 24, .08) !important;
    font-family: Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

body #panelDatos #cerrarDatos:active {
    transform: scale(.96);
}

body #panelDatos .contenidoDatos {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 18px 18px calc(22px + env(safe-area-inset-bottom)) !important;
    scrollbar-width: thin;
    scrollbar-color: #c6cbd2 transparent;
}

body #panelDatos .resumenPedido,
body #panelDatos .checkoutSeccion,
body #panelDatos .grupoFormulario {
    margin: 0 0 14px !important;
    padding: 17px !important;
    border: 1px solid var(--checkout-borde) !important;
    border-radius: var(--checkout-radio) !important;
    background: #fff !important;
    color: var(--checkout-texto) !important;
    box-shadow: 0 10px 28px rgba(17, 19, 24, .055) !important;
}

body #panelDatos .resumenPedido {
    padding: 15px 17px !important;
}

body #panelDatos .cabeceraResumenPedido {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
}

body #panelDatos .tituloResumenPedido {
    margin: 0 0 3px !important;
    color: var(--checkout-negro) !important;
    font-size: 15px !important;
    font-weight: 950 !important;
}

body #panelDatos #cantidadResumenPedido {
    color: var(--checkout-gris) !important;
    font-size: 11px !important;
    font-weight: 650 !important;
}

body #panelDatos #totalResumenPedido {
    color: var(--checkout-rojo) !important;
    font-size: 25px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: -.5px !important;
}

.checkoutSeccionCabecera {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 11px;
    align-items: start;
    margin: 0 0 15px;
    text-align: left !important;
}

.checkoutSeccionNumero {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 11px;
    background: var(--checkout-negro);
    color: #fff;
    font-size: 13px;
    font-weight: 950;
}

.checkoutSeccionEtiqueta {
    display: block;
    margin: 1px 0 3px;
    color: var(--checkout-rojo);
    font-size: 9px;
    font-weight: 950;
    letter-spacing: 1.3px;
}

body #panelDatos .checkoutSeccionCabecera h3,
body #panelDatos .pasoFormulario h3,
body #panelDatos .grupoFormulario h3 {
    margin: 0 !important;
    color: var(--checkout-negro) !important;
    text-align: left !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    font-weight: 950 !important;
    letter-spacing: -.3px !important;
}

.checkoutSeccionCabecera p,
body #panelDatos .avisoEntregaGratis {
    margin: 4px 0 0 !important;
    color: var(--checkout-gris) !important;
    text-align: left !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    font-weight: 650 !important;
}

body #panelDatos .opcionesEntrega {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin: 0 !important;
}

body #panelDatos .opcionEntrega {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 82px !important;
    padding: 12px !important;
    border: 2px solid var(--checkout-borde) !important;
    border-radius: 16px !important;
    background: #f9fafb !important;
    color: var(--checkout-texto) !important;
    box-shadow: none !important;
    text-align: left !important;
    transform: none !important;
}

body #panelDatos .opcionEntrega:hover {
    border-color: #cfd4db !important;
    background: #fff !important;
    transform: none !important;
}

body #panelDatos .opcionEntrega.seleccionada {
    border-color: var(--checkout-rojo) !important;
    background: #fff4f5 !important;
    color: var(--checkout-texto) !important;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, .08) !important;
}

.opcionEntregaIcono {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 12px;
    background: #fff;
    font-size: 20px;
    box-shadow: 0 5px 13px rgba(17, 19, 24, .07);
}

.opcionEntrega > span:nth-child(2) {
    display: grid;
    gap: 3px;
}

.opcionEntrega strong {
    color: var(--checkout-negro);
    font-size: 12px;
    line-height: 1.15;
    font-weight: 950;
}

.opcionEntrega small {
    color: var(--checkout-gris);
    font-size: 9px;
    line-height: 1.25;
    font-weight: 650;
}

.opcionEntregaCheck {
    position: absolute;
    top: 8px;
    right: 8px;
    display: grid;
    width: 18px;
    height: 18px;
    place-items: center;
    border: 1px solid #d7dce2;
    border-radius: 50%;
    background: #fff;
    color: transparent;
    font-size: 10px;
    font-weight: 950;
}

.opcionEntrega.seleccionada .opcionEntregaCheck {
    border-color: var(--checkout-rojo);
    background: var(--checkout-rojo);
    color: #fff;
}

body #panelDatos .estadoEntregaCuenta {
    margin: 0 0 12px !important;
    padding: 12px 13px !important;
    border: 1px solid #dce1e7 !important;
    border-radius: 14px !important;
    background: #f7f9fa !important;
    color: var(--checkout-texto) !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    font-weight: 650 !important;
}

body #panelDatos .estadoEntregaCuenta strong {
    margin-bottom: 3px !important;
    color: var(--checkout-negro) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}

body #panelDatos .estadoEntregaCuenta.aprobado {
    border-color: rgba(25, 189, 99, .28) !important;
    background: #f0fbf5 !important;
}

body #panelDatos .estadoEntregaCuenta.aprobado strong {
    color: #087943 !important;
}

body #panelDatos .estadoEntregaCuenta.pendiente {
    border-color: rgba(219, 149, 0, .3) !important;
    background: #fff9e9 !important;
}

body #panelDatos .estadoEntregaCuenta.bloqueado {
    border-color: rgba(227, 6, 19, .22) !important;
    background: #fff4f5 !important;
}

.checkoutCampos {
    display: grid;
    gap: 12px;
}

.checkoutCamposDos {
    grid-template-columns: 1fr 1fr;
}

body #panelDatos label {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
    color: var(--checkout-negro) !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

body #panelDatos label > span {
    display: block;
}

body #panelDatos input,
body #panelDatos select,
body #panelDatos textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1.5px solid #d8dde3 !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: var(--checkout-negro) !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    outline: 0 !important;
    -webkit-text-fill-color: var(--checkout-negro) !important;
    box-shadow: inset 0 1px 2px rgba(17, 19, 24, .025) !important;
}

body #panelDatos input,
body #panelDatos select {
    min-height: 48px !important;
    padding: 0 13px !important;
}

body #panelDatos textarea {
    min-height: 78px !important;
    padding: 12px 13px !important;
    resize: vertical !important;
}

body #panelDatos input:focus,
body #panelDatos select:focus,
body #panelDatos textarea:focus {
    border-color: var(--checkout-rojo) !important;
    box-shadow: 0 0 0 4px rgba(227, 6, 19, .08) !important;
}

body #panelDatos input[readonly] {
    background: #f2f4f6 !important;
    color: #4f5660 !important;
    cursor: default;
}

body #panelDatos input::placeholder,
body #panelDatos textarea::placeholder {
    color: #969ca5 !important;
    opacity: 1 !important;
    font-weight: 600 !important;
}

.datosDelivery {
    display: grid;
    gap: 12px;
    margin-top: 12px;
    padding-top: 13px;
    border-top: 1px solid var(--checkout-borde);
}

body #panelDatos .selectorDomicilioAprobado {
    display: grid !important;
    gap: 7px !important;
    margin: 0 !important;
}

body #panelDatos .selectorDomicilioAprobado select {
    background: #fff !important;
    color: var(--checkout-negro) !important;
}

body #panelDatos #grupoCambio {
    margin-top: 12px !important;
}

body #panelDatos .datosTransferencia,
body #panelDatos #datosTransferencia {
    margin: 13px 0 0 !important;
    padding: 14px !important;
    border: 1px solid rgba(25, 189, 99, .24) !important;
    border-radius: 15px !important;
    background: #f0fbf5 !important;
    color: var(--checkout-texto) !important;
}

.datosTransferenciaEtiqueta {
    display: block;
    color: #087943;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: 1.2px;
}

body #panelDatos .datosTransferencia h4 {
    margin: 3px 0 10px;
    color: var(--checkout-negro);
    font-size: 15px;
    font-weight: 950;
}

.datosTransferenciaFila {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 12px;
    border-radius: 12px;
    background: #fff;
}

.datosTransferenciaFila div {
    display: grid;
    gap: 2px;
}

.datosTransferenciaFila small {
    color: var(--checkout-gris);
    font-size: 9px;
    font-weight: 750;
}

.datosTransferenciaFila strong {
    color: var(--checkout-negro);
    font-size: 14px;
    font-weight: 950;
}

body #panelDatos .copiar {
    min-height: 34px;
    padding: 0 11px;
    border: 0;
    border-radius: 10px;
    background: var(--checkout-negro);
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    cursor: pointer;
}

body #panelDatos .datosTransferencia p,
body #panelDatos .datosTransferencia > small {
    margin: 9px 0 0;
    color: var(--checkout-gris);
    font-size: 10px;
    line-height: 1.4;
    font-weight: 650;
}

body #panelDatos .footerDatosFijo {
    position: sticky !important;
    right: auto !important;
    bottom: -1px !important;
    left: auto !important;
    z-index: 6 !important;
    display: block !important;
    margin: 0 -18px -22px !important;
    padding: 14px 18px calc(16px + env(safe-area-inset-bottom)) !important;
    border: 0 !important;
    border-top: 1px solid var(--checkout-borde) !important;
    background: rgba(255, 255, 255, .97) !important;
    box-shadow: 0 -14px 32px rgba(17, 19, 24, .08) !important;
    backdrop-filter: blur(18px) !important;
}

body #panelDatos .footerDatosFijo label {
    display: flex !important;
    grid-template-columns: none !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 7px !important;
}

.footerDatosFijo label small {
    color: var(--checkout-gris);
    font-size: 9px;
    font-weight: 750;
}

body #panelDatos #observaciones {
    margin: 0 0 10px !important;
}

body #panelDatos #enviarPedido {
    display: flex !important;
    width: 100% !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: 10px 18px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    border: 0 !important;
    border-radius: 17px !important;
    background: linear-gradient(180deg, #26d97a, var(--checkout-verde)) !important;
    color: #092315 !important;
    box-shadow:
        0 13px 28px rgba(25, 189, 99, .24),
        inset 0 1px 0 rgba(255, 255, 255, .34) !important;
}

body #panelDatos #enviarPedido:hover {
    transform: translateY(-1px) !important;
}

body #panelDatos #enviarPedido:active {
    transform: scale(.985) !important;
}

body #panelDatos .tituloBotonPedido {
    color: #092315 !important;
    font-size: 17px !important;
    line-height: 1.1 !important;
    font-weight: 950 !important;
}

body #panelDatos .subtituloBotonPedido {
    color: rgba(9, 35, 21, .72) !important;
    font-size: 9px !important;
    line-height: 1.2 !important;
    font-weight: 750 !important;
}

body #panelDatos .opcionEntrega:disabled {
    opacity: .48 !important;
    filter: grayscale(.35) !important;
}

@media (max-width: 600px) {
    body #panelDatos {
        width: 100% !important;
        border-radius: 0 !important;
    }

    body #panelDatos .cabeceraDatos {
        padding-right: 17px !important;
        padding-left: 17px !important;
    }

    body #panelDatos .contenidoDatos {
        padding-right: 13px !important;
        padding-left: 13px !important;
    }

    body #panelDatos .footerDatosFijo {
        margin-right: -13px !important;
        margin-left: -13px !important;
        padding-right: 13px !important;
        padding-left: 13px !important;
    }
}

@media (max-width: 390px) {
    body #panelDatos .opcionesEntrega {
        grid-template-columns: 1fr !important;
    }

    body #panelDatos .opcionEntrega {
        min-height: 68px !important;
    }

    .checkoutCamposDos {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    body #panelDatos,
    .datosPedidoBackdrop {
        transition: none !important;
    }
}


/* RC31.121 — Pago obligatorio y comprobantes */
.pagoCampoTitulo{display:block;font-weight:800;margin:0 0 10px;color:#202532}.pagoEfectivoOpciones{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pagoEfectivoOpcion{display:flex!important;align-items:center;gap:10px;border:1px solid #dfe3ea;border-radius:16px;padding:13px;background:#fff;cursor:pointer}.pagoEfectivoOpcion input{width:20px!important;height:20px!important;flex:0 0 auto}.pagoEfectivoOpcion span{display:flex;flex-direction:column;gap:2px}.pagoEfectivoOpcion strong{font-size:15px}.pagoEfectivoOpcion small{font-size:12px;color:#737b88}.pagoEfectivoOpcion:has(input:checked){border-color:#e2192c;box-shadow:0 0 0 2px rgba(226,25,44,.1)}.grupoMontoEfectivo{margin-top:12px!important}.importeEfectivoInput{display:flex;align-items:center;border:1px solid #dfe3ea;border-radius:14px;background:#fff;padding:0 12px}.importeEfectivoInput b{font-size:18px}.importeEfectivoInput input{border:0!important;box-shadow:none!important;padding-left:8px!important}.comprobantePagoPanel{margin-top:14px;border:1px solid #dfe3ea;border-radius:18px;padding:14px;background:#fafbfc}.comprobantePagoCabecera{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}.comprobantePagoCabecera>span{font-size:24px}.comprobantePagoCabecera div{display:flex;flex-direction:column;gap:2px}.comprobantePagoCabecera strong{font-size:16px}.comprobantePagoCabecera small,.comprobanteFormatos,.comprobanteCompartir{font-size:12px;color:#747c89;line-height:1.35}.botonComprobante{width:100%;min-height:48px;border:0;border-radius:14px;background:#151923;color:#fff;font-weight:800;font-size:15px}.comprobanteSeleccionado{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#edf9f1;border:1px solid #b7e5c6}.comprobanteSeleccionado>div{display:flex;flex:1;min-width:0;flex-direction:column}.comprobanteSeleccionado strong,.comprobanteSeleccionado small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comprobanteSeleccionado button{border:0;background:transparent;color:#0b7a35;font-weight:800}.comprobanteCompartir{margin-top:8px;padding:9px;border-radius:12px;background:#f1f4f8}.pagoSubiendoComprobante{opacity:.72;pointer-events:none}
@media(max-width:420px){.pagoEfectivoOpciones{grid-template-columns:1fr}}

.comprobanteAcciones{display:grid;grid-template-columns:1fr 1fr;gap:8px}.botonComprobante.is-secondary{background:#eef1f5;color:#202532}@media(max-width:390px){.comprobanteAcciones{grid-template-columns:1fr}}

/* RC31.122 — Pago en efectivo compacto + avisos profesionales */
.pagoEfectivoSelector{
    display:inline-grid;
    grid-template-columns:1fr 1fr;
    gap:4px;
    width:min(100%,320px);
    padding:4px;
    border:1px solid #dfe3ea;
    border-radius:14px;
    background:#f3f5f8;
}
.pagoEfectivoChip{
    position:relative;
    display:flex!important;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:8px 14px;
    border-radius:10px;
    cursor:pointer;
    color:#626b78;
    font-weight:850;
    font-size:14px;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}
.pagoEfectivoChip input{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    opacity:0;
    pointer-events:none;
}
.pagoEfectivoChip:has(input:checked){
    background:#fff;
    color:#171b24;
    box-shadow:0 2px 8px rgba(20,28,42,.09);
}
.grupoMontoEfectivoSutil{
    width:min(100%,320px);
    margin-top:9px!important;
    padding:0!important;
    animation:pcMontoReveal .18s ease-out;
}
.grupoMontoEfectivoSutil>span{
    display:block;
    margin:0 0 5px;
    color:#626b78;
    font-size:12px;
    font-weight:750;
}
.grupoMontoEfectivoSutil .importeEfectivoInput{
    min-height:44px;
    border-radius:12px;
    background:#fbfcfd;
}
.grupoMontoEfectivoSutil .importeEfectivoInput input{
    min-height:42px!important;
    padding-block:8px!important;
    font-size:15px!important;
}
@keyframes pcMontoReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

.pc-dialog-backdrop{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:grid;
    place-items:center;
    padding:22px;
    background:rgba(14,18,25,.46);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
    animation:pcDialogFade .16s ease-out;
}
.pc-dialog{
    width:min(100%,390px);
    padding:22px;
    border:1px solid rgba(226,230,236,.92);
    border-radius:24px;
    background:#fff;
    box-shadow:0 24px 70px rgba(7,12,20,.24);
    text-align:center;
    animation:pcDialogPop .2s cubic-bezier(.2,.8,.2,1);
}
.pc-dialog-icon{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    margin:0 auto 13px;
    border-radius:17px;
    background:#fff3f4;
    color:#d71d32;
    font-size:25px;
}
.pc-dialog h3{margin:0;color:#151a23;font-size:21px;line-height:1.15}
.pc-dialog p{margin:9px auto 0;max-width:310px;color:#69717d;font-size:14px;line-height:1.45}
.pc-dialog button{
    width:100%;
    min-height:48px;
    margin-top:18px;
    border:0;
    border-radius:14px;
    background:#171b24;
    color:#fff;
    font-size:15px;
    font-weight:850;
}
@keyframes pcDialogFade{from{opacity:0}to{opacity:1}}
@keyframes pcDialogPop{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}

/* RC31.124 — estado real del comprobante: hidden siempre manda sobre el layout */
.comprobanteSeleccionado[hidden],
.comprobanteAcciones[hidden]{display:none!important}


/* RC31.131 — Selector de efectivo más claro y panel de monto realmente condicional */
body #panelDatos #grupoMontoEfectivo[hidden]{
    display:none!important;
}
body #panelDatos #grupoMontoEfectivo:not([hidden]){
    display:grid!important;
}
.pagoEfectivoSelector{
    width:min(100%,350px);
    gap:8px;
    padding:6px;
    border:1px solid #e1e5eb;
    border-radius:18px;
    background:linear-gradient(180deg,#f7f8fa 0%,#f1f3f6 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.pagoEfectivoChip{
    min-height:50px;
    gap:8px;
    padding:10px 14px;
    border:1px solid transparent;
    border-radius:13px;
    color:#5c6470;
    font-size:14px;
    font-weight:900;
    letter-spacing:-.1px;
    transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.pagoEfectivoChip::before{
    display:grid;
    place-items:center;
    width:26px;
    height:26px;
    flex:0 0 26px;
    border-radius:9px;
    background:#e8ebef;
    color:#5c6470;
    font-size:14px;
    font-weight:950;
    line-height:1;
    transition:background .16s ease,color .16s ease,transform .16s ease;
}
.pagoEfectivoChip:has(#pagoJusto)::before{content:"✓";}
.pagoEfectivoChip:has(#pagoConMonto)::before{content:"$";}
.pagoEfectivoChip:active{transform:scale(.985);}
.pagoEfectivoChip:has(input:checked){
    border-color:rgba(226,25,44,.2);
    background:#fff;
    color:#171b24;
    box-shadow:0 5px 16px rgba(20,28,42,.09),0 0 0 2px rgba(226,25,44,.06);
}
.pagoEfectivoChip:has(input:checked)::before{
    background:#e2192c;
    color:#fff;
    transform:scale(1.03);
}
.grupoMontoEfectivoSutil{
    width:min(100%,350px);
    margin-top:10px!important;
    padding:10px 12px 12px!important;
    border:1px solid #e7eaf0;
    border-radius:15px;
    background:#fafbfc;
    box-shadow:0 5px 18px rgba(20,28,42,.045);
}
.grupoMontoEfectivoSutil .importeEfectivoInput{
    min-height:46px;
    border-color:#d9dee6!important;
    background:#fff;
}
@media(max-width:420px){
    .pagoEfectivoSelector,.grupoMontoEfectivoSutil{width:100%;}
}


/* =========================================================
   RC31.133 — Checkout simplificado
   La modalidad de entrega se decide antes, en portada / Mi pedido.
   Los controles se conservan en el DOM para mantener la lógica existente.
========================================================= */
.checkoutSeccionEntrega--oculta {
    display: none !important;
}
