/* CSS Reset（meyerweb v2.0，公有领域） */
body {
}

/* 1. 更直观的 box-sizing */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* 2. 清除默认边距 */
* {
  margin: 0;
}

body {
  /* 3. 更易读的行高 */
  line-height: 1.5;
  /* 4. 改善文字渲染 */
  -webkit-font-smoothing: antialiased;
}

/* 5. 改善媒体默认样式 */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* 6. 表单控件继承字体 */
input,
button,
textarea,
select {
  font: inherit;
}

/* 7. 避免文字溢出 */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* 8. 改善换行 */
p {
  text-wrap: pretty;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

/* 9. 创建根层叠上下文 */
#root,
#__next {
  isolation: isolate;
}

body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

.clear {
  clear: both;
}

.clearfix:after {
  content: '';
  display: block;
  clear: both;
}

.hidden {
  font: 0px;
  height: 0;
  overflow: hidden;
  position: absolute;
  visibility: hidden;
  width: 0;
  text-indent: -99999px;
}
/* reset 结束 */

/* 1. 给 wrap 设最小宽度，内部元素居中 */
#wrap {
  width: 100%;
  min-width: 1920px; /* 保持内容基准宽度 */
  overflow: hidden; /* 防止背景导致横向滚动 */
  position: relative;
  margin: 0 auto;
}

canvas {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

.main_title {
  margin: 0 auto;
  padding: 0 auto;
  z-index: 9999;
  position: absolute;
  /* 初始位置固定在顶部居中 */
  top: 0px;
  left: 50%;
  transform: translateX(-50%);

  /* 动画：0.8 秒执行，保持结束状态 (both) */
  animation: chainsDropBounce 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.tooltip-content .item_pop {
  display: block;
}
.item_pop {
  width: 340px;
  background: #111;
  border: 2px solid #736e68;
  border-radius: 15px;
  line-height: 20px;
  padding: 30px;
  color: #fff;
  z-index: 99999;
  filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.5));
  display: none;
}
.item_pop .item_name {
  font-size: 20px;
  color: #fff;
  text-align: center;
  line-height: 25px;
}
.item_pop .item_att {
  font-size: 16px;
  color: #f6f46e;
  text-align: center;
  padding-bottom: 20px;
}
.item_pop .item_grade {
  font-size: 16px;
  color: #f79640;
  border-top: 1px solid #736e68;
  padding: 20px 0 20px 0;
}
.item_pop .item_whouse {
  font-size: 16px;
  color: #f1ff36;
  border-top: 1px solid #736e68;
  padding: 20px 0 20px 0;
}
.item_pop .item_detail {
  font-size: 16px;
  color: #fff;
  border-top: 1px solid #736e68;
  padding: 20px 0 20px 0;
}
.item_pop .item_sell {
  font-size: 16px;
  color: #da9669;
  border-top: 1px solid #736e68;
  padding: 20px 0 20px 0;
  text-align: right;
}
.item_pop .item_etc {
  font-size: 14px;
  color: #f79640;
  border-top: 1px solid #736e68;
}
.item_pop .red {
  color: #c92e53 !important;
}
.item_pop .rose {
  color: #c11c2c !important;
}
.item_pop .sky {
  color: #acf3eb !important;
}
.item_pop .blue {
  color: #4c7bc3 !important;
}
.item_pop .pur {
  color: #b493ea !important;
}
.item_pop .orange {
  color: #da9669 !important;
}
.item_pop .lemon {
  color: #f1ff36 !important;
}
.item_pop .green {
  color: #93c64f !important;
}
.item_pop .gray {
  color: #a0a0a2 !important;
}

@keyframes chainsDropBounce {
  0% {
    /* 起始：上方 1000px 且透明 */
    transform: translateX(-50%) translateY(-1000px);
    opacity: 0;
  }
  60% {
    /* 落位并完全不透明 */
    transform: translateX(-50%) translateY(0px);
    opacity: 1;
  }
  75% {
    /* 下落略微过头 */
    transform: translateX(-50%) translateY(15px);
  }
  90% {
    /* 回弹略微上移 */
    transform: translateX(-50%) translateY(-5px);
  }
  100% {
    /* 最终停住 */
    transform: translateX(-50%) translateY(0px);
    opacity: 1;
  }
}

.btn_gotcha {
  position: absolute;
  top: 1335px;
  left: 45%;
  transform: translateX(-50%);
  z-index: 9999;
}
.btn_caution {
  position: absolute;
  top: 879px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  font-size: 15px;
  color: #debd8b;
  font-weight: 700;
}
.btn_log {
  position: absolute;
  top: 811px;
  left: 46.5%;
  transform: translateX(-50%);
  z-index: 9999;
}
.bg_ticket {
  position: absolute;
  top: 780px;
  left: 885px;
  width: 330px;
  height: 132px;
  background-repeat: no-repeat;
}
.bg_ticket .cnt {
  color: #debd8b;
  font-size: 40px;
  font-weight: 700;
  text-align: center;
  position: relative;
  top: 60px;
  left: 50%;
  transform: translateX(-50%);
}
.bg_night {
  position: absolute;
  top: 780px;
  right: 885px;
  width: 330px;
  height: 132px;
  background-repeat: no-repeat;
}
.bg_night .cnt {
  color: #debd8b;
  font-size: 40px;
  font-weight: 700;
  text-align: center;
  position: relative;
  top: 60px;
  left: 50%;
  transform: translateX(-50%);
}
.btn_caution a:hover {
  text-decoration: underline;
}
.btn_preview {
  position: absolute;
  top: 920px;
  left: 760px;
}
.btn_exchange {
  position: absolute;
  top: 920px;
  right: 760px;
}
.btn_confirm {
  position: absolute;
  top: 316px;
}
.btn_confirm_10 {
  position: absolute;
  top: 548px;
  left: 39.6%;
  transform: translateX(-39.6%);
}
.bg_coin {
  position: absolute;
  top: 262px;
  width: 167px;
  height: 45px;
  background-repeat: no-repeat;
  text-align: center;
  color: #fee4af;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bg_coin_10 {
  position: absolute;
  top: 495px;
  width: 167px;
  height: 45px;
  background-repeat: no-repeat;
  text-align: center;
  color: #fee4af;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 50%;
  transform: translateX(-50%);
}

.pt_c {
  color: #debd8b;
}
.pt_w {
  color: #fff;
}
.pr_tips {
  position: absolute;
  left: 520px;
  bottom: 240px;
  width: 650px;
  height: 42px;
  z-index: 10000;
  cursor: pointer;
}

.whouse_pr {
  position: absolute;
  top: 1600px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
}
.whouse_pr a {
  background: #a10d2a;
  color: #debd8b;
  font-weight: 700;
  padding: 10px 25px;
  border: 2px solid #debd8b;
  border-radius: 30px;
}
.whouse_pr a:hover {
  text-decoration: underline;
  background: #bb1132;
}
/* 父容器：保持原有样式 */
.main_bg1 {
  width: 1920px;
  height: 1663px;
  margin: 0 auto;
  position: relative;
  background-image: url(https://static.web.sdo.com//dn/pic/dn_26act/0812event/bg_main_1.jpg);
  background-repeat: no-repeat;
  z-index: 1;
  position: relative;
  z-index: 1;
}
.event-date {
  position: absolute;
  top: 533px;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 25px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
/* 机台心形铭牌：登录抽取盲盒 */
.btn-login-draw {
  position: absolute;
  top: 1565px;
  left: 1575px;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 196px;
  height: 36px;
  margin: 0;
  padding: 0 14px;
  transform: translate(-50%, -50%);
  color: #f9e4bf;
  background: rgb(24 12 48 / 78%);
  border-radius: 20px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 1px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
.btn-login-draw:hover {
  color: #fff;
}
.login-info {
  position: absolute;
  top: 1620px;
  left: 1575px;
  z-index: 10;
  transform: translateX(-50%);
  color: #f9e4bf;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  white-space: nowrap;
}
.login-info a {
  margin-left: 6px;
  color: #fff;
  text-decoration: none;
}
.login-info a:hover {
  text-decoration: underline;
}
.main_bg2 {
  width: 1920px;
  height: 896px;
  margin: 0 auto;
  position: relative;
  overflow: hidden; /* 防止内容溢出父容器 */
  background-image: url(https://static.web.sdo.com//dn/pic/dn_26act/0812event/bg_main_2.jpg);
  background-repeat: no-repeat;
  z-index: 1;
  position: relative;
  z-index: 1;
}

.caution_box {
  width: 1920px;
  height: 440px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  background-image: url(https://static.web.sdo.com//dn/pic/dn_26act/0812event/bg_caution_box.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  z-index: 1;
}

/* 格子右侧信息区 */
.box-side-panel {
  position: absolute;
  top: 890px;
  left: calc(50% + 446px);
  width: 340px;
  text-align: center;
}
.cnt_container {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  height: 134px;
  padding: 40px 18px 0;
}
.doll_ticket,
.acc_count {
  width: 150px;
  text-align: center;
}
.doll_ticket {
  color: #242081;
}
.acc_count {
  color: #27245a;
}
.side-label {
  display: block;
  font-size: 18px;
  font-weight: 700;
  line-height: 25px;
}
.doll_ticket strong,
.acc_count strong {
  display: block;
  margin-top: 2px;
  font-size: 40px;
  font-weight: 700;
  line-height: 48px;
}
.doll_ticket strong {
  color: #3224ae;
}
.acc_count strong {
  color: #27245a;
}
.link_container {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 26px;
}
.link_container a {
  color: #f9e4bf;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
}
.link_container a:hover {
  text-decoration: underline;
}
.event_caution {
  width: auto;
  text-align: center;
}
.box-instructions {
  margin-top: 25px;
  color: #f5d59c;
  font-size: 18px;
  text-align: left;
}
.box-instructions-title {
  color: #ffffff;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}
.box-instructions ul {
  margin: 6px 0 0 20px;
  padding: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 27px;
  list-style: none;
}
.box-instructions li::before {
  content: '•';
  margin-right: 10px;
}
.preview_items {
  margin: 13px auto 0;
  width: 195px;
}
.preview_items a {
  display: block;
  box-sizing: border-box;
  width: 195px;
  height: 33px;
  padding: 0;
  color: #f9e4bf;
  background: #211136;
  border-radius: 50px;
  font-size: 20px;
  font-weight: 700;
  line-height: 33px;
  text-align: center;
}

/* 人偶格子 5x5 */
.box_container {
  position: absolute;
  top: 894px;
  margin-left: 50%;
  transform: translateX(-50%);
}
.grid-5x5 {
  display: grid;
  grid-template-columns: repeat(5, 154px);
  column-gap: 2px;
  row-gap: 9px;
  width: fit-content; /* 左右无外边距 */
}

.grid-item {
  width: 154px;
  height: 157px;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  cursor: pointer;
  transform: translateY(0);
  transition: transform 0.25s ease;
}

.grid-item:hover {
  transform: translateY(-3px);
}

/* 图片亮度效果 */
.grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: brightness(1);
  transition: filter 0.25s ease;
}

.grid-item:hover img {
  filter: brightness(1.2);
  top: -2px;
}

.overlay_icon img {
  display: block;
  margin: 0 auto;
  width: 47px;
  height: 47px;
  object-fit: contain;
}

.overlay_name {
  font-size: 11px; /* 按格子尺寸缩小 */
  font-weight: 300;
  color: #ffe7be;
  text-align: center;
  word-break: keep-all;
  margin-top: 4px;
}

/* PICK 遮罩层 */
.pick-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}

.grid-item:hover .pick-overlay {
  opacity: 1;
}

/* 开启徽章（圆角胶囊） */
.pick-badge {
  background: #3e38ac;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  padding: 6px 14px;
  border-radius: 999px;
  letter-spacing: 0.04em;
}

.reward_nor_container {
  position: absolute;
  top: 224px;
  left: 50%;
  transform: translateX(-50%);
}

.grid_5x5_nor {
  display: grid;
  grid-template-columns: repeat(5, 154px);
  gap: 16px;
}
.reward_vip_container {
  position: absolute;
  top: 530px;
  left: 50%;
  transform: translateX(-50%);
}

.grid_5x5_vip {
  display: grid;
  grid-template-columns: repeat(5, 154px);
  gap: 16px;
}
.reward-card {
  position: relative;
  box-sizing: border-box;
  width: 154px;
  height: 158px;
  padding-top: 15px;
  text-align: center;
}
.reward-card-purple {
  background: url('https://static.web.sdo.com//dn/pic/dn_26act/0812event/p2-card1.png') no-repeat center / 100% 100%;
}
.reward-card-gold {
  background: url('https://static.web.sdo.com//dn/pic/dn_26act/0812event/p2-card2.png') no-repeat center / 100% 100%;
}
.reward-condition {
  color: #fff4ce;
  font-size: 18px;
  font-weight: 700;
}
.reward-card-gold .reward-condition {
  color: #311d12;
}
.reward-icon {
  display: block;
  width: 48px;
  height: 48px;
  margin: 10px auto 8px;
  object-fit: contain;
  border: 0;
}
.reward-name {
  min-height: 40px;
  color: #fff7dc;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
}
.reward-card-gold .reward-name {
  color: #241b17;
}
a.item_nor,
a.item_vip {
  display: block;
  box-sizing: border-box;
  width: 100px;
  height: 35px;
  margin: 30px auto 0;
  color: #5b3500;
  background: url('https://static.web.sdo.com//dn/pic/dn_26act/0812event/p2-btn.png') no-repeat center / 100% 100%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  text-indent: 6px;
  line-height: 35px;
}
a.item_nor:hover,
a.item_vip:hover {
  filter: brightness(1.12);
}
a.item_nor.disabled,
a.item_vip.disabled {
  filter: grayscale(0.35);
  opacity: 0.72;
  cursor: default;
  pointer-events: none;
}
.login-reward-tip {
  margin-top: 75px;
  color: #ecc586;
  font-size: 18px;
  text-align: center;
  font-weight: bold;
}

/* 不再显示 VIP 遮罩 */
.vip_cover {
  display: none !important;
}

/* 左侧快捷菜单 */
.left_m {
  position: fixed;
  left: 0;
  top: 137px;
  width: 200px;
  height: 360px;
  background-repeat: no-repeat;
  z-index: 10;
}
.left_m_overaly {
  position: absolute;
  width: 100%;
  height: 120px;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: auto;
}
.overlay1 {
  top: 0px;
  height: 120px;
}

.overlay2 {
  top: 120px;
  height: 120px;

  background-position: 0px -120px;
}

.overlay3 {
  top: 240px;
  height: 120px;

  background-position: 0px -240px;
}

.left_m_overaly:hover {
  opacity: 1;
}

.selected {
  opacity: 1 !important;
}

/* 替换原有 .bright 相关效果 */
.bright {
  display: inline-block;
  transition:
    transform 0.1s ease,
    filter 0.1s ease; /* 加快响应速度 */
  cursor: pointer;
  vertical-align: middle;
  /* 重要：清掉可能存在的横向位移 */
  transform: translateX(0);
}

.bright:hover {
  filter: brightness(1.1);
}

.bright:active {
  /* 去掉 translateX，只保留按下的 translateY */
  transform: translateY(3px) scale(0.95) !important;
  filter: brightness(0.9);
}

/* 固定 btn_set 内按钮，防止撑开 */
.btn_set {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  margin: 19px auto 0;
  width: fit-content; /* 宽度随内容自适应 */
}

.btn-confirm,
.btn_reward {
  flex: 0 0 auto;
}

/* 回到顶部 */
.totheTop {
  position: fixed;
  bottom: 40px;
  right: 40px;
  width: 116px;
  height: 116px;
  background: #5b3a9e;
  border-radius: 50%;
  cursor: pointer;
  display: none; /* 默认隐藏 */
  opacity: 0;
  transition: opacity 0.3s ease;
  align-items: center;
  justify-content: center;
  z-index: 999;
}
.totheTop::after {
  content: '返回顶部';
  color: #f9e4bf;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
  line-height: 1.2;
}
.totheTop.show {
  display: flex;
  opacity: 1;
}

/* 弹窗相关 */
/* 日志 */
.logs {
  width: 400px;
  height: 52px;
  cursor: pointer;
  position: absolute;
  right: 634px;
  top: 1205px;
}
.logdata {
  display: none;
  position: absolute;
  width: 400px;
  height: 253px;
  background-color: #e9dfd2;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  top: 1118px; /* 按需调整位置 */
  right: 880px; /* 按需调整位置 */
  border-radius: 10px;
  z-index: 9999;
}

.logdata-content {
  position: relative;
  padding: 25px;
  h3 {
    color: #3f2b18;
    font-size: 20px;
    letter-spacing: 0px;
    font-weight: 700;
    text-align: left;
  }
  ul {
    text-align: left;
    border: 0px solid red;
    margin: 13px 0 0 0;
    padding: 0;
  }
  li {
    color: #583c21;
    font-size: 13px;
    text-aling: left;
    padding-bottom: 10px;
    letter-spacing: -0.05ch;
  }
}

.logdata-content .loglist {
  width: 360px;
  height: 143px;
  overflow-y: auto;
}
.loglist::-webkit-scrollbar {
  width: 5px;
}
.loglist::-webkit-scrollbar-track {
  background: transparent; /* 滚动轨道透明 */
}
.loglist::-webkit-scrollbar-thumb {
  background: #583c21; /* 滚动条颜色 */
  border-radius: 3px; /* 圆角 */
}

.close-btn {
  margin: 10px 0 10px 0;
  width: 100%;
  height: 40px;
  font-size: 14px;
  background-color: #e0ccb2;
  color: #3f2b18;
  line-height: 40px;
  border-radius: 20px;
  cursor: pointer;
  text-align: center;
}
.close-btn:hover {
  width: 100%;
  height: 40px;
  background-color: #3f2b18;
  color: #e0ccb2;
  line-height: 40px;
  border-radius: 20px;
}

/* 活动注意事项 */
.btn_caution_event {
  width: 272px;
  height: 52px;
  cursor: pointer;
  position: absolute;
  right: 354px;
  top: 1005px;
}
.btn_caution_flag {
  width: 139px;
  height: 29px;
  cursor: pointer;
  position: absolute;
  top: 2070px;
  left: 46.5%;
}

.cautions {
  box-sizing: border-box;
  width: 894px;
  height: 350px;
  margin: 0 auto;
  padding: 32px 44px;
  background: rgb(37 14 67 / 80%);
  border-radius: 20px;
}
.cautions_title {
  text-align: center;
}
.cautions_title img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.cautions_list {
  margin-top: 22px;
}
.cautions_list li {
  color: #e5d3fc;
  font-size: 18px;
  line-height: 2;
  list-style: none;
}

/* 累计金额 */
.acc_cash {
  position: absolute;
  top: 270px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 35px;
  color: #f0dcbd;
  font-weight: 700;
  background: #531b14;
  border-radius: 100px;
  padding: 15px 55px;
}

/* 颜色 */
.c_r {
  color: #e83c00;
}
.c_g {
  color: #be7300;
}

/* 弹窗 */
/* 全屏半透明遮罩 */
.modal-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw; /* 视口宽度 */
  height: 100vh; /* 视口高度 */
  background-color: rgba(0, 0, 0, 0.8); /* 更明显的压暗效果 */
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease;
  z-index: 99999 !important; /* 置于最顶层 */
  pointer-events: none;
}

.modal-background1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(62, 107, 125, 0.5); /* 半透明 */
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease; /* 过渡效果 */
  pointer-events: none; /* 禁止点击穿透 */
  z-index: 1200;
}

.caution_window {
  background-color: #e0ccb2;
  padding: 40px 35px 40px 35px;
  border-radius: 10px;
  text-align: left;
  width: 730px;
  color: #f1e8d5;
}
.caution_window h3 {
  color: #3f2b18;
  font-size: 30px;
  letter-spacing: -1px;
  font-weight: 700;
  margin-bottom: 15px;
}
.caution_window ul {
  margin: 0;
  padding: 0;
}
.caution_window li {
  font-size: 14px;
  line-height: 25px;
  color: #635241;
}

/* 商店兑换 */
.item_trade {
  width: 1054px;
  height: 659px;
  margin: 0 auto;
  margin-bottom: 20px;
  display: flex;
  column-gap: 30px;
  row-gap: 25px;
  justify-content: space-between;
  flex-flow: row wrap;
  align-content: flex-start;
  background-repeat: no-repeat;
}
.product_card {
  display: flex;
  flex-direction: column;
  width: 150px;
}
.item_trade_list {
  width: 150px;
  height: 148px;
  z-index: 9999;
  cursor: help;
}
.btn_item_trade {
  width: 150px;
  height: 55px;
}

/* 累计表格样式 */
/* --- 表格样式整理 --- */
.acc_table_wrap {
  position: absolute;
  top: 370px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%; /* 与表格同宽 */
  z-index: 100;
  display: flex;
  justify-content: center; /* 水平居中 */
  pointer-events: none; /* 容器不拦截按钮点击 */
  z-index: 100;
}

.reward-table {
  pointer-events: auto; /* 表格与按钮可点击 */
  table-layout: fixed;
  width: 900px;
  border-collapse: separate;
  border-spacing: 0;
  background-color: #5d2a23;
  color: #fee4af;
  border: 2px solid #8d624a;
  border-radius: 10px;
  overflow: hidden;
  font-size: 16px;
  text-align: center;
  z-index: 10;
}

/* 去掉冲突的 width，用此数值固定 */
.col-cash {
  width: 160px;
  font-weight: 700;
  color: #debd8b;
  border-right: 1px solid #8d624a;
  font-size: 16px;
}
.col-item {
  width: 460px;
  text-align: left;
  color: #fff;
  padding-left: 20px;
  border-right: 1px solid #8d624a;
  font-size: 16px;
}
.col-count {
  width: 100px;
  color: #fff;
  border-right: 1px solid #8d624a;
  font-size: 16px;
}
.col-btn {
  width: 180px;
  font-weight: 700;
  background-color: #d9c19d !important;
  color: #5d2a23 !important;
  font-size: 16px;
}

/* 1. 图文对齐：不要给 td 本身设 flex，对齐内部元素 */
.item_info_cell {
  display: flex; /* 横向排列 */
  align-items: center; /* 垂直居中 */
  gap: 0px; /* 图片与文字间距 */
  width: 460px; /* 替代 .col-item */
  text-align: left;
  color: #fff;
  padding-left: 20px;
  border-right: 1px solid #8d624a;
  font-size: 16px;
  vertical-align: middle; /* 重要：保持 td 本身特性 */
}

/* 让文字与图标同一行 */
.item_info_cell .icon {
  width: 38px;
  height: 38px;
  object-fit: contain;
  vertical-align: middle; /* 文字垂直居中对齐 */
  margin-right: 10px;
}

/* 2. 领取按钮：控制 padding 避免过高 */
.btn_receive_cell {
  background-color: #ddc094 !important;
  cursor: pointer;
  transition: background-color 0.2s ease;
  text-align: center;
  color: #340d2c !important;
  font-weight: bold;
  width: 180px; /* 沿用 .col-btn 宽度 */
}

/* 3. 恢复分隔线并固定 count_cell */
.col-count {
  width: 100px;
  color: #fff;
  border-right: 1px solid #8d624a !important; /* 强制恢复分隔线 */
  font-size: 16px;
  text-align: center;
}

/* 悬停：仅按钮区域变亮 */
.btn_receive_cell:hover {
  background-color: #ebdcc5 !important;
  filter: brightness(1.1);
}

/* [补充] 提示图标样式（防错位） */
.item_info_cell img[data-tooltip-id] {
  margin-left: 5px;
  vertical-align: middle;
  cursor: help;
}

/* 已领取时禁用点击 */
.btn_receive_cell.disabled {
  filter: grayscale(1); /* 灰度处理 */
  cursor: default;
}

/* 按区块背景色（作用于 tbody） */
.reward-section:nth-child(odd) tr {
  background-color: #6a312a;
}
.reward-section:nth-child(even) tr {
  background-color: #5d2a23;
}

/* 悬停：整块区域响应 */
.reward-section:hover tr {
  background-color: #7a3d35 !important;
}
.reward-section:hover td.col-btn {
  background-color: #d9c19d !important;
} /* 按钮列颜色固定 */

.reward-table td {
  padding: 14px 10px;
  border-bottom: 1px solid #8d624a; /* 竖线在列样式，横线在此 */
  vertical-align: middle;
}

/* 去掉末行底边框（圆角更干净） */
.reward-section:last-child tr:last-child td {
  border-bottom: none;
}

/* 快捷链接 */
.dn-quicklink {
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  width: 130px;
  border-radius: 0 10px 10px 0;
  overflow: hidden;
  border: 1px solid rgba(255, 200, 80, 0.25);
  border-left: none;
  box-shadow: 3px 3px 12px rgba(0, 0, 0, 0.4);
}

.dn-quicklink__header {
  background: #2a1a0e;
  padding: 12px 12px;
  border-bottom: 1px solid rgba(255, 200, 100, 0.2);
  font-size: 12px;
  letter-spacing: 0.08em;
  color: #c8a060;
  font-weight: bold;
  text-transform: uppercase;
}

.dn-quicklink__item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 13px;
  background: #1e1208;
  color: #e8c87a;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 200, 80, 0.1);
  transition:
    background 0.15s,
    padding-left 0.15s;
}

.dn-quicklink__item:last-child {
  border-bottom: none;
}

.dn-quicklink__item:hover {
  background: #2e1e0e;
  padding-left: 17px;
  color: #ffd98a;
}

.dn-quicklink__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #c8a060;
  flex-shrink: 0;
}
