.page {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.clip {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.bg--accent {
    background: #82be48;
    color: #fff;
    border: none;
}
.bg--accentLow {
    background: #005b331a;
}
.bg--white {
    background: #fff;
    color: #000;
}
.bg--black {
    background: #000;
    color: #fff;
}
.bg--transparent {
    background: #dadada00;
    color: #000;
}
.bg--low {
    background: #d4222a;
    color: #fff;
    border: none;
}
.bg--normal {
    background: #ffc232;
    color: #fff;
    border: none;
}
.bg--great {
    background: #82be48;
    color: #fff;
    border: none;
}
.bg-blur--low {
    background: linear-gradient(to left, #fff0, #d4222a);
}
.bg-blur--normal {
    background: linear-gradient(to left, #fff0, #ffc232);
}
.bg-blur--great {
    background: linear-gradient(to left, #fff0, #82be48);
}
.capitalize {
    text-transform: capitalize;
}
.w-100 {
    width: 100%;
}
.h-100 {
    height: 100%;
}
.h1 {
    font-size: 24px;
    font-weight: 600;
}
.h2 {
    font-size: 18px;
    font-weight: 600;
}
.h3 {
    font-size: 14px;
    font-weight: 600;
}
.pd--10 {
    padding: 10px 20px;
}
.pd--16 {
    padding: 16px 32px;
}
.pd--25 {
    padding: 25px 50px;
}
.fs--14 {
    font-size: 14px;
}
.fs--15 {
    font-size: 15px;
}
.fs--16 {
    font-size: 16px;
}
.fs--18 {
    font-size: 18px;
}
.fs--20 {
    font-size: 20px;
}
.widget {
    border-radius: 10px;
}
.fw--300 {
    font-weight: 300;
}
.fw--400 {
    font-weight: 400;
}
.fw--500 {
    font-weight: 500;
}
.fw--600 {
    font-weight: 600;
}
.color--low {
    color: #d4222a;
}
.color--normal {
    color: #ffc232;
}
.color--great {
    color: #82be48;
}
.color--default {
    color: #000;
}
#imt-widget .form-control {
    background-clip: padding-box;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    color: #495057;
    display: block;
    font-size: 1rem;
    font-weight: 400;
    height: calc(1.5em + 0.75rem + 2px);
    line-height: 1.5;
    padding: 0.375rem 0.75rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
#imt-widget .form-control:focus {
    background-color: #fff;
    border-color: #80bdff;
    box-shadow: 0 0 0 0.2rem #007bff40;
    color: #495057;
    outline: 0;
}
.calculator_form {
    display: flex;
    flex-direction: column;
    gap: 25px;
    margin-bottom: 20px;
    max-width: 300px;
}
@media (max-width: 400px) {
    .calculator_form {
        margin-bottom: 35px;
    }
}
.gradations-wrap,
.calculator_result {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.input-wrap {
    display: grid;
    gap: 10px;
}
.input-item {
    display: grid;
    gap: 10px;
    align-items: center;
    position: relative;
}
.input-error {
    opacity: 1;
    position: absolute;
    top: calc(100% - 3px);
    background: #d4222a;
    color: #fff;
    padding: 5px 5px 3px;
    box-sizing: border-box;
    border-radius: 0 0 3px 3px;
    width: 100%;
    z-index: -1;
}
.gradations {
    display: flex;
    flex-direction: column;
    width: fit-content;
}
.gradation-section-list {
    display: flex;
    flex-direction: row;
    width: 100%;
}
@media (max-width: 700px) {
    .gradation-section-list {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
}
.gradation-dividing-wrap {
    display: grid;
}
@media (max-width: 700px) {
    .gradation-dividing-wrap {
        grid-template-columns: 7px 1fr;
    }
}
.gradation-dividing-line {
    display: flex;
    flex-direction: row;
    height: 7px;
    width: 100%;
}
@media (max-width: 700px) {
    .gradation-dividing-line {
        width: 7px;
        height: 100%;
    }
}
.arrow-down-wrap {
    width: 0;
    display: grid;
    justify-content: center;
}
@media (min-width: 700px) {
    .arrow-down-wrap {
        margin-top: 0 !important;
    }
}
@media (max-width: 700px) {
    .arrow-down-wrap {
        width: 5px;
        height: 0;
        margin-left: 0 !important;
    }
    .arrow-down-wrap svg {
        width: 10px;
        height: 18px;
        transform: rotate(-90deg);
    }
}
.gradation-section-item {
    padding: 5px 20px;
    position: relative;
    border-right: 1px solid rgba(0, 0, 0, 0.2);
}
.gradation-section-item-blur {
    position: absolute;
    right: -10px;
    width: 10px;
    height: 100%;
    top: 0;
    z-index: 10;
}

#imt-widget .form-control {
    height: 43px !important;
    font-size: 16px !important;
}
