.box-sizing-border {
    box-sizing: border-box;
}

body {
    font-size: 1rem;
    background-color: #f9f9f9;
}
ul,
li {
    margin: 0;
    padding: 0;
}

.bg-body-secondary {
    background-color: #e9ecef;
}

.bg-body-tertiary {
    background-color: #f8f9fa;
}

a,
.nav-link {
    color: #4a4c4f;
    text-decoration: none;
}

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

.fs-7 {
    font-size: 0.9rem !important;
}

.fs-8 {
    font-size: 0.8rem !important;
}

.fs-9 {
    font-size: 0.7rem !important;
}

.w-30 {
    width: 30%;
}

.w-40 {
    width: 40%;
}

.col-xs-2d4,
.col-sm-2d4,
.col-md-2d4,
.col-lg-2d4 {
    position: relative;
    min-height: 0;
    padding-left: 0;
    padding-right: 0;
    flex: 0 0 auto;
}

.container-mini {
    width: 100%;
}
.z-n1 {
    z-index: -1 !important;
}
.z-0 {
    z-index: 0 !important;
}
.z-1 {
    z-index: 1 !important;
}
.z-2 {
    z-index: 2 !important;
}

/* $gray-100: #f8f9fa;
$gray-200: #e9ecef;
$gray-300: #dee2e6;
$gray-400: #ced4da;
$gray-500: #adb5bd;
$gray-600: #6c757d;
$gray-700: #495057;
$gray-800: #343a40;
$gray-900: #212529; */

.text-gray-500 {
    color: #adb5bd;
}
.text-gray-600 {
    color: #6c757d;
}

.mobile-hide {
    display: none !important;
}
.pc-hide {
    display: flex !important;
}
@media (min-width: 576px) {
    body {
        font-size: 1.5rem;
    }
    .container-mini {
        width: 420px;
    }
}

@media (min-width: 768px) {
    body {
        font-size: 0.9rem;
    }
    .col-sm-2d4 {
        width: 20%;
    }
    .mobile-hide {
        display: flex !important;
    }
    .pc-hide {
        display: none !important;
    }
}

@media (min-width: 992px) {
    body {
        font-size: 0.9rem;
    }
    .col-md-2d4 {
        width: 20%;
    }
    .container-sm {
        width: 960px;
    }
}

@media (min-width: 1200px) {
    body {
        font-size: 0.9rem;
    }
    .container-sm {
        width: 960px;
    }
    .col-lg-2d4 {
        width: 20%;
    }
}

.app-header {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    height: 44px;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
}

.curtain {
    --height: 32px;
    position: absolute;
    right: 0;
    bottom: calc(-1 * var(--height) + 1px);
    width: 100%;
    height: var(--height);
    font-size: 16px;
}
.curtain::after {
    content: "";
    display: block;
    height: var(--height);
    width: 100%;
    background: linear-gradient(#fff, transparent 50%, transparent 0%);
}

.app-footer {
    border-top: 1px solid #ededed;
    background-color: #fff;
}
.app-main {
    background-color: #fff;
    margin-top: 44px;
}

.main-box {
    box-shadow: 0px 0px 12px -2px rgba(0, 0, 0, 0.1);
    border: 1px solid #ededed;
    border-radius: 8px;
    box-sizing: border-box;
}
