/* ===========================================
   字体导入
   =========================================== */
@import url(https://fonts.googleapis.com/css2?family=Inter+Tight:wght@800&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,700;1,800&family=Mulish:wght@200;300;400;500;600;700&display=swap);

/* ===========================================
   基础布局样式
   =========================================== */
#header {
    position: relative;
    width: 100%;
}

.footer-line {
    height: 668px;
    position: relative;
}

.footer-line img {
    bottom: 0;
}

.footer-line img,
.main-nav {
    position: absolute;
    width: 100%;
}

.main-nav {
    justify-content: center;
    z-index: 500;
}

.ellipsis {
  overflow: hidden;          /* 超出隐藏 */
  white-space: nowrap;       /* 不换行 */
  text-overflow: ellipsis;   /* 超出用 ... */
}

/* ===========================================
   导航栏样式
   =========================================== */
.main-nav,
.main-nav-cont {
    align-items: center;
    display: flex;
}

.main-nav-cont {
    height: 90px;
    width: 70%;
}

.home-page-btn,
.main-nav-cont {
    justify-content: flex-end;
}

.nav-underline {
    background: linear-gradient(currentColor 0 0) 0 100% /0 1px no-repeat;
    background: linear-gradient(currentColor 0 0) var(--p,0) 100% /var(--d,0) 1px no-repeat;
    transition: .3s, background-position 0s .3s;
}

.nav-underline:hover {
    --d: 100%;
    --p: 100%;
}

/* ===========================================
   按钮和图标样式
   =========================================== */
.home-page-btn,
.home-page-btn a {
    align-items: center;
    display: flex;
}

.home-page-btn a {
    color: #fff;
    cursor: pointer;
    font-weight: 600;
    height: 34px;
    justify-content: center;
    width: 140px;
}

.home-icon-box {
    display: none;
}

.home-icon-box img {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 20px;
    width: 30px;
}

/* ===========================================
   响应式设计 - 中等屏幕
   =========================================== */
@media only screen and (max-width: 1080px) {
    .main-nav-cont {
        height: 90px;
        width: 85%;
    }

    .home-page-btn a {
        border-radius: 17px;
        font-size: .9em;
        height: 32px;
        width: 120px;
    }
}

/* ===========================================
   响应式设计 - 小屏幕
   =========================================== */
@media only screen and (max-width: 600px) {
    .main-nav-cont {
        height: 70px;
        justify-content: center;
        width: 100%;
    }

    .home-page-btn a {
        display: none;
    }

    .home-icon-box {
        align-items: center;
        display: flex;
        justify-content: flex-end;
        width: 85%;
    }

    .home-icon-box img {
        width: 25px;
    }
}

/* ===========================================
   背景动画区域
   =========================================== */
#bg-animation {
    position: fixed;
    width: 100%;
    z-index: -5;
}

.background {
    height: 85vh;
    position: relative;
}

.bg-jun88cmd {
    background: radial-gradient(circle, #d2eaf6 34%, #2ca2cb 100%);
}

.bg-jun88k36 {
    background: radial-gradient(circle, #4baae4 34%, #00349a 100%);
}

.bg-hi88 {
    /*background-image: radial-gradient(circle farthest-corner at 1.3% 2.8%, #b70100 0, #b70100 100.2%);*/
    background: linear-gradient(to bottom right, #d60000, #9c0001);
}

/* ===========================================
   表单提交控制图片上传
   =========================================== */
.images-div{
    bottom: -140px !important;
}
.images-item{
    flex-wrap: wrap;
    padding: 20px 90px;
}
.images-item .form-value{
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.images-item .box-btn-sub{
    margin-bottom: 0;
}
.images-item .box-btn-sub span{
    width: 200px;
    text-align: center;
}
.images-item .form-value .form-item{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #eee;
    border-radius: 10px;
    width: 450px;
}
.images-item .form-value .form-item .input-form-images{
    width: 290px;
    display: flex;
    margin-left: 20px;
}
.images-item .form-value .form-item .input-form-images #image-preview-container{
    display: flex;
}
.images-item .form-value .form-item .input-form-images .add-upload{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    font-weight: 700;
    color: #bcbcbc;
    border: 1px dashed #bcbcbc;
    width: 50px;
    height: 50px;
    border-radius: 6px;
}
.images-item .form-value .form-item .input-form-images .add-upload-images{
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 6px;
    overflow: hidden;
    margin-right: 10px;
}
.images-item .form-value .form-item .input-form-images .add-upload-images .image-close{
    position: absolute;
    top: -4px;
    right: 0;
    color: #fff;
    background: #333;
    padding: 0 2px;
    border-radius: 0 0 0 10px;
}
.images-item .form-value .form-item .input-form-images .add-upload-images img{
    width: 100%;
    height: 100%;
    object-fit: cover;      /* 关键：aspectFill 效果 */
    object-position: center;/* 控制裁剪焦点，可修改为 'top' 'left' 等 */
    display: block;
}
.images-item .form-value .form-item .input-form-captcha-wrapper{
    align-items: center;
    width: auto;
}
.images-item .form-value .form-item .input-form-captcha-wrapper input{
    width: 140px;
}
.images-item .form-value .form-item .input-form-captcha-wrapper .input-form-captcha{
    margin-bottom: 0;
}
.images-item .form-value .form-item .icon-form{
    width: 50px;
    height: 50px;
}
.images-item .form-value .form-item .title-form{
    font-size: 1rem;
}
.images-item .form-value .form-item .input-form{
    width: 15rem;
    margin: 0;
    margin-left: 20px;
}
.images-item .form-value .form-item .input-form .selected-option,
.images-item .form-value .form-item input{
    background-color: #fff !important;
}


/* ===========================================
   圆圈动画样式
   =========================================== */
.circles-animation {
    height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%;
}

.circles-animation li {
    animation: animate 25s linear infinite;
    background: hsla(0, 0%, 100%, .377);
    bottom: -150px;
    display: block;
    filter: blur(2px);
    height: 20px;
    list-style: none;
    position: absolute;
    width: 20px;
}

.circles-animation li:first-child {
    animation-delay: 0s;
    height: 80px;
    left: 25%;
    width: 80px;
}

.circles-animation li:nth-child(2) {
    animation-delay: 2s;
    animation-duration: 12s;
    height: 20px;
    left: 10%;
    width: 20px;
}

.circles-animation li:nth-child(3) {
    animation-delay: 4s;
    height: 20px;
    left: 70%;
    width: 20px;
}

.circles-animation li:nth-child(4) {
    animation-delay: 0s;
    animation-duration: 18s;
    height: 60px;
    left: 40%;
    width: 60px;
}

.circles-animation li:nth-child(5) {
    animation-delay: 0s;
    height: 20px;
    left: 65%;
    width: 20px;
}

.circles-animation li:nth-child(6) {
    animation-delay: 3s;
    height: 110px;
    left: 75%;
    width: 110px;
}

.circles-animation li:nth-child(7) {
    animation-delay: 7s;
    height: 150px;
    left: 35%;
    width: 150px;
}

.circles-animation li:nth-child(8) {
    animation-delay: 15s;
    animation-duration: 45s;
    height: 25px;
    left: 50%;
    width: 25px;
}

.circles-animation li:nth-child(9) {
    animation-delay: 2s;
    animation-duration: 35s;
    height: 15px;
    left: 20%;
    width: 15px;
}

.circles-animation li:nth-child(10) {
    animation-delay: 0s;
    animation-duration: 11s;
    height: 150px;
    left: 85%;
    width: 150px;
}

/* ===========================================
   动画关键帧
   =========================================== */
@keyframes animate {
    0% {
        border-radius: 0;
        opacity: 1;
        transform: translateY(0) rotate(0deg);
    }
    to {
        border-radius: 50%;
        opacity: 0;
        transform: translateY(-1000px) rotate(2turn);
    }
}

/* ===========================================
   标题区域样式
   =========================================== */
#title-header {
    margin-top: 100px;
    position: absolute;
    width: 100%;
    z-index: 10;
}

.title-cont {
    align-items: center;
    display: flex;
    height: 400px;
    justify-content: center;
    margin: 0 auto;
    width: 70%;
}

.title-cont > div {
    width: 50%;
}

.content-wrapper {
    color: #fff;
}

/* ===========================================
   文字颜色样式
   =========================================== */
.text-color-bo_789bet,
.text-color-new88 {
    -webkit-text-fill-color: #0000;
    background: -webkit-linear-gradient(#ff9700, #ff511b, #ff4236);
    -webkit-background-clip: text;
}

.text-color-shbet {
    color: #4c9bb6;
}

.text-color-hi88 {
    color: #fff;
}

.text-color-jun88k36 {
    color: #fff;
}

.title-content {
    font-family: Inter Tight, sans-serif;
    font-size: 3.5em;
    font-weight: 800;
    letter-spacing: 1px;
}

.sub-content {
    font-family: Montserrat, sans-serif;
    font-size: 1.5em;
    letter-spacing: 1px;
    margin-top: 20px;
}

.banner-logo {
    display: flex;
    justify-content: flex-end;
}

.banner-logo .logo {
    height: auto;
}

.banner-logo .logo,
.logo-pic {
    animation: drift 2s infinite alternate;
    width: 500px;
}

.logo-pic {
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    height: 216px;
}

/* ===========================================
   Logo 背景图片
   =========================================== */
.logo-bo_789bet {
    background-image: url(/static/media/logo-bo_789bet.abe8b24d658695d9f5cd.png);
}

.logo-f8bet {
    background-image: url(/static/media/logo-f8bet.221aa63b20df1fffa245.png);
}

.logo-hi88 {
    background-image: url(../img/logo.png);
}

.logo-new88 {
    background-image: url(/static/media/logo-new88.1630096c20cc1dcc5484.png);
}

.logo-shbet {
    background-image: url(/static/media/logo-shbet.e523d6093d9ad528a76d.png);
}

.logo-jun88k36 {
    background-image: url(/static/media/logo-jun88k36.545653793a4ae9958f78.png);
}

.logo-jun88cmd {
    background-image: url(/static/media/logo-jun88cmd.62422158afd86e4ccfa9.png);
}

/* ===========================================
   Logo 动画
   =========================================== */
@keyframes drift {
    to {
        transform: translateY(-8%);
    }
}

.d-block {
    display: block !important;
}

/* ===========================================
   玩家表单样式
   =========================================== */
#player-form {
    align-items: center;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
}

#player-form,
.form-wrapper {
    display: flex;
    justify-content: center;
}

.form-wrapper {
    align-items: flex-end;
    background-color: #fff;
    border-radius: 8px;
    width: 1300px;
}

.form-value {
    padding: 12px 8px;
    width: 28%;
}

.box-btn-sub {
    cursor: pointer;
    margin-bottom: 24px;
    padding: 12px 8px;
    position: relative;
}

.btn-submit {
    align-items: center;
    border-radius: 6px;
    box-shadow: inset 0 3px 4px 0 #5b470040;
    display: flex;
    height: 36px;
    max-width: 100px;
    padding: 0 12px;
    transition: all 1s;
    transition-timing-function: cubic-bezier(.5, 3, 0, 1);
}

.btn-submit:hover {
    transform: scale(1.2);
}

.btn-submit span {
    color: #fff;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

/* ===========================================
   表单图标和标题
   =========================================== */
.icon-form {
    align-items: center;
    display: flex;
    height: 60px;
    justify-content: center;
    margin: 12px auto;
    width: 60px;
}

.icon-form img {
    width: 100%;
}

.title-form {
    font-size: 1.3em;
    font-weight: 600;
    margin: 12px 0;
    text-align: center;
}

/* ===========================================
   输入框样式
   =========================================== */
.input-form {
    height: 36px;
    margin: 0 auto 24px;
    width: 90%;
}

.input-form input,
.input-form-captcha input {
    background-color: #f5f5f5;
    border: none;
    border-radius: 10px;
    height: 100%;
    letter-spacing: 1px;
    padding: 0 20px;
    width: 100%;
}

.input-form-captcha-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
}

.input-form-captcha {
    height: 36px;
    margin-bottom: 24px;
    width: 50%;
}

#captcha-input,
.input-form input:focus {
    outline: none;
}

#captcha-input {
    font-size: 16px !important; /* 防止iOS自动缩放 */
}

/* ===========================================
   验证码样式
   =========================================== */
#captcha {
    background: linear-gradient(90deg, #4b6cb7, #182848);
    border-radius: 5px;
    color: #fff;
    font-family: Mulish, sans-serif;
    font-size: 1.2em;
    font-style: italic;
    letter-spacing: 3px;
    margin-right: 16px;
    text-decoration: line-through;
    width: 90px;
}

#captcha,
.box-captcha {
    align-items: center;
    display: flex;
    height: 36px;
    justify-content: center;
}

.thumb-captcha {
    cursor: pointer;
    max-width: 100%;
}

.background-input-select {
    background-color: #f5f5f5 !important;
    font-size: 16px !important; /* 防止iOS自动缩放 */
}

/* ===========================================
   状态按钮
   =========================================== */
.status-btn-cont {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 100%;
}

.get-status-btn {
    cursor: pointer;
    margin-top: 200px;
    padding: 12px 24px;
}

/* ===========================================
   自定义选择框样式
   =========================================== */
.custom-select {
    color: #000;
    display: inline-block;
    height: 36px;
    position: relative;
    -webkit-user-select: none;
    user-select: none;
    width: 100%;
}

.selected-option {
    background: #f5f5f5;
    border: none;
    border-radius: 10px;
    display: block;
    padding: 8px 20px;
}

.options-list {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    display: none;
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, .7));
    left: -25%;
    list-style: none;
    margin: auto;
    padding: 5px 10px;
    position: absolute;
    top: 50px;
    width: 150%;
    z-index: 50;
}

.options-list ul {
    height: fit-content;
    max-height: 500px;
    overflow: scroll;
}

.options-list ul::-webkit-scrollbar,
.options-list::-webkit-scrollbar {
    display: none;
}

.options-list li:hover {
    transform: scale(1.01);
}

/* ===========================================
   选项列表背景
   =========================================== */
.options-list-shbet {
    background-image: url(/static/media/bg-promo-shbet.cb689fe3c311a14fdaa4.png);
    background-size: 100% 100%;
}

.options-list-new88 {
    background: #111;
    background-size: 100% 100%;
}

.options-list-jun88k36 {
    background-image: url(/static/media/bg-promo-jun88k36.a099c0b0b853ad74f387.jpg);
    background-size: 100% 100%;
}

.options-list-bo_789bet {
    background-image: url(/static/media/bg-promo-bo_789bet.9c1d381084d27be0a277.jpg);
    background-size: 100% 100%;
}

.options-list-hi88 {
    background: url(/jingtai/static/img/bg-promo.jpg);
    background-size: 100% 100%;
}

.options-list-f8bet {
    background-image: url(/static/media/bg-promo-f8bet.11ff90592261b541ac79.jpg);
    background-size: 100% 100%;
}

/* ===========================================
   选项列表标题
   =========================================== */
.options-list-title {
    color: #000;
    display: flex;
    font-size: 20;
    font-weight: 700;
}

.options-list-title-shbet {
    color: #1f607d;
}

.options-list-title-bo_789bet,
.options-list-title-jun88k36,
.options-list-title-new88 {
    color: #fff;
}
.options-list-title span:first-child {
    width: 35%;
}

.options-list-title span:last-child {
    width: 65%;
}

.options-list-title-hi88 {
    color: #fff;
}

.options-list-title-f8bet {
    color: #0f1bc5;
}

/* ===========================================
   选项列表项
   =========================================== */
.options-list-li {
    border-top: 1px solid #d1d1d1;
    color: #000;
    cursor: pointer;
}

.options-list-li-bo_789bet,
.options-list-li-f8bet,
.options-list-li-hi88,
.options-list-li-jun88k36,
.options-list-li-new88,
.options-list-li-shbet {
    border-top: initial;
    padding: 4px 8px;
}

.options-list-item {
    border-radius: 100px;
    display: flex;
    flex-shrink: 0;
    font-weight: 700;
    overflow: hidden;
    padding: 10px 20px;
}

.options-list-item-shbet {
    background: #fff;
    box-shadow: 0 2px .3px 0 #00000040;
    color: #6bb0c8;
}

.options-list-item-new88 {
    background: #fead00;
    border: 1px solid #ffff65;
    box-shadow: 0 2px .3px 0 #00000040;
    color: #fff !important;
}

.options-list-item-jun88k36 {
    background: #fff;
    border: 1px solid #dadad5;
    box-shadow: 0 2px .3px 0 #00000040;
    color: #3caae1 !important;
}

.options-list-item-bo_789bet {
    background: linear-gradient(90deg, #ff4335, #ff9800);
}

.options-list-item-bo_789bet,
.options-list-item-hi88 {
    box-shadow: 0 2px .3px 0 #00000040;
    color: #fff !important;
}

.options-list-item-hi88 {
    /*background: linear-gradient(180deg, #02a9dd, #0278dc);*/
    background: linear-gradient(180deg, #bd0100, #bd0100);
}

.options-list-item-f8bet {
    background: linear-gradient(90deg, #19a2cc, #3f72ca);
    box-shadow: 0 2px .3px 0 #00000040;
    color: #fff !important;
}

.options-list-item span:first-child {
    margin-bottom: auto;
    margin-top: auto;
    width: 30%;
}

.options-list-item span:last-child {
    margin-bottom: auto;
    margin-top: auto;
    width: 70%;
}

/* ===========================================
   选项列表文字颜色
   =========================================== */
.options-list-promo_id-text-color-shbet {
    color: red;
}

.options-list-promo_name-text-color {
    display: inline-block;
    overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.options-list-text-color-shbet {
    color: #6bb0c8;
}

.options-list-text-color-new88 {
    color: #fff;
}

/* ===========================================
   输入框占位符
   =========================================== */
.input-form input::placeholder {
    color: #000;
}

/* ===========================================
   隐藏字段
   =========================================== */
#km-check_sms,
#km-gamecategory,
#km-option,
#km-promo_type,
#km-ticket {
    display: none;
}

/* ===========================================
   其他表单元素
   =========================================== */
.text-marquee {
    color: #000;
}

.custom-inputlabel-ticket {
    width: 85%;
}

.custom-input-ticket {
    color: #333;
}

.game_type-div {
    justify-content: space-around;
    margin-top: 20px;
    width: 100%;
}

.game_type-div span {
    margin: auto;
}

.game_type-select {
    background-color: #fff;
    border: 1px solid #caced1;
    border-radius: .25rem;
    color: #000;
    cursor: pointer;
    font-size: 1.05rem;
    height: 45px;
    padding: .3em 2em .3em 1em;
    width: 75%;
}

.game_type-select:focus,
.game_type-select:focus-visible {
    outline: none;
}

.game_type-select:focus {
    max-height: 180px;
    overflow-y: auto;
}

.game_type-option {
    padding: 5px;
}

.check-ticket-input {
    border: 1px solid #caced1;
    border-radius: .25rem;
    height: 45px;
    padding: 10px;
    width: 75%;
}

.check-ticket-input:focus,
.check-ticket-input:focus-visible {
    outline: none;
}

/* ===========================================
   SMS 模态框样式
   =========================================== */
.modal-body-sms {
    -webkit-backdrop-filter: blur(43.29999923706055px);
    backdrop-filter: blur(43.29999923706055px);
    background: #d9d9d91a;
    border-radius: 16px;
    box-shadow: inset 43.3px -43.3px 43.3px 0 #a5a5a51a, inset -43.3px 43.3px 43.3px 0 #ffffff1a;
    left: 50%;
    max-width: 760px;
    padding: 52px 16px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.modal-body-sms:focus-visible {
    outline: 0;
}

.close-modal {
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 10px;
}

.close-modal svg {
    height: auto;
    max-width: 40px;
}

/* ===========================================
   模态框头部样式
   =========================================== */
.header .hello {
    color: #fc8f00;
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    margin-bottom: 8px;
    text-align: center;
}

.modal-sms.shbet .header .hello {
    color: #00b7f5;
}

.modal-sms.shbet .close-modal svg circle {
    fill: #00b7f5;
}

.header .telephone-sms {
    color: #fff;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 16px;
    text-align: center;
}

/* ===========================================
   模态框内容样式
   =========================================== */
.content-modal {
    background: #4f4f4f;
    border: 2px solid #f7b922;
    border: 2px solid var(--line-orange, #f7b922);
    border-radius: 21px;
    margin: auto;
    max-width: 380px;
    padding: 20px;
    width: 100%;
}

.modal-sms.shbet .content-modal {
    border: 2px solid #4c9bb6;
    border: 2px solid var(--line-orange, #4c9bb6);
}

/* ===========================================
   输入组样式
   =========================================== */
.input-group-sms {
    display: flex;
    gap: 8px;
    position: relative;
    width: 100%;
}

.layer-form .title-text {
    color: #fff;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    padding-bottom: 8px;
}

.layer-form {
    margin-bottom: 24px;
}

.input-group-sms .input-form {
    background: #4f4f4f;
    border: .548px solid #a19999;
    border-radius: 46px;
    box-shadow: 0 3.836px 2.192px 0 #00000040;
    margin-bottom: 0;
}

.input-group-sms .background-input-select {
    background-color: #fff0 !important;
    color: #fff;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.input-group-sms .background-input-select::placeholder {
    color: #fff;
    font-size: 16px;
}

/* ===========================================
   按钮样式
   =========================================== */
.button-copy-content,
.form_item-btn {
    cursor: pointer;
    display: flex;
}

.button-copy-content {
    align-items: center;
    background: #fff0;
    border: .931px solid #fff;
    border-radius: 59.611px;
    box-shadow: 1px 2px 2.192px 0 #000000fc;
    gap: 4px;
    height: 100%;
    justify-content: center;
    width: 90px;
}

.button-copy-content .text {
    font-style: normal;
    font-weight: 500;
}

.button-copy-content .text,
.footer-text {
    color: #fff;
    font-size: 16px;
    line-height: normal;
}

.footer-text {
    font-style: italic;
    font-weight: 400;
    text-align: center;
}

/* ===========================================
   表单包装器
   =========================================== */
.wrap-form-sms {
    display: none;
    margin-bottom: 24px;
}

.wrap-form-send-sms {
    background: linear-gradient(90deg, #f7b922, #f49a25);
    border: 1px solid #fff;
    border-radius: 165px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    padding: 8px 0;
}

.wrap-form-send-sms:hover {
    background-image: linear-gradient(90deg, #f6d365 0, #ff4630 51%, #f6d365);
    background-position: 100%;
}

.wrap-form-send-sms span {
    color: #fff;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

/* ===========================================
   不同品牌的模态框样式
   =========================================== */
.modal-sms.shbet .wrap-form-send-sms {
    background: linear-gradient(180deg, #6bd9ff, #00b7f5);
}

.modal-sms.f8bet .header .hello {
    color: #fff;
}

.modal-sms.f8bet .close-modal svg circle {
    fill: #0053e0;
}

.modal-sms.f8bet .wrap-form-send-sms {
    background: linear-gradient(180deg, #6bd9ff, #0053e0);
}

.modal-sms.f8bet .content-modal {
    border: 2px solid #0090c1;
    border: 2px solid var(--line-orange, #0090c1);
}

.modal-sms.hi88 .header .hello {
    color: #fff;
}

.modal-sms.hi88 .close-modal svg circle {
    fill: #27ade2;
}

.modal-sms.hi88 .wrap-form-send-sms {
    background: linear-gradient(180deg, #6bd9ff, #1ba7df);
}

.modal-sms.hi88 .content-modal {
    border: 2px solid #075475;
    border: 2px solid var(--line-orange, #075475);
}

/* ===========================================
   其他模态框元素
   =========================================== */
.show-copy {
    bottom: 100%;
    color: #09ff29;
    position: absolute;
    right: 0;
}

.loader-container {
    align-items: center;
    display: flex;
    justify-content: center;
    z-index: 9999;
}

.loader-container,
.loader-overlay {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}

.loader-overlay {
    background-color: #00000080;
    z-index: 9998;
}

.loader {
    position: relative;
    z-index: 9999;
}

.timer {
    align-items: center;
    display: flex;
    flex-direction: column;
}

.countdown-remainingTime {
    color: #fff;
    font-size: 40px;
}

.z-index-99999 {
    z-index: 99999;
}

.swal2-title-ticket {
    color: #167697;
    font-size: 24px;
    text-align: center;
}

.game_type-div {
    display: flex;
}

/* ===========================================
   响应式设计 - 大屏幕
   =========================================== */
@media only screen and (max-width: 1024px) {
    .options-list {
        filter: drop-shadow(0 0 10px rgba(0, 0, 0, .7));
        font-size: 16px;
        left: -50%;
        margin: auto;
        top: 50px;
        width: 200%;
        z-index: 50;
    }

    .options-list-item {
        padding: 5px 10px;
    }
}

/* ===========================================
   响应式设计 - 小屏幕
   =========================================== */
@media only screen and (max-width: 730px) {
    .title-form {
        text-align: justify;
    }

    .wrap-form-sms {
        display: block;
    }

    .options-list {
        filter: drop-shadow(0 0 10px rgba(0, 0, 0, .7));
        font-size: 16px;
        left: 0;
        margin: auto;
        top: 0;
        width: 100%;
        z-index: 50;
    }

    .options-list-item {
        padding: 5px 10px;
    }

    .options-list-item span:first-child {
        font-size: 14px;
        width: 35%;
    }

    .options-list-item span:last-child {
        font-size: 14px;
        width: 65%;
    }

    .options-list-title span:first-child {
        width: 35%;
    }

    .options-list-title span:last-child {
        width: 65%;
    }

    .options-list-title-new88 span:first-child {
        width: 45%;
    }

    .options-list-title-new88 span:last-child {
        width: 55%;
    }

    .options-list-item-new88 span:first-child {
        width: 45%;
    }

    .options-list-item-new88 span:last-child {
        width: 55%;
    }

    .modal-body-sms {
        padding: 8px;
        width: 96%;
    }

    .close-modal {
        right: -10px;
        top: -20px;
    }

    .content-modal {
        padding: 20px 12px;
    }

    .swal2-title-ticket {
        font-size: 18px;
    }
}

/* ===========================================
   主要内容区域
   =========================================== */
#body-ttkm {
    background-color: #fff;
}

.overlay-main {
    background-color: #000c;
    height: 100vh;
    left: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: -400;
}

/* ===========================================
   幸运轮盘样式
   =========================================== */
.lucky {
    bottom: 18%;
    box-sizing: border-box;
    cursor: pointer;
    position: fixed;
    right: 15px;
    z-index: 11;
}

.thumb-lucky {
    display: flex;
    max-width: 100px;
    position: relative;
}

.thumb-lucky.jun88k36 {
    max-width: 150px;
}

.thumb-wheel {
    display: flex;
    max-width: 100px;
    position: relative;
}

.thumb-wheel .bg_icon {
    background-image: url(/static/media/bg-icon-spin-wheel.ae032befb590d8a31d4f.png);
    background-position: 50%;
    background-size: cover;
    height: 100%;
    position: absolute;
    width: 100%;
}

.tooltip-lucky {
    background-color: #f18c0f;
    border-radius: 4px;
    bottom: calc(100% + 5px);
    color: #fff;
    font-size: 14px;
    opacity: 0;
    padding: 8px 12px;
    position: absolute;
    right: 0;
    transition: opacity .7s ease, visibility .8s ease;
    visibility: hidden;
    width: max-content;
}

.tooltip-lucky.tooltip-spin-wheel {
    background-color: #4c9bb6;
}

.tooltip-lucky.jun88k36 {
    background-color: #1f98cc;
}

.lucky:hover .tooltip-lucky {
    opacity: 1;
    visibility: visible;
}

/* ===========================================
   幸运图标动画
   =========================================== */
.icon-lucky {
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-name: spaceboots;
    animation-timing-function: linear;
    display: block;
    height: auto;
    transform-origin: 50% 50%;
    width: 100%;
}

@keyframes spaceboots {
    0% {
        transform: translate(2px, 1px) rotate(0deg);
    }
    10% {
        transform: translate(-1px, -2px) rotate(-1deg);
    }
    20% {
        transform: translate(-3px) rotate(1deg);
    }
    30% {
        transform: translateY(2px) rotate(0deg);
    }
    40% {
        transform: translate(1px, -1px) rotate(1deg);
    }
    50% {
        transform: translate(-1px, 2px) rotate(-1deg);
    }
    60% {
        transform: translate(-3px, 1px) rotate(0deg);
    }
    70% {
        transform: translate(2px, 1px) rotate(-1deg);
    }
    80% {
        transform: translate(-1px, -1px) rotate(1deg);
    }
    90% {
        transform: translate(2px, 2px) rotate(0deg);
    }
    to {
        transform: translate(1px, -2px) rotate(-1deg);
    }
}

.icon-lucky {
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-name: spaceboots;
    -webkit-animation-timing-function: linear;
    -webkit-transform-origin: 50% 50%;
}

/* ===========================================
   模态框样式
   =========================================== */
.modal-body-lucky {
    left: 50%;
    max-width: 778px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.modal-body-lucky:focus-visible {
    outline: medium none invert;
    outline: initial;
}

.modal-body-lucky .close-modal {
    top: 25%;
    z-index: 999;
}

.modal-body-spin {
    left: 50%;
    max-width: 100%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.modal-body-spin:focus-visible {
    outline: medium none invert;
    outline: initial;
}

.modal-body-spin .close-modal {
    right: 20%;
    top: 10%;
    z-index: 999;
}

.content-modal-lucky {
    position: relative;
    width: 100%;
}

.content-modal-lucky iframe {
    height: 100vh;
    width: 100%;
}

/* ===========================================
   转盘样式
   =========================================== */
.wheel-canvas-style:after {
    z-index: 99;
}

.att-spin:before,
.wheel-canvas-style:after {
    background-image: url(/static/media/ring-spin.329ec3f163c09cdd9c29.png);
    height: 100%;
    position: absolute;
    width: 100%;
}

.att-spin:before {
    height: 600px;
    width: 600px;
    z-index: 9999;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(1turn);
    }
}

.icon-spin-wheel {
    animation: spin 2s linear infinite;
    z-index: 999;
}

.icon-spin-wheel:hover {
    animation-play-state: paused;
}

/* ===========================================
   响应式设计 - 移动设备
   =========================================== */
@media only screen and (max-width: 767px) {
    .thumb-lucky,
    .thumb-wheel {
        max-width: 60px;
    }

    .thumb-lucky.jun88k36 {
        max-width: 80px;
    }

    .lucky {
        bottom: auto;
        right: 10px;
        top: 236px;
    }

    .lucky.spin-wheel-lucky {
        bottom: auto;
        right: 6px;
        top: 80%;
    }

    .modal-body-spin .close-modal {
        right: 10px;
    }
}

/* ===========================================
   恭喜弹窗动画
   =========================================== */
@keyframes confetti-slow {
    0% {
        transform: translateZ(0) rotateX(0) rotateY(0);
    }
    to {
        transform: translate3d(25px, 105vh, 0) rotateX(1turn) rotateY(180deg);
    }
}

@keyframes confetti-medium {
    0% {
        transform: translateZ(0) rotateX(0) rotateY(0);
    }
    to {
        transform: translate3d(100px, 105vh, 0) rotateX(100deg) rotateY(1turn);
    }
}

@keyframes confetti-fast {
    0% {
        transform: translateZ(0) rotateX(0) rotateY(0);
    }
    to {
        transform: translate3d(-50px, 105vh, 0) rotateX(10deg) rotateY(250deg);
    }
}

/* ===========================================
   恭喜弹窗样式
   =========================================== */
.congrat-container {
    background: #ffffffb3;
    border: 1px solid #fff;
    display: fixed;
    height: 100vh;
    left: 0;
    top: 0;
    width: 100vw;
}

.confetti-container {
    align-items: center;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    left: 0;
    line-height: 48px;
    overflow: hidden;
    perspective: 700px;
    position: absolute;
    right: 0;
    top: 0;
}

.confetti {
    border-radius: 0;
    position: absolute;
    top: -10px;
    z-index: 1;
}

.confetti--animation-slow {
    animation: confetti-slow 2.25s linear 1 forwards;
}

.confetti--animation-medium {
    animation: confetti-medium 1.75s linear 1 forwards;
}

.confetti--animation-fast {
    animation: confetti-fast 1.25s linear 1 forwards;
}

/* ===========================================
   勾选标记样式
   =========================================== */
.checkmark-circle {
    display: inline-block;
    height: 150px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    vertical-align: top;
    width: 150px;
}

.checkmark-circle .background {
    background: #00c09d;
    border-radius: 50%;
    height: 150px;
    position: absolute;
    width: 150px;
}

.checkmark-circle .checkmark {
    border-radius: 5px;
}

.checkmark-circle .checkmark.draw:after {
    animation-delay: .1s;
    animation-duration: 3s;
    animation-fill-mode: forwards;
    animation-name: checkmark;
    animation-timing-function: ease;
    transform: scaleX(-1) rotate(135deg);
}

.checkmark-circle .checkmark:after {
    border-radius: 2.5px !important;
    border-right: 15px solid #fff;
    border-top: 15px solid #fff;
    content: "";
    height: 75px;
    left: 25px;
    opacity: 1;
    position: absolute;
    top: 75px;
    transform-origin: left top;
    width: 37.5px;
}

@keyframes checkmark {
    0% {
        height: 0;
        opacity: 1;
        width: 0;
    }
    20% {
        height: 0;
        opacity: 1;
        width: 37.5px;
    }
    40% {
        height: 75px;
        opacity: 1;
        width: 37.5px;
    }
    to {
        height: 75px;
        opacity: 1;
        width: 37.5px;
    }
}

/* ===========================================
   恭喜弹窗按钮
   =========================================== */
.congrat-submit-btn {
    background-color: #00c09d;
    border: 1px solid #00ab8c;
    border-radius: 5px;
    box-shadow: 0 2px 4px 0 #57475133;
    color: #fff;
    cursor: pointer;
    font-size: 15px;
    height: 45px;
    margin-top: 24px;
    transition: all 2s ease-out;
    transition: all .2s ease-out;
    width: 200px;
}

.congrat-submit-btn:hover {
    background-color: #2ca893;
    transition: all .2s ease-out;
}

.congrat-wrapper {
    display: block;
    height: 100%;
    left: 0;
    margin-top: -1500px;
    position: fixed;
    top: 0;
    transition: .5s;
    width: 100%;
    z-index: 100;
}

.congrat-main h1 {
    color: #fff;
    font-size: 2em;
    font-weight: 700;
}

.congrat-id {
    font-size: 1.2em !important;
    font-weight: 600;
}

.congrat-main p {
    display: flex;
    font-size: 1.1em;
}

.congrat-score {
    font-size: 1.2em !important;
    font-weight: 600;
    padding: 0 8px;
}

/* ===========================================
   加载动画样式
   =========================================== */
:root {
    --hue: 223;
    --bg: hsl(var(--hue), 10%, 90%);
    --fg: hsl(var(--hue), 10%, 10%);
}

.pl,
.pl__worm {
    animation-duration: 3s;
    animation-iteration-count: infinite;
}

.pl {
    animation-name: bump;
    animation-timing-function: linear;
    height: 8em;
    width: 8em;
}

.pl__ring {
    stroke: #17181c1a;
    stroke: hsla(var(--hue), 10%, 10%, .1);
    transition: stroke .3s;
}

.pl__worm {
    animation-name: worm;
    animation-timing-function: cubic-bezier(.42, .17, .75, .83);
}

@media (prefers-color-scheme: dark) {
    :root {
        --bg: hsl(var(--hue), 10%, 10%);
        --fg: hsl(var(--hue), 10%, 90%);
    }
    .pl__ring {
        stroke: #e3e4e81a;
        stroke: hsla(var(--hue), 10%, 90%, .1);
    }
}

@keyframes bump {
    0%, 42%, 46%, 51%, 55%, 59%, 63%, 67%, 71%, 74%, 78%, 81%, 85%, 88%, 92%, to {
        transform: translate(0);
    }
    44% {
        transform: translate(1.33%, 6.75%);
    }
    53% {
        transform: translate(-16.67%, -.54%);
    }
    61% {
        transform: translate(3.66%, -2.46%);
    }
    69% {
        transform: translate(-.59%, 15.27%);
    }
    76% {
        transform: translate(-1.92%, -4.68%);
    }
    83% {
        transform: translate(9.38%, .96%);
    }
    90% {
        transform: translate(-4.55%, 1.98%);
    }
}

@keyframes worm {
    0% {
        stroke-dashoffset: 10;
    }
    25% {
        stroke-dashoffset: 295;
    }
    to {
        stroke-dashoffset: 1165;
    }
}

.loading-cont {
    background-color: #000000bf;
    height: 100vh;
    opacity: 0;
    position: fixed;
    top: 0;
    transition: all .3s ease-in-out;
    width: 100%;
    z-index: -500;
}

.wrapper {
    display: flex;
    justify-content: center;
    margin-top: 40vh;
}

.loading-cont-show {
    opacity: 1 !important;
    transition: all .2s ease-in-out;
    z-index: 500 !important;
}

/* ===========================================
   促销列表样式
   =========================================== */
#promo-list {
    background-color: #151515;
    display: flex;
    justify-content: center;
}

.promo-list-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 50px 0 32px;
    width: 1300px;
}

.item-promo {
    margin-bottom: 1.5%;
    width: 49%;
}

.item-promo,
.item-promo img {
    transition: all .125s ease-in-out;
}

.item-promo img {
    border-radius: 8px;
    filter: drop-shadow(3px 3px 3px #424242);
    width: 100%;
}

.item-promo:hover {
    cursor: pointer;
    scale: 1.02;
    transition: all .125s ease-in-out;
}

/* ===========================================
   弹窗详情样式
   =========================================== */
.popup-detail-promo {
    align-items: center;
    background-color: rgba(0, 0, 0, .589);
    display: flex;
    height: 100vh;
    justify-content: center;
    left: 0;
    position: fixed;
    right: 0;
    top: -1500px;
    transition: all .5s ease-in-out;
    width: 100%;
    z-index: 500;
}

.popup-detail-wrapper {
    background-color: #fff;
    border-radius: 15px;
    box-shadow: 2.4px 2.4px 3.2px #00000026;
    height: 90vh;
    width: 1200px;
}

.content-promo {
    height: 96%;
    line-height: 30px;
    margin: 15px 10px;
    overflow-y: scroll;
    padding: 10px;
}

.popup-down {
    top: 0 !important;
    transition: all .5s ease-in-out;
}

.content-promo::-webkit-scrollbar {
    border-radius: 15px;
    height: 8px;
    width: 8px;
}

.content-promo::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 15px;
}

.content-promo::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 15px;
}

.content-promo::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.popup-close {
    position: relative;
}

.close-icon {
    background: #bdbaba;
    border-radius: 50%;
    color: #333031;
    cursor: pointer;
    font-size: 18px;
    font-weight: 300;
    height: 28px;
    line-height: 1.4;
    margin: auto;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 28px;
}

.close-icon:hover {
    background: #c7a5a5;
    border-radius: 50%;
    color: #6d1a36;
}

/* ===========================================
   SweetAlert 自定义按钮
   =========================================== */
.swal-custom-confirm-button {
    background: #3e7a97 !important;
}

.swal-custom-cancel-button {
    background: #b5b5b5 !important;
}

/* ===========================================
   基础重置样式
   =========================================== */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body,
input,
select {
    font-family: Mulish, sans-serif;
    font-size: 16px;
}

a {
    color: inherit;
    text-decoration: none;
}

/* ===========================================
   工具类样式
   =========================================== */
.disabled {
    box-shadow: none !important;
    cursor: not-allowed !important;
    filter: alpha(opacity=65) !important;
    opacity: .65 !important;
    pointer-events: none !important;
}

.desktop {
    display: block;
}

.mobile {
    display: none;
}

/* ===========================================
   页脚样式
   =========================================== */
.footer {
    background-color: #000;
    width: 100%;
}

.copyright {
    color: #fff;
    line-height: 150px;
    text-align: center;
    width: 100%;
}

.copyright p {
    font-size: 1em;
}

.copyright a {
    color: #fff;
    font-weight: 600;
}

/* ===========================================
   应用容器样式
   =========================================== */
.app {
    align-items: center;
    background: linear-gradient(180deg, #ffffff26 0, #00000026), radial-gradient(at top center, #fff6 0, #0006 120%) #989898;
    background-blend-mode: multiply, multiply;
    height: 100vh;
    width: 100%;
}

.app,
.container {
    display: flex;
    justify-content: center;
}

.container {
    max-width: 1150px;
}

.container > div {
    width: 50%;
}

.content {
    color: #fff;
}

.title {
    font-size: 1.5em;
    font-weight: 800;
    margin-top: 30px;
}

.sub-title {
    font-size: 3.7em;
    font-weight: 800;
    margin-top: 120px;
}

.sub-content {
    font-size: 1.2em;
    margin-top: 30px;
}

.img {
    align-items: center;
    display: flex;
    justify-content: center;
}

.img-baotri {
    height: auto;
    width: 600px;
}

/* ===========================================
   转盘容器样式
   =========================================== */
.roulette-container {
    flex-shrink: 0;
    height: 90vw;
    max-height: 445px;
    max-width: 445px;
    object-fit: contain;
    pointer-events: none;
    position: relative;
    width: 90vw;
    z-index: 5;
}

.rotation-container {
    align-items: center;
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.roulette-pointer-image {
    position: absolute;
    right: 6px;
    top: 15px;
    width: 17%;
    z-index: 5;
}

.wheel-canvas-style {
    background-image: url(/static/media/ring-spin.329ec3f163c09cdd9c29.png);
    background-size: 100% 100%;
    height: 100%;
    overflow: hidden;
    padding: 5%;
    position: relative;
    width: 100%;
}

/* ===========================================
   转盘动画关键帧
   =========================================== */
@keyframes spin-animation {
    0% {
        transform: rotate(var(--start-rotation-degrees));
    }
    to {
        transform: rotate(calc(var(--start-rotation-degrees) + 1turn));
    }
}

@keyframes continue-spin-animation {
    0% {
        transform: rotate(calc(var(--start-rotation-degrees) + 1turn));
    }
    to {
        transform: rotate(calc(var(--start-rotation-degrees) + 2turn));
    }
}

@keyframes stop-spin-animation {
    0% {
        transform: rotate(calc(var(--start-rotation-degrees) + 2turn));
    }
    to {
        transform: rotate(calc(4turn + var(--final-rotation-degrees)));
    }
}

.rotation-container.started-spinning {
    animation: spin-animation var(--start-spinning-time) cubic-bezier(.71, var(--bezier-value), .96, .9) 0s 1 normal forwards running, continue-spin-animation var(--continue-spinning-time) linear var(--start-spinning-time) 1 normal forwards running, stop-spin-animation var(--stop-spinning-time) cubic-bezier(0, 0, .35, 1.02) calc(var(--start-spinning-time) + var(--continue-spinning-time)) 1 normal forwards running;
}

/* ===========================================
   转盘模态框样式
   =========================================== */
.modal-spin-wheel.shbet {
    background: #000c;
    z-index: 98;
}

.modal-body-spin-wheel {
    height: 100%;
}

.modal-spin-wheel .content-modal.content-spin-wheel {
    align-items: center;
    background: #0000 none repeat 0 0/auto auto padding-box border-box scroll;
    background: initial;
    background-image: url(/static/media/bg-spin-wheel.44631dfadc58855650d1.png);
    background-size: 100% 100%;
    border: initial;
    display: flex;
    height: 100vh;
    justify-content: center;
    margin: auto;
    max-width: 100vh;
    position: relative;
    width: 100%;
}

.modal-spin-wheel .content-modal.content-spin-wheel .close-modal {
    cursor: pointer;
    position: absolute;
    right: 16px;
    top: 20%;
    z-index: 99;
}

.box-spin-wheel {
    align-items: center;
    display: flex;
    flex-direction: column;
    width: 100%;
}

.button-spin-wheel {
    background: #0000 none repeat 0 0/auto auto padding-box border-box scroll;
    background: initial;
    border: initial;
    cursor: pointer;
    display: flex;
    justify-content: center;
    margin: auto;
    max-width: 172px;
    outline: medium none invert;
    outline: initial;
    position: relative;
    width: 30%;
    z-index: 99;
}

.btn-thumb-spin {
    height: auto;
    object-fit: cover;
    width: 100%;
}

.box-spin-wheel .bhdLno {
    max-height: 600px;
    max-width: 600px;
}

.noti-spin-wheel .css-m9glnp-MuiPaper-root-MuiDialog-paper {
    background-color: #00000030;
}

.modal-body-spin-noti {
    display: flex;
    margin: auto;
    max-width: 1300px;
    padding: 20px;
    position: relative;
    width: 100%;
}

.close-modal-noti {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 100;
}

.content-spin-noti,
.content-spin-noti .content-noti {
    position: relative;
}

.bg-noti-spin,
.logo-noti-spin {
    height: auto;
    width: 100%;
}

.att-spin,
.att-spin-wheel {
    overflow: hidden;
}

.header-content-noti {
    margin-bottom: -10%;
    max-width: 420px;
    top: 0;
    width: 50%;
}

.text-noti-spin {
    left: 50%;
    margin: auto;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
}

.text-noti-spin span {
    color: #fff;
    font-family: Inter Tight, sans-serif;
    font-size: 60px;
    font-weight: 900;
    font-weight: 800;
    line-height: 74.71px;
    text-align: center;
    text-transform: uppercase;
}

.text-noti-spin .point-noti {
    color: #ffee57;
}

/* ===========================================
   礼品容器样式
   =========================================== */
.gift {
    bottom: 15%;
    bottom: 6%;
    box-sizing: border-box;
    cursor: pointer;
    position: fixed;
    right: 15px;
    right: 4%;
    z-index: 11;
}

.thumb-gift {
    display: flex;
    margin: 15px 0;
    max-width: 80px;
    position: relative;
}

.thumb-gift:hover .tooltip-gift {
    opacity: 1;
    visibility: visible;
}

.tooltip-gift {
    background-color: #4c9bb6;
    background-color: #0053df;
    border-radius: 4px;
    bottom: 100%;
    color: #fff;
    font-size: 14px;
    left: 0;
    opacity: 0;
    padding: 8px 12px;
    position: absolute;
    transition: opacity .7s ease, visibility .8s ease;
    visibility: hidden;
    width: max-content;
}

.icon-gift {
    display: block;
    height: auto;
    width: 100%;
}

.right-gif-button-show {
    align-items: center;
    background-color: #26a7df;
    border: initial;
    border-radius: .75rem 0 0 .75rem;
    box-shadow: 0 4px 6px #0003;
    color: #fff;
    display: flex;
    height: 2rem;
    justify-content: center;
    position: fixed;
    right: .5rem;
    top: 50%;
    transform: translateY(-50%);
    width: 2rem;
    z-index: 50;
}

.right-gif-button-icon {
    height: 1.25rem;
    transform: rotate(90deg);
    width: 1.25rem;
}

.right-gif-close-button {
    align-items: center;
    background-color: #26a7df;
    border: 2px solid #fff;
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    height: 1.75rem;
    justify-content: center;
    position: absolute;
    right: -.5rem;
    top: -.5rem;
    width: 1.75rem;
}

.right-gif-container {
    cursor: pointer;
    position: fixed;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 50;
}

.right-gif-banner-wrapper {
    display: flex;
}

.right-gif-banner-link {
    display: flex;
    max-width: 160px;
}

.right-gif-banner-img {
    cursor: pointer;
    height: auto;
    margin-bottom: .5rem;
    width: 100%;
}

/* ===========================================
   MUI 标签页样式
   =========================================== */
.MuiTabs-flexContainer,
.css-heg063-MuiTabs-flexContainer {
    gap: 16px;
    justify-content: center;
}

/* ===========================================
   响应式设计 - 大屏幕
   =========================================== */
@media only screen and (max-width: 1024px) {
    .title-cont {
        width: 90%;
    }

    .title-content {
        font-size: 2em;
    }

    .sub-content {
        font-size: 1.2em;
        margin-top: 10px;
    }

    .banner-logo .logo-pic {
        width: 300px;
    }

    .form-wrapper {
        width: 100%;
    }

    .footer-line {
        height: 562px;
    }

    .promo-list-wrapper {
        margin: 50px 0 24px;
        width: 90%;
    }

    .title-form {
        font-size: 1.1em;
    }

    /* ===========================================
   表单提交控制图片上传
   =========================================== */
   .images-div {
        bottom: -45px !important;
    }
    .images-item .form-value .form-item .input-form{
        width: 13rem;
    }

    .images-item .form-value .form-item .input-form-images{
        width: 230px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
    }
    .images-item .form-value .form-item .input-form-images .add-upload-images,
    .images-item .form-value .form-item .input-form-images .add-upload{
        flex-shrink: 0;
    }
 
}

/* ===========================================
   响应式设计 - 小屏幕
   =========================================== */
@media only screen and (max-width: 730px) {
    .css-148y5ho{
        width: 97%;
    }
    .desktop {
        display: none;
    }

    .mobile {
        display: block;
        margin-top: 16px;
    }

    .title-cont {
        flex-direction: column-reverse;
        height: auto;
        text-align: center;
        width: 100%;
    }

    .banner-logo .logo-pic {
        height: 120px;
        width: 230px;
    }

    .title-cont > div {
        width: 90%;
    }

    .banner-logo {
        display: flex;
        justify-content: center;
    }

    .title-content {
        font-size: 1.4em;
    }

    #title-header {
        margin-top: 20px;
        position: absolute;
        width: 100%;
        z-index: 10;
    }

    .sub-content {
        display: none;
    }

    #player-form {
        align-items: center;
        bottom: 0;
        display: flex;
        justify-content: center;
        left: 0;
        position: absolute;
        right: 0;
        width: 100%;
    }

    .footer-line {
        height: 600px;
    }

    .footer-line img{
        width: 100%;
        max-width: 100%;
    }

    .icon-form img {
        width: 70%;
    }

    .form-wrapper {
        display: flex;
        flex-direction: column;
        padding-top: 4px;
        width: 100%;
    }

    /* ===========================================
   表单提交控制图片上传
   =========================================== */
   .images-div {
        bottom: -45px !important;
    }
    .images-item{
        flex-wrap: nowrap;
        padding: 0;
    }

    .images-item .form-value{
        width: 100%;
        display: block;
        align-items: flex-start;
    }

    .images-item .form-value .form-item{
        display: block;
        align-items: flex-start;
        background-color: #fff;
        width: auto;
    }
    .images-item .form-value .form-item .input-form{
        width: 17rem;
    }
    .images-item .form-value .form-item .input-form .selected-option, 
    .images-item .form-value .form-item input{
        background-color: #f5f5f5 !important;
    }

    .input-form-captcha {
        width: 55%;
    }

    .form-value {
        padding: 3px 12px;
        width: 100%;
    }

    .input-form {
        margin-bottom: 0;
        width: 95%;
    }

    .icon-form {
        display: none;
        margin: 0 auto;
    }

    .item-promo {
        width: 90%;
    }

    .promo-list-wrapper {
        justify-content: center;
        margin-top: 5px;
        width: 100%;
    }

    /*.item-promo img {
        box-shadow: 0 1px 3px #0000001f, 0 1px 2px #0000003d;
    }*/

    .copyright p {
        font-size: .8em !important;
    }

    #captcha-input,
    .custom-select,
    .input-form input {
        font-size: .9em;
    }

    .content-promo figure,
    .content-promo figure img,
    .popup-detail-wrapper {
        width: 100%;
    }

    .close-icon {
        font-size: 18px;
        right: 0;
        top: 0;
    }

    .content-promo p span {
        font-size: 15px;
    }

    .box-btn-sub {
        margin: auto;
    }

    .close-modal-noti {
        right: 10px;
        top: -20px;
    }

    .close-modal-noti svg {
        height: 45px;
        width: 45px;
    }

    .header-content-noti {
        display: flex;
        justify-content: center;
        margin: auto auto -24px;
        position: static;
    }

    .text-noti-spin {
        width: 98%;
    }

    .text-noti-spin span {
        font-size: 20px;
        font-weight: 800;
        line-height: 24px;
        text-align: center;
    }
}

/* ===========================================
   响应式设计 - 移动设备
   =========================================== */
@media only screen and (max-width: 767px) {
    .right-gif-container {
        right: .5rem;
    }

    .thumb-gift {
        max-width: 95px;
    }

    .right-gif-banner-link {
        max-width: 80px;
    }

    .MuiTabs-flexContainer,
    .css-heg063-MuiTabs-flexContainer {
        gap: 8px;
        width: 100%;
    }
}

/* ===========================================
   响应式设计 - 设备宽度
   =========================================== */
@media only screen and (max-device-width: 1150px) {
    .container {
        align-items: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        max-width: 95%;
        text-align: center;
    }

    .title {
        margin-top: 0;
    }

    .sub-title,
    .title {
        font-size: 1.5em;
        font-weight: 800;
    }

    .sub-title {
        margin-top: 10px;
    }

    .sub-content {
        font-size: 1em;
        margin-bottom: 30px;
        margin-top: 30px;
    }

    .img {
        align-items: center;
        display: flex;
        justify-content: center;
        overflow: hidden;
        width: 95%;
    }

    img {
        height: auto;
        max-width: 370px;
    }

    .container > div {
        width: 100%;
    }
}

.swal2-popup.swal2-toast {
    box-sizing: border-box;
    grid-column: 1/4 !important;
    grid-row: 1/4 !important;
    grid-template-columns: min-content auto min-content;
    padding: 1em;
    overflow-y: hidden;
    background: #fff;
    box-shadow: 0 0 1px rgba(0, 0, 0, .075), 0 1px 2px rgba(0, 0, 0, .075), 1px 2px 4px rgba(0, 0, 0, .075), 1px 3px 8px rgba(0, 0, 0, .075), 2px 4px 16px rgba(0, 0, 0, .075);
    pointer-events: all
}

.swal2-popup.swal2-toast>* {
    grid-column: 2
}

.swal2-popup.swal2-toast .swal2-title {
    margin: .5em 1em;
    padding: 0;
    font-size: 1em;
    text-align: initial
}

.swal2-popup.swal2-toast .swal2-loading {
    justify-content: center
}

.swal2-popup.swal2-toast .swal2-input {
    height: 2em;
    margin: .5em;
    font-size: 1em
}

.swal2-popup.swal2-toast .swal2-validation-message {
    font-size: 1em
}

.swal2-popup.swal2-toast .swal2-footer {
    margin: .5em 0 0;
    padding: .5em 0 0;
    font-size: .8em
}

.swal2-popup.swal2-toast .swal2-close {
    grid-column: 3/3;
    grid-row: 1/99;
    align-self: center;
    width: .8em;
    height: .8em;
    margin: 0;
    font-size: 2em
}

.swal2-popup.swal2-toast .swal2-html-container {
    margin: .5em 1em;
    padding: 0;
    overflow: initial;
    font-size: 1em;
    text-align: initial
}

.swal2-popup.swal2-toast .swal2-html-container:empty {
    padding: 0
}

.swal2-popup.swal2-toast .swal2-loader {
    grid-column: 1;
    grid-row: 1/99;
    align-self: center;
    width: 2em;
    height: 2em;
    margin: .25em
}

.swal2-popup.swal2-toast .swal2-icon {
    grid-column: 1;
    grid-row: 1/99;
    align-self: center;
    width: 2em;
    min-width: 2em;
    height: 2em;
    margin: 0 .5em 0 0
}

.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content {
    display: flex;
    align-items: center;
    font-size: 1.8em;
    font-weight: bold
}

.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring {
    width: 2em;
    height: 2em
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line] {
    top: .875em;
    width: 1.375em
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left] {
    left: .3125em
}

.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right] {
    right: .3125em
}

.swal2-popup.swal2-toast .swal2-actions {
    justify-content: flex-start;
    height: auto;
    margin: 0;
    margin-top: .5em;
    padding: 0 .5em
}

.swal2-popup.swal2-toast .swal2-styled {
    margin: .25em .5em;
    padding: .4em .6em;
    font-size: 1em
}

.swal2-popup.swal2-toast .swal2-success {
    border-color: #a5dc86
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line] {
    position: absolute;
    width: 1.6em;
    height: 3em;
    border-radius: 50%
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left] {
    top: -0.8em;
    left: -0.5em;
    transform: rotate(-45deg);
    transform-origin: 2em 2em;
    border-radius: 4em 0 0 4em
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right] {
    top: -0.25em;
    left: .9375em;
    transform-origin: 0 1.5em;
    border-radius: 0 4em 4em 0
}

.swal2-popup.swal2-toast .swal2-success .swal2-success-ring {
    width: 2em;
    height: 2em
}

.swal2-popup.swal2-toast .swal2-success .swal2-success-fix {
    top: 0;
    left: .4375em;
    width: .4375em;
    height: 2.6875em
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line] {
    height: .3125em
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip] {
    top: 1.125em;
    left: .1875em;
    width: .75em
}

.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long] {
    top: .9375em;
    right: .1875em;
    width: 1.375em
}

.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-tip {
    animation: swal2-toast-animate-success-line-tip .75s
}

.swal2-popup.swal2-toast .swal2-success.swal2-icon-show .swal2-success-line-long {
    animation: swal2-toast-animate-success-line-long .75s
}

.swal2-popup.swal2-toast.swal2-show {
    animation: swal2-toast-show .5s
}

.swal2-popup.swal2-toast.swal2-hide {
    animation: swal2-toast-hide .1s forwards
}

div:where(.swal2-container) {
    display: grid;
    position: fixed;
    z-index: 1060;
    inset: 0;
    box-sizing: border-box;
    grid-template-areas: "top-start     top            top-end" "center-start  center         center-end" "bottom-start  bottom-center  bottom-end";
    grid-template-rows: minmax(min-content, auto) minmax(min-content, auto) minmax(min-content, auto);
    height: 100%;
    padding: .625em;
    overflow-x: hidden;
    transition: background-color .1s;
    -webkit-overflow-scrolling: touch
}

div:where(.swal2-container).swal2-backdrop-show,
div:where(.swal2-container).swal2-noanimation {
    background: rgba(0, 0, 0, .4)
}

div:where(.swal2-container).swal2-backdrop-hide {
    background: rgba(0, 0, 0, 0) !important
}

div:where(.swal2-container).swal2-top-start,
div:where(.swal2-container).swal2-center-start,
div:where(.swal2-container).swal2-bottom-start {
    grid-template-columns: minmax(0, 1fr) auto auto
}

div:where(.swal2-container).swal2-top,
div:where(.swal2-container).swal2-center,
div:where(.swal2-container).swal2-bottom {
    grid-template-columns: auto minmax(0, 1fr) auto
}

div:where(.swal2-container).swal2-top-end,
div:where(.swal2-container).swal2-center-end,
div:where(.swal2-container).swal2-bottom-end {
    grid-template-columns: auto auto minmax(0, 1fr)
}

div:where(.swal2-container).swal2-top-start>.swal2-popup {
    align-self: start
}

div:where(.swal2-container).swal2-top>.swal2-popup {
    grid-column: 2;
    place-self: start center
}

div:where(.swal2-container).swal2-top-end>.swal2-popup,
div:where(.swal2-container).swal2-top-right>.swal2-popup {
    grid-column: 3;
    place-self: start end
}

div:where(.swal2-container).swal2-center-start>.swal2-popup,
div:where(.swal2-container).swal2-center-left>.swal2-popup {
    grid-row: 2;
    align-self: center
}

div:where(.swal2-container).swal2-center>.swal2-popup {
    grid-column: 2;
    grid-row: 2;
    place-self: center center
}

div:where(.swal2-container).swal2-center-end>.swal2-popup,
div:where(.swal2-container).swal2-center-right>.swal2-popup {
    grid-column: 3;
    grid-row: 2;
    place-self: center end
}

div:where(.swal2-container).swal2-bottom-start>.swal2-popup,
div:where(.swal2-container).swal2-bottom-left>.swal2-popup {
    grid-column: 1;
    grid-row: 3;
    align-self: end
}

div:where(.swal2-container).swal2-bottom>.swal2-popup {
    grid-column: 2;
    grid-row: 3;
    place-self: end center
}

div:where(.swal2-container).swal2-bottom-end>.swal2-popup,
div:where(.swal2-container).swal2-bottom-right>.swal2-popup {
    grid-column: 3;
    grid-row: 3;
    place-self: end end
}

div:where(.swal2-container).swal2-grow-row>.swal2-popup,
div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup {
    grid-column: 1/4;
    width: 100%
}

div:where(.swal2-container).swal2-grow-column>.swal2-popup,
div:where(.swal2-container).swal2-grow-fullscreen>.swal2-popup {
    grid-row: 1/4;
    align-self: stretch
}

div:where(.swal2-container).swal2-no-transition {
    transition: none !important
}

div:where(.swal2-container) div:where(.swal2-popup) {
    display: none;
    position: relative;
    box-sizing: border-box;
    grid-template-columns: minmax(0, 100%);
    width: 32em;
    max-width: 100%;
    padding: 0 0 1.25em;
    border: none;
    border-radius: 5px;
    background: #fff;
    color: #545454;
    font-family: inherit;
    font-size: 1rem
}

div:where(.swal2-container) div:where(.swal2-popup):focus {
    outline: none
}

div:where(.swal2-container) div:where(.swal2-popup).swal2-loading {
    overflow-y: hidden
}

div:where(.swal2-container) h2:where(.swal2-title) {
    position: relative;
    max-width: 100%;
    margin: 0;
    padding: .8em 1em 0;
    color: inherit;
    font-size: 1.875em;
    font-weight: 600;
    text-align: center;
    text-transform: none;
    word-wrap: break-word
}

div:where(.swal2-container) div:where(.swal2-actions) {
    display: flex;
    z-index: 1;
    box-sizing: border-box;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: auto;
    margin: 1.25em auto 0;
    padding: 0
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled[disabled] {
    opacity: .4
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:hover {
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1))
}

div:where(.swal2-container) div:where(.swal2-actions):not(.swal2-loading) .swal2-styled:active {
    background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2))
}

div:where(.swal2-container) div:where(.swal2-loader) {
    display: none;
    align-items: center;
    justify-content: center;
    width: 2.2em;
    height: 2.2em;
    margin: 0 1.875em;
    animation: swal2-rotate-loading 1.5s linear 0s infinite normal;
    border-width: .25em;
    border-style: solid;
    border-radius: 100%;
    border-color: #2778c4 rgba(0, 0, 0, 0) #2778c4 rgba(0, 0, 0, 0)
}

div:where(.swal2-container) button:where(.swal2-styled) {
    margin: .3125em;
    padding: .625em 1.1em;
    transition: box-shadow .1s;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0);
    font-weight: 500
}

div:where(.swal2-container) button:where(.swal2-styled):not([disabled]) {
    cursor: pointer
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm) {
    border: 0;
    border-radius: .25em;
    background: initial;
    background-color: #7066e0;
    color: #fff;
    font-size: 1em
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm):focus-visible {
    box-shadow: 0 0 0 3px rgba(112, 102, 224, .5)
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny) {
    border: 0;
    border-radius: .25em;
    background: initial;
    background-color: #dc3741;
    color: #fff;
    font-size: 1em
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-deny):focus-visible {
    box-shadow: 0 0 0 3px rgba(220, 55, 65, .5)
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel) {
    border: 0;
    border-radius: .25em;
    background: initial;
    background-color: #6e7881;
    color: #fff;
    font-size: 1em
}

div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel):focus-visible {
    box-shadow: 0 0 0 3px rgba(110, 120, 129, .5)
}

div:where(.swal2-container) button:where(.swal2-styled).swal2-default-outline:focus-visible {
    box-shadow: 0 0 0 3px rgba(100, 150, 200, .5)
}

div:where(.swal2-container) button:where(.swal2-styled):focus-visible {
    outline: none
}

div:where(.swal2-container) button:where(.swal2-styled)::-moz-focus-inner {
    border: 0
}

div:where(.swal2-container) div:where(.swal2-footer) {
    margin: 1em 0 0;
    padding: 1em 1em 0;
    border-top: 1px solid #eee;
    color: inherit;
    font-size: 1em;
    text-align: center
}

div:where(.swal2-container) .swal2-timer-progress-bar-container {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    grid-column: auto !important;
    overflow: hidden;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px
}

div:where(.swal2-container) div:where(.swal2-timer-progress-bar) {
    width: 100%;
    height: .25em;
    background: rgba(0, 0, 0, .2)
}

div:where(.swal2-container) img:where(.swal2-image) {
    max-width: 100%;
    margin: 2em auto 1em
}

div:where(.swal2-container) button:where(.swal2-close) {
    z-index: 2;
    align-items: center;
    justify-content: center;
    width: 1.2em;
    height: 1.2em;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: -1.2em;
    padding: 0;
    overflow: hidden;
    transition: color .1s, box-shadow .1s;
    border: none;
    border-radius: 5px;
    background: rgba(0, 0, 0, 0);
    color: #ccc;
    font-family: monospace;
    font-size: 2.5em;
    cursor: pointer;
    justify-self: end
}

div:where(.swal2-container) button:where(.swal2-close):hover {
    transform: none;
    background: rgba(0, 0, 0, 0);
    color: #f27474
}

div:where(.swal2-container) button:where(.swal2-close):focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 3px rgba(100, 150, 200, .5)
}

div:where(.swal2-container) button:where(.swal2-close)::-moz-focus-inner {
    border: 0
}

div:where(.swal2-container) .swal2-html-container {
    z-index: 1;
    justify-content: center;
    margin: 0;
    padding: 1em 1.6em .3em;
    overflow: auto;
    color: inherit;
    font-size: 1.125em;
    font-weight: normal;
    line-height: normal;
    text-align: center;
    word-wrap: break-word;
    word-break: break-word
}

div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea),
div:where(.swal2-container) select:where(.swal2-select),
div:where(.swal2-container) div:where(.swal2-radio),
div:where(.swal2-container) label:where(.swal2-checkbox) {
    margin: 1em 2em 3px
}

div:where(.swal2-container) input:where(.swal2-input),
div:where(.swal2-container) input:where(.swal2-file),
div:where(.swal2-container) textarea:where(.swal2-textarea) {
    box-sizing: border-box;
    width: auto;
    transition: border-color .1s, box-shadow .1s;
    border: 1px solid #d9d9d9;
    border-radius: .1875em;
    background: rgba(0, 0, 0, 0);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .06), 0 0 0 3px rgba(0, 0, 0, 0);
    color: inherit;
    font-size: 1.125em
}

div:where(.swal2-container) input:where(.swal2-input).swal2-inputerror,
div:where(.swal2-container) input:where(.swal2-file).swal2-inputerror,
div:where(.swal2-container) textarea:where(.swal2-textarea).swal2-inputerror {
    border-color: #f27474 !important;
    box-shadow: 0 0 2px #f27474 !important
}

div:where(.swal2-container) input:where(.swal2-input):focus,
div:where(.swal2-container) input:where(.swal2-file):focus,
div:where(.swal2-container) textarea:where(.swal2-textarea):focus {
    border: 1px solid #b4dbed;
    outline: none;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .06), 0 0 0 3px rgba(100, 150, 200, .5)
}

div:where(.swal2-container) input:where(.swal2-input)::placeholder,
div:where(.swal2-container) input:where(.swal2-file)::placeholder,
div:where(.swal2-container) textarea:where(.swal2-textarea)::placeholder {
    color: #ccc
}

div:where(.swal2-container) .swal2-range {
    margin: 1em 2em 3px;
    background: #fff
}

div:where(.swal2-container) .swal2-range input {
    width: 80%
}

div:where(.swal2-container) .swal2-range output {
    width: 20%;
    color: inherit;
    font-weight: 600;
    text-align: center
}

div:where(.swal2-container) .swal2-range input,
div:where(.swal2-container) .swal2-range output {
    height: 2.625em;
    padding: 0;
    font-size: 1.125em;
    line-height: 2.625em
}

div:where(.swal2-container) .swal2-input {
    height: 2.625em;
    padding: 0 .75em
}

div:where(.swal2-container) .swal2-file {
    width: 75%;
    margin-right: auto;
    margin-left: auto;
    background: rgba(0, 0, 0, 0);
    font-size: 1.125em
}

div:where(.swal2-container) .swal2-textarea {
    height: 6.75em;
    padding: .75em
}

div:where(.swal2-container) .swal2-select {
    min-width: 50%;
    max-width: 100%;
    padding: .375em .625em;
    background: rgba(0, 0, 0, 0);
    color: inherit;
    font-size: 1.125em
}

div:where(.swal2-container) .swal2-radio,
div:where(.swal2-container) .swal2-checkbox {
    align-items: center;
    justify-content: center;
    background: #fff;
    color: inherit
}

div:where(.swal2-container) .swal2-radio label,
div:where(.swal2-container) .swal2-checkbox label {
    margin: 0 .6em;
    font-size: 1.125em
}

div:where(.swal2-container) .swal2-radio input,
div:where(.swal2-container) .swal2-checkbox input {
    flex-shrink: 0;
    margin: 0 .4em
}

div:where(.swal2-container) label:where(.swal2-input-label) {
    display: flex;
    justify-content: center;
    margin: 1em auto 0
}

div:where(.swal2-container) div:where(.swal2-validation-message) {
    align-items: center;
    justify-content: center;
    margin: 1em 0 0;
    padding: .625em;
    overflow: hidden;
    background: #f0f0f0;
    color: #666;
    font-size: 1em;
    font-weight: 300
}

div:where(.swal2-container) div:where(.swal2-validation-message)::before {
    content: "!";
    display: inline-block;
    width: 1.5em;
    min-width: 1.5em;
    height: 1.5em;
    margin: 0 .625em;
    border-radius: 50%;
    background-color: #f27474;
    color: #fff;
    font-weight: 600;
    line-height: 1.5em;
    text-align: center
}

div:where(.swal2-container) .swal2-progress-steps {
    flex-wrap: wrap;
    align-items: center;
    max-width: 100%;
    margin: 1.25em auto;
    padding: 0;
    background: rgba(0, 0, 0, 0);
    font-weight: 600
}

div:where(.swal2-container) .swal2-progress-steps li {
    display: inline-block;
    position: relative
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step {
    z-index: 20;
    flex-shrink: 0;
    width: 2em;
    height: 2em;
    border-radius: 2em;
    background: #2778c4;
    color: #fff;
    line-height: 2em;
    text-align: center
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step {
    background: #2778c4
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step {
    background: #add8e6;
    color: #fff
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line {
    background: #add8e6
}

div:where(.swal2-container) .swal2-progress-steps .swal2-progress-step-line {
    z-index: 10;
    flex-shrink: 0;
    width: 2.5em;
    height: .4em;
    margin: 0 -1px;
    background: #2778c4
}

div:where(.swal2-icon) {
    position: relative;
    box-sizing: content-box;
    justify-content: center;
    width: 5em;
    height: 5em;
    margin: 2.5em auto .6em;
    border: 0.25em solid rgba(0, 0, 0, 0);
    border-radius: 50%;
    border-color: #000;
    font-family: inherit;
    line-height: 5em;
    cursor: default;
    user-select: none
}

div:where(.swal2-icon) .swal2-icon-content {
    display: flex;
    align-items: center;
    font-size: 3.75em
}

div:where(.swal2-icon).swal2-error {
    border-color: #f27474;
    color: #f27474
}

div:where(.swal2-icon).swal2-error .swal2-x-mark {
    position: relative;
    flex-grow: 1
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line] {
    display: block;
    position: absolute;
    top: 2.3125em;
    width: 2.9375em;
    height: .3125em;
    border-radius: .125em;
    background-color: #f27474
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left] {
    left: 1.0625em;
    transform: rotate(45deg)
}

div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right] {
    right: 1em;
    transform: rotate(-45deg)
}

div:where(.swal2-icon).swal2-error.swal2-icon-show {
    animation: swal2-animate-error-icon .5s
}

div:where(.swal2-icon).swal2-error.swal2-icon-show .swal2-x-mark {
    animation: swal2-animate-error-x-mark .5s
}

div:where(.swal2-icon).swal2-warning {
    border-color: #facea8;
    color: #f8bb86
}

div:where(.swal2-icon).swal2-warning.swal2-icon-show {
    animation: swal2-animate-error-icon .5s
}

div:where(.swal2-icon).swal2-warning.swal2-icon-show .swal2-icon-content {
    animation: swal2-animate-i-mark .5s
}

div:where(.swal2-icon).swal2-info {
    border-color: #9de0f6;
    color: #3fc3ee
}

div:where(.swal2-icon).swal2-info.swal2-icon-show {
    animation: swal2-animate-error-icon .5s
}

div:where(.swal2-icon).swal2-info.swal2-icon-show .swal2-icon-content {
    animation: swal2-animate-i-mark .8s
}

div:where(.swal2-icon).swal2-question {
    border-color: #c9dae1;
    color: #87adbd
}

div:where(.swal2-icon).swal2-question.swal2-icon-show {
    animation: swal2-animate-error-icon .5s
}

div:where(.swal2-icon).swal2-question.swal2-icon-show .swal2-icon-content {
    animation: swal2-animate-question-mark .8s
}

div:where(.swal2-icon).swal2-success {
    border-color: #a5dc86;
    color: #a5dc86
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line] {
    position: absolute;
    width: 3.75em;
    height: 7.5em;
    border-radius: 50%
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=left] {
    top: -0.4375em;
    left: -2.0635em;
    transform: rotate(-45deg);
    transform-origin: 3.75em 3.75em;
    border-radius: 7.5em 0 0 7.5em
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-circular-line][class$=right] {
    top: -0.6875em;
    left: 1.875em;
    transform: rotate(-45deg);
    transform-origin: 0 3.75em;
    border-radius: 0 7.5em 7.5em 0
}

div:where(.swal2-icon).swal2-success .swal2-success-ring {
    position: absolute;
    z-index: 2;
    top: -0.25em;
    left: -0.25em;
    box-sizing: content-box;
    width: 100%;
    height: 100%;
    border: .25em solid rgba(165, 220, 134, .3);
    border-radius: 50%
}

div:where(.swal2-icon).swal2-success .swal2-success-fix {
    position: absolute;
    z-index: 1;
    top: .5em;
    left: 1.625em;
    width: .4375em;
    height: 5.625em;
    transform: rotate(-45deg)
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line] {
    display: block;
    position: absolute;
    z-index: 2;
    height: .3125em;
    border-radius: .125em;
    background-color: #a5dc86
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=tip] {
    top: 2.875em;
    left: .8125em;
    width: 1.5625em;
    transform: rotate(45deg)
}

div:where(.swal2-icon).swal2-success [class^=swal2-success-line][class$=long] {
    top: 2.375em;
    right: .5em;
    width: 2.9375em;
    transform: rotate(-45deg)
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-tip {
    animation: swal2-animate-success-line-tip .75s
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-line-long {
    animation: swal2-animate-success-line-long .75s
}

div:where(.swal2-icon).swal2-success.swal2-icon-show .swal2-success-circular-line-right {
    animation: swal2-rotate-success-circular-line 4.25s ease-in
}

[class^=swal2] {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.swal2-show {
    animation: swal2-show .3s
}

.swal2-hide {
    animation: swal2-hide .15s forwards
}

.swal2-noanimation {
    transition: none
}

.swal2-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

.swal2-rtl .swal2-close {
    margin-right: initial;
    margin-left: 0
}

.swal2-rtl .swal2-timer-progress-bar {
    right: 0;
    left: auto
}

@keyframes swal2-toast-show {
    0% {
        transform: translateY(-0.625em) rotateZ(2deg)
    }

    33% {
        transform: translateY(0) rotateZ(-2deg)
    }

    66% {
        transform: translateY(0.3125em) rotateZ(2deg)
    }

    100% {
        transform: translateY(0) rotateZ(0deg)
    }
}

@keyframes swal2-toast-hide {
    100% {
        transform: rotateZ(1deg);
        opacity: 0
    }
}

@keyframes swal2-toast-animate-success-line-tip {
    0% {
        top: .5625em;
        left: .0625em;
        width: 0
    }

    54% {
        top: .125em;
        left: .125em;
        width: 0
    }

    70% {
        top: .625em;
        left: -0.25em;
        width: 1.625em
    }

    84% {
        top: 1.0625em;
        left: .75em;
        width: .5em
    }

    100% {
        top: 1.125em;
        left: .1875em;
        width: .75em
    }
}

@keyframes swal2-toast-animate-success-line-long {
    0% {
        top: 1.625em;
        right: 1.375em;
        width: 0
    }

    65% {
        top: 1.25em;
        right: .9375em;
        width: 0
    }

    84% {
        top: .9375em;
        right: 0;
        width: 1.125em
    }

    100% {
        top: .9375em;
        right: .1875em;
        width: 1.375em
    }
}

@keyframes swal2-show {
    0% {
        transform: scale(0.7)
    }

    45% {
        transform: scale(1.05)
    }

    80% {
        transform: scale(0.95)
    }

    100% {
        transform: scale(1)
    }
}

@keyframes swal2-hide {
    0% {
        transform: scale(1);
        opacity: 1
    }

    100% {
        transform: scale(0.5);
        opacity: 0
    }
}

@keyframes swal2-animate-success-line-tip {
    0% {
        top: 1.1875em;
        left: .0625em;
        width: 0
    }

    54% {
        top: 1.0625em;
        left: .125em;
        width: 0
    }

    70% {
        top: 2.1875em;
        left: -0.375em;
        width: 3.125em
    }

    84% {
        top: 3em;
        left: 1.3125em;
        width: 1.0625em
    }

    100% {
        top: 2.8125em;
        left: .8125em;
        width: 1.5625em
    }
}

@keyframes swal2-animate-success-line-long {
    0% {
        top: 3.375em;
        right: 2.875em;
        width: 0
    }

    65% {
        top: 3.375em;
        right: 2.875em;
        width: 0
    }

    84% {
        top: 2.1875em;
        right: 0;
        width: 3.4375em
    }

    100% {
        top: 2.375em;
        right: .5em;
        width: 2.9375em
    }
}

@keyframes swal2-rotate-success-circular-line {
    0% {
        transform: rotate(-45deg)
    }

    5% {
        transform: rotate(-45deg)
    }

    12% {
        transform: rotate(-405deg)
    }

    100% {
        transform: rotate(-405deg)
    }
}

@keyframes swal2-animate-error-x-mark {
    0% {
        margin-top: 1.625em;
        transform: scale(0.4);
        opacity: 0
    }

    50% {
        margin-top: 1.625em;
        transform: scale(0.4);
        opacity: 0
    }

    80% {
        margin-top: -0.375em;
        transform: scale(1.15)
    }

    100% {
        margin-top: 0;
        transform: scale(1);
        opacity: 1
    }
}

@keyframes swal2-animate-error-icon {
    0% {
        transform: rotateX(100deg);
        opacity: 0
    }

    100% {
        transform: rotateX(0deg);
        opacity: 1
    }
}

@keyframes swal2-rotate-loading {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

@keyframes swal2-animate-question-mark {
    0% {
        transform: rotateY(-360deg)
    }

    100% {
        transform: rotateY(0)
    }
}

@keyframes swal2-animate-i-mark {
    0% {
        transform: rotateZ(45deg);
        opacity: 0
    }

    25% {
        transform: rotateZ(-25deg);
        opacity: .4
    }

    50% {
        transform: rotateZ(15deg);
        opacity: .8
    }

    75% {
        transform: rotateZ(-5deg);
        opacity: 1
    }

    100% {
        transform: rotateX(0);
        opacity: 1
    }
}

body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
    overflow: hidden
}

body.swal2-height-auto {
    height: auto !important
}

body.swal2-no-backdrop .swal2-container {
    background-color: rgba(0, 0, 0, 0) !important;
    pointer-events: none
}

body.swal2-no-backdrop .swal2-container .swal2-popup {
    pointer-events: all
}

body.swal2-no-backdrop .swal2-container .swal2-modal {
    box-shadow: 0 0 10px rgba(0, 0, 0, .4)
}

@media print {
    body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) {
        overflow-y: scroll !important
    }

    body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true] {
        display: none
    }

    body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container {
        position: static !important
    }
}

body.swal2-toast-shown .swal2-container {
    box-sizing: border-box;
    width: 360px;
    max-width: 100%;
    background-color: rgba(0, 0, 0, 0);
    pointer-events: none
}

body.swal2-toast-shown .swal2-container.swal2-top {
    inset: 0 auto auto 50%;
    transform: translateX(-50%)
}

body.swal2-toast-shown .swal2-container.swal2-top-end,
body.swal2-toast-shown .swal2-container.swal2-top-right {
    inset: 0 0 auto auto
}

body.swal2-toast-shown .swal2-container.swal2-top-start,
body.swal2-toast-shown .swal2-container.swal2-top-left {
    inset: 0 auto auto 0
}

body.swal2-toast-shown .swal2-container.swal2-center-start,
body.swal2-toast-shown .swal2-container.swal2-center-left {
    inset: 50% auto auto 0;
    transform: translateY(-50%)
}

body.swal2-toast-shown .swal2-container.swal2-center {
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%)
}

body.swal2-toast-shown .swal2-container.swal2-center-end,
body.swal2-toast-shown .swal2-container.swal2-center-right {
    inset: 50% 0 auto auto;
    transform: translateY(-50%)
}

body.swal2-toast-shown .swal2-container.swal2-bottom-start,
body.swal2-toast-shown .swal2-container.swal2-bottom-left {
    inset: auto auto 0 0
}

body.swal2-toast-shown .swal2-container.swal2-bottom {
    inset: auto auto 0 50%;
    transform: translateX(-50%)
}

body.swal2-toast-shown .swal2-container.swal2-bottom-end,
body.swal2-toast-shown .swal2-container.swal2-bottom-right {
    inset: auto 0 0 auto
}
.css-148y5ho {
    display: block;
    background-color: rgb(255, 255, 255);
    border-radius: 8px;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}