/* =====================================================
   request.html – isolated layout & card surface
   ===================================================== */

.page-requests {
  background: #f6f7fb; /* subtle contrast so card is visible */
}

/* Header */
.page-requests .request-header {
  max-width: 720px;
  margin: 0 auto 24px;
  text-align: center;
}

/* Vertical surface */
.page-requests .request-surface {
  padding: 48px 0 80px;
}

/* Card */
.page-requests .form-card {
  max-width: 720px;
  margin: 0 auto;
  padding: 32px;

  background: #ffffff;
  border-radius: 16px;

  box-shadow:
    0 10px 25px rgba(0, 0, 0, 0.08);
}

/* Ensure form layout is not affected by parent */
.page-requests .form-card .fh-form {
  margin: 0;
}

/* Center submit button */
.page-requests #buyer-submit {
  display: inline-flex;
  margin: 24px auto 0;
  width: 100%;
}

/* Ensure container allows centering */
.page-requests .fh-form {
  display: flex;
  flex-direction: column;
}
/* File upload error state */
.page-requests #file-upload-section.invalid .upload-box {
  border: 2px solid #d93025;          /* same red as other errors */
  border-radius: 8px;
}

.page-requests #file-upload-section.invalid .drop-target {
  background: rgba(217, 48, 37, 0.04);
}

.request-header { padding-top: 60px; }
@media (max-width: 640px) {
    .request-header { padding-top: 40px; }
    .page-requests .request-surface {
        padding: 10px 0 80px;
    }
}