*{box-sizing:border-box}body.terrenos-map-v2{--tce-text-xs:12px;--tce-text-caption:13px;--tce-text-sm:14px;--tce-text-control:15px;--tce-text-base:16px;--tce-text-md:18px;--tce-text-lg:20px;--tce-text-price:24px;margin:0;background:#edf3eb;color:#17271e;font:500 var(--tce-text-sm)/1.5 'Plus Jakarta Sans',system-ui,sans-serif}body.tm2-locked{overflow:hidden}:where(.terrenos-map-v2) :is(button,input,select){font:inherit}.terrenos-map-v2 button{cursor:pointer}.terrenos-map-v2 :focus-visible{outline:3px solid #176b3a;outline-offset:2px}.terrenos-map-v2 [hidden]{display:none!important}.tm2-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.tm2-skip{position:absolute;left:10px;top:-50px;background:#fff;padding:9px;z-index:90}.tm2-skip:focus{top:10px}.tm2-header{height:68px;background:#0b3021;display:flex;align-items:center;gap:30px;padding:0 clamp(16px,4vw,75px);color:#fff}.tm2-header img{width:190px;height:auto;max-height:50px}.tm2-header nav{margin:auto}.tm2-header .tm2-menu{display:flex;gap:20px;list-style:none;margin:0;padding:0}.tm2-header a{color:#fff;text-decoration:none}.tm2-header a:hover{text-decoration:underline}.tm2-publish,.tm2-search,.tm2-filter-sheet footer [data-role=apply]{background:#5cf000;color:#103017!important;border:0;border-radius:10px;font-weight:800;padding:11px 18px;text-decoration:none}.tm2-app{height:calc(100dvh - 68px);min-height:500px;position:relative;display:flex;flex-direction:column;isolation:isolate}.tm2-toolbar{z-index:15;position:absolute;top:15px;left:clamp(10px,3vw,60px);right:clamp(10px,3vw,60px);display:flex;gap:7px;align-items:center;max-width:1320px}.tm2-toolbar>label,.tm2-toolbar>.tm2-more,.tm2-views{background:#fff;border:1px solid #dbe2dc;border-radius:10px;min-height:43px;box-shadow:0 3px 16px #0a2d1633}.tm2-toolbar label{display:flex;align-items:center}.tm2-toolbar input,.tm2-toolbar select{width:100%;height:42px;border:0;background:transparent;color:#26352d;padding:0 12px;outline:none;font-size:var(--tce-text-base)}.tm2-location{position:relative;min-width:210px;flex:1}.tm2-toolbar label:not(.tm2-location){width:150px}.tm2-toolbar .tm2-more{border:1px solid #dbe2dc;padding:0 14px}.tm2-search{min-height:43px}.tm2-views{display:flex;padding:3px}.tm2-views button{border:0;background:none;border-radius:7px;padding:8px 12px;font-weight:700}.tm2-views button[aria-pressed=true]{background:#0c3221;color:#fff}.tm2-suggestions{position:absolute;top:46px;left:0;right:0;background:#fff;border-radius:10px;box-shadow:0 12px 25px #0003;max-height:300px;overflow:auto;z-index:40}.tm2-suggestions button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:10px 12px}.tm2-suggestions button:hover{background:#eef8e9}.tm2-chips{z-index:12;position:absolute;top:70px;left:clamp(10px,3vw,60px);right:clamp(10px,3vw,60px);display:flex;gap:7px;overflow:auto;pointer-events:none}.tm2-chips button{pointer-events:auto;border:0;border-radius:20px;background:#103023e8;color:#fff;padding:6px 11px;font-size:var(--tce-text-sm);white-space:nowrap}.tm2-chips button:last-child{background:#5cf000;color:#132d14}.tm2-workspace{height:100%;display:flex;min-height:0}.tm2-map-area{position:relative;flex:1;min-width:0;background:#e1eddd}.tm2-map{position:absolute;inset:0}.tm2-list{width:360px;max-width:38%;background:#f8f9f8;box-shadow:-4px 0 15px #17251f1a;z-index:2;display:flex;flex-direction:column}.tm2-list-head{padding:16px;display:flex;gap:10px;align-items:center;justify-content:space-between}.tm2-list-head label{font-size:var(--tce-text-sm)}.tm2-list-head select{border:1px solid #ccd4ce;border-radius:7px;padding:6px;max-width:120px}.tm2-list-items{overflow:auto;padding:0 12px 20px;display:grid;align-content:start;gap:10px}.tm2-list-card{background:#fff;border:2px solid transparent;border-radius:14px;box-shadow:0 3px 12px #0001;display:flex;gap:10px;padding:6px;min-height:112px;cursor:pointer}.tm2-list-card.is-selected,.tm2-list-card.is-hovered{border-color:#5cf000}.tm2-list-card img{width:120px;object-fit:cover;border-radius:9px;aspect-ratio:1.3}.tm2-list-card div{display:grid;align-content:center;gap:3px}.tm2-list-card small{color:#667069;font-size:var(--tce-text-caption)}.tm2-list-card strong{font-size:var(--tce-text-control);line-height:1.2}.tm2-list-card b{font-size:var(--tce-text-lg)}.tm2-categories{position:absolute;top:118px;left:12px;background:#fffffff2;border-radius:12px;padding:8px;max-height:calc(100% - 210px);overflow:auto;width:210px;z-index:5;box-shadow:0 6px 22px #09261d38}.tm2-categories button{display:flex;align-items:center;gap:7px;border:0;background:none;color:#23352a;width:100%;text-align:left;padding:6px;border-radius:7px;font-size:var(--tce-text-sm)}.tm2-categories button:hover,.tm2-categories button.is-active{background:#dff8d0;color:#123e1c}.tm2-categories button:first-child{font-weight:700}.tm2-categories img{width:22px;height:22px}.tm2-map-controls{position:absolute;right:12px;bottom:80px;display:grid;gap:5px;z-index:5}.tm2-map-controls button{background:#fff;border:0;border-radius:9px;box-shadow:0 3px 12px #0003}.tm2-map-controls button{width:40px;height:40px;font-size:23px}.tm2-status{position:absolute;z-index:5;bottom:16px;left:50%;transform:translateX(-50%);background:#0d3025ed;color:#fff;border-radius:20px;padding:6px 13px;max-width:50%;text-align:center;font-size:var(--tce-text-sm)}.tm2-preview{position:absolute;z-index:8;background:#fff;box-shadow:0 14px 32px #0004;border-radius:12px}.tm2-preview{left:min(220px,15vw);top:145px;width:345px;max-height:calc(100% - 180px);overflow:auto}.tm2-preview>.tm2-property-image img{width:100%;aspect-ratio:16/9;object-fit:cover}.tm2-preview-close{position:absolute;right:8px;top:8px;border:0;background:#fff;border-radius:50%;width:32px;height:32px;font-size:22px}.tm2-preview-content{padding:16px;display:grid;gap:7px}.tm2-preview-content small{color:#647268}.tm2-preview-content h2{font-size:var(--tce-text-base);margin:0;line-height:1.25}.tm2-preview-content strong{font-size:var(--tce-text-price)}.tm2-preview-content p{margin:0;color:#526255}.tm2-preview-content .tm2-property-cta{background:#5cf000;color:#123511;text-decoration:none;text-align:center;border-radius:9px;padding:10px;font-weight:800}.tm2-mobile-nav{display:none}.tm2-scrim{position:fixed;inset:0;background:#0a2419ac;z-index:50}.tm2-filter-sheet{position:fixed;z-index:51;right:0;top:0;bottom:0;width:min(420px,100%);background:#fff;box-shadow:-10px 0 30px #0003;display:flex;flex-direction:column}.tm2-filter-sheet header,.tm2-filter-sheet footer{padding:18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2e8e2}.tm2-filter-sheet h2{margin:0}.tm2-filter-sheet header button{font-size:26px;background:none;border:0}.tm2-filter-body{overflow:auto;flex:1;padding:20px;display:grid;align-content:start;gap:16px}.tm2-filter-body label{display:grid;gap:5px;font-weight:700}.tm2-filter-body input,.tm2-filter-body select{min-height:43px;border:1px solid #bacabc;border-radius:8px;padding:8px;background:#fff}.tm2-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tm2-filter-sheet footer{border-top:1px solid #e2e8e2;border-bottom:0;gap:10px}.tm2-filter-sheet footer button{min-height:44px;flex:1}.tm2-filter-sheet footer [data-role=clear]{border:1px solid #bdcbbd;background:#fff;border-radius:8px}.tm2-nojs{position:absolute;z-index:20;background:#fff;padding:16px;top:40%;left:10%}
@media(max-width:1100px){.tm2-header nav{display:none}.tm2-header .tm2-publish{margin-left:auto}.tm2-toolbar>label:not(.tm2-location),.tm2-toolbar .tm2-more{display:none}.tm2-toolbar{max-width:600px}.tm2-views{margin-left:auto}.tm2-categories{width:210px}.tm2-preview{left:234px}}
@media(max-width:767px){.tm2-header{height:58px;padding:0 12px}.tm2-header img{width:155px}.tm2-publish{font-size:var(--tce-text-sm);padding:8px!important}.tm2-app{height:calc(100dvh - 58px);min-height:460px}.tm2-toolbar{top:10px;left:10px;right:10px}.tm2-toolbar .tm2-search,.tm2-toolbar .tm2-views{display:none}.tm2-location{min-width:0}.tm2-chips{top:63px;left:10px;right:10px}.tm2-categories{display:none}.tm2-map-controls{bottom:80px}.tm2-status{bottom:66px;max-width:85%;width:max-content}.tm2-mobile-nav{display:flex;position:absolute;bottom:0;left:0;right:0;height:58px;background:#0c3021;z-index:11}.tm2-mobile-nav button{flex:1;border:0;background:none;color:#fff;font-weight:700}.tm2-mobile-nav button:focus,.tm2-mobile-nav button:hover{color:#5cf000}.tm2-list{position:absolute;inset:0 0 58px;width:100%;max-width:none;z-index:7}.tm2-preview{left:0;right:0;top:auto;bottom:58px;width:100%;max-height:60dvh;border-radius:20px 20px 0 0;box-shadow:0 -8px 35px #0004}.tm2-preview>.tm2-property-image img{aspect-ratio:16/7}.tm2-preview-content{padding:12px;gap:4px}.tm2-preview-content h2{font-size:var(--tce-text-base)}.tm2-preview-content strong{font-size:var(--tce-text-price)}.tm2-preview-content .tm2-property-cta{padding:9px}.tm2-filter-sheet{top:auto;bottom:0;border-radius:20px 20px 0 0;max-height:92dvh}.tm2-filter-body{padding:15px}.tm2-filter-grid{gap:8px}}
@media(prefers-reduced-motion:reduce){.terrenos-map-v2 *{scroll-behavior:auto!important;animation-duration:0.01ms!important;transition-duration:0.01ms!important}}
.tm2-list-head{flex-wrap:wrap}.tm2-list-head [data-role=full-list]{width:100%;font-size:var(--tce-text-sm);color:#176b3a;font-weight:700;text-decoration:none}.tm2-list-head [data-role=full-list]:hover{text-decoration:underline}
.tm2-badges{display:flex;gap:5px;flex-wrap:wrap}.tm2-badges span{background:#e3f7d4;color:#18592f;border-radius:13px;font-size:var(--tce-text-caption);font-weight:800;padding:3px 7px}.tm2-badges span:first-child{background:#5cf000;color:#123511}

/* Shared type scale and touch targets for the Map V2 surface. */
.tm2-header nav{font-size:var(--tce-text-base);font-weight:600}
.tm2-publish,.tm2-search,.tm2-more,.tm2-views button,.tm2-mobile-nav button,.tm2-filter-sheet footer button,.tm2-preview-content .tm2-property-cta{font-size:var(--tce-text-control);font-weight:600;min-height:44px}
.tm2-publish{display:inline-flex;align-items:center;justify-content:center}
.tm2-toolbar>label,.tm2-toolbar input,.tm2-toolbar select{min-height:44px}
.tm2-categories button{min-height:40px;line-height:1.4;text-align:left}
.tm2-categories [data-role=collapse-categories]{font-size:var(--tce-text-base)}
.tm2-categories img{flex-shrink:0}
.tm2-preview-content small{font-size:var(--tce-text-caption)}
.tm2-preview-close,.tm2-map-controls button,.tm2-filter-sheet header button{width:44px;height:44px}
.tm2-filter-body input,.tm2-filter-body select,.tm2-list-head select{font-size:var(--tce-text-base);min-width:0;max-width:100%}
.tm2-filter-grid>*{min-width:0}
.tm2-list-card>div{min-width:0;overflow-wrap:anywhere}
.tm2-list-card img{width:100px;flex-shrink:0}

.tm2-header{gap:16px}
@media(min-width:768px) and (max-width:1100px){.tm2-toolbar .tm2-more{display:block}.tm2-toolbar{max-width:none}}
@media(max-width:767px){.tm2-header{gap:8px}.tm2-publish{font-size:var(--tce-text-sm)}.tm2-list-card small,.tm2-preview-content small{font-size:var(--tce-text-sm)}.tm2-preview-content strong{font-size:var(--tce-text-price)}}

.tm2-toolbar label:not(.tm2-location){width:180px;min-width:160px}
.tm2-list{padding-top:76px}
.tm2-list-items{min-height:0;grid-auto-rows:max-content}
.tm2-list-card{align-items:flex-start}
.tm2-list-card>div{display:block}
.tm2-list-card>div>*{display:block;margin:0 0 4px}
.tm2-list-card img{height:100px;aspect-ratio:auto}
@media(min-width:768px){.tm2-preview{left:234px}}
@media(max-width:767px){.tm2-list{padding-top:60px}.tm2-map .maplibregl-ctrl-bottom-right{bottom:58px}}

/* Property links and explicit map selection remain separate actions. */
.tm2-property-image{display:block;flex-shrink:0;line-height:0}
.tm2-property-title{color:inherit;text-decoration:none;font-weight:700;line-height:1.25}
.tm2-property-title:hover{text-decoration:underline}
.tm2-list-card{cursor:default}
.tm2-list-card .tm2-property-title{font-size:var(--tce-text-control)}
.tm2-list-open{color:#176b3a;font-weight:700;text-decoration:none;min-height:44px;padding:10px 0}
.tm2-list-focus{border:1px solid #ccd4ce;border-radius:7px;background:#fff;color:#176b3a;min-height:44px;padding:8px;font-size:var(--tce-text-sm)}
.tm2-preview .tm2-property-image img{display:block}
