/* 查詢頁與結果頁共用容器 */
.check-wrapper,
.check-result-wrapper {
  max-width: 800px;
  margin: 40px auto 80px auto;
  padding: 0 5%;
  text-align: center;
  color: #433026;
}

.check-title {
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 5px;
}

.check-subtitle {
  font-size: 14px;
  color: #666;
  margin-bottom: 30px;
}

/* 查詢表單 */
.check-form {
  max-width: 400px;
  margin: 0 auto;
  text-align: left;
}
.check-form .form-group {
  margin-bottom: 20px;
}
.check-form label {
  display: block;
  font-weight: bold;
  margin-bottom: 8px;
}
.check-form input {
  width: 100%;
  padding: 12px;
  border: 2px solid #f9b20f;
  border-radius: 5px;
}
.btn-submit-check {
  width: 100%;
  background: #f29c1f;
  color: #fff;
  padding: 14px;
  border: none;
  border-radius: 30px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  margin-top: 10px;
}

/* 結果頁：用戶資訊與抽獎次數 */
.user-info p {
  font-size: 24px;
  margin-bottom: 5px;
  font-weight: bold;
}
.chances-display {
  font-size: 26px;
  font-weight: bold;
  color: #e9af3b;
  margin: 30px 0;
}
.chances-num {
  font-size: 50px;
}

/* 表格區域 */
.table-section {
  margin-bottom: 40px;
  text-align: left;
}
.table-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}
.table-responsive {
  width: 100%;
  overflow-x: auto;
} /* 手機橫向滾動防走樣 */

table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
  font-size: 14px;
  min-width: 600px;
}
th,
td {
  padding: 12px;
  border: 1px solid #ddd;
  vertical-align: middle;
}

/* 成功登記表格 (黃色 Header) */
.table-approved th {
  background-color: #fcf8d4;
}
/* 無效登記表格 (灰色 Header) */
.table-rejected th {
  background-color: #c4c4c4;
}
/* 未處理登記表格 (淺藍灰 Header) */
.table-pending th {
  background-color: #e6eef5;
}

/* $90 額外機會徽章 */
.badge-extra {
  display: inline-block;
  background-color: #f29c1f;
  color: #fff;
  font-size: 11px;
  padding: 4px 8px;
  border-radius: 4px;
  margin-top: 5px;
  line-height: 1.4;
}

/* 暫無紀錄狀態 */
.empty-state-box {
  border: 1px solid #e9af3b;
}
.empty-state-box th {
  background-color: #fff;
}
.empty-content {
  padding: 60px 0;
  text-align: center;
}
.empty-icon {
  width: 80px;
  opacity: 0.5;
  margin-bottom: 5px;
}

/* 手機版調整 */
@media screen and (max-width: 768px) {
  table {
    font-size: 12px;
    min-width: 500px;
  }
  th,
  td {
    padding: 8px;
  }
  .chances-num {
    font-size: 42px;
  }
  .check-title {
    font-size: 26px;
  }
  .user-info p {
    font-size: 20px;
  }
}
