/* Main container: sidebar + form */
.pvf-container {
  display: flex;
  gap: 40px;
  max-width: 966px;
  margin: 0px auto;
  background-color: #fff;
  border: none;
}

/* Sidebar */
.pvf-sidebar {
  /*flex: 0 0 220px;  adjust width as desired */
  width: 262px;
  max-width: 262px;
  border-radius: 5px;
  background: #FDFDFD;
  box-shadow: 1px 1px 6.5px 1px rgba(125, 125, 125, 0.17);
  padding-top: 53px;
  padding-left: 37px;
  padding-right: 10px;
  min-height: 587px;
  height: 650px;
  max-height: 650px;
}

/* Steps list in sidebar */
.pvf-sidebar ul.pvf-steps-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 38px;
}

ul.pvf-steps-list li.pvf-step-item {
  display: flex;
  gap: 19.48px;
  align-items: center;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.3s;
  position: relative;
  z-index: 5;
}

/* Active Step State */
ul.pvf-steps-list li.pvf-step-item-active span.pvf-icon,
ul.pvf-steps-list li.pvf-step-item.active span.pvf-icon {
  opacity: 1;
  background: #183658 !important;
}

ul.pvf-steps-list li.pvf-step-item-active span.pvf-icon img,
ul.pvf-steps-list li.pvf-step-item.active span.pvf-icon img{
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(4304%) hue-rotate(354deg) brightness(116%) contrast(84%);
}

/* Example step icon (circle) - Inactive State */
ul.pvf-steps-list li.pvf-step-item span.pvf-icon {
  display: inline-flex;
  width: 42.827px;
  height: 42.827px;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  background: #EBEBEB;
  position: relative;
  z-index: 3;
}

ul.pvf-steps-list li.pvf-step-item span.pvf-icon img{
  filter: brightness(0) saturate(100%) invert(19%) sepia(8%) saturate(4702%) hue-rotate(173deg) brightness(92%) contrast(93%);
}

ul.pvf-steps-list li.pvf-step-item span.pvf-icon::after{
  content: "";
  display: flex;
  width: 0.919px;
  height: 40px;
  transform: rotate(-0deg);
  background: #C4C4C4;
  position: relative;
  top: 97%;
  left: -25%;
  z-index: -1;
}

/* ul.pvf-steps-list li.pvf-step-item:first-child span.pvf-icon::after, */
ul.pvf-steps-list li.pvf-step-item:last-child span.pvf-icon::after{
  content: "";
  display: none;
}

ul.pvf-steps-list li.pvf-step-item span.pvf-icon img{
  height: 21.114px;
  width: 21.114px;
}



ul.pvf-steps-list li.pvf-step-item .pvf-step-label {
  color: #5A5D62;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

/* Form content area */
.pvf-form-content {
  /* flex: 1; */
  width: 664px;
  max-width: 100%;
  padding: 29px;
  min-height: 587px;
  height: 650px;
  max-height: 650px;
  border-radius: 5px;
  background: #FDFDFD;
  box-shadow: 1px 1px 6.5px 1px rgba(125, 125, 125, 0.17);
  
}

/* Hide steps by default */
.pvf-step {
  display: none;
}
.pvf-step-active {
  display: block;
}

/* Horizontal progress bar */
.pvf-form-content .pvf-progress-bar {
  background-color: #C4C4C4;
  height: 1px;
  border-radius: 10px;
  margin-bottom: 0px;
  border-radius: 10px;
  /* Allow the progress bar to exceed the container height */
  overflow: visible;
  position: relative;
}

.pvf-form-content .pvf-progress-bar .pvf-progress {
  background-color: #183658;
  height: 4px;        /* taller than the container */
  width: 10%;         /* updated dynamically via JS */
  transition: width 0.3s ease;
  border-radius: 10px;

  /* Position absolutely so it can overlap the 1px container */
  position: absolute;
  left: 0;
  top: 50%;           /* halfway down the container */
  transform: translateY(-50%); /* center the bar vertically over the 1px track */
}

.pvf-form-content .pvf-progress-value{
  display: flex;
  justify-content: flex-end;
  color: #5A5D62;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 16.959px;
  margin-top: 7px;
  margin-bottom: 12px;
}

.pvf-form-content .pvf-step h2{
  color: #F5821F;
  ont-family: "Inter", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin-bottom: 14px;
}

.pvf-form-content .pvf-step p{
  color: #183658;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin: 0px;
}

.pvf-form-content .pvf-step span.question{
  display: flex;
  color: #5A5D62;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 19.523px;
  margin-top: 8px;
}

.pvf-form-content form#property-value-multistep-form{
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
  min-height: 534px;
}

.pvf-form-content form#property-value-multistep-form .pvf-button-wrap{
  position: absolute;
  width: 260px;
  display: flex;
  justify-content: space-between;
  left: 50%;
  transform: translate(-50%, -50%);
  bottom: -12%;
  margin: 0px;
}



/* Form fields */
label {
  display: block;
  margin-top: 10px;
  font-weight: 500;
}

.pvf-form-content form#property-value-multistep-form .pvf-step input[type="text"], 
.pvf-form-content form#property-value-multistep-form .pvf-step input[type="email"], 
.pvf-form-content form#property-value-multistep-form .pvf-step input[type="number"] {
  width: 100%;
  max-width: 539px;
  padding: 8px;
  margin-top: 7px;
  box-sizing: border-box;
  border-radius: 55px;
  border: 1px solid #878787;
  background: #FDFDFD;
  padding-left: 75px;
}

.pvf-form-content form#property-value-multistep-form .pvf-step .input-wrap{
  display: flex;
  position: relative;
}

.pvf-form-content form#property-value-multistep-form .pvf-step .input-wrap::before{
  content: url("http://164.90.220.110/wp-content/uploads/2025/03/Pen.svg");
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 40px;
  border-right: 1px solid #878787;
  padding-left: 30px;
  padding-right: 20px;
  padding-top: 7px;
  position: absolute;
  top: 15%;
}

.pvf-form-content form#property-value-multistep-form .pvf-step fieldset {
  border: none;
  margin: 0px;
  padding: 0px;
  margin-bottom: 7px;
  margin-top: 18px;
}

.pvf-form-content form#property-value-multistep-form .pvf-step fieldset legend {
  border: none;
  margin: 0px;
  padding: 0px;
  margin-bottom: 18px;
  color: #282E3A;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 19.523px;
}


.pvf-form-content form#property-value-multistep-form .pvf-step fieldset .radio-wrap{
  display: flex;
  justify-content: space-between;
}

.pvf-form-content form#property-value-multistep-form .pvf-step fieldset .radio-wrap label{
  margin: 0px;
  display: flex;
  align-items: center;
  gap: 11px;
}


/* Hide native appearance so we can fully style the radio */
input[type="radio"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;

  /* Size and shape */
  width: 16px;
  height: 16px;
  border: 2px solid #5A5D62; /* orange ring */
  border-radius: 50%;        /* circular */
  background-color: #fff !important;    /* white interior */
  position: relative;
  vertical-align: middle;    /* aligns nicely with text */
  margin-right: 0px;         /* spacing before label text */
}

/* When checked, add a smaller dot in the center */
input[type="radio"]:checked::before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border: 2px solid #F5821F;
  background-color: #F5821F; /* same orange */
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pvf-form-content form#property-value-multistep-form .pvf-step label span,
.pvf-form-content form#property-value-multistep-form .pvf-step legend span
{
  color: #F5821F;
}

.pvf-form-content form#property-value-multistep-form .pvf-step .confirm label {
  display: flex;
  align-items: center;
}

.pvf-form-content form#property-value-multistep-form .pvf-step .confirm label input[type="radio"]{
  margin-right: 11px;
}

/* Navigation buttons container */
.pvf-button-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between; /* left arrow, center, right arrow */
  margin-top: 20px;
}

.pvf-button-wrap button.pvf-submit-button {
  padding: 13px 24px;
  border-radius: 6px;
  background: #183658;
  border: none;
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  cursor: pointer;
}

.pvf-button-wrap button.pvf-prev-step,
.pvf-button-wrap button.pvf-next-step{
  padding: 12px 13px;
  width: 41px;
  height: 41px;
  border-radius: 100px;
  background: #FDFDFD;
  box-shadow: 1px 1px 6.5px 1px rgba(125, 125, 125, 0.17);
}

/* Active arrow style (enabled) */
.pvf-button-wrap button.pvf-prev-step.arrow-active img,
.pvf-button-wrap button.pvf-next-step.arrow-active img{
  filter: brightness(0) saturate(100%) invert(18%) sepia(44%) saturate(816%) hue-rotate(171deg) brightness(95%) contrast(96%);
  opacity: 1;
  cursor: pointer;
}

/* Inactive arrow style (disabled) */
.pvf-button-wrap button.pvf-prev-step.arrow-inactive img,
.pvf-button-wrap button.pvf-next-step.arrow-inactive img {
  filter: brightness(0) saturate(100%) invert(79%) sepia(0%) saturate(3524%) hue-rotate(148deg) brightness(103%) contrast(72%);
  opacity: 0.5;
  cursor: not-allowed; /* show blocked cursor */
}



.pvf-button-wrap button.pvf-prev-step img,
.pvf-button-wrap button.pvf-next-step img{
  width: 16px;
  height: 16px;
}

.pvf-button-wrap button.pvf-prev-step:hover,
.pvf-button-wrap button.pvf-next-step:hover {
  background-color: transparent;
}

/* Admin table styling overrides (optional) */
.wp-list-table.widefat.fixed.striped th a {
  text-decoration: none;
  color: #0073aa;
}



/* Rounded Pills for Step 1  */
/* Target the radio group in Step 1 (optional scoping) */
.pvf-step[data-step="1"] .pvf-radio-group {
  display: flex;
  flex-direction: column;
  gap: 17px; /* space between each option */
  margin-top: 21px;
}

.pvf-step[data-step="1"] .pvf-radio-group label {
  width: 324px;
  margin: 0px;
}

/* Hide the native radio input */
.pvf-step[data-step="1"] .pvf-radio-group input[type="radio"] {
  display: none;
}

/* The custom 'pill' container */
.radio-pill {
  display: inline-flex;
  align-items: center;
  padding-top: 12px;
  padding-bottom: 14px;
  padding-left: 24px;
  border-radius: 55px;
  border: 0.6px solid #F5821F;
  background: #FFF;
  cursor: pointer;
  transition: border-color 0.3s, color 0.3s;
  gap: 17px;
  min-width: 324px;
}

/* The icon inside the pill */
.radio-icon {
  width: 22px;  
  height: 22px;
  
}

/* UnChecked (Inactive) state */
.pvf-step[data-step="1"] .pvf-radio-group input[type="radio"] + .radio-pill {
  border-radius: 55px;
  border: 1px solid #878787;
  background: #FDFDFD;
  color: #878787 !important;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

/* Checked (active) state */
.pvf-step[data-step="1"] .pvf-radio-group input[type="radio"]:checked + .radio-pill {
  border-radius: 55px;
  border: 0.6px solid #F5821F;
  background: #FFF;
  color: #F5821F !important;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

/* Mobile Styles */
@media only screen and (max-width: 768px) {
    .pvf-sidebar {
        display: none;
    }
    
    .pvf-form-content form#property-value-multistep-form .pvf-step fieldset .radio-wrap{
  display: flex;
  flex-direction: column;
	}
    
    .pvf-form-content {
  		min-height: 600px;
  		height: 600px;
 		max-height: 650px;
}

	.pvf-form-content form#property-value-multistep-form{
    	min-height: 500px;
}

/* If you want the icon to turn white when checked 
   (assuming the base icon is black or single-color), add: */
.pvf-step[data-step="1"] .pvf-radio-group input[type="radio"]:checked + .radio-pill .radio-icon {
  filter: brightness(0) saturate(100%) invert(57%) sepia(59%) saturate(804%) hue-rotate(342deg) brightness(95%) contrast(103%);
}

/* If you want the icon to turn dark when unchecked 
   (assuming the base icon is black or single-color), add: */
.pvf-step[data-step="1"] .pvf-radio-group input[type="radio"] + .radio-pill .radio-icon {
  filter: brightness(0) saturate(100%) invert(35%) sepia(1%) saturate(2215%) hue-rotate(179deg) brightness(94%) contrast(83%);
}

.pvf-step.pvf-step-active .pvf-radio-group label {
	width: 100% !important;
}

.radio-pill {
  min-width: 100%;
  width: 100%;
}

}