.webform-component {
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 1rem 1.25rem;
  box-sizing: border-box;
}

/* Felülírjuk a téma gap-8 (32px) flex elrendezését szűk 8px-re */
.webform-component .webform-submission-form,
.webform-component .fieldset-wrapper,
.webform-component form,
.webform-component *[id^="edit-page-"] {
  gap: 0.5rem !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Bevezető szöveg szuper tömör */
.webform-component .webform-element--markup,
.webform-component [data-drupal-selector="edit-markup"] {
  margin-top: 0 !important;
  margin-bottom: 0.125rem !important;
}

.webform-component .webform-element--markup p,
.webform-component [data-drupal-selector="edit-markup"] p {
  margin: 0 !important;
  font-size: 0.875rem !important;
  line-height: 1.3 !important;
  color: #475569 !important;
}

.webform-component .webform-element--markup p strong,
.webform-component [data-drupal-selector="edit-markup"] p strong {
  color: #0f172a !important;
}

/* Mezők külső térköze */
.webform-component .form-item {
  margin: 0 !important;
  padding: 0 !important;
}

/* Labelek: diszkrét, kompakt, nincs aktív státusz */
.webform-component .form-item label,
.webform-component .form-item:focus-within > label,
.webform-component .fieldgroup:focus-within > label {
  color: #334155 !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  margin-bottom: 0.15rem !important;
  line-height: 1.2 !important;
  display: block !important;
}

/* Mezők: vékony keret, fehér háttér, feszes belső méret */
.webform-component input[type="text"],
.webform-component input[type="email"],
.webform-component input[type="tel"],
.webform-component textarea {
  width: 100% !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 4px !important;
  background-color: #ffffff !important;
  padding: 0.35rem 0.55rem !important;
  font-size: 0.875rem !important;
  line-height: 1.35 !important;
  color: #0f172a !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  transition: border-color 0.15s ease !important;
}

.webform-component input[type="text"]:focus,
.webform-component input[type="email"]:focus,
.webform-component input[type="tel"]:focus,
.webform-component textarea:focus {
  border-color: #64748b !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 1px #64748b !important;
  outline: none !important;
}

.webform-component textarea {
  min-height: 55px !important;
  height: 60px !important;
  resize: vertical !important;
}

/* GDPR hozzájárulás checkbox tömörítése */
.webform-component .webform-type-checkbox.form-item {
  margin-top: 0.125rem !important;
  margin-bottom: 0.125rem !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.375rem !important;
}

.webform-component .webform-type-checkbox.form-item label {
  margin-bottom: 0 !important;
  font-size: 0.775rem !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: #64748b !important;
}

/* Captcha és beküldő gomb */
.webform-component .captcha,
.webform-component fieldset.captcha {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  border: none !important;
  padding: 0 !important;
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
  overflow: visible !important;
}

.webform-component legend.captcha__title {
  color: #334155 !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  margin-bottom: 0.25rem !important;
  padding: 0 !important;
  display: block !important;
}

.webform-component .captcha__element {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}

/* Friendly Captcha teljes szélesség és görgetősáv megszüntetése */
.webform-component .frc-captcha,
.webform-component .frc-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}

.webform-component .frc-container {
  border-radius: 6px !important;
  border-color: #cbd5e1 !important;
}

.webform-component .frc-content {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

.webform-component .frc-text,
.webform-component .frc-desc {
  white-space: normal !important;
  word-break: break-word !important;
}

.webform-component .captcha__description,
.webform-component .captcha .description {
  display: none !important;
}

.webform-component .form-actions {
  margin-top: 0.375rem !important;
  margin-bottom: 0 !important;
}

.webform-component .form-submit {
  padding: 0.4rem 1.1rem !important;
  font-size: 0.875rem !important;
  border-radius: 5px !important;
}

/* Visszaigazoló köszönő üzenet tömörítése és kisebb cím */
.webform-component .webform-confirmation,
.webform-component .webform-confirmation__message {
  padding: 0.5rem 0.25rem !important;
}

.webform-component .webform-confirmation__title,
.webform-component .webform-confirmation h2,
.webform-component .webform-confirmation h3 {
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin-top: 0 !important;
  margin-bottom: 0.35rem !important;
  line-height: 1.3 !important;
}

.webform-component .webform-confirmation__text,
.webform-component .webform-confirmation p {
  font-size: 0.875rem !important;
  color: #475569 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
}
