﻿.mx-640 { max-width: 640px; margin-left: auto; margin-right: auto; }
label.fieldlabels { font-size: 22px; font-weight: 500; color: #7c2d84; margin-top: 0px; }
/* input[type=radio] { accent-color: #7c2d84; -ms-transform: scale(1.5); -webkit-transform: scale(1.5); transform: scale(1.5); }  */

.form-check-input { margin: 0; visibility: hidden; }

.form-check-input:checked + span { border-color: #7c2d84; }

.form-check-input:checked + span:after { opacity: 1; }

.form-check-label span {
    left: 0px;
    top: 6px;
    cursor: pointer;
    width: 24px;
    height: 24px;
    border: 3px solid #999;
    border-radius: 3px;
    display: inline-block;
    position: relative;
    margin-right: 6px;
}

/* for inner filled circle */
.form-check-label span::after {
    content: '';
    width: 16px;
    height: 16px;
    background: #7c2d84;
    position: absolute;
    border-radius: 1px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity 0.2s;
}

.form-check-info { font-size: 12px;}
.bg-lightbluegradient{
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#bef1f4+0,ddf2fd+100 */
    background: linear-gradient(to bottom,  #ffffff 0%,#ddf2fd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

#milan_quest_frm .container{ min-height: 350px; background: #e3d2de; }

ul[role="tablist"] { display: none; }
.wizard, .tabcontrol {
    display: block;
    width: 100%;
    /* max-width: 480px; height: auto; */
    margin: auto;
    overflow: hidden;
    background: #e3d2de;
}
.wizard > .content {
    background: none;
    display: block;
    margin: 0;
    min-height: 350px;
    overflow: hidden;
    position: relative;
    width: auto;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}
.wizard > .content > .body { width: 100%; height: auto; padding: 40px 80px; text-align: left; transition: width 0.6s, height 0.6s; border: 0 none; -webkit-border-radius: 0px; -moz-border-radius: 0px; border-radius: 0px;  }
.wizard > .content > .body label {
    margin-bottom: 15px;
    font-size: 22px;
}
.wizard > .content > .body label.error {
    color: #d11f07;
    font-size: 16px;
    line-height: 20px;
    display: block;
    margin-left: 0; text-align: center;
}
.l-border-2 { border-left: 2px solid #fff; }
.qstn_num { position: absolute; left: 0; top: 40px; padding: 5px 10px 5px 15px; background: #7c2d84; color: #fff; font-size: 32px; font-weight: bold;}
.progress { height: 4px; border-radius: 0px; background-color: #e3d2de; margin-bottom: 15px; }
.progress-bar { background-color: #7c2d84; }
.wizard > .actions a, 
.wizard > .actions a:hover, 
.wizard > .actions a:active {
    position: relative;
    background: none;
    color: #fff;
    display: block;
    padding: 6px 18px;
    text-decoration: none;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
    z-index: 1;
    font-size: 18px;
    font-weight: 500;
}

.wizard > .actions a::before, 
.wizard > .actions a:hover::before, 
.wizard > .actions a:active::before {
    background: #7c2d84;
    /* box-shadow: 0px 3px 0 2px #83DBBE; */
    content: "";
    left: 0;
    top: 0px;
    right: 0;
    bottom: 0;
    /* -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px; */
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    position: absolute;
    z-index: -1;
}

.wizard > .actions .disabled a::before , 
.wizard > .actions .disabled a:hover::before , 
.wizard > .actions .disabled a:active::before {
    background: #bbb;
    /* box-shadow: 0px 3px 0 2px #ccc; */
    pointer-events: none;
}

.wizard .form-group {
    padding-left: 0px;
    margin-bottom: 0;
}

#results_quest h3,
h3#results_title { font-size: 32px; font-weight: 500;}
#results_quest h4 { color: #7c2d84; }
#results_quest h4>span {
    letter-spacing: 2px;
    color: #fff;
    padding: 0 10px;
    position: relative;
    z-index: 1;
    display: inline-block;
    margin-left: 10px;
    text-align: center;
}
#results_quest h4>span::after {
    content: "";
    background: #7c2d84;
    display: block;
    position: absolute;
    width: 50px;
    left: 50%;
    top: 50%;
    border-radius: 50px;
    height: 50px;
    z-index: -1;
    transform: translate(-50%, -50%);
    -moz-animation: zoomin 2s infinite;
    -webkit-animation: zoomin 2s infinite;
    animation: zoomin 2s infinite;
}
p#final_message { font-size: 20px; }

.quest-container { background: #e3d2de; min-height: 300px; padding: 40px 30px; }
  
@keyframes zoomin {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.2);
    }
    100% {
        transform: translate(-50%, -50%) scale(1);
    }
}

/* Meter - Gauge styles active one */

:root {
    --gauge-width: 200px;
    --min: 0;
    --max: 100;
  }
  
  @keyframes needleRotation {
    0% {
      transform: rotate(-90deg);
    }
    80% {
      transform: rotate(
        calc(
          -70deg + (var(--actual-value) - var(--min)) / (var(--max) - var(--min)) *
            180deg
        )
      );
    }
    100% {
      transform: rotate(
        calc(
          -90deg + (var(--actual-value) - var(--min)) / (var(--max) - var(--min)) *
            180deg
        )
      );
    }
  }
  
  @keyframes gaugeRotation {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(
        calc((var(--trigg) - var(--min)) / (var(--max) - var(--min)) * 180deg)
      );
    }
  }
  
  .gauge-wrapper {
    display: inline-block;
    width: auto;
    margin: 0 auto;
    background: inherit;
  }
  
  .gauge {
    --gauge-height: calc(var(--gauge-width) / 2);
    width: var(--gauge-width);
    height: var(--gauge-height);
    border-radius: var(--gauge-height) var(--gauge-height) 0 0 !important;
    position: relative;
    overflow: hidden;
    box-shadow: 0 -3px 6px 2px rgba(0, 0, 0, 0.5);
    background: inherit;
  }
  
  .slices {
    height: 100%;
  }
  
  .slices .marker {
    position: absolute;
    top: 0;
    border-radius: var(--gauge-height) var(--gauge-height) 0 0 !important;
    width: var(--gauge-width);
    height: var(--gauge-height);
    transform-origin: calc(var(--gauge-width) / 2) var(--gauge-height);
    animation: 600ms ease-in 0s 1 gaugeRotation;
    transform: rotate(
      calc((var(--trigg) - var(--min)) / (var(--max) - var(--min)) * 180deg)
    );
    background: var(--bg);
  }
  
  .gauge-center {
    width: 60%;
    height: 60%;
    background: inherit;
    border-radius: var(--gauge-height) var(--gauge-height) 0 0 !important;
    position: absolute;
    box-shadow: 0 -13px 15px -10px rgba(0, 0, 0, 0.28);
    right: 21%;
    bottom: 0;
    background: #e3d2de;
  }
  
  .gauge-center .label,
  .gauge-center .number {
    display: block;
    width: 100%;
    text-align: center;
    border: 0 !important;
  }
  .gauge-center .label {
    font-size: 14px;
    opacity: 0.8;
    margin: 30px 0 0;
    color: #000;
  }
  .gauge-center .number {
    font-size: 20px;
  }
  
  .gauge-center .number:before {
    counter-reset: number var(--actual-value);
    content: counter(number);
  }
  
  .needle {
    position: absolute;
    bottom: 0;
    left: 50%;
    height: calc(var(--gauge-height) / 1.1);
    width: 5px;
    border-radius: 3px;
    box-shadow: 0 2px 2px 1px rgba(0, 0, 0, 0.38);
    background: #15222e;
    transform-origin: bottom;
    transition-property: -webkit-transform;
    transition-duration: 2s;
    transition-timing-function: ease-in-out;
    transform: rotate(-90deg); /* W3C */
    -webkit-transform: rotate(-90deg); /* Safari & Chrome */
    -moz-transform: rotate(-90deg); /* Firefox */
    -ms-transform: rotate(-90deg); /* Internet Explorer */
    -o-transform: rotate(-90deg); /* Opera */
    /*animation: 2s ease-in 0s 1 needleRotation;*/
  }
  
#quest_results h2 { font-weight: 500; }
#quest_results h2>span { font-weight: 600; display: inline-block; background: #7c2d84; color: #fff; padding: 5px 10px; }

@media (max-width: 992px) {

  .wizard > .content > .body label { font-size: 16px; }
  #results_quest h3, 
  h3#results_title { font-size: 28px; }
  #quest_results h2 { font-weight: 600; font-size: 26px; }
  #results_quest p { font-size: 16px; }

}


@media (max-width: 768px) {

  .wizard > .content { min-height: 480px; }
  .wizard > .content > .body { padding: 40px 50px 40px 80px;}
  #results_quest h3 { font-size: 22px; }
  #results_quest h4 { font-size: 20px; }
  #results_quest h4>span::after { width: 40px; height: 40px; } 
  p#final_message { font-size: 16px; }
  p#final_message.mb-20 { margin-bottom: 0; }
}

@media (max-width: 580px) {
  .l-border-2 { border-left: 0 none;  border-top: 2px solid #fff; padding-top: 15px; }
}