/* ==========================================================================
   GRAVITYVIEW MODULE — MODALS
   --------------------------------------------------------------------------
   File: forms-gravityview-modals.css
   Purpose:
   - Provides styling for all GravityView-driven modal interfaces, including:
     • Exithub NDA modal
     • Listing message modal
   - Establishes a consistent modal system across all single-entry templates.
   - Defines shared modal primitives: container, backdrop, panel, close button,
     form rows, textarea styling, action buttons, and feedback messages.

   Scope:
   - Applies ONLY to GravityView single-entry modal components.
   - Does NOT style Gravity Forms modals, BuddyBoss modals, or theme-level popups.
   - Safe to load globally because selectors are fully namespaced.

   Dependencies:
   - Depends on core.css for resets and variables.
   - Depends on buddyboss-overrides.css for baseline BuddyBoss fixes.
   - Loaded AFTER all GravityView layout modules:
       forms-gravityview-list.css
       forms-gravityview-single-shared.css
       forms-gravityview-hero.css
   - Loaded BEFORE forms-gravityview-panels.css and custom.css.

   Architectural Notes:
   - This module defines the modal *framework* (structure + spacing + behavior).
   - Component-specific modal content (e.g., seller panels, job panels) belongs
     in forms-gravityview-panels.css.
   - Avoid adding layout spacing here unless it is modal-specific.
   - Keep selectors tightly scoped to prevent cross-domain leakage.

   Future Extensions:
   - Add new modal types by reusing the shared modal primitives defined here.
   - If a modal requires unique layout or component styling, create a dedicated
     block in forms-gravityview-panels.css rather than expanding this file.

   ========================================================================== */

/* Modal containers */
.exithub-modal,
.listing-modal {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Backdrop */
.exithub-modal-backdrop,
.listing-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
}

/* Panel */
.exithub-modal-panel,
.listing-modal-panel {
  position: relative;
  background: #fff;
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
  border-radius: 10px;
  padding: 20px;
  width: 100%;
  max-width: 640px;
  z-index: 2;
}

/* Close button */
.exithub-modal-close,
.listing-modal-close {
  position: absolute;
  right: 12px;
  top: 12px;
  background: none;
  border: none;
  font-size: 20px;
}

/* Form rows */
.form-row {
  margin-bottom: 12px;
}

.form-row textarea {
  width: 100%;
  min-height: 120px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 6px;
}

/* Actions */
.exithub-form-actions .btn,
.listing-form-actions .btn {
  margin-right: 8px;
}

/* Feedback */
#exithub-nda-feedback,
#listing-message-feedback {
  margin-top: 10px;
  font-size: 14px;
  color: #0b84ff;
}

/* NDA checkbox label */
.checkbox-label {
  font-size: 14px;
  color: #333;
}

/* Services Modal */
.services-step label {
  font-size: 15px;
  font-weight: 600;
}

.services-step .services-options label {
  font-weight: 400;
  font-size: 14px;
}

.services-step textarea {
  font-size: 14px;
  line-height: 1.4;
}
