/* CVH WPForms — Global glass-card overrides */
/* CVH-PAYMENTS-V3 FASE 1 */

/* Form container */
.cvh-cd-page .wpforms-container,
.cvh-cd-page .wpforms-form { width: 100%; }

/* Field groups */
.cvh-cd-page .wpforms-field { margin-bottom: 20px; }
.cvh-cd-page .wpforms-field-label {
  font-family: var(--f-mono, 'JetBrains Mono', monospace);
  font-size: 10px; letter-spacing: 0.15em; text-transform: uppercase;
  color: var(--ink-dim, #A6A0B5); margin-bottom: 6px; display: block;
}
.cvh-cd-page .wpforms-field-label-hide > .wpforms-field-label { display: none; }

/* Inputs */
.cvh-cd-page .wpforms-field input[type="text"],
.cvh-cd-page .wpforms-field input[type="email"],
.cvh-cd-page .wpforms-field input[type="tel"],
.cvh-cd-page .wpforms-field input[type="number"],
.cvh-cd-page .wpforms-field input[type="url"],
.cvh-cd-page .wpforms-field input[type="date"],
.cvh-cd-page .wpforms-field textarea,
.cvh-cd-page .wpforms-field select {
  width: 100%; background: rgba(240,234,214,.04);
  border: 1px solid rgba(240,234,214,.12); border-radius: 10px;
  padding: 12px 16px; color: var(--ink, #F0EAD6);
  font-family: var(--f-body, 'DM Sans', sans-serif); font-size: 14px;
  transition: border-color .2s, background .2s; outline: none; box-sizing: border-box;
}
.cvh-cd-page .wpforms-field input:focus,
.cvh-cd-page .wpforms-field textarea:focus,
.cvh-cd-page .wpforms-field select:focus {
  border-color: rgba(212,175,55,.4); background: rgba(212,175,55,.03);
}
.cvh-cd-page .wpforms-field textarea { min-height: 100px; resize: vertical; }
.cvh-cd-page .wpforms-field select { appearance: none; cursor: pointer; }
.cvh-cd-page .wpforms-field input::placeholder,
.cvh-cd-page .wpforms-field textarea::placeholder { color: var(--ink-mute, #6B6680); }

/* Checkbox / Radio */
.cvh-cd-page .wpforms-field-radio .wpforms-field-label-inline,
.cvh-cd-page .wpforms-field-checkbox .wpforms-field-label-inline {
  font-size: 14px; color: var(--ink-dim, #A6A0B5); margin-left: 6px;
}

/* Submit button */
.cvh-cd-page .wpforms-submit {
  background: var(--gold, #D4AF37); color: #06060F;
  font-family: var(--f-display, 'Syne', sans-serif);
  font-size: 15px; font-weight: 700; letter-spacing: 0.03em;
  padding: 14px 36px; border-radius: 10px; border: none; cursor: pointer;
  transition: opacity .2s, transform .15s; width: auto;
}
.cvh-cd-page .wpforms-submit:hover { opacity: .85; transform: translateY(-1px); }
.cvh-cd-page .wpforms-submit:disabled { opacity: .5; cursor: not-allowed; }

/* Errors */
.cvh-cd-page .wpforms-error {
  color: #ff6b6b; font-size: 12px; margin-top: 4px; display: block;
}
.cvh-cd-page .wpforms-field input.wpforms-error,
.cvh-cd-page .wpforms-field textarea.wpforms-error {
  border-color: rgba(255,107,107,.4);
}

/* Confirmation message */
.cvh-cd-page .wpforms-confirmation-container-full {
  background: linear-gradient(135deg, rgba(212,175,55,.08), rgba(74,25,66,.05));
  border: 1px solid rgba(212,175,55,.25); border-radius: 14px; padding: 28px 24px;
  color: var(--ink, #F0EAD6); font-size: 15px; line-height: 1.6;
}

/* File upload */
.cvh-cd-page .wpforms-field-file-upload .wpforms-file-upload-button {
  background: rgba(212,175,55,.08); border: 1px dashed rgba(212,175,55,.25);
  border-radius: 10px; color: var(--gold, #D4AF37); padding: 14px 20px;
  cursor: pointer; font-size: 14px; transition: background .2s;
}
.cvh-cd-page .wpforms-field-file-upload .wpforms-file-upload-button:hover {
  background: rgba(212,175,55,.12);
}

/* Stripe payment field */
.cvh-cd-page .wpforms-field-stripe-credit-card .wpforms-stripe-credit-card-wrap {
  background: rgba(240,234,214,.04); border: 1px solid rgba(240,234,214,.12);
  border-radius: 10px; padding: 14px 16px;
}

/* Section dividers */
.cvh-cd-page .wpforms-field-divider { border: none; border-top: 1px solid rgba(240,234,214,.08); margin: 8px 0 24px; }
.cvh-cd-page .wpforms-field-html p { color: var(--ink-dim, #A6A0B5); font-size: 13px; line-height: 1.6; }

/* Glass wrap helper — use on form-wrapping containers */
.cvh-wpforms-glass {
  background: linear-gradient(180deg, rgba(240,234,214,.025), rgba(74,25,66,.02));
  border: 1px solid rgba(240,234,214,.08); border-radius: 20px; padding: 36px 32px;
}
@media (max-width: 480px) { .cvh-wpforms-glass { padding: 24px 18px; } }

/* Required asterisk */
.cvh-cd-page .wpforms-required-label { color: var(--gold, #D4AF37); }

/* Captcha */
.cvh-cd-page .wpforms-field-captcha { margin-bottom: 24px; }

/* Two-column layout helper */
.cvh-cd-page .wpforms-field-row .wpforms-field { margin-bottom: 20px; }
