@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');

html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: 0; /* Eliminar margen por defecto que generaba espacio a la izquierda */
    padding: 0;
}

a, .btn-link {
    color: #0366d6;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.content {
    padding-top: 1.1rem;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

/* ===================================
   ESTILOS DE IMPRESIÓN GLOBALES
   =================================== */
@media print {
    /* Ocultar elementos de navegación y UI */
    .sidebar,
    .sidebar-nav,
    nav,
    header,
    .breadcrumb,
    .no-print,
    button,
    .btn,
    .btn-group,
    .alert,
    .navbar,
    .top-row,
    .modal-backdrop,
    .blazor-modal-backdrop,
    .overlay,
    .modal,
    .fade,
    #blazor-error-ui {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }

    /* Resetear el contenedor principal */
    body {
        background: white !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    main {
        margin: 0 !important;
        padding: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    .container-fluid {
        padding: 0 !important;
        margin: 0 !important;
        max-width: 100% !important;
    }

    /* Mostrar solo el contenido imprimible */
    .enrollment-sheet,
    .progress-report,
    .receipt-document {
        margin: 0 auto !important;
        padding: 20px !important;
        box-shadow: none !important;
        position: relative !important;
        z-index: 9999 !important;
        background: white !important;
    }

    /* Forzar visibilidad del contenido imprimible */
    .enrollment-sheet *,
    .progress-report *,
    .receipt-document * {
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Ocultar específicamente el sidebar y todas sus variaciones */
    aside,
    [class*="sidebar"],
    [class*="Sidebar"],
    [class*="side-nav"],
    .app-sidebar,
    #sidebar {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* Resetear cualquier overlay o backdrop */
    div[style*="background"],
    div[style*="rgba"] {
        background: transparent !important;
    }

    /* Evitar saltos de página en elementos importantes */
    .card,
    table,
    .sheet-header {
        page-break-inside: avoid !important;
    }

    /* Configurar márgenes de página */
    @page {
        margin: 1.5cm;
        size: letter;
    }

    /* Asegurar que los colores se impriman correctamente */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
}
