/* ═══════════ FORMS ═══════════ */
.form-group{margin-bottom:1rem}
.form-group label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.25rem;color:#1a1a2e}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .75rem;border:1.5px solid #d1d5db;border-radius:8px;font-size:.9375rem;font-family:inherit;min-height:48px;background:#fff;transition:border-color .15s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ea580c;outline:none}
.form-group textarea{min-height:120px;resize:vertical}
.form-group .error-text{color:#ef4444;font-size:.8125rem;margin-top:.25rem;display:none}
.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:#ef4444}
.form-group.error .error-text{display:block}
.form-hint{font-size:.8125rem;color:#64748b;margin-top:.25rem}
.file-upload-area{border:2px dashed #d1d5db;border-radius:8px;padding:1.5rem;text-align:center;cursor:pointer;transition:border-color .15s}
.file-upload-area:hover{border-color:#ea580c}
.form-submit-state{text-align:center;padding:1.5rem;display:none}
.form-submit-state.sending,.form-submit-state.success,.form-submit-state.error{display:block}
