:root {
    --nav-bar-height: 60px;
}

body {
    padding-top: 60px;
}
@media (max-width: 991.98px) {
    .offcanvas-collapse {
        position: fixed;
        top: 56px; /* Height of navbar */
        bottom: 0;
        left: 100%;
        width: 100%;
        padding-right: 1rem;
        padding-left: 1rem;
        overflow-y: auto;
        visibility: hidden;
        background-color: #105649;
        transition: transform .3s ease-in-out, visibility .3s ease-in-out;
    }
    .offcanvas-collapse.open {
        visibility: visible;
        transform: translateX(-100%);
    }
}

.nav-scroller {
    position: relative;
    z-index: 2;
    height: 2.75rem;
    overflow-y: hidden;
}

.nav-scroller .nav {
    display: flex;
    flex-wrap: nowrap;
    padding-bottom: 1rem;
    margin-top: -1px;
    overflow-x: auto;
    color: rgba(255, 255, 255, .75);
    text-align: center;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

.nav-underline .nav-link {
    padding-top: .75rem;
    padding-bottom: .75rem;
    font-size: .875rem;
    color: #6c757d;
}

.nav-underline .nav-link:hover {
    color: #007bff;
}

.nav-underline .active {
    font-weight: 500;
    color: #343a40;
}

.bg-purple {
    background-color: #6f42c1;
}

.login-card {
    max-width: 400px;
}

.h-100-except-nav-bar {
    height: calc(100% - var(--nav-bar-height));
}

.main-navbar {
    background: #2bb59b;
}

.main-body-bg {
    background: #f4f4f4;
}

.card-header {
    background-color: #f8f9fa;
}

/* index page */
.app {
    padding: 8px;
    border-radius: 8px;
}

.app:hover {
    background: #e9ecef;
}

.app .iconWarp {
    padding: 16px;
    border-radius: 24px;
    box-shadow: 0 0 16px #0003;
    background: #FFF;
}

.app .icon {
    --app-icon-size: 80px;
    width: var(--app-icon-size);
    height: var(--app-icon-size);
    background-size: cover;
}

.result-empty {
    color: #999;
}
.result-empty .icon.big {
    font-size: 4em;
}

/* blood sugar page */
.blood-sugar-sphere {
    width: 96px;
    height: 96px;
    border-radius: 48px;
    background: #6c757d;
    position: relative;
}

.blood-sugar-sphere.normal {
    background: linear-gradient(0deg, #328f18, #198754);
}
.blood-sugar-sphere.low {
    background: linear-gradient(0deg, #981556, #7063ee);
}
.blood-sugar-sphere.higher {
    background: linear-gradient(0deg, #fd7e14, #ffa254);
}
.blood-sugar-sphere.high {
    background: linear-gradient(0deg, #ab1e1e, #dc3545);
}

.blood-sugar-sphere .value {
    left: 0;
    right: 0;
    top: 24px;
    height: 32px;
    line-height: 32px;
    font-size: 32px;
    color: #FFF;
}

.blood-sugar-sphere .unit {
    left: 0;
    right: 0;
    top: 58px;
    height: 14px;
    line-height: 14px;
    font-size: 14px;
    color: #FFF;
}

.blood-sugar-type-btn {
    height: 140px;
    /*text-shadow: 0 0 4px #000;*/
}
.blood-sugar-type-btn[data-type='0'] {
    /*background-image: url("/img/blood_sugar/bst_btn_0.png");*/
}
.blood-sugar-type-btn .img {
    top: 0;
    right: 0;
    bottom: 40px;
    left: 0;
    background-size: cover;
    background-position: center center;
}
.blood-sugar-type-btn .text {
    left: 0;
    right: 0;
    bottom: 8px;
}

.blood-sugar-list .datetime {
    color: #6c757d;
}

.blood-sugar-badge {
    color: #947004;
    border: 1px solid #947004;
    padding: 6px 8px;
    font-size: 14px;
    background: #FFF;
}
.insulin_dosage {
    border-left: 1px solid #dee2e6;
}

.blood-sugar-row {
    background: #f8f9fa;
}
.blood-sugar-row:nth-child(2n) {
    background: #FFF;
}
/* live resource page*/
.live-resource-histories .row {
    border-bottom: 1px solid rgba(0,0,0,.125);
}
.live-resource-histories .row:last-child {
    border-bottom: 0;
}
.icon {
    width: 1em;
}
/* sundries page */
.sundriesList .item {
    box-shadow: 0 0 4px rgba(0, 0, 0, .2);
}
/* scheduling page */
.scheduling .card-header {
    background: #2bb59b;
    color: #FFF;
}
/* device tracker page */
#traceMap {
    min-height: 768px;
}

/* navigator page */
.navigator-group-title {
    color: #999;
    font-size: .5em;
    text-align: center;
}