/* Tianai Captcha：自适应高度 + 底部操作同行 + 浮层 */

/* 去除 loading 占位（含刷新时的 loading） */
#tac-loading,
#tianai-captcha-loading,
#tianai-captcha-parent .loading,
#tianai-captcha-box > .loading {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

#tianai-captcha-parent {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  box-sizing: border-box;
  position: relative;
  padding-bottom: 8px !important;
}

#tianai-captcha-parent #tianai-captcha-box {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

#tianai-captcha {
  height: auto !important;
  position: relative !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  z-index: 1 !important;
}

#tianai-captcha.tianai-captcha-slider,
#tianai-captcha.tianai-captcha-rotate,
#tianai-captcha.tianai-captcha-concat,
#tianai-captcha.tianai-captcha-word-click,
#tianai-captcha.tianai-captcha-disable {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  height: auto !important;
}

/* 底部操作行基础 —— z-index 需高于 #tianai-captcha(999)，否则点不到 */
#tianai-captcha-parent .slider-bottom {
  position: relative !important;
  display: flex !important;
  align-items: center;
  gap: 10px;
  width: 100% !important;
  height: auto !important;
  min-height: 32px;
  margin: 8px 0 0 !important;
  float: none !important;
  box-sizing: border-box;
  z-index: 1001 !important;
  pointer-events: auto !important;
}

#tianai-captcha-parent .slider-bottom .logo {
  display: none !important;
}

#tianai-captcha-parent .slider-bottom .refresh-btn,
#tianai-captcha-parent .slider-bottom .close-btn {
  float: none !important;
  margin: 0 !important;
  flex-shrink: 0;
  position: relative !important;
  z-index: 1;
  pointer-events: auto !important;
  cursor: pointer !important;
}

/*
 * 滑块 / 旋转 / 拼接：
 * 不挪动 .slider-move（否则拖拽与原样式失效）。
 * 滑块按钮原 top:-6px / 45px 会溢出，改为整行 45px 包住，
 * 轨道与右侧刷新/关闭在同一行垂直居中。
 */
#tianai-captcha-parent.tac-type-slider {
  padding-bottom: 8px !important;
}

#tianai-captcha-parent.tac-type-slider #tianai-captcha-box {
  overflow: visible !important;
}

#tianai-captcha-parent.tac-type-slider #tianai-captcha .slider-move {
  position: relative !important;
  display: flex !important;
  align-items: center;
  width: calc(100% - 56px) !important;
  height: 45px !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  line-height: normal !important;
}

#tianai-captcha-parent.tac-type-slider #tianai-captcha .slider-move .slider-move-track {
  flex: 1 1 auto;
  width: 100%;
  height: 32px !important;
  line-height: 32px !important;
  box-sizing: border-box !important;
}

#tianai-captcha-parent.tac-type-slider #tianai-captcha .slider-move .slider-move-btn {
  top: 0 !important;
  height: 45px !important;
}

#tianai-captcha-parent.tac-type-slider > .slider-bottom {
  position: absolute !important;
  right: 8px;
  bottom: 8px;
  height: 45px !important;
  min-height: 45px !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  gap: 8px;
  z-index: 1001 !important;
  justify-content: flex-end;
  align-items: center;
  pointer-events: auto !important;
}

/* 与原先 float:right 一致：刷新在左、关闭在右 */
#tianai-captcha-parent.tac-type-slider > .slider-bottom .refresh-btn {
  order: 1;
}

#tianai-captcha-parent.tac-type-slider > .slider-bottom .close-btn {
  order: 2;
}

/* 滑过区域：与 Arco 确认按钮主色一致（#165DFF / --primary-6） */
#tianai-captcha-parent #tianai-captcha-slider-move-track-mask {
  border-color: #165dff !important;
  border-color: rgb(var(--primary-6)) !important;
  background-color: rgba(22, 93, 255, 0.45) !important;
  background-color: rgba(var(--primary-6), 0.45) !important;
  opacity: 1 !important;
}

/* 点选：底部保持文档流全宽，避免被滑块绝对定位规则影响 */
#tianai-captcha-parent.tac-type-word-click > .slider-bottom {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 32px !important;
  margin: 8px 0 0 !important;
  justify-content: flex-start;
}

#tianai-captcha-parent.tac-type-word-click > .slider-bottom .click-confirm-btn {
  order: 1;
}

#tianai-captcha-parent.tac-type-word-click > .slider-bottom .refresh-btn {
  order: 2;
}

#tianai-captcha-parent.tac-type-word-click > .slider-bottom .close-btn {
  order: 3;
}

/*
 * 点选「确定」：原位置先隐藏，挪入 .slider-bottom 后再显示。
 */
#tianai-captcha .click-confirm-btn {
  position: absolute !important;
  left: 0;
  top: 0;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  border: none !important;
  background: transparent !important;
  background-image: none !important;
  pointer-events: none !important;
}

#tianai-captcha-parent .slider-bottom .click-confirm-btn {
  position: static !important;
  left: auto !important;
  top: auto !important;
  flex: 1 1 auto;
  width: auto !important;
  height: 32px !important;
  line-height: 30px !important;
  margin: 0 !important;
  padding: 0 15px !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  box-sizing: border-box !important;
  text-align: center;
  cursor: pointer;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500;
  border-radius: 2px !important;
  /* 与 Arco Design 登录主按钮一致（默认 #165DFF / --primary-6） */
  border: 1px solid #165dff !important;
  background: #165dff !important;
  border-color: rgb(var(--primary-6)) !important;
  background: rgb(var(--primary-6)) !important;
  background-image: none !important;
  box-shadow: none !important;
  transition: background-color 0.2s, border-color 0.2s;
}

#tianai-captcha-parent .slider-bottom .click-confirm-btn:hover {
  background: #4080ff !important;
  border-color: #4080ff !important;
  background: rgb(var(--primary-5)) !important;
  border-color: rgb(var(--primary-5)) !important;
  background-image: none !important;
}

#tianai-captcha-parent .slider-bottom .click-confirm-btn:active {
  background: #0e42d2 !important;
  border-color: #0e42d2 !important;
  background: rgb(var(--primary-7)) !important;
  border-color: rgb(var(--primary-7)) !important;
}

/* 浮层 */
.tac-mask {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.45);
  padding: 16px;
  box-sizing: border-box;
}

.tac-mask.is-show {
  display: flex;
}

.tac-mask #captcha-box {
  width: auto;
  height: auto;
  min-height: 0;
}
