:root { 
    --brand-color: #C0288F; 
    --brand-hover: #a02178; 
}

body { 
    background-color: #f4f7f6; 
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
}

.card { 
    border-radius: 12px; 
    border: none; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.08); 
}

.btn-brand { 
    background-color: var(--brand-color); 
    color: white; 
    border: none; 
}

.btn-brand:hover { 
    background-color: var(--brand-hover); 
    color: white; 
}

.logo-container { 
    text-align: center; 
    margin-bottom: 2rem; 
}

.logo-container svg { 
    width: 240px; 
    height: auto; 
}

.info-box { 
    background-color: #ffffff; 
    border-left: 4px solid var(--brand-color); 
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

@media (max-width: 575.98px) {
    .border-sm-end { border-right: none !important; }
    .mobile-stack-border { 
        border-bottom: 1px solid #dee2e6; 
        padding-bottom: 12px; 
        margin-bottom: 12px; 
    }
}

/* ==========================================================================
   ESTILOS DE IMPRESIÓN (Escalado al 200% y optimizado para PDF)
   ========================================================================== */
@media print {
    /* Forzamos fondo blanco y tipografía limpia */
    body {
        background-color: #ffffff !important;
        color: #000000 !important;
        font-family: Arial, sans-serif;
    }
    
    /* Quitamos los contenedores restrictivos de Bootstrap */
    .container, .row {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Seleccionamos la columna del comprobante y aplicamos un zoom real del 200% */
    .col-md-5, .col-lg-4 {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 auto !important;
        
        /* Aplicamos escala al doble de tamaño y fijamos el punto de origen arriba al centro */
        transform: scale(2.0);
        transform-origin: top center;
        margin-top: 40px !important; /* Espacio de cortesía superior en la hoja */
    }

    /* Quitamos sombras y bordes del contenedor en el papel */
    .card {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        background: transparent !important;
    }

    /* Forzamos que las etiquetas de texto de Bootstrap mantengan un color legible */
    .text-muted {
        color: #555555 !important;
    }

    /* Ocultamos de forma absoluta botones, alertas y claves */
    .btn, 
    .collapse, 
    #collapseClave, 
    .alert,
    .d-grid,
    .mt-4.pt-3.border-top.text-center { /* Oculta también el texto de 'Última actualización' si no lo querés */
        display: none !important;
    }

    /* Rediseño de la caja de datos principales (Mes y Fecha) */
    .info-box {
        border: 1px solid #000000 !important;
        background-color: #ffffff !important;
        margin-top: 25px !important;
        margin-bottom: 25px !important;
        padding: 10px 0 !important; /* Un poco de aire vertical interno */
    }

    /* ALINEACIÓN A LA DERECHA Y DIVISORIA PARA LA PRIMERA COLUMNA */
    .mobile-stack-border {
        border-right: 1px solid #000000 !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
        
        text-align: right !important; /* Alinea los textos a la derecha */
        padding-right: 15px !important; /* Separa el texto de la línea negra central */
    }
    
    /* Alineación de cortesía para la segunda columna (Fecha de pago) */
    .info-box .row > div:not(.mobile-stack-border) {
        text-align: left !important; /* Se apoya contra la línea del medio */
        padding-left: 15px !important;
    }

    /* Forzamos que los textos internos de la caja sean visibles y no se pisen */
    .info-box span, .info-box small {
        display: block !important;
        line-height: 1.4 !important;
    }
    
    /* Escalado prolijo del logo dentro del entorno del 200% */
    .logo-container svg {
        width: 140px !important;
        margin: 0 auto 15px auto !important;
        display: block !important;
    }

    /* Aseguramos que los badges de servicios adicionales se lean perfectos */
    .badge {
        border: 1px solid #000000 !important;
        color: #000000 !important;
        background-color: #f0f0f0 !important;
        padding: 4px 8px !important;
    }
}