a {
    color:#006666;
    text-decoration:underline;
}

a:hover {
    color:#006666;
    text-decoration:none;
}

.main-container {
    max-width:1000px;
    margin:0px auto;
    padding:5px 0px 0px 0px;
}

.main-container-nav {
    max-width:1000px;
    margin:0px auto;
}

.nav-cnt {
    background-color:#006666;
}

.float-right {
    float:right;
}

.row {
    margin-bottom:15px;
}

.color-white {
    color:white;
}

a.color-white {
    text-decoration:underline;
}

a.color-white:hover {
    color:white;
    text-decoration:none;
}

.recurrance, .recurrance-container {
    display:none;
}

.change-method {
    opacity:.5;
}

@media screen and (min-width: 480px) {

    .noleftpadding {
        padding-left: 0 !important;
        margin-left: 0 !important;
    }

    .right-lg {
        text-align:right;
    }

}

@media screen and (max-width: 480px) {

    .footer {
        padding-left: 15px !important;
    }

    label {
        padding-top: 10px !important;
    }
   
    .navbar-brand {
        padding-left:10px;
    }
    
    .navbar-collapse {
        margin-left:15px !important;
    }

    .hide-sm {
        display:none;
    }

    .top-alerts {
        padding:0px 10px;
    }

}

h3#page-header {
    font-size:15px;
    margin-bottom:0px;
}

h3#page-header.active {
    cursor:pointer;
}

@media screen and (max-width: 760px) {

    .hide-sm {
        display:none;
    }

}

#form-errors, .form-errors {
    display:none;
}

.checkin-check {
    font-size:25px;
}

.checkin-check.off {
    opacity:.3;
}

.card-title.gray {
    color:white;
}

nav td.logo-img img {
    height:40px;
}

nav td.logo-title {
    padding:6px 15px 0px 0px;
}

nav td.logo-title a {
    color:white;
    text-decoration:none;
    font-weight:normal;
}

nav td.logo-title a:hover {
    text-decoration:underline;
}

nav .nav-item .nav-link .nav-active {
    color:white;
    opacity:1;
}

.navbar-dark .navbar-nav .nav-link.active {
    color:white;
    opacity:1;
}

.org-select {
    border:1px solid #80acac;
    border-radius:3px;
    padding:5px 10px;
}

.org-select h3 {
    margin:0px;
    padding:0px;
}

.admin-loggedin {
    border:1px solid red;
    border-radius:5px;
    padding:10px;
    margin-bottom:15px;
}

.admin-loggedin a {
    color:red;
    text-decoration:none;
}

.admin-loggedin a:hover {
    text-decoration:underline;
}

.callsign {
    font-family:Courier;
}

/* ---------------------------------------------------------------
   App layout: top bar + left sidebar for logged-in organization pages
   --------------------------------------------------------------- */

.app-topbar {
    background-color:#006666;
    padding-top:.4rem;
    padding-bottom:.4rem;
}

.app-topbar .navbar-brand {
    font-size:1.15rem;
    text-decoration:none;
}

.app-topbar-link,
.app-topbar-link:hover {
    color:white;
    text-decoration:none;
}

.app-topbar-link:hover {
    opacity:.85;
}

body.app-has-sidebar {
    background-color:white;
}

.app-sidebar {
    background-color:#f5f7f7;
    border-bottom:1px solid #dde5e5;
}

.sidebar-welcome a {
    font-weight:600;
}

.sidebar-heading {
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#6c7a7a;
    padding:0 .75rem;
}

.sidebar-link {
    display:flex;
    align-items:center;
    gap:.65rem;
    padding:.5rem .75rem;
    border-radius:.375rem;
    color:#1f2d2d;
    text-decoration:none;
    white-space:nowrap;
}

.sidebar-link i {
    font-size:1.1rem;
    width:1.25rem;
    text-align:center;
    color:#006666;
}

.sidebar-link:hover {
    background-color:#e6f0f0;
    color:#006666;
    text-decoration:none;
}

.sidebar-link.active,
.sidebar-link.active:hover {
    background-color:#006666;
    color:white;
}

.sidebar-link.active i {
    color:white;
}

.app-main {
    min-width:0;
}

.app-content {
    max-width:1200px;
}

.app-content .org-select {
    background-color:white;
}

.app-footer {
    max-width:1200px;
    margin-top:2rem !important;
    border-top:1px solid #dde5e5;
}

@media (min-width: 992px) {

    .app-sidebar {
        width:250px;
        min-width:250px;
        min-height:calc(100vh - 56px);
        border-bottom:0;
        border-right:1px solid #dde5e5;
        position:sticky;
        top:56px;
        align-self:flex-start;
        max-height:calc(100vh - 56px);
        overflow-y:auto;
    }

}

/* Current organization in the top bar (click to switch when there are several) */
.app-topbar-org {
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    color:white;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.35);
    border-radius:.375rem;
    padding:.25rem .65rem;
    font-size:.95rem;
    line-height:1.4;
    max-width:45vw;
}

button.app-topbar-org:hover {
    background:rgba(255,255,255,.22);
}

.app-topbar-org-name {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* Small screens: org name at the top of the opened menu */
.sidebar-org {
    font-weight:600;
    color:#1f2d2d;
}

.sidebar-org-link {
    color:#006666;
    text-decoration:none;
}

.sidebar-org-link:hover {
    text-decoration:underline;
}

/* Keep the brand from pushing the menu toggle off the bar */
.app-topbar .navbar-brand {
    min-width:0;
    overflow:hidden;
}

.app-topbar .navbar-brand span {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.app-topbar .navbar-toggler {
    flex-shrink:0;
}

/* Staff dashboard tiles: the whole card is a link */
.dashboard-tile {
    transition: border-color .15s, box-shadow .15s;
}
.dashboard-tile:hover,
.dashboard-tile:focus {
    border-color: #80acac;
    box-shadow: 0 2px 6px rgba(0, 102, 102, .15);
}

/* Tabs stay on one line and scroll sideways when they don't fit (phones).
   overflow would clip the active tab's 1px overlap of the bottom border, so the line is drawn as an
   inset shadow instead; the active tab's white bottom border sits over it. */
.nav-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    min-width: 0;
    border-bottom: 0;
    box-shadow: inset 0 -1px 0 #dee2e6;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}
.nav-tabs.border-bottom-0 {
    box-shadow: none;
}
.nav-tabs .nav-item {
    flex-shrink: 0;
}
.nav-tabs .nav-link {
    white-space: nowrap;
    margin-bottom: 0;
}

/* Pill navs too: one line, scroll sideways when they don't fit */
.nav-pills {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    min-width: 0;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}
.nav-pills .nav-item {
    flex-shrink: 0;
}
.nav-pills .nav-link {
    white-space: nowrap;
}

/* A tab bar with something beside it (e.g. Early Check-in, Begin Check-in Now): the line under both is
   drawn as an inset shadow on the wrapper, which the active tab's white bottom border covers */
.tab-bar {
    box-shadow: inset 0 -1px 0 #dee2e6;
}
.tab-bar > .nav-tabs {
    margin-bottom: 0;
}
