:root{
 --ww-blue:#020c7d;
 --ww-pink:#F54C85;
 --ww-ink:#1d2a4d;
 --ww-line:#dde4f2;
 --ww-soft:#f7f9fd;
}

.wwsx{
 width:min(1240px,calc(100% - 40px));
 margin:0 auto;
 font-family:inherit;
 color:var(--ww-ink);
}
.wwsx *{box-sizing:border-box}

.wwsx-shell{
 background:#fff;
 border:1px solid #edf0f7;
 border-radius:24px;
 padding:22px;
 box-shadow:0 14px 36px rgba(2,12,125,.07);
}

.wwsx-title{
 font-size:23px;
 font-weight:850;
 color:var(--ww-blue);
 margin:2px 0 10px;
}

.wwsx-searchline{
 display:grid;
 grid-template-columns:minmax(200px,1fr) 54px auto auto auto;
 gap:10px;
 align-items:center;
}

.wwsx-query{
 width:100%;
 min-height:52px;
 border:1px solid #d9deeb;
 border-radius:15px;
 background:#fff;
 padding:0 15px;
 font:inherit;
 font-size:16px;
 color:#24304f;
 outline:none;
}
.wwsx-query:focus{
 border-color:var(--ww-pink);
 box-shadow:0 0 0 3px rgba(245,76,133,.09);
}

.wwsx-voice{
 width:52px;
 height:52px;
 border-radius:50%;
 border:1px solid #d9deeb;
 background:#fff;
 color:var(--ww-blue);
 cursor:pointer;
}
.wwsx-search{
 min-height:52px;
 padding:0 25px;
 border:0;
 border-radius:999px;
 background:var(--ww-pink);
 color:#fff;
 font:inherit;
 font-weight:850;
 cursor:pointer;
 box-shadow:0 8px 22px rgba(245,76,133,.24);
}
.wwsx-clear{
 min-height:52px;
 padding:0 18px;
 border:1px solid #d9deeb;
 border-radius:999px;
 background:#fff;
 color:var(--ww-blue);
 font:inherit;
 font-weight:800;
 cursor:pointer;
}

/* JReviews-inspired custom campaign dropdowns */
.wwsx-filterbar{
 display:flex;
 gap:14px;
 flex-wrap:wrap;
 align-items:flex-end;
 margin-top:18px;
}

.wwsx-dd{
 position:relative;
 min-width:210px;
 flex:0 1 230px;
}
.wwsx-dd:first-child{
 min-width:310px;
 flex:1 1 360px;
 max-width:500px;
}

.wwsx-dd-label{
 display:block;
 margin:0 0 7px;
 font-size:13px;
 line-height:1.2;
 font-weight:800;
 color:#39445f;
}

.wwsx-dd-toggle{
 width:100%;
 min-height:48px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
 padding:0 14px;
 border:1px solid #d6dce8;
 border-radius:10px;
 background:#fff;
 color:#1e2945;
 font:inherit;
 font-size:15px;
 text-align:left;
 cursor:pointer;
 box-shadow:0 2px 5px rgba(2,12,125,.02);
 transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.wwsx-dd-toggle:hover{
 border-color:#b9c3d5;
 background:#fbfcff;
}
.wwsx-dd.is-open .wwsx-dd-toggle,
.wwsx-dd-toggle:focus{
 border-color:var(--ww-pink);
 box-shadow:0 0 0 3px rgba(245,76,133,.10);
 outline:none;
}
.wwsx-dd-value{
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.wwsx-dd-chevron{
 flex:0 0 auto;
 color:#6a758e;
 font-size:11px;
 transition:transform .16s ease;
}
.wwsx-dd.is-open .wwsx-dd-chevron{
 transform:rotate(180deg);
 color:var(--ww-pink);
}

.wwsx-dd-menu{
 position:absolute;
 z-index:5000;
 left:0;
 top:calc(100% + 7px);
 width:100%;
 min-width:260px;
 max-height:390px;
 overflow:hidden;
 border:1px solid #dce2ed;
 border-radius:14px;
 background:#fff;
 box-shadow:0 18px 44px rgba(2,12,125,.16);
}
.wwsx-dd-menu[hidden]{display:none}

.wwsx-dd-search{
 display:flex;
 align-items:center;
 gap:8px;
 padding:11px 12px;
 border-bottom:1px solid #edf0f6;
 background:#fafbfe;
 color:#8690a4;
}
.wwsx-dd-search input{
 width:100%;
 border:0;
 background:transparent;
 outline:none;
 font:inherit;
 color:#1f2d49;
}
.wwsx-dd-search input::placeholder{color:#929bae}

.wwsx-dd-list{
 max-height:330px;
 overflow:auto;
 padding:7px;
 overscroll-behavior:contain;
}

.wwsx-dd-group{
 padding:
  10px
  10px
  6px
  calc(11px + (var(--wwsx-depth,0) * 18px));
 color:var(--ww-blue);
 font-size:12px;
 line-height:1.25;
 font-weight:900;
 text-transform:none;
 letter-spacing:.01em;
}
.wwsx-dd-group:not(:first-child){
 margin-top:5px;
 border-top:1px solid #f0f2f7;
 padding-top:12px;
}

.wwsx-dd-option{
 width:100%;
 min-height:40px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:10px;
 padding:
  9px
  10px
  9px
  calc(12px + (var(--wwsx-depth,0) * 18px));
 border:0;
 border-radius:9px;
 background:#fff;
 color:#263451;
 font:inherit;
 font-size:14px;
 text-align:left;
 cursor:pointer;
}
.wwsx-dd-option:hover,
.wwsx-dd-option:focus{
 background:#f5f7fc;
 color:var(--ww-blue);
 outline:none;
}
.wwsx-dd-option.is-selected{
 background:#fff4f8;
 color:var(--ww-blue);
 font-weight:800;
}
.wwsx-dd-option-check{
 display:none;
 flex:0 0 auto;
 color:var(--ww-pink);
}
.wwsx-dd-option.is-selected .wwsx-dd-option-check{display:inline-flex}
.wwsx-dd-option[hidden]{display:none}

.wwsx-dd-empty{
 padding:18px 14px;
 color:#778198;
 font-size:14px;
 text-align:center;
}

.wwsx-hint{
 margin-top:10px;
 color:#69758e;
 font-size:13px;
}

/* Results */
.wwsx-results{margin-top:20px}
.wwsx-results[hidden]{display:none}
.wwsx-results-head{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:12px;
 border:1px solid #e2e7f2;
 border-radius:17px;
 padding:13px 16px;
 background:#fff;
}
.wwsx-grid{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:16px;
 margin-top:16px;
}
.wwsx-card{
 background:#fff;
 border:1px solid #e2e7f2;
 border-radius:20px;
 overflow:hidden;
 box-shadow:0 10px 26px rgba(2,12,125,.06);
 display:flex;
 flex-direction:column;
}
.wwsx-card-image{
 height:170px;
 background:#eef2fa;
 overflow:hidden;
}
.wwsx-card-image img{
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
 object-position:center;
}
.wwsx-card-body{
 padding:16px;
 display:flex;
 flex-direction:column;
 gap:8px;
 flex:1;
}
.wwsx-card-type{
 font-size:11px;
 text-transform:uppercase;
 letter-spacing:.07em;
 color:var(--ww-pink);
 font-weight:900;
}
.wwsx-card-title{
 font-size:18px;
 line-height:1.25;
 font-weight:850;
 color:var(--ww-blue);
 text-decoration:none;
}
.wwsx-card-title:hover{color:var(--ww-pink)}
.wwsx-card-summary{
 font-size:13px;
 color:#65718b;
 line-height:1.5;
}
.wwsx-card-meta{
 font-size:12px;
 color:#43516c;
 font-weight:700;
 margin-top:auto;
}
.wwsx-empty{
 grid-column:1/-1;
 padding:24px;
 border:1px dashed #ccd5e5;
 border-radius:17px;
 text-align:center;
 color:#66728a;
}
.wwsx-browse{
 border:0;
 background:transparent;
 color:var(--ww-blue);
 font:inherit;
 font-weight:800;
 cursor:pointer;
}
.wwsx-loading{
 opacity:.62;
 pointer-events:none;
}
.wwsx-component-hidden{display:none!important}

@media(max-width:900px){
 .wwsx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:680px){
 .wwsx{width:calc(100% - 20px)}
 .wwsx-shell{padding:17px}
 .wwsx-searchline{grid-template-columns:1fr 50px}
 .wwsx-search,.wwsx-clear{min-height:46px}
 .wwsx-dd,.wwsx-dd:first-child{
  width:100%;
  min-width:0;
  max-width:none;
  flex-basis:100%;
 }
 .wwsx-dd-menu{
  position:fixed;
  left:10px;
  right:10px;
  bottom:10px;
  top:auto;
  width:auto;
  max-height:min(70vh,540px);
  border-radius:18px;
 }
 .wwsx-dd-list{max-height:min(58vh,440px)}
 .wwsx-grid{grid-template-columns:1fr}
}


/* v0.2.4 collapsible JReviews-style category hierarchy */
.wwsx-category-tree{
 padding:7px;
}

.wwsx-category-parent{
 width:100%;
 min-height:42px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
 padding:
  9px
  10px
  9px
  calc(12px + (var(--wwsx-depth,0) * 18px));
 border:0;
 border-radius:9px;
 background:#fff;
 color:#17254b;
 font:inherit;
 font-size:14px;
 font-weight:800;
 text-align:left;
 cursor:pointer;
 transition:background .15s ease,color .15s ease;
}

.wwsx-category-parent:hover,
.wwsx-category-parent:focus{
 background:#f4f6fb;
 color:var(--ww-blue);
 outline:none;
}

.wwsx-category-parent.is-expanded{
 background:#f7f8fc;
 color:var(--ww-blue);
}

.wwsx-category-parent-chevron{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:24px;
 height:24px;
 flex:0 0 24px;
 color:#7a849a;
 font-size:10px;
 transition:transform .16s ease,color .16s ease;
}

.wwsx-category-parent.is-expanded .wwsx-category-parent-chevron{
 transform:rotate(90deg);
 color:var(--ww-pink);
}

.wwsx-category-children{
 margin:2px 0 5px;
}

.wwsx-category-children[hidden]{
 display:none;
}

.wwsx-category-option{
 padding-left:calc(12px + (var(--wwsx-depth,0) * 18px));
}

.wwsx-category-all{
 color:#4a5874;
 font-style:normal;
}

.wwsx-category-all .wwsx-dd-option-label{
 font-weight:700;
}

.wwsx-category-children > .wwsx-category-option,
.wwsx-category-children > .wwsx-category-parent{
 position:relative;
}

.wwsx-category-children > .wwsx-category-option::before,
.wwsx-category-children > .wwsx-category-parent::before{
 content:"";
 position:absolute;
 left:calc(7px + (var(--wwsx-depth,0) * 18px));
 top:50%;
 width:7px;
 height:1px;
 background:#d9deea;
}

.wwsx-dd-category .wwsx-dd-menu{
 min-width:330px;
}

@media(max-width:680px){
 .wwsx-dd-category .wwsx-dd-menu{
  min-width:0;
 }
}


/* v0.2.5 Campaign discovery filters */
.wwsx-location-dd{min-width:250px!important}
.wwsx-location-menu{min-width:340px!important}
.wwsx-location-panel{padding:15px}
.wwsx-panel-label{display:block;margin:0 0 7px;font-size:12px;font-weight:850;color:#3d4964}
.wwsx-panel-input{
 width:100%;min-height:44px;padding:0 12px;border:1px solid #d6dce8;border-radius:10px;
 font:inherit;color:#22304e;outline:none
}
.wwsx-panel-input:focus{border-color:var(--ww-pink);box-shadow:0 0 0 3px rgba(245,76,133,.09)}
.wwsx-location-current{
 width:100%;margin:10px 0 0;min-height:42px;border:1px solid #dce2ed;border-radius:10px;
 background:#f8f9fd;color:var(--ww-blue);font:inherit;font-weight:800;cursor:pointer
}
.wwsx-location-status{min-height:20px;margin:6px 0 8px;font-size:12px;color:#69758e}
.wwsx-radius-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:14px}
.wwsx-radius-options button{
 min-height:38px;border:1px solid #dce2ed;border-radius:9px;background:#fff;color:#3e4b68;
 font:inherit;font-size:12px;font-weight:750;cursor:pointer
}
.wwsx-radius-options button.is-selected{background:#fff4f8;border-color:var(--ww-pink);color:var(--ww-blue)}
.wwsx-panel-actions{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #eef1f6;padding-top:12px}
.wwsx-panel-clear,.wwsx-panel-apply{min-height:40px;padding:0 16px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}
.wwsx-panel-clear{border:0;background:transparent;color:#66728b}
.wwsx-panel-apply{border:0;background:var(--ww-pink);color:#fff}

.wwsx-results-actions{display:flex;align-items:center;gap:12px}
.wwsx-view-toggle{display:inline-flex;padding:3px;border:1px solid #dde3ee;border-radius:999px;background:#f7f8fc}
.wwsx-view-toggle[hidden]{display:none}
.wwsx-view-btn{
 min-height:34px;padding:0 13px;border:0;border-radius:999px;background:transparent;color:#63708a;
 font:inherit;font-size:12px;font-weight:800;cursor:pointer
}
.wwsx-view-btn.is-active{background:#fff;color:var(--ww-blue);box-shadow:0 2px 7px rgba(2,12,125,.09)}
.wwsx-map{height:560px;margin-top:16px;border:1px solid #dfe5ef;border-radius:20px;overflow:hidden;background:#eef2f7}
.wwsx-map[hidden]{display:none}
.wwsx-map-popup strong{display:block;color:#020c7d;font-size:14px;margin-bottom:4px}
.wwsx-map-popup a{display:inline-block;margin-top:7px;color:#F54C85;font-weight:800;text-decoration:none}
.wwsx-map-location{font-size:12px;color:#647089}
@media(max-width:680px){
 .wwsx-location-menu{min-width:0!important}
 .wwsx-radius-options{grid-template-columns:repeat(3,minmax(0,1fr))}
 .wwsx-results-head{align-items:flex-start;flex-direction:column}
 .wwsx-results-actions{width:100%;justify-content:space-between}
 .wwsx-map{height:480px}
}

.wwsx-map-empty{
 min-height:100%;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:8px;
 padding:40px 22px;
 text-align:center;
 background:linear-gradient(135deg,#f7f9fd,#fff);
 color:#647089;
}
.wwsx-map-empty i{font-size:30px;color:#F54C85;margin-bottom:4px}
.wwsx-map-empty strong{font-size:17px;color:#020c7d}
.wwsx-map-empty span{max-width:460px;font-size:13px;line-height:1.5}


/* v0.2.7 campaign explorer map */
.wwsx-explore-map{
 min-height:52px;
 padding:0 20px;
 border:1px solid #d9deeb;
 border-radius:999px;
 background:#fff;
 color:var(--ww-blue);
 font:inherit;
 font-weight:850;
 cursor:pointer;
 white-space:nowrap;
 transition:border-color .16s ease,color .16s ease,box-shadow .16s ease;
}
.wwsx-explore-map:hover{
 border-color:var(--ww-pink);
 color:var(--ww-pink);
 box-shadow:0 5px 16px rgba(245,76,133,.09);
}
.wwsx-explore-map:disabled{opacity:.65;cursor:wait}

.wwsx-map{
 position:relative;
 width:100%;
 height:620px;
 min-height:480px;
 isolation:isolate;
}
.wwsx-map .leaflet-container,
.wwsx-map.leaflet-container{
 width:100%!important;
 height:100%!important;
}

.wwsx-map-marker-shell{
 background:transparent!important;
 border:0!important;
}
.wwsx-map-marker{
 position:relative;
 width:30px;
 height:30px;
 display:flex;
 align-items:center;
 justify-content:center;
 border:3px solid #fff;
 border-radius:50% 50% 50% 6px;
 background:var(--wwsx-marker);
 color:#fff;
 font-size:11px;
 box-shadow:0 4px 12px rgba(22,31,62,.28);
 transform:rotate(-45deg);
}
.wwsx-map-marker i{transform:rotate(45deg)}
.wwsx-map-marker::after{
 content:"";
 position:absolute;
 width:7px;
 height:7px;
 border-radius:50%;
 background:rgba(255,255,255,.25);
 top:4px;
 right:4px;
}

.wwsx-map-legend{
 max-width:230px;
 max-height:310px;
 overflow:auto;
 padding:12px 13px;
 border:1px solid rgba(2,12,125,.09);
 border-radius:13px;
 background:rgba(255,255,255,.96);
 box-shadow:0 8px 26px rgba(2,12,125,.13);
 color:#34415f;
 font-size:12px;
 line-height:1.35;
}
.wwsx-map-legend>strong{
 display:block;
 color:var(--ww-blue);
 font-size:12px;
 margin-bottom:8px;
}
.wwsx-map-legend>div{
 display:flex;
 align-items:center;
 gap:7px;
 margin:5px 0;
}
.wwsx-map-legend>div>span{
 width:10px;
 height:10px;
 border-radius:50%;
 flex:0 0 10px;
}

.wwsx-map-popup{min-width:190px}
.wwsx-map-popup-image{
 display:block;
 width:100%;
 height:105px;
 object-fit:cover;
 border-radius:8px;
 margin:0 0 8px;
}
.wwsx-map-popup-category{
 display:flex;
 align-items:center;
 gap:6px;
 margin-bottom:5px;
 color:#5c6880;
 font-size:11px;
 font-weight:800;
}
.wwsx-map-popup-category>span{
 width:9px;
 height:9px;
 border-radius:50%;
 flex:0 0 9px;
}
.wwsx-map-popup strong{
 display:block;
 color:var(--ww-blue);
 font-size:14px;
 line-height:1.3;
 margin-bottom:4px;
}
.wwsx-map-meta{
 margin-top:4px;
 color:#68748c;
 font-size:11px;
 line-height:1.4;
}

@media(max-width:980px){
 .wwsx-searchline{grid-template-columns:minmax(200px,1fr) 52px auto auto}
 .wwsx-clear{grid-column:auto}
 .wwsx-explore-map{grid-column:1/-1;width:max-content}
}

@media(max-width:680px){
 .wwsx-searchline{grid-template-columns:1fr 50px}
 .wwsx-search{grid-column:1/2}
 .wwsx-explore-map{grid-column:2/3;width:auto;padding:0 12px;font-size:0}
 .wwsx-explore-map i{font-size:15px}
 .wwsx-clear{grid-column:1/-1;width:max-content}
 .wwsx-map{height:520px;min-height:420px}
 .wwsx-map-legend{max-width:180px;max-height:230px}
}

.wwsx-uk-view{
 width:34px!important;
 height:34px!important;
 display:flex!important;
 align-items:center;
 justify-content:center;
 border:2px solid rgba(0,0,0,.2)!important;
 border-radius:4px!important;
 background:#fff!important;
 color:#020c7d!important;
 font:800 11px/1 inherit!important;
 cursor:pointer!important;
 box-shadow:none!important;
}
.wwsx-uk-view:hover{background:#f7f8fc!important;color:#F54C85!important}


/* v0.2.12 — WiggyWam Property-search visual standard */
.wwsx-shell{
 padding:18px 20px 16px;
 border-radius:22px;
 box-shadow:0 12px 32px rgba(2,12,125,.07);
}
.wwsx-topline{
 display:flex;
 align-items:center;
 justify-content:flex-start;
 margin-bottom:8px;
}
.wwsx-use-location{
 display:inline-flex;
 align-items:center;
 gap:8px;
 min-height:34px;
 padding:0 12px;
 border:1px solid #f3bfd2;
 border-radius:999px;
 background:#fff5f9;
 color:#020c7d;
 font:inherit;
 font-size:12px;
 font-weight:850;
 cursor:pointer;
 box-shadow:0 7px 18px rgba(245,76,133,.08);
}
.wwsx-use-location:hover,
.wwsx-use-location:focus,
.wwsx-use-location.is-active{
 border-color:#F54C85;
 color:#F54C85;
 outline:none;
}
.wwsx-use-location:disabled{opacity:.65;cursor:wait}

.wwsx-searchline{
 display:grid;
 grid-template-columns:minmax(0,1fr) auto;
 gap:10px;
 align-items:center;
}
.wwsx-query-wrap{
 position:relative;
 min-width:0;
}
.wwsx-query{
 min-height:47px;
 padding:0 52px 0 14px;
 border-radius:9px;
 font-size:14px;
}
.wwsx-voice{
 position:absolute;
 top:50%;
 right:7px;
 transform:translateY(-50%);
 width:34px;
 height:34px;
 border:0;
 background:transparent;
}
.wwsx-search{
 min-height:43px;
 padding:0 21px;
 font-size:13px;
}

.wwsx-filterbar{
 display:flex;
 align-items:center;
 gap:6px;
 flex-wrap:wrap;
 margin-top:10px;
}
.wwsx-dd,
.wwsx-dd:first-child,
.wwsx-location-dd{
 position:relative;
 flex:0 0 auto!important;
 min-width:0!important;
 max-width:none!important;
}
.wwsx-dd-label{display:none!important}
.wwsx-dd-toggle{
 width:auto;
 min-width:0;
 min-height:38px;
 padding:0 11px;
 gap:7px;
 border:1px solid #e0e5ef;
 border-radius:999px;
 background:#fff;
 color:#263451;
 font-size:12px;
 font-weight:750;
 box-shadow:none;
}
.wwsx-dd-toggle:hover{
 border-color:#f0b3c9;
 background:#fff8fb;
 color:#020c7d;
}
.wwsx-dd.has-value .wwsx-dd-toggle,
.wwsx-dd.is-open .wwsx-dd-toggle{
 border-color:#F54C85;
 background:#fff5f9;
 color:#020c7d;
 box-shadow:none;
}
.wwsx-dd-value{
 display:inline-flex;
 align-items:center;
 gap:7px;
 overflow:visible;
}
.wwsx-dd-value i{
 color:#66718a;
 font-size:11px;
}
.wwsx-dd.has-value .wwsx-dd-value i,
.wwsx-dd.is-open .wwsx-dd-value i{color:#F54C85}
.wwsx-dd-chevron{font-size:9px}

.wwsx-dd-menu{
 top:calc(100% + 8px);
 min-width:320px;
 border-radius:14px;
 box-shadow:0 18px 45px rgba(24,34,72,.18);
}
.wwsx-dd-category .wwsx-dd-menu{min-width:380px}
.wwsx-location-menu{min-width:390px!important}

.wwsx-filter-action{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:7px;
 min-height:38px;
 padding:0 11px;
 border:1px solid #e0e5ef;
 border-radius:999px;
 background:#fff;
 color:#263451;
 font:inherit;
 font-size:12px;
 font-weight:750;
 cursor:pointer;
}
.wwsx-filter-action:hover{
 border-color:#f0b3c9;
 background:#fff8fb;
 color:#020c7d;
}
.wwsx-map-pill i{font-size:11px}
.wwsx-clear-pill{
 margin-left:auto;
 min-height:40px;
 padding:0 15px;
 border-color:#F54C85;
 background:#F54C85;
 color:#fff;
 font-weight:850;
 box-shadow:0 7px 18px rgba(245,76,133,.18);
}
.wwsx-clear-pill:hover{
 background:#F54C85;
 border-color:#F54C85;
 color:#fff;
 filter:brightness(.97);
}

.wwsx-applied{
 flex:1 0 100%;
 display:flex;
 flex-wrap:wrap;
 gap:6px;
 padding-top:2px;
}
.wwsx-applied-chip{
 display:inline-flex;
 align-items:center;
 gap:6px;
 min-height:24px;
 padding:0 8px;
 border:0;
 border-radius:999px;
 background:#f7f8fc;
 color:#5d6881;
 font:inherit;
 font-size:10.5px;
 font-weight:700;
 cursor:pointer;
}
.wwsx-applied-chip:hover{
 background:#fff1f6;
 color:#020c7d;
}
.wwsx-applied-chip i{
 font-size:8px;
 color:#F54C85;
}

.wwsx-hint{
 margin-top:7px;
 font-size:11.5px;
 color:#747e92;
}

@media(max-width:780px){
 .wwsx-searchline{grid-template-columns:1fr auto}
 .wwsx-filterbar{gap:7px}
 .wwsx-clear-pill{margin-left:0}
}
@media(max-width:560px){
 .wwsx{width:calc(100% - 16px)}
 .wwsx-shell{padding:15px}
 .wwsx-searchline{grid-template-columns:1fr}
 .wwsx-search{width:100%}
 .wwsx-dd-menu,
 .wwsx-dd-category .wwsx-dd-menu,
 .wwsx-location-menu{
  position:fixed;
  left:10px;
  right:10px;
  bottom:10px;
  top:auto;
  width:auto;
  min-width:0!important;
  max-height:min(72vh,560px);
 }
 .wwsx-clear-pill{margin-left:0}
}


/* v0.2.13 — microphone outside query + filtered-map refinement */
.wwsx-searchline{
 grid-template-columns:minmax(0,1fr) 40px auto!important;
 gap:8px!important;
}
.wwsx-query-wrap{display:contents!important}
.wwsx-query{
 min-width:0;
 padding:0 14px!important;
}
.wwsx-voice{
 position:static!important;
 transform:none!important;
 width:40px!important;
 height:40px!important;
 min-width:40px;
 border:1px solid #e0e5ef!important;
 border-radius:50%!important;
 background:#fff!important;
 color:#020c7d!important;
 box-shadow:none!important;
 cursor:pointer;
}
.wwsx-voice:hover,
.wwsx-voice:focus{
 border-color:#F54C85!important;
 color:#F54C85!important;
 background:#fff8fb!important;
 outline:none;
}
.wwsx-view-btn:disabled{
 opacity:.7;
 cursor:wait;
}

@media(max-width:560px){
 .wwsx-searchline{
  grid-template-columns:minmax(0,1fr) 40px!important;
 }
 .wwsx-search{
  grid-column:1/-1;
  width:100%;
 }
}


/* v0.3.0 — alerts, favourites and compare */
.wwsx-result-tool{
 min-height:34px;
 display:inline-flex;
 align-items:center;
 gap:6px;
 padding:0 11px;
 border:1px solid #e0e5ef;
 border-radius:999px;
 background:#fff;
 color:#263451;
 font:inherit;
 font-size:11.5px;
 font-weight:800;
 cursor:pointer;
}
.wwsx-result-tool:hover{border-color:#F54C85;color:#F54C85;background:#fff8fb}

.wwsx-card{position:relative}
.wwsx-card-actions{
 position:absolute;
 z-index:4;
 top:10px;
 right:10px;
 display:flex;
 gap:6px;
}
.wwsx-card-action{
 min-height:32px;
 display:inline-flex;
 align-items:center;
 gap:5px;
 padding:0 9px;
 border:1px solid rgba(255,255,255,.85);
 border-radius:999px;
 background:rgba(255,255,255,.94);
 color:#020c7d;
 font:inherit;
 font-size:10.5px;
 font-weight:850;
 cursor:pointer;
 box-shadow:0 5px 14px rgba(15,27,70,.13);
 backdrop-filter:blur(7px);
}
.wwsx-card-action span{display:none}
.wwsx-card-action:hover,.wwsx-card-action.is-active{
 border-color:#F54C85;
 background:#fff5f9;
 color:#F54C85;
}
.wwsx-card-action:disabled{opacity:.6;cursor:wait}

.wwsx-compare-tray{
 position:fixed;
 z-index:9998;
 left:50%;
 bottom:20px;
 transform:translateX(-50%);
 min-width:min(560px,calc(100vw - 28px));
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:18px;
 padding:10px 12px 10px 16px;
 border:1px solid rgba(2,12,125,.12);
 border-radius:999px;
 background:rgba(255,255,255,.97);
 color:#020c7d;
 box-shadow:0 16px 45px rgba(2,12,125,.20);
 backdrop-filter:blur(12px);
 font-size:12px;
}
.wwsx-compare-tray[hidden]{display:none}
.wwsx-compare-tray-actions{display:flex;gap:7px}
.wwsx-compare-tray-actions button{
 min-height:34px;padding:0 13px;border:0;border-radius:999px;background:transparent;
 color:#5f6b84;font:inherit;font-size:11px;font-weight:800;cursor:pointer
}
.wwsx-compare-tray-actions .wwsx-compare-now{background:#F54C85;color:#fff}

html.wwsx-modal-open{overflow:hidden}
.wwsx-modal[hidden]{display:none}
.wwsx-modal{
 position:fixed;
 z-index:10020;
 inset:0;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:24px;
}
.wwsx-modal-backdrop{position:absolute;inset:0;background:rgba(7,14,40,.56);backdrop-filter:blur(3px)}
.wwsx-modal-card{
 position:relative;
 z-index:1;
 width:min(620px,100%);
 max-height:min(84vh,800px);
 overflow:auto;
 padding:24px;
 border:1px solid rgba(2,12,125,.10);
 border-radius:22px;
 background:#fff;
 box-shadow:0 30px 80px rgba(2,12,125,.28);
}
.wwsx-modal-close{
 position:absolute;top:13px;right:13px;width:36px;height:36px;border:0;border-radius:50%;
 background:#f5f7fb;color:#59657e;cursor:pointer
}
.wwsx-modal-heading{display:flex;justify-content:space-between;gap:20px;padding-right:44px;margin-bottom:14px}
.wwsx-modal-heading h3,.wwsx-member-modal h3{margin:2px 0 0;color:#020c7d;font-size:22px}
.wwsx-kicker{color:#F54C85;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.wwsx-modal-icon{
 width:50px;height:50px;display:flex;align-items:center;justify-content:center;margin-bottom:13px;
 border-radius:50%;background:#fff3f8;color:#F54C85;font-size:19px
}
.wwsx-member-modal{text-align:center}
.wwsx-member-modal .wwsx-modal-icon{margin-left:auto;margin-right:auto}
.wwsx-member-modal p{color:#65718a;line-height:1.5}

.wwsx-modal-field{display:block;margin:15px 0}
.wwsx-modal-field>span{display:block;margin-bottom:6px;color:#3e4964;font-size:12px;font-weight:850}
.wwsx-modal-field input,.wwsx-modal-field select{
 width:100%;min-height:45px;padding:0 12px;border:1px solid #dce2ed;border-radius:10px;
 background:#fff;color:#263451;font:inherit;outline:none
}
.wwsx-modal-field input:focus,.wwsx-modal-field select:focus{
 border-color:#F54C85;box-shadow:0 0 0 3px rgba(245,76,133,.09)
}
.wwsx-check-row{display:flex;align-items:flex-start;gap:9px;margin:14px 0;color:#4e5a75;font-size:12px}
.wwsx-check-row input{margin-top:2px}
.wwsx-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.wwsx-modal-primary,.wwsx-modal-secondary{
 min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;
 padding:0 17px;border-radius:999px;font:inherit;font-size:12px;font-weight:850;cursor:pointer;text-decoration:none
}
.wwsx-modal-primary{border:0;background:#F54C85;color:#fff}
.wwsx-modal-secondary{border:1px solid #dce2ed;background:#fff;color:#59657e}
.wwsx-alert-summary{padding:11px 13px;border-radius:11px;background:#f7f8fc;color:#59657e;font-size:12px;line-height:1.45}

.wwsx-alert-list{display:flex;flex-direction:column;gap:8px}
.wwsx-alert-row{
 display:flex;align-items:center;justify-content:space-between;gap:16px;
 padding:13px 14px;border:1px solid #e4e8f1;border-radius:13px;background:#fff
}
.wwsx-alert-row-main{min-width:0}
.wwsx-alert-row-main strong{display:block;color:#020c7d;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wwsx-alert-row-main span{display:block;margin-top:3px;color:#7a8498;font-size:11px}
.wwsx-alert-row-actions{display:flex;gap:5px}
.wwsx-alert-row-actions button{
 width:34px;height:34px;border:1px solid #e1e6ef;border-radius:50%;background:#fff;color:#65718a;cursor:pointer
}
.wwsx-alert-row-actions button:hover{border-color:#F54C85;color:#F54C85}
.wwsx-alert-empty,.wwsx-modal-loading{
 min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:7px;color:#7a8498;text-align:center
}
.wwsx-alert-empty i{font-size:25px;color:#F54C85}
.wwsx-alert-empty strong{color:#020c7d}

.wwsx-compare-modal{width:min(1180px,100%);padding:24px 18px}
.wwsx-compare-scroll{overflow:auto}
.wwsx-compare-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}
.wwsx-compare-table th,.wwsx-compare-table td{
 min-width:175px;padding:12px;border-right:1px solid #edf0f5;border-bottom:1px solid #edf0f5;
 vertical-align:top;text-align:left;font-size:12px
}
.wwsx-compare-table thead th{background:#f8f9fc;color:#020c7d}
.wwsx-compare-table tbody th{position:sticky;left:0;z-index:1;min-width:145px;background:#f8f9fc;color:#56627d}
.wwsx-compare-table thead th:first-child{position:sticky;left:0;z-index:2}
.wwsx-compare-table a{color:#020c7d;font-weight:850;text-decoration:none}
.wwsx-compare-image{display:block;width:100%;height:100px;object-fit:cover;border-radius:9px;margin-bottom:8px}

.wwsx-global-toast{
 position:fixed;z-index:10100;right:20px;bottom:20px;max-width:380px;
 padding:12px 16px;border-radius:12px;background:#020c7d;color:#fff;
 box-shadow:0 14px 40px rgba(2,12,125,.25);font-size:12px;font-weight:750;
 opacity:0;transform:translateY(10px);pointer-events:none;transition:.18s ease
}
.wwsx-global-toast.is-visible{opacity:1;transform:none}
.wwsx-global-toast.is-error{background:#8b203d}

@media(max-width:680px){
 .wwsx-results-actions{flex-wrap:wrap}
 .wwsx-result-tool{font-size:0;width:34px;padding:0}
 .wwsx-result-tool i{font-size:12px}
 .wwsx-card-action span{display:none}
 .wwsx-compare-tray{bottom:10px;border-radius:18px;min-width:calc(100vw - 20px)}
 .wwsx-modal{padding:10px}
 .wwsx-modal-card{padding:20px 15px;border-radius:18px}
}


/* v0.3.1 — persistent Campaign tools + favourites view */
.wwsx-campaign-toolbar{
 width:min(1240px,calc(100% - 40px));
 margin:10px auto 0;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
 padding:8px 10px;
 border:1px solid #e5e9f2;
 border-radius:14px;
 background:#fff;
 box-shadow:0 8px 24px rgba(2,12,125,.045);
}
.wwsx-toolbar-left,.wwsx-toolbar-right{
 display:flex;
 align-items:center;
 gap:7px;
 flex-wrap:wrap;
}
.wwsx-campaign-toolbar .wwsx-view-toggle{
 display:inline-flex!important;
 flex:0 0 auto;
}
.wwsx-campaign-toolbar .wwsx-result-tool.is-active,
.wwsx-favourites-tool.is-active{
 border-color:#F54C85;
 background:#fff5f9;
 color:#F54C85;
}
.wwsx-results{
 width:min(1240px,calc(100% - 40px));
 margin-left:auto;
 margin-right:auto;
}
.wwsx-favourites-empty{
 min-height:210px;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:7px;
}
.wwsx-favourites-empty i{
 font-size:28px;
 color:#F54C85;
 margin-bottom:3px;
}
.wwsx-favourites-empty strong{
 color:#020c7d;
 font-size:15px;
}
.wwsx-favourites-empty span{
 color:#768097;
 font-size:12px;
}

@media(max-width:680px){
 .wwsx-campaign-toolbar{
  width:calc(100% - 20px);
  align-items:flex-start;
  flex-direction:column;
 }
 .wwsx-toolbar-left,.wwsx-toolbar-right{
  width:100%;
 }
 .wwsx-toolbar-right{
  justify-content:flex-end;
 }
 .wwsx-results{
  width:calc(100% - 20px);
 }
}


/* v0.3.2 — persistent Compare status in Campaign toolbar */
.wwsx-compare-tool{
 transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.wwsx-compare-tool.has-selection{
 border-color:#efc5d5;
 background:#fffafd;
 color:#020c7d;
}
.wwsx-compare-tool.is-active{
 border-color:#F54C85;
 background:#fff5f9;
 color:#F54C85;
 box-shadow:0 5px 14px rgba(245,76,133,.09);
}
.wwsx-compare-tool.is-active i{color:#F54C85}

@media(max-width:680px){
 .wwsx-compare-tool{
  width:auto!important;
  padding:0 10px!important;
  font-size:11px!important;
 }
 .wwsx-compare-tool span{
  display:inline!important;
 }
}

/* v0.4.0 — OSProperty specialist controls, using the Campaign Search master scale */
.wwsx-search-toolbar{
 width:min(1240px,calc(100% - 40px));
 margin:10px auto 0;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
 padding:8px 10px;
 border:1px solid #e5e9f2;
 border-radius:14px;
 background:#fff;
 box-shadow:0 8px 24px rgba(2,12,125,.045);
}
.wwsx-search-toolbar .wwsx-toolbar-left,
.wwsx-search-toolbar .wwsx-toolbar-right{
 display:flex;
 align-items:center;
 gap:7px;
 flex-wrap:wrap;
}
.wwsx-search-toolbar .wwsx-view-toggle{
 display:inline-flex!important;
 flex:0 0 auto;
}
.wwsx-search-toolbar .wwsx-result-tool.is-active,
.wwsx-search-toolbar .wwsx-favourites-tool.is-active{
 border-color:#F54C85;
 background:#fff5f9;
 color:#F54C85;
}

.wwsx-quick-type{
 min-width:64px;
 font-weight:850;
}
.wwsx-quick-type.is-active,
.wwsx-map-search-pill.is-active{
 border-color:#020c7d;
 background:#020c7d;
 color:#fff;
 box-shadow:0 5px 14px rgba(2,12,125,.11);
}
.wwsx-quick-type.is-active:hover,
.wwsx-map-search-pill.is-active:hover{
 border-color:#020c7d;
 background:#020c7d;
 color:#fff;
}

.wwsx-property-dd{
 position:relative;
 flex:0 0 auto!important;
 min-width:0!important;
 max-width:none!important;
}
.wwsx-property-panel{
 width:max-content;
 min-width:330px!important;
 max-width:min(560px,calc(100vw - 28px));
 max-height:min(68vh,620px);
 overflow:auto;
 padding:0;
}
.wwsx-property-panel--location{min-width:500px!important}
.wwsx-property-panel--price{min-width:380px!important}

.wwsx-panel-head{
 position:sticky;
 top:0;
 z-index:2;
 padding:13px 15px 10px;
 border-bottom:1px solid #edf0f6;
 background:#fff;
}
.wwsx-panel-head strong{
 color:#020c7d;
 font-size:13px;
 font-weight:900;
}
.wwsx-panel-body{
 padding:14px 15px 15px;
}
.wwsx-panel-foot{
 position:sticky;
 bottom:0;
 z-index:2;
 display:flex;
 justify-content:flex-end;
 padding:10px 15px 12px;
 border-top:1px solid #edf0f6;
 background:#fff;
}
.wwsx-panel-foot button{
 min-height:36px;
 padding:0 15px;
 border:0;
 border-radius:999px;
 background:#F54C85;
 color:#fff;
 font:inherit;
 font-size:11.5px;
 font-weight:850;
 cursor:pointer;
 box-shadow:0 6px 16px rgba(245,76,133,.16);
}
.wwsx-panel-grid{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:12px;
}
.wwsx-panel-field{
 display:block;
 min-width:0;
}
.wwsx-panel-field>span{
 display:block;
 margin:0 0 6px;
 color:#3f4b66;
 font-size:11.5px;
 font-weight:850;
}
.wwsx-panel-field input,
.wwsx-panel-field select{
 width:100%;
 min-height:41px;
 padding:0 11px;
 border:1px solid #dce2ed;
 border-radius:9px;
 background:#fff;
 color:#263451;
 font:inherit;
 font-size:12px;
 outline:none;
}
.wwsx-panel-field input:focus,
.wwsx-panel-field select:focus{
 border-color:#F54C85;
 box-shadow:0 0 0 3px rgba(245,76,133,.08);
}
.wwsx-panel-field small{
 display:block;
 margin-top:5px;
 color:#7b8599;
 font-size:10.5px;
 line-height:1.35;
}
.wwsx-panel-location-action{
 display:flex;
 flex-direction:column;
 align-items:flex-start;
 justify-content:flex-end;
}
.wwsx-panel-location-action button{
 min-height:41px;
 display:inline-flex;
 align-items:center;
 gap:7px;
 padding:0 12px;
 border:1px solid #efc4d5;
 border-radius:999px;
 background:#fff7fa;
 color:#020c7d;
 font:inherit;
 font-size:11.5px;
 font-weight:850;
 cursor:pointer;
}
.wwsx-panel-location-action button:hover{
 border-color:#F54C85;
 color:#F54C85;
}

.wwsx-option-grid{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:8px;
}
.wwsx-option-grid--two{
 grid-template-columns:repeat(2,minmax(0,1fr));
 margin-top:11px;
}
.wwsx-radio-card{
 display:flex;
 align-items:flex-start;
 gap:9px;
 min-height:58px;
 padding:10px 11px;
 border:1px solid #e1e6ef;
 border-radius:12px;
 background:#fff;
 color:#293550;
 cursor:pointer;
 transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.wwsx-radio-card:hover{
 border-color:#efbfd1;
 background:#fffafd;
}
.wwsx-radio-card:has(input:checked){
 border-color:#F54C85;
 background:#fff5f9;
 box-shadow:0 4px 12px rgba(245,76,133,.07);
}
.wwsx-radio-card input{
 flex:0 0 auto;
 width:16px;
 height:16px;
 margin:2px 0 0;
 accent-color:#F54C85;
}
.wwsx-radio-card>span{
 display:flex;
 flex-direction:column;
 gap:2px;
 min-width:0;
}
.wwsx-radio-card strong{
 color:#202d49;
 font-size:11.5px;
 line-height:1.25;
}
.wwsx-radio-card small{
 color:#778298;
 font-size:9.8px;
 line-height:1.35;
}

.wwsx-panel-section+ .wwsx-panel-section{
 margin-top:17px;
 padding-top:15px;
 border-top:1px solid #edf0f6;
}
.wwsx-panel-section>strong{
 display:block;
 margin-bottom:8px;
 color:#020c7d;
 font-size:12px;
 font-weight:900;
}
.wwsx-checkpanel{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:7px;
}
.wwsx-checkpanel--features{
 grid-template-columns:repeat(3,minmax(0,1fr));
}
.wwsx-check{
 display:flex;
 align-items:center;
 gap:7px;
 min-height:34px;
 padding:7px 9px;
 border:1px solid #e3e8f1;
 border-radius:10px;
 background:#fff;
 color:#3f4b65;
 font-size:10.8px;
 font-weight:750;
 cursor:pointer;
}
.wwsx-check:hover,
.wwsx-check:has(input:checked){
 border-color:#F54C85;
 background:#fff7fa;
 color:#020c7d;
}
.wwsx-check input{
 width:14px;
 height:14px;
 margin:0;
 accent-color:#F54C85;
}
.wwsx-panel-help{
 margin:14px 0 0;
 padding:9px 10px;
 border-radius:9px;
 background:#f7f8fc;
 color:#717c91;
 font-size:10.5px;
 line-height:1.45;
}

.wwsx-property-map-modal{
 width:min(1120px,100%);
}
.wwsx-map-search-help{
 margin:-3px 0 12px;
 color:#68748c;
 font-size:11.5px;
 line-height:1.5;
}
.wwsx-draw-map{
 width:100%;
 height:min(590px,62vh);
 min-height:430px;
 border:1px solid #e1e6ef;
 border-radius:14px;
 overflow:hidden;
 background:#f5f7fb;
}
.wwsx-map-search-actions{
 justify-content:space-between;
}
.wwsx-property-map-modal .leaflet-draw-toolbar a{
 box-sizing:content-box;
}
.wwsx-property-map-modal .leaflet-control-layers,
.wwsx-property-map-modal .leaflet-bar{
 box-shadow:0 2px 10px rgba(2,12,125,.14);
}
.wwsx-map-price{
 margin:3px 0 4px;
 color:#020c7d;
 font-size:13px;
 font-weight:900;
}

/* Property-specific information inside the shared Campaign-style card. */
.wwsx-properties .wwsx-property-price{
 margin:0 0 6px;
 color:#020c7d;
 font-size:15px;
 line-height:1.2;
 font-weight:900;
}
.wwsx-properties .wwsx-property-location{
 display:flex;
 align-items:flex-start;
 gap:5px;
 margin:0 0 7px;
 color:#667189;
 font-size:10.8px;
 line-height:1.4;
}
.wwsx-properties .wwsx-property-location i{
 flex:0 0 auto;
 margin-top:2px;
 color:#F54C85;
 font-size:10px;
}

/* Make Property result cards feel identical in scale to Campaign cards. */
.wwsx-properties .wwsx-card-title{
 font-size:14px;
 line-height:1.35;
}
.wwsx-properties .wwsx-card-type{
 font-size:10.5px;
}
.wwsx-properties .wwsx-card-meta{
 font-size:10.8px;
}

@media(max-width:900px){
 .wwsx-property-panel--location{min-width:min(500px,calc(100vw - 28px))!important}
 .wwsx-checkpanel--features{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 .wwsx-search-toolbar{
  width:calc(100% - 20px);
  align-items:flex-start;
  flex-direction:column;
 }
 .wwsx-search-toolbar .wwsx-toolbar-left,
 .wwsx-search-toolbar .wwsx-toolbar-right{width:100%}
 .wwsx-search-toolbar .wwsx-toolbar-right{justify-content:flex-end}
 .wwsx-property-panel,
 .wwsx-property-panel--location,
 .wwsx-property-panel--price{
  position:fixed!important;
  left:10px!important;
  right:10px!important;
  bottom:10px!important;
  top:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:min(76vh,620px)!important;
 }
 .wwsx-panel-grid,
 .wwsx-option-grid,
 .wwsx-option-grid--two,
 .wwsx-checkpanel,
 .wwsx-checkpanel--features{grid-template-columns:1fr}
 .wwsx-draw-map{height:min(500px,58vh);min-height:350px}
}

/* Preserve the original OSProperty Buy/Rent quick actions beside Search. */
.wwsx-properties .wwsx-searchline{
 grid-template-columns:minmax(0,1fr) 40px auto auto!important;
}
.wwsx-quick-types{
 display:flex;
 align-items:center;
 gap:6px;
}
.wwsx-quick-types .wwsx-quick-type{
 min-height:40px;
 padding:0 13px;
}
@media(max-width:760px){
 .wwsx-properties .wwsx-searchline{
  grid-template-columns:minmax(0,1fr) 40px!important;
 }
 .wwsx-quick-types{
  grid-column:1/2;
  align-self:start;
 }
 .wwsx-properties .wwsx-search{
  grid-column:2/3;
  min-height:40px;
  padding:0 13px;
  font-size:0;
 }
 .wwsx-properties .wwsx-search i{font-size:13px}
}


/* v0.4.1 — one visible Property search UI + proven map-search behaviour */
.wwps-search-shell.wwsx-legacy-property-search-hidden{
 display:none!important;
}

.wwsx-property-map-modal--legacy{
 width:min(980px,calc(100vw - 32px))!important;
}
.wwsx-property-map-modal--legacy .wwsx-draw-map{
 height:min(58vh,520px);
 min-height:410px;
 border-radius:18px;
 overflow:hidden;
 border:1px solid #e3e8f3;
}
.wwsx-map-search-actions--split{
 justify-content:space-between!important;
 gap:14px!important;
}
.wwsx-map-search-primary-actions{
 display:flex;
 align-items:center;
 justify-content:flex-end;
 gap:9px;
 flex-wrap:wrap;
}
.wwsx-map-list-map{
 border-color:#d8def0!important;
 color:#020c7d!important;
 background:#eef2ff!important;
}
.wwsx-map-list-map:hover{
 border-color:#020c7d!important;
}
@media(max-width:680px){
 .wwsx-property-map-modal--legacy .wwsx-draw-map{
  height:52vh;
  min-height:340px;
 }
 .wwsx-map-search-actions--split{
  align-items:stretch!important;
  flex-direction:column!important;
 }
 .wwsx-map-search-primary-actions{
  width:100%;
 }
 .wwsx-map-search-primary-actions>*{
  flex:1 1 0;
 }
}


/* v0.4.3 */
.wwsx-reset-tool{border-color:#d8def0!important;background:#fff!important;color:#020c7d!important}
.wwsx-reset-tool:hover{border-color:#020c7d!important;background:#f6f7ff!important}
html.wwsx-ui-fullscreen,html.wwsx-ui-fullscreen body{overflow:hidden!important}
.wwsx-map{position:relative}
.wwsx-map--fullscreen{position:fixed!important;inset:10px!important;z-index:100080!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;border-radius:18px!important;box-shadow:0 22px 70px rgba(2,12,125,.28)!important;background:#fff!important}
.wwsx-map-fullscreen-control button{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:0;background:#fff;color:#020c7d;cursor:pointer;font-size:14px}
.wwsx-map-fullscreen-control button:hover{background:#f5f7fc}
.wwsx-modal-corner-actions{position:absolute;top:16px;right:16px;z-index:12;display:flex;gap:7px}
.wwsx-modal-expand,.wwsx-modal-corner-actions .wwsx-modal-close{position:static!important;width:38px!important;height:38px!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px solid #e1e6f0!important;border-radius:999px!important;background:#fff!important;color:#020c7d!important;box-shadow:0 6px 18px rgba(2,12,125,.08);cursor:pointer}
.wwsx-modal-expand:hover,.wwsx-modal-corner-actions .wwsx-modal-close:hover{border-color:#020c7d!important;background:#f6f7ff!important}
.wwsx-modal-card--fullscreen{position:fixed!important;inset:8px!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;border-radius:18px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.wwsx-modal-card--fullscreen .wwsx-draw-map{flex:1 1 auto!important;height:auto!important;max-height:none!important;min-height:300px!important}
.wwsx-modal-card--fullscreen .wwsx-compare-scroll{flex:1 1 auto!important;max-height:none!important;overflow:auto!important}
.wwsx-compare-modal{width:min(1180px,calc(100vw - 32px))!important}
.wwsx-compare-heading{padding-right:92px;align-items:flex-start!important;gap:14px}
.wwsx-compare-heading p{margin:6px 0 0;color:#6d7891}
.wwsx-compare-heading-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.wwsx-native-compare-link{text-decoration:none!important}
.wwsx-compare-property-head{min-width:220px;position:relative;padding-top:14px!important}
.wwsx-compare-property-head .wwsx-compare-image{width:100%;max-width:190px;height:118px;object-fit:cover;border-radius:12px;display:block;margin:0 0 9px}
.wwsx-compare-property-head>a{display:block;color:#020c7d;font-weight:800;text-decoration:none;padding-right:24px}
.wwsx-compare-remove-inline{position:absolute;top:9px;right:9px;width:28px;height:28px;border-radius:999px;border:1px solid #e1e6f0;background:#fff;color:#68738a;cursor:pointer}
.wwsx-compare-remove-inline:hover{color:#F54C85;border-color:#F54C85}
.wwsx-compare-long-row td{min-width:220px;white-space:normal;line-height:1.5}
@media(max-width:720px){.wwsx-map--fullscreen{inset:4px!important;border-radius:12px!important}.wwsx-modal-card--fullscreen{inset:4px!important;border-radius:12px!important}.wwsx-compare-heading-actions{justify-content:flex-start}}


/* v0.4.5 — Universal results now use the same property-card structure as the main listings */
.wwsx-properties .wwps-universal-property-grid{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:20px;
 align-items:start;
 margin-top:16px;
}
.wwsx-properties .wwps-universal-property-grid .property-card{
 box-shadow:0 4px 10px #0000001a;
 transition:transform .3s ease-in-out;
 border-radius:10px;
 overflow:hidden;
 background:#fff;
 display:flex;
 flex-direction:column;
 padding:0;
 margin:0;
 border:0;
}
.wwsx-properties .wwps-universal-property-grid .property-card:hover{transform:scale(1.03)}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper{
 width:100%;
 height:200px;
 margin:0;
 padding:0;
 position:relative;
 cursor:pointer;
 overflow:hidden;
}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper .property-type{
 position:absolute;
 top:10px;
 left:10px;
 background-color:#00000080;
 color:#fff;
 padding:5px 10px;
 border-radius:5px;
 z-index:99;
 font-size:14px;
 text-transform:none;
 letter-spacing:0;
 font-weight:500;
}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-wrapper,
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-slide{
 width:100%;
 height:100%;
}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-slide img{
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
 border-radius:0;
}
.wwsx-properties .wwps-universal-property-grid .property-card .card-body{padding:5px 15px 10px}
.wwsx-properties .wwps-universal-property-grid .property-card .card-title{margin:4px 0 0}
.wwsx-properties .wwps-universal-property-grid .property-card .card-title,
.wwsx-properties .wwps-universal-property-grid .property-card .card-title a{
 font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;
 font-size:17px!important;
 line-height:1.35!important;
 color:#11172b!important;
 font-weight:800!important;
 text-decoration:none!important;
}
.wwsx-properties .wwps-universal-property-grid .property-card .property-price{
 position:relative;
 z-index:2;
 font-size:18px!important;
 line-height:1.2!important;
 font-weight:700!important;
 color:#11172b;
 margin-top:2px;
}
.wwsx-properties .wwps-universal-property-grid .property-card .property-address{
 font-size:14px;
 color:#555;
 margin:5px 0 0;
 display:flex;
 align-items:flex-start;
 gap:5px;
}
.wwsx-properties .wwps-universal-property-grid .property-card .property-details{
 display:flex;
 flex-wrap:wrap;
 align-items:center;
 justify-content:flex-start;
 gap:8px 14px;
 margin-top:10px;
}
.wwsx-properties .wwps-universal-property-grid .property-card .property-detail{
 margin-right:0;
 display:inline-flex;
 align-items:center;
 white-space:nowrap;
 line-height:1.2;
 font-size:14px;
 color:#11172b;
 font-weight:700;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-icon{
 width:18px;
 height:18px;
 flex:0 0 18px;
 display:inline-flex;
 color:#000;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-icon svg{width:100%;height:100%}
.wwsx-properties .wwps-universal-property-grid .property-card .divider{border-top:1px solid #ccc;margin:10px 0}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-info{display:flex;margin-top:10px}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-avatar{margin:5px 10px 0 0}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-avatar img{width:40px;height:40px;border-radius:50%;margin-right:10px;object-fit:cover}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-name{font-size:14px;color:#333}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-name p{margin:0}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-name-text{font-weight:800;color:#11172b}
.wwsx-properties .wwps-universal-property-grid .property-card .agent-phone{font-size:12px;color:#555;margin-top:5px!important}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-actions{
 display:flex;
 flex-wrap:nowrap;
 gap:10px;
 margin-top:14px;
 align-items:center;
 position:static;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:48px;
 height:48px;
 min-height:48px;
 padding:0;
 border-radius:999px;
 border:1px solid #e1e7f2;
 background:#fff;
 color:#24304f;
 text-decoration:none;
 flex:0 0 48px;
 box-shadow:none;
 backdrop-filter:none;
 cursor:pointer;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action:hover,
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action:focus{
 border-color:#F54C85;
 color:#F54C85;
 background:#fff;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active{
 background:#020C7D;
 color:#fff;
 border-color:#020C7D;
}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-button-next,
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-button-prev{
 position:absolute;
 top:60%;
 transform:translateY(-50%);
 background-color:#00000080;
 color:#fff;
 border:none;
 padding:10px 15px;
 font-size:18px;
 cursor:pointer;
 z-index:10;
 border-radius:5px;
 opacity:.7;
 transition:opacity .3s;
}
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-button-next:hover,
.wwsx-properties .wwps-universal-property-grid .property-card .swiper-button-prev:hover{opacity:1;background-color:#000c}
.wwsx-properties .wwsx-reset-pill i{margin-right:6px}

@media(max-width:1200px){
 .wwsx-properties .wwps-universal-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 .wwsx-properties .wwps-universal-property-grid{grid-template-columns:1fr}
 .wwsx-properties .wwps-universal-property-grid .property-card .card-title,
 .wwsx-properties .wwps-universal-property-grid .property-card .card-title a{font-size:16px!important}
 .wwsx-properties .wwps-universal-property-grid .property-card .property-price{font-size:17px!important}
}


/* v0.4.6 — active card icons remain visible on blue state */
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon{
 color:#fff!important;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon-balance svg,
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon-balance path,
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon-balance circle{
 stroke:#fff!important;
 fill:none!important;
}
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon-heartSolid svg,
.wwsx-properties .wwps-universal-property-grid .property-card .wwps-card-action.is-active .wwps-icon-heartSolid path{
 fill:#fff!important;
 stroke:none!important;
}

.wwsx-properties .wwsx-clear-favourites-tool{
 border-color:#f0d5df!important;
 color:#a42c55!important;
 background:#fff8fb!important;
}
.wwsx-properties .wwsx-clear-favourites-tool:hover{
 border-color:#F54C85!important;
 color:#F54C85!important;
 background:#fff!important;
}
.wwsx-properties .wwsx-clear-favourites-modal{
 max-width:520px!important;
 text-align:center;
}
.wwsx-properties .wwsx-clear-favourites-modal .wwsx-modal-actions{
 justify-content:center!important;
}
.wwsx-properties .wwsx-danger-action{
 background:#F54C85!important;
 border-color:#F54C85!important;
 color:#fff!important;
}
.wwsx-properties .wwsx-danger-action:hover{
 filter:brightness(.96);
}


/* v0.4.9 — Favourites behaves like Compare: modal, close/back and fullscreen */
.wwsx-properties .wwsx-favourites-modal{
 width:min(1220px,calc(100vw - 32px))!important;
 max-height:min(88vh,920px);
 display:flex;
 flex-direction:column;
 overflow:hidden;
}
.wwsx-properties .wwsx-favourites-heading{
 padding-right:92px;
 align-items:flex-start!important;
 gap:18px;
 flex:0 0 auto;
}
.wwsx-properties .wwsx-favourites-heading p{
 margin:6px 0 0;
 color:#6d7891;
}
.wwsx-properties .wwsx-favourites-heading-actions{
 display:flex;
 gap:8px;
 flex-wrap:wrap;
 align-items:center;
 justify-content:flex-end;
}
.wwsx-properties .wwsx-favourites-modal-scroll{
 overflow:auto;
 padding:2px 2px 16px;
 flex:1 1 auto;
 min-height:0;
}
.wwsx-properties .wwsx-favourites-modal-grid{
 margin-top:10px!important;
 padding:0 1px 8px;
}
.wwsx-properties .wwsx-favourites-modal-grid .wwsx-empty{
 grid-column:1/-1;
 min-height:220px;
 display:flex;
 flex-direction:column;
 justify-content:center;
 align-items:center;
 gap:8px;
}
.wwsx-properties .wwsx-modal-card--fullscreen.wwsx-favourites-modal{
 max-height:none!important;
}
.wwsx-properties .wwsx-modal-card--fullscreen .wwsx-favourites-modal-scroll{
 flex:1 1 auto!important;
 overflow:auto!important;
}
@media(max-width:760px){
 .wwsx-properties .wwsx-favourites-modal{
  width:calc(100vw - 16px)!important;
  max-height:92vh;
 }
 .wwsx-properties .wwsx-favourites-heading{
  padding-right:0;
  padding-top:44px;
  flex-direction:column;
 }
 .wwsx-properties .wwsx-favourites-heading-actions{
  justify-content:flex-start;
  width:100%;
 }
 .wwsx-properties .wwsx-favourites-heading-actions>*{
  flex:1 1 auto;
 }
}


/* v0.5.0 — compact mobile Property Search UI */
.wwsx-panel-head{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
}
.wwsx-panel-close{
 width:34px;
 height:34px;
 flex:0 0 34px;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 border:0;
 border-radius:50%;
 background:#fff0f6;
 color:#F54C85;
 font:inherit;
 cursor:pointer;
}
.wwsx-panel-close:hover,.wwsx-panel-close:focus{
 background:#F54C85;
 color:#fff;
 outline:none;
}
.wwsx-mobile-map-action{
 width:100%;
 min-height:42px;
 display:flex;
 align-items:center;
 justify-content:center;
 gap:8px;
 padding:0 14px;
 border:1px solid #dce2ed;
 border-radius:12px;
 background:#fff;
 color:#020c7d;
 font:inherit;
 font-size:12px;
 font-weight:850;
 cursor:pointer;
}
.wwsx-mobile-map-action.is-active{
 border-color:#020c7d;
 background:#020c7d;
 color:#fff;
}

@media(max-width:760px){
 .wwsx-properties .wwsx-filterbar.is-mobile-compact{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  align-items:stretch!important;
  margin-top:10px!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-property-dd,
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-filter-action{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  flex:none!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact .wwsx-dd-toggle,
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-filter-action{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:0 11px!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact .wwsx-dd-toggle{
  justify-content:space-between!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-reset-pill{
  justify-content:center!important;
  border-color:#e0e5ef!important;
  background:#fff!important;
  color:#263451!important;
  box-shadow:none!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-reset-pill:hover{
  border-color:#F54C85!important;
  color:#F54C85!important;
 }
 .wwsx-properties .wwsx-filterbar.is-mobile-compact>.wwsx-applied{
  grid-column:1/-1!important;
  width:100%!important;
  padding-top:2px!important;
 }

 /* Filter panels become a proper mobile bottom sheet with an always-visible close button. */
 .wwsx-properties .wwsx-property-panel,
 .wwsx-properties .wwsx-property-panel--location,
 .wwsx-properties .wwsx-property-panel--price{
  position:fixed!important;
  z-index:2147483000!important;
  left:8px!important;
  right:8px!important;
  bottom:max(8px,env(safe-area-inset-bottom))!important;
  top:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:calc(100dvh - 24px)!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  border-radius:18px!important;
 }
 .wwsx-properties .wwsx-panel-head{
  position:sticky!important;
  top:0!important;
  z-index:5!important;
  min-height:52px;
  padding:9px 12px!important;
 }
 .wwsx-properties .wwsx-panel-close{
  width:38px!important;
  height:38px!important;
  flex-basis:38px!important;
  background:#F54C85!important;
  color:#fff!important;
  box-shadow:0 5px 16px rgba(245,76,133,.22);
 }
 .wwsx-properties .wwsx-panel-body{padding:12px!important}
 .wwsx-properties .wwsx-panel-foot{
  position:sticky!important;
  bottom:0!important;
  z-index:5!important;
  padding:9px 12px max(9px,env(safe-area-inset-bottom))!important;
 }
 .wwsx-properties .wwsx-panel-foot button{
  width:100%!important;
  min-height:42px!important;
 }

 /* Keep option-heavy sheets compact: two choices per row. */
 .wwsx-properties .wwsx-property-panel:not(.wwsx-property-panel--location) .wwsx-option-grid,
 .wwsx-properties .wwsx-property-panel:not(.wwsx-property-panel--location) .wwsx-option-grid--two,
 .wwsx-properties .wwsx-mobile-more-panel .wwsx-option-grid,
 .wwsx-properties .wwsx-mobile-more-panel .wwsx-checkpanel,
 .wwsx-properties .wwsx-mobile-more-panel .wwsx-checkpanel--features{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
 .wwsx-properties .wwsx-property-panel--price .wwsx-panel-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
 .wwsx-properties .wwsx-property-panel--location .wwsx-panel-grid{
  grid-template-columns:1fr!important;
 }
 .wwsx-properties .wwsx-radio-card{
  min-height:52px!important;
  padding:8px 9px!important;
 }
 .wwsx-properties .wwsx-radio-card small{
  display:none;
 }
 .wwsx-properties .wwsx-panel-section+ .wwsx-panel-section{
  margin-top:13px!important;
  padding-top:12px!important;
 }

 /* Results toolbar: one compact grid rather than stacked left/right rows. */
 .wwsx-properties .wwsx-search-toolbar{
  width:calc(100% - 20px)!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  align-items:stretch!important;
  padding:6px!important;
 }
 .wwsx-properties .wwsx-search-toolbar .wwsx-toolbar-left,
 .wwsx-properties .wwsx-search-toolbar .wwsx-toolbar-right{
  display:contents!important;
 }
 .wwsx-properties .wwsx-search-toolbar .wwsx-view-toggle{
  display:contents!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
 }
 .wwsx-properties .wwsx-search-toolbar [data-view-cards]{
  display:none!important;
 }
 .wwsx-properties .wwsx-search-toolbar .wwsx-view-btn,
 .wwsx-properties .wwsx-search-toolbar .wwsx-result-tool,
 .wwsx-properties .wwsx-search-toolbar .wwsx-compare-tool{
  width:100%!important;
  min-width:0!important;
  min-height:36px!important;
  padding:0 6px!important;
  justify-content:center!important;
  font-size:10px!important;
  white-space:nowrap;
 }
 .wwsx-properties .wwsx-search-toolbar .wwsx-result-tool i,
 .wwsx-properties .wwsx-search-toolbar .wwsx-view-btn i{
  font-size:11px!important;
 }
 .wwsx-properties .wwsx-search-toolbar .wwsx-compare-tool span{
  display:inline!important;
  overflow:hidden;
  text-overflow:ellipsis;
 }
}
