/* ==========================================================================
   乾坤堂 · 全系通用万年历月历组件样式规范 (qkt_month_calendar.css)
   风格：故宫典仪红 / 沉香墨黑 / 宣纸暖白 / 泥金点缀
   适配：支持嵌入容器与全屏弹窗择日，内置 1900 年前 VIP 宗门考原锁死蒙版
   ========================================================================== */

.qkt-month-calendar {
  position: relative;
  background: #1C1B1F;
  border: 1px solid #3D352E;
  border-radius: 12px;
  padding: 12px;
  color: #EDE6D8;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Serif SC", serif;
  user-select: none;
  overflow: hidden;
}

/* 头部年月导航 */
.qkt-cal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  padding: 0 4px;
}

.qkt-cal-title {
  font-size: 16px;
  font-weight: bold;
  color: #E6C36E;
  letter-spacing: 1px;
}

.qkt-vip-tag {
  font-size: 11px;
  background: rgba(158, 26, 26, 0.3);
  border: 1px solid #FFA39E;
  color: #FFA39E;
  padding: 1px 6px;
  border-radius: 10px;
  margin-left: 4px;
  font-weight: normal;
}

.qkt-cal-nav-btn {
  background: #26242B;
  border: 1px solid #3D352E;
  color: #C8C2B7;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  transition: all 0.2s;
}

.qkt-cal-nav-btn:active {
  background: #9E1A1A;
  color: #FFF;
  border-color: #E6C36E;
}

/* 星期表头 */
.qkt-cal-week-row {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  text-align: center;
  padding: 6px 0;
  border-bottom: 1px solid rgba(61, 53, 46, 0.6);
  margin-bottom: 6px;
}

.qkt-cal-week-cell {
  font-size: 12px;
  color: #C8C2B7;
  font-weight: 500;
}

.qkt-cal-week-cell.weekend {
  color: #FFA39E;
}

/* 日期单元格网格 */
.qkt-cal-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 4px;
}

.qkt-cal-cell {
  background: #26242B;
  border: 1px solid rgba(61, 53, 46, 0.4);
  border-radius: 6px;
  min-height: 52px;
  padding: 4px 2px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.15s;
  position: relative;
}

.qkt-cal-cell:hover, .qkt-cal-cell:active {
  border-color: #E6C36E;
  background: rgba(212, 175, 55, 0.12);
}

.qkt-cal-cell.prev, .qkt-cal-cell.next {
  opacity: 0.35;
}

.qkt-cal-cell.today {
  border: 1.5px solid #E6C36E;
  box-shadow: 0 0 8px rgba(230, 195, 110, 0.3);
}

.qkt-solar-num {
  font-size: 15px;
  font-weight: bold;
  color: #F5F0E6;
  line-height: 1.1;
}

.qkt-sub-label {
  font-size: 11px;
  margin-top: 2px;
  line-height: 1.1;
  text-align: center;
}

.qkt-sub-label.lunar-text {
  color: #C8C2B7;
}

.qkt-sub-label.term-text {
  color: #73D13D;
  font-weight: bold;
}

.qkt-sub-label.fest-text {
  color: #FFA39E;
  font-weight: bold;
}

.qkt-gz-badge {
  font-size: 11px;
  color: #E6C36E;
  background: rgba(230, 195, 110, 0.12);
  padding: 0 3px;
  border-radius: 3px;
  margin-top: 2px;
  letter-spacing: 0.5px;
}

/* 1900 年前 VIP 考原锁死蒙版 */
.qkt-cal-lock-overlay {
  position: absolute;
  top: 48px;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(18, 18, 20, 0.94);
  backdrop-filter: blur(6px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  z-index: 50;
  border-radius: 0 0 12px 12px;
}

.qkt-lock-box {
  background: linear-gradient(180deg, #2A1818 0%, #1A1215 100%);
  border: 1.5px solid #9E1A1A;
  border-radius: 12px;
  padding: 24px 20px;
  text-align: center;
  max-width: 320px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.8), 0 0 16px rgba(158, 26, 26, 0.4);
}

.qkt-lock-icon {
  font-size: 36px;
  margin-bottom: 8px;
}

.qkt-lock-title {
  font-size: 15px;
  font-weight: bold;
  color: #FFA39E;
  margin-bottom: 8px;
  letter-spacing: 1px;
}

.qkt-lock-desc {
  font-size: 12px;
  color: #C8C2B7;
  line-height: 1.6;
  margin-bottom: 16px;
}

.qkt-lock-btn {
  background: linear-gradient(135deg, #9E1A1A 0%, #B82525 100%);
  border: 1px solid #E6C36E;
  color: #FFF;
  font-size: 13px;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 20px;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(158, 26, 26, 0.5);
  transition: all 0.2s;
}

.qkt-lock-btn:active {
  transform: scale(0.96);
}

/* 全屏弹窗式月历 */
.qkt-cal-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(8px);
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.qkt-cal-modal-content {
  background: #1C1B1F;
  border: 1px solid #3D352E;
  border-radius: 14px;
  width: 100%;
  max-width: 440px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.8);
  overflow: hidden;
}

.qkt-cal-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: linear-gradient(180deg, #26242B 0%, #1C1B1F 100%);
  border-bottom: 1px solid #3D352E;
  font-size: 15px;
  font-weight: bold;
  color: #E6C36E;
}

.qkt-cal-modal-close {
  background: none;
  border: none;
  color: #C8C2B7;
  font-size: 18px;
  cursor: pointer;
  padding: 0 4px;
}
