/* Tipografía administrativa unificada con la pantalla Resumen. */
.crtp-admin-app {
    font-size: 16px !important;
}

.crtp-admin-header h1 {
    white-space: nowrap !important;
    font-size: 36px !important;
    line-height: 1.1 !important;
}

.crtp-admin-header p:last-child {
    font-size: 17px !important;
    font-weight: 600 !important;
}

.crtp-shell .crtp-side button[data-crtp-tab] {
    color: #0b0b0b !important;
    font-size: 17.5px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

.crtp-shell .crtp-side>b {
    color: #0b0b0b !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

.crtp-console-main h2 {
    font-size: 30px !important;
}

.crtp-console-main h3 {
    font-size: 22px !important;
}

.crtp-console-main p,
.crtp-console-main label,
.crtp-console-main th,
.crtp-console-main td {
    font-size: 16px !important;
}

.crtp-console-main small,
.crtp-console-main td small {
    font-size: 15px !important;
}

.crtp-console-main button,
.crtp-console-main input,
.crtp-console-main select,
.crtp-console-main textarea,
.crtp-console-main summary {
    font-size: 16px !important;
}

@media (max-width: 1100px) {
    .crtp-admin-header h1 {
        font-size: 31px !important;
    }
}

@media (max-width: 760px) {
    .crtp-admin-header h1 {
        white-space: normal !important;
        font-size: 29px !important;
    }

    .crtp-shell .crtp-side button[data-crtp-tab] {
        font-size: 16px !important;
    }
}

/* El menú administrativo conserva siempre la misma geometría. */
.crtp-admin-shell {
    align-items: stretch !important;
}

.crtp-admin-shell .crtp-side.crtp-console-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    align-content: flex-start !important;
    gap: 8px !important;
    height: auto !important;
    min-height: 100% !important;
    overflow-y: auto !important;
}

.crtp-admin-shell .crtp-side.crtp-console-nav>b {
    flex: 0 0 auto !important;
}

.crtp-admin-shell .crtp-side.crtp-console-nav button[data-crtp-tab] {
    flex: 0 0 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
}

/* Unificación real del contenido de todas las pestañas administrativas. */
.crtp-admin-shell .crtp-main,
.crtp-admin-app .crtp-console-main,
.crtp-admin-app #crtp-acc {
    font-family: Arial, Helvetica, sans-serif !important;
}

.crtp-admin-shell .crtp-main h1,
.crtp-admin-shell .crtp-main h2,
.crtp-admin-shell .crtp-main h3,
.crtp-admin-shell .crtp-main h4,
.crtp-admin-shell .crtp-main summary,
.crtp-admin-app .crtp-console-main h1,
.crtp-admin-app .crtp-console-main h2,
.crtp-admin-app .crtp-console-main h3,
.crtp-admin-app .crtp-console-main h4,
.crtp-admin-app .crtp-console-main summary,
.crtp-admin-app #crtp-acc h1,
.crtp-admin-app #crtp-acc h2,
.crtp-admin-app #crtp-acc h3,
.crtp-admin-app #crtp-acc h4,
.crtp-admin-app #crtp-acc .crtp-acc-head b,
.crtp-admin-app #crtp-acc .crtp-acc-card-top b {
    font-family: Georgia, 'Times New Roman', serif !important;
}

.crtp-admin-shell .crtp-main p,
.crtp-admin-shell .crtp-main span,
.crtp-admin-shell .crtp-main b,
.crtp-admin-shell .crtp-main small,
.crtp-admin-shell .crtp-main label,
.crtp-admin-shell .crtp-main th,
.crtp-admin-shell .crtp-main td,
.crtp-admin-shell .crtp-main button,
.crtp-admin-shell .crtp-main input,
.crtp-admin-shell .crtp-main select,
.crtp-admin-shell .crtp-main textarea,
.crtp-admin-app .crtp-console-main p,
.crtp-admin-app .crtp-console-main span,
.crtp-admin-app .crtp-console-main b,
.crtp-admin-app .crtp-console-main small,
.crtp-admin-app .crtp-console-main label,
.crtp-admin-app .crtp-console-main th,
.crtp-admin-app .crtp-console-main td,
.crtp-admin-app .crtp-console-main button,
.crtp-admin-app .crtp-console-main input,
.crtp-admin-app .crtp-console-main select,
.crtp-admin-app .crtp-console-main textarea,
.crtp-admin-app #crtp-acc p,
.crtp-admin-app #crtp-acc span,
.crtp-admin-app #crtp-acc b,
.crtp-admin-app #crtp-acc small,
.crtp-admin-app #crtp-acc label,
.crtp-admin-app #crtp-acc button,
.crtp-admin-app #crtp-acc input,
.crtp-admin-app #crtp-acc select,
.crtp-admin-app #crtp-acc textarea {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Cabeceras que se imprimen como texto en tarjetas o barras informativas. */
.crtp-admin-app .crtp-audit-retention>b,
.crtp-admin-app .crtp-section-title h2,
.crtp-admin-app .crtp-users-heading h2,
.crtp-admin-app .crtp-acc-head h3,
.crtp-admin-app #crtp-acc .crtp-acc-card-top b {
    font-family: Georgia, 'Times New Roman', serif !important;
}

.crtp-admin-app .crtp-audit-retention p,
.crtp-admin-app .crtp-audit-retention button {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Especificación final: Arial en todo el panel administrativo. */
.crtp-admin-app,
.crtp-admin-app h1,
.crtp-admin-app h2,
.crtp-admin-app h3,
.crtp-admin-app h4,
.crtp-admin-app p,
.crtp-admin-app span,
.crtp-admin-app b,
.crtp-admin-app small,
.crtp-admin-app label,
.crtp-admin-app th,
.crtp-admin-app td,
.crtp-admin-app button,
.crtp-admin-app input,
.crtp-admin-app select,
.crtp-admin-app textarea,
.crtp-admin-app summary,
.crtp-admin-app a {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Únicamente estas cabeceras secundarias permanecen en Georgia. */
.crtp-admin-app .crtp-summary-grid h3,
.crtp-admin-app #crtp-acc .crtp-acc-card-top b,
.crtp-admin-app #crtp-acc .crtp-acc-card-top h4 {
    font-family: Georgia, 'Times New Roman', serif !important;
}

/* Tipografía administrativa: solo contenido y cabeceras; el menú lateral no cambia. */
.crtp-admin-shell .crtp-main h1,
.crtp-admin-shell .crtp-main h2,
.crtp-admin-shell .crtp-main h3,
.crtp-admin-shell .crtp-main h4,
.crtp-admin-shell .crtp-main summary,
.crtp-admin-app .crtp-admin-header h1,
.crtp-admin-app .crtp-console-main h2,
.crtp-admin-app .crtp-console-main h3,
.crtp-admin-app .crtp-console-main h4 {
    font-family: Georgia, 'Times New Roman', serif !important;
}

.crtp-admin-shell .crtp-main p,
.crtp-admin-shell .crtp-main label,
.crtp-admin-shell .crtp-main th,
.crtp-admin-shell .crtp-main td,
.crtp-admin-shell .crtp-main small,
.crtp-admin-shell .crtp-main input,
.crtp-admin-shell .crtp-main select,
.crtp-admin-shell .crtp-main textarea,
.crtp-admin-shell .crtp-main button,
.crtp-admin-app .crtp-console-main p,
.crtp-admin-app .crtp-console-main label,
.crtp-admin-app .crtp-console-main th,
.crtp-admin-app .crtp-console-main td,
.crtp-admin-app .crtp-console-main small,
.crtp-admin-app .crtp-console-main input,
.crtp-admin-app .crtp-console-main select,
.crtp-admin-app .crtp-console-main textarea,
.crtp-admin-app .crtp-console-main button {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Login administrativo: fondo verde pradera y contraste académico. */
.crtp-admin-login-screen {
    background: #ddf3df !important;
}

.crtp-admin-login-card {
    border: 1px solid #b7cdb9 !important;
    background: #ffffff !important;
    box-shadow: 0 16px 40px rgba(22, 74, 42, .22) !important;
}

.crtp-admin-login-card .crtp-eyebrow,
.crtp-admin-login-card p,
.crtp-admin-login-card label {
    color: #1a2530 !important;
    font-weight: 800 !important;
}

.crtp-admin-login-card h1 {
    color: #0b2a4a !important;
}

.crtp-admin-login-card input {
    border: 2px solid #6f879f !important;
    background: #f7fff7 !important;
    color: #0f1720 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

.crtp-admin-login-card input:focus {
    outline: 0 !important;
    border-color: #0b2a4a !important;
    box-shadow: 0 0 0 3px rgba(11, 42, 74, .18) !important;
}

.crtp-admin-login-card button {
    background: #0b2a4a !important;
    color: #ffffff !important;
}

.crtp-admin-login-card button:hover {
    background: #12406e !important;
}

/* Panel administrativo: cabecera y menú lateral estables. */
.crtp-admin-shell .crtp-main>.crtp-admin-header,
.crtp-admin-app .crtp-admin-header {
    background: #123e68 !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 10px !important;
    min-height: 112px !important;
    padding: 22px 26px !important;
}

.crtp-admin-shell .crtp-admin-header h1,
.crtp-admin-shell .crtp-admin-header p,
.crtp-admin-shell .crtp-admin-header b,
.crtp-admin-shell .crtp-admin-header span,
.crtp-admin-app .crtp-admin-header h1,
.crtp-admin-app .crtp-admin-header p,
.crtp-admin-app .crtp-admin-header b,
.crtp-admin-app .crtp-admin-header span {
    color: #ffffff !important;
}

.crtp-admin-shell .crtp-admin-header h1,
.crtp-admin-app .crtp-admin-header h1 {
    white-space: nowrap !important;
    font-size: 36px !important;
    line-height: 1.12 !important;
}

.crtp-admin-shell .crtp-admin-logout,
.crtp-admin-app .crtp-admin-logout {
    background: #ffffff !important;
    color: #0b2a4a !important;
    border: 1px solid #ffffff !important;
}

.crtp-admin-shell .crtp-admin-logout:hover,
.crtp-admin-app .crtp-admin-logout:hover {
    background: #eef6fb !important;
    color: #0b2a4a !important;
}

.crtp-admin-shell .crtp-side.crtp-console-nav,
.crtp-admin-shell .crtp-side {
    background: #123e68 !important;
    border-right: 1px solid #2d668f !important;
}

.crtp-admin-shell .crtp-side>b,
.crtp-admin-shell .crtp-side button[data-crtp-tab] {
    color: #ffffff !important;
}

.crtp-admin-shell .crtp-side button[data-crtp-tab] {
    background: transparent !important;
}

.crtp-admin-shell .crtp-side button[data-crtp-tab]:hover {
    background: #28577f !important;
    color: #ffffff !important;
}

.crtp-admin-shell .crtp-side button[data-crtp-tab].active {
    background: #ffffff !important;
    color: #0b2a4a !important;
    border-color: #ffffff !important;
}

.crtp-admin-shell .crtp-side-toggle {
    background: #ffffff !important;
    color: #0b0b0b !important;
    font-weight: 800 !important;
}

@media (max-width: 760px) {
    .crtp-admin-shell .crtp-admin-header h1,
    .crtp-admin-app .crtp-admin-header h1 {
        white-space: normal !important;
        font-size: 29px !important;
    }
}
