body {
    font-family: -apple-system, BlinkMacSystemFont, PingFang SC, Hiragino Sans GB, Microsoft YaHei, helvetica neue, helvetica, ubuntu, roboto, noto, segoe ui, Arial, sans-serif;
    font-size: 0.875rem;
    color: var(--body-color);
    background-color: var(--bg-body);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

p {
    line-height: inherit;
}

@media (prefers-reduced-motion: reduce) {
    * {
        -webkit-animation-duration: 0s !important;
        animation-duration: 0s !important;
        -webkit-transition-duration: 0s !important;
        -o-transition-duration: 0s !important;
        transition-duration: 0s !important;
    }
}

a {
    color: var(--color-body);
    text-decoration: none;
    -webkit-transition: color 0.25s;
    -o-transition: color 0.25s;
    transition: color 0.25s;
    
    &:hover, &:active, &:focus, &:not([href]), &:not([href]):hover {
        text-decoration: none;
    }
}

i {
    font-style: normal;
}

b, strong {
    font-weight: 500;
}

.h4, h1, h3, h4 {
    font-weight: 500;
    margin: 0;
}

h1 {
    font-size: 2.5rem !important;
    line-height: 1.4;
}

h3 {
    font-size: 1.5rem !important;
}

h4, .h4 {
    font-size: 1.25rem !important;
    line-height: 1.4;
}

@media (max-width: 767.98px) {
    h1 {
        font-size: 1.625rem !important;
    }
    h3 {
        font-size: 1.375rem !important;
    }
    h4, .h4 {
        font-size: 1.25rem !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    h1 {
        font-size: 1.875rem !important;
    }
    h3 {
        font-size: 1.375rem !important;
    }
    h4, .h4 {
        font-size: 1.25rem !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    h1 {
        font-size: 2rem !important;
    }
    h3 {
        font-size: 1.5rem !important;
    }
    h4, .h4 {
        font-size: 1.25rem !important;
    }
}

input {
    font-family: initial;
    line-height: 1;
    border-color: var(--border-color);
    color: var(--text-dark);
    
    @supports (font-variation-settings: normal) {
        font-family: initial;
    }
}

code {
    direction: ltr;
}

.text-xx {
    font-size: 0.75rem !important;
}

.text-xs {
    font-size: 0.8125rem !important;
}

.text-sm {
    font-size: 0.875rem !important;
}

.text-md {
    font-size: 1rem !important;
}

@media (max-width: 767.98px) {
    .text-xx {
        font-size: 0.75rem !important;
    }
    .text-xs {
        font-size: 0.8125rem !important;
    }
    .text-sm {
        font-size: 0.875rem !important;
    }
    .text-md {
        font-size: 1rem !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .text-xx {
        font-size: 0.75rem !important;
    }
    .text-xs {
        font-size: 0.8125rem !important;
    }
    .text-sm {
        font-size: 0.875rem !important;
    }
    .text-md {
        font-size: 1rem !important;
    }
}

.text-muted {
    color: var(--color-muted) !important;
}

.text-light {
    color: var(--color-light) !important;
}

.iconfont {
    display: inline-block;
    vertical-align: middle;
    line-height: normal;
} 