/* =========================
   Nexa.ISP - GLOBAL / LAYOUT
   app.css
   ========================= */

html, body {
    height: 100%;
    margin: 0;
    overflow: hidden !important;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#app, app {
    height: 100%;
}

/* Layout base */
.nexa-layout {
    height: 100%;
}

/* MudMainContent */
.mud-main-content.nexa-main {
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 !important; /* el padding vive en .nexa-content */
    overflow: hidden !important; /* el scroll único vive en .nexa-content */
}

    /* ✅ Offset real por AppBar fijo */
    .mud-main-content.nexa-main.nexa-main-offset {
        padding-top: 48px !important;
    }

/* Topbar */
.nexa-topbar-compact {
    background: #5b4ce6;
    color: #fff;
    min-height: 48px !important;
    height: 48px !important;
    padding-left: 8px;
    padding-right: 8px;
}

    .nexa-topbar-compact .mud-icon-button {
        padding: 6px;
    }

    .nexa-topbar-compact .mud-avatar {
        width: 28px;
        height: 28px;
    }

.nexa-brand {
    font-weight: 600;
    letter-spacing: .2px;
}

.nexa-userbtn {
    text-transform: none;
    padding: 4px 8px;
}

/* =====================================================
   Scroll único + padding real + offset AppBar fijo
   ===================================================== */
.nexa-content {
    height: 100%;
    overflow: auto !important;
    box-sizing: border-box;
    /* ✅ SOLO el offset del AppBar fijo (sin gap extra) */
    padding: 14px;
}

/* Contenedor de página */
.nexa-page-shell {
    width: 100%;
    box-sizing: border-box;
    max-width: none;
    margin: 0 auto;
    padding: 0 6px; /* gutter interno leve */
}

/* Desktop */
@media (min-width: 1200px) {
    .nexa-content {
        /* ✅ mantener pegado al AppBar (48px), solo cambia laterales/bottom */
        padding-top: 0px;
        padding-left: 18px;
        padding-right: 18px;
        padding-bottom: 18px;
    }

    .nexa-page-shell {
        max-width: 1760px;
        padding: 0 8px;
    }
}

/* Ultra-wide */
@media (min-width: 1600px) {
    .nexa-page-shell {
        max-width: 1920px;
    }
}

/* Mobile */
@media (max-width: 600px) {
    .nexa-content {
        /* ✅ mantener pegado al AppBar (48px), solo cambia laterales/bottom */
        padding-top: 0px;
        padding-left: 10px;
        padding-right: 10px;
        padding-bottom: 10px;
    }

    .nexa-page-shell {
        padding: 0 2px;
    }
}

/* ==========================================================
   TOP NAV (DESKTOP) - Hover + look moderno
   ========================================================== */

.nexa-topnav {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: 18px;
    min-width: 0;
}

/* item wrapper para hover */
.nexa-topnav-item {
    position: relative;
    display: flex;
    align-items: center;
}

/* Estilo al botón REAL de Mud */
.nexa-topnav .mud-button-root.nexa-topnav-link {
    height: 34px;
    padding: 0 12px;
    border-radius: 8px;
    min-width: auto;
    text-transform: none;
    letter-spacing: .2px;
    font-weight: 600;
    font-size: 13px;
}

    /* Hover moderno */
    .nexa-topnav .mud-button-root.nexa-topnav-link:hover {
        background: rgba(255,255,255,0.14);
    }

    /* cuando está abierto o focus */
    .nexa-topnav .mud-button-root.nexa-topnav-link:focus {
        background: rgba(255,255,255,0.18);
    }

/* Menú (dropdown) más pro */
.mud-menu-list {
    border-radius: 10px;
    overflow: hidden;
}
