/*
Theme Name: Bitacora Child (Twenty Twenty-Five)
Template: twentytwentyfive
Author: Bitacora System
Version: 1.7
*/

@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css');

:root {
    --b-primary: #eed46e;
    /* Oro Nexo */
    --b-primary-hover: #d4bc5a;
    --b-dark: #433f3c;
    /* Brand Metal */
    --b-accent: #f0f2f5;
    /* Gris Dashboard */
    --b-text: #333333;
    --b-white: #ffffff;
    --b-border: #e8e8e8;
    --b-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* -------------------------------------
   BORRADO DE ESTILOS POR DEFECTO
-------------------------------------- */
body {
    background-color: var(--b-accent) !important;
    color: var(--b-text);
    margin: 0;
    -webkit-font-smoothing: antialiased;
}

/* -------------------------------------
   HEADER PREMIUM (BRAND METAL)
-------------------------------------- */
.site-header {
    background-color: var(--b-dark) !important;
    padding: 20px 20px !important;
    border-bottom: 2px solid var(--b-primary);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 15px !important;
}

.site-header .site-title {
    width: 100%;
    display: flex;
    justify-content: center;
}

.site-header .site-title img {
    max-height: 70px;
    width: auto;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.site-header .site-title img:hover {
    transform: scale(1.08) rotate(-2deg);
}

/* -------------------------------------
   MENU DE NAVEGACION (BOTONES LIMPIOS)
-------------------------------------- */
.primary-menu-container {
    width: 100%;
}

/* Estilos para el botón Hamburguesa nativo */
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
    color: var(--b-primary) !important;
}

.wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation__responsive-container.has-modal-open {
    background-color: var(--b-dark) !important;
}

/* Modificadores al abrir en Móvil (Hamburguesa) */
.wp-block-navigation__responsive-container.is-menu-open ul,
.wp-block-navigation__responsive-container.has-modal-open ul {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 20px !important;
}

.wp-block-navigation__responsive-container.is-menu-open ul li,
.wp-block-navigation__responsive-container.has-modal-open ul li {
    max-width: 100% !important;
    flex: none !important;
    width: 100% !important;
    display: block !important;
}

.wp-block-navigation__responsive-container.is-menu-open ul li a,
.wp-block-navigation__responsive-container.has-modal-open ul li a {
    flex-direction: row !important;
    justify-content: flex-start !important;
    padding: 18px 20px !important;
    font-size: 1rem !important;
    text-align: left !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    height: auto !important;
}

/* Mostrar iconos en la hamburguesa (FontAwesome) */
.wp-block-navigation__responsive-container.is-menu-open ul li a::before,
.wp-block-navigation__responsive-container.has-modal-open ul li a::before {
    display: inline-block !important;
    margin-right: 15px !important;
    font-size: 1.2rem !important;
    width: 25px !important;
    text-align: center !important;
}

.wp-block-navigation__responsive-container.is-menu-open ul li.menu-item-salir a,
.wp-block-navigation__responsive-container.has-modal-open ul li.menu-item-salir a {
    margin-top: 20px;
    border: 1px solid rgba(214, 54, 56, 0.3) !important;
    border-radius: 8px !important;
    background: rgba(214, 54, 56, 0.05) !important;
}

.primary-menu-container ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    width: 100%;
}

.primary-menu-container ul li {
    list-style: none !important;
    flex: 0 0 auto !important;
    /* No crecer desproporcionadamente */
    margin: 0 !important;
}

.primary-menu-container ul li a {
    color: var(--b-white) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.85rem !important;
    padding: 10px 20px !important;
    border-radius: 6px !important;
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    flex-direction: row !important;
    /* Icono a la izquierda del texto en PC */
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    text-align: center;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.primary-menu-container ul li a:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--b-primary) !important;
    border-color: var(--b-primary) !important;
}

.primary-menu-container ul li.menu-item-salir a {
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

.primary-menu-container ul li.menu-item-salir a:hover {
    background: transparent !important;
    color: #ff6b6b !important;
    border-color: #ff6b6b !important;
}

/* -------------------------------------
   ICONOS FONTAWESOME
-------------------------------------- */
.primary-menu-container a::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 1.1rem;
    display: inline-block;
    color: var(--b-primary);
    transition: color 0.2s ease;
}

.primary-menu-container a:hover::before {
    color: var(--b-primary);
}

.primary-menu-container .menu-item-salir a::before {
    color: rgba(255, 255, 255, 0.5);
}

.primary-menu-container .menu-item-salir a:hover::before {
    color: #ff6b6b;
}

/* Home / Bitacora */
.primary-menu-container a[href*="bitacora"]::before {
    content: "\f015";
    /* fa-home */
}

/* Finanzas / Gasto (sin dólar) */
.primary-menu-container a[href*="finanzas"]::before,
.primary-menu-container a[href*="gasto"]::before {
    content: "\f080";
    /* fa-chart-bar */
}

/* Reportes */
.primary-menu-container a[href*="reporte"]::before {
    content: "\f15c";
    /* fa-file-alt */
}

/* Nuevo */
.primary-menu-container a[href*="nuevo"]::before {
    content: "\f055";
    /* fa-plus-circle */
}

/* Control / Dashboard */
.primary-menu-container a[href*="control"]::before,
.primary-menu-container a[href*="dashboard"]::before {
    content: "\f3fd";
    /* fa-tachometer-alt */
}

/* Salir */
.primary-menu-container a[href*="logout"]::before {
    content: "\f2f5";
    /* fa-sign-out-alt */
}

/* -------------------------------------
   DISEÑO DEL CONTENIDO PRINCIPAL
-------------------------------------- */
.wp-site-blocks {
    max-width: 1400px;
    margin: 30px auto;
    padding: 0 20px;
}

h1.entry-title {
    color: var(--b-dark);
    font-size: 2.2rem;
    margin-bottom: 25px;
    font-weight: 700;
    border-bottom: 2px solid var(--b-primary);
    padding-bottom: 12px;
}

/* Ocultar elementos de menú por defecto para seguridad visual */
.menu-item-finanzas,
.menu-item-bitacora,
.menu-item-reportes {
    display: none !important;
}

/* Mostrar "Bitácora" a Supervisores, Admins y Directivos */
body.role-supervisor .menu-item-bitacora,
body.role-administrator .menu-item-bitacora,
body.role-directivo .menu-item-bitacora {
    display: block !important;
}

/* Mostrar "Reportes" a Supervisores, Admins y Directivos */
body.role-supervisor .menu-item-reportes,
body.role-administrator .menu-item-reportes,
body.role-directivo .menu-item-reportes {
    display: block !important;
}

/* Mostrar "Finanzas" a Admins y Directivos */
body.role-administrator .menu-item-finanzas,
body.role-directivo .menu-item-finanzas {
    display: block !important;
}