/* 面包屑导航（与列表页、详情页保持一致） */
.breadcrumb {
  padding: 15px 0;
  font-size: 14px;
  color: #666;
  border-bottom: 1px solid #eee;
}
.breadcrumb a { color: #666; text-decoration: none; }
.breadcrumb a:hover { color: #1a73e8; }

/* 查询页面主体 - 修正高度，消除垂直滚动条并完美居中 */
.search-container {
  padding-top: 20px;
  /* 减掉 330px 后，正好能抵消头部和页脚的实际高度，刚好占满100vh */
  /*min-height: calc(100vh - 430px);*/
  display: flex;
  flex-direction: column;
}

/* 核心白色表单区域 - 利用 flex 自动垂直居中 */
.search-form-box {
  background: #ffffff;
  padding: 20px 0 40px 0;
  text-align: center;
  /* 直接使用 margin: auto，在整个剩余屏幕空间里完美垂直且水平居中 */
  margin: auto; 
}

/* 单行输入布局 */
.form-row {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 25px;
}
.form-label {
  width: 130px;
  text-align: right;
  font-size: 16px;
  font-weight: bold;
  color: #333;
  margin-right: 15px;
}
.form-label .required {
  color: #ff4d4f; /* 红色星号 */
  margin-right: 4px;
}
.form-input-wrap {
  width: 400px; /* 输入框固定宽度 */
}
.input-box {
  width: 100%;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  font-size: 14px;
  outline: none;
  transition: border-color 0.3s;
}
.input-box:focus {
  border-color: #1a73e8;
  box-shadow: 0 0 0 2px rgba(26, 115, 232, 0.1);
}
.input-box::placeholder { color: #bfbfbf; }

/* 提交、重置按钮 */
.form-actions {
  display: flex;
  justify-content: center;
  gap: 40px; /* 两个按钮的间距 */
  margin-top: 45px;
}
.btn-submit, .btn-reset {
  width: 120px;
  height: 44px;
  border: none;
  border-radius: 22px; /* 胶囊形状 */
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  cursor: pointer;
  transition: opacity 0.3s;
}
.btn-submit { background-color: #ff6b00; }
.btn-submit:hover { opacity: 0.85; }
.btn-reset { background-color: #a0a0a0; }
.btn-reset:hover { opacity: 0.85; }

/* ============ 移动端适配 ============ */
@media (max-width: 768px) {
  /* 手机屏幕不限制高度，使用原生流式布局 */
  .search-container {
    min-height: auto;
    display: block;
  }
  .search-form-box { margin: 0; }

  .form-row {
    flex-direction: column;
    align-items: flex-start;
    padding: 0 20px;
  }
  .form-label {
    width: 100%;
    text-align: left;
    margin-bottom: 5px;
    font-size: 15px;
  }
  .form-input-wrap { width: 100%; }
  .form-actions { gap: 20px; }
  .btn-submit, .btn-reset { width: 100px; height: 40px; font-size: 16px; border-radius: 20px; }
}