/* Added Upload page style for 'lw' on 2025-02-25 */
h1,h2,h3,h4,h5,h6{}
input[type='checkbox']:checked:after{border-right:0 !important;border-bottom:0 !important;}
input[type='checkbox']:checked:before {background-color: transparent !important;}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active{background-color: #e94560;border-color: #e94560;}
/* 上传页单位：radio 包在 label 内（隐式关联），避免 Chrome 对隐藏 btn-check 使用 for= 的告警；需 :has（Safari 15.4+） */
.upload .upload-box .file-unit label.btn:has(> .btn-check:checked){background-color:#e94560!important;border-color:#e94560!important;color:#fff!important;}
.form-check{display: flex;}
/* 只针对复选框，排除切换开关 */
.form-check-input:not([role="switch"]){
    border: 2px solid #ddd;
    width: 18px;
    height: 18px;
    background-color: #fff;
    border-radius: 4px;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    display: inline-block;
    vertical-align: top;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.form-check-input:not([role="switch"]):checked {
    background-color: #e94560;
    border-color: #e94560;
}

/* Safari浏览器兼容性修复 */
.form-check-input::-webkit-appearance {
    -webkit-appearance: none;
    appearance: none;
}

.form-check-input::-moz-appearance {
    -moz-appearance: none;
    appearance: none;
}

/* 确保复选框在所有浏览器中都有正确的尺寸和位置 */
.form-check {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    position: relative;
}

/* Safari浏览器中特别处理 */
@supports (-webkit-appearance: none) {
    .form-check:not(.form-switch) {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
    
    .form-check-input:not([role="switch"]) {
        float: left !important;
        margin-top: 2px !important;
        margin-right: 8px !important;
        margin-left: 0 !important;
        position: static !important;
        display: block !important;
    }
    
    .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
}

.form-check-input {
    margin-top: 2px;
    flex-shrink: 0;
}

.form-check-label {
    line-height: 1.4;
    margin: 0;
    padding: 0;
}

/* 强制重置Safari中的复选框样式 */
.form-check-input[type="checkbox"]:not([role="switch"]) {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-color: #fff !important;
    border: 2px solid #ddd !important;
    border-radius: 4px !important;
    width: 18px !important;
    height: 18px !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: top !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Safari专用修复 - 完全覆盖Bootstrap样式 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .form-check:not(.form-switch) {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
    
    .form-check-input:not([role="switch"]) {
        position: static !important;
        float: left !important;
        margin: 2px 8px 0 0 !important;
        display: block !important;
    }
    
    .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
}

.form-check-input[type="checkbox"]:not([role="switch"]):checked {
    background-color: #e94560 !important;
    border-color: #e94560 !important;
}

/* 为Safari添加选中状态的勾选标记 */
.form-check-input[type="checkbox"]:not([role="switch"]):checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 2px;
    width: 6px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* 修复没有使用form-check类的复选框 */
input[type="checkbox"]:not(.form-check-input):not([role="switch"]) {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #ddd !important;
    border-radius: 4px !important;
    background-color: #fff !important;
    position: relative !important;
    display: block !important;
    vertical-align: top !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    float: left !important;
}

input[type="checkbox"]:not(.form-check-input):not([role="switch"]):checked {
    background-color: #e94560 !important;
    border-color: #e94560 !important;
}

input[type="checkbox"]:not(.form-check-input):not([role="switch"]):checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 2px;
    width: 6px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* 最后的Safari修复 - 使用更具体的选择器 */
.lr_user .form-check:not(.form-switch),
.lr_modal .form-check:not(.form-switch) {
    display: block !important;
    position: relative !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

.lr_user .form-check-input:not([role="switch"]),
.lr_modal .form-check-input:not([role="switch"]) {
    position: static !important;
    float: left !important;
    margin: 2px 8px 0 0 !important;
    display: block !important;
}

.lr_user .form-check-label,
.lr_modal .form-check-label {
    display: block !important;
    overflow: hidden !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

/* 终极Safari修复 - 针对所有可能的复选框 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    /* 强制所有form-check容器使用block布局 */
    .form-check,
    #reg .form-check,
    #login .form-check,
    .lr_user .form-check,
    .lr_modal .form-check {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
        text-align: left !important;
        float: none !important;
    }
    
    /* 强制所有复选框使用float left */
    .form-check-input,
    #reg .form-check-input,
    #login .form-check-input,
    .lr_user .form-check-input,
    .lr_modal .form-check-input {
        position: static !important;
        float: left !important;
        margin: 2px 8px 0 0 !important;
        display: block !important;
        clear: left !important;
        vertical-align: top !important;
    }
    
    /* 强制所有标签使用block布局 */
    .form-check-label,
    #reg .form-check-label,
    #login .form-check-label,
    .lr_user .form-check-label,
    .lr_modal .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
        float: none !important;
    }
}

/* 移动端Safari专用修复 */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 768px) {
    .form-check,
    #reg .form-check,
    #login .form-check {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
        text-align: left !important;
        float: none !important;
        clear: both !important;
    }
    
    .form-check-input,
    #reg .form-check-input,
    #login .form-check-input {
        position: static !important;
        float: left !important;
        margin: 2px 8px 0 0 !important;
        display: block !important;
        clear: left !important;
        vertical-align: top !important;
    }
    
    .form-check-label,
    #reg .form-check-label,
    #login .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
        clear: both !important;
        float: none !important;
    }
}

.btn-outline-primary{color: #e94560;border-color: #e94560;}
.btn-outline-primary:hover{background: #FFFFFF;color: #e94560;border-color: #e94560;opacity: 0.8;}
.btn{font-weight: bold;font-size: 15px;}
.qli .q_upload{display: flex;justify-content: center;border-radius:5px;border: 2px dashed #e94560;cursor: pointer;}
.qli .q_upload:hover{border: 2px dashed #e94560;}
.qli .q_upload .up_file{cursor: pointer;}
.qli .q_upload .r{width: 100%;}
.qli .q_upload .r p em{height: auto;display: flex;margin: 20px 0;}
.qli .q_upload .r p em i{height: auto;width: auto;margin: 0 auto;padding: 5px 30px;font-style: normal;color: #FFF;font-weight: bold;background: #e94560;font-size: 22px;border: 1px solid #e94560;}
.qli .q_upload:hover .r p em i{border:1px solid #e94560;background: #e94560;color:#FFFFFF;}
.upload .name{font-size: 16px;font-weight: bold;padding-top: 6px;}
/* 上传区：避开 fixed 顶栏 .had(60) + .ht(90+padding≈10)，原 60px 会导致单位切换被菜单遮挡 */
.upload .upload-box{margin-top:168px;margin-bottom: 110px;width: 100%;float: left;}
.upload .upload-box .file-unit{display: flex;gap:10px;}
.upload .upload-box .file-unit .btn{border-radius: 0;width: 180px;}
.upload .upload-box .file-unit .btn-mm{border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
.upload .upload-box .file-unit .btn-in{border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
.upload .qli .q_upload.is-dragover{background: rgba(233, 69, 96, 0.08);border-color: #e94560;box-shadow: inset 0 0 0 1px rgba(233, 69, 96, 0.25);}
.upload .qli .q_upload .upload-drag-hint{display: block;width: 100%;font-size: 13px;color: #777;font-weight: normal;margin-top: 8px;line-height: 1.4;}
.upload .model-box{margin-top: -48px;margin-bottom: 48px;padding-bottom: 12px;width: 100%;float: left;scroll-margin-top:calc(168px + var(--site-top-banner-offset, 0px));}
.upload .model-box .model-box-head{scroll-margin-top:calc(168px + var(--site-top-banner-offset, 0px));}
/* 文件列表区与 footer 留白；float 子元素需 clearfix 撑开父级高度 */
.upload > .container > .box::after{content:'';display:block;clear:both;}
/* Total 行：默认文档流无底色；吸顶时由 .is-stuck 显示背景并紧贴导航栏底（top 由 JS 写入 --upload-nav-sticky-top） */
.upload .model-box .model-box-head-sticky-sentinel{
  height:0;margin:0;padding:0;border:0;overflow:hidden;pointer-events:none;visibility:hidden;
}
.upload .model-box .model-box-head{
  position:sticky;
  top:var(--upload-nav-sticky-top, calc(150px + var(--site-top-banner-offset, 0px)));
  z-index:999;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  margin-bottom:10px;
  min-width:0;
  background:transparent;
  box-shadow:none;
  transition:background-color .15s ease,box-shadow .15s ease;
}
.upload .model-box .model-box-head.is-stuck{
  background:#f8f9fa;
  box-shadow:0 1px 0 rgba(0,0,0,.06);
  padding:6px 0 8px;
}
.upload .model-box .upload-file-stats{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px 20px;width:100%;min-width:0;}
body.upload-entry-model-space .upload .upload-file-stats__total:focus{
    outline:none;
}
.upload .model-box .upload-file-stats__left{display:flex;flex-wrap:nowrap;align-items:center;gap:12px 14px;min-width:0;flex-shrink:1;}
.upload .model-box .upload-file-stats__right{display:flex;flex-wrap:nowrap;align-items:center;gap:12px 16px;flex-shrink:0;margin-left:16px;}
.upload .model-box .upload-file-stats__materials{flex-shrink:0;margin-left:6px;font-weight:600;padding:6px 14px;font-size:14px;line-height:1.35;}
.upload .model-box .upload-file-stats__materials-hint{
  display:inline-block;
  margin-left:10px;
  padding:5px 12px;
  font-size:13px;
  font-weight:500;
  color:#b42318;
  background:#fff4f4;
  border:1px solid #f5c2c7;
  border-radius:6px;
  line-height:1.35;
  max-width:min(320px,55vw);
  vertical-align:middle;
  align-self:center;
}
.upload .model-box .upload-file-stats__total,
.upload .model-box .upload-file-stats__item{font-size:14px;font-family:inherit;font-weight:400;color:#333;line-height:1.45;white-space:nowrap;flex-shrink:0;}
.upload .model-box .upload-file-stats__item strong{font-size:inherit;font-weight:400;color:inherit;}
.upload .model-box .upload-select-all-switch{position:relative;display:inline-flex;align-items:center;margin:0;cursor:pointer;flex-shrink:0;}
.upload .model-box .upload-select-all-switch__input{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.upload .model-box .upload-select-all-switch__track{display:block;position:relative;width:46px;height:26px;box-sizing:border-box;border-radius:999px;background:#fff;border:1px solid #d4d4d4;transition:background-color .2s ease,border-color .2s ease;}
.upload .model-box .upload-select-all-switch__track::after{content:'';position:absolute;left:4px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;background:#9a9a9a;transition:left .2s ease,background-color .2s ease;}
.upload .model-box .upload-select-all-switch__input:checked + .upload-select-all-switch__track{border-color:#c8c8c8;}
.upload .model-box .upload-select-all-switch__input:checked + .upload-select-all-switch__track::after{left:calc(100% - 22px);background:#e94560;}
.upload .model-box .upload-select-all-switch__input:focus + .upload-select-all-switch__track{box-shadow:0 0 0 2px rgba(233,69,96,0.25);}
.upload .model-box .upload-select-all-switch__input:disabled + .upload-select-all-switch__track{opacity:0.45;}
.upload .model-box .upload-select-all-switch:has(.upload-select-all-switch__input:disabled){cursor:not-allowed;}
/* 上传队列占位：与正式 model-item 同 padding/背景，避免比刷新后卡片“偏高” */
.upload .model-item.model-item-uploading{
  position:relative;
  background:#e9e8e1;
  border-radius:5px;
  padding:15px;
  min-height:110px;
  overflow:hidden;
  flex:0 0 calc(33.33% - 20px);
  box-sizing:border-box;
  box-shadow:none!important;
}
.upload .model-item-uploading > .upload-queue-sheet{position:absolute;left:0;top:0;bottom:0;width:0;margin:0;border-radius:inherit;pointer-events:none;transition:width .12s ease-out;}
/* 与顶栏 site-top-notice 一致 #e94560 */
.upload .model-item-uploading > .upload-queue-sheet--upload{z-index:0;background:rgba(233,69,96,.28);}
.upload .model-item-uploading > .upload-queue-sheet--parse{z-index:1;background:rgba(233,69,96,.16);}
.upload .model-item-uploading .upload-queue-parse-activity{display:none!important;align-items:center;gap:6px;margin-top:0;min-height:0;}
/* 解析阶段仅保留 upload-queue-sheet 双层进度背景，不显示三点动画 */
.upload .model-item-uploading.is-upload-done .upload-queue-parse-activity{display:none!important;}
.upload .model-item-uploading .upload-queue-parse-activity span{
  width:6px;height:6px;border-radius:50%;
  background:linear-gradient(135deg,#16213e,#e94560);
  opacity:.45;
  animation:aihfabsUploadParseDot 1s ease-in-out infinite;
}
.upload .model-item-uploading .upload-queue-parse-activity span:nth-child(2){animation-delay:.18s;}
.upload .model-item-uploading .upload-queue-parse-activity span:nth-child(3){animation-delay:.36s;}
@keyframes aihfabsUploadParseDot{
  0%,80%,100%{transform:translateY(0);opacity:.35;}
  40%{transform:translateY(-5px);opacity:1;}
}
/* 解析中队列卡片：与成功态 upload-model-card 同紧凑骨架 */
.upload .model-list .model-item.model-item-uploading.upload-model-card{
  background:#fff!important;
  border:1px solid rgba(0,0,0,.12);
  border-radius:5px;
  padding:8px 10px!important;
  min-height:0!important;
  box-shadow:none!important;
  flex:0 0 calc(33.33% - 20px);
  max-width:calc(33.33% - 20px);
  min-width:0;
  box-sizing:border-box;
  overflow:hidden;
  position:relative;
}
.upload .model-list .model-item.model-item-uploading.upload-model-card .upload-model-card__header,
.upload .model-list .model-item.model-item-uploading.upload-model-card .upload-model-card__body,
.upload .model-list .model-item.model-item-uploading.upload-model-card .upload-model-card__body .upload-model-card__actions{
  position:relative;
  z-index:2;
}
.upload .model-list .model-item.model-item-uploading.upload-model-card button[disabled],
.upload .model-list .model-item.model-item-uploading.upload-model-card .btn[disabled]{opacity:.45;cursor:not-allowed;}
#aihfabs-upload-parse-flyout.aihfabs-upload-parse-flyout{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(120%);
  z-index:1000200;max-width:min(520px,calc(100vw - 32px));pointer-events:none;
  opacity:0;transition:opacity .35s ease, transform .4s cubic-bezier(.22,1,.36,1);
}
#aihfabs-upload-parse-flyout.aihfabs-upload-parse-flyout.is-show{
  opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;
}
#aihfabs-upload-parse-flyout.aihfabs-upload-parse-flyout.is-out{
  opacity:0;transform:translateX(-50%) translateY(18px);
}
#aihfabs-upload-parse-flyout.aihfabs-upload-parse-flyout.is-hide{
  visibility:hidden;opacity:0;transform:translateX(-50%) translateY(120%);
}
#aihfabs-upload-parse-flyout .aihfabs-upload-parse-flyout__inner{
  background:#1a1a2e;color:#fff;padding:14px 20px;border-radius:10px;
  font-size:14px;line-height:1.45;
  border:1px solid rgba(255,255,255,.12);
}
#aihfabs-upload-parse-fail-dock.aihfabs-upload-parse-fail-dock{
  display:none;
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:1000199;
  width:44px;
  height:44px;
  border-radius:50%;
  align-items:center;
  justify-content:center;
  padding:0;
  border:none;
  cursor:pointer;
  background:#1a1a2e;
  color:#ff6b6b;
  box-shadow:0 4px 16px rgba(0,0,0,.28);
  font-size:20px;
  line-height:1;
}
#aihfabs-upload-parse-fail-dock.aihfabs-upload-parse-fail-dock:focus{
  outline:2px solid rgba(233,69,96,.45);
  outline-offset:2px;
}

/* 缩略图预览灯箱：更大弹窗、大图、点击遮罩关闭（Bootstrap 默认 backdrop） */
#aihfabsThumbLightbox.aihfabs-thumb-preview-modal{
  z-index:1000210;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-dialog{
  max-width:min(1240px,96vw);
  width:min(1240px,96vw);
  margin:1rem auto;
}
#aihfabsThumbLightbox .modal-content{
  border-radius:12px;
  overflow:hidden;
  min-height:280px;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-close{
  box-sizing:border-box;
  flex-shrink:0;
  margin-left:auto;
  padding:0.35rem 0.55rem;
  font-size:2rem;
  font-weight:300;
  line-height:1;
  color:#212529;
  background:transparent;
  border:0;
  opacity:.6;
  cursor:pointer;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-close:hover,
#aihfabsThumbLightbox .aihfabs-thumb-preview-close:focus{
  opacity:1;
  outline:none;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-close:focus-visible{
  outline:2px solid rgba(233,69,96,.45);
  outline-offset:2px;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-body{
  padding:20px 24px 28px;
}
#aihfabsThumbLightbox .aihfabs-thumb-preview-img-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:min(55vh,520px);
  max-height:min(72vh,680px);
  padding:16px;
  background:#f4f4f6;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.06);
}
#aihfabsThumbLightbox .js-aihfabs-thumb-preview-img{
  max-width:100%;
  max-height:min(68vh,640px);
  width:auto;
  height:auto;
  object-fit:contain;
}
.upload .model-item .image.aihfabs-thumb-preview-trigger:focus,
.materials .model-item .image.aihfabs-thumb-preview-trigger:focus{
  outline:2px solid rgba(233,69,96,.35);
  outline-offset:2px;
  border-radius:4px;
}

.upload .model-box .model-list .model-item .upload-parse-fail-icon--pending-reveal{
  opacity:0!important;
  transform:scale(.6);
  pointer-events:none!important;
  transition:opacity .4s ease, transform .4s ease;
}
.upload .model-box .model-list .model-item.parse-failed{position:relative;}
.upload .model-box .model-list .model-item .upload-parse-fail-icon{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:4;
  color:#c92a2a;
  font-size:20px;
  line-height:1;
  cursor:help;
  pointer-events:auto;
}
.upload .model-box .model-list .model-item .upload-parse-fail-icon:focus{outline:2px solid rgba(233,69,96,.45);outline-offset:2px;border-radius:2px;}
.upload #fileList:empty{min-height:0;opacity:0!important;}
.upload .model-box .upload-file-stats .btn{flex-shrink:0;font-size:14px;}
.upload .model-box .upload-file-stats .js-upload-batch-delete:disabled{opacity:0.55;}
@media (max-width: 767px) {
  .upload .model-box .upload-file-stats{flex-wrap:wrap;}
  .upload .model-box .upload-file-stats__right{margin-left:0;width:100%;justify-content:flex-end;}
}
/* 上传页批量删除确认：须高于全局 .modal-backdrop 999998 与 #myModal 999999，否则遮罩会压在弹窗上 */
#aihfabsDialogModal.modal,
#aihfabsDialogModal.modal.fade,
#uploadBatchDeleteConfirmModal.modal,
#uploadBatchDeleteConfirmModal.modal.fade {
  z-index: 1000100 !important;
}
#aihfabsDialogModal .modal-dialog,
#uploadBatchDeleteConfirmModal .modal-dialog {
  position: relative;
  z-index: 1;
}
#aihfabsDialogModal .modal-content.aihfabs-dialog-modal__content,
#aihfabsDialogModal .aihfabs-dialog-modal__content,
#uploadBatchDeleteConfirmModal .modal-content.upload-batch-delete-modal__content,
#uploadBatchDeleteConfirmModal .upload-batch-delete-modal__content {
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.06) !important;
  background-color: #ffffff !important;
}
#aihfabsDialogModal .modal-header,
#aihfabsDialogModal .modal-body,
#aihfabsDialogModal .modal-footer,
#uploadBatchDeleteConfirmModal .modal-header,
#uploadBatchDeleteConfirmModal .modal-body,
#uploadBatchDeleteConfirmModal .modal-footer {
  background-color: #ffffff !important;
}
#aihfabsDialogModal .modal-title {
  font-size: 1.1rem;
  font-weight: 600;
}
#aihfabsDialogModal .js-aihfabs-dialog-ok.btn-danger {
  background-color: #d92d20;
  border-color: #d92d20;
}
#aihfabsDialogModal .js-aihfabs-dialog-ok.btn-danger:hover {
  background-color: #b42318;
  border-color: #b42318;
}
.upload .model-box .model-list{display: flex;flex-wrap: wrap;justify-content: left;gap: 30px 30px;margin-top: 15px;min-width:0;}
.upload .model-box .model-list .model-item{flex: 0 0 calc(33.33% - 20px);max-width:calc(33.33% - 20px);min-width:0;box-sizing: border-box;background: #e9e8e1;border-radius: 5px;padding: 15px;min-height: 110px;position: relative;box-shadow:none;overflow:hidden;}
.upload .model-box .model-list::after {content: '';flex: auto;}
.upload .model-box .model-list .model-item.failed .load-text,.upload .model-box .model-list .model-item.failed .buttons-right .bi{color: rgb(217, 45, 32);}
.upload .model-box .model-list .model-item .quantity-control {width: auto;margin: 0 auto;}
.upload .model-box .model-list .model-item .quantity-control .btn {width: 22px;height: 22px;padding: 0;border-color: #ccc;display: flex;align-items: center;justify-content: center;}
.upload .model-box .model-list .model-item .quantity-control .form-control {width: 60px;height: 22px;text-align: center;border-color: #ccc;}
.upload .model-box .model-list .model-item .quantity-control .form-control:focus {border-color: #ccc;box-shadow: none;}
.upload .model-box .model-list .model-item .buttons{display: flex;justify-content: space-between;align-items: center;}
.upload .model-box .model-list .model-item .buttons .buttons-left{display: flex;/* align-items: center; */gap:15px;}
.upload .model-box .model-list .model-item .buttons .buttons-right{display: flex;align-items: center;gap: 8px;}
.upload .model-box .model-list .model-item .buttons .buttons-right .bi{cursor: pointer;font-size: 18px;}
.upload .model-box .model-list .model-item .buttons.loading{justify-content: end;}
.upload .model-box .model-list .model-item .buttons.loading .buttons-left{display: none;}
.upload .model-box .model-list .model-item .model-content{display: flex;gap: 15px;margin-top: 10px;}
.upload .model-box .model-list .model-item.upload-model-card > .model-content{gap:10px;margin-top:6px;}
.upload .model-box .model-list .model-item .model-content .image{cursor: pointer;}
.upload .model-box .model-list .model-item .model-content .image img{border-radius: 5px;cursor: pointer;}
.upload .model-box .model-list .model-item.upload-model-card{background:#fff;border:1px solid rgba(0,0,0,.12);min-height:0;padding:8px 10px;overflow:visible;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__header{
  display:flex;align-items:center;gap:6px 8px;margin-bottom:4px;min-width:0;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__header .form-check{flex-shrink:0;margin:0;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__header-left{display:flex;align-items:center;gap:6px;min-width:0;flex:1 1 0;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__file-title{
  display:inline-flex;align-items:baseline;justify-content:flex-start;gap:0;
  font-size:13px;font-weight:600;
  flex:1 1 0;min-width:0;max-width:100%;line-height:1.3;text-align:left;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__file-title .name-display{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto;max-width:100%;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__file-title .file-ext{flex:0 0 auto;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__del{
  flex-shrink:0;border:none;line-height:1;padding:0;margin-left:auto;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__body{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:8px;
  row-gap:2px;
  margin-top:0;
  align-items:start;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__body > .upload-model-thumb{
  grid-column:1;
  grid-row:1 / span 2;
  align-self:center;
  margin-top:4px;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__detail-row{
  grid-column:2;
  grid-row:1;
  display:flex;align-items:center;gap:8px;min-width:0;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__body > .upload-model-card__actions{
  grid-column:2;
  grid-row:2;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__detail-row .name-box{
  flex:1 1 0;min-width:0;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__qty{
  flex-shrink:0;width:auto;margin:0;align-self:center;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__qty .btn{
  width:22px;height:22px;padding:0;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__qty .form-control{
  width:38px;height:22px;min-height:22px;font-size:12px;padding:0 4px;text-align:center;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-thumb{
  flex-shrink:0;width:52px;height:52px;border-radius:6px;overflow:hidden;
  background:#f9fafb;border:1px solid #eceef1;display:flex;align-items:center;justify-content:center;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-thumb__img{width:52px;height:52px;object-fit:contain;background:#f9fafb;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__dims{font-size:12px;margin-bottom:1px;line-height:1.3;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__metrics{margin-bottom:0;line-height:1.3;font-size:11px;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__actions{
  display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:0;min-width:0;line-height:1.2;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__actions .btn{
  line-height:1.2;padding-top:0;padding-bottom:0;
}
.upload .model-box .model-list .model-item.upload-model-card > .upload-model-card__actions{display:none!important;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__footer{display:none!important;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__allopts{
  text-decoration:none;font-weight:600;font-size:12px;white-space:nowrap;position:relative;z-index:1;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__attach{font-size:12px;white-space:nowrap;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__textlink,
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__attach{font-weight:600;color:#0d6efd;text-decoration:none;vertical-align:baseline;}
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__textlink:hover,
.upload .model-box .model-list .model-item.upload-model-card .upload-model-card__attach:hover{text-decoration:underline;color:#0a58ca;}
.upload .model-box .model-list .model-item.upload-model-card{position:relative;z-index:1;}
.upload .model-box .model-list .model-item.upload-model-card.has-options-open{
  z-index:120;overflow:visible;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-wrap{
  position:relative;z-index:1;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-wrap.is-open{
  z-index:2;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-menu{
  display:none;position:absolute;right:0;top:100%;bottom:auto;margin-top:4px;min-width:220px;padding:6px 0;
  background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.12);
  z-index:30;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-menu.is-open{
  display:block;z-index:30;
}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-menu .dropdown-item{width:100%;text-align:left;border:0;background:transparent;padding:8px 16px;font-size:14px;}
.upload .model-box .model-list .model-item.upload-model-card .upload-card-options-menu .dropdown-item:hover{background:#f3f4f6;}
.aihfabs-production-modal .aihfabs-production-modal__save{background-color:#004a8d;border-color:#004a8d;}
.aihfabs-production-modal .aihfabs-production-modal__save:hover{background-color:#003d75;border-color:#003d75;}
.aihfabs-scale-modal .modal-title{font-size:1.25rem;}
.upload .model-list .upload-model-list-skeleton{width:100%;flex:1 0 100%;}
.upload .model-box .model-list .model-item .model-content .name-box{min-width:0;flex:1;}
.upload .model-box .model-list .model-item .model-content .name-box .file-name{font-weight: bold;display:flex;align-items:center;justify-content:flex-start;gap:0;min-width:0;max-width:100%;text-align:left;}
.upload .model-box .model-list .model-item .model-content .name-box .file-name .name-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto;max-width:100%;}
.upload .model-box .model-list .model-item .model-content .name-box .file-name .file-ext,
.upload .model-box .model-list .model-item .model-content .name-box .file-name > span:last-of-type:not(.name-display){flex:0 0 auto;}
.upload .model-box .model-list .model-item .model-content .name-box .file-size{}
.upload .model-box .model-list .model-item .model-content .load-text{display: none;}
.upload .model-box .model-list .model-item .model-content.loading{justify-content: center;margin-top: 0;}
.upload .model-box .model-list .model-item .model-content.loading .image{display: none;}
.upload .model-box .model-list .model-item .model-content.loading .name-box .file-name{font-weight: normal;}
.upload .model-box .model-list .model-item .model-content.loading .name-box .file-size{display: none;}
.upload .model-box .model-list .model-item .model-content.loading .load-text{text-align: center;font-weight: bold;display: flex;justify-content: center;gap: 5px;align-items: center;}
@keyframes spin {
    from {transform: rotate(0deg);}
    to {transform: rotate(360deg);}
}
.upload .model-box .model-list .model-item .model-content.loading .load-text .bi.spin {animation: spin 1s linear infinite;}
.upload .model-box .model-list .model-item .model-content.loading .progress-bar {position: absolute;top: 0;left: 0;height: 100%;background-color: rgba(233, 69, 96, 0.28);width: 0;transition: width 0.3s ease;border-radius: 5px;}
.upload .configure-box{padding: 50px;text-align: center;width: 100%;float: left;}
.configure-box .btn{font-weight: bold;padding: 10px 30px;}
.configure-container {display: flex;width: 100%;float: left;}
.upload .configure-container{margin-top:50px;}
.questionnaire-box{width: 650px;background: #FFF;justify-content: center;display: grid;margin: 0 auto;border-radius: 5px;}
.upload .questionnaire-box{background: #e9e8e1;}

.questionnaire-box .questionnaire-title{font-weight: bold;font-size: 18px;}
.upload .questionnaire-box .questionnaire-title{margin-top: 50px;text-align: center;}
.questionnaire-box .question{/* width: 100%; */margin: 0 auto;background: #FFF;border-radius: 5px;padding: 30px 100px;}
.upload .questionnaire-box .question{background: #e9e8e1;}
.questionnaire-box .question .title{font-size: 20px;margin-bottom:15px;}
.questionnaire-box .answers{width: auto;/* margin: 0 auto; *//* background: #FFF; */border-radius: 5px;padding: 30px 0px;line-height: 30px;}
.questionnaire-box .answers .title{font-size: 20px;margin-bottom:15px;}
.questionnaire-box .answers .user-selection{font-weight: bold;padding-left:10px;color: #e94560;}
#questionnaireModal .questionnaire-box{margin:0;}
@media (max-width: 768px) {
    .upload .model-box .model-list .model-item,
    .upload .model-list .model-item.model-item-uploading.upload-model-card{flex:0 0 100%;max-width:100%;}
    .upload .upload-box .file-unit .btn {width: 150px;font-size: 13px;}
    .upload .questionnaire-box .question{padding: 15px;}
}
@media (max-width: 992px) {
            .materials{margin-top:100px;}
    .materials .container{max-width: 100%;padding-right: 10px;padding-left: 10px;}
    .materials .left-box{width: 100%;margin-right: 0;}
    .materials .left-box .sidebar{position: relative;width: 100%;}
    .materials .left-box .sidebar .sidebar-main .title{width: 100%;}
    .materials .left-box .sidebar .sidebar-bottom{width: 100%;position: relative;}
            .upload .upload-box{margin-top:148px;}
    .upload .model-box,
    .upload .model-box .model-box-head{
        scroll-margin-top:calc(148px + var(--site-top-banner-offset, 0px));
    }
    .upload .configure-box{padding: 20px;}
    .questionnaire-box{width: 100%;}
    .questionnaire-box .question{padding: 20px;}
}

/* Save Progress Modal 响应式 */
@media (max-width: 768px) {
    #saveProgressModal .modal-dialog {
        width: 95vw !important;
        max-width: 380px !important;
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
    }
    
    #saveProgressModal .modal-body {
        padding: 15px 20px;
    }
}

@media (max-width: 480px) {
    #saveProgressModal .modal-dialog {
        width: 95vw !important;
        max-width: 350px !important;
    }
    
    #saveProgressModal .modal-body {
        padding: 12px 15px;
    }
}

/* 确保在所有浏览器中正确显示 */
@supports (-webkit-appearance: none) {
    /* Safari 专用样式 */
    #saveProgressModal .modal-content {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

@supports (-moz-appearance: none) {
    /* Firefox 专用样式 */
    #saveProgressModal .modal-content {
        -moz-transform: translateZ(0);
        transform: translateZ(0);
    }
}



/* Save Progress Modal Styles */
#saveProgressModal {
    z-index: 999999 !important;
}

#saveProgressModal .modal-dialog {
    position: fixed !important;
    margin: 0 !important;
    width: 420px !important;
    max-width: 90vw;
    z-index: 999999 !important;
    box-sizing: border-box;
    transform: none !important;
}

#saveProgressModal .modal-content {
    border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    background: #fff;
    width: 100%;
    min-height: auto;
    max-height: 85vh;
    height: auto !important;
    box-sizing: border-box;
    position: relative;
    z-index: 999999;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* 确保弹窗背景可见 */
.modal-backdrop {
    z-index: 999998 !important;
}

#saveProgressModal .modal-header {
    border: none;
    padding: 10px 20px 5px 20px;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 40px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    flex-shrink: 0;
}

#saveProgressModal .close {
    font-size: 24px;
    color: #666;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    line-height: 1;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

#saveProgressModal .close:hover {
    color: #333;
}

#saveProgressModal .modal-body {
    padding: 15px 25px 20px 25px;
    background: #fff;
    overflow-y: auto;
    overflow-x: hidden;
    box-sizing: border-box;
    width: 100%;
    min-height: auto;
    max-height: calc(85vh - 80px);
    flex: 1;
}

#saveProgressModal .questionnaire-box {
    /* margin: 0; */
    width: 100%;
    box-sizing: border-box;
    max-width: 100%;
    overflow: visible;
    max-height: 100%;
    padding: 0 2px;
}

#saveProgressModal .questionnaire-box form {
    text-align: left;
    width: 100% !important;
    box-sizing: border-box;
    overflow: visible;
    padding: 0;
}

#saveProgressModal .questionnaire-box .li {
    margin: 15px 0 0 0 !important;
    width: 100% !important;
    box-sizing: border-box;
}

#saveProgressModal .questionnaire-box .li + .li {
    margin-top: 25px !important;
}

/* 特别针对验证码输入框 */
#saveProgressModal .questionnaire-box .li:nth-child(2) {
    margin-top: 25px !important;
    padding-top: 10px !important;
}

#saveProgressModal .questionnaire-box .li:first-child {
    margin-top: 0 !important;
}

#saveProgressModal .questionnaire-box .li.li-code {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 2% !important;
    width: 100% !important;
    margin-top: 25px !important;
    padding-top: 15px !important;
    border-top: 1px solid transparent !important;
}

#saveProgressModal .questionnaire-box .li.li-code .input {
    width: 50% !important;
    flex-shrink: 0 !important;
    max-width: 50% !important;
}

#saveProgressModal .questionnaire-box .li.li-code .btn-get-code {
    width: 48% !important;
    flex-shrink: 0 !important;
    display: block !important;
    background: #e94560 !important;
    color: white !important;
    border: 1px solid #e94560 !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-size: 14px !important;
    max-width: 48% !important;
}

#saveProgressModal .questionnaire-box .li .input {
    width: 100% !important;
    line-height: 30px;
    border: 1px solid #ddd;
    margin: 0;
    padding: 0 10px;
    height: 40px;
    border-radius: 4px;
    box-sizing: border-box;
}

#saveProgressModal .questionnaire-box .li .input:focus {
    border-color: #e94560;
    outline: none;
}

#saveProgressModal .questionnaire-box .li .submit {
    padding: 0 20px;
    line-height: 40px;
    background: #e94560;
    color: #fff;
    border: none;
    font-size: 14px;
    height: 40px;
    font-family: futura;
    margin-top: 15px;
    width: 100% !important;
    border-radius: 4px;
    box-sizing: border-box;
}

#saveProgressModal .questionnaire-box .li .submit:hover {
    background: #e55a00;
}

/* 弹窗内容样式 */
#saveProgressModal .modal-content-text {
    text-align: center;
    margin-bottom: 15px;
    padding-top: 0px;
    width: 100%;
}

#saveProgressModal .modal-content-text .title {
    font-size: 18px;
    font-weight: bold;
    color: #000;
    margin-bottom: 8px;
    line-height: 1.3;
}

#saveProgressModal .modal-body .benefit {
    font-size: 14px;
    font-weight: bold;
    color: #000;
    margin-bottom: 15px;
    line-height: 1.3;
    width: 100%;
    box-sizing: border-box;
}

/* OAuth 样式 */
#saveProgressModal .oauth_sign {
    text-align: center;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #eee;
    padding-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

#saveProgressModal .oauth_sign .text {
    font-size: 14px;
    color: #666;
    display: inline-block;
    margin: 0;
    white-space: nowrap;
}

#saveProgressModal .oauth_sign .icons {
    display: flex;
    justify-content: center;
    gap: 15px;
}

#saveProgressModal .oauth_sign .oauth-btn {
    display: inline-block;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: all 0.3s ease;
}

#saveProgressModal .oauth_sign .oauth-btn:hover {
    border-color: #e94560;
    transform: translateY(-2px);
    box-shadow: 0 2px 8px rgba(255, 102, 0, 0.2);
}

#saveProgressModal .oauth_sign .oauth-btn img {
    width: 20px;
    height: 20px;
}

/* User Agreement and Subscribe checkbox styles - 优先级最高的规则 */
#saveProgressModal .li_agreement {
    margin: 30px 0 0 0 !important;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
}

/* 强制覆盖所有冲突的CSS规则 */
#saveProgressModal .li_agreement .form-check {
    display: flex !important;
    gap: 8px !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding-left: 0 !important;
    position: relative !important;
    text-align: left !important;
    float: none !important;
    overflow: visible !important;
    clear: none !important;
}

#saveProgressModal .li_agreement .form-check-input {
    min-width: 18px !important;
    width: 18px !important;
    height: 18px !important;
    position: static !important;
    float: none !important;
    margin: 0 !important;
    display: inline-block !important;
    vertical-align: top !important;
    flex-shrink: 0 !important;
    clear: none !important;
}

#saveProgressModal .li_agreement .form-check-input:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 102, 0, 0.25);
    border-color: #e94560;
}

#saveProgressModal .li_agreement .form-check-label {
    cursor: pointer !important;
    line-height: 1.4 !important;
    font-size: 14px !important;
    margin-bottom: 0 !important;
    flex: 1 !important;
    text-align: left !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clear: none !important;
    float: none !important;
}

#saveProgressModal .li_agreement .form-check-label span {
    font-size: 14px !important;
    color: #666 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
}

#saveProgressModal .li_agreement a {
    color: #e94560;
}

#saveProgressModal .li_agreement a:hover {
    font-weight: bold;
    color: #0a0a0a;
}

/* 强制覆盖lr.css中隐藏span的规则 */
#saveProgressModal .li .span,
#saveProgressModal .li_agreement .span,
#saveProgressModal .orther .span,
#saveProgressModal .form-check-label .span {
    display: inline !important;
    width: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 专门针对User Agreement的强制显示规则 - 最高优先级 */
#saveProgressModal .questionnaire-box .li.li_agreement,
#saveProgressModal .questionnaire-box .li.li_agreement * {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 强制设置第一个复选框与下拉列表的间距 */
#saveProgressModal .questionnaire-box .li.li_agreement {
    margin-top: 40px !important;
    padding-top: 10px !important;
}

/* 最高优先级 - 确保第一个复选框有足够的上边距 */
#saveProgressModal .questionnaire-box form .li.li_agreement {
    margin-top: 50px !important;
    margin-bottom: 0 !important;
    padding-top: 15px !important;
    border-top: 1px solid transparent !important;
}

#saveProgressModal .questionnaire-box .li.li_agreement .form-check {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

#saveProgressModal .questionnaire-box .li.li_agreement .form-check-input {
    display: inline-block !important;
    position: static !important;
    float: none !important;
    margin: 0 !important;
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    order: 1 !important;
}

#saveProgressModal .questionnaire-box .li.li_agreement .form-check-label {
    display: block !important;
    flex: 1 !important;
    order: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    font-size: 14px !important;
    color: #333 !important;
}

#saveProgressModal .questionnaire-box .li.li_agreement .form-check-label span {
    display: inline !important;
    width: auto !important;
    color: #666 !important;
}

#saveProgressModal .questionnaire-box .li.li_agreement a {
    display: inline !important;
    color: #e94560 !important;
    text-decoration: underline !important;
    visibility: visible !important;
}

#saveProgressModal .orther {
    float: left;
    width: 100%;
    line-height: 16px;
    margin: 2px 0 0 0 !important;
    display: flex;
    padding: 0;
    box-sizing: border-box;
}

/* 强制覆盖所有冲突的CSS规则 */
#saveProgressModal .orther .form-check {
    display: flex !important;
    gap: 8px !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding-left: 0 !important;
    position: relative !important;
    text-align: left !important;
    float: none !important;
    overflow: visible !important;
    clear: none !important;
}

#saveProgressModal .orther .form-check-input {
    min-width: 18px !important;
    width: 18px !important;
    height: 18px !important;
    position: static !important;
    float: none !important;
    margin: 0 !important;
    display: inline-block !important;
    vertical-align: top !important;
    flex-shrink: 0 !important;
    clear: none !important;
}

#saveProgressModal .orther .form-check-label {
    cursor: pointer !important;
    flex: 1 !important;
    text-align: left !important;
    line-height: 1.4 !important;
    font-size: 14px !important;
    margin-bottom: 0 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clear: none !important;
    float: none !important;
}

#saveProgressModal .orther .form-check-label span {
    font-size: 14px !important;
    color: #666 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
}

/* Back button styles - matching login page */
#saveProgressModal .back-login {
    float: left;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #000;
    background: transparent;
    color: #000;
    transition: all 0.3s ease;
    order: 1;
}

#saveProgressModal .back-login:hover {
    background: #000;
    color: #fff;
}

#saveProgressModal .back-login i {
    font-size: 16px;
}

/* Send Code button styles */
#saveProgressModal .btn-get-code {
    height: 40px;
    width: 50%;
    padding: 0 20px;
    line-height: 40px;
    background: #e94560;
    color: #fff;
    border: none;
    font-size: 14px;
    font-family: 'MB';
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    box-sizing: border-box;
}

#saveProgressModal .btn-get-code:hover {
    background: #e55a00;
}

/*Material page style*/
.materials{margin-top:80px;min-height: 750px;}
.materials .container .box{display: flex;}
.materials .left-box {width: 350px;flex-shrink: 0;margin-right: 2px;}
.materials .left-box .sidebar{position: fixed;width: 350px;display: flex;flex-direction: column;max-height: calc(100vh - 80px);overflow: hidden;}
.materials .left-box .sidebar .sidebar-top{background: #FFFFFF;padding: 25px 15px 15px 15px;flex-shrink: 0;}
.materials .left-box .sidebar .sidebar-top .step{position: relative;display: grid;height: 30px;padding: 0 15px;gap: 10px;grid-template-columns: 1em 1fr 18px;-webkit-box-align: center;-ms-flex-align: center;align-items: center;font-size: 14px;color: inherit;text-decoration: none;font-weight: bold;}
.materials .left-box .sidebar .sidebar-top .step-name{white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.materials .left-box .sidebar .sidebar-top .step-name .material-name{color: #e94560;}
.materials .left-box .sidebar .sidebar-top .step-name .material-name:hover{text-decoration:underline;}
.materials .left-box .sidebar .sidebar-top .step::after,.step::before{content: "";display: none;position: absolute;right: 24px;margin-right: -1px;width: 2px;background: rgba(211, 211, 211, 1);z-index: 10}
.materials .left-box .sidebar .sidebar-top .step::before{top: 0;bottom: 50%}
.materials .left-box .sidebar .sidebar-top .step::after{top: 50%;bottom: 0}
.materials .left-box .sidebar .sidebar-top .step-icon{position: relative;display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;width: 18px;height: 18px;line-height: 1;border-radius: 100%;background: rgba(211, 211, 211, 1);font-size: 15px;z-index: 20;}
.materials .left-box .sidebar .sidebar-top .step-active{background: rgba(211, 211, 211, 1);border-radius: 5px}
.materials .left-box .sidebar .sidebar-top .step-active .step-icon{font-size: 28px;}
.materials .left-box .sidebar .sidebar-top .step-not-first::before{display: block}
.materials .left-box .sidebar .sidebar-top .step-not-last::after{display: block}
.materials .left-box .sidebar .sidebar-main{display: flex;flex-direction: column;flex: 1 1 auto;min-height: 0;height: auto;overflow: hidden;padding: 0;}
.materials .left-box .sidebar .sidebar-main .title{font-size: 16px;font-weight: bold;position: static;flex-shrink: 0;background: #e3e3e3;width: auto;padding: 12px 15px;border-radius: 5px;margin: 0;}
.materials .right-box .material-header .material-header__title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;width:100%;}
.materials .right-box .material-header .material-header__back-quote{font-size:14px;font-weight:600;color:#e94560;text-decoration:none;white-space:nowrap;}
.materials .right-box .material-header .material-header__back-quote:hover{text-decoration:underline;color:#c73a52;}
.materials .left-box .sidebar .sidebar-main .model-info{margin: 8px 0 0;padding: 0 4px;font-size: 13px;line-height: 1.45;color: #333;flex-shrink: 0;}
.materials .left-box .sidebar .sidebar-main .sidebar-buttons{flex-shrink: 0;margin-top: 10px;}
.materials .left-box .sidebar .sidebar-main .model-list{display: flex;flex-direction: column;flex-wrap: nowrap;justify-content: flex-start;gap: 3px;margin-top: 10px;flex: 0 0 auto;min-height: 0;overflow-y: auto;overflow-x: hidden;-webkit-overflow-scrolling: touch;padding-bottom: 8px;box-sizing: border-box;}
.materials .left-box .sidebar .sidebar-main .model-list::after {content: none;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item{flex: 0 0 auto;width: 100%;box-sizing: border-box;background: #e9e8e1;border-radius: 5px;padding: 8px;min-height: 100px;height: auto;position: relative;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .quantity-control {width: auto;margin: 0 auto;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .quantity-control .btn {width: 22px;height: 22px;padding: 0;border-color: #ccc;display: flex;align-items: center;justify-content: center;z-index: 10;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .quantity-control .form-control {width: 60px;height: 22px;text-align: center;border-color: #ccc;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .quantity-control .form-control:focus {border-color: #ccc;box-shadow: none;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .buttons{display: flex;justify-content: space-between;align-items: center;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .buttons .buttons-left{display: flex;/* align-items: center; */gap:15px;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .buttons .buttons-right{display: flex;align-items: center;gap: 8px;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .buttons .buttons-right .bi{cursor: pointer;font-size: 18px;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content{display: flex;gap: 15px;margin-top: 10px;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .image{cursor: pointer;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .image img{border-radius: 5px;cursor: pointer;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box{min-width:0;flex:1;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-name{font-weight: bold;display: flex;align-items: center;justify-content: flex-start;gap: 0;min-width:0;max-width:100%;text-align:left;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-name .name-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto;max-width:100%;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-name .file-ext,
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-name > span:last-of-type:not(.name-display){flex:0 0 auto;}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-size{}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .name-box .file-metrics{
  font-size: 12px;
  line-height: 1.35;
  color: #555;
  margin-top: 2px;
}
.materials .left-box .sidebar .sidebar-main .model-list .model-item .model-content .load-text{display: none;}
.materials .left-box .sidebar .sidebar-bottom{text-align: center;margin: 25px 0;position: fixed;bottom: 0;display: flex;width: 350px;padding: 20px 10px 0 10px;gap: 8px;}
.materials .left-box .sidebar .btn{padding: 8px 15px;display: flex;justify-content: center;gap: 5px;align-items: center;width: 50%;font-size: 14px;white-space: nowrap;z-index: 200;}

/* White background orange text button styles */
.btn-white-orange {
    background-color: #ffffff !important;
    color: #e94560 !important;
    border: 1px solid #e94560 !important;
    padding: 8px 15px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 5px !important;
    align-items: center !important;
    width: 50% !important;
    font-size: 14px !important;
    white-space: nowrap !important;
    z-index: 200 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}

.btn-white-orange:hover {
    background-color: #e94560 !important;
    color: #ffffff !important;
    border-color: #e94560 !important;
    text-decoration: none !important;
}

.btn-white-orange:focus {
    background-color: #e94560 !important;
    color: #ffffff !important;
    border-color: #e94560 !important;
    box-shadow: 0 0 0 0.2rem rgba(255, 102, 0, 0.25) !important;
}

/* Sidebar buttons container */
.sidebar-buttons {
    display: flex;
    gap: 10px;
    margin: 15px 0;
    padding: 0 10px;
}

/* Gift icon will be positioned dynamically via JavaScript */
.materials .right-box{flex-grow: 1;}
.materials .material-header{margin-top: 10px;padding: 16px;background: #FFFFFF;}
.materials .material-header .title{margin-bottom: 15px;font-size: 18px;}
.materials .material-header .select-box {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  align-items: center;
  min-width: 0;
}
.materials .material-header .select-box .dropdown-menu{width: 200px;padding: 15px;}
.materials .material-header .select-box .form-check-input{border: 1px solid #333;}
.materials .material-header .select-box .dropdown-menu ul.lists{max-height: 300px;overflow: auto;padding-left: 5px;}
.materials .material-header .select-box .select-item-sort .form-select{}
.materials .material-header .select-material-hierarchy {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 6px;
  align-items: center;
  flex-shrink: 0;
}
.materials .material-header .select-material-hierarchy .form-select {
  max-width: 160px;
  min-width: 96px;
}
.materials .material-header .select-material-search-wrap {
  flex: 1 1 120px;
  min-width: 100px;
  max-width: 360px;
}
.materials .material-header .select-material-search-wrap .form-control {
  width: 100%;
}
.materials .material-header .select-box:not(:has(.question)) .select-material-search-wrap {
  max-width: none;
  flex: 1 1 200px;
}
.materials .material-header .question {
  flex-shrink: 0;
  margin-left: auto;
}
.materials .material-header .question .bi{cursor: pointer;font-size: 22px;color: #e94560;}
@media (max-width: 1199.98px) {
  .materials .material-header .select-box {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
  .materials .material-header .select-material-search-wrap {
    max-width: 220px;
  }
}
.materials .material-header .action-bar{margin-top: 15px;display: flex;flex-wrap: wrap;gap: 8px;}
.materials .material-header .action-bar .item{display: inline-flex;padding: 1px 15px;border-radius: 5px;gap: 8px;align-items: center;border: 1px solid #dee2e6;}
.materials .material-header .action-bar .item button{background: none;border: 0;font-size: 14px;}
.materials .material-header .action-bar .item.item-clear-all{font-weight: bold;cursor: pointer;}
.materials .material-main{}
.materials .material-main .recommend{padding: 15px;background: #FFFFFF;}
.materials .material-main .recommend .top{display: flex;justify-content: space-between;margin-bottom: 10px;}
.materials .material-main .recommend .top .title{font-weight: bold;font-size: 16px;}
.materials .material-main .recommend .top .bi{font-size: 20px;cursor: pointer;}
.materials .material-main .recommend ul.list{display: flex;flex-flow: wrap;gap: 15px;padding: 0;margin: 0;}
.materials .material-main .recommend ul.list li{flex: 0 0 calc(33.333% - 10px);border:1px solid #ccc;border-radius: 5px;padding: 20px;display: grid;gap: 3px;}
.materials .material-main .recommend ul.list li .image{text-align: center;}
.materials .material-main .recommend ul.list li .image img{width: 150px;}
.materials .material-main .recommend ul.list li .title{font-weight: bold;text-align: center;padding-top: 5px;}
.materials .material-main .recommend ul.list li .strong,.materials .material-main .recommend ul.list li .functional,.materials .material-main .recommend ul.list li .visual{display: flex;align-items: center;gap: 5px;line-height: 25px;}
.materials .material-main .recommend ul.list li .name{font-weight: bold;padding-right: 5px;width: 80px !important;}
.materials .material-main .recommend ul.list li .functional{}
.materials .material-main .recommend ul.list li .visual{}
.materials .material-main .recommend ul.list li .btn-price{padding: 5px 10px;width: auto;}
.materials .material-main .material-lists{}
.materials .material-main .material-lists .item-group{background: #FFF;}
.materials .material-main .material-lists .item-group .group-name{line-height: 44px;color: #000;font-size: 18px;background: #e3e3e3;padding: 0 15px;display: flex;justify-content: space-between;border-bottom: 2px solid #FFF;cursor: pointer;}
.materials .material-main .material-lists .item-group .group-name .bi{cursor: pointer;}
.materials .material-main .material-lists .item-group .item{display: flex;gap: 20px;justify-content: space-between;padding: 15px;align-items: center;border-bottom: 1px solid #ccc;}
.materials .material-main .material-lists .item-group .item .info{width: 50%;display: flex;gap: 15px;}
.materials .material-main .material-lists .item-group .item .info .image{}
.materials .material-main .material-lists .item-group .item .info .image img{width: 150px;border-radius: 5px;border: 1px solid #ccc;}
.materials .material-main .material-lists .item-group .item .info .content{display: grid;align-items: center;}
.materials .material-main .material-lists .item-group .item .info .content .name{font-size: 18px;font-weight: bold;}
.materials .material-main .material-lists .item-group .item .info .introduce{}
.materials .material-main .material-lists .item-group .item .properties{display: grid;gap: 5px;}
.materials .material-main .material-lists .item-group .item .properties .name{font-weight: bold;padding-right: 5px;width: 80px;}
.materials .material-main .material-lists .item-group .item .properties .strong,
.materials .material-main .material-lists .item-group .item .properties .functional,
.materials .material-main .material-lists .item-group .item .properties .visual{display: flex;align-items: center;gap: 5px;line-height: 25px;}
.materials .material-main .material-lists .item-group .item .action{text-align: center;}
.materials .material-main .material-lists .item-group .item .action .price{font-weight: bold;margin-bottom: 10px;}
.materials .material-main .material-lists .item-group .item .action .btn{padding:5px 15px;}

.materials .right-box {background: #FFF;padding: 30px 15px;}
/* compare-materials：右侧标题行与左侧步骤条顶部对齐（sidebar-top padding-top: 25px） */
.materials:not(.compare):not(.add-ons) .right-box{padding:25px 15px 16px 15px;}
.materials:not(.compare):not(.add-ons) .material-header{margin-top:0;padding:0 12px 8px;}
.materials:not(.compare):not(.add-ons) .material-header .title{margin-bottom:8px;}
.materials:not(.compare):not(.add-ons) .material-header .action-bar{margin-top:8px;}
.materials .right-box .addons-info {display: flex;gap: 10px;border: 1px solid #ccc;padding: 10px;border-radius: 5px;background-color: #f9f9f9;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); }
.materials .right-box .addons-info .material-info {width: 30%;border-right: 1px solid #ccc;padding-right: 10px;}
.materials .right-box .addons-info .material-info *{margin-bottom: 10px;}
.materials .right-box .addons-info .material-info .title{font-weight: bold;text-align: center;}
.materials .right-box .addons-info .material-info .image{text-align: center;}
.materials .right-box .addons-info .material-info .image img{width: 150px;border-radius: 5px;}
.materials .right-box .addons-info .material-info .star-box{display: flex;align-items: center;justify-content: space-between;max-width: 210px;}
.materials .right-box .addons-info .material-info .name{font-weight: bold;padding-right: 5px;}
.materials .right-box .addons-info .material-info .strong{/* display: inline-flex; *//* align-items: center; *//* gap: 5px; *//* height: 20px; */}
.materials .right-box .addons-info .threed-plus {width: 70%;}
.materials .right-box .addons-info .threed-plus{}
.materials .right-box .addons-info .threed-plus .plus-top{display: flex;margin-bottom: 15px;}
.materials .right-box .addons-info .threed-plus .plus-top .plus-image img{width: 150px;border-radius: 5px;}
.materials .right-box .addons-info .threed-plus .plus-top .plus-content {padding: 0 15px;max-height: 150px;overflow: auto;}
.materials .right-box .addons-info .threed-plus .plus-top .plus-content .name{font-weight: bold;margin-bottom: 5px;}
.materials .right-box .addons-info .threed-plus .plus-option{margin-bottom:10px;}
.materials .right-box .addons-info .threed-plus .plus-option .head{display: flex;justify-content: space-between;font-weight: bold;}
.materials .right-box .addons-info .threed-plus .plus-option .option-list {display: flex;gap: 10px;background: #ccc;border-radius: 5px;padding: 5px;}
.materials .right-box .addons-info .threed-plus .plus-option .option-list .option-item{width: 65%;}
.materials .right-box .addons-info .threed-plus .plus-option .option-list .option-note{width: 35%;}
.materials .right-box .addons-info .threed-plus .plus-option .option-list .option-note textarea{font-size: 13px; height: 100%;}
.materials .right-box .addons-info .threed-plus .plus-price-box{display: flex;justify-content: space-between;align-items:center;}
.materials .right-box .addons-info .threed-plus .plus-price{text-align: right;font-weight: bold;margin-top: 15px;}
.materials .right-box .addons-info .threed-plus .plus-bottom{text-align: right;margin-top:15px;}
.materials .right-box .addons-info .threed-plus .plus-bottom .back{font-weight: bold;margin-right: 15px;color: #e94560;}

.materials .right-box .top{position: sticky;background: #FFF;z-index: 8;padding:5px 0 5px 0;}

.materials-footer .footers{display: none;position: fixed;bottom: 0;width: 100%;}
.tip3{float: left;line-height: 34px;margin-right: 5px;color: #666;}
/*five stars*/
.star-rating {font-size: 18px;color: #aaa;position: relative;display: inline-block;}
.star-rating::before {content: "★★★★★";}
.star-rating::after {content: "★★★★★";position: absolute;left: 0;top: 0;width: 0;overflow: hidden;color: #e94560;}
.star-rating[data-rating="0.5"]::after{width: 10%;}
.star-rating[data-rating="1"]::after{width: 20%;}
.star-rating[data-rating="1.0"]::after{width: 20%;}
.star-rating[data-rating="1.5"]::after{width: 30%;}
.star-rating[data-rating="2"]::after{width: 40%;}
.star-rating[data-rating="2.0"]::after{width: 40%;}
.star-rating[data-rating="2.5"]::after{width: 50%;}
.star-rating[data-rating="3"]::after{width: 60%;}
.star-rating[data-rating="3.0"]::after{width: 60%;}
.star-rating[data-rating="3.1"]::after{width: 62%;}
.star-rating[data-rating="3.2"]::after{width: 64%;}
.star-rating[data-rating="3.3"]::after{width: 66%;}
.star-rating[data-rating="3.4"]::after{width: 68%;}
.star-rating[data-rating="3.5"]::after{width: 70%;}
.star-rating[data-rating="3.6"]::after{width: 72%;}
.star-rating[data-rating="3.7"]::after{width: 74%;}
.star-rating[data-rating="3.8"]::after{width: 76%;}
.star-rating[data-rating="3.9"]::after{width: 78%;}
.star-rating[data-rating="4"]::after{width: 80%;}
.star-rating[data-rating="4.0"]::after{width: 80%;}
.star-rating[data-rating="4.1"]::after{width: 82%;}
.star-rating[data-rating="4.2"]::after{width: 84%;}
.star-rating[data-rating="4.3"]::after{width: 86%;}
.star-rating[data-rating="4.4"]::after{width: 88%;}
.star-rating[data-rating="4.5"]::after{width: 90%;}
.star-rating[data-rating="4.6"]::after{width: 92%;}
.star-rating[data-rating="4.7"]::after{width: 94%;}
.star-rating[data-rating="4.8"]::after{width: 96%;}
.star-rating[data-rating="4.9"]::after{width: 98%;}
.star-rating[data-rating="5"]::after{width: 100%;}
.star-rating[data-rating="5.0"]::after{width: 100%;}

/*Add ons*/
.add-ons .right-box {background: #FFF;padding: 30px 15px;}
.add-ons .right-box .addons-info {display: flex;gap: 10px; border: 1px solid #ccc;}
.add-ons .right-box .addons-info .material-info {width: 30%;border-right: 1px solid #ccc;padding-right: 10px;}
.add-ons .right-box .addons-info .material-info *{margin-bottom: 10px;}
.add-ons .right-box .addons-info .material-info .title{font-weight: bold;text-align: center;}
.add-ons .right-box .addons-info .material-info .image{text-align: center;}
.add-ons .right-box .addons-info .material-info .image img{width: 150px;border-radius: 5px;}
.add-ons .right-box .addons-info .material-info .name{font-weight: bold;padding-right: 5px;}
.add-ons .right-box .addons-info .material-info .strong{display: inline-flex;align-items: center;gap: 5px;height: 20px;}
.add-ons .right-box .addons-info .threed-plus {width: 70%;}
.add-ons .right-box .addons-info .threed-plus{}
.add-ons .right-box .addons-info .threed-plus .plus-top{display: flex;margin-bottom: 15px;}
.add-ons .right-box .addons-info .threed-plus .plus-top .plus-image img{width: 150px;border-radius: 5px;}
.add-ons .right-box .addons-info .threed-plus .plus-top .plus-content {padding: 0 15px;max-height: 150px;overflow: auto;}
.add-ons .right-box .addons-info .threed-plus .plus-top .plus-content .name{font-weight: bold;margin-bottom: 5px;}
.add-ons .right-box .addons-info .threed-plus .plus-option{margin-bottom:10px;}
.add-ons .right-box .addons-info .threed-plus .plus-option .head{display: flex;justify-content: space-between;font-weight: bold;}
.add-ons .right-box .addons-info .threed-plus .plus-option .option-list {display: flex;gap: 10px;background: #ccc;border-radius: 5px;padding: 5px;}
.add-ons .right-box .addons-info .threed-plus .plus-option .option-list .option-item{width: 65%;}
.add-ons .right-box .addons-info .threed-plus .plus-option .option-list .option-note{width: 35%;}
.add-ons .right-box .addons-info .threed-plus .plus-option .option-list .option-note textarea{font-size: 13px;}
.add-ons .right-box .addons-info .threed-plus .plus-price{text-align: right;font-weight: bold;margin-top: 15px;}
.add-ons .right-box .addons-info .threed-plus .plus-bottom{text-align: right;margin-top:15px;}
.add-ons .right-box .addons-info .threed-plus .plus-bottom .back{font-weight: bold;margin-right: 15px;color: #e94560;}

/*compare*/
.compare .right-box{background: #FFF;padding: 10px 15px 20px 15px;}
.compare .right-box .top{position: sticky;top: 80px;background: #FFF;z-index: 8;display: flex;align-items: center;justify-content: space-between;gap: 16px;padding: 8px 0 10px 0;border-bottom: 1px solid #ccc;}
.compare .right-box .material{display: flex;gap: 30px;justify-content: flex-start;flex: 1;min-width: 0;border-bottom: none;padding-bottom: 0;}
.compare .right-box .back{text-align: right;justify-content: flex-end;display: flex;align-items: center;margin: 0;font-weight: bold;flex-shrink: 0;}
.compare .right-box .back a{color: #e94560;white-space: nowrap;text-decoration: none;}
.compare .right-box .back a:hover{text-decoration: underline;color: #c73a52;}
.compare .right-box .supplier-recommend{display: flex;flex-wrap: wrap;gap:12px;margin-top: 10px;}
.compare .right-box .supplier-recommend .list{flex:0 0 calc(33.333% - 8px);border:1px solid #CCCCCC;border-radius: 5px;}
.compare .right-box .supplier-recommend .list .offer-header{font-size:16px;border-top-left-radius: 5px;border-top-right-radius: 5px;text-align: center;padding: 6px 0;color: #FFFFFF;font-weight: bold;}
.compare .right-box .supplier-recommend .list .offer-header-1{background: #0F9932;}
.compare .right-box .supplier-recommend .list .offer-header-2{background: #e94560;}
.compare .right-box .supplier-recommend .list .offer-header-3{background: #e0811a;}
.compare .right-box .supplier-recommend .list .offer-body{padding: 10px;display: grid;gap: 10px;}
.compare .right-box .supplier-recommend .list .offer-body .total-price{font-weight: bold;display: flex;justify-content: space-between;}
.compare .right-box .supplier-recommend .list .offer-body .total-price .name{font-size: 18px;}
.compare .right-box .supplier-recommend .list .offer-body .total-price .price{font-size: 22px;}
.compare .right-box .supplier-recommend .list .offer-body .delivery{display: flex;justify-content: space-between;}
.compare .right-box .supplier-recommend .list .offer-body .delivery .date{font-size: 18px;}
.compare .right-box .supplier-recommend .list .offer-body .supplier-info{display: flex;justify-content: space-between;}
.compare .right-box .supplier-recommend .list .offer-body .supplier-info .company-info{display: grid;gap:5px;text-align: end;}
.compare .right-box .supplier-recommend .list .offer-body .supplier-info .star{display: flex;gap: 5px;margin-top:-8px;color: #0a0a0a;align-items: center;}
.compare .right-box .supplier-recommend .list .offer-body .technology{display: flex;justify-content: space-between;}
.compare .right-box .supplier-recommend .list .offer-body .features{background: #CCCCCC;text-align: center;border-radius:5px;display: flex;justify-content: center;align-items: center;gap: 5px;}
.compare .right-box .supplier-recommend .list .offer-body .features .bi{font-size: 22px;color: #e94560;}
.compare .right-box .supplier-recommend .list .offer-body .buttons{display: flex;justify-content: space-between;}
.compare .right-box .supplier-recommend .list .offer-body .buttons .btn{padding: 5px 20px;}

.compare .right-box .supplier-list{margin-top: 20px;}
.compare .right-box .supplier-list i{cursor: pointer;}
.compare .right-box .supplier-list .cell-1{width: 25%;}
.compare .right-box .supplier-list .cell-2{width: 35%;}
.compare .right-box .supplier-list .cell-3{width: 20%;}
.compare .right-box .supplier-list .cell-4{width: 20%;}
.compare .right-box .supplier-list .offer-header{background: #ccc;border-top-left-radius: 5px;border-top-right-radius: 5px;display: flex;flex-wrap: wrap;font-weight: bold;padding: 10px;justify-content: space-between;}
.compare .right-box .supplier-list .offer-body .list{display: flex;justify-content: space-between;border: 1px solid #ccc;padding: 10px;border-top: 0;}
.compare .right-box .supplier-list .offer-body .list .cell .content{font-weight: bold;margin-bottom: 5px;}
.compare .right-box .supplier-list .star{display: flex;gap: 5px;margin-top:-5px;color: #0a0a0a;}
.compare .right-box .supplier-list .buttons{display: grid;gap: 10px;justify-content: end;}
.compare .right-box .supplier-list .buttons .btn{width: 120px;}
.no-data{padding: 30px 0 100px 0;background: #FFFFFF;}
.no-data .content{text-align: center;width: 500px;margin: 0 auto;}
.no-data .content img{border-radius: 5px;border: 1px solid #e9ecef;}
.no-data .content .head-label{font-weight: bold;font-size: 30px;margin: 15px 0;}
.no-data .content .buttons{display: flex;gap: 20px;justify-content: center;margin-top: 20px;}
.no-data .content .buttons .btn{width: 120px;}
.displaynone {display: none !important;}
.showprice img{width: 20px; height: 20px;}

.option-item .num_box{/*float: left;width: 60%;*/display: flex;border: 1px solid #666;margin-left: 10px;}
.option-item .num_box .sub{flex: 1;/*height: 100%;*/text-align: center;font-size: 12px;line-height: 18px;background: #eee;cursor: pointer;}
.option-item .num_box .num{flex: 1;/*height: 100%;*/border: none;width: 47px;text-align: center;border-right: 1px solid #666;border-left: 1px solid #666;font-size: 12px;}
.option-item .num_box .add{flex: 1;/*height: 100%;*/text-align: center;font-size: 12px;line-height: 18px;background: #eee;cursor: pointer;}
.option-item .fielbox{/*float: left;width: 20%;*/display: flex;position: relative;margin-left: 10px;}
.option-item .fielbox .file{flex: 1;/*height: 15px;*/border: none;background: #ddd;line-height: 15px;margin-right: 5px;margin:0;z-index: 5;opacity: 0;}
.option-item .fielbox .input{/*height: 15px;*/border: none;background: #ddd;line-height: 15px;margin-right: 5px;/*width: 153px;*/}
.option-item .fielbox .button{/*width: 44px;height: 15px;*/line-height: 15px;padding: 0;margin: 0;border: none;background: #000;color: #fff;z-index: 0;position: relative;font-size: 12px;}

/* Align fill rate dropdown and select button with right edges aligned */
.materials .material-main .material-lists .item-group .item .action .mb-2 {
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 8px !important;
  width: 200px !important;
}

.materials .material-main .material-lists .item-group .item .action .d-flex {
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 8px !important;
  flex-direction: row !important;
}

.materials .material-main .material-lists .item-group .item .action .btn-select {
  margin-left: auto !important;
  text-align: center !important;
  align-self: flex-end !important;
  width: auto !important;
}

/* Override the center alignment for the action container when it contains fill rate elements */
.materials .material-main .material-lists .item-group .item .action:has(.mb-2) {
  text-align: right !important;
}

/* Ensure all action containers have consistent width and alignment */
.materials .material-main .material-lists .item-group .item .action {
  width: 200px !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}

/* Ensure price alignment across different materials */
.materials .material-main .material-lists .item-group .item .action .price {
  min-height: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  text-align: right !important;
  width: 100% !important;
  gap: 0.35em;
}

/* Ensure the select button aligns with the dropdown width */
.materials .material-main .material-lists .item-group .item .action .form-select {
  width: auto !important;
}

/* Make dropdown and button have the same width by aligning their right edges */
.materials .material-main .material-lists .item-group .item .action .form-select,
.materials .material-main .material-lists .item-group .item .action .btn-select {
  width: 93px !important;
}

/* Gift Modal Styles - Same as Save Progress Modal */
#giftModal {
    z-index: 999999 !important;
}

#giftModal .modal-dialog {
    position: fixed !important;
    margin: 0 !important;
    width: 580px !important;
    max-width: 90vw;
    z-index: 999999 !important;
    box-sizing: border-box;
    transform: none !important;
}

#giftModal .modal-content {
    border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    background: #fff;
    width: 100%;
    min-height: 500px;
    box-sizing: border-box;
    position: relative;
    z-index: 999999;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* 确保弹窗背景可见 */
.modal-backdrop {
    z-index: 999998 !important;
}

#giftModal .modal-header {
    border: none;
    padding: 10px 20px 5px 20px;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 40px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    flex-shrink: 0;
}

#giftModal .close {
    font-size: 24px;
    color: #666;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    line-height: 1;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

#giftModal .close:hover {
    color: #333;
}

#giftModal .modal-body {
    padding: 10px 20px;
    background: #fff;
    overflow-y: auto;
    box-sizing: border-box;
    width: 100%;
    min-height: 380px;
    max-height: calc(100% - 80px);
    flex: 1;
}

#giftModal .questionnaire-box {
    /* margin: 0; */
    width: 100%;
    box-sizing: border-box;
    max-width: 100%;
}

#giftModal .questionnaire-box form {
    text-align: left;
    overflow: visible;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
}

#giftModal .questionnaire-box .li {
    margin: 20px 0 0 0 !important;
    width: 100%;
}

#giftModal .questionnaire-box .li + .li {
    margin-top: 15px !important;
}

#giftModal .questionnaire-box .li:first-child {
    margin-top: 0 !important;
}

#giftModal .questionnaire-box .li-code {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 5px !important;
    width: 100% !important;
    margin-top: 25px !important;
}

#giftModal .questionnaire-box .li-code .input {
    width: 50% !important;
    flex-shrink: 0 !important;
}

#giftModal .questionnaire-box .li-code .btn-get-code {
    width: 45% !important;
    flex-shrink: 0 !important;
}

#giftModal .questionnaire-box .li .input {
    width: 100%;
    line-height: 30px;
    border: 1px solid #ddd;
    margin: 0;
    padding: 0 10px;
    height: 40px;
    border-radius: 4px;
    box-sizing: border-box;
}

#giftModal .questionnaire-box .li .input:focus {
    border-color: #e94560;
    outline: none;
}

#giftModal .questionnaire-box .li .submit {
    padding: 0 20px;
    line-height: 40px;
    background: #e94560;
    color: #fff;
    border: none;
    font-size: 14px;
    height: 40px;
    font-family: 'MB';
    margin-top: 15px;
    width: 100%;
    border-radius: 4px;
    box-sizing: border-box;
}

#giftModal .questionnaire-box .li .submit:hover {
    background: #e55a00;
}

/* 弹窗内容样式 */
#giftModal .modal-content-text {
    text-align: center;
    margin-bottom: 15px;
    padding-top: 0px;
    width: 100%;
}

#giftModal .modal-content-text .title {
    font-size: 18px;
    font-weight: bold;
    color: #000;
    margin-bottom: 8px;
    line-height: 1.3;
}

#giftModal .modal-body .benefit {
    font-size: 14px;
    font-weight: bold;
    color: #000;
    margin-bottom: 15px;
    line-height: 1.3;
}

/* OAuth 样式 */
#giftModal .oauth_sign {
    text-align: center;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #eee;
    padding-bottom: 10px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

#giftModal .oauth_sign .text {
    font-size: 14px;
    color: #666;
    display: inline-block;
    margin: 0;
    white-space: nowrap;
}

#giftModal .oauth_sign .icons {
    display: flex;
    justify-content: center;
    gap: 15px;
}

#giftModal .oauth_sign .oauth-btn {
    display: inline-block;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: all 0.3s ease;
}

#giftModal .oauth_sign .oauth-btn:hover {
    border-color: #e94560;
    transform: translateY(-2px);
    box-shadow: 0 2px 8px rgba(255, 102, 0, 0.2);
}

#giftModal .oauth_sign .oauth-btn img {
    width: 20px;
    height: 20px;
}

/* User Agreement and Subscribe checkbox styles */
#giftModal .li_agreement {
    margin: 30px 0 0 0 !important;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
}

#giftModal .li_agreement .form-check {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin: 0;
}

#giftModal .li_agreement .form-check-input {
    min-width: 18px;
    float: none !important;
    margin-left: 0 !important;
    position: static !important;
}

#giftModal .li_agreement .form-check-input:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 102, 0, 0.25);
    border-color: #e94560;
}

#giftModal .li_agreement .form-check-label {
    cursor: pointer;
    line-height: 1.4;
    font-size: 14px;
    margin-bottom: 0;
    flex: 1;
    text-align: left;
    line-height: 16px;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
}

#giftModal .li_agreement .form-check-label span {
    font-size: 14px;
    color: #666 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#giftModal .li_agreement a {
    color: #e94560;
}

#giftModal .li_agreement a:hover {
    font-weight: bold;
    color: #0a0a0a;
}

/* 专门针对Gift Modal的强制显示规则 - 最高优先级 */
#giftModal .questionnaire-box .li.li_agreement,
#giftModal .questionnaire-box .li.li_agreement * {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 强制设置Gift Modal第一个复选框与下拉列表的间距 */
#giftModal .questionnaire-box .li.li_agreement {
    margin-top: 40px !important;
    padding-top: 10px !important;
}

/* 最高优先级 - 确保Gift Modal第一个复选框有足够的上边距 */
#giftModal .questionnaire-box form .li.li_agreement {
    margin-top: 50px !important;
    margin-bottom: 0 !important;
    padding-top: 15px !important;
    border-top: 1px solid transparent !important;
}

#giftModal .questionnaire-box .li.li_agreement .form-check {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

#giftModal .questionnaire-box .li.li_agreement .form-check-input {
    display: inline-block !important;
    position: static !important;
    float: none !important;
    margin: 0 !important;
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    order: 1 !important;
}

#giftModal .questionnaire-box .li.li_agreement .form-check-label {
    display: block !important;
    flex: 1 !important;
    order: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    font-size: 14px !important;
    color: #333 !important;
}

#giftModal .questionnaire-box .li.li_agreement .form-check-label span {
    display: inline !important;
    width: auto !important;
    color: #666 !important;
}

#giftModal .questionnaire-box .li.li_agreement a {
    display: inline !important;
    color: #e94560 !important;
    text-decoration: underline !important;
    visibility: visible !important;
}

/* 强制覆盖lr.css中隐藏span的规则 - Gift Modal */
#giftModal .li .span,
#giftModal .li_agreement .span,
#giftModal .orther .span,
#giftModal .form-check-label .span {
    display: inline !important;
    width: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#giftModal .orther {
    float: left;
    width: 100%;
    line-height: 16px;
    margin: 2px 0 0 0 !important;
    display: flex;
    padding: 0;
    box-sizing: border-box;
}

#giftModal .orther .form-check {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin: 0;
}

#giftModal .orther .form-check-input {
    min-width: 18px;
    float: none !important;
    margin-left: 0 !important;
    position: static !important;
}

#giftModal .orther .form-check-label {
    cursor: pointer;
    flex: 1;
    text-align: left;
    line-height: 1.4;
    font-size: 14px;
    margin-bottom: 0;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: inherit !important;
}

#giftModal .orther .form-check-label span {
    font-size: 14px;
    color: #666 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Back button styles - matching login page */
#giftModal .back-login {
    float: left;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #000;
    background: transparent;
    color: #000;
    transition: all 0.3s ease;
    order: 1;
}

#giftModal .back-login:hover {
    background: #000;
    color: #fff;
}

#giftModal .back-login i {
    font-size: 16px;
}

/* Send Code button styles */
#giftModal .btn-get-code {
    height: 40px;
    width: 50%;
    padding: 0 20px;
    line-height: 40px;
    background: #e94560;
    color: #fff;
    border: none;
    font-size: 14px;
    font-family: 'MB';
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    box-sizing: border-box;
}

#giftModal .btn-get-code:hover {
    background: #e55a00;
}

/* Checkout Reminder Modal Highlight Styles */
#checkoutReminderModal .modal-content {
    border: 3px solid #e94560 !important;
    box-shadow: 0 10px 30px rgba(255, 102, 0, 0.3) !important;
    animation: checkoutHighlight 1.5s ease-in-out;
}

@keyframes checkoutHighlight {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 102, 0, 0.7);
        border-color: #e94560;
    }
    50% {
        box-shadow: 0 0 20px 10px rgba(255, 102, 0, 0.4);
        border-color: #ff8800;
    }
    100% {
        box-shadow: 0 10px 30px rgba(255, 102, 0, 0.3);
        border-color: #e94560;
    }
}

#checkoutReminderModal .modal-header {
    background: linear-gradient(135deg, #e94560, #ff8800) !important;
    color: white !important;
    border-bottom: 2px solid #e94560 !important;
}

#checkoutReminderModal .modal-title {
    color: white !important;
    font-weight: bold !important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3) !important;
}

#checkoutReminderModal .modal-header .close {
    color: white !important;
    opacity: 0.8 !important;
    text-shadow: none !important;
}

#checkoutReminderModal .modal-header .close:hover {
    opacity: 1 !important;
}

/* Safari专用修复 - 简单有效 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .form-check {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
    
    .form-check-input {
        position: static !important;
        float: left !important;
        margin: 2px 8px 0 0 !important;
        display: block !important;
    }
    
    .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
    }
}

/* 移动端Safari专用修复 - 更强力的修复 */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 768px) {
    .form-check {
        display: block !important;
        position: relative !important;
        padding-left: 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }
    
    .form-check-input {
        position: static !important;
        float: left !important;
        margin: 2px 8px 0 0 !important;
        display: block !important;
        clear: left !important;
    }
    
    .form-check-label {
        display: block !important;
        overflow: hidden !important;
        padding-left: 0 !important;
        margin: 0 !important;
        clear: both !important;
    }
}

/* 最后的Safari修复 - 使用更具体的选择器 */
.lr_user .form-check,
.lr_modal .form-check,
#reg .form-check,
#login .form-check {
    display: block !important;
    position: relative !important;
    padding-left: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}

.lr_user .form-check-input,
.lr_modal .form-check-input,
#reg .form-check-input,
#login .form-check-input {
    position: static !important;
    float: left !important;
    margin: 2px 8px 0 0 !important;
    display: block !important;
    clear: left !important;
}

.lr_user .form-check-label,
.lr_modal .form-check-label,
#reg .form-check-label,
#login .form-check-label {
    display: block !important;
    overflow: hidden !important;
    padding-left: 0 !important;
    margin: 0 !important;
}

/* 问卷调查区域 - 单选按钮和文本左右对齐展示 */
.questionnaire-box .form-check input[type="radio"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    border: 2px solid #ddd !important;
    border-radius: 50% !important;
    background-color: #fff !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

.questionnaire-box .form-check input[type="radio"]:checked {
    background-color: #e94560 !important;
    border-color: #e94560 !important;
}

.questionnaire-box .form-check input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    left: 4px;
    top: 4px;
    width: 6px;
    height: 6px;
    background: white;
    border-radius: 50%;
}

.questionnaire-box .form-check {
    display: flex !important;
    align-items: center !important;
    padding: 8px 0 !important;
    margin: 0 !important;
}

.questionnaire-box .form-check-label {
    cursor: pointer !important;
    margin: 0 !important;
    font-size: 14px !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
}

/* 配置页面单选按钮和文本并列展示 - 两列布局 */
.option-item .form-check {
    display: flex !important;
    align-items: center !important;
    margin-bottom: 8px !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 6px 0 !important;
}

/* 直接为option-item内的所有form-check创建两列布局 */
.option-item {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 8px !important;
}

.option-item .form-check {
    margin-bottom: 0 !important;
    background: transparent !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
    border: none !important;
    transition: all 0.2s ease !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
}

.option-item .form-check:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* 两列布局容器 - 备用方案 */
.option-item .form-check-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 15px !important;
    width: 100% !important;
    margin-top: 8px !important;
}

.option-item .form-check-container .form-check {
    margin-bottom: 0 !important;
    background: transparent !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
    border: none !important;
    transition: all 0.2s ease !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
}

.option-item .form-check-container .form-check:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.option-item .form-check input[type="radio"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #ddd !important;
    border-radius: 50% !important;
    background-color: #fff !important;
    position: relative !important;
    display: inline-block !important;
    vertical-align: middle !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
}

.option-item .form-check input[type="radio"]:hover {
    border-color: #e94560 !important;
    transform: scale(1.05) !important;
}

.option-item .form-check input[type="radio"]:checked {
    background-color: #e94560 !important;
    border-color: #e94560 !important;
    transform: scale(1.1) !important;
}

.option-item .form-check input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 5px;
    width: 6px;
    height: 6px;
    background: white;
    border-radius: 50%;
    animation: radioCheck 0.2s ease-in-out;
}

@keyframes radioCheck {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.option-item .form-check-label {
    cursor: pointer !important;
    margin: 0 !important;
    font-size: 14px !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 !important;
    min-width: 0 !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.option-item .form-check-label:hover {
    color: #e94560 !important;
}

/* 优化两列布局容器 */
.option-item .radio-group {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 8px !important;
}

.option-item .radio-group .form-check {
    margin-bottom: 0 !important;
    background: transparent !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
    border: none !important;
    transition: all 0.2s ease !important;
}

.option-item .radio-group .form-check:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* 响应式布局优化 */
@media (max-width: 768px) {
    .option-item {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
    
    .option-item .radio-group {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
    
    .option-item .form-check-container {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }
    
    .option-item .form-check {
        margin-bottom: 8px !important;
        padding: 4px 0 !important;
    }
    
    .option-item .form-check input[type="radio"] {
        width: 16px !important;
        height: 16px !important;
    }
    
    .option-item .form-check input[type="radio"]:checked::after {
        left: 4px !important;
        top: 4px !important;
        width: 5px !important;
        height: 5px !important;
    }
}

/* 登录弹窗样式 - 高亮效果和白色背景 */
#loginModal {
    z-index: 999999 !important;
}

#loginModal .modal-dialog {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    width: 420px !important;
    max-width: 90vw;
    z-index: 999999 !important;
    box-sizing: border-box;
}

#loginModal .modal-content {
    border-radius: 8px !important;
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    background: #fff !important;
    width: 100%;
    min-height: auto;
    max-height: 85vh;
    height: auto !important;
    box-sizing: border-box;
    position: relative;
    z-index: 999999;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    border: 3px solid #e94560 !important;
    animation: loginHighlight 1.5s ease-in-out;
}

@keyframes loginHighlight {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 102, 0, 0.7);
        border-color: #e94560;
    }
    50% {
        box-shadow: 0 0 20px 10px rgba(255, 102, 0, 0.4);
        border-color: #ff8800;
    }
    100% {
        box-shadow: 0 10px 30px rgba(255, 102, 0, 0.3);
        border-color: #e94560;
    }
}

#loginModal .modal-header {
    background: linear-gradient(135deg, #e94560, #ff8800) !important;
    color: white !important;
    border-bottom: 2px solid #e94560 !important;
    border: none;
    padding: 10px 20px 5px 20px;
    background: transparent;
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 40px;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    flex-shrink: 0;
}

#loginModal .modal-title {
    color: white !important;
    font-weight: bold !important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3) !important;
}

#loginModal .modal-header .close {
    color: white !important;
    opacity: 0.8 !important;
    text-shadow: none !important;
    font-size: 24px;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    line-height: 1;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

#loginModal .modal-header .close:hover {
    opacity: 1 !important;
    color: #333;
}

#loginModal .modal-body {
    padding: 15px 25px 20px 25px;
    background: #fff !important;
    overflow-y: auto;
    overflow-x: hidden;
    box-sizing: border-box;
    width: 100%;
    min-height: auto;
    max-height: calc(85vh - 80px);
    flex: 1;
}

#loginModal .lr_user {
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
}

#loginModal .lr_user .container {
    background: #fff !important;
}

#loginModal .lr_user .box {
    background: #fff !important;
    padding: 0 !important;
}

#loginModal .lr_user .t {
    background: #fff !important;
    color: #000 !important;
}

#loginModal .lr_user .t b {
    color: #000 !important;
    font-weight: bold !important;
}

#loginModal .lr_user .li {
    background: #fff !important;
}

#loginModal .lr_user .input {
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: #000 !important;
}

#loginModal .lr_user .input:focus {
    border-color: #e94560 !important;
    outline: none !important;
}

#loginModal .lr_user .submit {
    background: #e94560 !important;
    color: #fff !important;
    border: none !important;
}

#loginModal .lr_user .submit:hover {
    background: #e55a00 !important;
}

#loginModal .oauth_sign {
    background: #fff !important;
    border-top: 1px solid #eee !important;
    margin-top: 15px !important;
    padding-top: 15px !important;
}

#loginModal .oauth_sign .text {
    color: #666 !important;
}

#loginModal .oauth_sign .oauth-btn {
    background: #fff !important;
    border: 1px solid #ddd !important;
}

#loginModal .oauth_sign .oauth-btn:hover {
    border-color: #e94560 !important;
}

#loginModal .modal-footer {
    background: #fff !important;
    border-top: 1px solid #eee !important;
    padding: 10px 20px;
}

#loginModal .modal-footer .btn {
    background: #fff !important;
    color: #666 !important;
    border: 1px solid #ddd !important;
}

#loginModal .modal-footer .btn:hover {
    background: #f8f9fa !important;
    color: #333 !important;
}

/* Scale / production note modals above cookie bar & upload UI */
#scaleModal,
#editNoteModal {
    z-index: 999999 !important;
}
