.experience-request-box { max-width: 920px; margin: 0 auto; }
.experience-request-box fieldset { margin: 32px 0; padding: 24px; border: 1px solid #ddd; border-radius: 6px; }
.experience-request-box legend { width: auto; margin: 0; padding: 0 8px; border: 0; color: #4c368e; font-size: 20px; }
.experience-request-box .form-control { min-height: 42px; }
.experience-request-box textarea.form-control { min-height: 100px; }
.request-honeypot { position: absolute; left: -9999px; }
.request-experience-list { display: grid; gap: 16px; margin-top: 20px; }
.request-experience-card { overflow: hidden; border: 1px solid #d8d8d8; border-radius: 8px; background: #fff; }
.request-experience-card.is-selected { border-color: #7955b7; box-shadow: 0 0 0 2px rgba(121, 85, 183, 0.12); }
.request-experience-card.has-error { border-color: #a94442; }
.request-experience-card-header { padding: 18px 20px; background: #f7f7f7; }
.request-experience-card.is-selected .request-experience-card-header { background: #f2edfa; }
.request-experience-card-header label { display: flex; gap: 12px; align-items: center; margin: 0; cursor: pointer; font-size: 18px; }
.request-experience-card-header input { width: 20px; height: 20px; margin: 0; }
.request-experience-details { padding: 22px 20px 8px; border-top: 1px solid #e2e2e2; }
.request-experience-details[hidden] { display: none; }
.request-item-participants h4 { margin: 8px 0 16px; color: #4c368e; }
.request-consent { padding: 18px 20px; background: #f7f7f7; border-radius: 6px; }
.request-actions { display: flex; gap: 12px; justify-content: center; align-items: center; flex-wrap: wrap; margin-top: 28px; }
.request-confirmation-item { margin: 28px 0; }
.request-confirmation-item h3 { padding-bottom: 8px; border-bottom: 2px solid #7955b7; color: #4c368e; font-size: 20px; }
.request-confirmation-table th { width: 28%; background: #f7f7f7; }
.request-contact-confirmation { margin-top: 32px; }
@media (max-width: 767px) {
  .experience-request-box fieldset { padding: 18px 14px; }
  .request-experience-card-header { padding: 16px; }
  .request-experience-details { padding: 18px 14px 6px; }
  .request-confirmation-table th, .request-confirmation-table td { display: block; width: 100%; }
}
