/* App Framework. Copyright Jack Fellows 2023 */
html,body{height:100%;margin:0;}
body{
    padding-top:56px; /*Navbar*/
    display:flex;
    flex-direction:column;
}
footer{
    margin-top:auto;
    padding-top:8px;
    padding-bottom:8px;
    font-size:0.9em;
    background-color:#F8F8F8;
    border-top:1px solid #E7E7E7;
    text-align:center;
}

/*Override Bootstrap h2,h3,h4,h5*/
.h2,h2{margin-top:30px;}
.h3,h3{margin-top:20px;}
.h4,h4{margin-top:16px;}
.h5,h5{font-weight:bold;font-size:15px;}


/*Jumbotron defaults*/
.jumbotron-banner {
    background-color:#6F5499;
    background-image:-webkit-linear-gradient(top,#563D7C 0,#6F5499 100%);
    background-image:linear-gradient(to bottom,#563D7C 0,#6F5499 100%);
    color:#CDBFE3;
}
.jumbotron-banner div h1{color:#FFF;}
.jumbotron-banner div p{font-weight:300;}

.app-nav.navbar{
    background-color: #F8F8F8;
    border-bottom: 1px solid #E7E7E7;
}

.navbar-no-radius{border-radius:0;}

.cursor-pointer{cursor:pointer;}

/* Bootstrap4 compatibility: replace .hidden from BS3 as still widespread app use */
.hidden {
    display: none!important;
}


.table:not(.table-bordered) tr th {
    border-top: none;
}
/* Move margin-bottom (1rem) to parent div so mobile scrollbar better aligned */
.table-responsive table{
    margin-bottom:0.5rem;
}
.table-responsive{
    margin-bottom:0.5rem;
}

/* BS3 compatible*/
@media only screen and (max-width:767.98px) {
    table td{white-space: nowrap;}
}

/* Temp: whilst navbar dropdowns still in BS3 <ul><li> format */
li.dropdown-item.active a{
    color:#fff;
}
/* BS3 navbar needs this .navbar-header, so style to ensure BS4 objects behave correctly */
@media (max-width: 767.98px) {
    .navbar-header {
        width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

/* Remove print margins*/
@media print {
    .container-xl,.container-lg,.container-md,.container-sm {
        margin: 0;
        max-width: 100%;
    }
}

/* Fix Bootstrap 4 incompatibility between Navbar and container breakpoints. Fixed in Bootstrap 5 */
.navbar {
    padding-left: 0;
    padding-right: 0;
}
.navbar-expand > .container-lg,
.navbar-expand > .container-xl,
.navbar-expand > .container-md,
.navbar-expand > .container-sm,
.navbar-expand > .container-fluid,
.navbar-expand > .container,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-fluid,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container
{
    padding-left: 15px;
    padding-right: 15px;
}
/* For flex and grid. Bootstrap 5 compatible */
.gap-2{gap:0.5rem;}
.gap-3{gap:1rem;}