/*
Theme Name: my-static-folder-niish-base-theme
Description: A modern WordPress theme converted from a static HTML/CSS/JS design.
Version: 1.0.0
Author: Niishcloud
Text Domain: niish-base-theme
*/

/* CSS variables override to prevent WordPress block editor styles from overriding theme colors */
:root {
  --federal-blue: #1A2530 !important;
  --safety-amber: #F5A623 !important;
}

/* WordPress Navigation Menu Resets */
#primary-menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 2rem !important; /* matches gap-8 (32px) */
}

#primary-menu li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#primary-menu a {
  transition: color 0.2s ease-in-out !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

#primary-menu a:hover,
#primary-menu .current-menu-item > a,
#primary-menu .current_page_item > a,
#primary-menu a.active-menu-item {
  color: #F5A623 !important; /* safety-amber */
  border-bottom: 2px solid #F5A623 !important;
  padding-bottom: 4px !important;
}

#mobile-primary-menu a.active-menu-item {
  color: #F5A623 !important; /* safety-amber */
}

@media print {
  body {
    background: #ffffff !important;
    color: #0f172a !important;
  }
  
  /* Hide interactive, navigation, and CTA elements */
  header,
  footer,
  #mobile-menu,
  .sticky,
  #export-actions,
  #gate-modal,
  #contact,
  button,
  form,
  .inline-flex.items-center.justify-center.w-full {
    display: none !important;
  }

  /* Make sure everything prints in full color and doesn't get cut off */
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    box-shadow: none !important;
  }

  /* Ensure main container prints nicely */
  main {
    padding-bottom: 0 !important;
  }
  
  .max-w-7xl {
    max-width: 100% !important;
    padding: 0 !important;
  }

  /* Unblur gated content for print */
  #gated-content {
    filter: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    user-select: auto !important;
    background: transparent !important;
  }
}

/* PDF Generation layout adjustments */
body.is-printing-pdf {
  background: #ffffff !important;
  color: #0f172a !important;
}

body.is-printing-pdf #export-actions,
body.is-printing-pdf #gate-modal,
body.is-printing-pdf .sticky,
body.is-printing-pdf button,
body.is-printing-pdf input,
body.is-printing-pdf form {
  display: none !important;
}

body.is-printing-pdf #gated-content {
  filter: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  user-select: auto !important;
  background: transparent !important;
}

/* --- Contact Form 7 Premium Styling --- */
.wpcf7-form {
  position: relative;
  z-index: 1;
}

/* Modern inputs and textareas */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form textarea {
  display: block;
  width: 100%;
  padding: 0.875rem 1.25rem !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 6px !important;
  font-size: 0.95rem !important;
  color: #0f172a !important;
  outline: none !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.02) !important;
}

.wpcf7-form textarea {
  height: 120px !important;
  min-height: 80px !important;
  resize: vertical !important;
}

.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form textarea:focus {
  border-color: #0f172a !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.04), 0 4px 12px rgba(15, 23, 42, 0.03) !important;
  transform: translateY(-1px);
}

/* Labels */
.wpcf7-form label {
  display: block !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #64748b !important;
  margin-bottom: 0.5rem !important;
}

/* Submit Button */
.wpcf7-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 1.125rem 2rem !important;
  background-color: #0f172a !important; /* federal-blue equivalent */
  color: #ffffff !important;
  font-size: 0.75rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.2em !important;
  border: none !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  box-shadow: 0 4px 6px -1px rgba(15, 23, 42, 0.1), 0 2px 4px -1px rgba(15, 23, 42, 0.06) !important;
  transition: all 0.2s ease-in-out !important;
}

.wpcf7-submit:hover {
  background-color: #f5a623 !important; /* safety-amber */
  color: #0f172a !important;
  box-shadow: 0 10px 15px -3px rgba(245, 166, 35, 0.3), 0 4px 6px -2px rgba(245, 166, 35, 0.05) !important;
  transform: translateY(-1px);
}

.wpcf7-submit:active {
  transform: translateY(0) !important;
}

/* Custom Spacing wrappers */
.wpcf7-form-control-wrap {
  display: block !important;
  margin-bottom: 0.25rem !important;
}

/* CF7 Validation Error tips */
.wpcf7-not-valid-tip {
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  color: #ef4444 !important; /* red-500 */
  margin-top: 0.375rem !important;
  display: block !important;
}

/* CF7 Submit Status Response Message */
.wpcf7-response-output {
  margin: 1.5rem 0 0 0 !important;
  padding: 1rem 1.25rem !important;
  border-radius: 6px !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-align: center !important;
  border: 1px solid transparent !important;
  transition: all 0.3s ease !important;
}

/* CF7 validation error box */
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.unaccepted .wpcf7-response-output,
.wpcf7-form.payment-required .wpcf7-response-output {
  background-color: #fef2f2 !important;
  border-color: #fee2e2 !important;
  color: #b91c1c !important; /* red-700 */
}

/* CF7 mail sent success box */
.wpcf7-form.sent .wpcf7-response-output {
  background-color: #f0fdf4 !important;
  border-color: #dcfce7 !important;
  color: #15803d !important; /* green-700 */
}



