/* Uniform admin navigation tabs across all admin pages */
.adminTabs{
    width:100% !important;
    max-width:1100px !important;
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:10px !important;
    margin:10px 0 16px !important;
    align-items:stretch !important;
}
.adminTabs a{
    min-width:0 !important;
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    padding:0 10px !important;
    border-radius:12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:18px !important;
    line-height:1.1 !important;
    font-weight:800 !important;
    box-sizing:border-box !important;
}

/* Unified admin content widths */
:root{--admin-page-width:1100px;}
.admin{
    width:100% !important;
    max-width:var(--admin-page-width) !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.admin > h1,
.admin > h2,
.admin > h3,
.admin > .adminTabs,
.admin > .panel,
.admin > .compactList,
.admin > .sortableList,
.admin > .muted,
.admin > .mutedText,
.admin > .storesList,
.admin > .storeTopLinks,
.admin > .storeWideBlock,
.admin > .storeProductsArea{
    width:100% !important;
    max-width:var(--admin-page-width) !important;
    box-sizing:border-box !important;
}
.admin > .panel,
.admin > .compactList,
.admin > .sortableList,
.admin > .muted,
.admin > .storesList,
.admin > .storeWideBlock,
.admin > .storeProductsArea{
    margin-left:0 !important;
    margin-right:0 !important;
}

/* Pages that previously had their own narrow widths */
.adminSettingsPage .panel,
.adminUsersPage .userCreatePanel,
.adminUsersPage .usersCompactList,
.adminUsersPage .compactList,
.adminStoresPage .storeCreateForm,
.adminStoresPage .storesList,
.adminStoreManagePage .panel,
.adminStoreManagePage .storeWideBlock,
.adminStoreManagePage .compactList.storeWideBlock,
.adminStoreManagePage .storeSectionsList,
.adminStoreManagePage .storeProductsArea,
.adminStoreManagePage .muted.storeWideBlock,
.adminStoreManagePage .storeTopLinks{
    width:100% !important;
    max-width:var(--admin-page-width) !important;
    box-sizing:border-box !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
.adminStoreManagePage h2,
.adminStoreManagePage h3{
    width:100% !important;
    max-width:var(--admin-page-width) !important;
    box-sizing:border-box !important;
}

/* Keep inner cards/list rows full width inside the unified column */
.admin .adminDetails,
.admin .sortItem,
.admin .storeDetails,
.admin .storeSectionDetails,
.admin .storeProductList,
.admin .storeProductItem,
.admin .totalItem,
.admin .userDetails{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* Prevent buttons/inputs from creating different visual widths */
.admin .panel input,
.admin .panel select,
.admin .panel textarea,
.admin .panel button.primary,
.admin .storeCreateForm input,
.admin .storeCreateForm button.primary,
.adminSettingsPage .panel select,
.adminSettingsPage .panel button.primary,
.adminUsersPage .userCreatePanel button.primary{
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

@media(max-width:900px){
    .admin{
        max-width:100% !important;
        padding-left:10px !important;
        padding-right:10px !important;
    }
    .adminTabs{
        display:flex !important;
        flex-wrap:nowrap !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        max-width:100% !important;
        padding:8px 0 !important;
        gap:8px !important;
        scrollbar-width:none !important;
    }
    .adminTabs::-webkit-scrollbar{display:none !important;}
    .adminTabs a{
        flex:0 0 132px !important;
        width:132px !important;
        min-width:132px !important;
        height:54px !important;
        min-height:54px !important;
        font-size:16px !important;
        padding:0 8px !important;
    }
}
@media(max-width:420px){
    .admin{padding-left:8px !important;padding-right:8px !important;}
    .adminTabs a{
        flex-basis:124px !important;
        width:124px !important;
        min-width:124px !important;
        font-size:15px !important;
    }
}

/* Department delete button: match Save button size/style, red variant */
.adminDepartmentsPage .detailsDanger,
.admin .adminDetails .detailsDanger {
    display:block !important;
    width:100% !important;
    margin-top:12px !important;
}
.adminDepartmentsPage .detailsDanger .linkbtn.dangerText,
.adminDepartmentsPage button.linkbtn.dangerText,
.admin .adminDetails .detailsDanger .linkbtn.dangerText,
.admin .adminDetails .detailsDanger button {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    max-width:100% !important;
    min-height:52px !important;
    padding:0 28px !important;
    border-radius:14px !important;
    border:0 !important;
    background:#dc3545 !important;
    color:#ffffff !important;
    font-size:18px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-decoration:none !important;
    cursor:pointer !important;
    box-sizing:border-box !important;
    appearance:none !important;
    -webkit-appearance:none !important;
}
.adminDepartmentsPage .detailsDanger .linkbtn.dangerText:hover,
.adminDepartmentsPage button.linkbtn.dangerText:hover,
.admin .adminDetails .detailsDanger .linkbtn.dangerText:hover,
.admin .adminDetails .detailsDanger button:hover {
    background:#c82333 !important;
    color:#ffffff !important;
}
