/* Runtime theme surface. Variables are set from validated, server-published settings. */
:root{--theme-background:linear-gradient(145deg,#241c29,#6b3b36,#16131d);--theme-blur:38px;--theme-dim:.15;--theme-glass:.16;--theme-font:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--theme-heading-weight:350;--theme-logo-width:215px;--theme-accent:#f4d0ab;--t-text:#fff6ef;--t-muted:#dfd0cb;--t-rgb:255,235,222;--t-base:#18141d;--t-line:rgba(255,237,224,.34);--t-shadow:rgba(12,6,15,.22);color-scheme:dark}
:root[data-mode=light]{--t-text:#262c35;--t-muted:#586271;--t-rgb:255,255,255;--t-base:#e8eaf0;--t-line:rgba(255,255,255,.7);--t-shadow:rgba(45,53,69,.1);color-scheme:light}
html{background:var(--t-base)}body{background:transparent!important;color:var(--t-text);font-family:var(--theme-font);isolation:isolate;min-height:100vh}body::before{content:"";display:block!important;position:fixed;inset:-120px;z-index:-2;background-image:var(--theme-background);background-size:cover;background-position:center;filter:blur(var(--theme-blur));pointer-events:none}body::after{content:"";position:fixed;inset:0;z-index:-1;background:rgba(0,0,0,var(--theme-dim));pointer-events:none}button,input,select,textarea{font-family:var(--theme-font);color:var(--t-text)}button,.pill{color:var(--t-text);background:rgba(var(--t-rgb),.07);border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.25);border-radius:16px}button:hover:not(:disabled),.pill:hover{background:rgba(var(--t-rgb),.16);color:var(--t-text);border-color:rgba(var(--t-rgb),.6);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.35)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--theme-accent)}
.glass{background:linear-gradient(130deg,rgba(var(--t-rgb),calc(var(--theme-glass) + .07)),rgba(var(--t-rgb),var(--theme-glass)));border:1px solid var(--t-line);border-top-color:rgba(var(--t-rgb),.65);border-radius:26px;box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.35),inset 0 -1px 1px rgba(var(--t-rgb),.1),0 12px 40px var(--t-shadow);backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%)}
header.glass{max-width:1360px;margin:25px auto 0;padding:14px 23px;border-radius:27px;background:linear-gradient(130deg,rgba(var(--t-rgb),.16),rgba(var(--t-rgb),.07));border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.4),0 10px 30px var(--t-shadow);backdrop-filter:blur(25px)}.brand-logo{width:var(--theme-logo-width);max-width:100%;filter:brightness(0) invert(1);height:auto}.brand-logo.custom-logo{filter:none!important}html[data-mode=light] .brand-logo{filter:grayscale(1) brightness(.4)}header nav{gap:20px}header nav .link,header nav .pill,header #savedBtn{color:var(--t-text);background:transparent;border:0;box-shadow:none}header nav .primary{color:var(--t-text);border:1px solid var(--t-line);background:linear-gradient(140deg,rgba(var(--t-rgb),.27),rgba(var(--t-rgb),.09));box-shadow:inset 0 1px 2px rgba(var(--t-rgb),.5);border-radius:22px;padding:12px 19px}main{max-width:1420px;padding:0 30px 40px}
.intro.theme-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:45px;align-items:center;min-height:570px;padding:50px 12px 28px;margin:0;text-align:left}.theme-hero-copy h1{font:var(--theme-heading-weight) clamp(45px,4.5vw,70px)/1.09 var(--theme-font);letter-spacing:-2.7px;margin:0 0 20px;color:var(--t-text)}.theme-hero-copy h1 span{display:block;opacity:.85}.theme-hero-copy>p{font-size:17px;line-height:1.7;color:var(--t-muted);max-width:420px;margin:0}.theme-hero-copy .minimal-actions{justify-content:flex-start;gap:15px;margin-top:28px}.minimal-actions .primary,.theme-button{background:linear-gradient(130deg,rgba(var(--t-rgb),.38),rgba(var(--t-rgb),.14));border:1px solid rgba(var(--t-rgb),.6);color:var(--t-text);box-shadow:inset 0 1px 2px rgba(var(--t-rgb),.5),0 5px 20px var(--t-shadow);backdrop-filter:blur(20px);border-radius:22px}.minimal-actions .primary:hover{background:rgba(var(--t-rgb),.3)}.minimal-actions .map-link{color:var(--t-text);border:1px solid var(--t-line);padding:12px 18px;border-radius:22px;background:rgba(var(--t-rgb),.07);backdrop-filter:blur(20px)}
.theme-hero-widgets{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.theme-hero-widgets>.search{grid-column:1/-1;margin:0!important}.search.glass{background:linear-gradient(130deg,rgba(var(--t-rgb),calc(var(--theme-glass) + .11)),rgba(var(--t-rgb),var(--theme-glass)));border:1px solid var(--t-line);border-top-color:rgba(var(--t-rgb),.65);border-radius:27px;box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.4),0 10px 35px var(--t-shadow);padding:21px}.search-heading{display:none}.search>.row{gap:5px}.search #buy,.search #rent{font-size:12px;padding:10px 24px;min-width:90px;border-radius:20px;background:rgba(var(--t-rgb),.09);border:1px solid var(--t-line);color:var(--t-text)}.search #buy.active,.search #rent.active{background:var(--theme-accent);color:var(--t-base);border-color:rgba(var(--t-rgb),.75);box-shadow:inset 0 1px 2px rgba(var(--t-rgb),.5)}
.fields{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:0;background:rgba(var(--t-rgb),.08);border:1px solid var(--t-line);border-radius:20px;margin-top:16px;padding:8px;box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.2)}.search-field{padding:7px 10px;border-right:1px solid rgba(var(--t-rgb),.2)}.search-field:last-of-type{border:0}.search-field>span{font-size:10px;color:var(--t-muted);margin-bottom:7px}.fields .search-field input,.fields .search-field select{height:24px;color:var(--t-text);font-size:11px;background:transparent}.fields .search-field input::placeholder{color:var(--t-muted)}select option{background:var(--t-base);color:var(--t-text)}.fields>.primary{grid-column:1/-1;margin:10px 0 0;justify-content:center;padding:11px;background:linear-gradient(135deg,rgba(var(--t-rgb),.3),rgba(var(--t-rgb),.1));border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.4);border-radius:14px;color:var(--t-text)}.advanced{margin-top:12px}.advanced summary{color:var(--t-muted);font-size:10px}.advanced-grid{grid-template-columns:1fr 1fr;border-color:var(--t-line)}.advanced-grid label{color:var(--t-muted)}.advanced-grid input,.advanced-grid select{background:rgba(var(--t-rgb),.08);border:1px solid var(--t-line);color:var(--t-text)}.advanced .muted{font-size:9px}
.theme-feature{padding:17px;text-align:left;position:relative;min-height:160px;overflow:hidden;display:block;color:var(--t-text)}.theme-feature strong{font-size:16px;letter-spacing:-.3px;font-weight:550;display:block}.theme-feature p{font-size:10px;line-height:1.5;color:var(--t-muted);margin:5px 0}.theme-feature .feature-arrow{position:absolute;right:17px;top:16px;font-size:21px;color:var(--theme-accent)}.theme-feature .feature-image{height:72px;width:100%;object-fit:cover;object-position:center 55%;border-radius:12px;margin-top:7px;filter:saturate(.6)}.feature-options{display:flex;gap:7px;margin-top:18px}.feature-options button{font-size:10px;padding:9px 12px;border-radius:12px;color:var(--t-text)}.theme-map-link{grid-column:1/-1;display:flex;text-align:left;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;min-height:86px}.theme-map-link strong{font-size:16px;font-weight:550;display:block}.theme-map-link small{font-size:10px;color:var(--t-muted);display:block;line-height:1.6;margin-top:5px}.theme-map-link>span:last-child{display:flex;align-items:center;gap:12px;color:var(--theme-accent);font-size:12px}.map-line-icon{width:48px;height:40px;color:var(--theme-accent)}
.category-dock{display:flex;justify-content:center;margin:0 0 35px}.category-dock .categories{margin:0;display:flex;gap:5px;flex-wrap:wrap;justify-content:center;padding:9px 12px;border-radius:24px;background:linear-gradient(135deg,rgba(var(--t-rgb),.18),rgba(var(--t-rgb),.08));border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.4);backdrop-filter:blur(22px)}.categories button{font-size:11px;padding:9px 17px;background:transparent;color:var(--t-muted);border:1px solid transparent}.categories button.active{background:rgba(var(--t-rgb),.19);border:1px solid rgba(var(--t-rgb),.4);color:var(--t-text);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.25)}
.section-head h2{color:var(--t-text);font-family:var(--theme-font);font-weight:500}.section-head small,.muted,.notice,.facts,.rate,.map-note,.empty p{color:var(--t-muted)}.section-head button,.section-head select{color:var(--t-text);background:rgba(var(--t-rgb),.12);border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.2)}.card.glass,.empty.glass,.map-shell.glass{background:linear-gradient(135deg,rgba(var(--t-rgb),calc(var(--theme-glass) + .04)),rgba(var(--t-rgb),var(--theme-glass)));border:1px solid var(--t-line);box-shadow:inset 0 1px 1px rgba(var(--t-rgb),.35),0 10px 35px var(--t-shadow);backdrop-filter:blur(24px)}.card h3,.price,.empty h3{color:var(--t-text)}.card-actions button,.empty button,.empty .pill{background:rgba(var(--t-rgb),.12);border:1px solid var(--t-line);color:var(--t-text)}.heart,.tag{background:rgba(35,29,40,.55);border-color:#ffffff70;color:#fff;backdrop-filter:blur(15px)}.facts{border-color:var(--t-line)}.compare-choice{color:var(--t-muted)}.compare-choice[aria-pressed=true]{background:rgba(var(--t-rgb),.2);color:var(--t-text)}.map-shell #map{filter:brightness(.7) saturate(.6)}html[data-mode=light] .map-shell #map{filter:saturate(.55)}.map-actions button{background:rgba(var(--t-rgb),.25);color:var(--t-text);border:1px solid var(--t-line);backdrop-filter:blur(20px)}.price-pin{background:var(--t-base);color:var(--theme-accent)}.leaflet-popup-content-wrapper{background:var(--t-base);color:var(--t-text)}.leaflet-popup-tip{background:var(--t-base)}.leaflet-popup-content button{background:rgba(var(--t-rgb),.16);color:var(--t-text)}.link,.link:hover{color:var(--t-muted)}.compare-tray.glass{background:rgba(var(--t-rgb),.18);border-color:var(--t-line);backdrop-filter:blur(30px)}dialog{color:var(--t-text);background:var(--t-base);border:1px solid var(--t-line);box-shadow:0 20px 70px #0006}dialog::backdrop{background:#0006;backdrop-filter:blur(15px)}.detail-layout h2{color:var(--t-text);font-family:var(--theme-font)}.enquiry-panel{background:rgba(var(--t-rgb),.08);color:var(--t-text);border-color:var(--t-line)}.enquiry-panel input,.enquiry-panel select,.enquiry-panel textarea{background:rgba(var(--t-rgb),.08);color:var(--t-text);border-color:var(--t-line)}.detail-facts,.spec-grid div{background:rgba(var(--t-rgb),.08)}.compare-table td,.compare-table th{border-color:var(--t-line)}.compare-table tbody tr:nth-child(even){background:rgba(var(--t-rgb),.06)}footer{border-color:var(--t-line);color:var(--t-muted)}#toast{background:var(--t-base);color:var(--t-text);border:1px solid var(--t-line)}.theme-admin-link{display:none}html.theme-preview .theme-admin-link{display:none!important}.theme-preview header nav a,.theme-preview header nav button{pointer-events:none}.solid-surfaces .glass,.solid-surfaces header.glass,.solid-surfaces .search.glass,.solid-surfaces .card.glass{background:var(--t-base)!important;backdrop-filter:none!important}
@media(max-width:1420px){header.glass{margin:22px 30px 0}}@media(max-width:1100px){.intro.theme-hero{grid-template-columns:1fr 1.1fr;gap:25px;padding:35px 6px 25px}.theme-hero-copy h1{font-size:51px;letter-spacing:-2.1px}.theme-hero-copy>p{font-size:14px}.theme-hero-copy .minimal-actions{gap:9px;flex-wrap:wrap}.minimal-actions .primary,.minimal-actions .map-link{font-size:11px;padding:11px 15px}.theme-feature{padding:14px}.theme-feature strong{font-size:14px}.theme-feature p{font-size:9px}.search.glass{padding:17px}.fields{grid-template-columns:1.3fr 1fr}.search-field:nth-child(2){border:0}.search-field:nth-child(3){grid-column:1/-1;border-top:1px solid var(--t-line);padding-top:10px;margin-top:6px}.fields>.primary{margin-top:6px}.theme-map-link{padding:15px}.theme-map-link strong{font-size:14px}.feature-options{flex-wrap:wrap;gap:5px}.feature-options button{padding:7px 10px;font-size:9px}}
@media(max-width:700px){header.glass{margin:12px 15px 0;padding:15px;border-radius:23px}.brand-logo{width:var(--theme-logo-width);max-width:calc(100vw - 90px)}header nav .pill,header nav button{font-size:10px}header nav .primary{padding:9px 15px}main{padding:0 16px 30px}.intro.theme-hero{display:block;min-height:0;padding:37px 3px 22px}.theme-hero-copy h1{font-size:47px;letter-spacing:-2px;margin-bottom:17px}.theme-hero-copy>p{font-size:14px;max-width:310px}.theme-hero-copy .minimal-actions{margin-top:23px;gap:11px}.theme-hero-widgets{margin-top:29px;gap:10px}.search.glass{padding:17px;border-radius:24px}.fields{grid-template-columns:1fr 1fr}.search-field:first-child{grid-column:auto;border:0;border-right:1px solid var(--t-line)}.search-field:nth-child(2){border:0}.search-field:nth-child(3){grid-column:1/-1}.search-field>span{font-size:9px}.fields .search-field input,.fields .search-field select{font-size:11px}.fields>.primary{font-size:12px;padding:11px;justify-content:center}.theme-feature{min-height:155px;padding:14px;border-radius:23px}.theme-feature strong{font-size:14px}.theme-feature p{font-size:9px}.theme-feature .feature-image{height:68px}.theme-feature .feature-arrow{font-size:18px;right:12px;top:12px}.theme-map-link{padding:15px 17px;min-height:90px;border-radius:23px}.theme-map-link strong{font-size:14px}.theme-map-link>span:last-child{font-size:10px}.map-line-icon{width:32px;height:32px}.category-dock{margin:0 0 26px}.category-dock .categories{flex-wrap:nowrap;overflow:auto;width:100%;justify-content:flex-start;padding:7px;gap:2px;border-radius:20px}.categories button{font-size:10px;padding:9px 12px;flex-shrink:0}.categories button.active{padding:9px 12px}.theme-hero-copy .minimal-actions .map-link span{font-size:16px}.section-head h2{font-size:21px}}
@media(prefers-contrast:more){.glass,header.glass,.search.glass,.card.glass,.empty.glass{background:var(--t-base)!important;backdrop-filter:none}}
