/* ============================
   BLOCK WRAPPER
   ============================ */
#block-jallikattu-theme-webform {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
  padding: 48px 40px;
  max-width: 640px;
  margin: 40px auto 100px;
}

/* ============================
   FORM ITEMS
   ============================ */
#block-jallikattu-theme-webform .form-item {
  margin-bottom: 22px;
}

#block-jallikattu-theme-webform label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #0d0d0d;
  margin-bottom: 6px;
}

/* Required field asterisk — Webform renders literal text, this just recolors it */
#block-jallikattu-theme-webform label.form-required::after {
  content: ' *';
  color: #d4af37;
}

/* ============================
   INPUTS / TEXTAREA
   ============================ */
#block-jallikattu-theme-webform input.form-text,
#block-jallikattu-theme-webform input.form-email,
#block-jallikattu-theme-webform input.form-tel,
#block-jallikattu-theme-webform textarea.form-textarea {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 15px;
  font-family: inherit;
  background: #fafafa;
  transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
}

#block-jallikattu-theme-webform input.form-text:focus,
#block-jallikattu-theme-webform input.form-email:focus,
#block-jallikattu-theme-webform input.form-tel:focus,
#block-jallikattu-theme-webform textarea.form-textarea:focus {
  border-color: #d4af37;
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.15);
}

#block-jallikattu-theme-webform textarea.form-textarea {
  min-height: 150px;
  resize: vertical;
}

/* Username-check status div under Name field — hide unless it has content */
#username-status:empty {
  display: none;
}

#username-status {
  font-size: 12.5px;
  color: #c0392b;
  margin-top: 4px;
}

/* ============================
   CONDITIONAL FIELD (Order Number)
   ============================ */
.form-item-order-number {
  transition: opacity 0.2s ease;
}

/* ============================
   SUBMIT BUTTON
   ============================ */
#block-jallikattu-theme-webform .webform-actions {
  margin-top: 32px;
  margin-bottom: 0;
}

#block-jallikattu-theme-webform .webform-button--submit {
  background: #0d0d0d;
  color: #d4af37;
  border: 1px solid #0d0d0d;
  padding: 14px 40px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}

#block-jallikattu-theme-webform .webform-button--submit:hover {
  background: #d4af37;
  color: #0d0d0d;
  border-color: #d4af37;
}

/* AJAX throbber that appears next to submit button during send */
#block-jallikattu-theme-webform .ajax-progress-throbber .throbber {
  background-color: #d4af37;
}

#block-jallikattu-theme-webform .ajax-progress-throbber .message {
  color: #888;
  font-size: 13px;
}

/* ============================
   RESPONSIVE
   ============================ */
@media (max-width: 640px) {
  #block-jallikattu-theme-webform {
    padding: 32px 24px;
    border-radius: 12px;
    margin: 24px 16px 60px;
  }
}
