/* =====================================================
   RECLAMACIÓN DE UN PAGO REALIZADO A TRAVÉS DE EMV
   Formulario: reutiliza atencion-al-cliente.css (atc-*) y
   solicitud-recibo-pago-con-tarjeta.css (srp-*).
   Aquí sólo la presentación, el importe y el aviso legal.
===================================================== */

/* --- Presentación: cartel del Consorcio + explicación --- */

.emv-intro {
    display: grid;
    grid-template-columns: minmax(0, 15rem) minmax(0, 1fr);
    gap: var(--lv-s5);
    align-items: center;
    max-width: 62rem;
    margin-bottom: var(--lv-s6);
}

.emv-intro--solo {
    grid-template-columns: minmax(0, 1fr);
}

/* El cartel ya trae su propio marco: se muestra tal cual */
.emv-poster {
    margin: 0;
}

.emv-poster img {
    display: block;
    width: 100%;
    max-width: 263px;   /* tamaño original: no se amplía */
    height: auto;
}

.emv-intro__text {
    max-width: 38rem;
    color: var(--lv-ink-2);
    font-size: var(--lv-fs-base);
    line-height: 1.65;
}

.emv-intro__text p {
    margin: 0 0 1em;
}

.emv-intro__text p:last-child {
    margin-bottom: 0;
}

.emv-intro--solo .emv-intro__text {
    padding-left: var(--lv-s3);
    border-left: 4px solid var(--lv-green);
}


/* --- Importe con la unidad fija a la derecha --- */

.emv-amount {
    display: flex;
    align-items: stretch;
}

.emv-amount input[type="text"] {
    min-width: 0;
    border-radius: var(--lv-radius-sm) 0 0 var(--lv-radius-sm);
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.emv-amount__unit {
    display: flex;
    align-items: center;
    padding: 0 1rem;
    border: 1px solid var(--atc-field-border);
    border-left: 0;
    border-radius: 0 var(--lv-radius-sm) var(--lv-radius-sm) 0;
    background: var(--lv-platform);
    color: var(--lv-ink-2);
    font-weight: 600;
}

.atc-field input[type="time"] {
    display: block;
    width: 100%;
    min-height: 48px;
    padding: .75rem .875rem;
    border: 1px solid var(--atc-field-border);
    border-radius: var(--lv-radius-sm);
    background: var(--lv-white);
    color: var(--lv-ink);
    font-family: var(--lv-font);
    font-size: var(--lv-fs-base);
    line-height: 1.5;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.atc-field input[type="time"]:hover {
    border-color: var(--lv-ink);
}

.atc-field input[type="time"]:focus-visible {
    border-color: var(--lv-blue);
    box-shadow: 0 0 0 3px rgba(48, 57, 144, .25);
    outline: 0;
}


/* --- Consentimiento: alineado con la columna de campos --- */

.emv-consent {
    max-width: 62rem;
    margin-top: 0;
    margin-bottom: 0;
}

/* Casilla y botón forman un único cierre: un solo filete, el de la casilla */
.emv-page .srp-actions {
    margin-top: var(--lv-s2);
    padding-top: 0;
    border-top: 0;
}


/* --- Protección de datos --- */

.emv-legal {
    max-width: 62rem;
}

.emv-legal-list {
    margin: 0 0 1em;
}

.emv-legal-list > div {
    padding: .375rem 0;
    border-bottom: 1px solid var(--lv-rule);
}

.emv-legal-list > div:last-child {
    border-bottom: 0;
}

.emv-legal-list dt {
    display: inline;
    color: var(--lv-ink);
    font-weight: 600;
}

.emv-legal-list dd {
    display: inline;
    margin: 0;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (min-width: 992px) {

    .emv-consent {
        padding-left: calc(15rem + var(--lv-s5));
    }
}

@media (max-width: 767px) {

    .emv-intro {
        grid-template-columns: minmax(0, 1fr);
        gap: var(--lv-s3);
        margin-bottom: var(--lv-s5);
    }

    .emv-poster {
        max-width: 15rem;
    }
}

@media (prefers-reduced-motion: reduce) {

    .atc-field input[type="time"] {
        transition: none;
    }
}
