/* Version 1.15 */

/* LOGIN */

:root {
    --baseColor: #ffffff;
}

/* helpers/align.css */

.align {
    display: grid;
    place-items: center;
}

.grid {
    inline-size: 90%;
    margin-inline: auto;
    max-inline-size: 20rem;
}

/* helpers/hidden.css */

.hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* helpers/icon.css */

:root {
    --iconFill: var(--baseColor);
}

.icons {
    display: none;
}

.icon {
    block-size: 1em;
    display: inline-block;
    fill: var(--iconFill);
    inline-size: 1em;
    vertical-align: middle;
}

/* layout/base.css */

:root {
    --htmlFontSize: 100%;

    --bodyBackgroundColor: #2c3338;
    --bodyColor: var(--baseColor);
    --bodyFontFamily: "Open Sans";
    --bodyFontFamilyFallback: sans-serif;
    --bodyFontSize: 0.875rem;
    --bodyFontWeight: 400;
    --bodyLineHeight: 1.5;
}

* {
    box-sizing: inherit;
}

html {
    box-sizing: border-box;
    font-size: var(--htmlFontSize);
}

body {
    background-color: var(--bodyBackgroundColor);
    color: var(--bodyColor);
    font-family: var(--bodyFontFamily), var(--bodyFontFamilyFallback);
    font-size: var(--bodyFontSize);
    font-weight: var(--bodyFontWeight);
    line-height: var(--bodyLineHeight);
    margin: 0;
    min-block-size: 100vh;
}

/* modules/anchor.css */

:root {
    --anchorColor: #eee;
}

a {
    color: var(--anchorColor);
    outline: 0;
    text-decoration: none;
}

a:focus,
a:hover {
    text-decoration: underline;
}

/* modules/form.css */

:root {
    --formGap: 0.875rem;
}

input {
    background-image: none;
    border: 0;
    color: inherit;
    font: inherit;
    margin: 0;
    outline: 0;
    padding: 0;
    transition: background-color 0.3s;
}

input[type="submit"] {
    cursor: pointer;
}

.form {
    display: grid;
    gap: var(--formGap);
}

.form input[type="password"],
.form input[type="text"],
.form input[type="submit"] {
    inline-size: 100%;
}

.form__field {
    display: flex;
}

.form__input {
    flex: 1;
}

/* modules/login.css */

:root {
    --loginBorderRadus: 0.25rem;
    --loginColor: #eee;

    --loginInputBackgroundColor: #3b4148;
    --loginInputHoverBackgroundColor: #434a52;

    --loginLabelBackgroundColor: #363b41;

    --loginSubmitBackgroundColor: #103c79;
    --loginSubmitColor: #eee;
    --loginSubmitHoverBackgroundColor: #103c7985;
}

.login {
    color: var(--loginColor);
}

.login label,
.login input[type="text"],
.login input[type="password"],
.login input[type="submit"] {
    border-radius: var(--loginBorderRadus);
    padding: 1rem;
}

.login label {
    background-color: var(--loginLabelBackgroundColor);
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    padding-inline: 1.25rem;
}

.login input[type="password"],
.login input[type="text"] {
    background-color: var(--loginInputBackgroundColor);
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

.login input[type="password"]:focus,
.login input[type="password"]:hover,
.login input[type="text"]:focus,
.login input[type="text"]:hover {
    background-color: var(--loginInputHoverBackgroundColor);
}

.login input[type="submit"] {
    background-color: var(--loginSubmitBackgroundColor);
    color: var(--loginSubmitColor);
    font-weight: 700;
    text-transform: uppercase;
}

.login input[type="submit"]:focus,
.login input[type="submit"]:hover {
    background-color: var(--loginSubmitHoverBackgroundColor);
}

/* modules/text.css */

p {
    margin-block: 1.5rem;
}

.text--center {
    text-align: center;
}

/* FIN LOGIN */

/* MENU */
@import 'https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap" rel="stylesheet';

:root {
    --dk-gray-100: #f3f4f6;
    --dk-gray-200: #E5E7EB;
    --dk-gray-300: #D1D5DB;

    /* color del texto del menu */
    --dk-gray-400: #ffffffd2;
    /* Fin color del texto del menu */

    --dk-gray-500: #6B7280;
    --dk-gray-600: #4B5563;
    --dk-gray-700: #374151;
    --dk-gray-800: #1F2937;
    --dk-gray-900: #111827;

    /* Color de la card */
    --dk-dark-bg: #2c3338;
    /* Fin color de las cards */

    /* color del body del login */
    --dk-darker-bg: #313944;
    /* Fin color del body del login */

    /* color de body del menu */
    --special-container-bg: #ffffff;
    /* fin color de body del menu  */

    --navbar-bg-color: #103c79;
    --sidebar-bg-color: #2c3338;
    --sidebar-width: 250px;
}

body {
    background-color: var(--dk-darker-bg);
}

.login-body {
    background-color: var(--special-container-bg);
}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    background-color: var(--dk-darker-bg);
    font-size: .925rem;
}

#wrapper {
    margin-left: var(--sidebar-width);
    transition: all .3s ease-in-out;
}

#wrapper.fullwidth {
    margin-left: 0;
}



/** --------------------------------
 -- Sidebar
-------------------------------- */
.sidebar {
    background-color: var(--sidebar-bg-color);
    width: var(--sidebar-width);
    transition: all .3s ease-in-out;
    transform: translateX(0);
    z-index: 9999999
}

.sidebar .close-aside {
    position: absolute;
    top: 7px;
    right: 7px;
    cursor: pointer;
    color: #EEE;
}

.sidebar .sidebar-header {
    border-bottom: 1px solid #2a2b3c
}

.sidebar .sidebar-header h5 a {
    color: var(--dk-gray-300)
}

.sidebar .sidebar-header p {
    color: var(--dk-gray-400);
    font-size: .825rem;
}

.sidebar .search .form-control~i {
    color: #2b2f3a;
    right: 40px;
    top: 22px;
}

.sidebar>ul>li {
    padding: .7rem 1.75rem;
}

.sidebar ul>li>a {
    color: var(--dk-gray-400);
    text-decoration: none;
}

/* Start numbers */
.sidebar ul>li>a>.num {
    line-height: 0;
    border-radius: 3px;
    font-size: 14px;
    padding: 0px 5px
}

.sidebar ul>li>i {
    font-size: 18px;
    margin-right: .7rem;
    color: var(--dk-gray-500);
}

.sidebar ul>li.has-dropdown>a:after {
    content: '\eb3a';
    font-family: unicons-line;
    font-size: 1rem;
    line-height: 1.8;
    float: right;
    color: var(--dk-gray-500);
    transition: all .3s ease-in-out;
}

.sidebar ul .opened>a:after {
    transform: rotate(-90deg);
}

/* Start dropdown menu */
.sidebar ul .sidebar-dropdown {
    padding-top: 10px;
    padding-left: 30px;
    display: none;
}

.sidebar ul .sidebar-dropdown.active {
    display: block;
}

.sidebar ul .sidebar-dropdown>li>a {
    font-size: .85rem;
    padding: .5rem 0;
    display: block;
}

/* End dropdown menu */

.show-sidebar {
    transform: translateX(-270px);
}

@media (max-width: 767px) {
    .sidebar ul>li {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .sidebar .search {
        padding: 10px 0 10px 30px
    }
}

/** --------------------------------
 -- welcome
-------------------------------- */
.welcome {
    color: var(--dk-gray-300);
}

.welcome .content {
    background-color: var(--dk-dark-bg);
}

.welcome p {
    color: var(--dk-gray-400);
}

/** --------------------------------
 -- Charts
-------------------------------- */
.charts .chart-container {
    background-color: var(--dk-dark-bg);
}

.charts .chart-container h3 {
    color: var(--dk-gray-400)
}

.main-color {
    color: #ffc107
}


.navbar {
    background-color: var(--navbar-bg-color) !important;
    border: none !important;
}

.navbar .dropdown-menu {
    right: auto !important;
    left: 0 !important;
}

.navbar .navbar-nav>li>a {
    color: #EEE !important;
    line-height: 55px !important;
    padding: 0 10px !important;
}

.navbar .navbar-brand {
    color: #FFF !important
}

.navbar .navbar-nav>li>a:focus,
.navbar .navbar-nav>li>a:hover {
    color: #EEE !important
}

.navbar .navbar-nav>.open>a,
.navbar .navbar-nav>.open>a:focus,
.navbar .navbar-nav>.open>a:hover {
    background-color: transparent !important;
    color: #FFF !important
}

.navbar .navbar-brand {
    line-height: 55px !important;
    padding: 0 !important
}

.navbar .navbar-brand:focus,
.navbar .navbar-brand:hover {
    color: #FFF !important
}

.navbar>.container .navbar-brand,
.navbar>.container-fluid .navbar-brand {
    margin: 0 !important
}

@media (max-width: 767px) {
    .navbar>.container-fluid .navbar-brand {
        margin-left: 15px !important;
    }

    .navbar .navbar-nav>li>a {
        padding-left: 0 !important;
    }

    .navbar-nav {
        margin: 0 !important;
    }

    .navbar .navbar-collapse,
    .navbar .navbar-form {
        border: none !important;
    }
}

.navbar .navbar-nav>li>a {
    float: left !important;
}

.navbar .navbar-nav>li>a>span:not(.caret) {
    background-color: #e74c3c !important;
    border-radius: 50% !important;
    height: 25px !important;
    width: 25px !important;
    padding: 2px !important;
    font-size: 11px !important;
    position: relative !important;
    top: -10px !important;
    right: 5px !important
}

.dropdown-menu>li>a {
    padding-top: 5px !important;
    padding-right: 5px !important;
}

.navbar .navbar-nav>li>a>i {
    font-size: 18px !important;
}


/* Start media query */

@media (max-width: 767px) {
    #wrapper {
        margin: 0 !important
    }

    .statistics .box {
        margin-bottom: 25px !important;
    }

    .navbar .navbar-nav .open .dropdown-menu>li>a {
        color: #CCC !important
    }

    .navbar .navbar-nav .open .dropdown-menu>li>a:hover {
        color: #FFF !important
    }

    .navbar .navbar-toggle {
        border: none !important;
        color: #EEE !important;
        font-size: 18px !important;
    }

    .navbar .navbar-toggle:focus,
    .navbar .navbar-toggle:hover {
        background-color: transparent !important
    }
}

::-webkit-scrollbar {
    background: transparent;
    width: 5px;
    height: 5px;
}

::-webkit-scrollbar-thumb {
    background-color: #3c3f58;
}

::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.3);
}

/* FIN MENU */


/* AYUDAS */
.btn-ayuda {
    background-color: #ffffff;
    /* Color de fondo azul */
    color: rgb(0, 0, 0);
    /* Texto blanco */
    border: none;
    /* Sin borde */
    padding: 10px 20px;
    /* Espaciado interno */
    text-align: center;
    /* Texto centrado */
    text-decoration: none;
    /* Sin subrayado */
    display: inline-block;
    font-size: 16px;
    margin: 4px 2px;
    cursor: pointer;
    border-radius: 12px;
    /* Bordes redondeados */
    transition: background-color 0.3s ease;
    /* Transición suave */
}

.btn-ayuda:hover {
    background-color: #2c3338;
    color: white;
    /* Color de fondo al pasar el mouse */
}

.btn-ayuda:active {
    background-color: #103c79;
    /* Color de fondo al hacer clic */
    transform: scale(0.98);
    /* Reducir ligeramente el tamaño al hacer clic */
    transition: transform 0.1s ease;
    /* Transición suave */
}

.image-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px;
    /* Ajusta la altura según sea necesario */
}

.image-container img {
    max-width: 100%;
    /* Asegura que la imagen no exceda el ancho del contenedor */
    height: auto;
    /* Mantiene la proporción de la imagen */
    border-radius: 15px;
}


/* FIN AYUDAS */

/* Boton buscar */
.custom-btn {
    background-color: #103c79;
    color: #ffffff;

    transition: background-color 0.3s ease;
}

.custom-btn:hover {
    background-color: #0056b3;
}

/* FIN BOTON BUSCAR */

/* Nombre del director */

#nombre_director {
    color: #ffffff;
}

/* Fin nombre del director  */

#change-chart {
    background-color: #0056b3;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 16px;
}

/* Inicio boton cambiar grafica */

#change-chart:hover {
    background-color: #0057b3a6;
}

/* Fin boton cambiar grafica  */

/* Inicio Modal de cambio de permisos */

.modal-header {
    background-color: #103c79;
}

.modal-body {
    background-color: #2c3338;
}

.modal-footer {
    background-color: #103c79;
}

/* Fin Modal de cambio de permisos */


/* Inicio Tabla permisos */

.custom-th {
    /* text-align: center; */
    vertical-align: middle;
    color: #084894 !important;
}

.bg-color1 {
    background-color: #c5c5c5 !important;
    /* Gris */
}



/* Fin tabla permisos */



.error-message {
    color: #ffbb00;
}


.border {
    background-color: #2c3338;

}


.custom-close-btn {
    background-color: transparent;
    color: #bb2d3b;
    font-weight: bold;
    border: none;
}

.custom-alert-style {
    background-color: #103c79;
    color: #ffc120;
    font-size: 1.rem;
}




.sidebar-header img {
    width: 40%;
    height: 40%;
    display: block;
    /* Hace que la imagen sea un bloque para centrarla verticalmente */
    margin: 0 auto;
    /* Centra la imagen horizontalmente */
}

/* CSS DEL PDF */


.custom-reporte-form {
    background-color: #2c3e50;
    padding: 20px;
    border-radius: 5px;
    color: white;
    margin: 20px auto;
    width: 100%;
    height: 50%;
    font-size: 15px;

}

.custom-reporte-form label {
    display: block;
    margin-bottom: 0.5em;
    color: white;
    font-size: 15px;
}

.custom-reporte-form .custom-form-group {
    margin-bottom: 1em;
}

.custom-reporte-form .custom-form-select {
    width: 100%;

    font-size: 15px;
    padding: 0.60em;
    border-radius: 4px;
    border: 1px solid #7f8c8d;
    background-color: white;
    color: #34495e;
}

.custom-reporte-form .custom-btn-submit {
    display: block;
    /* Ajustar a bloque para que ocupe toda la línea */
    width: 100%;
    /* Asegurar que el botón se extienda a todo el ancho */
    padding: 10px;
    margin-top: 10px;
    /* Añadir un poco de margen en la parte superior */
    border: none;
    border-radius: 4px;
    background-color: #ffbb00;
    color: rgb(0, 0, 0);
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.custom-reporte-form .custom-btn-submit:hover {
    background-color: #2980b9;
    color: white;
}

/* FIN DEL CSS DEL PDF */

.Agregardocentes {
    background-color: #2c3338;
    height: 100%;
    border-left: 4px solid #103c79;
}

.editardocentes {
    background-color: #2c3338;
    height: 100%;
    border-left: 4px solid #103c79;
}

.Eliminar-docentes-div {
    background-color: #2c3338;
    height: 100%;
    border-left: 4px solid #103c79;
}

/* Responsive styles */
@media (max-width: 992px) {

    /* Adjust breakpoint as needed */
    .charts .row {
        flex-direction: column;
        /* Stack the columns vertically on smaller screens */
    }

    .charts .col-lg-6 {
        width: 100%;
        /* Make each column full width on smaller screens */
        margin-bottom: 15px;
        /* Add some space between the stacked columns */
    }

    /* Adjust padding and margins as needed for smaller screens */
    .Eliminar-docentes-div {
        padding: 1rem;
        /* Reduce padding on smaller screens */
    }
}

/* More specific rules for very small screens, such as mobile phones */
@media (max-width: 576px) {

    /* Adjust font sizes, padding, margins, etc., to suit smaller screens */
    h3.fs-6,
    .Eliminar-docentes-div ol li {
        font-size: smaller;
        /* Make the font size smaller for very small screens */
    }
}

/* Ensure that all form elements take full width on smaller screens */
.form-control,
.btn-special,
.form-select {
    width: 100%;
    /* Full width */
}

/* Adjust padding and margins for smaller screens */
@media (max-width: 768px) {

    .chart-container,
    .Agregardocentes {
        padding: 15px;
    }
}

/* Further adjustments for even smaller screens */
@media (max-width: 576px) {
    .chart-container {
        padding: 10px;
    }

    /* Smaller text and tighter layout for very small devices */
    h3 {
        font-size: 1.2rem;
    }

    .btn-special {
        padding: 10px 15px;
    }
}


/* CSS MENU PHP */

.welcome-area .welcome-content {
    background-color: #fff;
    border-left: 6px solid #103c79;
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 8px;
}

.welcome-title {
    color: #333;
    font-size: 24px;
    margin-bottom: 10px;
    text-align: center;
    font-weight: bold;
}

.welcome-text {
    color: #2c3338;
    font-size: 16px;
    text-align: center;
}

.welcome-info {
    color: #103c79
}

.welcome-list {
    color: #1F2937;
}

.action-section {
    padding: 20px;
    background-color: #f8f9fa;
}

.action-container {
    border-left: 6px solid #103c79;
    background-color: #ffffff;
    padding: 30px;
    border-radius: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.action-container:hover {
    transform: translateY(-5px);
}

.action-title {
    font-size: 20px;
    color: #333;
    margin-bottom: 20px;
    font-weight: 600;
}

.btn-custom {
    background-color: #103c79;
    color: #ffffff;
    padding: 10px 25px;
    border-radius: 25px;
    font-size: 16px;
    border: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    text-decoration: none;
}

.btn-custom .icon {
    margin-right: 10px;
}

.btn-custom .text {
    font-weight: 500;
}

.btn-custom:hover {
    background-color: #0056b3;
    text-decoration: none;
    color: #ffffff;
}

.btn-custom:focus {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

/* FIN CSS MENU PHP */

/* CSS DE LOS NAVBAR */
.navbar-custom {
    background-color: #103c79;
    /* Un color azul más oscuro para un mejor contraste */
    padding: 10px 15px;
    /* Ajustar el padding para un mejor aspecto visual */
    box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
    /* Una sutil sombra para dar profundidad */
}

.navbar-custom .navbar-header .navbar-toggler {
    border: none;
    /* Eliminar el borde predeterminado */
    outline: none;
    /* Eliminar el contorno al hacer clic */
}

.navbar-custom .navbar-header .navbar-brand {
    color: #ffffff;
    /* Cambiar el color del texto para una mejor legibilidad */
    font-size: 24px;
    /* Aumentar el tamaño de la fuente para darle más presencia */
    font-weight: bold;
    /* Hacer el texto más grueso */
    padding: 5px 0;
    /* Ajustar el padding verticalmente */
}

.navbar-custom .navbar-header .navbar-brand:hover {
    color: #e2e2e2;
    /* Un ligero cambio de color al pasar el cursor */
    text-decoration: none;
    /* Eliminar la subrayado al pasar el cursor */
}

/* FIN CSS DE LOS NAVBAR */

/* CSS LISTADO DE SECCIONES */

.minimalist-categories {
    list-style: none;
    padding-left: 0;
    margin-top: 20px;
}

.minimalist-link {
    display: block;
    color: #333;
    padding: 9px 10px;
    text-decoration: none;
    font-size: 16px;
    transition: color 0.2s ease-in-out;
}

.minimalist-link:hover {
    color: #ffbb00;
    /* Solo cambia el color del texto al pasar el cursor */
}

/* Estilo para el botón de cierre de sesión */
.logout-container {
    padding: 10px 20px;
    text-align: center;
}

.logout-button {
    color: #fff;
    background-color: #dc3545;
    border: none;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.logout-button:hover {
    background-color: #bd2130;
}

/* FIN CSS LISTADO DE SECCIONES */


/* CSS ESTADÍSTICAS */

.estadística-mb {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    /* Ajustado para ocupar el 100% del ancho */
    height: 50vh;
    /* Ajustado para ocupar el 70% del alto de la ventana */
}

.col {
    width: auto;
}

.statistics-section {
    background-color: #103c79;
    padding: 10px;
    border-radius: 20px;
    color: rgb(255, 255, 255);
}

.statistic-container {
    background-color: #2c3338;
    height: 95%;
    padding: 50px 50px;
    border-radius: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.statistic-title {
    font-size: 24px;
    color: #ffffff;
    margin-bottom: 10px;
}

.statistic-subtitle {
    font-size: 16px;
    color: #bc5454;
}



/* FIN CSS ESTADÍSTICAS */

.btn-special {
    background-color: #007bff;
    /* Color principal del botón */
    color: #ffffff;
    /* Color del texto */
    border: 2px solid transparent;
    /* Borde transparente para mantener el tamaño al pasar el cursor */
    padding: 8px 16px;
    /* Ajustar padding */
    font-size: 16px;
    /* Tamaño de la fuente */
    transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
    /* Transición suave */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    /* Sombra sutil */
}

.btn-special:hover {
    background-color: #0056b3;
    /* Color más oscuro al pasar el cursor */
    border-color: #004085;
    /* Color del borde al pasar el cursor */
    transform: translateY(-1px);
    /* Efecto de 'levantarse' al pasar el cursor */
}

.btn-special:active {
    background-color: #004085;
    /* Color al hacer clic */
    transform: translateY(1px);
    /* Efecto de 'presionado' al hacer clic */
}

.btn-special-lg {
    font-size: 18px;
    /* Tamaño más grande de la fuente */
    padding: 10px 20px;
    /* Mayor padding */
}




/* CSS para ocultar el sidebar */
.sidebar.collapsed {
    margin-left: -250px;
    /* Asume que tu sidebar tiene 250px de ancho */
    transition: margin-left 0.3s ease;
}

/* CSS para adaptar el #wrapper cuando el sidebar está oculto */
#wrapper {
    transition: margin-left 0.3s ease;
}

.sidebar {
    transition: transform 0.3s ease;
    width: 250px;
    /* ... otros estilos ... */
}

/* Estilos específicos para pantallas de menos de 768px de ancho */
@media (max-width: 768px) {
    .sidebar {
        transform: translateX(-250px);
        /* Oculta el sidebar por defecto */
    }

    .sidebar.active {
        transform: translateX(0);
        /* Muestra el sidebar cuando está 'activo' */
    }

    #wrapper {
        margin-left: 0;
        /* El contenedor principal usa todo el ancho de la pantalla */
    }

    #wrapper.sidebar-active {
        margin-left: 250px;
        /* Se ajusta cuando el sidebar está visible */
    }
}

/* css boton sibedar */

.toggle-sidebar-btn {
    position: flex;
    /* Debe ser 'fixed' para una posición fija */
    top: 10px;
    /* Distancia desde la parte superior de la pantalla */
    left: 10px;
    /* Distancia desde el lado izquierdo de la pantalla */
    background-color: #fff;
    /* Color de fondo azul */
    color: white;
    /* Color del texto e ícono en blanco */
    padding: 10px;
    /* Espaciado interno alrededor del ícono */
    border-radius: 50%;
    /* Botón redondo */
    cursor: pointer;
    /* Cursor en forma de mano para indicar interactividad */
    z-index: 1000;
    /* Asegura que el botón esté por encima de otros elementos */
    border: none;
    /* Sin borde */
    display: top;
    /* Uso de Flexbox para centrar el contenido del botón */
    align-items: center;
    /* Centrar ícono verticalmente */
    justify-content: center;
    /* Centrar ícono horizontalmente */
    width: 50px;
    /* Ancho del botón */
    height: 50px;
    /* Altura del botón */
    transition: background-color 0.3s ease;
    /* Suaviza el cambio de color de fondo */
}

/* Cambios de color al interactuar con el botón */
.toggle-sidebar-btn:hover {
    background-color: #687884;
}

.toggle-sidebar-btn:active {
    background-color: #ffffff;
    /* Color verde más oscuro al hacer clic */
    transform: scale(0.9);
    /* Efecto de 'presionar' el botón */
}


/* Alerta girar telefono */

#rotate-device {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    font-size: 24px;
    z-index: 1000;
    justify-content: center;
    align-items: center;
    text-align: center;
    transition: opacity 0.5s;
}

#rotate-device.visible {
    display: flex;
    opacity: 1;
}

#rotate-device.hidden {
    display: flex;
    opacity: 0;
    pointer-events: none;
}

.rotate-icon {
    font-size: 48px;
    animation: rotate-device-animation 2s infinite;
}

@keyframes rotate-device-animation {
    0% {
        transform: rotate(0);
    }

    50% {
        transform: rotate(90deg);
    }

    100% {
        transform: rotate(0);
    }
}

.rotate-message {
    margin-top: 20px;
}

/*css para el listado de los limites anuales */

.limits-list {
    max-width: 900px;
    margin: 0 auto;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}

.limit-item {
    padding: 0.5rem 0;
    border-bottom: 1px solid #ddd;
}

.limit-item:last-child {
    border-bottom: none;
}