/* ============ 基础样式 ============ */
body {
  background: #f3efe7;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic",
               "Helvetica Neue", Arial, sans-serif;
  color: #2b2b2b;
  min-height: 100vh;
}

/* ============ 表单卡片 ============ */
.form-card {
  max-width: 820px;
  background: #fffefb;
  border: 1px solid #e3dcc8;
  border-radius: 6px;
  padding: 2.5rem 2rem;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  position: relative;
}

/* 和风装饰：四角菊纹（用渐变模拟，避免引入图片资源） */
.form-card::before,
.form-card::after {
  content: "";
  position: absolute;
  width: 90px;
  height: 90px;
  background: radial-gradient(circle, rgba(180, 150, 90, 0.08) 0%, transparent 60%);
  pointer-events: none;
}
.form-card::before { top: 0; left: 0; }
.form-card::after { bottom: 0; right: 0; }

/* ============ 标题 ============ */
.form-header {
  border-bottom: 1px solid #e3dcc8;
  padding-bottom: 1.25rem;
  margin-bottom: 1.5rem;
}
.form-title {
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.15em;
  margin-bottom: 0.25rem;
}
.form-subtitle {
  font-size: 0.95rem;
  color: #8a7e60;
  letter-spacing: 0.12em;
  margin: 0;
}
#roomLabel {
  display: inline-block;
  margin-left: 0.5rem;
  font-size: 1.5rem;
  color: #8a6f3a;
}

/* ============ 章节 ============ */
.form-section {
  margin-bottom: 1.75rem;
}
.section-title {
  font-size: 1.1rem;
  color: #6e5b30;
  border-left: 3px solid #b08e4a;
  padding-left: 0.6rem;
  margin-bottom: 1rem;
}

/* ============ 标签 ============ */
.form-label {
  font-size: 0.9rem;
  color: #4a4639;
  font-weight: 500;
}
.form-label .en {
  color: #9c8a5a;
  font-weight: 400;
  font-size: 0.85rem;
}

/* ============ 表单控件 ============ */
.form-control,
.input-group-text {
  border-color: #d8cfb4;
  background-color: #fffdf6;
}
.form-control:focus {
  border-color: #b08e4a;
  box-shadow: 0 0 0 0.2rem rgba(176, 142, 74, 0.15);
}
.input-group-text {
  color: #8a7e60;
  font-weight: 500;
}

/* ============ 宿泊者卡片 ============ */
.guest-card {
  border-color: #e3dcc8;
  background: #fffdf6;
}
.guest-card .card-header {
  background: #f7f1de;
  border-bottom: 1px solid #e3dcc8;
  color: #6e5b30;
  font-weight: 500;
}

/* ============ 按钮 ============ */
.btn-primary {
  background-color: #8a6f3a;
  border-color: #8a6f3a;
}
.btn-primary:hover,
.btn-primary:focus {
  background-color: #6e5b30;
  border-color: #6e5b30;
}
.btn-outline-primary {
  color: #8a6f3a;
  border-color: #8a6f3a;
}
.btn-outline-primary:hover {
  background-color: #8a6f3a;
  border-color: #8a6f3a;
}

/* ============ 蜜罐字段（视觉隐藏，但屏幕阅读器和爬虫可见） ============ */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
}

/* ============ 页脚品牌 ============ */
.form-footer {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e3dcc8;
}
.form-footer .brand {
  color: #8a7e60;
  letter-spacing: 0.2em;
  font-size: 1rem;
  margin: 0;
}
.form-footer .brand small {
  font-size: 0.7rem;
  letter-spacing: 0.15em;
}

/* ============ 提示信息 ============ */
#resultMsg {
  margin-top: 1.5rem;
}

/* ============ 移动端适配 ============ */
@media (max-width: 576px) {
  .form-card {
    padding: 1.5rem 1rem;
    border-radius: 0;
    margin: -1rem -12px;
  }
  .form-title {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
  }
  .form-subtitle {
    font-size: 0.85rem;
  }
  #roomLabel {
    font-size: 1.2rem;
  }
  .section-title {
    font-size: 1rem;
  }
  .guest-card .card-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 0.5rem;
  }
  .guest-card .card-header .remove-guest-btn {
    align-self: flex-end;
  }
}
