.wprevpro_t1_outer_div{padding:0;margin:0 0px 0 0px}.wprevpro_t1_DIV_1{box-sizing:border-box;color:#777;text-size-adjust:100%;column-rule-color:#fff;perspective-origin:277.5px 115px;transform-origin:277.5px 115px;border:0 none #fff;font:normal normal normal normal 13px/20.8px "Helvetica Neue",Helvetica,Arial,sans-serif;outline:#fff none 0;margin-bottom:20px;margin-top:10px}.wprevpro_t1_DIV_2{bottom:0;box-shadow:rgba(0,0,0,.09) 2px 2px 3px 0;box-sizing:border-box;color:#777;height:auto;left:0;position:relative;right:0;text-size-adjust:100%;top:0;column-rule-color:#fff;perspective-origin:277.5px 69px;transform-origin:277.5px 69px;background:#fff none repeat scroll 0 0/auto padding-box border-box;border:1px solid #f5f5f5;font: italic normal normal normal 14px / 22.4px "Helvetica Neue", Helvetica, Arial, sans-serif;margin:0 0 25px;outline:#fff none 0;padding:20px 25px 20px 48px}.wprevpro_t1_DIV_2:after{bottom:-30px;box-sizing:border-box;color:#fff;content:'';display:block;height:30px;left:80px;position:absolute;right:445px;text-size-adjust:100%;width:30px;column-rule-color:#fff;perspective-origin:15px 15px;transform-origin:15px 15px;filter: drop-shadow(2px 2px 1px rgba(0,0,0,.0980392));border-top:30px solid #fff;border-right:30px solid transparent;border-bottom:0 solid transparent;border-left:0 solid transparent;font:normal normal normal normal 13px/20.8px "Helvetica Neue",Helvetica,Arial,sans-serif;outline:#fff none 0}.wprevpro_t1_DIV_2:before{bottom:47px;box-sizing:border-box;color:#bbb;content:'\201C';display:block;height:96px;left:55px;position:absolute;right:515.391px;text-size-adjust:100%;top:20px;width:24.6094px;column-rule-color:#bbb;perspective-origin:12.2969px 48px;transform-origin:12.2969px 48px;border:0 none #bbb;font:normal normal normal normal 60px/96px Georgia,serif;margin:-25px 0 0 -40px;outline:#bbb none 0}.wprevpro_t1_P_3{box-sizing:border-box;color:#777;text-size-adjust:100%;column-rule-color:#777;perspective-origin:240px 44px;transform-origin:240px 44px;border:0 none #777;font:italic normal normal normal 14px/22.4px "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 0 5px;outline:#777 none 0}.wprevpro_t1_IMG_4{box-sizing:border-box;color:#fff;display:block;float:left;height:50px;text-size-adjust:100%;vertical-align:middle;width:50px;column-rule-color:#fff;perspective-origin:30px 30px;transform-origin:30px 30px;border:0 none #fff;border-radius:50% 50% 50% 50%!important;font:normal normal normal normal 13px/20.8px "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 20px;outline:#fff none 0}.wprevpro_t1_SPAN_5{color:#555;display:block;text-size-adjust:100%;text-transform:uppercase;overflow:hidden;padding:8px 0 0}.marginb10{margin-bottom:10px}.w3_wprs-row-padding-small{padding:0 4px}.noboxshadow{box-shadow:transparent 0 0 0 0}.wprevpro_t1_P_3>img{box-shadow:0 0 0 transparent}.wprevpro_t1_A_8>img{box-shadow:0 0;padding:0}img.wprevpro_t1_star_img_file{width:100px;height: 19px;}img.wprevpro_t1_yelp_logo{position:absolute;right:10px;bottom:2px}img.wprevpro_t1_site_logo {position: absolute;right: 2px;bottom: 2px;height: 32px;width: unset;margin-bottom: unset!important;}
.w3_wprs-responsive{overflow-x:auto}.w3_wprs-btn-bar:after,.w3_wprs-btn-bar:before,.w3_wprs-btn-group:after,.w3_wprs-btn-group:before,.w3_wprs-clear:after,.w3_wprs-container:after,.w3_wprs-panel:after,.w3_wprs-row-padding:after,.w3_wprs-row:after,.w3_wprs-topnav:after{content:"";display:table;clear:both}.w3_wprs-col,.w3_wprs-half,.w3_wprs-quarter,.w3_wprs-third,.w3_wprs-threequarter,.w3_wprs-twothird{float:left;width:100%}.w3_wprs-col.s1{width:8.33333%}.w3_wprs-col.s2{width:16.66666%}.w3_wprs-col.s3{width:24.99999%}.w3_wprs-col.s4{width:33.33333%}.w3_wprs-col.s5{width:41.66666%}.w3_wprs-col.s6{width:49.99999%}.w3_wprs-col.s7{width:58.33333%}.w3_wprs-col.s8{width:66.66666%}.w3_wprs-col.s9{width:74.99999%}.w3_wprs-col.s10{width:83.33333%}.w3_wprs-col.s11{width:91.66666%}.w3_wprs-col.s12,.w3_wprs-half,.w3_wprs-quarter,.w3_wprs-third,.w3_wprs-threequarter,.w3_wprs-twothird{width:99.99999%}@media only screen and (min-width:601px){.w3_wprs-col.m1{width:8.33333%}.w3_wprs-col.m2{width:16.66666%}.w3_wprs-col.m3,.w3_wprs-quarter{width:24.99999%}.w3_wprs-col.m4,.w3_wprs-third{width:33.33333%}.w3_wprs-col.m5{width:41.66666%}.w3_wprs-col.m6,.w3_wprs-half{width:49.99999%}.w3_wprs-col.m7{width:58.33333%}.w3_wprs-col.m8,.w3_wprs-twothird{width:66.66666%}.w3_wprs-col.m9,.w3_wprs-threequarter{width:74.99999%}.w3_wprs-col.m10{width:83.33333%}.w3_wprs-col.m11{width:91.66666%}.w3_wprs-col.m12{width:99.99999%}}@media only screen and (min-width:993px){.w3_wprs-col.l1{width:8.33333%}.w3_wprs-col.l2{width:16.66666%}.w3_wprs-col.l3,.w3_wprs-quarter{width:24.99999%}.w3_wprs-col.l4,.w3_wprs-third{width:33.33333%}.w3_wprs-col.l5{width:41.66666%}.w3_wprs-col.l6,.w3_wprs-half{width:49.99999%}.w3_wprs-col.l7{width:58.33333%}.w3_wprs-col.l8,.w3_wprs-twothird{width:66.66666%}.w3_wprs-col.l9,.w3_wprs-threequarter{width:74.99999%}.w3_wprs-col.l10{width:83.33333%}.w3_wprs-col.l11{width:91.66666%}.w3_wprs-col.l12{width:99.99999%}}.w3_wprs-content{max-width:980px;margin:auto}.w3_wprs-row-padding,.w3_wprs-row-padding>.w3_wprs-col,.w3_wprs-row-padding>.w3_wprs-half,.w3_wprs-row-padding>.w3_wprs-quarter,.w3_wprs-row-padding>.w3_wprs-third,.w3_wprs-row-padding>.w3_wprs-threequarter,.w3_wprs-row-padding>.w3_wprs-twothird{padding:0 8px}
span.wprs_rd_more {
cursor: pointer;
}
a.wprev_media_img_a{display:inline-block}img.wprev_media_img{height:50px!important;margin-right:4px;border-radius:5px;margin-bottom: 2px;}.wprev_media_div{margin-bottom:0;margin-top:10px;margin-left:0;margin-right:0}.wpproslider_t3_DIV_1a .wprev_media_div{margin:-25px 5px 34px 55px}.wpproslider_t6_DIV_2 .wprev_media_div{margin-left:10px;margin-right:10px}
.wprev_media_div {
margin-bottom: 0;
margin-top: 10px;
margin-left: 0;
margin-right: 0;
overflow: auto;
white-space: nowrap;
scrollbar-width: thin;
scrollbar-color: #e4e4e4 #ffffff;
scrollbar-gutter: auto;
}
.wprev_media_div::-webkit-scrollbar {
width: 16px;
}
.wprev_media_div::-webkit-scrollbar-track {
background-color: #e4e4e4;
border-radius: 100px;
}
.wprev_media_div::-webkit-scrollbar-thumb {
background-color: #d4aa70;
border-radius: 100px;
}
.wprs_unslider{overflow:visible;margin:0;padding:0;position:relative}.wprs_unslider-wrap{position:relative}.wprs_unslider-wrap.wprs_unslider-carousel>li{float:left}.wprs_unslider-vertical>ul{height:100%}.wprs_unslider-vertical li{float:none;width:100%}.wprs_unslider-fade{position:relative}.wprs_unslider-fade .wprs_unslider-wrap li{position:absolute;left:0;top:0;right:0;z-index:8;list-style-type:none}.wprs_unslider-fade .wprs_unslider-wrap li.wprs_unslider-active{z-index:10}.wprs_unslider li,.wprs_unslider ol,.wprs_unslider ul{list-style:none;margin:0!important;padding:0!important;border:none;list-style-type:none}.wprs_unslider-arrow{position:absolute;z-index:2;cursor:pointer}.wprs_unslider-arrow.next{left:auto;background-position-x: 52%;    background-position-y: 50%;}.wprs_unslider-arrow{display:block;width:25px;height:25px;top:50%;right:10px;left:auto;margin-top:-30px;overflow:hidden;background:rgba(0,0,0,.2) no-repeat 58% 51%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAQCAQAAABuQZ3IAAAAi0lEQVR4AU3OISBEQQBAwS0AACS9NxqQgCZpkiYBVddFvWhAAUABAPQCAGC4g/0vTnrBqCfDIZl70J+kMUBPpEwT4FNXxBxz4F1HxHyr4EVTxBLb4EFNxEon4CJSlVNw9AcV9sC16h8osgke1P1ArgXwouVvdQq86ww/GQefusNf7kBviBlxpT8k+gL/Wox4r1d4MwAAAABJRU5ErkJggg==);background-size:7px 11px;border-radius:32px;text-indent:-999em;opacity:.6;transition:opacity .2s;border-width:0!important}.wprs_unslider-arrow.prev{left:10px;right:auto;-ms-transform:rotate(-180deg);transform:rotate(-180deg);background-position-x: 52%;background-position-y: 50%;}.wprs_unslider-nav ol{list-style:none;text-align:center}.wprs_unslider-nav ol li{display:inline-block;width:9px;height:9px;margin:0 4px!important;background:0 0;border-radius:5px;overflow:hidden;text-indent:-999em;border:1px solid #c3c3c3;cursor:pointer}.wprs_unslider-nav ol li.wprs_unslider-active{background:#c3c3c3;cursor:default}
a.wprs_rd_more {
cursor: pointer;
text-decoration: none !important;
}
.wprs_unslider-wrap.wprs_unslider-carousel>li {
float: left;
margin: 0px !important;
}
span.wprs_rd_more_text {
display: none;
transition: opacity 1s;
opacity: 0;
}
.wprev-slider {
margin-left: 30px;
margin-right: 30px;
}
div.wprev-slider ul {
list-style-type: none !important;
padding: 0 0 0 0 !important;
}
.wprev-slider ul {
list-style-type: none;
}
li.wprevnextslide {
display: none;
}
img.sitetype_Google {
width:32px;
height:32px;
}
img.sitetype_Facebook {
width:32px;
height:32px;
}
span.svgicons.svg-wprsp-verified {
width: 18px;
height: 18px;
background: #a3a29e;
display: inline-block;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: contain;
-webkit-mask-position: bottom;
margin-bottom: -3px;
margin-right: 5px;
margin-left: 2px;
}
.wprevtooltip{
cursor: pointer;
}
.wprevpro_tooltip {
display: none;
position: absolute;
padding-left: 10px;
padding-right: 10px;
color: #efefef;
background-color: #000000bf;
border-radius: 3px;
font-family: sans-serif;
font-style: normal;
font-size: 10px;
line-height: 24px;
z-index: 999999;
} .wprevpro_star_imgs span.svgicons{
width: 18px;
height: 18px;
background: gold;
display: inline-block;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: contain;
-webkit-mask-position: bottom;
margin-bottom: -2px;
margin-right: 1px;
}
span.svgicons.svg-wprsp-star-full.ratingRow__star{
width: 19px;
height: 19px;
background: gold;
display: inline-block;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: contain;
-webkit-mask-position: center;
margin-bottom: 1px;
margin-right: 0px;
}
span.svgicons.svg-empty {
width: 0px !important;
height: 0px !important;
}
fieldset#wprevpro_review_rating span.svgicons{
width: 35px;
height: 35px;
display: inline-block;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: contain;
-webkit-mask-position: bottom;
margin-bottom: -2px;
margin-right: 0px;
}
li.wprevnextslide {
display: none;
}
span.wprevpro_star_imgs_T1 {
margin-right: 2px;
}
.svg-wprsp-verified{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='20' height='22' viewBox='0 0 24 24'%3E%3Cpath d='M23.016 12l-2.438-2.813 0.328-3.656-3.609-0.844-1.875-3.188-3.422 1.453-3.422-1.453-1.875 3.188-3.609 0.797 0.328 3.703-2.438 2.813 2.438 2.813-0.328 3.656 3.609 0.844 1.875 3.188 3.422-1.453 3.422 1.453 1.875-3.188 3.609-0.844-0.328-3.656zM10.078 16.734l-3.797-3.844 1.5-1.453 2.297 2.344 5.859-5.906 1.5 1.5z'%3E%3C/path%3E%3C/svg%3E%0A");
}
.svg-wprsp-star{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='20' height='22' viewBox='0 0 20 22'%3E%3Cpath d='M20.429 8.14c0 0.221-0.16 0.43-0.319 0.589l-4.456 4.346 1.056 6.138c0.012 0.086 0.012 0.16 0.012 0.246 0 0.319-0.147 0.614-0.503 0.614-0.172 0-0.344-0.061-0.491-0.147l-5.512-2.897-5.512 2.897c-0.16 0.086-0.319 0.147-0.491 0.147-0.356 0-0.516-0.295-0.516-0.614 0-0.086 0.012-0.16 0.025-0.246l1.056-6.138-4.469-4.346c-0.147-0.16-0.307-0.368-0.307-0.589 0-0.368 0.381-0.516 0.687-0.565l6.163-0.896 2.762-5.586c0.11-0.233 0.319-0.503 0.602-0.503s0.491 0.27 0.602 0.503l2.762 5.586 6.163 0.896c0.295 0.049 0.688 0.196 0.688 0.565z'%3E%3C/path%3E%3C/svg%3E%0A");
}
.svg-wprsp-star-o{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='20' height='22' viewBox='0 0 20 22'%3E%3Cpath d='M13.959 12.522l3.757-3.646-5.181-0.761-2.32-4.69-2.32 4.69-5.181 0.761 3.757 3.646-0.896 5.169 4.641-2.443 4.628 2.443zM20.429 8.14c0 0.221-0.16 0.43-0.319 0.589l-4.456 4.346 1.056 6.138c0.012 0.086 0.012 0.16 0.012 0.246 0 0.331-0.147 0.614-0.503 0.614-0.172 0-0.344-0.061-0.491-0.147l-5.512-2.897-5.512 2.897c-0.16 0.086-0.319 0.147-0.491 0.147-0.356 0-0.516-0.295-0.516-0.614 0-0.086 0.012-0.16 0.025-0.246l1.056-6.138-4.469-4.346c-0.147-0.16-0.307-0.368-0.307-0.589 0-0.368 0.381-0.516 0.687-0.565l6.163-0.896 2.762-5.586c0.11-0.233 0.319-0.503 0.602-0.503s0.491 0.27 0.602 0.503l2.762 5.586 6.163 0.896c0.295 0.049 0.688 0.196 0.688 0.565z'%3E%3C/path%3E%3C/svg%3E");
}
.svg-wprsp-star-empty{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cpath d='M22 8.53l-7.601-1.104-3.399-6.888-3.399 6.888-7.601 1.104 5.5 5.361-1.298 7.57 6.798-3.574 6.798 3.574-1.298-7.57 5.5-5.361zM11 16.188l-4.801 2.524 0.917-5.346-3.884-3.786 5.368-0.78 2.4-4.864 2.401 4.864 5.368 0.78-3.884 3.786 0.917 5.346-4.801-2.524z'%3E%3C/path%3E%3C/svg%3E");
}
.svg-wprsp-star-full{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cpath d='M22 8.53l-7.601-1.104-3.399-6.888-3.399 6.888-7.601 1.104 5.5 5.361-1.298 7.57 6.798-3.574 6.798 3.574-1.298-7.57 5.5-5.361z'%3E%3C/path%3E%3C/svg%3E%0A");
}
.svg-wprsp-star-half{
-webkit-mask-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'%3E%3Cpath d='M22 8.53l-7.601-1.104-3.399-6.888-3.399 6.888-7.601 1.104 5.5 5.361-1.298 7.57 6.798-3.574 6.798 3.574-1.298-7.57 5.5-5.361zM11 16.188l-0.020 0.011 0.020-12.263 2.401 4.864 5.368 0.78-3.884 3.786 0.917 5.346-4.801-2.524z'%3E%3C/path%3E%3C/svg%3E");
} .wprev_outer_wb {
display: flex !important;
margin-bottom: 7px;
}
.wprev_badge_div.badgeleft {
margin: 10px 5px 10px 10px !important;
}
.wprev_badge_div.badgeright {
margin: 10px 10px 10px 5px !important;
}
.wprev_outer_wb.wprev_badge_style6_side {
align-items: flex-start !important;
}
.wprev_outer_wb.wprev_badge_style6_side .wprev_badge_div.badgeleft,
.wprev_outer_wb.wprev_badge_style6_side .wprev_badge_div.badgeright {
margin-top: 0px !important;
margin-bottom: 0px !important;
}
.wprev_outer_wb.wprev_badge_style6_side .wprevpro_t6_outer_div {
margin-top: 0 !important;
margin-bottom: 0 !important;
}
.wprev-google-place {
display: flex !important;
padding: 8px 12px !important;
box-shadow: rgba(0, 0, 0, .08) 2px 2px 3px 0px !important;
border: 1px solid #f5f5f5 !important;
}
.wprev-google-left {
padding: 10px 8px 10px 5px !important;
}
.wprev-google-right {
padding: 3px !important;
}
.wprev-google-right div {
line-height: 24px !important;
font-size: 15px !important;
width: max-content !important;
}
.wprev-google-name {
font-weight: bold !important;
}
.wprev-google-place a {
text-decoration: none !important;
}
a.wprev-google-wr-a {
color: #fff !important;
padding: 3px 8px 5px !important;
outline: none !important;
border-radius: 3px !important;
background: #0a6cff !important;
white-space: nowrap !important;
vertical-align: middle !important;
box-shadow: 0 0 2px rgba(0, 0, 0, .12), 0 2px 4px rgba(0, 0, 0, .24) !important;
user-select: none !important;
transition: all .2s ease-in-out !important;
display: flex !important;
align-items: center !important;
width: fit-content !important;
}
a.wprev-google-wr-a:hover {
background: #0a6cffc7 !important;
}
.wprev-google-wr {
margin: 12px 0px 6px !important;
}
a.wprev-google-wr-a svg {
margin-left: 5px !important;
margin-top: 3px !important;
}
span.wprev-google-rating {
font-size: 18px !important;
margin-right: 5px !important;
font-weight: 500 !important;
}
span.wprev_btot {
font-weight: 600 !important;
}
.badgehideclass {
display:none !important;
}
.sprev-google-left-src {
border-radius: 5% !important;
min-width: 50px !important;
min-height: 50px !important;
display:block;
}
span.wprev-businessname {
font-size: 15px !important;
color: #373737 !important;
font-weight: 600 !important;
}
img.wprev-google-powered-img {
vertical-align: middle !important;
}
@media only screen and (max-width: 600px) {
.wprev_outer_wb {
flex-wrap: wrap;
}
.wprev_badge_div.badgeleft {
margin: 10px 10px 10px 10px !important;
width: -webkit-fill-available;
}
.wprev_outer_wb .wprs_unslider {
max-width: -webkit-fill-available;
}
.wprev_badge_div.badgeright {
width: -webkit-fill-available;
}
}
.wprev_missing_image{
display:none;
}
a.wprev_media_img_a,
a.wprev_media_img_a:hover,
a.wprev_media_img_a:active,
a.wprev_media_img_a:focus,
a.wprev_media_img_a:focus-visible {
border: none !important;
outline: none !important;
box-shadow: none !important;
color: inherit;
text-decoration: none;
}
a.wprev_media_img_a img.wprev_media_img,
a.wprev_media_img_a:hover img.wprev_media_img,
a.wprev_media_img_a:active img.wprev_media_img,
a.wprev_media_img_a:focus img.wprev_media_img,
a.wprev_media_img_a:focus-visible img.wprev_media_img {
border: none !important;
outline: none !important;
box-shadow: none !important;
} .t6datediv,.wpproslider_t6_SPAN_6{font-style:italic}
.wpproslider_t6_DIV_2,.wpproslider_t6_DIV_3,.wpproslider_t6_IMG_2{box-sizing:border-box;column-rule-color:#fff;outline:#fff none 0}
.wprevpro_t6_outer_div_widget{padding:0;margin:15px -10px}
.wprevpro_t6_outer_div{padding:0 10px;margin:15px -10px}
.wpproslider_t6_DIV_1{margin-top:10px;margin-bottom:10px}
.wpproslider_t6_DIV_1a{margin-left:10px;margin-right:10px}
.wpproslider_t6_DIV_2{color:#fff;background:#fdfdfd;border:1px solid #eee;border-radius:0 0 4px 4px;transition:all .4s ease-in-out 0s;padding:5px;position:relative}
.wpproslider_t6_IMG_2{color:#fff;height:60px;vertical-align:middle;width:60px;border:0;border-radius:50%!important}
.wpproslider_t6_DIV_3{border:0;overflow:hidden;margin-left:10px;min-height:80px}
.wpproslider_t6_P_4,.wpproslider_t6_SPAN_6,.wpproslider_t6_STRONG_5{box-sizing:border-box;color:#555;border:0;outline:none 0}
.wpproslider_t6_P_4{margin:0 15px 10px!important}
.wpproslider_t6_STRONG_5{font-weight:700}
.wpproslider_t6_DIV_3L{float:left;text-align:center;overflow:hidden;margin-right:10px;margin-left:10px;margin-top:10px}
.wpproslider_t6_DIV_2_top{width:auto;position:relative;margin-left:5px}
.wpproslider_t6_DIV_3_logo{position:absolute;top:4px;right:4px}
img.wprevpro_t6_site_logo{margin:0;padding:0;height:32px}
.t6displayname{margin-top:5px;font-size:medium;margin-bottom:0;padding-right:30px}
.wpproslider_t6_star_DIV{line-height:1em;margin-top:1px;margin-bottom:1px;margin-bottom:0px}
.wpproslider_t6_P_4{margin-left:10px}
.wpproslider_t6_DIV_4{margin:4px 6px}
.wpproslider_t6_DIV_2 .wprev_media_div{margin-left:10px;margin-right:10px}.wpcf7 .screen-reader-response {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
padding: 0;
border: 0;
word-wrap: normal !important;
word-break: normal !important;
}
.wpcf7 .hidden-fields-container {
display: none;
}
.wpcf7 form .wpcf7-response-output {
margin: 2em 0.5em 1em;
padding: 0.2em 1em;
border: 2px solid #00a0d2; }
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
border-color: #46b450; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
border-color: #dc3232; }
.wpcf7 form.spam .wpcf7-response-output {
border-color: #f56e28; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
border-color: #ffb900; }
.wpcf7-form-control-wrap {
position: relative;
}
.wpcf7-not-valid-tip {
color: #dc3232; font-size: 1em;
font-weight: normal;
display: block;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
position: relative;
top: -2ex;
left: 1em;
z-index: 100;
border: 1px solid #dc3232;
background: #fff;
padding: 0.2em 0.8em;
width: 24em;
}
.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
content: " ";
}
.wpcf7-spinner {
visibility: hidden;
display: inline-block;
background-color: #23282d; opacity: 0.75;
width: 24px;
height: 24px;
border: none;
border-radius: 100%;
padding: 0;
margin: 0 24px;
position: relative;
}
form.submitting .wpcf7-spinner {
visibility: visible;
}
.wpcf7-spinner::before {
content: "";
position: absolute;
background-color: #fbfbfc; top: 4px;
left: 4px;
width: 6px;
height: 6px;
border: none;
border-radius: 100%;
transform-origin: 8px 8px;
animation-name: spin;
animation-duration: 1000ms;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
.wpcf7-spinner::before {
animation-name: blink;
animation-duration: 2000ms;
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes blink {
from {
opacity: 0;
}
50% {
opacity: 1;
}
to {
opacity: 0;
}
}
.wpcf7 [inert] {
opacity: 0.5;
}
.wpcf7 input[type="file"] {
cursor: pointer;
}
.wpcf7 input[type="file"]:disabled {
cursor: default;
}
.wpcf7 .wpcf7-submit:disabled {
cursor: not-allowed;
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
direction: ltr;
}
.wpcf7-reflection > output {
display: list-item;
list-style: none;
}
.wpcf7-reflection > output[hidden] {
display: none;
}.tfv-disenador {
display: flex;
flex-wrap: nowrap;
align-items: stretch; width: 100%;
min-height: 0; --tfv-map-h: 640px;
--tfv-map-h: max(520px, min(640px, calc(100vh - 300px)));
border: 1px solid #e0e0e0;
border-radius: 8px;
overflow: visible; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
background: #fff;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
} .tfv-sidebar {
width: 460px; min-width: 400px;
max-width: 520px;
display: flex;
flex-direction: column;
border-right: 1px solid #e0e0e0;
background: #fafafa;
height: auto; max-height: var(--tfv-map-h);
min-height: 520px; min-height: min(520px, var(--tfv-map-h));
overflow-y: auto;
overflow-x: hidden;
overscroll-behavior: contain; padding-bottom: 28px;
scroll-padding-bottom: 28px;
}
.tfv-sidebar-header {
padding: 20px;
border-bottom: 1px solid #e0e0e0;
background: #fff;
}
.tfv-sidebar-title {
margin: 0;
font-size: 20px;
font-weight: 600;
color: #1a1a1a;
line-height: 1.3;
} .tfv-search-section {
padding: 20px;
border-bottom: 1px solid #e0e0e0;
background: #fff;
}
.tfv-label {
display: block;
margin-bottom: 8px;
font-size: 14px;
font-weight: 500;
color: #333;
}
.tfv-search-wrapper {
position: relative;
display: flex;
align-items: center;
}
.tfv-search-input {
width: 100%;
padding: 10px 40px 10px 14px;
font-size: 15px;
border: 1px solid #d0d0d0;
border-radius: 6px;
outline: none;
transition: border-color 0.2s, box-shadow 0.2s;
background: #fff;
color: #333;
}
.tfv-search-input:focus {
border-color: #2e7d32;
box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.15);
}
.tfv-search-input::placeholder {
color: #999;
}
.tfv-search-icon {
position: absolute;
right: 12px;
font-size: 16px;
color: #999;
pointer-events: none;
}
.tfv-search-hint {
margin: 8px 0 0;
font-size: 12px;
color: #999;
line-height: 1.4;
} .tfv-controls-placeholder {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
padding: 30px 20px;
}
.tfv-placeholder-text {
font-size: 13px;
color: #aaa;
text-align: center;
font-style: italic;
line-height: 1.5;
} .tfv-map-container {
flex: 1;
position: relative;
min-width: 0; background: #e8eaed; } .tfv-map-pane {
flex: 1;
min-width: 0;
display: flex;
flex-direction: column;
overflow: visible; }
.tfv-map-pane .tfv-map-container {
flex: none; height: var(--tfv-map-h); min-height: 0;
} .tfv-tilt-output {
padding: 12px 12px 16px;
background: #fff;
border-top: 1px solid #e0e0e0;
flex: 0 0 auto; }
.tfv-tilt-output-empty {
font-size: 13px;
color: #888;
}
.tfv-map-loading {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background: #e8eaed;
z-index: 1;
}
.tfv-map-container.tfv-map-loaded .tfv-map-loading {
display: none;
}
.tfv-spinner {
display: inline-block;
width: 40px;
height: 40px;
border: 3px solid #e0e0e0;
border-top-color: #2e7d32;
border-radius: 50%;
animation: tfv-spin 0.8s linear infinite;
}
@keyframes tfv-spin {
to {
transform: rotate(360deg);
}
}
.tfv-map-loading p {
margin-top: 12px;
color: #666;
font-size: 14px;
} .pac-container {
border-radius: 0 0 6px 6px;
border: 1px solid #d0d0d0;
border-top: none;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
z-index: 9999 !important;
}
.pac-item {
padding: 10px 14px;
font-size: 14px;
cursor: pointer;
}
.pac-item:hover {
background-color: #f0f9f0;
}
.pac-item-selected {
background-color: #e8f5e9;
}
.pac-icon {
margin-right: 10px;
}
.pac-item-query {
font-size: 15px;
color: #222;
}
.pac-matched {
font-weight: 600;
} .tfv-cta-section {
padding: 20px;
border-top: 1px solid #e0e0e0;
background: #fff;
display: flex;
flex-direction: column;
gap: 10px; } #tfv-inverter-modal-dialog {
max-height: calc(100vh - 60px);
overflow-y: auto;
} .tfv-sidebar,
#tfv-inverter-modal-dialog {
scrollbar-gutter: stable;
}
@supports selector(::-webkit-scrollbar) {
.tfv-sidebar::-webkit-scrollbar,
#tfv-inverter-modal-dialog::-webkit-scrollbar {
width: 16px;
height: 16px;
}
.tfv-sidebar::-webkit-scrollbar-track,
#tfv-inverter-modal-dialog::-webkit-scrollbar-track {
background: #eceff1;
border-radius: 8px;
}
.tfv-sidebar::-webkit-scrollbar-thumb,
#tfv-inverter-modal-dialog::-webkit-scrollbar-thumb {
background: #9aa0a6;
border: 2px solid #eceff1;
border-radius: 8px;
background-clip: padding-box;
}
.tfv-sidebar::-webkit-scrollbar-thumb:hover,
#tfv-inverter-modal-dialog::-webkit-scrollbar-thumb:hover {
background: #6b7280;
border-color: #eceff1;
background-clip: padding-box;
}
}
@supports not selector(::-webkit-scrollbar) {
.tfv-sidebar,
#tfv-inverter-modal-dialog {
scrollbar-width: auto;
scrollbar-color: #9aa0a6 #eceff1;
}
} body.tfv-disenador-active .container,
body.tfv-disenador-active .container_inner,
body:has(.tfv-disenador) .container,
body:has(.tfv-disenador) .container_inner {
overflow-x: clip !important;
} @media (min-width: 769px) and (min-height: 950px) {
body:has(#gdpr-cookie-consent-bar:not([style*="display: none"])) .tfv-disenador {
--tfv-map-h: 640px;
--tfv-map-h: max(520px, min(640px, calc(100vh - 480px))); }
}
.tfv-cta-summary {
font-size: 13px;
color: #666;
margin: 0 0 5px;
text-align: center;
line-height: 1.4;
}
.tfv-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
padding: 12px 20px;
font-size: 15px;
font-weight: 600;
border: none;
border-radius: 8px;
cursor: pointer;
transition: background-color 0.2s, transform 0.1s, box-shadow 0.2s;
text-align: center;
width: 100%;
}
.tfv-btn:active {
transform: scale(0.98);
}
.tfv-btn:disabled {
opacity: 0.6;
cursor: not-allowed;
}
.tfv-btn-primary {
background: #2e7d32;
color: #fff;
}
.tfv-btn-primary:hover:not(:disabled) {
background: #256b28;
box-shadow: 0 2px 8px rgba(46, 125, 50, 0.28);
}
.tfv-btn-secondary {
background: #f3f4f6;
color: #374151;
border: 1px solid #d1d5db;
}
.tfv-btn-secondary:hover:not(:disabled) {
background: #e5e7eb;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
} .tfv-modal-overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 100000;
display: flex;
align-items: center;
justify-content: center;
padding: 20px;
}
.tfv-modal {
background: #fff;
border-radius: 12px;
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
width: 100%;
max-width: 480px;
max-height: 90vh;
overflow-y: auto;
animation: tfv-modal-in 0.25s ease-out;
}
@keyframes tfv-modal-in {
from {
opacity: 0;
transform: translateY(-20px) scale(0.95);
}
to {
opacity: 1;
transform: translateY(0) scale(1);
}
}
.tfv-modal-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 24px 0;
}
.tfv-modal-header h3 {
margin: 0;
font-size: 18px;
font-weight: 600;
color: #1a1a1a;
}
.tfv-modal-close {
background: none;
border: none;
font-size: 28px;
color: #999;
cursor: pointer;
padding: 0;
line-height: 1;
transition: color 0.15s;
}
.tfv-modal-close:hover {
color: #333;
}
.tfv-modal-body {
padding: 16px 24px;
}
.tfv-modal-description {
font-size: 14px;
color: #666;
margin: 0 0 16px;
line-height: 1.5;
}
.tfv-modal-footer {
display: flex;
gap: 10px;
padding: 0 24px 20px;
}
.tfv-modal-footer .tfv-btn {
width: auto;
flex: 1;
padding: 10px 16px;
font-size: 14px;
} .tfv-form-row {
margin-bottom: 14px;
}
.tfv-form-label {
display: block;
margin-bottom: 4px;
font-size: 13px;
font-weight: 500;
color: #333;
}
.tfv-form-input {
width: 100%;
padding: 10px 12px;
font-size: 14px;
border: 1px solid #d0d0d0;
border-radius: 6px;
outline: none;
transition: border-color 0.2s, box-shadow 0.2s;
background: #fff;
color: #333;
box-sizing: border-box;
}
.tfv-form-input:focus {
border-color: #2e7d32;
box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.1);
}
.tfv-form-error {
display: none;
font-size: 12px;
color: #dc2626;
margin-top: 4px;
}
.tfv-form-consent {
margin: 16px 0;
}
.tfv-checkbox-label {
display: flex;
align-items: flex-start;
gap: 8px;
font-size: 13px;
color: #666;
cursor: pointer;
line-height: 1.4;
}
.tfv-checkbox-label input[type="checkbox"] {
margin-top: 2px;
flex-shrink: 0;
} .tfv-modal-feedback {
padding: 10px 14px;
border-radius: 6px;
font-size: 13px;
font-weight: 500;
line-height: 1.4;
margin-top: 8px;
}
.tfv-feedback-success {
background: #ecfdf5;
color: #065f46;
border: 1px solid #a7f3d0;
}
.tfv-feedback-error {
background: #fef2f2;
color: #991b1b;
border: 1px solid #fecaca;
} .tfv-roof-section {
padding: 16px 20px;
border-bottom: 1px solid #e0e0e0;
background: #fff;
}
.tfv-section-title {
margin: 0 0 12px 0;
font-size: 15px;
font-weight: 600;
color: #333;
}
.tfv-control-group {
margin-bottom: 16px;
}
.tfv-control-group:last-child {
margin-bottom: 0;
}
.tfv-btn-group {
display: flex;
gap: 6px;
margin-top: 6px;
}
.tfv-btn-tool {
flex: 1;
padding: 8px 12px;
font-size: 13px;
border: 1px solid #d0d0d0;
border-radius: 4px;
background: #f5f5f5;
color: #333;
cursor: pointer;
transition: all 0.15s ease;
white-space: nowrap;
}
.tfv-btn-tool:hover {
background: #e8e8e8;
border-color: #bbb;
}
.tfv-btn-tool:disabled {
opacity: 0.7;
cursor: not-allowed;
}
.tfv-hint {
margin: 6px 0 0 0;
font-size: 12px;
color: #777;
line-height: 1.4;
} .tfv-panel-filters {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 6px 8px;
margin: 6px 0 8px;
}
.tfv-panel-filter {
display: flex;
flex-direction: column;
gap: 2px;
font-size: 11px;
color: #555;
min-width: 0;
}
.tfv-panel-filter > span {
font-weight: 500;
}
.tfv-select-sm {
font-size: 12px;
padding: 3px 4px;
}
.tfv-panel-wp-input {
width: 100%;
box-sizing: border-box;
font-size: 12px;
padding: 3px 6px;
border: 1px solid #ccc;
border-radius: 4px;
}
.tfv-panel-wp-reset {
grid-column: 1 / -1;
justify-self: start;
font-size: 11px;
padding: 0;
background: none;
border: 0;
color: #2e7d32;
cursor: pointer;
text-decoration: underline;
}
.tfv-panel-wp-reset:hover {
color: #1b5e20;
} .tfv-slider-row {
margin-bottom: 12px;
}
.tfv-slider-row label {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 13px;
font-weight: 500;
color: #444;
margin-bottom: 4px;
}
.tfv-slider-row label span {
font-weight: 600;
color: #1e8e3e;
min-width: 40px;
text-align: right;
}
.tfv-slider-row input[type="range"] {
width: 100%;
height: 6px;
margin: 0; -webkit-appearance: none;
appearance: none;
background: #ddd;
border-radius: 3px;
outline: none;
cursor: pointer;
}
.tfv-slider-row input[type="range"]::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 18px;
height: 18px;
border-radius: 50%;
background: #2e7d32;
cursor: pointer;
border: 2px solid #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.tfv-slider-row input[type="range"]::-moz-range-thumb {
width: 18px;
height: 18px;
border-radius: 50%;
background: #2e7d32;
cursor: pointer;
border: 2px solid #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}  .tfv-summary-box {
padding: 12px 16px;
background: #f0f9f0;
border: 1px solid #cfe8d4;
border-radius: 6px;
margin-top: 12px;
}
.tfv-summary-row {
display: flex;
justify-content: space-between;
align-items: center;
padding: 4px 0;
font-size: 13px;
color: #444;
}
.tfv-summary-row strong {
color: #1e8e3e;
font-size: 14px;
}
.tfv-summary-row + .tfv-summary-row {
border-top: 1px solid #cfe8d4;
} .tfv-radio-group {
display: flex;
gap: 16px;
margin-top: 4px;
}
.tfv-radio-label {
display: flex;
align-items: center;
gap: 6px;
font-size: 13px;
font-weight: 500;
color: #444;
cursor: pointer;
}
.tfv-radio-label input[type="radio"] {
accent-color: #2e7d32;
width: 16px;
height: 16px;
}
.tfv-idae-result {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 12px;
background: #fff3cd;
border: 1px solid #ffc107;
border-radius: 4px;
margin-top: 8px;
}
.tfv-idae-label {
font-size: 12px;
color: #856404;
}
.tfv-idae-value {
font-size: 16px;
color: #856404;
} .tfv-slider-row.disabled-slider {
opacity: 0.5;
pointer-events: none;
}
.tfv-slider-row.disabled-slider input[type="range"] {
background: #ccc;
} .tfv-orientation-group,
.tfv-angle-group {
margin-top: 2px;
}
.tfv-orientation-group .tfv-hint,
.tfv-angle-group .tfv-hint {
font-size: 11px;
color: #777;
margin: 4px 0 0;
line-height: 1.4;
}
.tfv-slider-row .tfv-hint {
font-size: 11px;
color: #777;
margin: 2px 0 0;
line-height: 1.4;
} .tfv-pvgis-section {
padding: 12px 16px;
border-top: 1px solid #e0e0e0;
background: #f8fdf8;
}
.tfv-pvgis-section .tfv-section-title {
font-size: 14px;
font-weight: 600;
color: #1a1a1a;
margin: 0 0 6px;
}
.tfv-pvgis-section .tfv-hint {
font-size: 11px;
color: #777;
margin: 0 0 10px;
line-height: 1.4;
}
.tfv-pvgis-section .tfv-btn {
margin-bottom: 6px;
} .tfv-pvgis-params {
padding: 8px 0;
margin-bottom: 8px;
border-bottom: 1px dashed #dde;
}
.tfv-pvgis-params .tfv-slider-row {
margin-bottom: 8px;
}
.tfv-pvgis-params .tfv-slider-row:last-child {
margin-bottom: 0;
}
.tfv-pvgis-params .tfv-slider-row label {
font-size: 12px;
font-weight: 500;
color: #444;
} .tfv-pvgis-locked {
opacity: 0.65;
pointer-events: none;
}
.tfv-pvgis-locked input[type="range"] {
background: #dde;
cursor: not-allowed;
}
.tfv-pvgis-lock-icon {
font-size: 11px;
margin-left: 4px;
opacity: 0.7;
} .tfv-btn-sm {
font-size: 12px;
padding: 4px 10px;
width: auto;
display: inline-block;
} .tfv-btn-active {
background-color: #ff9800 !important;
border-color: #e68900 !important;
color: #fff !important;
} .tfv-panel-draggable {
cursor: grab;
}
.tfv-panel-dragging {
cursor: grabbing;
}
.tfv-pvgis-params .tfv-slider-row input[type="range"] {
width: 100%;
margin-top: 2px;
accent-color: #2e7d32;
}
.tfv-pvgis-actions {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 4px;
}
.tfv-spinner-sm {
display: inline-block;
width: 16px;
height: 16px;
border: 2px solid #d1d5db;
border-top-color: #2e7d32;
border-radius: 50%;
animation: tfv-spin 0.6s linear infinite;
margin-left: 8px;
vertical-align: middle;
}
.tfv-pvgis-status {
font-size: 12px;
color: #666;
margin: 4px 0;
min-height: 18px;
}
.tfv-pvgis-results {
margin-top: 12px;
}
.tfv-pvgis-annual,
.tfv-pvgis-specific,
.tfv-pvgis-areas-total {
display: flex;
justify-content: space-between;
align-items: center;
padding: 6px 0;
border-bottom: 1px solid #e8ede8;
} .tfv-pvgis-areas-total {
margin-top: 10px;
padding-top: 10px;
border-top: 1px solid #e8ede8;
border-bottom: none;
}
.tfv-pvgis-label {
font-size: 12px;
color: #555;
}
.tfv-pvgis-value {
font-size: 14px;
color: #1e8e3e;
}
.tfv-pvgis-table-wrapper {
max-height: 220px;
overflow-y: auto;
margin-top: 8px;
}
.tfv-pvgis-table {
width: 100%;
border-collapse: collapse;
font-size: 11px;
}
.tfv-pvgis-table th {
background: #e8f5e9;
color: #2e7d32;
font-weight: 600;
padding: 4px 6px;
text-align: center;
position: sticky;
top: 0;
z-index: 1;
}
.tfv-pvgis-table td {
padding: 3px 6px;
text-align: center;
border-bottom: 1px solid #f0f0f0;
color: #444;
}
.tfv-pvgis-table tbody tr:nth-child(even) {
background: #f9fdf9;
}
.tfv-pvgis-table tbody tr:hover {
background: #e8f5e9;
} .tfv-panel-selector-group {
margin-bottom: 10px;
padding-bottom: 8px;
border-bottom: 1px dashed #dde;
}
.tfv-panel-selector-group .tfv-label {
font-size: 12px;
font-weight: 500;
color: #444;
margin-bottom: 4px;
}
.tfv-select {
width: 100%;
padding: 6px 8px;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 12px;
color: #333;
background: #fff;
cursor: pointer;
max-width: 100%;
box-sizing: border-box;
}
.tfv-select:focus {
border-color: #2e7d32;
outline: none;
box-shadow: 0 0 0 2px rgba(46, 125, 50, 0.15);
}
.tfv-panel-selector-group .tfv-hint {
font-size: 11px;
color: #888;
margin: 4px 0 0;
line-height: 1.3;
} .tfv-individual-rotation {
background: #e8f5e9;
border: 1px solid #2e7d32;
border-radius: 6px;
padding: 10px 12px;
margin-bottom: 12px;
}
.tfv-individual-rotation .tfv-label {
color: #1b5e20;
font-weight: 600;
font-size: 13px;
margin-bottom: 4px;
}
.tfv-individual-rotation .tfv-hint {
font-size: 11px;
color: #00838f;
margin: 2px 0 8px;
line-height: 1.4;
}
.tfv-individual-rotation .tfv-slider-row {
margin-bottom: 4px;
}
.tfv-individual-rotation .tfv-slider-row label {
font-size: 12px;
font-weight: 500;
color: #006064;
}
.tfv-individual-rotation .tfv-slider-row input[type="range"] {
width: 100%;
margin-top: 2px;
accent-color: #00acc1;
}  .tfv-btn-group-col {
display: flex;
flex-direction: column;
gap: 6px;
margin-bottom: 8px;
}
.tfv-manual-btn {
width: 100%;
justify-content: center;
font-size: 12px;
padding: 7px 10px;
}
.tfv-manual-status {
font-size: 12px;
color: #1b5e20;
background: #c8e6c9;
padding: 6px 8px;
border-radius: 4px;
margin: 8px 0;
line-height: 1.4;
}
.tfv-btn-secondary {
background: #fff;
color: #333;
border: 2px solid #43a047;
font-weight: 600;
}
.tfv-btn-secondary:hover {
background: #e8f5e9;
border-color: #2e7d32;
} .tfv-lat-display {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 10px;
margin-top: 4px;
background: #e8f5e9;
border: 1px solid #a5d6a7;
border-radius: 4px;
font-size: 12px;
color: #2e7d32;
}
.tfv-lat-display strong {
font-size: 13px;
font-weight: 700;
color: #1b5e20;
}
.tfv-gps-display {
background: #e8f5e9;
border-color: #a5d6a7;
color: #1b5e20;
margin-bottom: 6px;
}
.tfv-gps-display strong {
color: #0a3d0a;
} .tfv-calc-section {
border-top: 1px solid #e0e0e0;
background: #fafafa;
}
.tfv-calc-toggle {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
padding: 10px 16px;
background: #f5f0e8;
border: none;
border-bottom: 1px solid #e0d8c8;
cursor: pointer;
font-size: 13px;
font-weight: 600;
color: #5d4e37;
text-align: left;
transition: background 0.2s;
}
.tfv-calc-toggle:hover {
background: #ede0cc;
}
.tfv-calc-arrow {
font-size: 10px;
transition: transform 0.2s;
}
.tfv-calc-arrow.open {
transform: rotate(90deg);
}
.tfv-calc-body {
padding: 8px 12px;
max-height: 420px;
overflow-y: auto;
}
.tfv-calc-subsection {
margin-bottom: 10px;
border: 1px solid #e8e8e8;
border-radius: 4px;
background: #fff;
overflow: hidden;
}
.tfv-calc-subtitle {
margin: 0;
padding: 6px 10px;
background: #f9f9f9;
border-bottom: 1px solid #eee;
font-size: 11px;
font-weight: 700;
color: #444;
}
.tfv-calc-table {
width: 100%;
border-collapse: collapse;
font-size: 11px;
}
.tfv-calc-table td {
padding: 3px 8px;
border-bottom: 1px solid #f4f4f4;
color: #333;
}
.tfv-calc-table td:first-child {
width: 55%;
color: #666;
font-weight: 500;
}
.tfv-calc-table td:last-child {
font-weight: 600;
color: #1a1a1a;
text-align: right;
font-family: 'Consolas', 'Monaco', monospace;
}
.tfv-calc-empty {
text-align: center !important;
color: #999 !important;
font-style: italic;
padding: 8px !important;
font-family: inherit !important;
}
.tfv-calc-highlight {
color: #e65100 !important;
font-weight: 700 !important;
} @media (max-width: 768px) {
.tfv-disenador {
flex-direction: column;
height: auto; min-height: auto;
--tfv-map-h: 640px; }
.tfv-sidebar {
width: 100%;
min-width: 0; max-width: none;
border-right: none;
border-bottom: 1px solid #e0e0e0;
max-height: none; }
.tfv-map-container {
min-height: 400px;
}
} .tfv-ahorro-section {
margin-top: 14px;
padding: 12px;
border: 1px solid #e8e8e8;
border-radius: 8px;
background: #fff;
}
.tfv-ahorro-block {
margin-top: 10px;
border: 1px solid #e8e8e8;
border-radius: 6px;
overflow: hidden;
}
.tfv-ahorro-block .tfv-calc-subtitle {
margin-bottom: 0;
}
.tfv-ahorro-field {
padding: 6px 10px;
}
.tfv-ahorro-field label {
display: block;
font-size: 11px;
color: #444;
margin-bottom: 4px;
}
.tfv-ahorro-field input {
width: 100%;
padding: 5px 8px;
border: 1px solid #ccc;
border-radius: 6px;
font-size: 12px;
box-sizing: border-box;
}
.tfv-ahorro-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 4px 8px;
padding: 4px 0 6px 0;
}
.tfv-ahorro-results {
margin-top: 10px;
padding: 10px;
border-radius: 6px;
background: #f0f9f0;
border: 1px solid #cfe8d4;
font-size: 12px;
line-height: 1.6;
color: #2e7d32;
}
.tfv-ahorro-results strong {
color: #1b5e20;
} .tfv-ahorro-compare {
margin-top: 12px;
padding: 10px;
border-radius: 6px;
background: #fbfaf3;
border: 1px solid #e8e0c8;
font-size: 11px;
color: #3a3325;
}
.tfv-ahorro-cmp-title {
font-weight: 600;
color: #6b5a1f;
margin-bottom: 6px;
}
.tfv-ahorro-cmp-table {
width: 100%;
border-collapse: collapse;
font-size: 10.5px;
}
.tfv-ahorro-cmp-table th,
.tfv-ahorro-cmp-table td {
padding: 4px 5px;
text-align: left;
border-bottom: 1px solid #ece5d0;
}
.tfv-ahorro-cmp-table th {
font-size: 9.5px;
text-transform: uppercase;
letter-spacing: .4px;
color: #8a7a4a;
}
.tfv-ahorro-cmp-num {
text-align: right;
white-space: nowrap;
font-variant-numeric: tabular-nums;
}
.tfv-ahorro-cmp-current {
background: #eef7ee;
}
.tfv-ahorro-cmp-badge {
display: inline-block;
font-size: 8.5px;
background: #2e7d32;
color: #fff;
border-radius: 3px;
padding: 0 4px;
margin-left: 2px;
vertical-align: middle;
}
.tfv-ahorro-cmp-warn {
cursor: help;
}
#tfv-ahorro-pick-best {
margin-top: 8px;
} .tfv-ahorro-source {
background: #f6f8fb;
border-left: 3px solid #94a3b8;
padding: 6px 8px;
margin: 4px 10px 8px 10px;
border-radius: 0 6px 6px 0;
font-size: 10.5px;
line-height: 1.35;
}
.tfv-ahorro-subblock {
border-top: 1px dashed #e2e8f0;
padding-top: 6px;
margin-top: 6px;
}
.tfv-ahorro-subblock:first-of-type {
border-top: 0;
margin-top: 0;
}
.tfv-ahorro-subtitle {
font-size: 11.5px;
font-weight: 600;
color: #2e7d32;
margin: 2px 10px 2px 10px;
}
.tfv-ahorro-tax-hint {
padding: 4px 10px 6px 10px;
font-style: italic;
}
.tfv-ahorro-bills {
margin: 4px 0;
padding: 6px 8px;
background: #f1f5f9;
border-radius: 6px;
}
.tfv-hint-inline {
font-size: 9.5px;
color: #64748b;
} .tfv-ahorro-refresh-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
margin-top: 8px;
padding-top: 6px;
border-top: 1px solid #e2e8f0;
}
.tfv-ahorro-refresh-row .tfv-btn {
width: auto;
white-space: nowrap;
}
.tfv-ahorro-updated-at {
font-size: 9.5px;
color: #64748b;
}
.tfv-ahorro-note {
margin: 8px 0 0 0;
padding-top: 6px;
border-top: 1px dashed #e2e8f0;
font-size: 9.5px;
line-height: 1.35;
color: #64748b;
} .tfv-ahorro-profile-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
.tfv-ahorro-profile-summary {
flex: 1;
font-size: 12px;
color: #2e7d32;
font-weight: 600;
line-height: 1.3;
}
.tfv-ahorro-profile-row .tfv-btn {
flex: 0 0 auto;
width: auto;
white-space: nowrap;
} .tfv-modal.tfv-modal-wide {
max-width: 720px;
}
.tfv-ahorro-presets {
display: flex;
flex-wrap: wrap;
gap: 6px;
margin-bottom: 12px;
}
.tfv-ahorro-presets .tfv-preset-btn {
width: auto;
flex: 0 1 auto;
font-size: 12px;
padding: 6px 10px;
background: #f5f6f8;
color: #2c3e50;
border: 1px solid #d9dde3;
}
.tfv-ahorro-presets .tfv-preset-btn:hover {
background: #eceff3;
}
.tfv-ahorro-presets .tfv-preset-btn.is-active {
background: #e8f5e9;
border-color: #2e7d32;
color: #1b5e20;
font-weight: 700;
}
.tfv-ahorro-perfil-chart {
width: 100%;
height: 220px;
border: 1px solid #e5e7eb;
border-radius: 10px;
overflow: hidden;
background: #fff;
margin-bottom: 12px;
}
.tfv-ahorro-profile-sliders {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 8px;
max-height: 340px;
overflow-y: auto;
padding-right: 2px;
}
.tfv-ahorro-slider-cell {
border: 1px solid #e5e7eb;
border-radius: 10px;
padding: 6px 8px;
background: #fff;
}
.tfv-ahorro-slider-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 4px;
margin-bottom: 4px;
}
.tfv-ahorro-slider-hour {
font-size: 11px;
color: #111827;
font-weight: 600;
}
.tfv-ahorro-slider-pct {
font-size: 10px;
color: #6b7280;
}
.tfv-ahorro-profile-sliders input[type="range"] {
width: 100%;
margin: 0;
accent-color: #2e7d32;
} .tfv-ahorro-month-line {
margin-top: 2px;
}
.tfv-ahorro-month-block {
margin-top: 14px;
padding: 10px 12px;
border: 1px solid #e5e7eb;
border-radius: 10px;
background: #fbfcfe;
}
.tfv-ahorro-month-title {
margin: 0 0 4px 0;
font-size: 12px;
font-weight: 700;
color: #2e7d32;
}
.tfv-ahorro-month-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 8px;
margin: 8px 0;
}
.tfv-ahorro-month-cell {
display: flex;
flex-direction: column;
gap: 2px;
border: 1px solid #e5e7eb;
border-radius: 8px;
padding: 5px 7px;
background: #fff;
}
.tfv-ahorro-month-label {
font-size: 10px;
font-weight: 600;
color: #374151;
}
.tfv-ahorro-month-cell input[type="number"] {
width: 100%;
padding: 2px 4px;
font-size: 12px;
border: 1px solid #d9dde3;
border-radius: 6px;
}
.tfv-ahorro-month-pct {
font-size: 10px;
color: #6b7280;
}
.tfv-ahorro-month-note {
margin: 4px 0 8px 0;
font-size: 10px;
line-height: 1.35;
color: #64748b;
}
.tfv-ahorro-month-note.is-warn {
color: #b45309;
font-weight: 600;
} .tfv-ahorro-month-tabs {
display: flex;
flex-wrap: wrap;
gap: 4px;
margin: 10px 0 6px;
}
.tfv-ahorro-month-tabs .tfv-month-tab {
width: auto;
flex: 0 1 auto;
font-size: 11px;
padding: 4px 8px;
background: #f5f6f8;
color: #2c3e50;
border: 1px solid #d9dde3;
border-radius: 6px;
cursor: pointer;
}
.tfv-ahorro-month-tabs .tfv-month-tab:hover {
background: #eceff3;
}
.tfv-ahorro-month-tabs .tfv-month-tab.is-active {
background: #e8f5e9;
border-color: #2e7d32;
color: #1b5e20;
font-weight: 700;
} .tfv-ahorro-month-stats {
margin: 0 0 10px;
font-size: 11px;
color: #374151;
text-align: center;
} #tfv-ahorro-sliders-title {
margin: 8px 0 4px;
} .tfv-ahorro-details {
margin: 4px 0 6px;
font-size: 10px;
color: #475569;
}
.tfv-ahorro-details summary {
cursor: pointer;
color: #2e7d32;
font-size: 10px;
font-weight: 600;
}
.tfv-ahorro-details p {
margin: 4px 0 0;
font-size: 10px;
line-height: 1.35;
}
@media (max-width: 600px) {
.tfv-ahorro-profile-sliders {
grid-template-columns: repeat(3, 1fr);
}
.tfv-ahorro-month-grid {
grid-template-columns: repeat(3, 1fr);
}
.tfv-modal.tfv-modal-wide {
max-width: 100%;
}
} .tfv-disenador {
--tfv-green-dark: #2e7d32; --tfv-green: #1e8e3e; --tfv-green-bg: #f0f9f0; --tfv-green-line: #cfe8d4; } .tfv-roof-section {
padding: 16px 20px;
background: transparent;
border-bottom: 0;
}
.tfv-sec {
margin: 0 0 20px;
padding: 14px 16px;
background: #fff;
border: 1px solid #e3efe4;
border-radius: 10px;
box-shadow: 0 1px 3px rgba(20, 45, 25, 0.06);
}
.tfv-sec:last-child {
margin-bottom: 0;
} .tfv-sec > .tfv-sec-title {
margin: -14px -16px 12px;
padding: 11px 14px;
background: var(--tfv-green-bg);
border-bottom: 1px solid var(--tfv-green-line);
border-radius: 9px 9px 0 0;
font-size: 15px;
font-weight: 700;
line-height: 1.3;
color: var(--tfv-green-dark);
letter-spacing: 0.2px;
} .tfv-sec--pvgis > .tfv-pvgis-section,
.tfv-sec--ahorro > .tfv-ahorro-section {
padding: 0;
margin: 0;
background: transparent;
border: 0;
border-radius: 0;
} .tfv-sec--pvgis > .tfv-calc-section {
margin-top: 14px;
background: #fbfbfb;
border: 1px solid #eef0ee;
border-radius: 8px;
overflow: hidden;
} .tfv-sec .tfv-calc-subtitle {
color: #4a5a4c;
}
.tfv-sec .tfv-ahorro-subtitle,
.tfv-sec .tfv-ahorro-month-title {
color: #2e7d32;
} @media (max-width: 768px) {
.tfv-roof-section {
padding: 12px;
}
.tfv-sec {
margin-bottom: 14px;
}
} .tfv-area-band {
position: sticky;
top: 0;
z-index: 6;
display: flex;
flex-wrap: wrap;
align-items: center; gap: 4px 8px;
margin: 0;
padding: 0 20px 8px;
background: #fff;
border-bottom: 1px solid var(--tfv-green-line);
box-shadow: 0 2px 4px rgba(20, 45, 25, 0.06);
} .tfv-area-band .tfv-label {
flex: 0 0 100%; margin: 0 -20px 4px;
padding: 7px 20px;
background: var(--tfv-green-bg);
border-bottom: 1px solid var(--tfv-green-line);
font-size: 15px;
font-weight: 700;
color: var(--tfv-green-dark);
letter-spacing: 0.2px;
}
.tfv-area-band .tfv-btn-group {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 6px;
margin: 0;
} .tfv-area-band > .tfv-btn-group {
flex: 0 0 100%;
} .tfv-area-band .tfv-btn-tool {
flex: 0 1 auto;
width: auto;
min-width: 0;
padding: 6px 10px;
font-size: 12px;
} .tfv-area-chip {
flex: 0 0 auto;
min-width: 42px;
padding: 7px 14px;
font-size: 13px;
font-weight: 500;
color: var(--tfv-green-dark);
background: #fff;
border: 1px solid #a5d6a7;
border-radius: 999px;
cursor: pointer;
line-height: 1.2;
transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.tfv-area-chip:hover {
background: var(--tfv-green-bg);
border-color: var(--tfv-green-dark);
} .tfv-area-chip-active {
background: #cdeccf;
border-color: #14532d;
color: #0d3318;
font-weight: 700;
box-shadow: inset 0 0 0 1px #14532d, 0 0 0 2px rgba(27, 94, 32, 0.18);
}
.tfv-area-band .tfv-hint {
flex: 0 0 100%;
margin: 2px 0 0;
font-size: 11px;
line-height: 1.4;
}
@media (max-width: 768px) {
.tfv-area-band {
gap: 4px 8px;
padding: 0 12px 8px;
}
.tfv-area-band .tfv-label {
margin: 0 -12px 4px;
padding: 7px 12px;
}
} .tfv-report-cta {
margin: 10px 0 12px;
}
.tfv-cta-login {
margin: 0 0 8px;
padding: 8px 10px;
font-size: 12px;
line-height: 1.5;
color: #555;
text-align: center;
background: #fff8e5;
border: 1px solid #ffe0a3;
border-radius: 6px;
}
.tfv-cta-login a {
color: #2e7d32;
text-decoration: none;
}
.tfv-pvgis-notice {
margin: 6px 0 0;
font-size: 12px;
line-height: 1.4;
color: #b00020;
text-align: center;
} .tfv-designer-access {
box-sizing: border-box;
max-width: 1220px;
margin: 0 auto 18px;
border: 1px solid #cfe7d5;
border-left: 6px solid #249348;
background: linear-gradient(135deg, #f6fffa, #eef8ff);
border-radius: 16px;
padding: 22px 26px;
color: #15324a;
}
.tfv-designer-access__row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 22px;
flex-wrap: wrap;
}
.tfv-designer-access h2 {
margin: 0 0 6px;
font-size: 24px;
color: #123d61;
}
.tfv-designer-access p {
margin: 0;
line-height: 1.55;
}
.tfv-designer-button {
display: inline-block;
background: #22a550;
color: #fff !important;
border-radius: 9px;
padding: 12px 18px;
font-weight: 800;
text-decoration: none !important;
white-space: nowrap;
} .tfv-flash {
animation: tfv-flash 0.6s ease-in-out 3;
}
@keyframes tfv-flash {
0%, 100% { box-shadow: 0 0 0 0 rgba(34, 165, 80, 0); }
50% { box-shadow: 0 0 0 4px rgba(34, 165, 80, 0.35); }
}  #tfv-keys-hint {
display: none;
} #tfv-strings-summary {
display: none !important;
} .tfv-elec-calc {
display: none !important;
} .tfv-elec-notes {
margin-top: 8px;
padding: 8px 10px;
border-left: 3px solid #90caf9;
background: #f3f8ff;
border-radius: 4px;
font-size: 10.5px;
line-height: 1.5;
color: #1f3b57;
}
.tfv-elec-notes b {
color: #123d61;
} .tfv-conv-contact {
margin: 0 0 8px;
padding: 9px 10px;
border: 1px dashed #cfe6cf;
background: #f7fdf7;
border-radius: 8px;
}
.tfv-conv-contact__title {
margin: 0 0 6px;
font-size: 11.5px;
font-weight: 700;
color: #1b5e20;
}
.tfv-conv-contact__title span {
font-weight: 400;
color: #6b7c6b;
}
.tfv-conv-contact input {
width: 100%;
margin-bottom: 6px;
}
.tfv-conv-contact__note {
margin: 0;
font-size: 10px;
line-height: 1.4;
color: #6b7c6b;
}
.tfv-conv-contact__ok {
margin: 6px 0 0;
font-size: 11px;
font-weight: 600;
color: #1b5e20;
}
@media (max-width: 767px) {
.tfv-designer-access {
margin: 0 0 16px;
padding: 18px;
}
.tfv-designer-access h2 {
font-size: 21px;
}
.tfv-designer-button {
width: 100%;
margin-top: 8px;
text-align: center;
}
}
.tfv-btn-block {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
padding: 10px 14px;
margin-bottom: 8px;
font-size: 14px;
line-height: 1.3;
}
.tfv-btn:disabled,
.tfv-btn.is-blocked {
opacity: .55;
cursor: not-allowed;
}
.tfv-conv {
margin: 6px 0 4px;
}
.tfv-conv-title {
margin: 0 0 8px;
font-size: 14px;
font-weight: 700;
text-align: center;
color: #1f2d3d;
}
.tfv-conv-tabs {
display: flex;
gap: 6px;
margin-bottom: 12px;
}
.tfv-conv-tab {
flex: 1 1 0;
padding: 9px 8px;
font-size: 13px;
font-weight: 600;
color: #2b5d2b;
background: #eef4ee;
border: 1px solid #cfe0cf;
border-radius: 8px 8px 0 0;
cursor: pointer;
transition: background-color .2s, color .2s;
}
.tfv-conv-tab.is-active {
color: #fff;
background: #2e7d32;
border-color: #2e7d32;
}
.tfv-conv-panel[hidden] {
display: none !important;
}
.tfv-conv-sim {
margin: 0 0 8px;
font-size: 12px;
color: #2b5d2b;
text-align: center;
}
.tfv-conv-sep {
display: flex;
align-items: center;
gap: 8px;
margin: 10px 0;
font-size: 11px;
color: #8a8f98;
}
.tfv-conv-sep::before,
.tfv-conv-sep::after {
content: "";
flex: 1 1 auto;
height: 1px;
background: #dfe3e8;
} .tfv-conv-row {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
gap: 6px;
margin-bottom: 8px;
}
.tfv-conv-row > .tfv-btn {
flex: 1 1 0;
min-width: 0;
}
.tfv-conv-row .tfv-sm-text {
font-size: 10.5px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.tfv-btn-sm {
justify-content: center;
gap: 8px;
padding: 8px 10px;
font-size: 12px;
font-weight: 600;
line-height: 1.2;
}
.tfv-conv-row .tfv-btn-sm {
gap: 5px;
padding: 7px 6px;
font-size: 11px;
}
.tfv-btn-wa {
background: #25d366;
color: #fff;
}
.tfv-btn-wa:hover {
background: #1ebe5b;
}
.tfv-btn-mail {
background: #eef1f5;
color: #333;
border: 1px solid #d5dae1;
}
.tfv-btn-mail:hover {
background: #e2e7ee;
}
.tfv-btn-outline {
background: #fff;
color: #2e7d32;
border: 1px solid #2e7d32;
}
.tfv-btn-outline:hover {
background: #f2f8f2;
}
.tfv-wa-ico {
width: 15px;
height: 15px;
flex: 0 0 auto;
}
.tfv-sm-ico {
flex: 0 0 auto;
font-size: 14px;
line-height: 1;
}
.tfv-sm-text {
overflow-wrap: anywhere;
}
.tfv-conv-h {
margin: 0 0 8px;
font-size: 15px;
font-weight: 700;
text-align: center;
color: #1f2d3d;
} body.tfv-disenador-active .qlwapp,
body:has(.tfv-disenador) .qlwapp {
display: none !important;
}  body.tfv-disenador-active .container,
body.tfv-disenador-active .container_inner {
max-width: 100% !important;
width: 100% !important;
padding-left: 16px !important;
padding-right: 16px !important;
box-sizing: border-box;
} .tfv-wiz-hidden {
display: none !important;
} .tfv-wiz-nav {
display: flex;
flex-direction: column;
gap: 4px;
padding: 12px 10px;
background: #fff;
border: 1px solid #e0e0e0;
border-radius: 8px;
box-sizing: border-box;
}
.tfv-wiz-nav__item {
display: flex;
align-items: center;
gap: 8px;
width: 100%;
padding: 9px 10px;
border: 1px solid transparent;
border-radius: 6px;
background: transparent;
color: #344034;
font: inherit;
font-size: 13px;
line-height: 1.2;
text-align: left;
cursor: pointer;
transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.tfv-wiz-nav__item:hover {
background: #f2f8f2;
}
.tfv-wiz-nav__item.is-active {
background: #e8f5e9;
border-color: #cfe8d4;
color: #1b5e20;
font-weight: 600;
}
.tfv-wiz-nav__icon {
flex: 0 0 auto;
}
.tfv-wiz-nav__label {
flex: 1 1 auto;
white-space: normal;
} .tfv-wiz-foot {
position: sticky;
bottom: 0;
z-index: 7;
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
margin-top: 12px;
padding: 10px 14px;
background: #fff;
border-top: 1px solid #e0e0e0;
}
.tfv-wiz-foot__btn {
flex: 0 0 auto;
padding: 8px 12px;
border: 1px solid #cfe8d4;
border-radius: 6px;
background: #fff;
color: #1b5e20;
font: inherit;
font-size: 13px;
cursor: pointer;
}
.tfv-wiz-foot__btn:hover:not(:disabled) {
background: #f2f8f2;
}
.tfv-wiz-foot__btn:disabled {
opacity: 0.35;
cursor: default;
}
.tfv-wiz-foot__count {
flex: 1 1 auto;
text-align: center;
font-size: 12px;
color: #666;
white-space: nowrap;
} .tfv-wiz-on #tfv-areas-control {
position: static;
} @media (min-width: 1025px) {
.tfv-disenador.tfv-wiz-on {
display: grid;
grid-template-columns: 208px 420px minmax(0, 1fr);
align-items: start;
}
.tfv-disenador.tfv-wiz-on .tfv-wiz-nav {
position: sticky;
top: 16px;
max-height: var(--tfv-map-h);
overflow-y: auto;
}
.tfv-disenador.tfv-wiz-on .tfv-sidebar {
width: 100%;
min-width: 0;
max-width: none;
padding-bottom: 0;
}
.tfv-disenador.tfv-wiz-on .tfv-map-pane {
min-width: 0;
}
} @media (max-width: 1024px) {
.tfv-disenador.tfv-wiz-on {
display: flex;
flex-direction: column;
}
.tfv-disenador.tfv-wiz-on .tfv-wiz-nav {
position: static;
flex-direction: row;
gap: 6px;
max-height: none;
overflow-x: auto;
overflow-y: hidden;
padding: 10px 12px;
border-radius: 0;
border-left: 0;
border-right: 0;
border-top: 0;
scroll-snap-type: x proximity;
-webkit-overflow-scrolling: touch;
}
.tfv-disenador.tfv-wiz-on .tfv-wiz-nav__item {
width: auto;
flex: 0 0 auto;
white-space: nowrap;
scroll-snap-align: start;
}
.tfv-disenador.tfv-wiz-on .tfv-sidebar {
width: 100%;
min-width: 0;
max-width: none;
max-height: none;
overflow: visible;
border-right: 0;
border-bottom: 1px solid #e0e0e0;
padding-bottom: 0;
}
.tfv-disenador.tfv-wiz-on .tfv-wiz-foot {
position: static;
margin-top: 12px;
}
} @media (max-width: 768px) {
body.tfv-disenador-active .container,
body.tfv-disenador-active .container_inner {
padding-left: 8px !important;
padding-right: 8px !important;
}
} #tfv-rd-toggle {
cursor: default !important;
}
#tfv-rd-toggle .tfv-rd-arrow {
display: none !important;
}
#tfv-rd-body {
display: block !important;
}
#tfv-calc-toggle {
display: none !important;
}
#tfv-calc-body {
display: block !important;
} .tfv-elec-cables,
.tfv-elec-cc-params {
display: none !important;
} @media (max-width: 1024px) {
.tfv-disenador.tfv-wiz-on .tfv-sec--design .tfv-map-pane {
width: 100%;
margin: 10px 0 14px;
border: 1px solid #e0e0e0;
border-radius: 8px;
overflow: hidden;
}
.tfv-disenador.tfv-wiz-on .tfv-sec--design .tfv-map-pane .tfv-map-container {
height: 360px;
min-height: 300px;
}
} .tfv-ahorro-capex-modes {
display: flex;
flex-wrap: wrap;
gap: 8px 14px;
font-size: 12px;
margin: 6px 0 8px;
}
.tfv-ahorro-capex-modes label {
display: flex;
align-items: center;
gap: 5px;
cursor: pointer;
}
.tfv-ahorro-capex-fields {
display: flex;
flex-wrap: wrap;
gap: 8px;
font-size: 12px;
}
.tfv-ahorro-capex-fields > div {
flex: 1 1 180px;
}
.tfv-ahorro-capex-fields label {
display: block;
font-size: 11px;
color: #555;
}
.tfv-ahorro-capex-fields input {
width: 100%;
box-sizing: border-box;
padding: 6px 8px;
border: 1px solid #ccc;
border-radius: 6px;
}
.tfv-ahorro-capex-summary {
margin-top: 8px;
padding: 8px 10px;
background: #e8f5e9;
border: 1px solid #cfe8d4;
border-radius: 6px;
font-size: 12px;
color: #1b5e20;
}
.tfv-capex-parts {
margin-top: 6px;
}
.tfv-capex-part {
display: grid;
grid-template-columns: minmax(0, 1fr) 54px 76px auto 22px;
gap: 4px;
align-items: center;
margin-bottom: 4px;
}
.tfv-capex-part input {
width: 100%;
box-sizing: border-box;
padding: 4px 6px;
border: 1px solid #ccc;
border-radius: 4px;
font-size: 11px;
}
.tfv-capex-part-total {
font-size: 11px;
white-space: nowrap;
color: #1b5e20;
}
.tfv-capex-part button {
border: none;
background: none;
color: #c0392b;
cursor: pointer;
font-size: 13px;
} .tfv-capex-est-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
margin: 8px 0;
}
.tfv-capex-est-grid label {
display: block;
font-size: 11px;
color: #555;
}
.tfv-capex-est-grid input {
width: 100%;
box-sizing: border-box;
padding: 6px 8px;
border: 1px solid #ccc;
border-radius: 6px;
} .tfv-ahorro-selected {
font-size: 12px;
color: #1b5e20;
margin: 6px 0;
}
.tfv-ahorro-kpis {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 8px;
margin: 8px 0;
}
.tfv-ahorro-kpis > div {
background: #f7faf7;
border: 1px solid #e0e0e0;
border-radius: 6px;
padding: 8px 10px;
}
.tfv-ahorro-kpis span {
display: block;
font-size: 10px;
color: #666;
text-transform: uppercase;
letter-spacing: 0.3px;
}
.tfv-ahorro-kpis strong {
display: block;
margin-top: 2px;
font-size: 14px;
color: #1b5e20;
}
.tfv-ahorro-chart-block {
margin: 12px 0;
}
.tfv-ahorro-chart-title {
font-size: 12px;
font-weight: 700;
color: #1b5e20;
margin-bottom: 4px;
}
.tfv-ahorro-chart-scroll {
width: 100%;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
.tfv-ahorro-chart {
width: 100%;
height: 240px;
}
.tfv-ahorro-chart svg {
display: block;
width: 100%;
height: 100%;
}
.tfv-ahorro-chart--cashflow {
min-width: 520px;
}
.tfv-ahorro-chart--daily {
min-width: 720px;
}
.tfv-ahorro-chart--year {
min-width: 1200px;
}
#tfv-ahorro-chart-mode {
border: 1px solid #ccc;
border-radius: 6px;
padding: 4px 6px;
font-size: 12px;
background: #fff;
}
#tfv-ahorro-daily-date-controls {
display: flex;
align-items: center;
gap: 4px;
}
.tfv-ahorro-daily-controls {
flex-wrap: wrap;
} #tfv-rotation-control,
#tfv-panel-rotate-card {
display: none !important;
}
#tfv-individual-rotation > .tfv-label,
#tfv-individual-rotation > .tfv-hint,
#tfv-individual-rotation > .tfv-slider-row {
display: none !important;
} #tfv-add-obstacle,
#tfv-add-obstacle-rect,
#tfv-clear-obstacles,
div:has(> #tfv-add-obstacle) {
display: none !important;
}
.tfv-ahorro-daily-head {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 6px;
margin-bottom: 4px;
}
.tfv-ahorro-daily-controls {
display: flex;
align-items: center;
gap: 4px;
}
.tfv-ahorro-daily-controls button {
border: 1px solid #cfe8d4;
background: #fff;
color: #1b5e20;
border-radius: 6px;
padding: 4px 9px;
font-size: 14px;
cursor: pointer;
}
.tfv-ahorro-daily-controls input[type="date"] {
border: 1px solid #ccc;
border-radius: 6px;
padding: 4px 6px;
font-size: 12px;
max-width: 150px;
}
@media (max-width: 768px) {
.tfv-ahorro-kpis {
grid-template-columns: 1fr;
}
.tfv-ahorro-chart {
height: 220px;
}
.tfv-ahorro-daily-head {
align-items: flex-start;
}
.tfv-ahorro-daily-controls {
width: 100%;
justify-content: space-between;
}
}.tfv-budget-panel {
padding: 12px;
background: #fff;
border: 1px solid #e2e4e7;
border-radius: 4px;
margin-bottom: 16px;
}
.tfv-budget-panel .tfv-section-title {
font-size: 14px;
font-weight: 600;
color: #1a5276;
margin: 0 0 12px 0;
padding-bottom: 8px;
border-bottom: 2px solid #f1c40f;
} .tfv-budget-search {
margin-bottom: 12px;
}
.tfv-budget-search label {
display: block;
font-size: 11px;
font-weight: 600;
color: #555;
margin-bottom: 4px;
}
.tfv-search-row {
display: flex;
gap: 6px;
align-items: center;
}
.tfv-search-filter {
width: 110px;
font-size: 11px;
}
.tfv-search-input {
flex: 1;
font-size: 11px;
}
.tfv-search-results {
margin-top: 6px;
border: 1px solid #ddd;
border-radius: 3px;
background: #fafafa;
max-height: 250px;
overflow-y: auto;
}
.tfv-search-list {
list-style: none;
margin: 0;
padding: 0;
}
.tfv-search-result-item {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
border-bottom: 1px solid #eee;
cursor: pointer;
transition: background 0.15s;
font-size: 11px;
}
.tfv-search-result-item:hover {
background: #e8f4fd;
}
.tfv-search-result-item:last-child {
border-bottom: none;
}
.tfv-result-type {
background: #1a5276;
color: #fff;
padding: 2px 6px;
border-radius: 3px;
font-size: 9px;
white-space: nowrap;
flex-shrink: 0;
}
.tfv-result-desc {
flex: 1;
color: #333;
}
.tfv-result-price {
font-weight: 600;
color: #27ae60;
white-space: nowrap;
}
.tfv-result-add {
color: #2980b9;
font-weight: 600;
font-size: 10px;
cursor: pointer;
}
.tfv-result-add:hover {
text-decoration: underline;
}
.tfv-search-loading,
.tfv-search-empty,
.tfv-search-error {
padding: 12px;
text-align: center;
font-size: 11px;
color: #888;
}
.tfv-search-error {
color: #e74c3c;
} .tfv-budget-manual {
margin-bottom: 10px;
}
.tfv-budget-manual details {
font-size: 11px;
}
.tfv-budget-manual summary {
cursor: pointer;
font-weight: 600;
color: #2980b9;
padding: 4px 0;
}
.tfv-manual-form {
margin-top: 8px;
padding: 8px;
background: #f8f9fa;
border-radius: 4px;
border: 1px solid #eee;
}
.tfv-manual-input {
width: 100%;
margin-bottom: 6px;
font-size: 11px;
}
.tfv-manual-row {
display: flex;
gap: 6px;
align-items: center;
}
.tfv-manual-qty {
width: 60px;
font-size: 11px;
}
.tfv-manual-price {
flex: 1;
font-size: 11px;
} .tfv-budget-quick {
margin-bottom: 10px;
}
.tfv-budget-quick .button {
font-size: 10px;
} .tfv-budget-items-table {
font-size: 11px;
margin: 8px 0;
}
.tfv-budget-items-table th {
background: #1a5276;
color: #fff;
padding: 6px 8px;
font-size: 10px;
text-align: left;
}
.tfv-budget-items-table td {
padding: 6px 8px;
vertical-align: middle;
}
.tfv-budget-items-table .tfv-item-qty,
.tfv-budget-items-table .tfv-item-price {
font-size: 11px;
}
.tfv-item-type {
font-size: 14px;
}
.tfv-item-total {
font-weight: 600;
color: #27ae60;
}
.tfv-item-remove {
color: #e74c3c;
font-size: 12px !important;
padding: 0 6px !important;
line-height: 22px !important;
}
.tfv-budget-empty {
text-align: center;
color: #999;
font-size: 11px;
padding: 20px;
background: #fafafa;
border: 1px dashed #ddd;
border-radius: 4px;
} .tfv-budget-totals {
margin: 12px 0;
padding: 10px;
background: #f8f9fa;
border: 1px solid #e2e4e7;
border-radius: 4px;
}
.tfv-total-row {
display: flex;
justify-content: space-between;
padding: 3px 0;
font-size: 12px;
color: #555;
}
.tfv-total-grand {
border-top: 2px solid #1a5276;
margin-top: 6px;
padding-top: 6px;
font-size: 14px;
color: #1a5276;
} .tfv-budget-actions {
display: flex;
gap: 8px;
margin-top: 8px;
}
.tfv-budget-actions .button {
font-size: 11px;
}body .extendedwopts-show {
display: none;
}
body .widgetopts-hide_title .widget-title {
display: none;
}
body .extendedwopts-md-right {
text-align: right;
}
body .extendedwopts-md-left {
text-align: left;
}
body .extendedwopts-md-center {
text-align: center;
}
body .extendedwopts-md-justify {
text-align: justify;
}
@media screen and (min-width: 1181px) {
body .extendedwopts-hide.extendedwopts-desktop {
display: none !important;
}
body .extendedwopts-show.extendedwopts-desktop {
display: block;
}
body .widget.clearfix-desktop {
clear: both;
}
}
@media screen and (max-width: 1024px) and (orientation: Portrait) {
body .extendedwopts-hide.extendedwopts-tablet {
display: none !important;
}
body .extendedwopts-show.extendedwopts-tablet {
display: block;
}
body .widget.clearfix-desktop {
clear: none;
}
body .widget.clearfix-tablet {
clear: both;
}
}
@media screen and (max-width: 1180px) and (orientation: landscape) {
body .extendedwopts-hide.extendedwopts-tablet {
display: none !important;
}
body .extendedwopts-show.extendedwopts-tablet {
display: block;
}
body .widget.clearfix-desktop {
clear: none;
}
body .widget.clearfix-tablet {
clear: both;
}
}
@media screen and (max-width: 767px) and (orientation: Portrait) {
body .extendedwopts-hide.extendedwopts-tablet:not(.extendedwopts-mobile) {
display: block !important;
}
body .extendedwopts-show.extendedwopts-tablet:not(.extendedwopts-mobile) {
display: none !important;
}
body .extendedwopts-hide.extendedwopts-mobile {
display: none !important;
}
body .extendedwopts-show.extendedwopts-mobile {
display: block;
}
body .widget.clearfix-desktop,
body .widget.clearfix-tablet {
clear: none;
}
body .widget.clearfix-mobile {
clear: both;
}
}
@media screen and (max-width: 991px) and (orientation: landscape) {
body .extendedwopts-hide.extendedwopts-tablet:not(.extendedwopts-mobile) {
display: block !important;
}
body .extendedwopts-show.extendedwopts-tablet:not(.extendedwopts-mobile) {
display: none !important;
}
body .extendedwopts-hide.extendedwopts-mobile {
display: none !important;
}
body .extendedwopts-show.extendedwopts-mobile {
display: block;
}
body .widget.clearfix-desktop,
body .widget.clearfix-tablet {
clear: none;
}
body .widget.clearfix-mobile {
clear: both;
}
}
.panel-cell-style:after {
content: "";
display: block;
clear: both;
position: relative;
}