/* MASTER SUITE — UI-002A Header e Sidebar Fix */

/* ================================================================
   WORKSPACE: stessa tipologia visiva delle altre voci del menu
   ================================================================ */

.sidebar .nav-item[data-ui002-workspace="true"],
.sidebar .nav-item[data-ui002a-workspace="true"] {
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: var(--ms-menu-row-user, 38px) !important;

    margin: 0 !important;
    padding: 0 12px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;

    border: 0 !important;
    border-radius: 6px !important;

    background: transparent !important;
    color: inherit !important;
}

.sidebar .nav-item[data-ui002-workspace="true"] .nav-icon,
.sidebar .nav-item[data-ui002a-workspace="true"] .nav-icon {
    width: 24px !important;
    min-width: 24px !important;
    margin: 0 !important;

    display: inline-grid !important;
    place-items: center !important;

    font-size: var(--ms-icon-size-user, 15px) !important;
    color: inherit !important;
}

.sidebar .nav-item[data-ui002-workspace="true"] > span:not(.nav-icon),
.sidebar .nav-item[data-ui002a-workspace="true"] > span:not(.nav-icon) {
    display: inline !important;
}

/* ================================================================
   TOPBAR
   ================================================================ */

.topbar {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Ricerca prende lo spazio disponibile. */
.topbar .global-search {
    flex: 1 1 auto !important;
    min-width: 220px;
}

/* Comando sidebar spostato nella barra superiore. */
#ui002aSidebarToggle {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    flex: 0 0 36px !important;

    display: inline-grid !important;
    place-items: center !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid var(--line, rgba(127, 127, 127, .28)) !important;
    border-radius: 8px !important;

    background: var(--surface, transparent) !important;
    color: inherit !important;

    font-size: 20px !important;
    line-height: 1 !important;

    cursor: pointer !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#ui002aSidebarToggle:hover,
#ui002aSidebarToggle:focus-visible {
    border-color: var(--accent, #f4bd2b) !important;
    outline: none !important;
}

/* Pulsante Tema e layout portato vicino al profilo utente. */
#ui002aThemeLauncher {
    position: static !important;
    inset: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    top: auto !important;

    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    flex: 0 0 36px !important;

    margin: 0 !important;
    padding: 0 !important;

    display: inline-grid !important;
    place-items: center !important;

    border: 1px solid var(--line, rgba(127, 127, 127, .28)) !important;
    border-radius: 8px !important;

    background: var(--surface, transparent) !important;
    color: inherit !important;

    box-shadow: none !important;
    transform: none !important;

    visibility: visible !important;
    opacity: 1 !important;
    z-index: auto !important;
}

/* Eventuali contenitori floating del Theme Engine non devono mantenere
   il pulsante in basso a destra dopo che è stato trasferito. */
body > .ms-theme-launcher:empty,
body > .theme-launcher:empty {
    display: none !important;
}

/* ================================================================
   SIDEBAR RIDOTTA
   ================================================================ */

.sidebar {
    transition:
        width 180ms ease,
        min-width 180ms ease !important;
}

body.ms-sidebar-collapsed .sidebar {
    width: 66px !important;
    min-width: 66px !important;
}

body.ms-sidebar-collapsed .sidebar .brand small,
body.ms-sidebar-collapsed .sidebar .section-label,
body.ms-sidebar-collapsed .sidebar .nav-item > span:not(.nav-icon),
body.ms-sidebar-collapsed .sidebar .nav-item > b,
body.ms-sidebar-collapsed .sidebar .nav-subitem,
body.ms-sidebar-collapsed .sidebar details > div,
body.ms-sidebar-collapsed .sidebar .astra-card p,
body.ms-sidebar-collapsed .sidebar .astra-card strong,
body.ms-sidebar-collapsed .sidebar .astra-card button {
    display: none !important;
}

body.ms-sidebar-collapsed .sidebar .nav-item,
body.ms-sidebar-collapsed .sidebar .nav-item[data-ui002-workspace="true"],
body.ms-sidebar-collapsed .sidebar .nav-item[data-ui002a-workspace="true"] {
    width: 44px !important;
    min-width: 44px !important;
    height: 40px !important;
    min-height: 40px !important;

    margin: 2px auto !important;
    padding: 0 !important;

    justify-content: center !important;
}

body.ms-sidebar-collapsed .sidebar .nav-icon {
    width: 24px !important;
    min-width: 24px !important;
    margin: 0 !important;
}

body.ms-sidebar-collapsed .sidebar .astra-card {
    min-height: 48px !important;
    padding: 6px !important;
}

/* Nasconde definitivamente il vecchio comando solo dopo il trasferimento. */
.sidebar .collapse:not(#ui002aSidebarToggle) {
    display: none !important;
}

@media (max-width: 900px) {
    .topbar .global-search {
        min-width: 120px;
    }
}
