/**
 * Gravity Forms Custom Styling
 * 
 * This stylesheet contains custom styling for Gravity Forms.
 * It loads after Gravity Forms default styles to allow overrides.
 */

/* ============================================
   Form Container
   ============================================ */

.gform_wrapper {
  /* Add custom form wrapper styles here */
}

/* ============================================
   Form Fields
   ============================================ */

.gform_wrapper .gfield {
  /* Add custom field styles here */
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea {
  padding: 14px 16px !important;
  min-height: 48px;
  text-align: left;
}

.gform_wrapper select,
.gform_wrapper .gfield_select {
  padding: 16px !important;
  min-height: 52px;
  height: auto;
  line-height: 1.25;
  text-align: left;
  vertical-align: top;
  box-sizing: border-box;
}

/* Placeholder styling - accessible grey color, left-aligned */
.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder {
  color: #5a6c7d;
  opacity: 1;
  text-align: left;
}

.gform_wrapper input::-webkit-input-placeholder,
.gform_wrapper textarea::-webkit-input-placeholder {
  color: #5a6c7d;
  opacity: 1;
  text-align: left;
}

.gform_wrapper input::-moz-placeholder,
.gform_wrapper textarea::-moz-placeholder {
  color: #5a6c7d;
  opacity: 1;
  text-align: left;
}

.gform_wrapper input:-ms-input-placeholder,
.gform_wrapper textarea:-ms-input-placeholder {
  color: #5a6c7d;
  opacity: 1;
  text-align: left;
}

/* Score popup specific: left-align labels */
#score-popup .gform_wrapper .gfield_label {
  text-align: left !important;
}

/* ============================================
   Labels
   ============================================ */

.gform_wrapper .gfield_label {
  /* Add custom label styles here */
  font-size: 1.1rem;
  font-weight: 600;
  color: #1b365d;
  margin-bottom: 8px;
}

/* Main labels for complex fields (name, address, etc.) */
.gform_wrapper .gfield_label_before_complex {
  font-size: 1.1rem;
  font-weight: 600;
  color: #1b365d;
  margin-bottom: 8px;
}

/* Sub labels - hide them (will be converted to placeholders via JS) */
.gform_wrapper .gform-field-label--type-sub {
  /*display: none !important;*/
  position: absolute;
  height: 1px;
  width: 1px;
  margin: -1px;
  overflow: hidden; 
  
}

/* ============================================
   Buttons - 8-bit Style
   ============================================ */

/* All Gravity Forms submit buttons use 8-bit styling (auto-width by default) */
.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer {
  display: flex !important;
  /*justify-content: center !important;
  align-items: center !important;*/
}

.gform-theme--foundation .gfield .ginput_password, .gform-theme--foundation .gfield input, .gform-theme--foundation .gfield select{
	border: 0.0625rem solid #1b365d !important;
    box-shadow: 0.3125rem 0.3125rem 0 0 #1b365d;
    border-radius: 0.375rem;
      padding: 8px !important
}
.gfield_radio .gchoice .gfield-choice-input{
	border-radius: 2.375rem !important;
}
.gform_wrapper .gform_footer .btn-container,
.gform_wrapper .gform_page_footer .btn-container {
  display: inline-block !important;
}

.gform_wrapper .gform_footer .btn-container .btn,
.gform_wrapper .gform_page_footer .btn-container .btn {
  font-size: 1rem !important;
  letter-spacing: 0.02em !important;
  padding: calc(7 * var(--px)) calc(28 * var(--px)) !important; /* Larger padding for better proportions */
}

/* Legacy fallback for any non-8-bit submit buttons */
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"] {
  /* Fallback styles if 8-bit markup is not applied */
}

/* ============================================
   Validation & Errors
   ============================================ */

.gform_wrapper .gfield_error {
  /* Add custom error field styles here */
}

.gform_wrapper .validation_message {
  /* Add custom validation message styles here */
}

.gform_wrapper .gfield_error .gfield_label {
  /* Add custom error label styles here */
}

/* ============================================
   Success Messages
   ============================================ */

.gform_confirmation_message {
  /* Add custom success message styles here */
}

/* ============================================
   Checkboxes & Radio Buttons
   ============================================ */

.gform_wrapper .gfield_checkbox,
.gform_wrapper .gfield_radio {
  /* Add custom checkbox/radio styles here */
}

/* ============================================
   File Upload
   ============================================ */

.gform_wrapper .ginput_container_fileupload {
  /* Add custom file upload styles here */
}

/* ============================================
   Date Picker
   ============================================ */

.gform_wrapper .ginput_container_date {
  /* Add custom date picker styles here */
}

.gform-theme--foundation .gform_fields {
  row-gap: 26px;
}
.ginput_container_select {
  align-self: flex-start;
  /*border-radius: 6px;
	border: 1px solid #1B365D;
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.80) 0%, rgba(255, 255, 255, 0.80) 100%), #0033A0 !important;*/
}
/* Select: same border/radius as inputs for all forms (was #gform_1 only) */
.gform_wrapper .ginput_container_select .gfield_select {
  border: 0.0625rem solid #1b365d !important; /* 1px - matches .gform_wrapper input */
  box-shadow: 0.3125rem 0.3125rem 0 0 #1b365d; /* 5px 5px 0 0 */
  border-radius: 0.375rem !important; /* 6px */

}
.gform_wrapper input {
  border-radius: 6px !important;
  border: 1px solid #1b365d !important;
  text-align: left;
}
.gform_button {
  background-color: #ffdc00 !important;
  border: hidden !important;
  color: #1b365d !important;
}
.gform-theme--framework .gf_progressbar .percentbar_blue{
	background-color: #0033a0 !important;
}
/* Gravity Forms Buttons */
.gform_button,
.gform_next_button,
.gform_previous_button {
  background-color:  #0033a0 !important;
  color: #ffffff !important;
  padding: 12px 24px;
  border-radius: 4px;
  border: none;
  font-size: 16px;
  font-weight: 600;
}

.gform_button:hover,
.gform_next_button:hover,
.gform_previous_button:hover {
  background-color: #0033a0 !important;
}

.gf_progressbar_title{text-align: left; color: #000 !important;}

/* Gravity Forms Global Validation Error Container */
.gform_wrapper .gform_validation_errors {
  background-color: #fdecea;
  border: 2px solid #d63638;
  border-radius: 6px;
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
}

/* Error Message Text */
.gform_wrapper .gform_validation_errors h2.gform_submission_error {
  font-size: 1rem;
  font-weight: 600;
  color: #000 !important;
  margin: 0;
}
.gform-theme--framework .gform_validation_errors .gform-icon{
	color: #000 !important;
}
/* Error List */
.gform_wrapper .gform_validation_errors ol {
  margin-top: 0.5rem;
  padding-left: 1.2rem;

}
.gform-theme--framework .gform_validation_errors ol a{
	  color: #000 !important;
}
/* Individual Error Items */
.gform_wrapper .gform_validation_errors li {
  font-size: 0.95rem;
  color: #000 !important;
  text-align: left;
}

/* Field Level Error Messages */
.gform_wrapper .gfield_validation_message {
  color: #000;
  font-size: 0.9rem;
  margin-top: 0.25rem;
}

/* Highlight Fields with Errors */
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select {
  border-color: #d63638;
  background-color: #fff8f8;
}
.gform_wrapper .gfield_validation_message{
	text-align: left;
	color: #000;
}
.gfield_required .gfield_required_text{
	color: #000;
}
/* ============================================
   Responsive Styles
   ============================================ */

@media (max-width: 768px) {
  /* Add mobile-specific Gravity Forms styles here */
}
