﻿body {overflow: auto; position: relative; }
:root { --mag-floating-menu-height: 0px; }
.mag-anchor-targeted-section { scroll-margin-top: var(--mag-floating-menu-height); }
.public body { padding: 15px 0 0 0; }
.public .site-logo-img { display: block; text-align: center; }
.public .site-logo-img img { max-width: 100%; height: auto; margin: 0 auto; }
#mag-site-content { width: 100%; height: 100%; display:flex;flex-direction:column; }
.navbar-fixed-top { padding-left: 0; background-color: var(--mag-header-bg-color); }
.navbar-fixed-top .navbar-toggle { float: left; margin-left: 15px; }
.navbar-fixed-top .top-right-items { float: right; padding-top: 8px; padding-right: 15px; }

@media (min-width: 0) {
    .navbar-fixed-top .navbar-toggle { display: block; /* force showing the toggle */ }
}

.mag-page { padding-left: 0; position: relative; width: 100%; }
.navmenu-fixed-left { overflow-x: hidden; position: relative; z-index: 1040; float: left; overflow-y: auto; border-radius: 0; left: 0; width: 0; height: 100%; }
.main-nav-open body { overflow: hidden !important; position: fixed; min-width: 600px; }
.main-nav-open .navbar-fixed-top, .main-nav-open { padding-left: 300px; transition: all 0.4s ease 0s; min-width: 600px; }
.main-nav-open .navmenu-fixed-left { margin-left: -300px; }
.main-nav-open .navmenu-fixed-left { width: 300px; overflow-y: auto; height: 100vh; flex-direction: column; }

.nav-stacked.navbar-nav { float: none; display: block; margin: 0; }
.nav-stacked.navbar-nav li { margin-bottom: 0; margin-top: 0; float: none; }

.nav-stacked.navbar-nav .dropdown-menu { width: 100%; margin: 0; padding: 0; position: relative; }
.nav-stacked.navbar-nav .dropdown-menu > li > a { padding: 10px 20px 10px 50px }
.nav-stacked.navbar-nav .mag-icon { margin-right: 6px; }
.navbar-default .dropdown-menu { background-color: rgba(0,0,0,0.3) !important; }
.navbar-fixed-top .navbar-toggle { border-radius: 50%; padding: 9px 8px; border-color: var(--mag-header-text-color); }
.navbar-fixed-top .navbar-toggle span { background-color: var(--mag-header-text-color); width: 20px; }

.modal-body > .list-group > .list-group-item:first-child { border-radius: 0; }
.checkbox.inline { margin: 0; }
.btn-user-menu .userinfo img { border-color: var(--mag-header-text-color); }

/* grid */
.list-group .list-group-item-heading { margin-bottom: 10px; margin-top: 5px; }
.list-group .inline-actions .actionLink { margin-right: 10px; }
.list-group .ui-li-desc { margin-bottom: 5px; }
.list-group .inline-actions { margin-top: 15px; margin-bottom: 10px; }
.list-group .inline-actions .glyphicon { font-size: 1em; }

/* panel */
.genericBlock, .detailBlock, .tabPanelEdit { background: var(--mag-page-bg-color); border:none; }
.detailBlock .form-group { margin-left:-15px;margin-right:-15px;}
.ui-mobile .detailBlock .section .sectionHeader { padding-right: 0; padding-left: 0; }
.detailBlock .blockHeader { padding-top:10px;}
.ui-mobile .detailBlock .blockHeader .headerIcon { max-width:60%; }
.tabPanelEdit .blockHeader { padding-top: 10px; padding-bottom: 15px; }
.tabPanelEdit .blockHeader .text-responsive { display: flex; align-items: center; font-size: 20px; }
.genericBlock .blockHeader { border: 0; padding: 15px 0;height: auto; }
.tabPanel .blockHeader .right { padding-left: 0; }
.tabPanel .blockHeader .mag-icon { font-size: 33px; margin-right: 5px; }
.actions-modal .modal-body { background-color: var(--page-bg-200); border-bottom-left-radius: 6px; border-bottom-right-radius: 6px; }
.actions-modal .buttonsBlock > button, .actions-modal .buttonsBlock > input[type="button"],
.actions-modal .buttonsBlock .btn { margin-bottom: 10px; display: block; width: 100%; text-overflow: ellipsis; overflow: hidden; }

.footerLinks-actions { padding-bottom: 15px; }
.site-footer .copyright { padding-bottom: 15px; font-size: 0.9em; }

.siteBody { padding: 0 15px; }
#listview.table-border-outer { border:none;}
#listview .list-group-item { border-left: 0; border-right: 0; border-radius: 0; }
#listview .list-group-item:first-child, #listview .list-group-item:last-child { border-radius: 0; }
.relatedlists .list-group-item { display: flex; align-items: center; justify-content: space-between; }
.relatedlists .relatedListItem { padding-left:10px;}
.site-footer { padding: 20px 0; font-size: 0.8rem; border-top: 1px solid var(--mag-element-border-color); display:flex; flex-direction:column; }

/* ============================================
   MOBILE NAVIGATION STYLES
   These styles ensure proper theming for the 
   mobile slide-out navigation across all themes.
   ============================================ */
.navmenu-fixed-left .nav-stacked.navbar-nav > li > a {
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: background-color 0.2s ease, opacity 0.2s ease;
}
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a.folder-dropdown,
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a.navigation-folder-item {
        justify-content: space-between;
    }
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a.folder-dropdown .glyphicon-chevron-down,
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a.navigation-folder-item .navigation-menu-folder-chevron {
        margin-right: 0px;
    }
    .navmenu-fixed-left .nav-stacked.navbar-nav .menuItem-icon-and-name {
        align-items: center;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.navmenu-fixed-left .nav-stacked.navbar-nav .menuItem-icon-and-name .mag-entity-ico { width: 20px !important; height: 20px !important; margin-right: 15px; }
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a > .glyphicon-chevron-down {
        transform: rotate(-90deg);
    }    
    .navmenu-fixed-left .nav-stacked.navbar-nav > li.open > a .glyphicon-chevron-down {
        transform: rotate(0deg);
    }
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a .mag-icon,
    .navmenu-fixed-left .nav-stacked.navbar-nav > li > a i {
        margin-right: 15px;
        font-size: 20px;
        line-height: 20px;
        width: 20px;
        text-align: center;
        vertical-align: middle;
        display: inline-block;
    }
.navmenu-fixed-left .dropdown-menu,
.navmenu-fixed-left.navbar-inverse .dropdown-menu {
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0;
    position: relative;
    width: 100%;
}
    .navmenu-fixed-left .dropdown-menu > li > a {
        padding: 12px 15px 12px 50px;
        font-size: 14px;
        display: block;
        text-decoration: none;
    }
        .navmenu-fixed-left .dropdown-menu > li > a > .mag-icon,
        .navmenu-fixed-left .dropdown-menu > li > a > img {
            display: none;
        }

.navmenu-fixed-left .nav-stacked.navbar-nav .glyphicon-chevron-down,
.navmenu-fixed-left .nav-stacked.navbar-nav .navigation-menu-folder-chevron {
    opacity: 0.7;
    font-size: 0.85rem;
    transition: transform 0.15s;
}

.navmenu-fixed-left .folder-dropdown-sub-menuitem {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.navmenu-fixed-left .nav-stacked.navbar-nav > li > a span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

