:root{--u:1px;--bg:#fafaf7;--surface:#f3f5f1;--card:#fff;--text:#1d2b26;--head:#0b3d2e;--muted:#6b7772;--border:#e5e9e5;--brand:#13926f;--brand-d:#0b6e53;--brand-c:#fff;--soft:#e4f3ec;--soft-t:#0b6e53;--warn:#f3a712;--warn-bg:#fdf1d6;--danger:#d92d4b;--danger-bg:#fde6ea;--info:#2563eb;--info-bg:#e5eefe;--logo-a:#16996b;--logo-b:#124a38;--shadow:0 6px 24px rgba(11,61,46,.08);--r:16px;--rail:172px}
:root[data-theme=dark]{--bg:#0c181e;--surface:#101e25;--card:#13222a;--text:#e6edf0;--head:#f1f6f8;--muted:#8fa4ad;--border:#22343d;--brand:#34d399;--brand-d:#6ee7b7;--brand-c:#06130d;--soft:#15333a;--soft-t:#6ee7b7;--warn-bg:#3a2d10;--danger-bg:#3d1822;--info-bg:#15264a;--logo-a:#34d399;--logo-b:#a7e8cf;--shadow:0 6px 24px rgba(0,0,0,.45)}
*{box-sizing:border-box}html{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}
body{margin:0;font:16px/1.5 var(--font-body);background:var(--bg);color:var(--text);transition:background .2s,color .2s}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--head);margin:0;line-height:1.15;letter-spacing:-.02em}h1{font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800}h2{font-size:1.5rem;font-weight:700}h3{font-size:1.05rem;font-weight:650}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}p{margin:0}.muted{color:var(--muted)}.link{color:var(--brand);font-weight:600}.sr{position:absolute;left:-9999px}
.ic{flex:none;vertical-align:middle}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.logo{display:inline-flex;align-items:center;gap:10px;font-size:1.3rem;color:var(--head)}.logo-svg{height:34px;width:auto}.lg-a{fill:var(--logo-a)}.lg-b{fill:var(--logo-b)}.logo-word{white-space:nowrap;font-weight:400;letter-spacing:-.02em;line-height:1.05}.logo-word b{font-weight:800}.logo-word small{display:block;font-size:.72rem;color:var(--muted);letter-spacing:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:10px;border:1.5px solid var(--brand);background:var(--card);color:var(--brand-d);font-weight:600}.btn:hover{background:var(--soft)}
.btn.primary{background:var(--brand);color:var(--brand-c);border-color:var(--brand)}.btn.primary:hover{filter:brightness(1.07)}.btn.block{width:100%}.btn.sm{padding:7px 14px;font-size:.9rem}.btn:disabled{opacity:.6;cursor:wait}
.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--card)}
input,select,textarea{font:inherit;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:10px;padding:11px 12px;width:100%}textarea{resize:vertical}
.field{display:grid;gap:6px;margin-bottom:14px;font-weight:600;color:var(--head);font-size:.95rem}.input{display:flex;align-items:center;gap:10px;border:1px solid var(--border);background:var(--card);border-radius:10px;padding:0 12px;color:var(--muted)}.input input{border:0;padding:12px 0;background:none;outline:0}.input:focus-within{border-color:var(--brand)}
.err{color:var(--danger);font-size:.9rem;min-height:1.3em;margin:6px 0}.pill{display:inline-block;padding:3px 12px;border-radius:99px;font-size:.82rem;font-weight:600;background:var(--soft);color:var(--soft-t)}.pill.warn{background:var(--warn-bg);color:#a86b00}.pill.bad{background:var(--danger-bg);color:var(--danger)}.pill.info{background:var(--info-bg);color:var(--info)}
.toggle-theme{width:40px;height:40px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--head);color:var(--bg);padding:12px 20px;border-radius:12px;opacity:0;pointer-events:none;transition:.25s;z-index:99;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}
.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--soft);display:inline-grid;place-items:center;color:var(--soft-t);font-weight:700;font-size:.85rem;flex:none}

/* ---- app shell: icon-rail sidebar (from the messaging design) ---- */
.shell{display:grid;grid-template-columns:var(--rail) 1fr;min-height:100vh}.shell.collapsed{--rail:72px}
.rail{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:22px 8px 14px;background:var(--surface);border-right:1px solid var(--border)}
.rail-top{display:flex;align-items:center;justify-content:space-between;padding:0 8px 22px}.rail-top .logo-svg{height:36px}
.rail-collapse{border:0;background:none;color:var(--head);padding:4px;border-radius:8px}.rail-collapse:hover{background:var(--soft)}
.rail nav{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.rail a.item{position:relative;display:grid;justify-items:start;gap:4px;padding:12px 22px;border-radius:12px;color:var(--text);font-size:.93rem;font-weight:500}.rail a.item:hover{background:var(--soft)}
.rail a.item.on{background:var(--soft);color:var(--head);font-weight:650}.rail a.item .ic{color:var(--head)}
.rail-bottom{margin-top:auto;display:grid;gap:8px}.rail-user{display:flex;align-items:center;gap:10px;padding:10px 8px;font-size:.9rem;font-weight:500;border:0;background:none;text-align:left;border-radius:12px}.rail-user:hover{background:var(--soft)}.rail-user .avatar{width:36px;height:36px}
.shell.collapsed .item span,.shell.collapsed .rail-user span,.shell.collapsed .logo-word{display:none}.shell.collapsed .rail-top{flex-direction:column;gap:12px}.shell.collapsed .rail a.item{justify-items:center}.shell.collapsed .rail-collapse svg{transform:rotate(180deg)}
.main{min-width:0;padding:0 clamp(16px,3vw,40px) 60px}.topbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:18px 0}.dot{position:relative}.dot::after{content:"";position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--brand);border:2px solid var(--card)}
.me{display:flex;align-items:center;gap:6px;border:0;background:none;padding:0}
.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:6px 0 20px}.page-head p{color:var(--muted);margin-top:4px}

/* ---- discover ---- */
.hero{position:relative;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:20px;min-height:340px;margin-bottom:-56px}.hero-img{border-radius:var(--r);height:330px;object-fit:cover;width:100%;clip-path:polygon(6% 0,100% 0,100% 100%,0 100%)}.hero p{color:var(--muted);font-size:1.2rem;margin-top:14px;max-width:460px}
.searchbar{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:0;align-items:center;background:var(--card);border-radius:var(--r);box-shadow:var(--shadow);padding:14px 16px;margin-bottom:34px;border:1px solid var(--border)}
.sb-cell{display:flex;align-items:center;gap:14px;padding:6px 22px;border-right:1px solid var(--border)}.sb-cell:nth-child(3){border:0}.sb-cell label{display:grid;font-size:.85rem;color:var(--muted);flex:1}.sb-cell select{border:0;padding:2px 0;font-size:1.05rem;font-weight:500;background:none;color:var(--text)}.sb-cell .ic{color:var(--head)}
.sec-head{display:flex;justify-content:space-between;align-items:center;margin:8px 0 16px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card-img{position:relative;aspect-ratio:16/10;background:var(--soft)}.card-img img{width:100%;height:100%;object-fit:cover;display:block}.tag{position:absolute;left:14px;top:14px;background:rgba(228,243,236,.95);color:var(--soft-t);font-size:.85rem;font-weight:600;padding:5px 14px;border-radius:99px}
.heart{position:absolute;right:12px;top:12px;width:38px;height:38px;border-radius:50%;border:0;background:var(--card);display:grid;place-items:center;color:var(--head);box-shadow:0 2px 8px rgba(0,0,0,.12)}.heart.on{color:var(--danger)}.heart.on svg{fill:currentColor}
.card-body{padding:14px 16px 16px;display:grid;gap:5px}.card-body h3{font-size:1.05rem}.loc{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:.92rem}.card-foot{display:flex;justify-content:space-between;align-items:end;gap:8px;margin-top:4px}.price{font-weight:750;color:var(--head)}.price small{font-weight:500;color:var(--muted)}.facts{display:flex;gap:12px;color:var(--muted);font-size:.9rem;align-items:center}.facts span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.card .price{white-space:nowrap;font-size:1rem}.card-foot{flex-wrap:wrap}.facts{font-size:.86rem;gap:10px}

/* ---- search ---- */
.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.fsel{display:flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--card);border-radius:12px;padding:0 12px;min-width:150px}.fsel select{border:0;padding:12px 0;background:none;font-weight:500}.fsel.sort{margin-left:auto}.fsel.sort span{white-space:nowrap}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.chip{display:inline-flex;align-items:center;gap:8px;background:var(--soft);color:var(--head);border:0;padding:8px 16px;border-radius:99px;font-weight:500}
.seg{display:inline-flex;border:1px solid var(--border);border-radius:12px;padding:4px;background:var(--card)}.seg button{border:0;background:none;padding:8px 16px;border-radius:9px;display:inline-flex;gap:8px;align-items:center;font-weight:600}.seg button.on{background:var(--brand);color:var(--brand-c)}
.results{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px}.results.grid-only{grid-template-columns:1fr}.results.grid-only .cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.results.map-only{grid-template-columns:1fr}.results .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.rcard .price{text-align:right}.rcard .card-foot{align-items:start}#map{height:calc(100vh - 290px);min-height:420px;border-radius:var(--r);border:1px solid var(--border);position:sticky;top:20px;z-index:0}.pin{background:var(--brand);color:var(--brand-c);font-weight:700;font-size:.85rem;padding:5px 11px;border-radius:10px;white-space:nowrap;box-shadow:0 3px 10px rgba(0,0,0,.25);transform:translate(-50%,-100%)}
.empty{text-align:center;padding:60px 0;color:var(--muted)}

/* ---- detail ---- */
.crumbs{display:flex;gap:10px;align-items:center;color:var(--muted);margin:6px 0 12px}.crumbs a:last-child{color:var(--brand)}
.detail{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:34px;align-items:start}.d-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.d-head h1{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:420px;margin:18px 0}.gallery>div{overflow:hidden;border-radius:14px;background:var(--soft);position:relative}.gallery>div:first-child{grid-row:1/3}.gallery img{width:100%;height:100%;object-fit:cover;display:block}.gallery.one{grid-template-columns:1fr}.gallery.one>div:first-child{grid-row:auto}
.show-all{position:absolute;right:12px;bottom:12px;background:rgba(15,25,20,.85);color:#fff;border:0;padding:10px 16px;border-radius:10px;display:flex;gap:8px;align-items:center;font-weight:600}
.facts-row{display:flex;gap:12px;flex-wrap:wrap}.fact{display:flex;gap:10px;align-items:center;border:1px solid var(--border);background:var(--card);padding:10px 18px;border-radius:12px}
.amen{display:flex;flex-wrap:wrap;gap:26px;align-items:center;margin-top:12px;color:var(--muted)}.amen span{display:inline-flex;gap:10px;align-items:center}.divider{border:0;border-top:1px solid var(--border);margin:26px 0}
.side-card{background:var(--card);border-radius:var(--r);padding:26px;box-shadow:var(--shadow);border:1px solid var(--border);position:sticky;top:20px}.big-price{font-size:2.1rem;font-weight:800;color:var(--head)}.big-price small{font-size:1.1rem;font-weight:500}
.rows{margin:16px 0}.rows div{display:flex;justify-content:space-between;padding:9px 0;color:var(--muted)}.rows div span:last-child{color:var(--text)}.rows .total{background:var(--surface);color:var(--head);font-weight:700;border-radius:12px;padding:14px 12px;margin-top:6px}.rows .total span:last-child{color:var(--head)}
.side-card .btn{margin-bottom:12px}.agent{display:flex;align-items:center;gap:16px;border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.agent .avatar{width:72px;height:72px}

/* ---- messages ---- */
.msg-shell{margin:0 calc(-1*clamp(16px,3vw,40px));display:grid;grid-template-columns:minmax(300px,380px) 1fr;height:100vh}.msg-list{border-right:1px solid var(--border);padding:22px 14px;overflow:auto;background:var(--surface)}
.msg-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.msg-list h1{font-size:2rem}.tabs{display:flex;gap:10px;margin:14px 0}.tabs button{border:0;background:none;padding:9px 20px;border-radius:10px;font-weight:600;color:var(--muted)}.tabs button.on{background:var(--soft);color:var(--head)}
.conv{display:flex;gap:14px;padding:14px;border-radius:14px;align-items:flex-start}.conv:hover{background:var(--card)}.conv.on{background:var(--soft)}.conv .avatar{width:56px;height:56px}.conv-main{min-width:0;flex:1}.conv-top{display:flex;justify-content:space-between;gap:8px}.conv-top b{color:var(--head)}.conv-top span{font-size:.85rem;color:var(--muted)}.conv p{color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.95rem}
.chat{display:flex;flex-direction:column;min-width:0;height:100vh}.chat-head{display:flex;align-items:center;gap:14px;padding:14px 20px}.chat-head .grow{flex:1}.chat-head .avatar{width:54px;height:54px}.chat-head .acts{display:flex;gap:10px}
.listing-strip{display:flex;align-items:center;gap:16px;margin:0 16px;padding:10px;background:var(--card);border-radius:14px;border:1px solid var(--border)}.listing-strip img{width:84px;height:62px;object-fit:cover;border-radius:10px}.listing-strip div{flex:1}
.thread{flex:1;overflow:auto;padding:18px 24px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:min(520px,80%);padding:12px 16px;border-radius:16px;background:var(--card);border:1px solid var(--border);white-space:pre-wrap;word-break:break-word}.bubble.me{align-self:flex-end;background:var(--soft);border-color:transparent}.bubble time{display:block;font-size:.75rem;color:var(--muted);text-align:right;margin-top:4px}.day{align-self:center;background:var(--surface);color:var(--muted);padding:3px 14px;border-radius:99px;font-size:.85rem}
.composer{display:flex;gap:10px;align-items:center;padding:14px 16px 18px}.composer input{border-radius:14px;padding:14px 16px}.send{width:52px;height:52px;border-radius:50%;border:0;background:var(--brand);color:var(--brand-c);display:grid;place-items:center}.chat-empty{margin:auto;text-align:center;color:var(--muted);padding:24px}

/* ---- lists/tables ---- */
.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;margin-bottom:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
table{width:100%;border-collapse:collapse}th{text-align:left;font-weight:600;color:var(--head);font-size:.92rem;background:var(--surface);padding:10px 14px}th:first-child{border-radius:10px 0 0 10px}th:last-child{border-radius:0 10px 10px 0}td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border:0}.tbl-wrap{overflow-x:auto}
.cell{display:flex;gap:12px;align-items:center}.cell img.th{width:56px;height:48px;border-radius:8px;object-fit:cover}.cell small{display:block;color:var(--muted)}
.list-row{display:flex;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}.list-row:last-child{border:0}.list-row img{width:96px;height:72px;border-radius:12px;object-fit:cover}.list-row .grow{flex:1;min-width:0}
.settings-grid{display:grid;gap:22px;max-width:640px}.row-between{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0}

/* ---- admin ---- */
.shell.admin{--rail:268px}.shell.admin .rail{padding:22px 16px}.shell.admin .rail a.item{display:flex;align-items:center;gap:16px;font-size:1rem;padding:13px 16px}.shell.admin .rail a.item .badge{margin-left:auto;background:var(--soft);padding:1px 11px;border-radius:99px;font-weight:700;font-size:.9rem}
.shell.admin .rail-top{padding:0 6px 24px}.admin-top{display:flex;gap:16px;align-items:center;padding:18px 0}.admin-top .input{flex:1;max-width:640px;height:46px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:22px}.stat{display:flex;align-items:center;gap:16px;background:var(--card);padding:18px;border-radius:var(--r);border:1px solid var(--border)}.stat .ico{width:62px;height:62px;border-radius:14px;display:grid;place-items:center;background:var(--soft);color:var(--brand)}.stat .ico.w{background:var(--warn-bg);color:var(--warn)}.stat .ico.r{background:var(--danger-bg);color:var(--danger)}.stat b{display:block;font-size:2rem;color:var(--head);line-height:1.1}.stat span{color:var(--muted)}
.admin-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:22px;align-items:start}.attn{display:flex;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.attn:last-child{border:0}.attn .ico{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--soft);color:var(--brand)}.attn .grow{flex:1}.attn small{color:var(--muted);display:block}
.timeline li{display:flex;gap:14px;padding:10px 0;list-style:none;align-items:flex-start}.timeline{margin:0;padding:0}.timeline i{width:9px;height:9px;border-radius:50%;background:var(--brand);margin-top:8px;flex:none}.timeline .grow{flex:1}.timeline small{color:var(--muted);display:block}

/* ---- auth / onboarding / splash ---- */
.splash{min-height:100vh;display:grid;place-items:center;background:#073b2d;color:#fff;position:relative;overflow:hidden;text-align:center}.splash img.bg{position:absolute;right:0;bottom:0;width:min(46vw,520px);opacity:.28;mix-blend-mode:luminosity}.splash .logo-svg{height:clamp(110px,18vw,190px)}.splash .lg-a{fill:#34d399}.splash .lg-b{fill:#fff}.splash h1{color:#fff;font-weight:700;font-size:clamp(2rem,6vw,3.6rem);margin-top:16px}.splash h1 b{font-weight:800}.splash h1 span{font-weight:400}.splash p{letter-spacing:.2em;color:#a9d9c6;margin-top:14px;font-size:clamp(.8rem,2vw,1.05rem)}.dots{position:absolute;bottom:90px;left:0;right:0;display:flex;gap:16px;justify-content:center}.dots i{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.3)}.dots i:first-child{background:#34d399}
.onb{min-height:100vh;display:flex;flex-direction:column}.onb-top{display:flex;justify-content:space-between;align-items:center;padding:16px clamp(18px,5vw,80px);border-bottom:1px solid var(--border)}.onb-body{flex:1;display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(24px,4vw,70px);align-items:center;padding:30px clamp(18px,5vw,80px)}
.eyebrow{letter-spacing:.3em;font-size:.82rem;color:var(--muted);font-weight:600;text-transform:uppercase;margin-bottom:18px}.onb h1{font-size:clamp(2.4rem,5.4vw,4.2rem);letter-spacing:-.04em}.onb .lead{color:var(--muted);font-size:1.2rem;margin:20px 0 28px;max-width:520px}
.feat{display:flex;gap:18px;align-items:center;margin-bottom:16px}.feat .fi{width:62px;height:62px;border-radius:16px;background:var(--soft);display:grid;place-items:center;color:var(--brand);flex:none}.feat b{display:block;color:var(--head);font-size:1.1rem}.feat span{color:var(--muted)}
.onb-img{position:relative}.onb-img>img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:24px;display:block}.float{position:absolute;background:var(--card);border-radius:16px;padding:16px 20px;box-shadow:var(--shadow);font-weight:600;color:var(--head)}.float.t{left:16px;top:16px;border-radius:99px;padding:10px 18px;display:flex;gap:8px;align-items:center}.float.r{right:16px;top:20px;min-width:260px}.float .row{display:flex;justify-content:space-between;gap:20px;padding:8px 0;font-weight:500;color:var(--text);border-top:1px solid var(--border)}.float .ok{display:flex;gap:14px;align-items:center}.float .ok i{width:46px;height:46px;border-radius:50%;background:var(--brand);color:var(--brand-c);display:grid;place-items:center}
.onb-foot{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.prog{display:flex;gap:10px;align-items:center}.prog i{width:70px;height:7px;border-radius:9px;background:var(--border)}.prog i.on{background:var(--brand)}.prog b{margin-left:6px;color:var(--head)}.prog span{color:var(--muted)}
.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-img{position:relative;background-size:cover;background-position:center;min-height:300px}.auth-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.28),transparent 30%,transparent 55%,rgba(0,0,0,.55))}.auth-img .logo{position:absolute;left:clamp(20px,6vw,108px);top:28px;z-index:1;color:#fff}.auth-img .lg-a{fill:#34d399}.auth-img .lg-b{fill:#fff}.auth-img .logo-word{color:#fff}
.auth-img h2{position:absolute;left:clamp(20px,5vw,70px);bottom:60px;z-index:1;color:#fff;font-size:clamp(1.8rem,3.4vw,3rem);font-weight:600;max-width:420px}.auth-img h2::after{content:"";display:block;width:56px;height:3px;background:#34d399;margin-top:16px}
.auth-form{display:grid;align-content:center;padding:40px clamp(20px,6vw,90px);position:relative}.auth-form .corner{position:absolute;top:18px;right:18px}.auth-form h1{font-size:clamp(2rem,3.6vw,3rem)}.auth-form .sub{font-size:1.4rem;color:var(--muted);margin:6px 0 28px}
.sep{display:flex;gap:16px;align-items:center;color:var(--muted);margin:16px 0}.sep::before,.sep::after{content:"";flex:1;border-top:1px solid var(--border)}.row-between.check{padding:0 0 18px}.check label{display:flex;gap:10px;align-items:center;font-weight:400}.check input{width:18px;height:18px;accent-color:var(--brand)}
.role{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:12px;padding:4px;margin-bottom:20px;background:var(--card)}.role button{border:0;background:none;padding:12px;border-radius:9px;font-weight:600;color:var(--muted)}.role button.on{background:var(--soft);color:var(--brand-d);box-shadow:inset 0 -3px 0 var(--brand)}
.gicon{width:20px;height:20px}dialog.modal{width:min(520px,calc(100% - 24px));border:1px solid var(--border);border-radius:20px;padding:28px;background:var(--card);color:var(--text);box-shadow:var(--shadow)}dialog.modal::backdrop{background:rgba(0,0,0,.55)}dialog.modal .close{position:absolute;right:14px;top:14px;width:34px;height:34px}dialog.modal h2{margin-bottom:6px}.slots{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 16px}.slots label{cursor:pointer}.slots input{display:none}.slots span{display:block;padding:8px 14px;border:1px solid var(--border);border-radius:10px;font-weight:500}.slots input:checked+span{background:var(--brand);color:var(--brand-c);border-color:var(--brand)}
.lightbox{display:grid;gap:10px;max-height:70vh;overflow:auto}.lightbox img{width:100%;border-radius:12px}

@media(max-width:1100px){.detail{grid-template-columns:1fr}.side-card{position:static}.results{grid-template-columns:1fr}#map{height:380px;position:static}.admin-grid{grid-template-columns:1fr}}
@media(max-width:860px){.shell,.shell.admin{grid-template-columns:1fr}.rail{position:fixed;top:auto;bottom:0;left:0;right:0;height:auto;flex-direction:row;padding:6px;z-index:30;border-top:1px solid var(--border);border-right:0}.rail-top,.rail-bottom .rail-user span,.rail-collapse{display:none}.rail nav{flex-direction:row;flex:1;justify-content:space-around;margin:0;gap:0;overflow-x:auto}.rail a.item{justify-items:center;padding:6px 10px;font-size:.72rem}.rail-bottom{margin:0}.shell.admin .rail a.item{flex-direction:column;gap:2px;font-size:.7rem;padding:6px 8px}.shell.admin .rail a.item .badge{display:none}.main{padding-bottom:100px}.hero{grid-template-columns:1fr;margin-bottom:12px}.hero-img{height:220px;clip-path:none;order:-1}.searchbar{grid-template-columns:1fr}.sb-cell{border:0;border-bottom:1px solid var(--border)}.msg-shell{grid-template-columns:1fr;height:auto;margin-bottom:-100px}.msg-shell.has-chat .msg-list{display:none}.msg-shell:not(.has-chat) .chat{display:none}.chat,.msg-shell{height:calc(100vh - 60px)}.onb-body,.auth{grid-template-columns:1fr}.auth-img{min-height:240px}.onb-img{order:-1}.gallery{height:260px;grid-template-columns:1fr}.gallery>div:not(:first-child){display:none}.gallery>div:first-child{grid-row:auto}.results .cards{grid-template-columns:1fr}.float.r{position:static;margin-top:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.notice{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--warn-bg);color:var(--text);border:1px solid var(--border);padding:12px 16px;border-radius:12px;margin-bottom:16px}

/* ===== design-exact screens (onboarding, sign up, log in) =====
   Every element is placed at the coordinates of the 1672x941 design, scaled by --u. */
.dz-page{--u:min(calc(100vw / 1672),calc(100vh / 941),1.15px);background:var(--bg);position:relative;height:100vh;overflow:hidden;display:grid;place-items:center}
.dz-page .edge-l{left:calc((100vw - 1672 * var(--u)) / -2)!important;width:calc(var(--W) * var(--u) + (100vw - 1672 * var(--u)) / 2)!important}
.dz-page .edge-tl{left:calc((100vw - 1672 * var(--u)) / -2 + clamp(16px, 2vw, 32px))!important}
.dz-page .edge-tr{left:auto!important;right:calc((100vw - 1672 * var(--u)) / -2 + clamp(16px, 2vw, 32px))}
.dz-page .edge-r{width:calc(var(--W) * var(--u) + (100vw - 1672 * var(--u)) / 2)!important}
.dz-page .frame{position:relative;width:calc(1672 * var(--u));height:calc(941 * var(--u));margin:0 auto}
.dz-page .at{position:absolute}
.dz-page .hline{position:absolute;left:-100vw;width:300vw;height:1px;background:var(--border)}
.dz-page h1,.dz-page .h{font-family:var(--font-display);font-weight:800;letter-spacing:-.045em;word-spacing:0;color:var(--head);margin:0}
.dz-logo{display:flex;align-items:center;gap:calc(14 * var(--u));color:var(--head);white-space:nowrap}
.dz-logo .logo-svg{height:calc(var(--mh) * var(--u))}.dz-logo .logo-word{font-family:var(--font-display);letter-spacing:-.015em}.dz-logo .logo-word b{font-weight:700}.dz-logo .logo-word{letter-spacing:-.02em}
.dz-eyebrow{font-size:calc(17 * var(--u));letter-spacing:.3em;text-transform:uppercase;color:#5f7d70;font-weight:500;white-space:nowrap}
.dz-lead{color:#6c7873;line-height:1.32}
.dz-skip{display:flex;align-items:center;gap:calc(10 * var(--u));font-size:calc(22 * var(--u));color:var(--text);white-space:nowrap}.dz-skip.dim{color:#7d8985}
.dz-feat{display:flex;gap:calc(var(--gap,26) * var(--u));align-items:center}
.dz-fi{flex:none;display:grid;place-items:center;width:calc(var(--box) * var(--u));height:calc(var(--box) * var(--u));border-radius:calc(var(--box) * .22 * var(--u));background:#e8f4ee;color:var(--head)}
.dz-fi.k{color:#0b3d2e}.dz-fi.g{color:#12896a;background:linear-gradient(145deg,#eef8f3,#e2f1ea);box-shadow:0 8px 16px -8px rgba(15,110,80,.38),0 1px 0 rgba(255,255,255,.8) inset}
.dz-fi .ic{width:calc(var(--box) * .52 * var(--u));height:calc(var(--box) * .52 * var(--u))}.dz-fi.k .ic{width:calc(var(--box) * .58 * var(--u));height:calc(var(--box) * .58 * var(--u))}
.dz-ft b{display:block;font-weight:600;color:var(--head);font-family:var(--font-body);letter-spacing:-.02em}.dz-ft b.plain{font-weight:400;color:var(--text);letter-spacing:0}.dz-ft span{display:block;color:#7b8581}
.dz-img{border-radius:calc(24 * var(--u));overflow:hidden;background:var(--soft)}.dz-img img{display:block;width:100%;height:100%;object-fit:cover}
.dz-bars{display:flex;gap:calc(var(--bg,12) * var(--u));align-items:center}.dz-bars i{display:block;height:calc(var(--bh,8) * var(--u));width:calc(var(--bw) * var(--u));border-radius:9px;background:#cfe0d8}.dz-bars i.on{background:var(--brand)}
.dz-btn{display:flex;align-items:center;justify-content:center;gap:calc(14 * var(--u));border-radius:calc(var(--rad,12) * var(--u));font-weight:500;border:1.5px solid var(--brand);background:#fff;color:var(--head);font-family:var(--font-body);cursor:pointer;white-space:nowrap}
:root[data-theme=dark] .dz-btn{background:var(--card)}.dz-btn:hover{background:var(--soft)}
.dz-btn.primary{background:linear-gradient(180deg,#1aa981,#139a76);color:#fff;border-color:transparent}.dz-btn.primary:hover{filter:brightness(1.06)}.dz-btn .ic{width:calc(28 * var(--u));height:calc(28 * var(--u))}
.dz-link{color:var(--brand);font-weight:600}
.dz-tag{display:inline-block}
/* forms */
.dz-input{display:flex;align-items:center;gap:calc(14 * var(--u));background:var(--card);border:1px solid #d8dfdb;border-radius:calc(var(--rad,10) * var(--u));padding:0 calc(28 * var(--u)) 0 calc(28 * var(--u));color:#5f6b66}
.dz-input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(19,146,111,.15)}
.dz-input input{border:0;background:none;padding:0;height:100%;outline:0;color:var(--text);font-size:inherit;border-radius:0}.dz-input input::placeholder{color:#8b9691}
.dz-input .ic{flex:none;width:calc(var(--ic,22) * var(--u));height:calc(var(--ic,22) * var(--u))}.dz-input .eye{border:0;background:none;color:#5f6b66;display:grid;padding:0}
.dz-label{font-weight:600;color:var(--head)}
.dz-check{display:flex;align-items:center;gap:calc(15 * var(--u))}.dz-check input{appearance:none;flex:none;margin:0;width:calc(var(--cb,26) * var(--u));height:calc(var(--cb,26) * var(--u));border:1.5px solid #8e9a95;border-radius:calc(6 * var(--u));background:var(--card);display:grid;place-items:center}
.dz-check input:checked{background:var(--brand);border-color:var(--brand)}.dz-check input:checked::after{content:"";width:34%;height:58%;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-8%) rotate(45deg)}
.dz-sep{display:flex;align-items:center;gap:calc(26 * var(--u));color:#5f6b66}.dz-sep::before,.dz-sep::after{content:"";flex:1;border-top:1px solid #cfd8d3}
.dz-hint{color:#69756f;transition:color .2s}.dz-hint.bad{color:var(--danger);font-weight:500}
.dz-role{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d8dfdb;border-radius:calc(10 * var(--u));overflow:hidden;background:var(--card)}
.dz-role button{position:relative;border:0;background:none;font-family:var(--font-display);font-weight:500;color:var(--text);font-size:calc(19 * var(--u))}
.dz-role button.on{background:var(--soft);color:var(--brand-d);font-weight:700}.dz-role button.on::after{content:"";position:absolute;left:calc(10 * var(--u));right:calc(10 * var(--u));bottom:calc(3 * var(--u));height:calc(4 * var(--u));border-radius:3px;background:var(--brand)}
.dz-nav a,.dz-nav button{font-size:calc(17 * var(--u));color:var(--text);white-space:nowrap;background:none;border:0;padding:0;display:inline-flex;align-items:center;gap:calc(6 * var(--u));cursor:pointer}.dz-nav a:hover,.dz-nav button:hover{color:var(--brand)}
.dz-navbtn{display:grid;place-items:center;border:1px solid #cfd8d3;border-radius:calc(10 * var(--u));background:var(--card);font-size:calc(17 * var(--u));color:var(--text)}
.dz-bgimg{background-size:cover;background-position:center;--rr:0}.dz-card{background:var(--card);border-radius:calc(22 * var(--u));box-shadow:0 1px 0 rgba(0,0,0,.02),0 0 0 1px rgba(13,60,45,.04)}
.dz-overlay-title{color:#fff;font-family:var(--font-display);text-shadow:0 2px 18px rgba(0,0,0,.25);line-height:.98}

/* entrance animations (start once the splash is gone) */
.rise{opacity:0;transform:translateY(calc(26 * var(--u,1)));animation:rise .8s var(--d,0s) cubic-bezier(.2,.8,.2,1) forwards}
.reveal{opacity:0;clip-path:inset(0 0 0 100% round calc(var(--rr,24) * var(--u,1)));transform:scale(1.04);animation:reveal 1.1s var(--d,.15s) cubic-bezier(.2,.8,.2,1) forwards}
.fade{opacity:0;animation:fadein .8s var(--d,0s) ease-out forwards}
html:not(.ready) .rise,html:not(.ready) .reveal,html:not(.ready) .fade{animation-play-state:paused}
@keyframes rise{to{opacity:1;transform:none}}@keyframes fadein{to{opacity:1}}@keyframes reveal{to{opacity:1;clip-path:inset(0 0 0 0 round calc(var(--rr,24) * var(--u,1)));transform:none}}
.dz-bars i.on{transform-origin:left;animation:grow .9s .3s cubic-bezier(.2,.8,.2,1) both}@keyframes grow{from{transform:scaleX(0)}}
@media (prefers-reduced-motion:reduce){.rise,.reveal,.fade{opacity:1!important;transform:none!important;clip-path:none!important;animation:none!important}}

/* phones / narrow windows: same screens, stacked */
@media (max-width:860px){
  .dz-page{--u:calc(100vw / 640);height:auto;min-height:100vh;overflow-x:hidden;overflow-y:visible;display:block}
  .dz-page .frame{width:100%;height:auto;display:flex;flex-direction:column;gap:calc(22 * var(--u));padding:calc(22 * var(--u)) calc(34 * var(--u)) calc(40 * var(--u))}
  .dz-page .at{position:static!important;width:auto!important;height:auto!important}
  .dz-page .hline{display:none}.dz-img,.dz-bgimg{aspect-ratio:1.2}.dz-img{order:-1}.dz-page .m-first{order:-2}
  .dz-page .dz-img img{aspect-ratio:1.2}
  .dz-btn{min-height:calc(76 * var(--u));width:100%}.dz-input{min-height:calc(76 * var(--u))}
  .dz-page .m-row{display:flex;gap:calc(14 * var(--u))}.dz-page .m-row .dz-btn{flex:1}
  .dz-page .m-hide,.dz-bgimg,.dz-overlay-title,.dz-card,.dz-nav{display:none!important}
  .dz-page .at.dz-btn,.dz-page .at.dz-role,.dz-page .at.dz-input{width:100%!important}.dz-role{min-height:calc(70 * var(--u))}
  .dz-page .dz-label{margin-top:calc(8 * var(--u))}.dz-navbtn{padding:calc(14 * var(--u))}
}

/* ============ top navigation (Discover / Search / Home detail) ============ */
.wrap{width:min(1496px,100% - 2 * clamp(16px,5.2vw,88px));margin-inline:auto}
.topnav{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--card) 92%,transparent);border-bottom:1px solid var(--border)}
.tn-in{width:100%;padding-inline:clamp(16px,2vw,32px);height:66px;display:flex;align-items:center;gap:clamp(20px,4vw,64px)}
.tn-in .logo{font-size:1.45rem}.tn-in .logo-svg{height:36px}
.tn-links{display:flex;gap:clamp(18px,3vw,48px);align-self:stretch;margin-left:clamp(0px,6vw,110px)}
.tn-links a{position:relative;display:flex;align-items:center;font-weight:500;color:var(--text);padding:0 2px;transition:color .2s}
.tn-links a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--brand);transform:scaleX(0);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.tn-links a:hover{color:var(--brand)}.tn-links a:hover::after{transform:scaleX(.5)}.tn-links a.on{font-weight:700;color:var(--head)}.tn-links a.on::after{transform:scaleX(1)}
.tn-right{margin-left:auto;display:flex;gap:10px;align-items:center}
.tn-right .icon-btn{border-color:transparent;background:none}.tn-right .icon-btn:hover{background:var(--soft)}
.me-wrap{position:relative}.me-btn{display:flex;align-items:center;gap:4px;border:0;background:none;padding:2px 6px 2px 2px;border-radius:99px;color:var(--text);transition:background .2s}.me-btn:hover{background:var(--soft)}
.menu{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:8px;display:grid;gap:2px;animation:menuIn .22s cubic-bezier(.2,.8,.2,1);transform-origin:top right}
.menu[hidden]{display:none}.menu a,.menu button{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;border:0;background:none;text-align:left;font-weight:500;width:100%;transition:background .15s,transform .15s}.menu a:hover,.menu button:hover{background:var(--soft);transform:translateX(2px)}
.menu-head{padding:10px 12px 12px;border-bottom:1px solid var(--border);margin-bottom:6px;display:grid}.menu-head small{color:var(--muted);text-transform:capitalize}
.main-top{padding-bottom:70px}.main-top>.notice{width:min(1496px,100% - 32px);margin:14px auto 0}

/* ============ discover ============ */
.d-hero{position:relative;min-height:clamp(300px,23vw,390px);padding-top:clamp(30px,5vw,68px)}
.d-hero-text{max-width:min(46%,640px)}.d-hero h1{font-size:clamp(2.2rem,4.1vw,4.25rem);line-height:.98;letter-spacing:-.035em;word-spacing:.08em}
.d-hero p{color:var(--muted);font-size:clamp(1rem,1.5vw,1.55rem);line-height:1.35;margin-top:clamp(10px,1.6vw,20px);max-width:36ch}
.d-hero-img{position:absolute;right:0;top:0;width:58%;height:100%;object-fit:cover;clip-path:polygon(2% 0,100% 0,100% 100%,0 100%);--rr:0}
.searchbar{margin-top:calc(-1 * clamp(40px,4.6vw,77px));margin-bottom:clamp(26px,3vw,44px);z-index:2;padding:clamp(10px,1.2vw,18px) clamp(12px,1.2vw,18px);box-shadow:0 14px 40px -14px rgba(11,61,46,.25)}
.sb-cell{transition:background .2s;border-radius:12px}.sb-cell:hover{background:var(--surface)}
.searchbar .btn{padding:clamp(12px,1.2vw,18px) clamp(18px,2.4vw,40px);border-radius:10px;font-size:1.05rem}
.sec-head h2{font-size:clamp(1.5rem,2.3vw,2.3rem);font-weight:800;letter-spacing:-.03em}.sec-head .link{display:inline-flex;gap:6px;align-items:center;transition:gap .25s}.sec-head .link:hover{gap:12px}

/* ============ listing cards: animation + hover ============ */
.cards .card{animation:cardIn .7s calc(var(--i,0) * 80ms + .1s) cubic-bezier(.2,.8,.2,1) both}
.card{position:relative;border-radius:16px;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .3s}
.card:hover,.card:focus-visible{transform:translateY(-8px);box-shadow:0 26px 50px -18px rgba(11,61,46,.38),0 0 0 1px rgba(19,146,111,.28);border-color:transparent}
.card:active{transform:translateY(-3px) scale(.995);transition-duration:.12s}
.card-img{overflow:hidden}.card-img img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1),filter .6s;transform:scale(1.001)}
.card:hover .card-img img{transform:scale(1.1)}
.card-img::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(7,59,45,0) 45%,rgba(7,59,45,.55));opacity:0;transition:opacity .45s}
.card:hover .card-img::before{opacity:1}
.card-img::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-18deg)}
.card:hover .card-img::after{animation:shine 1s .1s ease-out}
.card-img .tag{z-index:2;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.card:hover .tag{transform:translateY(-2px) scale(1.04)}.tag.off{background:var(--danger-bg);color:var(--danger)}
.card-img .heart{z-index:3;transition:transform .3s cubic-bezier(.3,1.6,.5,1),color .2s,background .2s}.card:hover .heart{transform:scale(1.1) rotate(-6deg)}.heart:hover{transform:scale(1.22)!important;color:var(--danger)}
.heart.pop{animation:heartPop .55s cubic-bezier(.3,1.6,.5,1)}.heart.on svg{animation:heartFill .4s}
.peek{position:absolute;z-index:2;left:50%;bottom:14px;display:inline-flex;gap:8px;align-items:center;background:#fff;color:var(--head);font-weight:600;font-size:.92rem;padding:9px 16px;border-radius:99px;box-shadow:0 8px 22px rgba(0,0,0,.25);opacity:0;transform:translate(-50%,16px);transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.card:hover .peek,.card:focus-visible .peek{opacity:1;transform:translate(-50%,0)}.peek .ic{transition:transform .3s}.card:hover .peek .ic{transform:translateX(3px)}
.card h3{transition:color .25s}.card:hover h3{color:var(--brand)}.card .price{transition:transform .35s}.card:hover .price{transform:translateX(-2px)}
.card-body{gap:6px}.card-foot .facts i{color:var(--muted);font-style:normal}.facts{font-size:.9rem}
.rc-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.rc-top .price{text-align:right;font-size:1.12rem}.rc-top .price small{display:block;font-size:.9rem}

/* ============ search ============ */
.pop-menu{position:absolute;z-index:30;left:0;top:calc(100% + 8px);width:260px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:14px;display:grid;gap:8px;animation:menuIn .22s cubic-bezier(.2,.8,.2,1);transform-origin:top left}.pop-menu[hidden]{display:none}.chk{display:flex;gap:10px;align-items:center;font-weight:400;cursor:pointer}.chk input{width:auto;accent-color:var(--brand)}
.chip{transition:transform .2s,background .2s}.chip:hover{transform:translateY(-1px);background:var(--soft-t);color:var(--brand-c)}.chip .ic{transition:transform .25s}.chip:hover .ic{transform:rotate(90deg)}
.fsel{transition:border-color .2s,box-shadow .2s,transform .2s}.fsel:hover{border-color:var(--brand);transform:translateY(-1px)}.fsel:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(19,146,111,.15)}
.seg button{transition:background .25s,color .25s}.results .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.pin{transform:none;background:none;padding:0;box-shadow:none;display:grid;justify-items:center;animation:pinIn .5s cubic-bezier(.3,1.6,.5,1) both}.pin b{background:var(--brand);color:var(--brand-c);font-weight:700;font-size:.9rem;padding:6px 12px;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.28);white-space:nowrap}.pin i{width:12px;height:12px;border-radius:50%;background:var(--brand);border:2px solid #fff;margin-top:3px;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.leaflet-marker-icon{overflow:visible!important}.leaflet-marker-icon .pin{transform:translate(-50%,-100%);transition:transform .25s}.leaflet-marker-icon:hover .pin{transform:translate(-50%,-100%) scale(1.12)}
#map{height:calc(100vh - 280px)}

/* ============ detail ============ */
.detail{grid-template-columns:minmax(0,1fr) clamp(340px,26vw,430px);gap:clamp(24px,3vw,48px)}.d-head h1{font-size:clamp(1.9rem,3.5vw,3.1rem);letter-spacing:-.035em}
.gallery{height:clamp(300px,25vw,420px)}.gallery>div{transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .4s}.gallery>div:hover{box-shadow:0 14px 30px -10px rgba(0,0,0,.3)}.gallery img{transition:transform 1s cubic-bezier(.2,.8,.2,1)}.gallery>div:hover img{transform:scale(1.06)}
.gallery>div{animation:cardIn .8s both}.gallery>div:nth-child(2){animation-delay:.12s}.gallery>div:nth-child(3){animation-delay:.24s}
.fact{transition:transform .25s,border-color .25s,box-shadow .25s}.fact:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:0 8px 18px -10px rgba(11,61,46,.4)}
.amen span{transition:color .2s,transform .2s}.amen span:hover{color:var(--brand);transform:translateY(-2px)}
.agent .avatar{width:124px;height:124px}.big-price{font-size:clamp(1.9rem,2.9vw,2.8rem);letter-spacing:-.03em}

/* ============ buttons, rail, modals ============ */
.btn{transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .25s,background .2s,filter .2s,border-color .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px -10px rgba(11,61,46,.45)}.btn:active{transform:translateY(0) scale(.97);box-shadow:none}
.btn.primary .ic,.btn .ic{transition:transform .25s}.btn:hover .ic{transform:translateX(3px)}
.icon-btn{transition:background .2s,transform .2s,border-color .2s}.icon-btn:hover{background:var(--soft);transform:translateY(-1px)}.icon-btn.flat{border:0;background:none}
.rail a.item{transition:background .2s,transform .2s}.rail a.item:hover{transform:translateX(3px)}.rail a.item .ic{transition:transform .3s cubic-bezier(.3,1.6,.5,1)}.rail a.item:hover .ic{transform:scale(1.15) rotate(-4deg)}
.rail a.item.on::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:4px;border-radius:0 4px 4px 0;background:var(--brand);animation:barIn .4s cubic-bezier(.2,.8,.2,1)}
.rail a.item .badge{position:absolute;top:8px;right:14px;background:var(--brand);color:var(--brand-c);font-size:.72rem;min-width:20px;height:20px;border-radius:99px;display:grid;place-items:center;padding:0 6px}
.shell.admin .rail a.item .badge{position:static;margin-left:auto}
dialog.modal[open]{animation:modalIn .4s cubic-bezier(.2,.8,.2,1)}dialog.modal[open]::backdrop{animation:fadein .3s both}
#toast{transition:opacity .35s,transform .45s cubic-bezier(.3,1.5,.5,1)}
#nprogress{position:fixed;left:0;top:0;height:3px;z-index:2000;background:linear-gradient(90deg,var(--brand),#34d399);width:0;opacity:0;pointer-events:none}#nprogress.run{opacity:1;animation:nprog 6s cubic-bezier(.1,.7,.2,1) forwards}#nprogress.done{width:100%;opacity:0;transition:width .25s,opacity .5s .25s}
.page{animation:pageIn .55s cubic-bezier(.2,.8,.2,1) both}
.panel,.stat,.attn,.list-row{animation:cardIn .6s both}.stat:nth-child(2){animation-delay:.07s}.stat:nth-child(3){animation-delay:.14s}.stat:nth-child(4){animation-delay:.21s}
.list-row{transition:background .2s,transform .25s}.list-row:hover{background:var(--surface);transform:translateX(4px)}tr{transition:background .2s}tbody tr:hover{background:var(--surface)}

/* ============ messages additions ============ */
.msg-search{margin:0 0 4px;height:50px;background:var(--card)}.msg-search input{padding:0}
.conv{position:relative;transition:background .2s,transform .2s}.conv:hover{transform:translateX(3px)}.udot{position:absolute;right:14px;bottom:16px;width:10px;height:10px;border-radius:50%;background:var(--brand);animation:pulse 1.8s infinite}
.bubble{animation:bubbleIn .35s cubic-bezier(.2,.8,.2,1) both;border-radius:16px 16px 16px 4px}.bubble.me{border-radius:16px 16px 4px 16px}.bubble time{display:flex;gap:4px;justify-content:flex-end;align-items:center}
.bubble.card-b{display:grid;grid-template-columns:150px 1fr;gap:16px;max-width:min(560px,92%);padding:12px;border-radius:16px}.card-b img{width:150px;height:140px;object-fit:cover;border-radius:12px}.card-b>div{display:grid;gap:4px;align-content:center}.card-b time{grid-column:1/-1}.bk-when{display:flex;gap:8px;align-items:center;color:var(--brand-d)}.card-b .btn{margin-top:6px}
.emoji{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;margin:0 16px;padding:8px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);animation:menuIn .2s}.emoji[hidden]{display:none}.emoji button{border:0;background:none;font-size:1.4rem;border-radius:8px;padding:4px;transition:transform .15s,background .15s}.emoji button:hover{background:var(--soft);transform:scale(1.25)}
.composer .send{transition:transform .25s cubic-bezier(.3,1.6,.5,1),filter .2s}.composer .send:hover{transform:scale(1.1) rotate(-8deg)}.composer .send:active{transform:scale(.92)}

/* ============ keyframes ============ */
@keyframes cardIn{from{opacity:0;transform:translateY(34px) scale(.97)}to{opacity:1;transform:none}}
@keyframes pageIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes menuIn{from{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:none}}
@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}
@keyframes shine{to{left:130%}}
@keyframes heartPop{0%{transform:scale(1)}30%{transform:scale(1.45)}60%{transform:scale(.88)}100%{transform:scale(1)}}
@keyframes heartFill{from{transform:scale(.4)}to{transform:scale(1)}}
@keyframes pinIn{from{opacity:0;transform:translateY(-14px) scale(.6)}to{opacity:1;transform:none}}
@keyframes barIn{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes bubbleIn{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(19,146,111,.5)}50%{box-shadow:0 0 0 7px rgba(19,146,111,0)}}
@keyframes nprog{0%{width:0}20%{width:40%}60%{width:75%}100%{width:92%}}
@media (max-width:1100px){.d-hero-text{max-width:100%}.d-hero-img{position:relative;width:100%;height:240px;clip-path:none;margin-top:18px}.d-hero{padding-bottom:0}.results .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.tn-links{display:flex;position:fixed;left:0;right:0;bottom:0;margin:0;background:var(--card);border-top:1px solid var(--border);height:58px;justify-content:space-around;z-index:40;gap:0}.tn-links a{font-size:.8rem;padding:0 6px}.tn-links a::after{bottom:auto;top:-1px;border-radius:0 0 3px 3px}.main-top{padding-bottom:110px}.bubble.card-b{grid-template-columns:1fr}.card-b img{width:100%}.searchbar{margin-top:16px}.results .cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.card,.card *,.page,.cards .card,.gallery>div,.panel,.stat,.bubble,.menu,dialog.modal{animation:none!important;transition:none!important}.card:hover{transform:none}}

html,body{overflow-x:clip}
html:not(.ready){overflow:hidden}

/* ============ constant header + home-only sidebar ============ */
.home-grid{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);align-items:start}.home-grid.collapsed{--rail:72px}
.home-rail{position:sticky;top:66px;height:calc(100vh - 66px);padding-top:14px}
.home-rail .rail-top{padding:0 8px 14px;justify-content:flex-end}.home-grid.collapsed .rail-top{justify-content:center}
.home-grid.collapsed .item span,.home-grid.collapsed .rail-user span{display:none}.home-grid.collapsed .rail a.item{justify-items:center;padding-inline:0}.home-grid.collapsed .rail-collapse svg{transform:rotate(180deg)}
.home-grid>.main-top{min-width:0}
.tn-in .logo{flex:none}
.main-top .msg-shell{margin:0;height:calc(100vh - 66px)}.main-top .chat{height:calc(100vh - 66px)}.main-top:has(.msg-shell){padding-bottom:0}
.main-top>.wrap{padding-top:26px}

/* ============ product tour ============ */
.tour{position:fixed;inset:0;z-index:1500;opacity:0;transition:opacity .35s}.tour.on{opacity:1}.tour.out{opacity:0}
.tour-spot{position:fixed;box-shadow:0 0 0 100vmax rgba(5,28,21,.62),0 0 0 3px rgba(52,211,153,.9),0 0 32px 4px rgba(52,211,153,.45);transition:top .5s cubic-bezier(.2,.8,.2,1),left .5s cubic-bezier(.2,.8,.2,1),width .5s cubic-bezier(.2,.8,.2,1),height .5s cubic-bezier(.2,.8,.2,1);pointer-events:none;animation:tourPulse 2.2s ease-in-out infinite}
.tour-card{position:fixed;background:var(--card);color:var(--text);border-radius:18px;padding:20px 22px;box-shadow:0 24px 60px -12px rgba(0,0,0,.5);transition:top .5s cubic-bezier(.2,.8,.2,1),left .5s cubic-bezier(.2,.8,.2,1)}
.tour-card.in .tour-t,.tour-card.in .tour-b{animation:pageIn .45s both}.tour-card.in .tour-b{animation-delay:.07s}
.tour-step{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}.tour-t{font-size:1.35rem;margin:6px 0}.tour-b{color:var(--muted);line-height:1.5}
.tour-dots{display:flex;gap:6px;margin:14px 0}.tour-dots i{width:8px;height:8px;border-radius:99px;background:var(--border);transition:width .3s,background .3s}.tour-dots i.on{width:24px;background:var(--brand)}
.tour-actions{display:flex;gap:8px;align-items:center}.btn.ghost{border-color:transparent;background:none;color:var(--muted)}.btn.ghost:hover{background:var(--soft);box-shadow:none}
@keyframes tourPulse{0%,100%{box-shadow:0 0 0 100vmax rgba(5,28,21,.62),0 0 0 3px rgba(52,211,153,.9),0 0 22px 2px rgba(52,211,153,.35)}50%{box-shadow:0 0 0 100vmax rgba(5,28,21,.62),0 0 0 3px rgba(52,211,153,1),0 0 40px 8px rgba(52,211,153,.55)}}
@media (max-width:860px){.home-grid{grid-template-columns:1fr}.home-rail{position:fixed;top:auto;bottom:0;height:auto}.tn-links{display:flex}}
@media (prefers-reduced-motion:reduce){.tour-spot{animation:none}.tour,.tour-spot,.tour-card{transition:none}}

/* ============ the site menu: always-minimised sidebar that opens on hover ============ */
.app-shell{--rw:72px;min-height:100vh}
.app-rail{position:fixed;left:0;top:0;bottom:0;width:var(--rw);height:auto;z-index:60;overflow:hidden;padding:22px 0 14px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s,background .3s}
.app-rail:hover,.app-rail:focus-within,.tour-rail .app-rail{width:172px;box-shadow:14px 0 44px -18px rgba(11,61,46,.4);background:var(--surface)}
.app-rail .rail-top{display:flex;align-items:center;justify-content:space-between;padding:0 20px 20px 18px;min-height:56px}
.app-rail .rail-top .logo{flex:none}.app-rail .logo-svg{height:36px}
.app-rail .rail-chev{color:var(--head);opacity:0;transform:translateX(-8px);transition:opacity .25s,transform .35s}
.app-rail:hover .rail-chev,.app-rail:focus-within .rail-chev,.tour-rail .app-rail .rail-chev{opacity:1;transform:none}
.app-rail nav{display:flex;flex-direction:column;gap:4px;padding:0 8px;margin-top:4px}
.app-rail a.item{position:relative;display:grid;justify-items:start;gap:0;padding:12px 16px;border-radius:12px;color:var(--text);font-size:.93rem;font-weight:500;white-space:nowrap;overflow:hidden;transition:background .2s,gap .35s cubic-bezier(.2,.8,.2,1)}
.app-rail a.item .ic{color:var(--head)}
.app-rail a.item>span{max-height:0;opacity:0;transform:translateY(-4px);transition:max-height .35s cubic-bezier(.2,.8,.2,1),opacity .25s,transform .35s}
.app-rail:hover a.item,.app-rail:focus-within a.item,.tour-rail .app-rail a.item{gap:4px}
.app-rail:hover a.item>span,.app-rail:focus-within a.item>span,.tour-rail .app-rail a.item>span{max-height:24px;opacity:1;transform:none;transition-delay:.05s}
.app-rail a.item:hover{background:var(--soft)}.app-rail a.item.on{background:var(--soft);color:var(--head);font-weight:650}
.app-rail a.item.on::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:4px;border-radius:0 4px 4px 0;background:var(--brand);animation:barIn .4s cubic-bezier(.2,.8,.2,1)}
.app-rail .badge{position:absolute;top:6px;left:36px;right:auto;min-width:18px;height:18px;border-radius:99px;display:grid;place-items:center;padding:0 5px;background:var(--brand);color:var(--brand-c);font-size:.7rem;font-weight:700;animation:pinIn .4s cubic-bezier(.3,1.6,.5,1)}.app-rail .badge[hidden]{display:none}
.app-rail .rail-bottom{margin-top:auto;display:grid;gap:4px;padding:0 8px}
.app-rail .rail-user{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:12px;font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;transition:background .2s}.app-rail .rail-user:hover{background:var(--soft)}
.app-rail .rail-user .avatar{width:36px;height:36px;flex:none}.app-rail .rail-user>span:last-child{opacity:0;transition:opacity .25s}
.app-rail:hover .rail-user>span:last-child,.app-rail:focus-within .rail-user>span:last-child,.tour-rail .app-rail .rail-user>span:last-child{opacity:1;transition-delay:.08s}
.main-app{margin-left:72px;min-width:0;padding-bottom:70px;transition:none}.main-app>.notice{margin:14px clamp(16px,3vw,40px) 0}
.main-app>.wrap{padding-top:28px}
.main-app .msg-shell{margin:0;height:100vh}.main-app .chat{height:100vh}.main-app:has(.msg-shell){padding-bottom:0}
@media (max-width:860px){
  .app-rail,.app-rail:hover,.app-rail:focus-within{top:auto;bottom:0;left:0;right:0;width:100%;height:60px;flex-direction:row;padding:0;border-right:0;border-top:1px solid var(--border);box-shadow:none}
  .app-rail .rail-top,.app-rail .rail-bottom .rail-user,.app-rail .rail-chev{display:none}
  .app-rail nav{flex-direction:row;flex:1;justify-content:space-around;margin:0;padding:0 4px;gap:0}
  .app-rail a.item{padding:6px 8px;justify-items:center;gap:2px;font-size:.68rem;flex:1}.app-rail a.item>span{max-height:16px;opacity:1;transform:none}
  .app-rail .rail-bottom{margin:0;padding:0 4px;display:flex}.app-rail .rail-bottom .item{flex:none}
  .app-rail .badge{left:calc(50% + 6px)}
  .main-app{margin-left:0;padding-bottom:90px}.main-app .msg-shell,.main-app .chat{height:calc(100vh - 60px)}
}
@media (prefers-reduced-motion:reduce){.app-rail,.app-rail *{transition:none!important}}
.rail.app-rail a.item .badge{right:auto;left:38px;top:6px;width:auto;height:18px;min-width:18px}

/* ============ onboarding: one shared margin grid ============ */
.ob{--u:min(calc(100vw / 1672),calc(100vh / 941),1.15px);--m:max(20px,5.5vw);height:100vh;display:grid;grid-template-rows:calc(87 * var(--u)) minmax(0,1fr) calc(117 * var(--u));background:var(--bg);overflow:hidden;font-family:var(--font-body);color:var(--text)}
.ob-in{width:calc(100% - 2 * var(--m));margin-inline:auto}
.ob-head{background:var(--card);border-bottom:1px solid var(--border)}.ob-head .ob-in{height:100%;display:flex;align-items:center;justify-content:space-between}
.ob-logo{display:flex;align-items:center;gap:calc(13 * var(--u));font-size:calc(29.5 * var(--u));color:var(--head);letter-spacing:-.02em;white-space:nowrap}.ob-logo .logo-svg{height:calc(44 * var(--u))}.ob-logo b{font-weight:700}.ob-logo span{font-weight:400}
.ob-skip{display:grid;place-items:center;min-width:calc(88 * var(--u));height:calc(48 * var(--u));padding:0 calc(20 * var(--u));border:1px solid #d5dcd7;border-radius:calc(10 * var(--u));background:var(--card);font-size:calc(18 * var(--u));font-weight:500;color:var(--head);transition:background .2s,border-color .2s,transform .2s}.ob-skip:hover{background:var(--soft);border-color:var(--brand);transform:translateY(-1px)}
.ob-main{display:grid;grid-template-columns:minmax(0,1fr) 56.5%;gap:calc(48 * var(--u));align-items:center;min-height:0}
.ob-eyebrow{font-size:calc(17 * var(--u));font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:#244237}
.ob h1{font-family:var(--font-display);font-weight:800;font-size:calc(80 * var(--u));line-height:calc(84 * var(--u));letter-spacing:-.035em;color:var(--head);margin:calc(22 * var(--u)) 0 0}
.ob-lead{font-size:calc(27 * var(--u));line-height:calc(37 * var(--u));color:#2b3b35;margin:calc(24 * var(--u)) 0 0;max-width:calc(580 * var(--u))}
.ob-feats{list-style:none;margin:calc(36 * var(--u)) 0 0;padding:0;display:grid;gap:calc(var(--gap) * var(--u))}.ob-feats li{display:flex;align-items:center;gap:calc(20 * var(--u));font-size:calc(22 * var(--u));color:#1d2b26}
.ob-fi{flex:none;display:grid;place-items:center;color:#123f31}.ob-fi .ic{width:calc(var(--ic) * var(--u));height:calc(var(--ic) * var(--u))}
.ob-feats.box{--gap:28;--ic:27}.ob-feats.box .ob-fi{width:calc(54 * var(--u));height:calc(54 * var(--u));border:1.5px solid #1f4a3b;border-radius:calc(10 * var(--u))}.ob-feats.box li{font-weight:400}
.ob-feats.soft{--gap:20;--ic:30}.ob-feats.soft .ob-fi{width:calc(65 * var(--u));height:calc(65 * var(--u));border-radius:calc(14 * var(--u));background:#e8f4ee}.ob-feats.soft li{font-weight:500}
.ob-feats.round{--gap:20;--ic:30}.ob-feats.round .ob-fi{width:calc(72 * var(--u));height:calc(72 * var(--u));border-radius:50%;background:#e8f4ee}.ob-feats.round li{font-weight:400}
.ob-img{height:calc(653 * var(--u));border-radius:calc(16 * var(--u));overflow:hidden;background:var(--soft);box-shadow:0 20px 50px -28px rgba(11,61,46,.35)}.ob-img img{display:block;width:100%;height:100%;object-fit:cover}
.ob-foot{border-top:1px solid var(--border);background:var(--card)}.ob-foot-in{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.ob-btn{display:inline-flex;align-items:center;justify-content:center;gap:calc(10 * var(--u));height:calc(58 * var(--u));border-radius:calc(12 * var(--u));font-size:calc(22 * var(--u));font-weight:500;white-space:nowrap;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .25s,background .2s,filter .2s}
.ob-btn.back{justify-self:start;min-width:calc(176 * var(--u));border:1.5px solid #0f5c46;background:var(--card);color:var(--head)}.ob-btn.back:hover{background:var(--soft);transform:translateY(-2px)}
.ob-btn.back.off{border-color:transparent;background:#ececea;color:#a3aaa6;cursor:not-allowed}.ob-btn.back.off:hover{transform:none;background:#ececea}
.ob-btn.cta{justify-self:end;min-width:calc(250 * var(--u));background:linear-gradient(180deg,#1aa981,#139a76);color:#fff;border:0;box-shadow:0 10px 24px -12px rgba(15,140,106,.7)}.ob-btn.cta:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 14px 28px -12px rgba(15,140,106,.8)}.ob-btn.cta .ic{transition:transform .25s}.ob-btn.cta:hover .ic{transform:translateX(4px)}
.ob-prog{display:grid;justify-items:center;gap:calc(12 * var(--u))}.ob-bars{display:flex;gap:calc(12 * var(--u))}.ob-bars i{display:block;width:calc(76 * var(--u));height:calc(11 * var(--u));border-radius:9px;background:#d5e3dc}.ob-bars i.on{background:var(--brand);transform-origin:left;animation:grow .9s .3s cubic-bezier(.2,.8,.2,1) both}
.ob-prog span{font-size:calc(19 * var(--u));font-weight:500;color:#2b3b35}
@media (max-width:860px){
  .ob{--u:calc(100vw / 640);--m:20px;height:auto;min-height:100vh;display:block;overflow:visible}
  .ob-head{height:calc(88 * var(--u))}.ob-main{display:flex;flex-direction:column-reverse;gap:calc(26 * var(--u));padding:calc(26 * var(--u)) 0}
  .ob-img{height:calc(380 * var(--u));width:100%}.ob-foot{position:sticky;bottom:0;height:calc(120 * var(--u))}
  .ob-skip{min-width:0}.ob-btn.back,.ob-btn.cta{min-width:calc(150 * var(--u));height:calc(70 * var(--u))}.ob-prog{display:none}.ob-foot-in{display:flex;justify-content:space-between}
}

/* ===== sidebar: slim strip that only extends sideways on hover (labels sit beside the icons, so nothing grows taller) ===== */
@media (min-width:861px){
  .app-rail{width:72px;padding:18px 0 12px}
  .app-rail:hover,.app-rail:focus-within,.tour-rail .app-rail{width:216px}
  .app-rail .rail-top{flex:none;padding:0 0 14px 20px;min-height:0;gap:0}
  .app-rail .rail-chev{margin-left:auto;margin-right:18px}
  .app-rail nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;margin-top:0}.app-rail nav::-webkit-scrollbar{display:none}
  .app-rail a.item,.app-rail:hover a.item,.app-rail:focus-within a.item,.tour-rail .app-rail a.item{display:flex;align-items:center;justify-items:unset;gap:0;padding:12px 16px;height:48px;font-size:.95rem}
  .app-rail a.item>span{flex:none;max-height:none;max-width:0;margin-left:0;opacity:0;transform:none;overflow:hidden;white-space:nowrap;transition:max-width .38s cubic-bezier(.2,.8,.2,1),margin .38s,opacity .25s}
  .app-rail:hover a.item>span,.app-rail:focus-within a.item>span,.tour-rail .app-rail a.item>span{max-width:140px;margin-left:16px;opacity:1;transform:none;transition-delay:.04s}
  .app-rail .rail-bottom{flex:none;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}
  .app-rail .rail-user{height:52px;padding:8px 10px;gap:0}.app-rail .rail-user>span:last-child{max-width:0;overflow:hidden;white-space:nowrap;opacity:0;margin-left:0;transition:max-width .38s cubic-bezier(.2,.8,.2,1),margin .38s,opacity .25s}
  .app-rail:hover .rail-user>span:last-child,.app-rail:focus-within .rail-user>span:last-child,.tour-rail .app-rail .rail-user>span:last-child{max-width:140px;margin-left:14px;opacity:1}
  .rail.app-rail a.item .badge{left:34px;top:7px;width:10px;min-width:10px;height:10px;padding:0;font-size:0;border:2px solid var(--surface)}
}
@media (min-width:861px) and (max-height:620px){
  .app-rail{padding-top:10px}.app-rail .rail-top{padding-bottom:6px}.app-rail .logo-svg{height:30px}
  .app-rail a.item,.app-rail:hover a.item,.app-rail:focus-within a.item{height:42px;padding-block:9px}.app-rail .rail-user{height:46px}
}

/* ============ back button ============ */
.backbar{padding-top:22px;margin-bottom:-6px}
.back-btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px 0 12px;border:1.5px solid #0f5c46;border-radius:12px;background:var(--card);color:var(--head);font-weight:500;font-size:1rem;transition:transform .2s cubic-bezier(.2,.8,.2,1),background .2s,box-shadow .2s}
.back-btn:hover{background:var(--soft);transform:translateX(-3px);box-shadow:0 8px 18px -12px rgba(11,61,46,.5)}.back-btn .ic{transition:transform .25s}.back-btn:hover .ic{transform:translateX(-2px)}
:root[data-theme=dark] .back-btn{border-color:var(--brand)}

/* ============ home (new design) ============ */
.d-hero{min-height:0;padding-top:clamp(26px,3vw,46px)}.d-hero .d-wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 48%;gap:clamp(20px,3vw,48px);align-items:start;min-height:clamp(250px,21vw,350px)}
.d-hero-text{max-width:none;padding-top:clamp(10px,3.5vw,66px)}
.eyebrow-s{font-size:.8rem;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:#244237}
.d-hero h1{font-size:clamp(2rem,3.85vw,4rem);line-height:1.02;letter-spacing:-.04em;margin-top:clamp(14px,1.6vw,26px)}
.d-hero p{font-size:clamp(1rem,1.5vw,1.55rem);color:#2b3b35;max-width:none;margin-top:clamp(12px,1.4vw,22px)}
.d-hero-img{position:static;width:100%;height:clamp(230px,20.6vw,345px);object-fit:cover;clip-path:none;border-radius:24px;--rr:24;align-self:start;margin-top:0;box-shadow:0 24px 50px -30px rgba(11,61,46,.4)}
.searchbar{margin-top:calc(-1 * clamp(34px,4.4vw,74px));width:calc(100% - clamp(0px,2.9vw,48px));border-radius:16px;padding:clamp(10px,1vw,16px)}
.searchbar .sb-cell label{font-size:.82rem;color:#6b7772}.searchbar .sb-cell select{font-size:1.05rem;font-weight:500;color:var(--head)}
.searchbar .btn{border-radius:10px;font-weight:500;padding:clamp(12px,1.2vw,18px) clamp(18px,2.6vw,44px)}
.sec-head h2{font-size:clamp(1.5rem,2.2vw,2.2rem)}.sec-head .link{font-weight:500;color:var(--brand-d)}
.hcard{border-radius:16px}.hcard .card-img.wide{aspect-ratio:2.46/1}
.hcard .card-body{padding:clamp(12px,1.1vw,18px) clamp(14px,1.3vw,22px) clamp(14px,1.2vw,20px);gap:6px}
.hc-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.hcard h3{font-size:1.2rem;font-weight:500;color:var(--head)}
.avail{flex:none;background:#e4f3ec;color:#12684f;font-size:.85rem;padding:5px 16px;border-radius:99px;font-weight:500}.avail.off{background:var(--danger-bg);color:var(--danger)}
.hc-price{font-size:1.28rem;font-weight:600;color:var(--head);margin-top:4px}
.hcard .facts{font-size:.95rem;gap:14px}.hcard .facts i{font-style:normal;color:var(--muted)}
.cards:has(.hcard){grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}

/* ============ settings (new design) ============ */
.set-grid{display:grid;grid-template-columns:clamp(220px,17vw,280px) minmax(0,1fr);gap:0;padding-top:8px;min-height:calc(100vh - 150px)}
.set-nav{display:flex;flex-direction:column;gap:4px;padding:6px 18px 12px 0;border-right:1px solid var(--border)}
.set-nav h2{font-size:clamp(1.7rem,2.2vw,2.2rem);font-weight:800;letter-spacing:-.03em;margin:0 0 18px 14px}
.set-nav a,.set-out{display:flex;align-items:center;gap:16px;height:52px;padding:0 16px;border-radius:10px;color:var(--text);font-size:1.02rem;font-weight:500;border:0;background:none;text-align:left;transition:background .2s,transform .2s}
.set-nav a:hover,.set-out:hover{background:var(--soft);transform:translateX(3px)}.set-nav a.on{background:#dcebe3;color:var(--head);font-weight:650}:root[data-theme=dark] .set-nav a.on{background:var(--soft)}
.set-nav .ic{color:var(--head)}.set-nav hr{border:0;border-top:1px solid var(--border);margin:auto 14px 10px}.set-nav{min-height:min(620px,70vh)}
.set-main{padding-left:clamp(20px,2.4vw,40px);min-width:0}.set-main h1{font-size:clamp(1.9rem,2.6vw,2.7rem);letter-spacing:-.035em}.lead-s{color:#4a5a54;margin:8px 0 22px;font-size:1.08rem}
.set-cols{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:22px;align-items:start}.set-left{display:grid;gap:20px}.set-right{display:grid;gap:20px}.set-one{display:grid;gap:20px;max-width:760px}
.set-card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:clamp(18px,1.6vw,26px);animation:cardIn .55s both}
.set-card h3{font-size:1.3rem;font-weight:800;letter-spacing:-.02em}.set-card .sub{color:#5a6b64;margin:4px 0 16px;font-size:.98rem}
.pd-top{display:flex;gap:22px;align-items:center;margin:14px 0 22px}.big-av{width:clamp(88px,7.4vw,126px);height:clamp(88px,7.4vw,126px);border-radius:50%;object-fit:cover;background:#dcebe3;color:var(--head);display:grid;place-items:center;font-size:clamp(1.9rem,2.8vw,2.9rem);font-weight:500;flex:none}
.pd-name{font-size:1.35rem;color:var(--head);font-weight:700;display:inline-block;margin-bottom:12px}.pd-top .btn.sm{border-radius:10px;font-weight:500;padding:10px 18px}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.f3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.fl{display:grid;gap:8px;font-weight:600;color:var(--head);font-size:.98rem}.fl input,.fl select{height:48px;border-radius:10px;font-weight:400;padding:0 14px;background:var(--card)}.fl input::placeholder{color:#8b9691}.fl input:disabled{background:var(--card);color:var(--text);opacity:1;padding-right:110px}
.in-wrap{position:relative;display:block}.vbadge{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:inline-flex;gap:5px;align-items:center;background:#e1f2ea;color:#12684f;font-size:.82rem;font-weight:500;padding:4px 10px;border-radius:8px}.vbadge.no{background:var(--warn-bg);color:#a86b00}.kv .vbadge{position:static;transform:none;margin-left:6px}
.note{color:#5a6b64;font-size:.92rem;margin:14px 0 0}.set-actions{display:flex;gap:14px;align-items:center;margin-top:6px}.set-left .set-actions{margin-top:2px}
.btn.plain{border:0;background:none;color:var(--brand-d);font-weight:600;box-shadow:none}.btn.plain:hover{background:var(--soft);transform:none;box-shadow:none}
.theme-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.theme-card{position:relative;display:grid;justify-items:center;gap:10px;padding:18px 8px 40px;border:1.5px solid var(--border);border-radius:12px;background:var(--card);color:var(--head);font-weight:500;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}
.theme-card:hover{transform:translateY(-2px);border-color:var(--brand)}.theme-card.on{border-color:var(--brand);background:var(--soft);box-shadow:0 0 0 1px var(--brand) inset}
.theme-card .radio{position:absolute;bottom:14px;width:18px;height:18px;border-radius:50%;border:1.5px solid #9aa7a1;background:var(--card);display:grid;place-items:center}.theme-card.on .radio{border-color:var(--brand)}.theme-card.on .radio::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--brand)}
.sw-row{display:grid;grid-template-columns:34px 1fr auto;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--border)}.sw-row:first-of-type{border-top:0;padding-top:4px}.sw-ic{color:var(--head);padding-top:2px}
.sw-row b{color:var(--head);font-size:1.02rem}.sw-row p{color:#5a6b64;font-size:.92rem;margin-top:2px;line-height:1.35}
.switch{position:relative;width:52px;height:30px;border-radius:99px;border:0;background:#c9d3ce;transition:background .25s;flex:none;margin-top:2px}.switch i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .28s cubic-bezier(.3,1.4,.5,1)}.switch.on{background:var(--brand)}.switch.on i{transform:translateX(22px)}
.manage{display:inline-flex;gap:8px;align-items:center;margin-top:8px;padding-top:14px;border-top:1px solid var(--border);width:100%;font-weight:600}
.kv{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--border)}.kv:first-of-type{border-top:0}.kv span{color:#5a6b64}.kv b{color:var(--head);font-weight:600;text-align:right}
details{border-top:1px solid var(--border);padding:12px 0}details:first-of-type{border-top:0}summary{cursor:pointer;font-weight:600;color:var(--head);list-style:none;display:flex;justify-content:space-between}summary::after{content:"+";font-size:1.3rem;line-height:1;color:var(--brand)}details[open] summary::after{content:"−"}details p{color:#4a5a54;margin-top:8px}
@media (max-width:1100px){.set-cols{grid-template-columns:1fr}.d-hero .d-wrap{grid-template-columns:1fr}.d-hero-img{height:230px;order:-1}.searchbar{width:100%;margin-top:-30px}}
@media (max-width:860px){.set-grid{grid-template-columns:1fr}.set-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border);padding:0 0 10px;min-height:0;gap:6px}.set-nav h2,.set-nav hr{display:none}.set-nav a,.set-out{height:44px;white-space:nowrap;flex:none}.set-main{padding-left:0;padding-top:16px}.f2,.f3{grid-template-columns:1fr}.pd-top{flex-direction:row}.theme-cards{gap:8px}}

/* ---- refinements after first render ---- */
.set-nav{position:sticky;top:12px;align-self:start;height:calc(100vh - 36px);min-height:0}
.set-nav hr{margin-top:auto}
.fl select{font-size:.93rem;padding:0 8px 0 12px}.f3 .fl select{font-size:.9rem}
.d-hero h1{font-size:clamp(1.9rem,3.2vw,3.5rem);letter-spacing:-.045em;white-space:nowrap}
.d-hero .d-wrap{grid-template-columns:minmax(0,1fr) 46%}
.cards:has(.hcard){grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.cards:has(.hcard){grid-template-columns:repeat(2,minmax(0,1fr))}.d-hero h1{white-space:normal}}
@media (max-width:700px){.cards:has(.hcard){grid-template-columns:1fr}}
.set-nav{height:calc(100vh - 118px);min-height:440px}
.f3{grid-template-columns:1fr 1fr 1.3fr}

/* ===== top bar is the site navigation again (design) ===== */
.topnav .logo-svg{height:34px}.tn-in .logo{font-size:1.4rem}
.tn-links{margin-left:clamp(0px,5vw,96px);gap:clamp(18px,2.8vw,44px)}
.tn-links a{position:relative;font-size:1rem}.tn-badge{margin-left:6px;background:var(--brand);color:var(--brand-c);font-size:.7rem;min-width:18px;height:18px;border-radius:99px;display:inline-grid;place-items:center;padding:0 5px}.tn-badge[hidden]{display:none}
.tn-right .bell{position:relative}.tn-right .bell.dot::after{top:9px;right:10px}
.main-top .set-nav{height:calc(100vh - 170px)}
.main-top .msg-shell{margin:0;height:calc(100vh - 66px)}.main-top .chat{height:calc(100vh - 66px)}.main-top:has(.msg-shell){padding-bottom:0}
@media (max-width:860px){.tn-links{margin:0}.main-top .msg-shell,.main-top .chat{height:calc(100vh - 124px)}.tn-in .logo-word{display:none}}

/* ---- phones & tablets ---- */
@media (max-width:1100px){.d-hero .d-wrap{grid-template-columns:1fr}.d-hero-text{padding-top:0}.d-hero-img{order:-1;height:clamp(200px,40vw,300px)}.searchbar{width:100%}}
@media (max-width:1000px){.tn-in{gap:14px}.tn-links{margin-left:0;gap:16px}.tn-links a{font-size:.92rem}.tn-in .logo-word{display:none}}
@media (max-width:860px){
  .topnav{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--card)}
  .tn-links{position:fixed;left:0;right:0;bottom:0;top:auto;margin:0;height:60px;justify-content:space-around;gap:0;background:var(--card);border-top:1px solid var(--border);z-index:45;padding-bottom:env(safe-area-inset-bottom)}
  .tn-links a{flex:1;justify-content:center;font-size:.72rem;text-align:center;padding:0 2px;white-space:nowrap}.tn-links a::after{bottom:auto;top:-1px;border-radius:0 0 3px 3px}
  .main-top{padding-bottom:96px}.sec-head h2{font-size:1.35rem}.sec-head .link{white-space:nowrap}
}

/* ===== Settings: laid out to the design (full width, tinted left column) ===== */
:root{--su:max(min(.78px,calc(100vw / 2100)),.58px)}
.topnav{background:var(--card)}
@media (min-width:1101px){
  .tn-in{height:calc(86 * var(--su));padding-inline:calc(43 * var(--su))}
  .topnav .logo-svg{height:calc(46 * var(--su))}.tn-in .logo{font-size:calc(31 * var(--su))}
  .tn-links{margin-left:calc(150 * var(--su));gap:calc(46 * var(--su))}.tn-links a{font-size:calc(18 * var(--su))}
}
.main-top.is-settings{padding-bottom:0}
.is-settings .set-grid{min-height:calc(100vh - 86px);padding:0;grid-template-columns:clamp(236px,17.7vw,296px) minmax(0,1fr);align-items:stretch}
.is-settings .set-nav{position:static;height:auto;min-height:0;background:var(--surface);border-right:1px solid var(--border);padding:calc(36 * var(--su)) calc(14 * var(--su)) calc(30 * var(--su)) calc(28 * var(--su));gap:calc(6 * var(--su))}
.is-settings .set-nav h2{font-size:calc(34 * var(--su));font-weight:700;letter-spacing:-.02em;margin:0 0 calc(24 * var(--su)) calc(2px)}
.is-settings .set-nav a,.is-settings .set-out{height:calc(50 * var(--su));font-size:calc(18 * var(--su));gap:calc(18 * var(--su));padding:0 calc(16 * var(--su));border-radius:8px;margin-right:-2px}
.is-settings .set-nav a.on{background:#dcebe3}
.is-settings .set-nav hr{margin:auto calc(14 * var(--su)) calc(12 * var(--su)) 0}
.is-settings .set-main{padding:calc(22 * var(--su)) calc(32 * var(--su)) calc(24 * var(--su)) calc(40 * var(--su))}
.set-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.set-head .back-btn{height:42px;margin-top:6px}
.is-settings .set-main h1{font-size:calc(40 * var(--su));font-weight:800;letter-spacing:-.03em;line-height:1.15}
.is-settings .lead-s{font-size:calc(20 * var(--su));margin:calc(4 * var(--su)) 0 calc(22 * var(--su));color:#3b4a44}
.is-settings .set-cols{gap:calc(20 * var(--su));grid-template-columns:minmax(0,1.92fr) minmax(0,1fr)}.is-settings .set-left,.is-settings .set-right{gap:calc(22 * var(--su))}
.is-settings .set-card{padding:calc(24 * var(--su)) calc(24 * var(--su)) calc(26 * var(--su));border-radius:12px}
.is-settings .set-card h3{font-size:calc(23 * var(--su));font-weight:700;letter-spacing:-.015em}.is-settings .set-card .sub{font-size:calc(16 * var(--su));margin:calc(4 * var(--su)) 0 calc(14 * var(--su))}
.is-settings .pd-top{margin:calc(14 * var(--su)) 0 calc(22 * var(--su));gap:calc(30 * var(--su))}.is-settings .big-av{width:calc(126 * var(--su));height:calc(126 * var(--su));font-size:calc(44 * var(--su));font-weight:400}
.is-settings .pd-name{font-size:calc(24 * var(--su));font-weight:700;margin-bottom:calc(10 * var(--su))}
.is-settings .pd-top .btn.sm{height:calc(46 * var(--su));font-size:calc(17 * var(--su));font-weight:500}
.is-settings .fl{font-size:calc(17 * var(--su));font-weight:500;gap:calc(8 * var(--su))}.is-settings .fl input,.is-settings .fl select{height:calc(47 * var(--su));font-size:calc(17 * var(--su));border-radius:8px}
.is-settings .f2{gap:calc(22 * var(--su)) calc(26 * var(--su))}.is-settings .f3{gap:calc(22 * var(--su))}.is-settings .note{font-size:calc(16 * var(--su));margin-top:calc(14 * var(--su))}
.is-settings .set-actions{margin-top:0}.is-settings .set-actions .btn{height:calc(48 * var(--su));font-size:calc(18 * var(--su));border-radius:8px;padding:0 calc(32 * var(--su))}
.is-settings .theme-card{padding:calc(18 * var(--su)) 6px calc(44 * var(--su));font-size:calc(17 * var(--su))}
.is-settings .sw-row b{font-size:calc(17 * var(--su))}.is-settings .sw-row p{font-size:calc(15 * var(--su))}
.is-settings .set-one{max-width:820px}
@media (max-width:1100px){.is-settings .set-grid{grid-template-columns:1fr}.is-settings .set-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border);padding:12px 14px}.is-settings .set-nav h2,.is-settings .set-nav hr{display:none}.is-settings .set-main{padding:18px 16px 40px}.is-settings .set-cols{grid-template-columns:1fr}}
.is-settings .set-nav{align-self:stretch}
.is-settings .set-main{padding-top:calc(20 * var(--su));padding-bottom:calc(18 * var(--su))}
.is-settings .lead-s{margin:calc(2 * var(--su)) 0 calc(14 * var(--su))}
.is-settings .set-card{padding:calc(20 * var(--su)) calc(24 * var(--su)) calc(20 * var(--su))}
.is-settings .set-card .sub{margin:calc(2 * var(--su)) 0 calc(10 * var(--su))}
.is-settings .pd-top{margin:calc(8 * var(--su)) 0 calc(14 * var(--su))}
.is-settings .fl{gap:calc(6 * var(--su))}.is-settings .f2{gap:calc(14 * var(--su)) calc(26 * var(--su))}.is-settings .f3{gap:calc(14 * var(--su))}
.is-settings .note{margin-top:calc(10 * var(--su))}
.is-settings .set-left,.is-settings .set-right{gap:calc(16 * var(--su))}
.is-settings .sw-row{padding:calc(10 * var(--su)) 0}.is-settings .manage{padding-top:calc(10 * var(--su))}
.is-settings .theme-card{padding-bottom:calc(36 * var(--su))}
.tn-right .bell .ic{width:calc(26 * var(--su));height:calc(26 * var(--su))}
.is-settings .set-left{align-content:start}
.is-settings .set-nav .ic{width:calc(28 * var(--su));height:calc(28 * var(--su))}
.is-settings .set-main{padding-bottom:calc(8 * var(--su))}
.is-settings .set-grid{min-height:calc(100vh - 86px);max-height:none}


/* =====================================================================
   MOBILE & TABLET (<= 860px): a proper phone layout
   ===================================================================== */
.tn-ic{display:none}
@media (max-width:860px){
  body{-webkit-text-size-adjust:100%}
  /* --- header + bottom tab bar --- */
  .tn-in{height:60px;padding-inline:16px;gap:10px}.topnav .logo-svg{height:32px}.tn-in .logo-word{display:none}
  .tn-right{gap:4px}.tn-right .icon-btn{width:44px;height:44px}.me-btn{padding:2px}.avatar{width:38px;height:38px}
  .tn-links{position:fixed;left:0;right:0;bottom:0;top:auto;height:calc(64px + env(safe-area-inset-bottom));padding:0 4px env(safe-area-inset-bottom);margin:0;gap:0;display:grid;grid-template-columns:repeat(5,1fr);align-items:stretch;background:var(--card);border-top:1px solid var(--border);z-index:60;box-shadow:0 -8px 24px -18px rgba(11,61,46,.4)}
  .tn-links a{flex-direction:column;justify-content:center;gap:3px;padding:6px 0 4px;position:relative;color:var(--muted);font-size:.68rem;font-weight:500;text-align:center;min-width:0;border-radius:0}
  .tn-links a .tn-ic{display:grid;place-items:center;height:26px;width:48px;border-radius:99px;transition:background .25s,color .25s}.tn-links a .tn-ic .ic{width:22px;height:22px}
  .tn-links a .tn-lb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;padding:0 2px}
  .tn-links a.on{color:var(--brand-d);font-weight:700}.tn-links a.on .tn-ic{background:var(--soft);color:var(--brand-d)}.tn-links a::after{display:none}.tn-links a:hover{color:var(--brand-d)}
  .tn-badge{position:absolute;top:4px;left:calc(50% + 6px);margin:0;min-width:17px;height:17px;font-size:.62rem;border:2px solid var(--card);box-sizing:content-box}
  .main-top{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
  .wrap{width:calc(100% - 32px)}.backbar{padding-top:14px;margin-bottom:0}.back-btn{height:40px;padding:0 14px 0 10px;font-size:.95rem}
  h2{font-size:1.3rem}
  /* --- home --- */
  .d-hero{padding-top:16px}.d-hero .d-wrap{grid-template-columns:1fr;gap:16px;min-height:0}.d-hero-img{order:-1;height:clamp(190px,52vw,300px);border-radius:18px}
  .d-hero-text{padding-top:0}.d-hero h1{font-size:clamp(1.9rem,8.4vw,2.6rem);white-space:normal;line-height:1.05;margin-top:10px}.eyebrow-s{font-size:.7rem;letter-spacing:.28em}
  .d-hero p{font-size:1rem;margin-top:10px;color:#3d4d46}
  .searchbar{grid-template-columns:1fr;width:100%;margin:18px 0 26px;padding:6px;border-radius:16px;box-shadow:0 10px 30px -18px rgba(11,61,46,.35)}
  .sb-cell{border:0;border-bottom:1px solid var(--border);padding:12px 12px;border-radius:0}.sb-cell:nth-child(3){border-bottom:0}.sb-cell select{font-size:1rem;min-height:28px}
  .searchbar .btn{width:100%;height:50px;margin-top:4px;border-radius:12px}
  .sec-head{flex-wrap:wrap;gap:6px 12px;align-items:baseline}.sec-head h2{font-size:1.35rem}.sec-head .link{margin-left:auto;font-size:.95rem;white-space:nowrap}
  .cards,.cards:has(.hcard){grid-template-columns:1fr;gap:18px}.hcard .card-img.wide{aspect-ratio:16/10}
  /* --- search --- */
  .page-head{align-items:flex-start;gap:12px;margin-bottom:12px}.page-head h1{font-size:1.7rem!important}
  .seg{width:100%}.seg button{flex:1;justify-content:center;height:42px}
  .filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 12px;padding:2px 16px 6px;gap:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.filters::-webkit-scrollbar{display:none}
  .fsel{flex:none;min-width:0;height:44px}.fsel.sort{margin-left:0}.fsel select{padding:0;max-width:150px}.fsel.more{flex:none}
  .chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 14px;padding:0 16px 4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none}
  .results,.results.grid-only{grid-template-columns:1fr}.results .cards{grid-template-columns:1fr}#map{position:static;height:min(52vh,360px);min-height:240px;order:-1;margin-bottom:16px}
  .rc-top h3{font-size:1.02rem}.pop-menu{position:fixed;left:16px;right:16px;top:auto;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;z-index:70}
  /* --- detail --- */
  .detail{grid-template-columns:minmax(0,1fr)!important;gap:20px}.crumbs{margin:6px 0 8px;font-size:.9rem;flex-wrap:wrap;gap:6px}
  .d-head{flex-direction:column;gap:12px}.d-head h1{font-size:1.9rem}.d-head>div:last-child{display:flex;gap:8px}
  .gallery{display:block;height:auto;margin:14px 0;position:relative}.gallery>div{aspect-ratio:4/3;height:auto;border-radius:16px;display:none}.gallery>div:first-child{display:block;grid-row:auto}
  .gallery .show-all{right:10px;bottom:10px;padding:9px 13px;font-size:.9rem}.gallery>div:nth-child(3){display:block;position:absolute;right:10px;bottom:10px;aspect-ratio:auto;height:auto;background:none;box-shadow:none;animation:none}.gallery>div:nth-child(3) img{display:none}
  .facts-row{gap:8px}.fact{padding:9px 14px;font-size:.92rem}.amen{gap:12px 18px}
  .side-card{position:static;padding:20px;border-radius:18px}.big-price{font-size:2rem}.side-card .btn{height:50px}.agent .avatar{width:84px;height:84px}
  /* --- lists --- */
  .list-row{flex-wrap:wrap;gap:12px}.list-row img{width:84px;height:68px}.list-row .grow{flex:1 1 160px}
  .panel{padding:16px}.tbl-wrap{margin:0 -4px}
  /* --- settings --- */
  .is-settings .set-grid{display:block}.is-settings .set-nav{position:sticky;top:60px;z-index:20;display:flex;flex-direction:row;gap:6px;overflow-x:auto;padding:10px 16px;margin:0;border:0;border-bottom:1px solid var(--border);background:var(--card);scrollbar-width:none}.is-settings .set-nav::-webkit-scrollbar{display:none}
  .is-settings .set-nav h2,.is-settings .set-nav hr{display:none}.is-settings .set-nav a,.is-settings .set-out{flex:none;height:42px;font-size:.95rem;padding:0 14px;gap:8px;border-radius:99px;white-space:nowrap;width:auto;margin:0}.is-settings .set-nav .ic{width:20px;height:20px}
  .is-settings .set-nav a.on{background:var(--soft);color:var(--brand-d)}
  .is-settings .set-main{padding:16px 16px 28px}.set-head{flex-direction:column-reverse;align-items:flex-start;gap:12px}.set-head .back-btn{margin:0}
  .is-settings .set-main h1{font-size:1.75rem}.is-settings .lead-s{font-size:1rem;margin:2px 0 16px}
  .is-settings .set-cols,.set-cols{grid-template-columns:1fr;gap:16px}.is-settings .set-left,.is-settings .set-right{gap:16px}
  .is-settings .set-card{padding:18px 16px;border-radius:14px}.is-settings .set-card h3{font-size:1.2rem}.is-settings .set-card .sub{font-size:.95rem}
  .is-settings .pd-top{gap:16px;margin:10px 0 18px}.is-settings .big-av{width:84px;height:84px;font-size:2rem}.is-settings .pd-name{font-size:1.2rem}
  .is-settings .f2,.is-settings .f3,.f2,.f3{grid-template-columns:1fr;gap:14px}.is-settings .fl{font-size:.98rem;gap:6px}.is-settings .fl input,.is-settings .fl select{height:48px;font-size:1rem}
  .is-settings .theme-card{padding:16px 4px 40px;font-size:.95rem}.is-settings .theme-card .radio{bottom:14px}
  .is-settings .set-actions .btn{height:48px;font-size:1rem;flex:1}.is-settings .set-actions{gap:10px}
  .is-settings .sw-row b{font-size:1rem}.is-settings .sw-row p{font-size:.9rem}
  .vbadge{font-size:.75rem;padding:3px 8px}.fl input:disabled{padding-right:96px}
  /* --- messages --- */
  .main-top .msg-shell{height:calc(100dvh - 60px - 64px - env(safe-area-inset-bottom));margin:0;grid-template-columns:1fr}
  .main-top .chat{height:calc(100dvh - 60px - 64px - env(safe-area-inset-bottom))}.main-top:has(.msg-shell){padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .msg-list{padding:16px 12px;border:0}.msg-list h1{font-size:1.7rem}.conv{padding:12px 8px}.conv .avatar{width:52px;height:52px}
  .chat-head{padding:10px 12px;gap:10px}.chat-head .avatar{width:44px;height:44px}.chat-head .grow b{font-size:1.05rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.chat-head .acts{gap:6px}.chat-head .acts .icon-btn:not(:last-child){display:none}.chat-head .icon-btn{width:40px;height:40px}
  .listing-strip{margin:0 12px;padding:8px;gap:10px}.listing-strip img{width:60px;height:48px}.listing-strip b{font-size:.95rem!important;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.listing-strip div{min-width:0}.listing-strip .btn{padding:6px 10px}
  .thread{padding:12px}.bubble{max-width:86%}.composer{padding:8px 10px 10px;gap:6px}.composer .icon-btn{width:38px;height:38px}.composer input{padding:12px 14px;min-width:0}.send{width:46px;height:46px}.emoji{grid-template-columns:repeat(8,1fr);margin:0 10px}
  .bubble.card-b{grid-template-columns:96px 1fr;gap:12px}.card-b img{width:96px;height:96px}
  /* --- admin --- */
  .shell.admin .rail{padding:4px;gap:0;overflow-x:auto}.shell.admin .rail nav{overflow-x:auto;flex-direction:row;gap:2px}.shell.admin .rail a.item{flex:none;min-width:68px;padding:6px 6px;font-size:.66rem;text-align:center}.shell.admin .rail a.item span{white-space:normal;line-height:1.1}
  .admin-top{padding:12px 0;gap:8px}.admin-top .input{max-width:none;height:42px}.admin-top .me>span:last-child{display:none}.stats{grid-template-columns:1fr 1fr;gap:12px}.stat{padding:14px;gap:12px}.stat .ico{width:48px;height:48px}.stat b{font-size:1.5rem}
  .admin-grid{grid-template-columns:1fr}
  /* --- modals / toast / tour --- */
  dialog.modal{padding:20px 16px;border-radius:18px}.slots span{padding:10px 12px}#toast{bottom:calc(80px + env(safe-area-inset-bottom));width:calc(100% - 32px);text-align:center}
  .tour-card{max-width:calc(100vw - 24px)}
}
@media (max-width:420px){.tn-links a{font-size:.64rem}.cards{gap:16px}.d-hero h1{font-size:2rem}}

/* ===== mobile login / sign up ===== */
.m-auth{min-height:100dvh;background:var(--card);display:flex;flex-direction:column}
.m-hero{position:relative;height:clamp(190px,34vh,280px);background-size:cover;background-position:center 40%;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:18px 20px 22px;flex:none}
.m-logo{display:inline-flex;align-items:center;gap:10px;font-size:1.25rem;color:#fff}.m-logo .logo-svg{height:34px}.m-logo .lg-a{fill:#34d399}.m-logo .lg-b{fill:#fff}.m-logo b{font-weight:700}.m-logo span{font-weight:400}
.m-hero p{font-size:1.6rem;font-weight:600;letter-spacing:-.02em;line-height:1.1;max-width:14ch;margin:0}.m-hero p::after{content:"";display:block;width:48px;height:3px;border-radius:3px;background:#34d399;margin-top:12px}
.m-card{flex:1;margin-top:-20px;position:relative;background:var(--card);border-radius:24px 24px 0 0;padding:26px 20px calc(30px + env(safe-area-inset-bottom));animation:pageIn .5s both}
.m-card h1{font-size:1.9rem;font-weight:800;letter-spacing:-.035em}.m-sub{color:#4a5a54;font-size:1.05rem;margin:4px 0 18px}
.m-role{margin-bottom:14px;height:50px}.m-role button{font-size:1rem}
.mf{margin-bottom:14px}.mf label{display:block;font-weight:600;color:var(--head);margin-bottom:6px;font-size:.98rem}
.mi{display:flex;align-items:center;gap:10px;height:52px;border:1px solid #d3dbd6;border-radius:12px;padding:0 14px;background:var(--card);color:#5f6b66}.mi:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(19,146,111,.15)}
.mi input{flex:1;min-width:0;border:0;padding:0;height:100%;font-size:1rem;outline:0;background:none;color:var(--text)}.mi .eye{border:0;background:none;color:#5f6b66;display:grid;place-items:center;width:40px;height:40px;margin-right:-8px}
.m-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 14px;flex-wrap:wrap}.m-chk{display:flex;align-items:center;gap:10px;font-size:.98rem;color:var(--text)}.m-chk input{appearance:none;width:22px;height:22px;border:1.5px solid #8e9a95;border-radius:6px;margin:0;display:grid;place-items:center;flex:none;background:var(--card)}
.m-chk input:checked{background:var(--brand);border-color:var(--brand)}.m-chk input:checked::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}.m-chk.terms{align-items:flex-start;margin-bottom:6px}.m-chk.terms span{line-height:1.4}
.m-hint{min-height:1.4em;margin:2px 0 12px;font-size:.92rem}
.m-btn{width:100%;height:54px;border-radius:12px;font-size:1.05rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;border:0;transition:transform .15s,filter .2s}.m-btn:active{transform:scale(.98)}
.m-btn.primary{background:linear-gradient(180deg,#1aa981,#139a76);color:#fff;box-shadow:0 10px 22px -12px rgba(15,140,106,.7)}.m-btn.ghost{background:var(--card);border:1px solid #cfd8d3;color:var(--head);font-weight:500}.m-btn:disabled{opacity:.6}
.m-or{display:flex;align-items:center;gap:14px;color:#5f6b66;margin:16px 0}.m-or::before,.m-or::after{content:"";flex:1;border-top:1px solid #cfd8d3}
.m-foot{text-align:center;color:#4a5a54;margin:22px 0 0;font-size:.98rem}
@media (max-height:640px){.m-hero{height:150px}.m-hero p{font-size:1.25rem}}
@media (max-width:860px){.chat-head .grow{min-width:0;line-height:1.25}.chat-head .grow br{display:none}.chat-head .grow span{display:block;font-size:.88rem}}
@media (min-width:861px) and (max-width:1100px){.tn-links{margin-left:8px;gap:18px}.tn-links a{font-size:.9rem}.set-nav{min-height:0}}
@media (min-width:600px) and (max-width:860px){.cards,.cards:has(.hcard){grid-template-columns:repeat(2,minmax(0,1fr))}.results .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.searchbar{grid-template-columns:1fr 1fr}.searchbar .btn{grid-column:1/-1}.sb-cell:nth-child(2){border-bottom:0}}

/* =====================================================================
   New pages: agent, booking, apply, documents, payments, applications,
   my rental, call, saved, help, admin  (+ nav centering, messages card)
   ===================================================================== */
@media (min-width:861px){
  .tn-in{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px}
  .tn-links{margin:0;justify-self:center;gap:clamp(16px,2.4vw,40px)}.tn-right{justify-self:end}
}
@media (max-width:860px){.tn-links{grid-template-columns:repeat(6,1fr)}.tn-links a{font-size:.62rem}.tn-links a .tn-ic{width:40px}}
.pg{padding-bottom:40px}.pg-h1{font-size:clamp(2rem,3.4vw,3.4rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;margin-top:6px}.pg-sub{color:#3d4d46;font-size:clamp(1rem,1.3vw,1.3rem);margin:6px 0 20px}
.pg-box{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:clamp(16px,1.6vw,26px);animation:cardIn .5s both}.pg-box h2{font-size:clamp(1.2rem,1.6vw,1.6rem);font-weight:800;letter-spacing:-.02em}.pg-box .sub,.sub{color:#4a5a54;margin:4px 0 14px}
.pg-crumbs{display:flex;gap:10px;align-items:center;margin:14px 0 14px;color:var(--muted)}.pg-crumbs b{color:var(--head);font-weight:600}
.back-link{display:inline-flex;gap:8px;align-items:center;color:var(--brand-d);font-weight:500;margin:20px 0 6px}
.btn.solid{background:#0b5d46;color:#fff;border-color:transparent}.btn.solid:hover{filter:brightness(1.12);background:#0b5d46}.btn.block{width:100%}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.loc{display:flex;gap:8px;align-items:center;color:#4a5a54}.facts.hr{display:flex;gap:14px;align-items:center}.facts i.sep{width:1px;height:20px;background:var(--border)}
.kvs{display:grid}.kvs>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;color:#4a5a54}.kvs b{color:var(--head);font-weight:600}.kvs.tot>div{background:#e9f1ec;border-radius:10px;padding:12px 14px;color:var(--head);font-weight:700;margin-top:6px}:root[data-theme=dark] .kvs.tot>div{background:var(--soft)}
.pill{display:inline-flex;align-items:center;gap:8px}.pill .dot{width:9px;height:9px;border-radius:50%;background:currentColor}
.avail-dot{position:absolute;left:12px;top:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;background:rgba(228,243,236,.95);color:#12684f;font-size:.88rem;font-weight:500;padding:6px 14px;border-radius:99px}.avail-dot i{width:9px;height:9px;border-radius:50%;background:#12896a}.avail-dot.off{background:rgba(233,236,234,.95);color:#4a5a54}.avail-dot.off i{background:#6b7772}
.pill-tabs{display:flex;gap:10px;flex-wrap:wrap}.pill-tabs button{border:0;background:#e5efe9;color:var(--head);padding:11px 24px;border-radius:99px;font-weight:500;font-size:1rem;transition:background .2s,color .2s,transform .2s}.pill-tabs button:hover{transform:translateY(-1px)}.pill-tabs button.on{background:#0b5d46;color:#fff}
.rn-tabs{display:flex;gap:6px;margin:16px 0 4px;overflow-x:auto;scrollbar-width:none}.rn-tabs::-webkit-scrollbar{display:none}.rn-tabs a{flex:none;padding:9px 18px;border-radius:99px;font-weight:500;color:var(--muted);transition:background .2s,color .2s}.rn-tabs a:hover{background:var(--soft);color:var(--head)}.rn-tabs a.on{background:var(--soft);color:var(--brand-d);font-weight:700}
.round-btn{width:50px;height:50px;border-radius:50%;background:#e5efe9;color:var(--head);display:grid;place-items:center;flex:none;transition:transform .2s,background .2s}.round-btn:hover{transform:scale(1.08);background:#d6e8de}
/* steppers */
.pg-steps{list-style:none;margin:6px 0 20px;padding:0;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;position:relative}.pg-steps li{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative;z-index:1}.pg-steps li span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dcebe3;color:#12684f;font-weight:600}.pg-steps li b{font-weight:400;color:#4a5a54}.pg-steps li.on span,.pg-steps li.done span{background:#0b5d46;color:#fff}.pg-steps li.on b{color:var(--head);font-weight:600}
.pg-steps.line-top::before{content:"";position:absolute;left:12%;right:12%;top:18px;height:3px;background:#dcebe3;z-index:0}
.pg-steps.line-h{align-items:center;justify-content:flex-start;gap:14px;margin-bottom:22px}.pg-steps.line-h li{flex-direction:row;flex:none;gap:12px}.pg-steps.line-h li b{font-size:1.05rem}.pg-steps .ln{flex:1;border:0;border-top:2px solid #dcebe3;margin:0;min-width:20px}
/* property side card */
.prop-side h3{font-size:1.4rem;font-weight:700;margin:12px 0 2px;color:var(--head)}.prop-side h4{font-size:1.2rem;margin:14px 0 6px;color:var(--head)}.prop-side hr,.pg-box hr{border:0;border-top:1px solid var(--border);margin:14px 0}
.ps-img{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16/9}.ps-img img{width:100%;height:100%;object-fit:cover;display:block}.ps-img .heart{top:10px;right:10px}.counter{position:absolute;right:12px;top:12px;background:rgba(15,25,20,.6);color:#fff;font-size:.85rem;padding:5px 12px;border-radius:99px}
.ps-agent{display:flex;gap:14px;align-items:center;margin-top:8px}.ps-agent .avatar{width:64px;height:64px}.ps-agent>div{flex:1;min-width:0}.ps-agent b{display:block;color:var(--head)}.ps-agent small{color:var(--muted)}
/* agent page */
.ag-top{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:20px;align-items:start}.ag-card{display:grid;grid-template-columns:clamp(180px,19vw,300px) 1fr;gap:clamp(18px,2vw,32px);padding:clamp(16px,1.4vw,22px)}
.ag-photo{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:14px;background:var(--soft)}.ag-info h1{font-size:clamp(2rem,3.2vw,3.2rem);font-weight:800;letter-spacing:-.04em}.ag-role{font-size:1.25rem;color:#4a5a54;margin:2px 0 10px}
.ag-loc{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:1.15rem;color:#2b3b35}.idv{display:inline-flex;gap:6px;align-items:center;background:#e1f2ea;color:#12684f;padding:6px 14px;border-radius:99px;font-size:.95rem;font-weight:500}
.ag-btns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.ag-btns .btn{height:54px;font-size:1.1rem;border-radius:8px}.ag-bio{color:#4a5a54;font-size:1.1rem;line-height:1.5;margin:0}
.ag-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ag-facts>div{display:flex;gap:14px;align-items:center}.ag-facts small{display:block;color:#5a6b64}.ag-facts span{font-size:1.1rem;color:var(--head)}
.slots h2{font-size:1.5rem}.day-chips{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px}.day-chips button{border:0;background:#e5efe9;border-radius:10px;padding:10px 4px;display:grid;font-weight:500;color:var(--head);line-height:1.2;transition:background .2s}.day-chips button span{font-size:.9rem}.day-chips button.on{background:#0b5d46;color:#fff}
.slot-list{display:grid;gap:10px;margin-bottom:14px}.slot-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border:1px solid var(--border);border-radius:10px;background:var(--card);font-size:1.02rem;color:var(--head);transition:border-color .2s,transform .2s}.slot-row span{flex:1;text-align:left}.slot-row:hover{border-color:var(--brand);transform:translateX(3px)}
.pg-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}.pg-card .card-body{gap:6px}.pg-card .facts.hr{border-top:1px solid var(--border);padding-top:10px;margin-top:4px}
/* booking */
.bk-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,28vw,420px);gap:18px;align-items:start}.cal-box{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0}.cal,.times{padding:clamp(16px,1.6vw,26px)}.times{border-left:1px solid var(--border)}
.cal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.cal-nav{display:flex;align-items:center;gap:16px}.cal-nav button{border:0;background:none;color:var(--head);padding:6px;border-radius:8px}.cal-nav button:hover{background:var(--soft)}.cal-nav button:disabled{opacity:.3}.cal-nav b{font-weight:500;font-size:1.1rem}
.dow{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;color:var(--head);margin-bottom:8px}.grid-days{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border);border-radius:8px;overflow:hidden}.day{aspect-ratio:1;border:0;background:var(--card);border-right:1px solid var(--border);border-bottom:1px solid var(--border);font-size:1rem;color:var(--head);transition:background .15s}.day:hover:not(:disabled):not(.sel){background:var(--soft)}.day:disabled{color:#b3bcb7;background:var(--surface)}.day.out{color:#c6cdc9}.day.sel{background:#0b5d46;color:#fff;font-weight:700}
.legend{display:flex;gap:18px;margin-top:18px;color:#4a5a54;font-size:.92rem}.legend span{display:flex;gap:8px;align-items:center}.legend i{width:20px;height:20px;border-radius:50%}.legend .a{background:#0b5d46}.legend .u{background:#dfe5e2}.legend .s{background:#e1f2ea;border:2px solid #9ec9b5}
.tz{display:flex;gap:8px;align-items:center;color:var(--head);font-size:.95rem}.times .sub b{font-weight:500;color:var(--head)}
.time,.tt-opt{display:flex;gap:16px;align-items:center;width:100%;text-align:left;border:1px solid var(--border);background:var(--card);border-radius:10px;padding:14px 18px;margin-bottom:10px;color:var(--head);transition:border-color .2s,background .2s}.time b{font-size:1.15rem;display:block;font-weight:600}.time small,.tt-opt small{color:#5a6b64;font-weight:400}.time.on,.tt-opt.on{background:#e1f2ea;border-color:#9ec9b5}
.rd{width:24px;height:24px;border-radius:50%;border:1.5px solid #93a29b;flex:none;display:grid;place-items:center;background:var(--card)}.on>.rd{border-color:#0b5d46}.on>.rd::after{content:"";width:12px;height:12px;border-radius:50%;background:#0b5d46}
.tour-types{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tt-opt{align-items:flex-start;padding:14px}.tt-opt b{display:flex;gap:8px;align-items:center;font-weight:600}.tt-opt small{display:block;margin-top:4px}.tt{font-size:1.2rem;margin:4px 0 12px}
.bk-bar{display:flex;align-items:center;gap:18px;background:#e5efe9;border-radius:12px;padding:12px 16px;margin-top:20px}.bk-bar>div{flex:1}.bk-bar small{display:block;color:#4a5a54}.bk-bar b{font-size:1.2rem;color:var(--head);font-weight:600}.cal-ic{width:60px;height:60px;border-radius:50%;background:#d3e6dc;display:grid;place-items:center;color:var(--head)}.bk-bar .btn{height:54px;padding:0 28px;border-radius:8px}
.form-box h2{margin-bottom:0}.form-box .f2{margin-top:6px}
/* apply */
.ap-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,30vw,440px);gap:22px;align-items:start}.ap-form .fl input,.ap-form .fl select,.ap-form .fl textarea,.form-box .fl input,.form-box .fl select,.form-box .fl textarea{height:48px;border-radius:8px;font-weight:400}.fl textarea{height:auto!important;padding:12px 14px}
.opt{color:#6b7772;font-weight:400}.phone{display:grid;grid-template-columns:auto 1fr}.phone .cc{display:flex;align-items:center;gap:8px;height:48px;padding:0 12px;border:1px solid var(--border);border-right:0;border-radius:8px 0 0 8px;background:var(--card);font-weight:400}.phone input{border-radius:0 8px 8px 0!important}.flag{width:26px;height:18px;background:linear-gradient(90deg,#0a8a4c 33%,#fff 33% 66%,#0a8a4c 66%);border-radius:2px}
.dt{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:8px;padding:0 12px;background:var(--card)}.dt input{border:0!important;padding:0!important;height:46px!important}.cnt{text-align:right;color:#6b7772;font-size:.9rem;margin-top:4px}
.notice-b{display:flex;gap:14px;align-items:flex-start;background:#e9f1ec;border-radius:10px;padding:14px 18px;margin:16px 0}.notice-b b{display:block;color:var(--head)}.notice-b p{margin:2px 0 0;color:#4a5a54;font-size:.92rem}
.ap-actions{display:grid;grid-template-columns:auto 1fr;gap:14px}.ap-actions .btn{height:52px;border-radius:8px;font-size:1.02rem}.ap-actions .btn:not(.solid):not(#sd){display:none}.ap-actions #bk2{display:inline-flex!important;grid-column:1}
.up-row{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:10px;margin-top:12px}.up-row>div{flex:1}.up-row b{display:block;color:var(--head)}.up-row small{color:#5a6b64}.up-ic{width:46px;height:46px;border-radius:10px;border:1px solid var(--border);display:grid;place-items:center;color:#d6492f;flex:none;background:var(--card)}.rev{margin:12px 0}
/* documents */
.doc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.prop-pick{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 18px;min-width:290px}.prop-pick img{width:62px;height:62px;border-radius:8px;object-fit:cover}.prop-pick small,.prop-pick span{display:block;color:#5a6b64}.prop-pick b{display:block;color:var(--head);font-size:1.1rem}.prop-pick.sm{padding:8px 12px;margin-top:4px}
.doc-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:14px 0 18px;flex-wrap:wrap}.doc-tabs{display:flex;gap:6px}.doc-tabs button{border:0;background:none;padding:12px 22px;border-radius:10px;font-size:1.05rem;color:var(--head);border-bottom:3px solid transparent}.doc-tabs button.on{background:#e5efe9;border-bottom-color:#0b5d46;font-weight:600}.doc-bar .btn{height:54px;padding:0 26px;border-radius:10px;font-size:1.05rem}
.doc-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:18px;align-items:start}.dtab{width:100%;border-collapse:separate;border-spacing:0}.dtab th{background:var(--surface);text-align:left;padding:14px 16px;font-weight:500;color:var(--head)}.dtab td{padding:14px 16px;border-top:1px solid var(--border)}.dtab tr[data-sel]{cursor:pointer}.dtab tr.sel td,.dtab tr[data-sel]:hover td{background:#e9f1ec}.fname{display:flex;gap:14px;align-items:center;font-weight:500;color:var(--head)}.acts{display:flex;gap:14px}.acts button{border:0;background:none;color:var(--head);padding:4px}.acts button:hover{color:var(--brand)}
.prev{background:var(--surface);border-radius:10px;padding:18px;display:grid;place-items:center;min-height:300px;margin:12px 0}.prev img,.prev object{width:100%;max-height:340px;border-radius:6px;object-fit:contain}.prev object{height:340px}.paper{background:#fff;width:70%;aspect-ratio:3/4;box-shadow:0 8px 24px -10px rgba(0,0,0,.25);padding:22px;display:grid;align-content:start;gap:10px}.paper span{height:8px;background:#e4e8e6;border-radius:4px}.prev-meta{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:14px}.prev-meta b{display:block;color:var(--head);font-size:1.1rem}.prev-meta small{color:#5a6b64}.dstat,.pill.warn{}.pg-box .btn.block{height:52px;margin-top:10px;border-radius:8px}.empty-d{text-align:center;padding:40px 16px;color:var(--muted);display:grid;gap:10px;justify-items:center}.cmp th,.cmp td{white-space:nowrap}
/* payments / rental / applications */
.pay-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:18px;align-items:start}.pp-head{display:flex;gap:22px;align-items:center}.pp-head img{width:clamp(130px,19vw,310px);aspect-ratio:1.55;object-fit:cover;border-radius:10px}.pp-head h2{font-size:1.7rem}.pp-head .facts{display:flex;gap:26px;margin-top:10px;color:#2b3b35}.pp-head .facts span{display:flex;gap:10px;align-items:center}
.stat3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.stat-b{display:flex;gap:16px;align-items:center;background:#e9f1ec;border:1px solid var(--border);border-radius:12px;padding:18px 20px}.stat-b small{color:#4a5a54;font-size:1rem}.stat-b b{display:block;font-size:clamp(1.5rem,2.2vw,2.2rem);font-weight:800;letter-spacing:-.03em;color:var(--head);line-height:1.15}.stat-b p{margin:2px 0 0;color:#4a5a54;font-size:.95rem}
.si{width:clamp(50px,4.4vw,64px);height:clamp(50px,4.4vw,64px);border-radius:50%;background:#d6e8de;display:grid;place-items:center;color:var(--head);flex:none}
.pay-side .fl{margin-top:10px}.due{border:1px solid var(--border);border-radius:10px;padding:16px}.due b{font-size:2rem;font-weight:800;color:var(--head)}.due p{margin:6px 0 0;color:#4a5a54;font-weight:400}.pay-side .note{margin:8px 0}.pay-side h3{font-size:1.15rem;margin-bottom:6px}.pstat{list-style:none;margin:0;padding:0;display:grid;gap:16px}.pstat li{display:flex;gap:14px}.pstat li>span{width:48px;height:48px;border-radius:50%;background:#e1f2ea;display:grid;place-items:center;flex:none;color:var(--head)}.pstat b{color:var(--head)}.pstat p{margin:0;color:#4a5a54;font-size:.92rem}
.ap-list-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:22px;align-items:start}.ap-list-grid .pill-tabs{margin:6px 0 18px}.app-card{display:grid;grid-template-columns:clamp(110px,15vw,260px) 1fr auto auto;gap:clamp(12px,1.5vw,22px);align-items:center;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.app-card:hover{transform:translateY(-2px)}.app-card.on{border:2px solid #0b5d46;background:#e9f1ec}.app-card img{width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:8px}.app-card h3{font-size:1.5rem;font-weight:600;color:var(--head)}.app-card .facts{display:flex;gap:14px;align-items:center;color:#4a5a54;margin:8px 0}.app-card .facts span{display:flex;gap:8px;align-items:center}.pr{font-size:1.3rem;color:var(--head)}.ac-st{display:grid;gap:10px;justify-items:start}.ac-st small{color:#4a5a54}
.st-chip{display:inline-flex;gap:8px;align-items:center;padding:9px 20px;border-radius:10px;font-weight:500;background:#e1f2ea;color:#12684f}.st-chip.warn{background:#fdf0d5;color:#8a5a00}.st-chip.info{background:#e5eefe;color:#1f4fb4}.st-chip.bad{background:#fde6ea;color:#a3182f}
.app-side .as-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.app-side h2{font-size:1.7rem}.as-img{width:100%;aspect-ratio:2.6;object-fit:cover;border-radius:10px;margin:12px 0}.app-side .facts{display:flex;gap:20px;margin-bottom:6px;color:#2b3b35}.app-side .facts span{display:flex;gap:8px;align-items:center}.app-side h3{font-size:1.3rem;margin:16px 0 8px}.as-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.as-btns .btn{height:54px;border-radius:8px}
.tl{list-style:none;margin:0;padding:0}.tl li{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:start;padding-bottom:16px;position:relative}.tl li::before{content:"";position:absolute;left:14px;top:28px;bottom:-2px;width:2px;background:#bcd4c8}.tl li:last-child::before{display:none}.tl li>i{width:28px;height:28px;border-radius:50%;border:2px solid #b7c4be;background:var(--card);display:grid;place-items:center;color:#fff}.tl li.ok>i{background:#0b5d46;border-color:#0b5d46}.tl li.cur>i{border-color:#0b5d46}.tl li.cur>i::after{content:"";width:12px;height:12px;border-radius:50%;background:#0b5d46}.tl b{color:var(--head)}.tl p{margin:0;color:#4a5a54;font-size:.92rem}.tl li>span{text-align:right;color:#4a5a54;font-size:.9rem}.tl em{color:#12684f;font-style:normal;font-weight:500}.tl.tlchk li{padding-bottom:14px}
.rent-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px}.rent-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}.rent-hero>img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:10px}.active-t{display:inline-block;background:#d7efe2;color:#12684f;padding:6px 16px;border-radius:99px;margin-bottom:10px}.rent-hero h2{font-size:clamp(1.7rem,2.6vw,2.6rem)}.rh-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rh-2>div{display:flex;gap:12px;align-items:center}.rh-2 small,.rh-3 small{color:#5a6b64;display:block}.rh-2 b,.rh-3 b{color:var(--head);font-weight:600}.rh-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.empty-r{grid-template-columns:1fr;place-items:center;min-height:300px}.er-in{display:grid;gap:12px;justify-items:center;text-align:center;max-width:460px}.er-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.er-btns .btn{height:48px;padding:0 24px}
.quick h2{margin-bottom:12px}.qa{display:flex;gap:14px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:12px;background:var(--card);transition:transform .2s,border-color .2s}.qa:hover{transform:translateX(3px);border-color:var(--brand)}.qa>span{width:54px;height:54px;border-radius:50%;background:#e1f2ea;display:grid;place-items:center;flex:none;color:var(--head)}.qa>div{flex:1}.qa b{display:block;color:var(--head);font-size:1.1rem}.qa small{color:#4a5a54}
.rent-3{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:18px;margin-top:18px}.sec-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.act{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-top:1px solid var(--border)}.act .si{width:46px;height:46px}.act b{color:var(--head)}.act p{margin:0;color:#4a5a54;font-size:.92rem}.act small{color:#4a5a54}.ya{display:flex;gap:16px;align-items:center;margin:12px 0}.ya img{width:84px;height:84px;border-radius:50%;object-fit:cover}.ya b{display:block;color:var(--head);font-size:1.3rem}.ya p{margin:0;color:#4a5a54}
/* call */
.call-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:20px;margin-top:6px}.call{background:#0b4a39;color:#fff;border-radius:14px;min-height:min(640px,72vh);display:grid;place-content:center;justify-items:center;gap:10px;padding:34px;text-align:center}.call-av{width:clamp(200px,20vw,330px);aspect-ratio:1;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.6)}.call h1{font-size:clamp(1.8rem,2.6vw,2.6rem);color:#fff;font-weight:600;margin-top:10px}.call .cs{font-size:1.3rem;color:#cfe8dc;margin:0}.call .ct{color:#a9d9c6;max-width:380px;margin:0}
.call-btns{display:flex;gap:clamp(14px,2.4vw,40px);margin-top:26px}.call-btns>div{display:grid;gap:10px;justify-items:center}.cb{width:84px;height:84px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;display:grid;place-items:center;transition:transform .2s}.cb.on{background:#fff;color:#0b4a39}.cb.end{background:#f03a3a;transform:none}.cb.end svg{transform:rotate(135deg)}.cb:disabled{opacity:.75}.call-btns span{color:#fff;font-size:1.05rem}
/* saved */
.sv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:6px}.sv-tools{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.sv-tools .btn{height:52px;border-radius:8px;padding:0 20px;font-size:1.02rem;border-color:#0b5d46}.sv-tools .pill-tabs button{padding:12px 24px}
.sv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:14px}.sv-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden;cursor:pointer;animation:cardIn .5s both;transition:box-shadow .3s,transform .3s}.sv-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(11,61,46,.4)}
.sv-img{position:relative;min-height:230px}.sv-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}.sv-card:hover .sv-img img{transform:scale(1.05)}.sv-img .heart{position:absolute;right:-26px;top:50%;margin-top:-26px;width:52px;height:52px;z-index:3;color:#0b5d46;box-shadow:0 4px 14px rgba(0,0,0,.18)}.sv-img .heart svg{fill:currentColor}
.sv-body{padding:clamp(14px,1.3vw,20px) clamp(16px,1.4vw,22px);position:relative;display:grid;gap:3px;align-content:start}.sv-body h3{font-size:1.25rem;font-weight:600;padding-right:34px}.sv-price{font-size:1.4rem;color:var(--head);font-weight:600;margin:4px 0}.sv-body hr{border:0;border-top:1px solid var(--border);margin:8px 0}.sv-body .facts{display:flex;gap:16px;color:#2b3b35}.sv-body .facts span{display:flex;gap:8px;align-items:center}.kvs.sm>div{padding:3px 0;font-size:.95rem}.tot2 b{font-size:1.1rem}.vh{display:inline-flex;gap:8px;align-items:center;font-size:1.05rem;margin-top:8px;font-weight:500}
.cmp-chk{position:absolute;right:14px;top:14px}.cmp-chk input{appearance:none;width:26px;height:26px;border:2px solid #0b5d46;border-radius:6px;background:var(--card);cursor:pointer;display:grid;place-items:center}.cmp-chk input:checked{background:#0b5d46}.cmp-chk input:checked::after{content:"";width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:translateY(-1px) rotate(45deg)}
/* help */
.help-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#0b4a39;border-radius:18px;overflow:hidden;min-height:clamp(240px,20vw,310px);margin-top:12px}.hh-text{padding:clamp(22px,3vw,50px);color:#fff}.help-hero h1{color:#fff;font-size:clamp(2.2rem,4.2vw,4rem);font-weight:800;letter-spacing:-.04em;margin:12px 0 6px}.help-hero p{font-size:clamp(1rem,1.4vw,1.3rem);color:#e3f2ea;margin:0 0 20px;max-width:30ch}.eyebrow-s.light{color:#cfe8dc}
.hh-search{display:flex;align-items:center;gap:14px;background:#fff;border-radius:10px;height:56px;padding:0 18px;color:var(--head)}.hh-search input{flex:1;border:0;padding:0;font-size:1.05rem;outline:0;background:none;height:100%;color:#1d2b26}.hh-img{background:url(../img/ob-3.webp) center/cover}
.help-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.hc{display:flex;gap:18px;align-items:center;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;transition:border-color .2s,transform .2s}.hc:hover,.hc.on{border-color:#0b5d46;transform:translateY(-2px)}.hc b{display:block;font-size:1.25rem;color:var(--head)}.hc small{color:#4a5a54;font-size:.98rem}.hc>div{flex:1}
.help-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:18px;align-items:start}.fq{border-top:1px solid var(--border);transition:background .2s}.fq:first-child{border:0}.fq button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:none;text-align:left;padding:18px 16px;font-size:1.12rem;color:var(--head);font-weight:500}.fq button svg{transition:transform .2s ease}.fq.on{background:#e9f1ec;border-radius:10px;border:0}.fq.on button svg{transform:rotate(180deg)}.fa{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease}.fq.on .fa{grid-template-rows:1fr}.fa p{overflow:hidden;margin:0;padding:0 16px;transition:padding .2s ease,opacity .2s ease;opacity:0;color:#4a5a54;font-size:1.05rem;line-height:1.5}.fq.on .fa p{padding-bottom:18px;opacity:1}
.vt{display:inline-flex;gap:8px;align-items:center;border:0;background:none;margin:14px 0 6px;font-weight:600}.tk{border:1px solid var(--border);border-radius:12px;padding:16px}.tk-top{display:flex;justify-content:space-between;align-items:center}.tk b{display:block;font-size:1.2rem;color:var(--head);margin:6px 0}.tk p{color:#4a5a54;margin:0 0 10px}.pill.info{background:#e5eefe;color:#1f4fb4}
/* admin */
.adm{min-height:100vh;background:var(--bg)}.adm-top{position:sticky;top:0;z-index:40;height:66px;background:var(--card);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:16px;padding:0 24px}.adm-top .logo{font-size:1.4rem}.adm-top .logo-svg{height:34px}.vr{width:1px;height:28px;background:var(--border)}.adm-title{font-size:1.2rem;color:var(--head)}.adm-search{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:10px;height:46px;padding:0 14px;width:min(380px,32vw);color:var(--muted)}.adm-search input{flex:1;border:0;background:none;padding:0;outline:0;height:100%;min-width:0}
.adm-body{display:grid;grid-template-columns:clamp(210px,14.8vw,228px) minmax(0,1fr);min-height:calc(100vh - 66px)}.adm-side{position:sticky;top:66px;align-self:start;height:calc(100vh - 66px);display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);padding:22px 12px 16px}.adm-side nav{display:grid;gap:6px;align-content:start;flex:1}
.adm-side a.item{display:flex;align-items:center;gap:16px;height:50px;padding:0 18px;border-radius:8px;font-size:1.02rem;color:var(--text);transition:background .2s,transform .2s;position:relative}.adm-side a.item:hover{background:var(--soft);transform:translateX(3px)}.adm-side a.item.on{background:#dcebe3;font-weight:600;color:var(--head)}.adm-side .badge{margin-left:auto;background:var(--brand);color:var(--brand-c);font-size:.75rem;min-width:22px;height:22px;border-radius:99px;display:grid;place-items:center}
.adm-back{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);padding:16px 14px 6px;font-weight:600;color:var(--brand-d);transition:gap .2s}.adm-back:hover{gap:16px}
.adm-main{padding:clamp(16px,1.8vw,28px) clamp(16px,2vw,32px) 40px;min-width:0}.adm-welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}.adm-welcome h1{font-size:clamp(1.9rem,3vw,3rem);font-weight:800;letter-spacing:-.04em}.adm-welcome p{margin:2px 0 0;font-size:1.15rem;color:#3d4d46}
.stats4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stat4{display:flex;align-items:center;gap:18px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.stat4:hover{transform:translateY(-2px);box-shadow:0 14px 30px -20px rgba(11,61,46,.5)}.stat4 div{flex:1}.stat4 small{color:#3d4d46;font-size:1.05rem;display:block}.stat4 b{font-size:2.6rem;font-weight:800;color:var(--head);line-height:1.1;letter-spacing:-.03em}
.attn b{color:var(--head);margin-right:6px}.panel-head h3{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}
/* messages as a card */
.main-top .msg-shell{margin:14px clamp(14px,2vw,34px) 18px;height:calc(100vh - 86px - 32px);border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--card)}.main-top .chat{height:100%;background:var(--bg)}.msg-list{background:var(--card);padding:18px 14px}
.chat-head{padding:12px 18px;background:var(--card)}.chat-head .ch-av .avatar{width:56px;height:56px}.ch-name{display:block;font-size:1.45rem;font-weight:700;color:var(--head);letter-spacing:-.02em;line-height:1.2}.chat-head .grow span{color:#4a5a54;font-size:1.02rem}.chat-head .acts .icon-btn{width:50px;height:50px;border-radius:12px;color:var(--head)}
.listing-strip{display:flex;align-items:center;gap:16px;margin:0 16px 4px;padding:0 16px 0 0;overflow:hidden;border-radius:10px;background:var(--card);border:1px solid var(--border);color:inherit;transition:border-color .2s}.listing-strip:hover{border-color:var(--brand)}.listing-strip img{width:min(220px,28%);height:92px;border-radius:0;object-fit:cover}.listing-strip div{flex:1;display:grid;gap:3px;min-width:0}.listing-strip b{font-size:1.15rem}.listing-strip .muted{display:flex;gap:8px;align-items:center;font-size:.95rem}.listing-strip i{font-style:normal}.ls-price{white-space:nowrap}
.brow{display:flex;gap:12px;align-items:flex-end;max-width:100%}.brow.me{justify-content:flex-end}.b-av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}.brow .bubble{max-width:min(620px,78%)}.bubble.me{background:#dcf0e5;border-color:transparent}.bubble{border-radius:14px}.ticks{display:inline-flex;margin-left:6px;color:#0aa5c8}.ticks svg:last-child{margin-left:-9px}
@media (max-width:1100px){.ag-top,.bk-grid,.ap-grid,.doc-grid,.pay-grid,.ap-list-grid,.rent-grid,.call-grid,.help-grid{grid-template-columns:1fr}.rent-3{grid-template-columns:1fr}.stats4{grid-template-columns:1fr 1fr}.sv-grid{grid-template-columns:1fr}.pg-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cal-box{grid-template-columns:1fr}.times{border-left:0;border-top:1px solid var(--border)}.adm-body{grid-template-columns:1fr}.adm-side{position:static;height:auto;padding:8px 12px;flex-direction:column}.adm-side nav{display:flex;overflow-x:auto;gap:6px}.adm-side a.item{flex:none;height:44px;padding:0 14px}.adm-back{border-top:0;padding:8px 6px 2px}}
@media (max-width:860px){.ag-card{grid-template-columns:1fr}.ag-photo{aspect-ratio:1;max-height:340px}.ag-btns,.ag-facts,.tour-types,.rh-2,.as-btns,.ap-actions{grid-template-columns:1fr}.stat3{grid-template-columns:1fr}.pg-cards{grid-template-columns:1fr!important}.pp-head{flex-direction:column;align-items:flex-start}.pp-head img{width:100%}.help-hero{grid-template-columns:1fr}.hh-img{min-height:160px;order:-1}.help-cats{grid-template-columns:1fr}.sv-card{grid-template-columns:1fr}.sv-img{min-height:210px}.sv-img .heart{right:14px;top:14px;margin:0;width:44px;height:44px}.app-card{grid-template-columns:96px 1fr}.app-card .ac-st{grid-column:1/-1}.app-card>svg{display:none}.rent-hero{grid-template-columns:1fr}.rh-3{grid-template-columns:1fr}.pg-steps.line-h{overflow-x:auto}.pg-steps.line-h li b{font-size:.9rem}.pg-steps.line-top::before{left:8%;right:8%}.bk-bar{flex-wrap:wrap}.bk-bar>div{flex:1 1 60%}.bk-bar .btn{flex:1}.stats4{grid-template-columns:1fr}.adm-top{padding:0 14px;gap:10px}.adm-top .logo-word,.adm-title,.vr,.adm-search{display:none}.adm-main{padding-bottom:30px}.call{min-height:420px}.cb{width:64px;height:64px}.doc-bar .btn{width:100%}.prop-pick{min-width:0;width:100%}
  .main-top .msg-shell{margin:0;border:0;border-radius:0}.listing-strip{padding-right:10px}.listing-strip img{width:70px;height:64px}.ls-price{display:none}.listing-strip svg{display:none}.brow .bubble{max-width:82%}.b-av{width:34px;height:34px}}
/* settings fixes */
.is-settings .set-nav a,.is-settings .set-out{white-space:nowrap}.is-settings .set-nav a span{overflow:hidden;text-overflow:ellipsis}.is-settings .set-nav{min-width:0}.fl input:disabled{padding-right:112px;text-overflow:ellipsis}
@media (min-width:1101px){.is-settings .set-grid{grid-template-columns:clamp(250px,18vw,300px) minmax(0,1fr)}.is-settings .set-nav a,.is-settings .set-out{font-size:calc(17 * var(--su));gap:calc(14 * var(--su));padding:0 calc(14 * var(--su))}}

/* ---- admin: listings / users / support (split panes) ---- */
.a2-bar{display:flex;gap:12px;flex-wrap:wrap;margin:6px 0 14px}.a2-search{flex:1 1 280px;display:flex;align-items:center;gap:10px;height:46px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:#4a5a54}.a2-search input{border:0;outline:0;background:none;flex:1;height:100%;font:inherit;color:var(--text)}.a2-sel select{height:46px;padding:0 36px 0 14px;border:1px solid var(--border);border-radius:12px;background:var(--card);font:inherit;color:var(--text)}
.a2-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin-bottom:16px;overflow-x:auto}.a2-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:12px 16px;font:inherit;font-weight:500;color:#4a5a54;cursor:pointer;white-space:nowrap}.a2-tabs button b{display:inline-block;min-width:22px;padding:1px 7px;margin-left:4px;border-radius:999px;background:#e3eee8;color:#0b5d46;font-size:.8rem;text-align:center}.a2-tabs button.on{color:var(--head);border-color:#0b5d46}
.a2-split{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.a2-list{padding:0;overflow:hidden}.a2-list tr[data-l],.a2-list tr[data-u]{cursor:pointer}.a2-list tr.sel{background:#eef5f1;box-shadow:inset 3px 0 0 #0b5d46}.a2-side{padding:20px;position:sticky;top:84px}.a2-side h3{margin:0 0 12px}.a2-side h4{margin:10px 0 2px;font-size:1.15rem;color:var(--head)}
.a2-hero{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}.a2-dl{margin:14px 0}.a2-dl>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--border)}.a2-dl dt{color:#4a5a54}.a2-dl dd{margin:0;font-weight:500;color:var(--head);text-align:right}.a2-desc{color:#4a5a54;font-size:.93rem;line-height:1.5}.a2-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.a2-act .btn{flex:1}
.a2-av{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#dcebe4;color:#0b5d46;font-weight:600;font-size:.85rem;flex:none}.a2-av.big{width:76px;height:76px;font-size:1.4rem}.a2-prof{text-align:center;display:grid;justify-items:center;gap:4px}.a2-prof h4{margin:6px 0 0}.pill.mute{background:#e8ece9;color:#4a5a54}
.a2-three{display:grid;grid-template-columns:340px minmax(0,1fr) 300px;gap:18px;align-items:start}.a2-tix{padding:6px;max-height:70vh;overflow:auto}.a2-t{display:grid;grid-template-columns:38px 1fr auto;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:12px;padding:12px;cursor:pointer;font:inherit;color:var(--text)}.a2-t:hover{background:#f1f6f3}.a2-t.on{background:#e6f1eb}.a2-t .tx{display:grid;gap:1px;min-width:0}.a2-t b{color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.a2-t small,.a2-t em{color:#4a5a54;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.a2-t .tm{font-size:.78rem;color:#6a7a74}.a2-t .tm,.pad{padding-top:2px}.pad{padding:16px}
.a2-thread{padding:0;display:flex;flex-direction:column;min-height:420px}.a2-thread>header{padding:18px 20px;border-bottom:1px solid var(--border)}.a2-thread header h3{margin:0}.a2-msgs{padding:18px 20px;display:grid;gap:14px;flex:1}.a2-msgs .m{display:flex;gap:10px;max-width:85%}.a2-msgs .m p{margin:2px 0 0;background:#f1f5f3;padding:10px 14px;border-radius:14px;line-height:1.45}.a2-msgs .m.out{justify-self:end}.a2-msgs .m.out p{background:#0b5d46;color:#fff}.a2-msgs .m.note p{background:#fff6dc;border:1px dashed #d8b84a}.a2-msgs .m.note{justify-self:end}
.a2-reply{border-top:1px solid var(--border);padding:14px 20px}.a2-rt{display:flex;gap:6px;margin-bottom:8px}.a2-rt button{border:0;background:none;padding:6px 12px;border-radius:8px;font:inherit;cursor:pointer;color:#4a5a54}.a2-rt button.on{background:#e3eee8;color:#0b5d46;font-weight:600}.a2-reply textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px;font:inherit;resize:vertical;background:var(--card);color:var(--text)}.a2-reply .a2-act{justify-content:flex-end}.a2-reply .a2-act .btn{flex:none}
.a2-form .f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:1180px){.a2-three{grid-template-columns:300px minmax(0,1fr)}.a2-three #tdet{grid-column:1/-1;position:static}}
@media (max-width:980px){.a2-split{grid-template-columns:1fr}.a2-side{position:static}.a2-three{grid-template-columns:1fr}.a2-tix{max-height:none}.a2-form .f2{grid-template-columns:1fr}.a2-list:not(.u) th:nth-child(2),.a2-list:not(.u) td:nth-child(2),.a2-list th:nth-child(5),.a2-list td:nth-child(5){display:none}}
.adm-body>*{min-width:0}.a2-split>*,.a2-three>*{min-width:0}.a2-list .tbl-wrap{overflow-x:auto}.page-head{flex-wrap:wrap;gap:12px}
@media (max-width:760px){.page-head h1{font-size:2rem}.a2-bar .a2-sel{flex:1}.a2-bar .a2-sel select{width:100%}.a2-act .btn{min-width:130px}.adm-body{display:block}}

/* ---- forgot password / check email ---- */
.fg-page{min-height:100dvh;background:var(--bg);display:grid;place-items:center;padding:72px 24px 32px;position:relative}.fg-logo{position:absolute;left:32px;top:24px;font-size:1.5rem;color:var(--head)}
.fg-card{width:min(1100px,100%);display:grid;grid-template-columns:1fr 1fr;background:var(--card);border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);min-height:560px}
.fg-form{padding:56px clamp(24px,5vw,72px);display:flex;flex-direction:column;justify-content:center;gap:14px}.fg-form h1{margin:6px 0 0;font-size:clamp(2rem,3.4vw,2.8rem);color:var(--head);letter-spacing:-.02em}.fg-sub{margin:0;color:#4a5a54;line-height:1.5}.fg-em{margin:0;font-weight:600;color:var(--head);word-break:break-all}
.fg-ic{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#dcebe4;color:#0b5d46}.fg-photo{background:#dcebe4 url(../img/login-hero.webp) center/cover}.fg-err{margin:0;color:#b3261e;min-height:1.2em;font-size:.92rem}
.fg-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.fg-back{display:inline-flex;align-items:center;gap:6px;color:#0b5d46;font-weight:600;margin-top:6px}.btn.wide{width:100%}
@media (max-width:820px){.fg-card{grid-template-columns:1fr;min-height:0}.fg-photo{order:-1;height:180px}.fg-page{padding:64px 16px 24px}.fg-logo{left:16px;top:16px}.fg-form{padding:28px 20px}}

/* ---- Settings sidebar: fixed look, stationary (sticky) ---- */
@media (min-width:701px){
.is-settings .set-grid{grid-template-columns:310px minmax(0,1fr);align-items:start}
.is-settings .set-nav{position:sticky;top:73px;align-self:start;height:calc(100vh - 73px);min-height:520px;overflow-y:auto;flex-direction:column;background:#f4f6f3;border-right:1px solid var(--border);padding:32px 18px 24px 24px;gap:8px;border-bottom:0}
.is-settings .set-nav h2{display:block;font-size:40px;font-weight:800;letter-spacing:-.03em;margin:0 0 24px 0}
.is-settings .set-nav a,.is-settings .set-out{height:54px;padding:0 16px;font-size:18px;gap:18px;white-space:nowrap;border-radius:12px;margin:0;flex:none;width:auto;transform:none}
.is-settings .set-nav a:hover,.is-settings .set-out:hover{transform:none;background:#e7efea}
.is-settings .set-nav a.on{background:#dcebe3;font-weight:700}
.is-settings .set-nav hr{display:block;margin:auto 0 10px;border-top:1px solid var(--border)}
}
@media (max-width:700px){.is-settings .set-nav a:hover,.is-settings .set-out:hover{transform:none}}

/* keep the auth form centred in the white panel at any window width */
@media (min-width:861px){.dz-page form#f.at{transform:translateX(calc(25vw - 418 * var(--u)))}}

/* normal-sized checkbox with a clean tick */
.dz-check input{width:20px!important;height:20px!important;border-radius:5px;border:1.5px solid #8e9a95;cursor:pointer;position:relative;display:inline-block;transition:background .15s,border-color .15s}
.dz-check input:checked{background:var(--brand);border-color:var(--brand)}
.dz-check input:checked::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.dz-check input:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.m-chk input{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:5px;border:1.5px solid #8e9a95;position:relative;display:inline-block;margin:0;flex:none;cursor:pointer}
.m-chk input:checked::after{content:"";position:absolute;left:5.5px;top:1.5px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.m-chk.terms input{margin-top:2px}
.dz-check input,.m-chk input{padding:0!important;box-sizing:border-box}
@media (max-width:760px){.a2-search{flex:1 1 100%}.a2-bar .a2-sel{flex:1 1 calc(50% - 6px)}}

/* ---- overall scale-down + top bar ---- */
@media (min-width:861px){html{font-size:15px}.tn-in{height:60px}.tn-in .logo{font-size:1.25rem}.tn-in .logo-svg,.topnav .logo-svg{height:28px}.tn-links a{font-size:.95rem}}
@media (min-width:861px) and (max-width:1500px){html{font-size:14px}.tn-in .logo-svg,.topnav .logo-svg{height:26px}}
@media (max-width:860px){.tn-in .logo-svg{height:26px}}
/* ---- home (hero card, floating search, popular chips, tabs, feature strip) ---- */
.hm{padding-top:14px}
.hm-hero{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:clamp(300px,34vw,400px);border-radius:26px;background:#0a4a3a;color:#fff;overflow:hidden;padding-bottom:0}
.hm-text{padding:clamp(26px,3.6vw,56px) clamp(22px,3.4vw,56px) clamp(60px,6vw,80px);display:flex;flex-direction:column;justify-content:center;gap:12px}
.hm-text .eyebrow-s{color:#bfe9d7;letter-spacing:.28em;font-size:.72rem;font-weight:600;text-transform:uppercase}
.hm-text h1{color:#fff;font-size:clamp(2rem,4.4vw,3.9rem);line-height:1.02;letter-spacing:-.045em;margin:0;font-weight:800}
.hm-text p{margin:6px 0 0;color:#d6efe4;font-size:clamp(.95rem,1.3vw,1.2rem);max-width:30em}
.hm-img{background-size:cover;background-position:center;clip-path:none;border-radius:0 26px 26px 0;margin-bottom:0}
.hm-search{position:relative;margin:-40px auto 0;width:calc(100% - clamp(32px,6vw,96px));z-index:2;box-shadow:0 14px 40px rgba(11,61,46,.14)}
.hm-pop{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 4px 6px;color:var(--muted)}
.chip-l{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 18px;border-radius:999px;background:var(--soft);color:var(--head);font-weight:500;transition:transform .2s,background .2s}.chip-l:hover{transform:translateY(-2px);background:#d3ebe0}
.hm-sec{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;margin:26px 0 14px}.hm-sec h2{margin:0;font-size:clamp(1.5rem,2.4vw,2.1rem);letter-spacing:-.03em}.hm-sec p{margin:2px 0 0;color:var(--muted)}
.hm-tabs{display:flex;gap:6px;margin-left:auto}.hm-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 14px;font:inherit;color:var(--muted);cursor:pointer;transition:color .2s}.hm-tabs button:hover{color:var(--head)}.hm-tabs button.on{color:var(--head);font-weight:700;border-color:var(--brand)}
.hm-none{grid-column:1/-1;padding:30px 0}
.hm-feats{display:grid;grid-template-columns:repeat(3,1fr);margin:26px 0 8px;border-radius:18px;background:var(--soft);padding:18px 8px}.hm-feats>div{display:grid;grid-template-columns:48px 1fr;column-gap:14px;align-items:center;padding:4px 22px}.hm-feats>div+div{border-left:1px solid rgba(11,93,70,.18)}.hm-fi{grid-row:span 2;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.7);color:var(--head)}.hm-feats b{color:var(--head)}.hm-feats p{margin:0;color:var(--muted);font-size:.9rem}
@media (max-width:860px){.hm{padding-top:8px}.hm-hero{grid-template-columns:1fr;border-radius:20px}.hm-img{order:-1;height:190px;margin-bottom:0;border-radius:0}.hm-text{padding:22px 20px 56px}.hm-search{width:calc(100% - 24px);margin-top:-32px}.hm-tabs{margin-left:0;width:100%;overflow-x:auto}.hm-feats{grid-template-columns:1fr;gap:14px}.hm-feats>div+div{border-left:0;border-top:1px solid rgba(11,93,70,.18);padding-top:14px}}

/* ---- compact sizing everywhere (matches Faxton Homes' proportions) ---- */
@media (min-width:861px){
.tn-in{height:56px!important;padding-inline:clamp(16px,2vw,28px)!important}
.tn-in .logo{font-size:1.15rem!important}.tn-in .logo-svg,.topnav .logo-svg{height:26px!important}
.tn-links{margin-left:clamp(0px,4vw,72px)!important;gap:clamp(16px,2.2vw,34px)!important}.tn-links a{font-size:.92rem!important}
.tn-right .bell .ic{width:20px!important;height:20px!important}
.is-settings .set-grid{grid-template-columns:250px minmax(0,1fr)!important}
.is-settings .set-nav{top:56px!important;height:calc(100vh - 56px)!important;min-height:440px;padding:24px 14px 18px 18px!important;gap:4px!important}
.is-settings .set-nav h2{font-size:28px!important;margin:0 0 16px!important}
.is-settings .set-nav a,.is-settings .set-out{height:42px!important;font-size:15px!important;padding:0 12px!important;gap:12px!important;border-radius:9px!important}
.is-settings .set-nav .ic,.is-settings .set-nav svg{width:19px!important;height:19px!important}
}
.ic{flex:none}
@media (min-width:861px){
.wrap h1,.main h1,.pg-h1{font-size:clamp(1.6rem,2.3vw,2.1rem)!important}.hm .hm-text h1{font-size:clamp(2rem,3.6vw,3.2rem)!important}
.big-price{font-size:clamp(1.6rem,2.1vw,2rem)!important}.agent .avatar{width:84px!important;height:84px!important}
.side-card{padding:20px!important}.btn{height:42px}.sec-head h2,.hm-sec h2{font-size:clamp(1.25rem,1.7vw,1.6rem)!important}
.wrap{max-width:1180px}
}
.ga-ver{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0 16px}.ga-ver b{font-size:1.1rem;color:var(--head)}.ga-ver span{color:var(--muted)}
.ga-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ga-card{padding:22px;display:grid;gap:8px;align-content:start}.ga-card h3{margin:0}.ga-card p{margin:0;line-height:1.5}.ga-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--soft);color:var(--head)}.ga-btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.ga-btns .btn small{opacity:.75;margin-left:6px}
@media (max-width:760px){.ga-grid{grid-template-columns:1fr}}

/* ---- design layer: calmer and photo-first (patterns from Airbnb, Zillow, StreetEasy and Rightmove) ---- */
:root[data-theme=light] .topnav,:root[data-theme=light] .main-top{--bg:#fff;--surface:#f7f7f5;--border:#e6e6e1;--soft:#f0f3f1;--shadow:0 2px 12px rgba(0,0,0,.06);--r:12px}
:root[data-theme=light] body:has(.main-top){background:#fff}
.main-top :is(h1,h2,h3,h4){font-weight:650!important;letter-spacing:-.012em!important;word-spacing:.04em}
.main-top .hm-text h1{font-weight:700!important;letter-spacing:-.02em!important;word-spacing:.06em}
.main-top .rise,.main-top .fade,.main-top .reveal{animation-duration:.3s!important;animation-delay:0s!important}
/* listing cards: bare photo with the text underneath, no frame, no shine */
.main-top .card{border:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible}
.main-top .card:hover{transform:none;box-shadow:none}
.main-top .card-img{border-radius:14px;aspect-ratio:4/3}
.main-top .card-img::before,.main-top .card-img::after,.main-top .peek{display:none!important}
.main-top .card:hover .card-img img{transform:scale(1.03)}
.main-top .card-body{padding:10px 2px 0;gap:1px}
.main-top .card-body h3{font-size:1rem;margin:0}
.main-top .hc-top{align-items:flex-start}
.main-top .loc{font-size:.88rem}
.main-top .avail{background:none;padding:0;color:var(--muted);font-weight:500;font-size:.82rem;display:inline-flex;align-items:center;gap:6px}
.main-top .avail::before{content:"";width:7px;height:7px;border-radius:50%;background:#1a9d6e}.main-top .avail.off::before{background:#c9a227}
.main-top .hc-price{font-weight:650;color:var(--head);font-size:1rem;margin-top:4px}
.main-top .facts{font-size:.86rem;color:var(--muted);gap:8px}.main-top .facts .ic,.main-top .facts svg{width:16px;height:16px}
.main-top .heart{background:rgba(255,255,255,.92);box-shadow:none;width:34px;height:34px}
/* chips and tabs: outlined, not mint pills */
.main-top .chip-l{background:var(--card);border:1px solid var(--border);height:36px;font-weight:500}.main-top .chip-l:hover{transform:none;background:var(--surface)}
.main-top .btn{border-radius:10px;font-weight:600}.main-top .btn:hover{transform:none}
/* containers: flat with a hairline */
.main-top :is(.panel,.pg-box,.set-card,.side-card){box-shadow:none;border-radius:12px}
.main-top .hm-feats{background:none;border-radius:0;border-top:1px solid var(--border);padding:22px 0 6px;margin-top:34px}
.main-top .hm-feats>div+div{border-left:1px solid var(--border)}
.main-top .hm-fi{background:var(--surface)}
.main-top .hm-sec{margin-top:34px}
.main-top .hm-text .eyebrow-s{letter-spacing:.14em;font-weight:500}
.main-top .hm-hero{border-radius:20px}.main-top .hm-img{border-radius:0 20px 20px 0}
.main-top .searchbar{border-radius:14px;box-shadow:0 6px 24px rgba(0,0,0,.1)}
.main-top .searchbar .btn.primary{border-radius:10px}
.main-top .sec-head h2{font-weight:650!important}
/* ---- update notification + installations ---- */
.upd-modal{width:min(92vw,420px);padding:0;border:0;border-radius:28px;background:#fdf8f3!important;color:#12382c;box-shadow:0 30px 80px rgba(0,0,0,.35)}.upd-modal::backdrop{background:rgba(10,15,13,.55)}
.upd-modal .close{position:absolute;right:16px;top:16px;background:#ece8e2;border:0;width:40px;height:40px;border-radius:50%}
.upd{padding:30px 22px 20px;text-align:center}.upd-art{display:grid;place-items:center;margin-bottom:6px}.upd h2{font-size:1.55rem;margin:4px 0 8px;color:#10160f;letter-spacing:-.01em}.upd-sub{margin:0 12px 18px;color:#5b625d;line-height:1.5}
.upd-list{list-style:none;margin:0 0 18px;padding:12px 14px;background:#f8eadc;border-radius:18px;display:grid;gap:12px;text-align:left}.upd-list li{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center}.upd-list li>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fbddc2;color:#12382c}.upd-list b{display:block;color:#10160f;font-weight:600}.upd-list small{color:#6b6a65}
.upd-go,.upd-later{display:block;width:100%;height:50px;border:0;border-radius:25px;font:600 1.02rem inherit;cursor:pointer}.upd-go{background:#12382c;color:#fff;margin-bottom:10px}.upd-later{background:#ece9e4;color:#12382c;font-weight:500}.upd-ver{margin:12px 0 0;font-size:.8rem;color:#8a877f}
.ga-live{padding:20px}.ga-live h3{margin:0 0 12px}.ga-card2{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--border)}.ga-card2 small{display:block;color:var(--muted)}.ga-live .ga-grid{display:block}
.ins-modal{width:min(94vw,640px)}.ins-form{display:grid;gap:12px}.ins-files{display:grid;gap:8px}.ins-row{display:grid;grid-template-columns:150px 1fr auto 70px;gap:8px;align-items:center}.ins-row input.u{height:38px}.ins-row .pg{font-style:normal;font-size:.82rem;color:var(--muted)}.ins-row label.up{margin:0;cursor:pointer}
@media (max-width:640px){.ins-row{grid-template-columns:1fr auto;}.ins-row b{grid-column:1/-1}.ins-row .pg{grid-column:1/-1}}
.topnav{padding-top:env(safe-area-inset-top)}.ob-top,.dz-page{padding-top:env(safe-area-inset-top)}

/* ---- mobile onboarding (card list, big headline) ---- */
.ob-ft small,.ob-ch{display:none}
@media (max-width:860px){
  .ob{background:radial-gradient(70% 40% at 105% 62%,rgba(160,205,180,.35),transparent 70%),var(--bg)}
  .ob-head{height:auto;padding:calc(env(safe-area-inset-top) + 12px) 0 12px;border:0;background:transparent}.ob-head .ob-in{padding:0}
  .ob-logo{font-size:1.45rem;gap:10px}.ob-logo .logo-svg{height:34px}
  .ob-skip{height:42px;min-width:70px;font-size:1rem;border-radius:12px}
  .ob-main{gap:22px;padding:6px 0 24px}.ob-img{height:auto;aspect-ratio:1.6/1;border-radius:24px;box-shadow:none}
  .ob-eyebrow{display:flex;align-items:center;gap:12px;font-size:.82rem;letter-spacing:.22em;color:#244237}.ob-eyebrow::before{content:"";width:34px;height:2px;background:#0f5c46}
  .ob h1{font-size:clamp(2.5rem,12.2vw,3.6rem);line-height:1.02;letter-spacing:-.03em;margin:14px 0 0}
  .ob h1::after{content:"";display:block;width:52%;height:7px;margin:4px 0 0 30%;border-radius:8px;background:linear-gradient(90deg,transparent,#a9d3bf 12%,#a9d3bf 88%,transparent);transform:rotate(-1deg)}
  .ob-lead{font-size:1.08rem;line-height:1.5;margin:16px 0 0;max-width:none;color:#3b4a44}
  .ob-feats{margin:22px 0 0;gap:12px}.ob-feats li{background:var(--card);border-radius:18px;padding:14px 16px;box-shadow:0 6px 22px -14px rgba(11,61,46,.35);gap:16px;font-size:1rem;align-items:center}
  .ob-feats .ob-fi{width:58px!important;height:58px!important;border-radius:16px!important;border:0!important;background:#e4f3ec!important}.ob-feats .ob-fi .ic{width:28px;height:28px}
  .ob-ft{display:grid;gap:2px;flex:1;min-width:0}.ob-ft b{font-weight:650;color:var(--head);font-size:1.05rem}.ob-ft small{display:block;color:var(--muted);font-size:.9rem}
  .ob-ch{display:block;color:#33463e}.ob-ch .ic{width:18px;height:18px}
  .ob-foot{background:var(--card);border-top:1px solid var(--border);height:auto;padding:12px 0 calc(env(safe-area-inset-bottom) + 12px)}.ob-foot-in{padding:0}
  .ob-btn{height:58px!important;border-radius:14px;font-size:1.08rem}.ob-btn.back,.ob-btn.cta{min-width:0!important}.ob-btn.back{padding:0 26px;background:#ececea;border:1px solid #d9ddd9;color:#33463e;gap:12px}.ob-btn.back.off{background:#ececea}
  .ob-btn.cta{padding:0 28px;background:#0d6b50;box-shadow:0 14px 26px -14px rgba(13,107,80,.8);gap:12px;min-width:46%!important}
}
/* ---- home: app banner + public download page ---- */
.hm-app{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:30px 0 8px;padding:22px 26px;border-radius:16px;background:#0a4a3a;color:#fff}.hm-app h3{margin:0 0 4px;color:#fff}.hm-app p{margin:0;color:#cfeadf}
.dl-page{min-height:100vh;background:var(--bg)}.dl-head{display:flex;justify-content:space-between;align-items:center;padding:calc(env(safe-area-inset-top) + 14px) clamp(16px,4vw,48px) 14px}.dl-head .ob-logo{font-size:1.4rem}.dl-head .ob-skip{height:40px;font-size:.95rem;border-radius:10px;padding:0 16px;display:grid;place-items:center;border:1px solid var(--border)}
.dl-in{width:min(760px,calc(100% - 32px));margin:10px auto 60px}.dl-hero{padding:18px 0 22px}.dl-hero h1{font-size:clamp(2rem,6vw,3rem);margin:0 0 8px;color:var(--head);font-weight:700;letter-spacing:-.02em}.dl-hero p{margin:0 0 16px;color:var(--muted);font-size:1.08rem;line-height:1.5}
.dl-list{display:grid;gap:12px}.dl-card{display:grid;grid-template-columns:52px 1fr auto;gap:16px;align-items:center;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.dl-card.hot{border-color:#0f7a5c;box-shadow:0 10px 30px -18px rgba(15,122,92,.6)}
.dl-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--soft);color:var(--head)}.dl-t b{display:block;color:var(--head)}.dl-t b em{font-style:normal;font-size:.76rem;font-weight:600;color:#0f7a5c;background:#e4f3ec;padding:3px 8px;border-radius:999px;margin-left:8px}.dl-t p{margin:3px 0 0;color:var(--muted);font-size:.92rem;line-height:1.45}.dl-card .btn small{opacity:.75;margin-left:6px}
.dl-note{margin-top:22px;color:var(--muted);font-size:.95rem;line-height:1.55}
@media (max-width:640px){.dl-card{grid-template-columns:44px 1fr}.dl-card .btn{grid-column:1/-1}.dl-ic{width:44px;height:44px}}

/* ---- mobile home (full-bleed hero, search pill, device banner, featured grid) ---- */
.hm-m{display:none}
@media (max-width:860px){
  .hm-hero,.hm-search,.hm-pop,.hm-sec,#hmcards,.hm-app,.hm-feats{display:none!important}.hm-m{display:block}.hm{padding-top:0}
  .main-top .wrap.hm{padding-inline:0}
  .hmm-hero{position:relative;min-height:330px;background:linear-gradient(90deg,#fff 18%,rgba(255,255,255,.55) 52%,rgba(255,255,255,0) 78%),url(../img/hero-hd.webp) 78% 25%/cover;margin:0;display:flex;align-items:flex-end}
  .hmm-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(0deg,var(--bg),transparent)}
  .hmm-text{position:relative;z-index:1;padding:46px 20px 78px;max-width:76%}
  .hmm-eye{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;color:#12382c}.hmm-eye.light{color:#bfe9d7;font-size:.7rem}
  .hmm-text h1{font-size:clamp(2.1rem,9.4vw,2.7rem)!important;line-height:1.04;margin:12px 0 10px;color:#0e1a15!important;font-weight:650!important;letter-spacing:-.025em!important}
  .hmm-text p{margin:0;color:#3b4a44;font-size:1rem;line-height:1.5}
  .hmm-search{position:relative;z-index:2;display:flex;align-items:center;gap:10px;margin:-34px 16px 0;padding:8px 8px 8px 16px;background:#fff;border-radius:999px;box-shadow:0 10px 30px -10px rgba(11,61,46,.35);border:1px solid #e6efe9}
  .hmm-search input{flex:1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:.98rem;height:44px;color:#1d2b26;padding:0}.hmm-si{color:#12382c;display:grid}
  .hmm-search button{flex:none;width:50px;height:50px;border-radius:50%;border:0;background:#0b4a39;color:#fff;display:grid;place-items:center;cursor:pointer}
  .hmm-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 12px 0}.hmm-chips a{display:flex;align-items:center;gap:8px;padding:10px 10px;min-width:0;font-size:.78rem!important;background:#eef5f1;border-radius:999px;color:#12382c;font-size:.88rem;line-height:1.2;font-weight:500}.hmm-chips a .ic{flex:none;width:22px;height:22px}.hmm-chips a span{min-width:0}
  .hmm-app{margin:20px 12px 0;border-radius:26px;background:#0a4a3a;padding:22px 18px 18px;color:#fff}.hmm-app-top{display:grid;grid-template-columns:minmax(0,1fr) 44%;gap:6px;align-items:center}.hmm-app h2{color:#fff!important;font-size:1.55rem!important;line-height:1.12;margin:10px 0 8px;font-weight:650!important}.hmm-app p{margin:0;color:#cfeadf;font-size:.95rem;line-height:1.45}.hmm-app-top img{width:100%;height:auto;display:block}
  .hm-os-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}.hm-os{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.28);border-radius:14px;color:#fff;background:rgba(255,255,255,.04)}.hm-os img{width:36px;height:36px;object-fit:contain}.hm-os b{display:block;font-weight:600}.hm-os small{display:block;color:#bfe0d2;font-size:.8rem}.hm-mac{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#1a8cff;color:#fff}
  .hmm-sec{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 16px 12px}.hmm-sec h2{margin:0;font-size:1.65rem!important}.hmm-sec p{margin:2px 0 0;color:var(--muted)}.hmm-all{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;background:#eef5f1;border-radius:14px;color:#12382c;font-weight:500;white-space:nowrap}
  .hmm-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;padding:0 12px 24px}
  .hmc{cursor:pointer;min-width:0}.hmc-img{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:1.18/1;background:var(--soft)}.hmc-img img{width:100%;height:100%;object-fit:cover;display:block}
  .hmc-tag{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;background:#0a4a3a;color:#fff;padding:7px 12px;border-radius:999px;font-size:.82rem}
  .hmc .heart{position:absolute;right:10px;top:10px}.hmc-p{display:block;margin:10px 2px 2px;font-size:1.1rem;color:#0e1a15}.hmc-p small{font-weight:400;color:var(--muted);font-size:.8rem}
  .hmc-f{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.8rem;margin:0 2px}.hmc-f span{display:inline-flex;align-items:center;gap:4px}
}

/* ---- admin on phones: menu as a tidy grid, tables as stacked cards ---- */
@media (max-width:760px){
  .adm-side nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;overflow:visible!important}
  .adm-side a.item{flex-direction:column!important;height:auto!important;min-height:58px;padding:8px 2px!important;gap:4px!important;font-size:.7rem!important;text-align:center;justify-content:center}
  .adm-side a.item svg,.adm-side a.item .ic{width:20px!important;height:20px!important}
  .adm-side a.item .badge{position:absolute;top:4px;right:8px}.adm-side a.item{position:relative}
  .tbl-wrap{overflow:visible!important}
  .tbl-wrap table,.tbl-wrap tbody,.tbl-wrap tr,.tbl-wrap td{display:block!important;width:100%!important}
  .tbl-wrap thead{display:none!important}
  .tbl-wrap tr{padding:12px 14px!important;border-bottom:1px solid var(--border)}
  .tbl-wrap tr:last-child{border-bottom:0}
  .tbl-wrap td{display:flex!important;justify-content:space-between;align-items:center;gap:14px;padding:5px 0!important;border:0!important;text-align:right}
  .tbl-wrap td::before{content:attr(data-label);color:var(--muted);font-size:.82rem;text-align:left;flex:none}
  .tbl-wrap td:first-child{justify-content:flex-start;text-align:left}.tbl-wrap td:first-child::before{display:none}
  .tbl-wrap td[colspan]{justify-content:flex-start}.tbl-wrap td[colspan]::before{display:none}
  .tbl-wrap td select{max-width:60%}
  .a2-list td,.a2-list th{display:flex!important}.a2-list td:nth-child(2),.a2-list td:nth-child(5){display:flex!important}
  .tbl-wrap .cell{min-width:0}
}
@media (max-width:760px){.a2-tabs{gap:0}.a2-tabs button{padding:10px 9px;font-size:.9rem;flex:1 1 auto}.a2-tabs button b{min-width:18px;padding:0 5px;margin-left:2px}}
/* DARK-AUTO-BEGIN */
:root[data-theme=dark] .pill.warn{color:#f3c15a!important}
:root[data-theme=dark] .dz-fi{background:#1f343d!important}
:root[data-theme=dark] .dz-fi.k{color:#f1f6f8!important}
:root[data-theme=dark] .dz-fi.g{color:#6ee7b7!important}
:root[data-theme=dark] .dz-btn{background:var(--card)!important}
:root[data-theme=dark] .dz-input{border:1px solid #2c414a!important;color:#9db0b8!important}
:root[data-theme=dark] .dz-input .eye{color:#9db0b8!important}
:root[data-theme=dark] .dz-check input{border:1.5px solid #5a6d76!important}
:root[data-theme=dark] .dz-check input:checked::after{border:solid var(--card)!important}
:root[data-theme=dark] .dz-sep{color:#9db0b8!important}
:root[data-theme=dark] .dz-sep::before,:root[data-theme=dark] .dz-sep::after{border-top:1px solid #2c414a!important}
:root[data-theme=dark] .dz-role{border:1px solid #2c414a!important}
:root[data-theme=dark] .dz-navbtn{border:1px solid #2c414a!important}
:root[data-theme=dark] .peek{background:var(--card)!important}
:root[data-theme=dark] .pin i{border:2px solid var(--card)!important}
:root[data-theme=dark] .ob-eyebrow{color:#c3d0d6!important}
:root[data-theme=dark] .ob-lead{color:#d3dde2!important}
:root[data-theme=dark] .ob-feats li{color:#e6edf0!important}
:root[data-theme=dark] .ob-feats.soft .ob-fi{background:#1f343d!important}
:root[data-theme=dark] .ob-feats.round .ob-fi{background:#1f343d!important}
:root[data-theme=dark] .ob-btn.back.off{background:#22343d!important}
:root[data-theme=dark] .ob-btn.back.off:hover{background:#22343d!important}
:root[data-theme=dark] .ob-prog span{color:#d3dde2!important}
:root[data-theme=dark] .eyebrow-s{color:#c3d0d6!important}
:root[data-theme=dark] .d-hero p{color:#d3dde2!important}
:root[data-theme=dark] .searchbar .sb-cell label{color:#8fa4ad!important}
:root[data-theme=dark] .avail{background:#16302a!important;color:#6ee7b7!important}
:root[data-theme=dark] .set-nav a.on{background:#1f343d!important}
:root[data-theme=dark] .lead-s{color:#9db0b8!important}
:root[data-theme=dark] .set-card .sub{color:#9db0b8!important}
:root[data-theme=dark] .big-av{background:#1f343d!important}
:root[data-theme=dark] .vbadge{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .vbadge.no{color:#f3c15a!important}
:root[data-theme=dark] .note{color:#9db0b8!important}
:root[data-theme=dark] .sw-row p{color:#9db0b8!important}
:root[data-theme=dark] .switch i{background:var(--card)!important}
:root[data-theme=dark] .kv span{color:#9db0b8!important}
:root[data-theme=dark] details p{color:#9db0b8!important}
:root[data-theme=dark] .is-settings .set-nav a.on{background:#1f343d!important}
@media (max-width:860px){:root[data-theme=dark] .d-hero p{color:#c3d0d6!important}}
:root[data-theme=dark] .m-sub{color:#9db0b8!important}
:root[data-theme=dark] .mi{color:#9db0b8!important}
:root[data-theme=dark] .mi .eye{color:#9db0b8!important}
:root[data-theme=dark] .m-chk input{border:1.5px solid #5a6d76!important}
:root[data-theme=dark] .m-chk input:checked::after{border:solid var(--card)!important}
:root[data-theme=dark] .m-btn.ghost{border:1px solid #2c414a!important}
:root[data-theme=dark] .m-or{color:#9db0b8!important}
:root[data-theme=dark] .m-or::before,:root[data-theme=dark] .m-or::after{border-top:1px solid #2c414a!important}
:root[data-theme=dark] .m-foot{color:#9db0b8!important}
:root[data-theme=dark] .pg-sub{color:#c3d0d6!important}
:root[data-theme=dark] .pg-box .sub,:root[data-theme=dark] .sub{color:#9db0b8!important}
:root[data-theme=dark] .loc{color:#9db0b8!important}
:root[data-theme=dark] .kvs>div{color:#9db0b8!important}
:root[data-theme=dark] .kvs.tot>div{background:#19303a!important}
:root[data-theme=dark] .avail-dot{color:#6ee7b7!important}
:root[data-theme=dark] .avail-dot.off{color:#9db0b8!important}
:root[data-theme=dark] .pill-tabs button{background:#1f343d!important}
:root[data-theme=dark] .round-btn{background:#1f343d!important}
:root[data-theme=dark] .round-btn:hover{background:#22443a!important}
:root[data-theme=dark] .pg-steps li span{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .pg-steps li b{color:#9db0b8!important}
:root[data-theme=dark] .pg-steps.line-top::before{background:#1f343d!important}
:root[data-theme=dark] .pg-steps .ln{border-top:2px solid #1f343d!important}
:root[data-theme=dark] .ag-role{color:#9db0b8!important}
:root[data-theme=dark] .ag-loc{color:#d3dde2!important}
:root[data-theme=dark] .idv{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .ag-bio{color:#9db0b8!important}
:root[data-theme=dark] .ag-facts small{color:#9db0b8!important}
:root[data-theme=dark] .day-chips button{background:#1f343d!important}
:root[data-theme=dark] .legend{color:#9db0b8!important}
:root[data-theme=dark] .legend .s{background:#1f343d!important}
:root[data-theme=dark] .time small,:root[data-theme=dark] .tt-opt small{color:#9db0b8!important}
:root[data-theme=dark] .time.on,:root[data-theme=dark] .tt-opt.on{background:#1f343d!important}
:root[data-theme=dark] .bk-bar{background:#1f343d!important}
:root[data-theme=dark] .bk-bar small{color:#9db0b8!important}
:root[data-theme=dark] .opt{color:#8fa4ad!important}
:root[data-theme=dark] .flag{background:linear-gradient(90deg,#0a8a4c 33%,var(--card) 33% 66%,#0a8a4c 66%)!important}
:root[data-theme=dark] .cnt{color:#8fa4ad!important}
:root[data-theme=dark] .notice-b{background:#19303a!important}
:root[data-theme=dark] .notice-b p{color:#9db0b8!important}
:root[data-theme=dark] .up-row small{color:#9db0b8!important}
:root[data-theme=dark] .prop-pick small,:root[data-theme=dark] .prop-pick span{color:#9db0b8!important}
:root[data-theme=dark] .doc-tabs button.on{background:#1f343d!important}
:root[data-theme=dark] .dtab tr.sel td,:root[data-theme=dark] .dtab tr[data-sel]:hover td{background:#19303a!important}
:root[data-theme=dark] .paper{background:var(--card)!important}
:root[data-theme=dark] .prev-meta small{color:#9db0b8!important}
:root[data-theme=dark] .pp-head .facts{color:#d3dde2!important}
:root[data-theme=dark] .stat-b{background:#19303a!important}
:root[data-theme=dark] .stat-b small{color:#9db0b8!important}
:root[data-theme=dark] .stat-b p{color:#9db0b8!important}
:root[data-theme=dark] .si{background:#22443a!important}
:root[data-theme=dark] .due p{color:#9db0b8!important}
:root[data-theme=dark] .pstat li>span{background:#1f343d!important}
:root[data-theme=dark] .pstat p{color:#9db0b8!important}
:root[data-theme=dark] .app-card.on{background:#19303a!important}
:root[data-theme=dark] .app-card .facts{color:#9db0b8!important}
:root[data-theme=dark] .ac-st small{color:#9db0b8!important}
:root[data-theme=dark] .st-chip{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .st-chip.info{background:#15264a!important;color:#8fb2ff!important}
:root[data-theme=dark] .st-chip.bad{background:#3d1822!important}
:root[data-theme=dark] .app-side .facts{color:#d3dde2!important}
:root[data-theme=dark] .tl li::before{background:#2f4a3f!important}
:root[data-theme=dark] .tl li>i{border:2px solid #3a4a42!important}
:root[data-theme=dark] .tl p{color:#9db0b8!important}
:root[data-theme=dark] .tl li>span{color:#9db0b8!important}
:root[data-theme=dark] .tl em{color:#6ee7b7!important}
:root[data-theme=dark] .active-t{color:#6ee7b7!important}
:root[data-theme=dark] .rh-2 small,:root[data-theme=dark] .rh-3 small{color:#9db0b8!important}
:root[data-theme=dark] .qa>span{background:#1f343d!important}
:root[data-theme=dark] .qa small{color:#9db0b8!important}
:root[data-theme=dark] .act p{color:#9db0b8!important}
:root[data-theme=dark] .act small{color:#9db0b8!important}
:root[data-theme=dark] .ya p{color:#9db0b8!important}
:root[data-theme=dark] .cb.on{background:var(--card)!important;color:#8fe9c6!important}
:root[data-theme=dark] .sv-img .heart{color:#6ee7b7!important}
:root[data-theme=dark] .sv-body .facts{color:#d3dde2!important}
:root[data-theme=dark] .cmp-chk input:checked::after{border:solid var(--card)!important}
:root[data-theme=dark] .hh-search{background:var(--card)!important}
:root[data-theme=dark] .hh-search input{color:#e6edf0!important}
:root[data-theme=dark] .hc small{color:#9db0b8!important}
:root[data-theme=dark] .fq.on{background:#19303a!important}
:root[data-theme=dark] .fa p{color:#9db0b8!important}
:root[data-theme=dark] .tk p{color:#9db0b8!important}
:root[data-theme=dark] .pill.info{background:#15264a!important;color:#8fb2ff!important}
:root[data-theme=dark] .adm-side a.item.on{background:#1f343d!important}
:root[data-theme=dark] .adm-welcome p{color:#c3d0d6!important}
:root[data-theme=dark] .stat4 small{color:#c3d0d6!important}
:root[data-theme=dark] .chat-head .grow span{color:#9db0b8!important}
:root[data-theme=dark] .a2-search{color:#9db0b8!important}
:root[data-theme=dark] .a2-tabs button{color:#9db0b8!important}
:root[data-theme=dark] .a2-tabs button b{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .a2-list tr.sel{background:#15262e!important}
:root[data-theme=dark] .a2-dl dt{color:#9db0b8!important}
:root[data-theme=dark] .a2-desc{color:#9db0b8!important}
:root[data-theme=dark] .a2-av{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .pill.mute{color:#9db0b8!important}
:root[data-theme=dark] .a2-t:hover{background:#15262e!important}
:root[data-theme=dark] .a2-t.on{background:#1f343d!important}
:root[data-theme=dark] .a2-t small,:root[data-theme=dark] .a2-t em{color:#9db0b8!important}
:root[data-theme=dark] .a2-t .tm{color:#8fa4ad!important}
:root[data-theme=dark] .a2-msgs .m p{background:#1a2620!important}
:root[data-theme=dark] .a2-msgs .m.note p{background:#3a2d10!important}
:root[data-theme=dark] .a2-rt button{color:#9db0b8!important}
:root[data-theme=dark] .a2-rt button.on{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .fg-sub{color:#9db0b8!important}
:root[data-theme=dark] .fg-ic{background:#1f343d!important;color:#6ee7b7!important}
:root[data-theme=dark] .fg-photo{background:#1f343d url(../img/login-hero.webp) center/cover!important}
:root[data-theme=dark] .fg-back{color:#6ee7b7!important}
@media (min-width:701px){:root[data-theme=dark] .is-settings .set-nav{background:#101e25!important}}
@media (min-width:701px){:root[data-theme=dark] .is-settings .set-nav a:hover,:root[data-theme=dark] .is-settings .set-out:hover{background:#1f343d!important}}
@media (min-width:701px){:root[data-theme=dark] .is-settings .set-nav a.on{background:#1f343d!important}}
:root[data-theme=dark] .dz-check input{border:1.5px solid #5a6d76!important}
:root[data-theme=dark] .dz-check input:checked::after{border:solid var(--card)!important}
:root[data-theme=dark] .m-chk input{border:1.5px solid #5a6d76!important}
:root[data-theme=dark] .m-chk input:checked::after{border:solid var(--card)!important}
@media (max-width:860px){:root[data-theme=dark] .ob-eyebrow{color:#c3d0d6!important}}
@media (max-width:860px){:root[data-theme=dark] .ob-feats .ob-fi{background:#16302a!important}}
@media (max-width:860px){:root[data-theme=dark] .ob-btn.back{background:#22343d!important}}
@media (max-width:860px){:root[data-theme=dark] .ob-btn.back.off{background:#22343d!important}}
:root[data-theme=dark] .dl-t b em{background:#16302a!important}
@media (max-width:860px){:root[data-theme=dark] .hmm-hero{background:linear-gradient(90deg,#0c181e 38%,rgba(12,24,30,.94) 66%,rgba(12,24,30,.45) 100%),url(../img/hero-hd.webp) 88% 25%/cover!important}}
@media (max-width:860px){:root[data-theme=dark] .hmm-search{background:var(--card)!important}}
@media (max-width:860px){:root[data-theme=dark] .hmm-search input{color:#e6edf0!important}}
@media (max-width:860px){:root[data-theme=dark] .hmm-chips a{background:#15262e!important}}
@media (max-width:860px){:root[data-theme=dark] .hmm-all{background:#15262e!important}}
/* DARK-AUTO-END */

/* ---- admin console: compact desktop scale ---- */
@media (min-width:1101px){
.adm-top{height:54px;padding:0 20px;gap:14px}.adm-top .logo{font-size:1.15rem}.adm-top .logo-svg{height:28px}.vr{height:22px}.adm-title{font-size:1rem}.adm-search{height:38px;font-size:.92rem;width:min(340px,28vw)}
.adm-body{grid-template-columns:clamp(180px,12.5vw,200px) minmax(0,1fr);min-height:calc(100vh - 54px)}.adm-side{top:54px;height:calc(100vh - 54px);padding:14px 10px 12px}.adm-side nav{gap:3px}
.adm-side a.item{height:40px;padding:0 14px;gap:12px;font-size:.92rem}.adm-back{padding:12px 12px 4px;font-size:.92rem}
.adm-main{padding:18px 24px 32px}.adm-welcome{margin-bottom:14px}.adm-welcome h1{font-size:clamp(1.5rem,2.1vw,2rem)}.adm-welcome p{font-size:.95rem}
.stats4{gap:12px;margin-bottom:14px}.stat4{padding:14px;gap:12px}.stat4 small{font-size:.88rem}.stat4 b{font-size:1.8rem}.stat4 .ico{width:40px;height:40px}
.panel-head h3{font-size:1.15rem}.attn{padding:8px 0;gap:10px}.attn .ico{width:38px;height:38px}
.a2-search,.a2-sel select{height:38px}.a2-tabs button{padding:9px 14px;font-size:.92rem}
}

/* ---- home: device banner on desktop ---- */
@media (min-width:861px){
.hm-app.hmd-app{display:block;margin:34px 0 10px;padding:30px 34px 24px;border-radius:22px;color:#fff;background:radial-gradient(900px 340px at 78% 0,#14705a 0,#0a4a3a 55%,#073528 100%);border:1px solid rgba(110,231,183,.28);overflow:hidden}
.hmd-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,46%);align-items:center;gap:20px}
.hmd-app .hmm-eye{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#bfe0d2;margin-bottom:10px}
.hmd-app h2{color:#fff!important;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.08;font-weight:700;margin:0 0 12px;max-width:11em}
.hmd-app p{margin:0;color:#cfeadf;font-size:1rem;max-width:26em}
.hmd-top img{width:100%;height:auto;display:block;justify-self:end}
.hmd-os{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}
.hmd-os .hm-os{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid rgba(255,255,255,.26);border-radius:12px;color:#fff;background:rgba(255,255,255,.05);transition:background .2s,transform .2s}.hmd-os .hm-os:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}
.hmd-os .hm-os img{width:34px;height:34px;object-fit:contain}.hmd-os .hm-os b{display:block;font-weight:600;font-size:.95rem}.hmd-os .hm-os small{display:block;color:#bfe0d2;font-size:.78rem}
.hmd-os .hm-mac{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#1a8cff;color:#fff}
}

/* ---- admin console: smaller type on desktop ---- */
@media (min-width:1101px){
.adm{font-size:14px}.adm-main{font-size:14px}.adm .panel{padding:16px 18px;margin-bottom:16px}.adm .panel-head{margin-bottom:10px}.adm .panel-head h3{font-size:1.02rem}.adm .panel-head a{font-size:.88rem}
.adm th{font-size:.78rem;padding:8px 12px}.adm td{font-size:.86rem;padding:9px 12px}.adm td .th{width:36px;height:36px}
.adm .stat4 small{font-size:.8rem}.adm .stat4 b{font-size:1.5rem}.adm .stat4 .ico{width:36px;height:36px}.adm .stat4{padding:12px;gap:10px}
.adm .attn{font-size:.9rem}.adm .attn b{font-size:.95rem}.adm .attn .ico{width:34px;height:34px}.adm .attn small{font-size:.8rem}
.adm-welcome h1{font-size:clamp(1.35rem,1.8vw,1.7rem)}.adm-welcome p{font-size:.88rem}
.adm-side a.item{height:38px;font-size:.88rem}.adm-search{font-size:.85rem;height:36px}.adm-title{font-size:.95rem}
.adm .btn{font-size:.88rem;padding:8px 14px}.adm .btn.sm{padding:6px 11px;font-size:.82rem}.adm .pill{font-size:.74rem;padding:2px 10px}
.adm h2{font-size:1.25rem}.adm .page-head h1{font-size:1.5rem}
}

/* ---- home banner: Download now + hover-only device tiles ---- */
.hm-dlnow{display:inline-flex;align-items:center;gap:8px;margin-top:18px;border:0;border-radius:12px;padding:12px 22px;font:inherit;font-weight:650;color:#06130d;background:#34d399;cursor:pointer;transition:transform .2s,filter .2s,box-shadow .2s;box-shadow:0 10px 24px -12px rgba(52,211,153,.7)}.hm-dlnow:hover{transform:translateY(-2px);filter:brightness(1.06)}.hm-dlnow:active{transform:none}
.hm-os{cursor:default;transition:background .2s,border-color .2s,transform .2s}.hm-os:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5);transform:translateY(-2px)}
.hm-mac.tux{background:#f4f1ea}
@media (min-width:861px){.hmd-os{grid-template-columns:repeat(5,minmax(0,1fr))!important}.hmd-os .hm-os{cursor:default}.hmd-os .hm-mac.tux{background:#f4f1ea}}

/* ---- "Download now" window and the #/download page ---- */
html.dlx-lock{overflow:hidden}
.dlx-ov{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;background:rgba(4,12,9,.62);backdrop-filter:blur(3px);opacity:0;transition:opacity .2s;overflow:auto}.dlx-ov.in{opacity:1}.dlx-ov.out{opacity:0}
.dlx-box{position:relative;width:min(960px,100%);border-radius:22px;overflow:hidden;background:#07251c;box-shadow:0 40px 100px -30px rgba(0,0,0,.7);transform:translateY(14px) scale(.985);transition:transform .22s ease}.dlx-ov.in .dlx-box{transform:none}
.dlx-close{position:absolute;top:14px;right:14px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.7);color:#0b3d2e;cursor:pointer}.dlx-close:hover{background:#fff}
.dlx-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,48%);align-items:center;gap:10px;padding:30px 34px 6px;background:linear-gradient(180deg,#e9f2f6 0,#f6f9f7 70%,#f3f7f4 100%);color:#0b2f24}
.dlx-brand{display:flex;align-items:center;gap:10px;font-size:1.35rem;margin-bottom:26px;color:#0b3d2e}.dlx-brand b{font-weight:800}.dlx-brand span{font-weight:400;letter-spacing:-.02em}
.dlx-eye{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#4a5a54;margin-bottom:10px}
.dlx-top h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.08;font-weight:750;color:#0b2f24;letter-spacing:-.03em;margin:0 0 10px;max-width:10em}.dlx-top p{margin:0 0 16px;color:#3d4d46;font-size:1rem;max-width:24em}
.dlx-art{width:100%;height:auto;display:block;justify-self:end;align-self:end}
.dlx-panel{padding:22px 26px 26px;background:radial-gradient(800px 260px at 50% 0,#0d4a39 0,#07251c 70%)}
.dlx-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;position:relative}
.dlx-card{border:1px solid rgba(110,231,183,.22);border-radius:16px;background:rgba(255,255,255,.03);transition:border-color .2s,background .2s,transform .2s}.dlx-card:hover{border-color:rgba(110,231,183,.5);background:rgba(255,255,255,.06)}.dlx-card.hot{border-color:rgba(110,231,183,.6)}.dlx-card.open{border-color:#34d399;background:rgba(52,211,153,.08)}
.dlx-head{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 10px 16px;border:0;background:none;color:#fff;font:inherit;cursor:pointer;text-align:center}
.dlx-head img{width:44px;height:44px;object-fit:contain}.dlx-tile{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;color:#fff}.dlx-tile.mac{background:#1a8cff}.dlx-tile.tux{background:#f4f1ea}
.dlx-t{display:grid;gap:1px;margin-top:4px}.dlx-t b{font-weight:650;font-size:1rem;color:#fff}.dlx-t small{color:#a9d4c3;font-size:.8rem}
.dlx-btn{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:8px 18px;border-radius:10px;font-size:.88rem;font-weight:600;color:#fff;background:#0f6b4f;border:1px solid rgba(110,231,183,.35);transition:background .2s}.dlx-card:hover .dlx-btn{background:#13926f}
.dlx-chev{display:none}
.dlx-slot{position:relative}
.dlx-sheet{width:min(330px,100%);margin-top:12px;border:1px solid rgba(110,231,183,.3);border-radius:16px;background:#0a3a2d;padding:12px;box-shadow:0 20px 40px -20px rgba(0,0,0,.6);animation:dlxIn .2s ease}
@keyframes dlxIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.dlx-sheet header{display:flex;justify-content:space-between;align-items:center;padding:2px 4px 10px;color:#fff;font-size:.92rem}.dlx-x{border:0;background:none;color:#cfeadf;cursor:pointer;display:grid;place-items:center;width:28px;height:28px;border-radius:8px}.dlx-x:hover{background:rgba(255,255,255,.1)}
.dlx-opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;margin-top:8px;padding:10px 12px;border-radius:12px;border:1px solid rgba(110,231,183,.22);background:rgba(255,255,255,.04);color:#fff;font:inherit;cursor:pointer;transition:background .2s,border-color .2s}.dlx-opt:first-of-type{margin-top:0}.dlx-opt:hover{background:rgba(255,255,255,.1);border-color:rgba(110,231,183,.6)}
.dlx-opt.off{opacity:.55;cursor:not-allowed}.dlx-opt.off:hover{background:rgba(255,255,255,.04);border-color:rgba(110,231,183,.22)}
.dlx-file{flex:none;display:grid;place-items:center;min-width:42px;height:36px;padding:0 6px;border-radius:8px;background:#eaf4ef;color:#0b3d2e;font-size:.64rem;font-weight:800;letter-spacing:.04em}
.dlx-ot{display:grid;flex:1;min-width:0}.dlx-ot b{font-weight:600;font-size:.92rem}.dlx-ot small{color:#a9d4c3;font-size:.78rem}
.dlx-how{margin:4px 6px 8px;color:#dff3ea;font-size:.92rem;line-height:1.5}
.dlx-page{border-radius:20px;border:1px solid rgba(110,231,183,.2);margin:6px 0 18px}
@media (max-width:1000px){.dlx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){
.dlx-ov{padding:12px;place-items:start center}.dlx-box{width:min(420px,100%);border-radius:24px}
.dlx-top{grid-template-columns:1fr;text-align:center;padding:26px 20px 0;gap:6px;justify-items:center}.dlx-brand{justify-content:center;margin-bottom:16px}.dlx-top h2{margin-left:auto;margin-right:auto}.dlx-top p{margin-left:auto;margin-right:auto}.dlx-art{max-width:340px;justify-self:center}
.dlx-panel{padding:14px 14px 18px}.dlx-grid{grid-template-columns:1fr;gap:10px}
.dlx-head{flex-direction:row;text-align:left;gap:14px;padding:12px 14px}.dlx-head img,.dlx-tile{flex:none}.dlx-t{flex:1;margin:0}.dlx-btn{display:none}
.dlx-chev{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;transition:transform .2s}.dlx-card.open .dlx-chev{transform:rotate(180deg)}
.dlx-card .dlx-sheet{width:auto;margin:0 12px 12px;box-shadow:none}.dlx-slot{display:none}
}
@media (max-width:860px) and (min-width:701px){.dlx-top{padding:26px 22px 6px}}
.btn.danger{background:var(--danger-bg);color:var(--danger);border-color:transparent}.btn.danger:hover{filter:brightness(.97)}
.dlx-opt>svg{transform:rotate(-90deg);flex:none;opacity:.8}

/* ---- property photos & videos ---- */
.vid-row{margin:14px 0 4px}.vid-btn{display:flex;align-items:center;gap:14px;width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s,transform .2s,box-shadow .2s}.vid-btn:hover{border-color:var(--brand);transform:translateY(-1px);box-shadow:var(--shadow)}
.vid-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brand);color:var(--brand-c);flex:none}.vid-btn b{display:block;color:var(--head)}.vid-btn small{color:var(--muted)}
.vw-ov{position:fixed;inset:0;z-index:320;display:grid;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:64px minmax(0,1fr) 64px;background:rgba(3,10,7,.97);animation:dlxIn .18s ease}
.vw-stage{grid-column:2;grid-row:1;display:grid;place-items:center;min-height:0;padding:56px 0 8px}.vw-stage img,.vw-stage video{max-width:100%;max-height:100%;border-radius:10px;object-fit:contain}.vw-stage iframe{width:min(100%,960px);aspect-ratio:16/9;max-height:100%;border:0;border-radius:10px;background:#000}
.vw-x{position:absolute;top:14px;right:14px;z-index:2;width:42px;height:42px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff;cursor:pointer}.vw-x:hover{background:rgba(255,255,255,.26)}
.vw-nav{grid-row:1;align-self:center;justify-self:center;width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;transition:background .2s}.vw-nav:hover{background:rgba(255,255,255,.28)}.vw-prev{grid-column:1}.vw-next{grid-column:3}
.vw-bar{grid-column:1/-1;grid-row:2;display:grid;justify-items:center;gap:8px;padding:8px 16px 16px;color:#cfe0d8;font-size:.85rem}.vw-strip{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:2px}
.vw-th{flex:none;width:70px;height:50px;border-radius:8px;border:2px solid transparent;overflow:hidden;padding:0;background:#16241e;cursor:pointer;opacity:.7;transition:opacity .2s,border-color .2s;display:grid;place-items:center;color:#fff}.vw-th img{width:100%;height:100%;object-fit:cover}.vw-th:hover{opacity:1}.vw-th.on{opacity:1;border-color:#34d399}
@media (max-width:700px){.vw-ov{grid-template-columns:0 minmax(0,1fr) 0}.vw-nav{position:absolute;bottom:92px;top:auto}.vw-prev{left:12px}.vw-next{right:12px}.vw-stage{padding-top:60px}}
/* ---- theme button beside the bell ---- */
.tn-right .toggle-theme,.adm-top .toggle-theme{margin-right:2px}

/* ---- role dashboards (platform analytics, support, owner portfolio, agency) ---- */
.dsh{display:grid;gap:14px}
.dsh-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}.dsh-head h1{font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.03em}.dsh-head p{margin:4px 0 0;color:var(--muted);font-size:.95rem}.dsh-eye{display:block;font-size:.88rem;color:var(--muted);margin-bottom:2px}.dsh-act{display:flex;gap:10px;flex-wrap:wrap}
.dsh-kpis{display:grid;gap:12px}.dsh-kpis.k6{grid-template-columns:repeat(6,minmax(0,1fr))}.dsh-kpis.k5{grid-template-columns:repeat(5,minmax(0,1fr))}
.dsh-kpi{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:inherit;transition:transform .2s,border-color .2s,box-shadow .2s;min-width:0}a.dsh-kpi:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:var(--shadow)}
.dsh-ki{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--soft);color:var(--brand)}.dsh-ki.sm{width:34px;height:34px;border-radius:10px}
.t-b .dsh-ki{background:rgba(59,130,246,.14);color:#3b82f6}.t-p .dsh-ki{background:rgba(168,85,247,.14);color:#a855f7}.t-y .dsh-ki{background:rgba(245,158,11,.16);color:#d98a0b}.t-r .dsh-ki{background:rgba(239,68,68,.14);color:#ef4444}.t-c .dsh-ki{background:rgba(6,182,212,.15);color:#0891b2}
.dsh-kpi small{display:block;color:var(--muted);font-size:.8rem}.dsh-kv{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dsh-kv b{font-size:1.5rem;font-weight:750;color:var(--head);letter-spacing:-.02em;line-height:1.2}.dsh-kpi em{display:block;font-style:normal;color:var(--muted);font-size:.78rem}
.dsh-d{font-size:.78rem;font-weight:650}.dsh-d.up{color:#16a34a}.dsh-d.dn{color:#ef4444}
.dsh-grid{display:grid;gap:14px;align-items:stretch}.dsh-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.dsh-grid.g21{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.dsh-grid.g13{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.dsh-grid.g1{grid-template-columns:minmax(0,1fr)}
.dsh-p{border:1px solid var(--border);border-radius:14px;background:var(--card);padding:16px 18px;min-width:0;display:flex;flex-direction:column;gap:12px}.dsh-p>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.dsh-p h3{font-size:1.02rem;font-weight:700}.dsh-p header p{margin:2px 0 0;color:var(--muted);font-size:.82rem}.dsh-link{color:var(--brand);font-weight:600;font-size:.86rem;white-space:nowrap}
.dsh-bars{display:flex;align-items:flex-end;gap:6px;height:170px;padding-top:6px}.dsh-b{flex:1;min-width:0;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px;position:relative;padding-bottom:18px}.dsh-b i{flex:1;max-width:22px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#34d399,#0f9b6e);transition:filter .2s}.dsh-b i.s1{background:linear-gradient(180deg,#60a5fa,#2563eb)}.dsh-b:hover i{filter:brightness(1.15)}.dsh-b em{position:absolute;bottom:0;left:0;right:0;text-align:center;font-style:normal;font-size:.68rem;color:var(--muted)}
.dsh-legend{display:flex;gap:14px;font-size:.78rem;color:var(--muted)}.dsh-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;background:#10b981}.dsh-legend i.s1{background:#3b82f6}
.dsh-line{position:relative;height:170px;display:grid;grid-template-rows:1fr auto}.dsh-line svg{width:100%;height:100%;overflow:visible}.dsh-line polygon{fill:rgba(16,185,129,.16)}.dsh-line polyline{fill:none;stroke:#10b981;stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-linejoin:round}.dsh-top{position:absolute;right:0;top:0;background:var(--head);color:var(--bg);font-size:.78rem;font-weight:700;padding:2px 8px;border-radius:6px}.dsh-axis{display:flex;justify-content:space-between;padding-top:6px}.dsh-axis em{font-style:normal;font-size:.66rem;color:var(--muted)}
.dsh-donut{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.dsh-donut .ring{flex:none;width:132px;height:132px;border-radius:50%;display:grid;place-items:center}.dsh-donut .ring>div{width:92px;height:92px;border-radius:50%;background:var(--card);display:grid;place-content:center;text-align:center}.dsh-donut .ring b{font-size:1.4rem;color:var(--head);line-height:1}.dsh-donut .ring small{color:var(--muted);font-size:.7rem}.dsh-donut ul{list-style:none;margin:0;padding:0;display:grid;gap:7px;flex:1;min-width:150px}.dsh-donut li{display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center;font-size:.84rem}.dsh-donut li i{width:9px;height:9px;border-radius:50%}.dsh-donut li em{font-style:normal;color:var(--muted);min-width:22px;text-align:right}
.dsh-rank,.dsh-funnel{list-style:none;margin:0;padding:0;display:grid;gap:11px}.dsh-rank li,.dsh-funnel li{display:grid;grid-template-columns:minmax(80px,30%) 1fr auto;gap:10px;align-items:center;font-size:.86rem}.dsh-rank div,.dsh-funnel div{height:9px;border-radius:99px;background:var(--surface);overflow:hidden}.dsh-rank i,.dsh-funnel i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#10b981,#34d399)}.dsh-funnel div{height:22px;border-radius:8px}.dsh-funnel i{border-radius:8px}
.dsh-att{list-style:none;margin:0;padding:0}.dsh-att a{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);color:var(--text)}.dsh-att li:last-child a{border:0}.dsh-att a span:nth-child(2){flex:1}.dsh-att b{color:var(--head)}
.dsh-chats{list-style:none;margin:0;padding:0;display:grid;gap:4px}.dsh-chats li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.dsh-chats li:last-child{border:0}.dsh-chats li>div{flex:1;min-width:0}.dsh-chats b{display:block}.dsh-chats small{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dsh-chats .muted{font-size:.76rem;white-space:nowrap}.dsh-dot{width:9px;height:9px;border-radius:50%;background:#ef4444;flex:none}
.dsh-tbl{margin:0 -4px}.dsh-tbl th{font-size:.74rem;padding:8px 10px;white-space:nowrap}.dsh-tbl td{font-size:.85rem;padding:9px 10px}.dsh-tbl .cell{display:flex;align-items:center;gap:10px}.dsh-tbl .cell small{display:block;color:var(--muted)}.dsh-tbl .dsh-th{width:40px;height:40px;border-radius:8px;object-fit:cover;flex:none}.dsh-tbl select{height:34px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text);padding:0 8px}
@media (max-width:1280px){.dsh-kpis.k6{grid-template-columns:repeat(3,minmax(0,1fr))}.dsh-kpis.k5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1100px){.dsh-grid.g3,.dsh-grid.g21,.dsh-grid.g13{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){.dsh-kpis.k6,.dsh-kpis.k5{grid-template-columns:repeat(2,minmax(0,1fr))}.dsh-kpi{padding:12px;gap:10px}.dsh-ki{width:36px;height:36px}.dsh-kv b{font-size:1.25rem}.dsh-head{align-items:flex-start}.dsh-act{width:100%}.dsh-act .btn{flex:1;justify-content:center}.dsh-p{padding:14px}.dsh-bars{height:150px}.dsh-donut .ring{margin:0 auto}}

/* ---- account-type chooser (renter / home owner / agency) ---- */
.dz-role.three{grid-template-columns:repeat(3,minmax(0,1fr))}.dz-role.three button{font-size:calc(16 * var(--u));padding:0 4px;line-height:1.15}
.m-as{margin:12px 0 6px;font-size:.82rem;color:var(--muted)}.m-role.three button{font-size:.84rem;padding:12px 4px}

/* four-way account type chooser and sign-up pop-ups */
.dz-role.four{grid-template-columns:repeat(4,minmax(0,1fr))}.dz-role.four button{font-size:calc(15 * var(--u));padding:0 2px;line-height:1.15}.m-role.four button{font-size:.8rem;padding:12px 2px}
.ob-modal{max-width:560px}.ob-form .f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ob-form small.muted{display:block;margin-top:3px;font-size:.76rem}@media(max-width:620px){.ob-form .f2{grid-template-columns:1fr}}
.vf-pop{text-align:center;display:grid;gap:10px;padding:6px 4px;max-width:420px}.vf-ic{margin:4px auto;display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:var(--warn-bg);color:#a86b00}.vf-ic.ok{background:var(--soft);color:var(--brand)}.vf-pop h2{margin:0}.vf-pop p{margin:0}

/* verification, suggestions, help tabs */
.help-cats[hidden],.help-grid[hidden],.hp-sug[hidden]{display:none!important}.hp-tabs{margin:14px 0 6px}.hp-sug{max-width:720px}.hp-sug textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px;font:inherit;background:var(--card);color:var(--text);resize:vertical}
.dsh-vf{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:14px;border:1px solid rgba(245,158,11,.4);background:var(--warn-bg);color:#6b4500}.dsh-vf .vf-ic{flex:none;width:44px;height:44px;margin:0;background:rgba(245,158,11,.22);color:#a86b00}.dsh-vf b{display:block;color:#5a3a00}.dsh-vf p{margin:2px 0 0;font-size:.9rem}.dsh-vf.bad{background:var(--danger-bg);border-color:rgba(217,45,75,.35);color:#7a1230}.dsh-vf.bad b{color:#7a1230}
.vf-h{margin:18px 0 10px;display:flex;align-items:center;gap:8px}.vf-h b{background:var(--soft);color:var(--soft-t);border-radius:99px;padding:1px 10px;font-size:.82rem}
.vf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}.vf-card{border:1px solid var(--border);border-radius:14px;background:var(--card);padding:16px;display:grid;gap:8px;align-content:start}.vf-card>header{display:flex;gap:12px;align-items:center}.vf-card>header>div{flex:1;min-width:0}.vf-card>header b{display:block;color:var(--head)}.vf-card>header small{color:var(--muted)}.vf-card .a2-dl{margin:6px 0}
@media (max-width:480px){.vf-grid{grid-template-columns:1fr}}
.badge[hidden],.tn-badge[hidden]{display:none!important}

/* ---- theme cards: the radio sits below the label instead of on top of it ---- */
.theme-card,.is-settings .theme-card{padding:18px 8px 16px!important;gap:8px}.theme-card .radio,.is-settings .theme-card .radio{position:static!important;margin-top:4px;flex:none}

/* ---- larger top bar, links and buttons ---- */
.tn-in{height:68px!important}.tn-in .logo{font-size:1.3rem!important}.tn-in .logo-svg,.topnav .logo-svg{height:32px!important}
.tn-links{gap:clamp(18px,2.4vw,38px)!important}.tn-links a{font-size:1.04rem!important;padding-block:6px}
.tn-right{gap:8px}.tn-right .icon-btn,.tn-right .toggle-theme{width:46px;height:46px}.tn-right .icon-btn svg{width:26px;height:26px}.tn-right .me-btn .avatar{width:46px;height:46px;font-size:.95rem}.tn-right .me-btn svg.ic{width:20px;height:20px}
@media (max-width:860px){.tn-in{height:60px!important}.tn-links a{font-size:.66rem!important}.tn-right .icon-btn,.tn-right .toggle-theme{width:42px;height:42px}.tn-right .me-btn .avatar{width:42px;height:42px}}

/* ---- listing cards: the details sit inside a visible box in light and dark ---- */
.hcard .card-body,.main-top .hcard .card-body,.card.hcard .card-body{margin-top:10px;padding:14px 16px 15px!important;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 1px 3px rgba(11,61,46,.06)}
:root[data-theme=light] .hcard .card-body{border-color:#d9e0db;background:#fff}
:root[data-theme=dark] .hcard .card-body{border-color:#364d58!important;background:#14232b!important;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.hcard{background:transparent!important;border:0!important;box-shadow:none!important}

/* ---- search bar: no green box around the location, type and budget selects ---- */
.sb-cell select,.sb-cell select:focus,.sb-cell select:focus-visible,.sb-cell select:active{outline:none!important;box-shadow:none!important;border:0!important;background-color:transparent}
.sb-cell:focus-within{background:var(--surface)}

/* ---- red confirm button ---- */
.btn.red{background:var(--danger)!important;border-color:var(--danger)!important;color:#fff!important}.btn.red:hover{filter:brightness(.93)}.btn.red-o{border-color:var(--danger)!important;color:var(--danger)!important}

/* ---- maps ---- */
.pickmap{height:340px;border-radius:12px;overflow:hidden;border:1px solid var(--border);position:relative}.pk-row{display:flex;gap:12px;align-items:center;margin:10px 0}.pk-modal{width:min(640px,calc(100vw - 24px))}.pk-field{display:flex;gap:10px;align-items:center}
.dmap{height:300px;border-radius:14px;overflow:hidden;border:1px solid var(--border);position:relative;z-index:0}.dsh-btns{display:flex;gap:6px;flex-wrap:wrap}
.map-hint{position:absolute;inset:0;z-index:700;display:grid;place-items:center;background:rgba(0,0,0,.45);color:#fff;font-weight:600;font-size:1.05rem;opacity:0;pointer-events:none;transition:opacity .2s;text-align:center;padding:12px}.map-hint.on{opacity:1}

/* confirm pop-ups */
.so-pop{text-align:center;display:grid;gap:10px;max-width:380px;padding:4px}.so-pop h2{margin:0}.so-pop p{margin:0}.so-act{display:flex;gap:10px;justify-content:center;margin-top:8px}.so-act .btn{flex:1}.vf-ic.bad{background:var(--danger-bg);color:var(--danger)}

/* profile photo picker on sign-up */
.av-pick{display:grid;place-items:center;border:1.5px dashed var(--brand);border-radius:50%;background:var(--soft);color:var(--brand);overflow:hidden;padding:0;cursor:pointer;transition:transform .2s}.av-pick:hover{transform:scale(1.05)}.av-pick img{width:100%;height:100%;object-fit:cover}.av-pick.has{border-style:solid}
.dz-page .at.av-pick{border-radius:50%}
.m-avrow{display:flex;align-items:center;gap:12px;margin:0 0 6px}.m-avrow .av-pick{width:56px;height:56px;flex:none}.m-avrow span{display:grid;line-height:1.3}.m-avrow small{color:var(--muted)}

/* ---- calls ---- */
.cl-ov{position:fixed;inset:0;z-index:400;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#07110d;color:#fff;padding-top:env(safe-area-inset-top)}
.cl-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px}.cl-who b{display:block;font-size:1.15rem}.cl-who span{color:#a9d4c3;font-size:.9rem}
.cl-rec{display:inline-flex;align-items:center;gap:7px;background:rgba(239,68,68,.18);color:#ff8a8a;border:1px solid rgba(239,68,68,.5);padding:5px 12px;border-radius:99px;font-size:.82rem;font-weight:650}.cl-rec[hidden]{display:none}.cl-rec i{width:9px;height:9px;border-radius:50%;background:#ef4444;animation:clPulse 1.2s infinite}@keyframes clPulse{50%{opacity:.3}}
.cl-stage{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden}.cl-stage>video:first-child{width:100%;height:100%;object-fit:contain;background:#000}
.cl-voice{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;background:radial-gradient(600px 400px at 50% 40%,#0d4a39,#07110d)}.cl-voice p{margin:0;color:#cfeadf;font-size:1.05rem}
.cl-av{display:grid;place-items:center;width:118px;height:118px;border-radius:50%;background:#13926f;color:#fff;font-size:2.4rem;font-weight:700;box-shadow:0 0 0 14px rgba(19,146,111,.18)}.cl-av.sm{width:42px;height:42px;font-size:.95rem;box-shadow:none;flex:none}
.cl-pip{position:absolute;right:16px;bottom:16px;width:min(26vw,220px);aspect-ratio:16/9;object-fit:cover;border-radius:12px;border:2px solid rgba(255,255,255,.4);background:#000;box-shadow:0 8px 24px rgba(0,0,0,.5);z-index:2}.cl-pip[hidden]{display:none}
.cl-bar{display:flex;justify-content:center;gap:clamp(10px,2.4vw,22px);padding:16px 12px calc(18px + env(safe-area-inset-bottom));flex-wrap:wrap}
.cl-b{display:grid;justify-items:center;gap:6px;border:0;background:none;color:#fff;font:inherit;cursor:pointer;min-width:62px}.cl-b svg{box-sizing:content-box;padding:16px;border-radius:50%;background:rgba(255,255,255,.14);transition:background .2s,transform .2s}.cl-b:hover svg{background:rgba(255,255,255,.26);transform:translateY(-2px)}.cl-b span{font-size:.76rem;color:#cfe0d8}
.cl-b[aria-pressed=true] svg{background:#fff;color:#07110d}.cl-b.end svg{background:#ef4444;color:#fff;transform:rotate(135deg)}.cl-b.end:hover svg{background:#dc2626;transform:rotate(135deg) translateY(2px)}
.cl-in{position:fixed;top:calc(14px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:450;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:#0b2a21;color:#fff;border:1px solid rgba(110,231,183,.35);box-shadow:0 20px 50px rgba(0,0,0,.5);width:min(440px,calc(100vw - 24px));animation:dlxIn .25s ease}.cl-in>div{flex:1;min-width:0}.cl-in b{display:block}.cl-in small{color:#a9d4c3}
.cl-in .cl-b{min-width:0}.cl-in .cl-b svg{padding:12px}.cl-in .cl-b.yes svg{background:#16a34a;color:#fff}.cl-in .cl-b.no svg{background:#ef4444;color:#fff;transform:rotate(135deg)}
.call-row{align-items:center}.call-row.missed .conv-top b,.call-row.missed p{color:var(--danger)}.call-row p{display:flex;align-items:center;gap:5px}.call-row .icon-btn{flex:none}
@media (max-width:700px){.cl-pip{width:34vw}.cl-b svg{padding:13px}.cl-b{min-width:54px}}
dialog.nodismiss .close{display:none!important}

/* filter chips are labels only */
.chip.static,.chip.static:hover{pointer-events:none;cursor:default;transform:none;background:var(--soft);color:var(--head)}

/* admin sidebar: scrolls when the list is long and keeps the way back visible */
.adm-side nav{overflow-y:auto;min-height:0;scrollbar-width:thin}.adm-side{overflow:hidden}.adm-side a.item{height:42px;flex:none}.adm-back{flex:none;white-space:nowrap;background:var(--surface);position:relative;font-size:.92rem}
.adm-backbar{margin:0 0 10px}.adm-backbar .back-btn{display:inline-flex;align-items:center;gap:8px}

/* ---- incoming call: card in the app, small banner when minimised ---- */
.cl-incoming{position:fixed;inset:0;z-index:450;display:grid;place-items:center;background:rgba(4,12,9,.55);backdrop-filter:blur(2px);animation:dlxIn .22s ease;padding:16px}
.cl-incoming .cl-mini{display:none}.cl-incoming.min{inset:auto;top:calc(12px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);background:none;backdrop-filter:none;padding:0;display:block;width:min(420px,calc(100vw - 20px))}.cl-incoming.min .cl-card{display:none}.cl-incoming.min .cl-mini{display:flex}
.cl-card{position:relative;width:min(340px,100%);background:var(--card);color:var(--head);border-radius:28px;padding:18px 18px 16px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.45);display:grid;gap:6px;justify-items:center}
.cl-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:0;background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer}.cl-x:hover{background:var(--soft)}
.cl-brand{align-self:start;justify-self:start;display:flex;align-items:center;gap:8px;font-size:.84rem;color:var(--muted);margin:2px 0 6px}.cl-brand b{color:var(--head)}
.cl-ring{position:relative;width:168px;height:168px;display:grid;place-items:center;margin:2px 0}.cl-ring>i{position:absolute;inset:14px;border-radius:50%;background:rgba(19,146,111,.16);animation:clWave 2.4s ease-out infinite}.cl-ring>i+i{animation-delay:1.2s}@keyframes clWave{0%{transform:scale(.7);opacity:.9}100%{transform:scale(1.18);opacity:0}}
.cl-pic{position:relative;width:108px;height:108px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px var(--card),0 8px 24px rgba(0,0,0,.25);display:grid;place-items:center}.cl-pic .cl-ph,.cl-pic .cl-av{width:100%;height:100%;box-shadow:none;font-size:2.2rem}
.cl-ph{border-radius:50%;object-fit:cover;flex:none;display:block}.cl-ph.sm{width:44px;height:44px}.cl-av.xl{width:108px;height:108px}
.cl-badge{position:absolute;right:30px;bottom:26px;width:34px;height:34px;border-radius:50%;background:#16a34a;color:#fff;display:grid;place-items:center;border:3px solid var(--card)}
.cl-card h3{font-size:1.4rem;margin:0}.cl-role{margin:0 0 6px;color:var(--muted)}
.cl-prop{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid var(--border);border-radius:16px;padding:10px;margin:4px 0 8px;background:var(--surface)}.cl-prop>img,.cl-pi{width:58px;height:50px;border-radius:10px;object-fit:cover;flex:none;display:grid;place-items:center;background:var(--soft);color:var(--brand)}.cl-prop b{display:block;color:var(--head);font-size:.95rem}.cl-prop span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:.82rem;margin-top:2px}
.cl-act{display:grid;grid-template-columns:1fr 1.15fr;gap:10px;width:100%}.cl-act button{display:flex;align-items:center;justify-content:center;gap:8px;height:54px;border:0;border-radius:18px;font:inherit;font-weight:650;font-size:1.02rem;cursor:pointer;transition:transform .15s,filter .2s}.cl-act button:hover{filter:brightness(.96);transform:translateY(-1px)}
.cl-act .no{background:#fdecee;color:#d92d4b}.cl-act .no svg{transform:rotate(135deg)}.cl-act .yes{background:#0b6e53;color:#fff}
:root[data-theme=dark] .cl-act .no{background:rgba(217,45,75,.18);color:#ff7d92}:root[data-theme=dark] .cl-act .yes{background:#13926f}
.cl-sec{display:flex;gap:30px;justify-content:center;margin-top:8px}.cl-s{display:grid;justify-items:center;gap:6px;border:0;background:none;color:var(--text);font:inherit;font-size:.82rem;cursor:pointer}.cl-s svg{box-sizing:content-box;padding:14px;border-radius:50%;background:var(--surface);border:1px solid var(--border)}.cl-s:hover svg{background:var(--soft)}
.cl-mini{align-items:center;gap:12px;padding:10px 12px;border-radius:22px;background:#0f1f1a;color:#fff;box-shadow:0 18px 44px rgba(0,0,0,.5);cursor:pointer;animation:dlxIn .25s ease}.cl-mini>div{flex:1;min-width:0}.cl-mini b{display:block;font-size:1rem}.cl-mini small{color:#a9d4c3}.cl-mini .cl-av.sm{width:44px;height:44px}
.cl-round{width:46px;height:46px;border-radius:50%;border:0;display:grid;place-items:center;color:#fff;cursor:pointer;flex:none;transition:transform .15s}.cl-round:hover{transform:scale(1.07)}.cl-round.no{background:#ef2b2b}.cl-round.no svg{transform:rotate(135deg)}.cl-round.yes{background:#16a34a}
.a2-chips{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 12px}.a2-chips button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:99px;padding:7px 14px;font:inherit;font-size:.88rem;cursor:pointer}.a2-chips button b{margin-left:4px;color:var(--muted);font-weight:600}.a2-chips button.on{background:var(--soft);border-color:var(--brand);color:var(--head)}
.a2-contact{margin:10px 0 4px}.a2-contact .btn{flex:1;justify-content:center}.cm-modal{width:min(520px,calc(100vw - 24px))}.cmsg{max-height:300px;overflow:auto;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.cmsg .brow{margin:6px 0}

/* ---- boxes around the info of every listing card ---- */
.card .card-body,.card.rcard .card-body{margin:10px 0 0;padding:14px 16px 15px!important;border:1px solid var(--border);border-radius:14px;background:var(--card);box-shadow:0 1px 3px rgba(11,61,46,.06)}
:root[data-theme=light] .card .card-body{border-color:#d9e0db;background:#fff}
:root[data-theme=dark] .card .card-body{border-color:#364d58!important;background:#14232b!important}
.card.rcard{background:transparent!important;border:0!important;box-shadow:none!important}
.hmc{border:1px solid var(--border)}:root[data-theme=dark] .hmc{border-color:#364d58}

/* ---- property page ---- */
.pdp .crumbs{display:flex;align-items:center;gap:10px;color:var(--muted);margin:6px 0 14px;flex-wrap:wrap}.pdp .crumbs b{color:var(--head)}.pdp .crumbs a:hover{color:var(--brand)}
.pdp .d-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.pdp .d-head h1{font-size:clamp(1.8rem,3.4vw,2.7rem)}.dt-loc{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--text);font-size:1.05rem}.dt-loc span{color:var(--brand);display:grid}
.dt-acts{display:flex;gap:10px}.dt-acts .btn{background:var(--card);border-color:var(--border);color:var(--head)}
.dt-main{min-width:0}.dt-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin:22px 0 18px;overflow-x:auto}.dt-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:12px 16px;font:inherit;font-size:1.02rem;font-weight:500;color:var(--muted);cursor:pointer;white-space:nowrap}.dt-tabs button:hover{color:var(--head)}.dt-tabs button.on{color:var(--brand);border-color:var(--brand)}
.dt-pane[hidden]{display:none}.dt-desc{color:var(--text);font-size:1.04rem;line-height:1.65;margin:0 0 14px;max-width:760px}
.dt-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.dt-info>div{border:1px solid var(--border);border-radius:16px;background:var(--card);padding:16px 18px}.dt-info span{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.9rem}.dt-info b{display:block;margin-top:8px;font-size:1.2rem;color:var(--head);font-weight:700}
.dt-pay{border:1px solid var(--border);border-radius:18px;background:var(--card);padding:22px 24px;margin-top:6px}.dt-pay h2{font-size:1.35rem;margin:0 0 16px}.dt-pay-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:22px;align-items:stretch}.dt-pay h4{margin:0 0 10px;font-size:1rem}
.dt-plans{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;border:1px solid var(--border);border-radius:14px;padding:6px;background:var(--surface)}.dt-plans button{border:0;background:none;border-radius:10px;padding:12px 8px;font:inherit;font-weight:600;color:var(--text);cursor:pointer;transition:background .2s,color .2s}.dt-plans button.on{background:var(--brand);color:var(--brand-c)}
.dt-est{border-radius:16px;background:var(--soft);padding:20px;text-align:center;display:grid;gap:4px;align-content:center}.dt-est>span{color:var(--muted);font-size:.9rem}.dt-est>b{font-size:2rem;color:var(--head);letter-spacing:-.02em}.dt-est small{color:var(--muted)}.dt-est hr{border:0;border-top:1px solid var(--border);margin:10px 0}.dt-rows{display:grid;gap:8px;text-align:left}.dt-rows>div{display:flex;justify-content:space-between;font-size:.92rem;color:var(--text)}.dt-rows b{color:var(--head)}
.dt-amen{display:flex;flex-wrap:wrap;gap:12px}.dt-amen span{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:14px;background:var(--card);padding:12px 16px;color:var(--head)}.dt-fp{max-width:100%;border-radius:14px;border:1px solid var(--border)}
.dt-sim{margin:44px 0 20px}.dt-sim h2{display:flex;align-items:center;gap:10px;font-size:1.7rem}.dt-sim h2 i{width:4px;height:26px;border-radius:2px;background:var(--brand)}.dt-sim>p{margin:4px 0 18px}
.sim-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sim{border:1px solid var(--border);border-radius:20px;background:var(--card);overflow:hidden;cursor:pointer;transition:transform .25s,box-shadow .25s,border-color .25s}.sim:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--brand)}
.sim-img{position:relative;aspect-ratio:16/10;overflow:hidden}.sim-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.sim:hover .sim-img img{transform:scale(1.05)}
.sim-tag{position:absolute;left:14px;bottom:14px;background:var(--brand);color:var(--brand-c);font-weight:650;font-size:.85rem;padding:5px 12px;border-radius:9px}.sim-tag.off{background:#6b7772;color:#fff}.sim-ph{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,.55);color:#fff;padding:5px 10px;border-radius:9px;font-size:.84rem}
.sim .heart{position:absolute;top:12px;right:12px}.sim-b{padding:16px 18px 18px;display:grid;gap:6px}.sim-p{font-size:1.25rem;color:var(--head)}.sim-p small{font-weight:500;color:var(--muted);font-size:.8rem}.sim-b h3{font-size:1.05rem;font-weight:600;color:var(--head)}.sim-b .loc{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.9rem}.sim-f{display:flex;gap:18px;align-items:center;margin-top:6px;color:var(--text);font-size:.92rem}.sim-f span{display:inline-flex;align-items:center;gap:6px}.sim-f svg{color:var(--muted)}
@media (max-width:1100px){.sim-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.dt-info{grid-template-columns:repeat(2,minmax(0,1fr))}.dt-pay-in{grid-template-columns:1fr}.sim-grid{grid-template-columns:1fr}.pdp .d-head{flex-direction:column}.dt-pay{padding:18px}}

/* ---- admin sidebar like the design: larger icons and labels ---- */
@media (min-width:1101px){.adm-side a.item{height:46px;font-size:.98rem;gap:16px;padding:0 18px}.adm-side a.item svg{width:24px;height:24px}.adm-side nav{gap:4px}.adm-body{grid-template-columns:clamp(210px,15vw,236px) minmax(0,1fr)}}
.adm-side a.item.on{background:var(--soft);color:var(--head);font-weight:650}

/* ---- agent dashboard ---- */
.dsh-tip{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:var(--soft);max-width:340px}.dsh-tip b{display:block;font-size:.9rem;color:var(--head)}.dsh-tip small{color:var(--muted)}
.dsh-big{font-size:2rem;font-weight:800;color:var(--head);letter-spacing:-.03em;line-height:1}.dsh-big small{font-size:.82rem;font-weight:500;color:var(--muted);margin-left:8px;letter-spacing:0}
.dsh-funnel.pct li{grid-template-columns:minmax(96px,34%) 1fr auto}.dsh-funnel.pct div{height:18px;border-radius:6px}.dsh-funnel.pct i{border-radius:6px}.dsh-funnel.pct b{font-weight:500;color:var(--text);font-size:.84rem;white-space:nowrap}
.dsh-tasks{list-style:none;margin:0;padding:0;display:grid}.dsh-tasks li{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}.dsh-tasks li:last-child{border:0}.dsh-tasks b{display:block;font-size:.92rem;color:var(--head)}.dsh-tasks small{color:var(--muted);font-size:.8rem}.dsh-tasks em{font-style:normal;font-size:.8rem;color:var(--text);text-align:right}.dsh-tasks em.late{color:var(--danger)}.dsh-tasks li.done b{text-decoration:line-through;color:var(--muted)}
.dsh-ck{position:relative;width:20px;height:20px;display:grid}.dsh-ck input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}.dsh-ck span{width:20px;height:20px;border:1.5px solid var(--border);border-radius:6px;background:var(--card);transition:background .15s,border-color .15s}.dsh-ck input:checked+span{background:var(--brand);border-color:var(--brand)}.dsh-ck input:checked+span::after{content:"";display:block;width:6px;height:11px;margin:1px 0 0 6px;border:solid var(--brand-c);border-width:0 2px 2px 0;transform:rotate(45deg)}
.dsh-tl{list-style:none;margin:0;padding:0;display:grid}.dsh-tl li{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.dsh-tl li:last-child{border:0}.dsh-tl .dsh-th{width:62px;height:50px;border-radius:8px;object-fit:cover}.dsh-tl b{display:block;font-size:.9rem;color:var(--head)}.dsh-tl small{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:.78rem}.dsh-tl strong{font-size:.88rem;color:var(--head)}.dsh-tl span{text-align:center;font-size:.72rem;color:var(--muted)}.dsh-tl span b{font-size:.95rem}
@media (max-width:700px){.dsh-tip{display:none}.dsh-tasks li{grid-template-columns:auto 1fr auto}.dsh-tasks li .dsh-ki{display:none}.dsh-tl li{grid-template-columns:auto 1fr auto}.dsh-tl li span:last-child{display:none}}

.dsh-grid.g322{grid-template-columns:minmax(0,1.55fr) minmax(0,1.15fr) minmax(0,1fr)}.dsh-tbl{overflow-x:auto}.dsh-tbl td{white-space:nowrap}.dsh-tbl td .cell b{white-space:nowrap}
@media (max-width:1280px){.dsh-grid.g322{grid-template-columns:minmax(0,1fr)}}
/* the rent summary card follows you down the page and scrolls inside itself on short screens */
.pdp .side-card{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 100px);overflow-y:auto;scrollbar-width:thin}
@media (max-height:820px){.pdp .side-card{padding:18px}.pdp .side-card .big-price{font-size:1.7rem}.pdp .side-card .rows>div{padding:7px 0}.pdp .side-card .btn.block{padding:12px!important}}
@media (max-width:1100px){.pdp .side-card{position:static;max-height:none;overflow:visible}}
/* terms and privacy pages */
.lg-page{min-height:100vh;background:var(--bg)}.lg-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(18px,5vw,64px);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg);z-index:5}.lg-in{max-width:820px;margin:0 auto;padding:36px clamp(18px,5vw,40px) 80px}.lg-in h1{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:6px}.lg-in .lg-up{color:var(--muted);margin:0 0 26px}.lg-in h2{font-size:1.25rem;margin:30px 0 8px}.lg-in p,.lg-in li{line-height:1.7;color:var(--text);font-size:1.02rem}.lg-in ul{padding-left:22px;margin:8px 0}.lg-tabs{display:flex;gap:8px;margin:0 0 22px}.lg-tabs a{border:1px solid var(--border);border-radius:99px;padding:8px 18px;color:var(--text)}.lg-tabs a.on{background:var(--soft);border-color:var(--brand);color:var(--head);font-weight:600}

/* ---- property page: features, location, floor plan, media, agent + booking sidebar, swipeable similar homes ---- */
.ft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ft{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;border:1px solid var(--border);border-radius:16px;background:var(--card);padding:22px 12px;min-height:116px}.ft b{font-size:.95rem;color:var(--head);font-weight:600}
.ft-i{width:46px;height:46px;border-radius:14px;background:var(--soft);color:var(--soft-t);display:grid;place-items:center}
.ft-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.ft-facts>div{border:1px solid var(--border);border-radius:16px;background:var(--card);padding:16px 18px;display:grid;gap:4px}.ft-facts span{font-size:.85rem;color:var(--muted)}.ft-facts b{font-size:1.25rem;color:var(--head)}
.dmap.lg{height:380px;border-radius:18px}.dmap-pill{position:absolute;z-index:500;left:14px;top:14px;background:var(--card);color:var(--head);border:1px solid var(--border);border-radius:12px;padding:8px 14px;font-weight:650;box-shadow:var(--shadow);pointer-events:none}
.dmap-none{display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;background:var(--soft);color:var(--soft-t)}.dmap-none small{color:var(--muted)}
.dmap-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.dmap-row .muted{display:inline-flex;align-items:center;gap:8px}.dmap-row .btn{display:inline-flex;align-items:center;gap:8px}
:root[data-theme=dark] .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.95) contrast(.9) saturate(.7)}
.fp{border:2px solid var(--border);border-radius:18px;background:var(--card);padding:14px;display:grid;gap:10px}.fp-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px}.fp-row.top .fp-c{min-height:120px}
.fp-c{border:1.5px solid var(--border);border-radius:12px;background:var(--surface);min-height:84px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}.fp-c b{color:var(--head);font-size:.95rem}.fp-c small{color:var(--muted)}.fp-c.hl{background:var(--soft);border-color:var(--brand)}.fp-c.wide{grid-column:span 2}
.fp-note{margin:0;font-size:.85rem;color:var(--muted)}.dt-fp{width:100%;border-radius:18px;border:1px solid var(--border);background:#fff}
.md-h{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:1.1rem}.md-h b{background:var(--soft);color:var(--soft-t);border-radius:999px;padding:1px 10px;font-size:.85rem}.md-h~.md-h{margin-top:24px}
.md-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.md-i{position:relative;display:block;padding:0;border:0;border-radius:14px;overflow:hidden;aspect-ratio:4/3;background:var(--surface);cursor:zoom-in}.md-i img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.md-i:hover img{transform:scale(1.05)}
.md-v{cursor:pointer;background:#10231b}.md-vb{position:absolute;inset:0;background:linear-gradient(135deg,#0b3d2e,#13926f)}.md-play{position:absolute;inset:0;margin:auto;width:54px;height:54px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center}.md-v em{position:absolute;left:10px;bottom:8px;font-style:normal;color:#fff;font-size:.8rem;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.6)}
/* sidebar: agent card + booking */
.pdp .sc-agent{display:flex;align-items:center;gap:14px;border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.sc-av{position:relative;flex:none}.sc-av .avatar{width:56px;height:56px;border-radius:50%;object-fit:cover}.sc-av i.on{position:absolute;right:1px;bottom:1px;width:13px;height:13px;border-radius:50%;background:#22c55e;border:2px solid var(--card)}
.sc-name{display:block;font-weight:700;color:var(--head)}.sc-agent small{display:block;color:var(--muted)}.sc-rate{display:flex;align-items:center;gap:4px;margin-top:2px;color:#f59e0b}.sc-rate b{color:var(--head);font-size:.88rem}
.sc-msg{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:14px}.sc-msg .btn{margin:0;display:inline-flex;align-items:center;justify-content:center;gap:8px}.sc-call{width:46px;padding:0;background:var(--brand)!important;border-color:var(--brand)!important;color:var(--brand-c)!important}
.sc-h{margin:22px 0 12px;font-size:1.1rem;color:var(--head);border-top:1px solid var(--border);padding-top:18px}
.sc-seg{display:grid;grid-template-columns:1fr 1fr;gap:4px;border:1px solid var(--border);border-radius:12px;padding:4px;background:var(--surface);margin-bottom:12px}.sc-seg button{border:0;background:none;border-radius:9px;padding:9px;font-weight:600;color:var(--muted);margin:0}.sc-seg button.on{background:var(--card);color:var(--head);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.sc-date{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;background:var(--card);padding:0 12px;color:var(--muted)}.sc-date select{flex:1;border:0;background:none;height:46px;color:var(--text);font:inherit;outline:0;min-width:0}
.sc-t{margin:14px 0 8px;font-size:.88rem}.sc-times{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.sc-times button{margin:0;border:1px solid var(--border);background:var(--card);border-radius:10px;padding:10px 6px;font-weight:600;color:var(--text)}.sc-times button.on{background:var(--soft);border-color:var(--brand);color:var(--soft-t)}
@media (max-width:760px){
  .ft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.md-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dmap.lg{height:300px}.fp-row{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(2,minmax(0,1fr))}
  /* similar homes: one row you swipe sideways */
  .dt-sim{margin-right:calc(var(--pad, 16px) * -1)}
  .dt-sim .sim-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:2px 16px 14px 0;scrollbar-width:none;overscroll-behavior-x:contain}.dt-sim .sim-grid::-webkit-scrollbar{display:none}
  .dt-sim .sim{flex:0 0 82%;scroll-snap-align:start}
}

/* the sidebar is an ordinary card that scrolls away with the page */
.pdp .side-card{position:static!important;max-height:none!important;overflow:visible!important;top:auto}

/* the sidebar card follows you down the page and scrolls inside itself when it is taller than the screen */
.pdp .side-card{position:sticky!important;top:84px;max-height:calc(100vh - 100px)!important;overflow-y:auto!important;scrollbar-width:thin}
@media (max-width:1100px){.pdp .side-card{position:static!important;max-height:none!important;overflow:visible!important}}
/* heart buttons stay visible in dark mode */
:root[data-theme=dark] .heart,:root[data-theme=dark] .main-top .heart{background:rgba(10,15,13,.78);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.4)}
:root[data-theme=dark] .heart.on,:root[data-theme=dark] .main-top .heart.on{color:#ff5d7a}
:root[data-theme=dark] .heart:hover{color:#ff5d7a}

/* ---- site footer ---- */
.site-foot{position:relative;margin-top:36px;border-top:1px solid color-mix(in srgb,var(--brand) 40%,var(--border));background:radial-gradient(900px 260px at 0% 100%,color-mix(in srgb,var(--brand) 14%,transparent),transparent 70%),linear-gradient(180deg,var(--surface),var(--bg));color:var(--muted);overflow:hidden}
:root[data-theme=dark] .site-foot{background:radial-gradient(900px 260px at 0% 100%,rgba(52,211,153,.12),transparent 70%),linear-gradient(180deg,#0a171c,#08121a)}
.sf-in{width:min(1496px,100% - 48px);margin:0 auto;padding:44px 0 40px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center}
.sf-main{display:grid;gap:22px}
.sf-social{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap}.sf-social a{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:var(--muted);transition:color .2s,background .2s,transform .2s}.sf-social a:hover{color:var(--brand);background:var(--soft);transform:translateY(-2px)}
.sf-links{display:flex;flex-wrap:wrap;gap:14px 34px;align-items:center}.sf-links a,.sf-links button{display:inline-flex;align-items:center;gap:8px;color:var(--text);font-size:1.02rem;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:1.02rem}.sf-links a:hover,.sf-links button:hover{color:var(--brand)}
.sf-ext{color:var(--brand);flex:none}
.sf-tog{display:inline-flex;align-items:center;width:50px;height:26px;border-radius:999px;border:2px solid var(--brand);padding:0 3px;gap:2px;margin-right:4px;color:var(--brand-c);background:transparent}.sf-tog svg{width:16px;height:16px;padding:2px;border-radius:50%;flex:none}.sf-tog svg:first-child{background:var(--brand)}.sf-tog svg:last-child{color:var(--brand)}
.sf-brand{display:grid;justify-items:center;gap:10px;text-align:center;padding-left:48px;border-left:1px solid var(--border);min-width:300px;color:var(--brand)}
.sf-brand b{font-size:1.15rem;letter-spacing:.34em;color:var(--head)}.sf-brand b span{font-weight:400;color:var(--muted)}.sf-brand small{color:var(--muted);letter-spacing:0;font-size:.82rem}
.pc-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.pc-row b{display:block;color:var(--head)}.pc-row small{display:block;color:var(--muted);margin-top:2px}.pc-row input{width:22px;height:22px;accent-color:var(--brand);flex:none}
.pc-links{display:grid;gap:8px;margin:14px 0}.pc-links .link{text-decoration:underline}
@media (max-width:860px){.site-foot{margin-bottom:58px}.sf-in{grid-template-columns:1fr;gap:28px;padding:34px 0 30px}.sf-brand{padding:24px 0 0;border-left:0;border-top:1px solid var(--border);min-width:0;justify-items:start;text-align:left}.sf-social{gap:6px}.sf-links{gap:12px 24px}.sf-links a,.sf-links button{font-size:.96rem}}

/* ---- admin sidebar: compact ---- */
@media (min-width:861px){.adm-body{grid-template-columns:clamp(176px,12vw,196px) minmax(0,1fr)!important}.adm-side{padding:12px 8px!important}.adm-side nav{gap:2px!important}.adm-side a.item{height:36px!important;font-size:.86rem!important;gap:11px!important;padding:0 11px!important;border-radius:9px}.adm-side a.item svg{width:18px!important;height:18px!important}.adm-back{font-size:.84rem!important}}

/* ---- messages ---- */
:root{--mx-me:#0b4a37}:root[data-theme=dark]{--mx-me:#0f5f47}
.main-top:has(.mx-shell){padding-bottom:0}
.mx-shell{display:grid;grid-template-columns:minmax(310px,390px) minmax(0,1fr);gap:16px;margin:14px clamp(12px,2vw,30px) 16px;height:calc(100dvh - 60px - 30px)}
.mx-side,.mx-chat{background:var(--card);border:1px solid var(--border);border-radius:18px;min-height:0;overflow:hidden}
.mx-side{display:flex;flex-direction:column;padding:22px 16px 10px}
.mx-sidehead{padding:0 6px}.mx-sidehead h1{font-size:2rem;letter-spacing:-.02em}.mx-sidehead>p{color:var(--muted);margin:6px 0 16px;line-height:1.4;max-width:34ch}
.mx-new{display:inline-flex;align-items:center;gap:10px;background:var(--mx-me);color:#fff;font-weight:650;padding:13px 22px;border-radius:12px}.mx-new:hover{filter:brightness(1.12)}
.mx-mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;border:1px solid var(--border);border-radius:12px;padding:4px;background:var(--surface);margin:0 0 6px}.mx-mode button{border:0;background:none;border-radius:9px;padding:8px;font-weight:600;color:var(--muted)}.mx-mode button.on{background:var(--card);color:var(--head);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.mx-hint{font-size:.8rem!important;margin:0 0 12px!important;color:var(--muted)}.mx-hint b{color:var(--head)}
.mx-filters{display:grid;gap:2px;margin:16px 0 12px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.mx-filters>*{display:flex;align-items:center;gap:14px;height:46px;padding:0 14px;border:0;background:none;border-radius:12px;color:var(--text);font:inherit;text-align:left;width:100%;cursor:pointer}.mx-filters>*:hover{background:var(--surface)}.mx-filters>.on{background:var(--soft);color:var(--head);font-weight:650}
.mx-filters span{flex:1}.mx-filters b{min-width:30px;text-align:center;background:var(--surface);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:.82rem;font-weight:600}.mx-filters .on b{background:var(--card)}
.mx-recent{display:flex;flex-direction:column;min-height:0;flex:1}.mx-rh{display:flex;justify-content:space-between;align-items:center;padding:4px 8px 8px}.mx-rh h2{font-size:1rem}.mx-rh button{border:0;background:none;color:var(--text);width:32px;height:32px;border-radius:8px;display:grid;place-items:center}.mx-rh button:hover{background:var(--surface)}
.mx-search{display:flex;align-items:center;gap:8px;margin:0 6px 8px;padding:0 12px;height:40px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted)}.mx-search[hidden]{display:none}.mx-search input{flex:1;border:0;background:none;outline:0;color:var(--text);font:inherit;min-width:0}
.mx-convs{overflow-y:auto;min-height:0;flex:1;scrollbar-width:thin}.mx-none{padding:14px 10px}
.mx-conv{display:flex;gap:12px;align-items:center;padding:10px;border-radius:14px;position:relative;color:var(--text)}.mx-conv:hover{background:var(--surface)}.mx-conv.on{background:var(--soft)}
.mx-av{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none;background:var(--surface)}
.mx-conv>div{min-width:0;flex:1}.mx-ct{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.mx-ct b{color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-ct time{font-size:.8rem;color:var(--muted);flex:none}
.mx-conv p{margin:2px 0 0;color:var(--muted);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-conv small{display:block;color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mx-dot{width:10px;height:10px;border-radius:50%;background:var(--brand);flex:none}
.mx-chat{display:flex;flex-direction:column}
.mx-empty{margin:auto;text-align:center;padding:30px;color:var(--muted)}.mx-empty span{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--soft);color:var(--soft-t);margin-bottom:12px}.mx-empty h2{color:var(--head)}
.mx-head{display:flex;align-items:center;gap:14px;padding:16px 22px;border-bottom:1px solid var(--border);flex:none}
.mx-back{display:none;color:var(--head)}.mx-hav img{width:56px;height:56px;border-radius:50%;object-fit:cover;display:block;background:var(--surface)}
.mx-hn{min-width:0;flex:1}.mx-hn b{display:block;font-size:1.2rem;color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-hn span{color:var(--muted);font-size:.92rem}
.mx-acts{display:flex;align-items:center;gap:10px}
.mx-ab{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 16px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--head);font:inherit;font-weight:500;cursor:pointer;white-space:nowrap}.mx-ab:hover{background:var(--surface)}.mx-ab svg{color:var(--brand)}
.mx-more{position:relative}.mx-dots{width:40px;height:44px;border:0;background:none;color:var(--head);border-radius:10px;display:grid;place-items:center}.mx-dots:hover{background:var(--surface)}
.mx-menu{right:0;top:calc(100% + 6px);left:auto;min-width:210px}.mx-menu a,.mx-menu button{display:flex;gap:10px;align-items:center;width:100%;text-align:left}
.mx-thread{flex:1;overflow-y:auto;padding:18px 24px;display:flex;flex-direction:column;gap:16px;min-height:0;background:var(--card)}
.mx-day{align-self:center;background:var(--surface);color:var(--head);font-size:.88rem;padding:5px 22px;border-radius:999px;border:1px solid var(--border)}
.mx-row{display:flex;gap:14px;align-items:flex-end}.mx-row.me{flex-direction:row-reverse}.mx-bav{width:46px;height:46px;border-radius:50%;object-fit:cover;flex:none;background:var(--surface)}
.mx-b{max-width:min(640px,72%);background:var(--surface);color:var(--text);padding:14px 18px 10px;border-radius:18px;border-bottom-left-radius:6px;line-height:1.5;word-break:break-word;white-space:pre-wrap}.mx-row.me .mx-b{background:var(--mx-me);color:#fff;border-bottom-left-radius:18px;border-bottom-right-radius:6px}
.mx-b time{float:right;margin:10px 0 0 16px;font-size:.78rem;opacity:.7;display:inline-flex;gap:6px;align-items:center;white-space:nowrap}.mx-row.me .mx-b time{opacity:.85}.mx-b .ticks{display:inline-flex}.mx-b .ticks svg:last-child{margin-left:-9px}
.mx-hello{text-align:center;color:var(--muted);padding:30px}
.mx-bk{display:grid;grid-template-columns:90px 1fr;gap:12px;border:1px solid var(--border);border-radius:14px;padding:10px;background:var(--card);max-width:420px;margin-left:60px}.mx-bk img{width:90px;height:80px;object-fit:cover;border-radius:10px}.mx-bk>div{display:grid;gap:3px;align-content:start}
.mx-lcard{display:grid;grid-template-columns:minmax(150px,230px) 1fr auto;gap:18px;align-items:center;border:1px solid var(--border);border-radius:16px;padding:8px;background:var(--card);box-shadow:var(--shadow);max-width:720px;margin-left:60px}
.mx-limg{position:relative}.mx-limg img{width:100%;height:132px;object-fit:cover;border-radius:12px;display:block}.mx-badge{display:none}
.mx-lt h3{font-size:1.1rem;color:var(--head)}.mx-lp{font-weight:700;color:var(--head)}.mx-lp small{font-weight:500;color:var(--muted)}.mx-lloc{display:flex;gap:6px;align-items:center;color:var(--muted);margin:4px 0 8px}.mx-lloc svg{color:var(--brand)}
.mx-lt{display:flex;flex-direction:column;gap:2px}.mx-lt .mx-lp{order:3;margin-top:6px}
.mx-lf{display:flex;gap:18px;color:var(--text)}.mx-lf span{display:inline-flex;align-items:center;gap:6px}
.mx-lact{display:flex;gap:10px;align-items:center;padding-right:8px}.mx-vl{background:var(--soft);color:var(--soft-t);border-color:transparent;font-weight:600}.mx-ext{width:42px;height:42px;border:1px solid var(--border);border-radius:12px;display:grid;place-items:center;color:var(--brand)}
.mx-quick{display:none}
.mx-emoji{display:flex;flex-wrap:wrap;gap:4px;padding:8px 22px;border-top:1px solid var(--border)}.mx-emoji[hidden]{display:none}.mx-emoji button{border:0;background:none;font-size:1.4rem;width:38px;height:38px;border-radius:8px}.mx-emoji button:hover{background:var(--surface)}
.mx-comp{display:flex;align-items:center;gap:8px;margin:10px 22px 18px;padding:8px 8px 8px 14px;border:1px solid var(--border);border-radius:18px;background:var(--card);flex:none}.mx-comp input{flex:1;border:0;background:none;outline:0;color:var(--text);font:inherit;font-size:1rem;min-width:0;padding:10px 6px}
.mx-ib{width:42px;height:42px;border:0;background:none;color:var(--muted);border-radius:50%;display:grid;place-items:center;flex:none}.mx-ib:hover{background:var(--surface);color:var(--head)}.mx-micb{display:none}
.mx-send{width:54px;height:54px;border:0;border-radius:50%;background:var(--mx-me);color:#fff;display:grid;place-items:center;flex:none}.mx-send:hover{filter:brightness(1.15)}
@media (max-width:1180px){.mx-ab span{display:none}.mx-ab{padding:0 12px}.mx-lcard{grid-template-columns:150px 1fr}.mx-lact{grid-column:1 / -1;padding:0 8px 6px}}
@media (max-width:860px){
  .mx-shell{grid-template-columns:1fr;margin:0;height:calc(100dvh - 60px - 58px - env(safe-area-inset-bottom));gap:0}
  .mx-side,.mx-chat{border-radius:0;border:0}.mx-chat{display:none}.mx-shell.has-chat .mx-chat{display:flex}.mx-shell.has-chat .mx-side{display:none}
  .main-top:has(.mx-shell){padding-bottom:calc(58px + env(safe-area-inset-bottom))}
  .mx-head{padding:10px 14px;gap:10px}.mx-back{display:grid;place-items:center;width:30px}.mx-hav img{width:50px;height:50px}.mx-hn b{font-size:1.1rem}.mx-hn span{font-size:.9rem}
  .mx-ab{width:46px;height:46px;padding:0;justify-content:center;border:0;background:var(--soft);border-radius:14px}.mx-ab span,.mx-ab.mx-d{display:none}
  .mx-thread{padding:14px 14px;gap:12px}.mx-bav{width:40px;height:40px}.mx-row.me .mx-bav{display:none}.mx-b{max-width:82%;padding:12px 16px 8px}.mx-row:not(.me) .mx-bav{align-self:flex-end}
  .mx-lcard,.mx-bk{display:block;margin-left:0;max-width:none;padding:0;overflow:hidden}.mx-bk{display:grid;padding:10px}.mx-limg img{height:170px;border-radius:0}
  .mx-badge{display:inline-flex;align-items:center;gap:6px;position:absolute;left:12px;top:12px;background:rgba(11,74,55,.88);color:#fff;font-size:.88rem;padding:5px 12px;border-radius:9px}.mx-badge:before{content:"";width:9px;height:9px;border-radius:50%;background:#4ade80}
  .mx-lb{padding:12px 14px 4px}.mx-lt{flex-direction:row;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.mx-lt .mx-lp{order:0;margin:0;text-align:right}.mx-lt h3{font-size:1.08rem}
  .mx-lact{padding:6px 14px 14px}.mx-vl{flex:1;text-align:center}
  .mx-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mx-quick>*{display:flex;align-items:center;gap:8px;padding:10px 10px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--head);font:inherit;font-weight:600;font-size:.9rem;line-height:1.15;text-align:left;box-shadow:var(--shadow)}.mx-quick svg{color:var(--brand);flex:none}
  .mx-comp{margin:8px 12px 12px;padding:6px 6px 6px 10px;border-radius:999px}.mx-micb{display:grid}.mx-send{width:48px;height:48px}.mx-emoji{padding:8px 12px}
  .mx-sidehead h1{font-size:1.7rem}
}
.mx-thread>*{flex:none}.mx-row.me .ticks{color:#8be8c0}
@media (max-width:860px){.mx-hn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.mx-hav img{width:46px;height:46px}.mx-head{gap:8px}.mx-ab{width:42px;height:42px}.mx-dots{width:30px}}

/* ---- call screen (calling, in a call, minimised) ---- */
.cs-ov{position:fixed;inset:0;z-index:400;display:grid;grid-template-rows:auto minmax(0,1fr) auto;color:#fff;overflow:hidden;background:radial-gradient(900px 560px at 50% -10%,#15664d 0%,transparent 62%),radial-gradient(800px 520px at 105% 105%,#0f5a42 0%,transparent 60%),linear-gradient(165deg,#052a1f,#031611 55%,#04130e)}
.cs-ov:before,.cs-ov:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(52,211,153,.25);pointer-events:none}.cs-ov:before{width:1200px;height:1200px;left:-820px;top:-620px;box-shadow:inset 0 0 90px rgba(52,211,153,.13)}.cs-ov:after{width:1100px;height:1100px;right:-700px;bottom:-640px;box-shadow:inset 0 0 90px rgba(52,211,153,.1)}
.cs-top{position:relative;z-index:3;display:flex;align-items:center;gap:16px;padding:22px 30px}.cs-logo{display:flex;align-items:center;gap:10px;font-size:1.5rem}.cs-logo b{font-weight:600}.cs-sep{width:1px;height:30px;background:rgba(255,255,255,.2);flex:none}
.cs-state{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.78);font-size:1.02rem}.cs-dot{width:9px;height:9px;border-radius:50%;background:#34d399;box-shadow:0 0 12px #34d399;animation:csDot 1.4s ease-in-out infinite}@keyframes csDot{50%{opacity:.35}}
.cs-top .cl-rec{margin-left:12px}.cs-minb{margin-left:auto;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center;cursor:pointer}.cs-minb svg{transform:rotate(-90deg)}.cs-minb:hover{background:rgba(255,255,255,.14)}
.cs-stage{position:relative;z-index:2;min-height:0;display:grid;place-items:center;overflow:hidden}.cs-stage>video:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.cs-voice{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:10px;text-align:center}
.cs-ring{position:relative;width:min(360px,60vw);aspect-ratio:1;display:grid;place-items:center;margin-bottom:6px}.cs-ring>i{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(52,211,153,.4);opacity:0;animation:csRing 3.2s ease-out infinite}.cs-ring>i:nth-child(2){animation-delay:1.05s}.cs-ring>i:nth-child(3){animation-delay:2.1s}
@keyframes csRing{0%{transform:scale(.58);opacity:.8}100%{transform:scale(1.12);opacity:0}}
.cs-pic{display:grid;place-items:center;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 25%,#3ee6ab,#0f7a5a 72%);color:#fff;font-weight:700;font-size:clamp(3rem,9vw,5.6rem);overflow:hidden;box-shadow:0 0 0 12px rgba(52,211,153,.09),0 0 70px rgba(52,211,153,.4)}.cs-pic img{width:100%;height:100%;object-fit:cover;display:block}
.cs-voice h2{font-size:clamp(1.8rem,4vw,2.8rem);margin:0;letter-spacing:-.01em}.cs-voice p{margin:0;letter-spacing:.24em;color:rgba(255,255,255,.62);font-size:1.12rem}
.cs-bar{position:relative;z-index:3;justify-self:center;display:flex;align-items:flex-start;gap:clamp(6px,1.2vw,16px);margin:0 16px 38px;padding:16px 28px 14px;border-radius:44px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px);box-shadow:0 22px 60px rgba(0,0,0,.4)}
.cs-b{display:grid;justify-items:center;gap:9px;border:0;background:none;color:#fff;font:inherit;cursor:pointer;min-width:76px}.cs-ic{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 20px rgba(0,0,0,.35);transition:transform .15s,background .15s}.cs-b:hover .cs-ic{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.cs-b em{font-style:normal;font-size:.92rem;color:rgba(255,255,255,.82);white-space:nowrap}.cs-b[aria-pressed=true] .cs-ic{background:#fff;color:#06251c}.cs-b.end .cs-ic{background:#ef3b3b;box-shadow:0 0 34px rgba(239,59,59,.55)}.cs-b.end svg{transform:rotate(135deg)}
.cs-bsep{width:1px;align-self:stretch;margin:4px 6px 22px;background:rgba(255,255,255,.14)}
.cs-pill{display:none;align-items:center;gap:12px;padding:12px 14px 12px 12px;border-radius:34px;background:rgba(6,30,23,.9);border:1px solid rgba(52,211,153,.28);backdrop-filter:blur(18px);box-shadow:0 20px 44px rgba(0,0,0,.5);color:#fff;cursor:pointer;font-size:1rem}
.cs-pring{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;box-shadow:0 0 0 7px rgba(52,211,153,.12),0 0 24px rgba(52,211,153,.45);flex:none}.cs-pic.sm{width:56px;font-size:1.5rem;box-shadow:none}
.cs-pw{min-width:70px}.cs-pw b{display:block}.cs-pw small{color:rgba(255,255,255,.66)}
.cs-pb{width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none}.cs-pb[aria-pressed=true]{background:#fff;color:#06251c}.cs-pb.end{background:#ef3b3b;width:56px;height:56px}.cs-pb.end svg{transform:rotate(135deg)}
.cs-ov.min{inset:auto;top:calc(14px + env(safe-area-inset-top));right:14px;left:auto;bottom:auto;width:auto;height:auto;display:block;background:none;overflow:visible}.cs-ov.min:before,.cs-ov.min:after{display:none}
.cs-ov.min>.cs-top,.cs-ov.min>.cs-bar,.cs-ov.min .cs-voice,.cs-ov.min .cl-pip{display:none}.cs-ov.min .cs-stage{position:absolute;width:2px;height:2px;overflow:hidden;opacity:0;pointer-events:none}.cs-ov.min .cs-pill{display:flex}
@media (max-width:700px){
  .cs-top{padding:calc(16px + env(safe-area-inset-top)) 18px 10px}.cs-logo{font-size:1.25rem}.cs-state{display:none}.cs-sep{display:none}
  .cs-bar{width:calc(100% - 28px);margin:0 14px calc(26px + env(safe-area-inset-bottom));padding:14px 8px 10px;gap:0;justify-content:space-around;border-radius:34px}
  .cs-b{min-width:0;flex:1}.cs-ic{width:58px;height:58px}.cs-b em{font-size:.82rem}.cs-bsep{display:none}
  .cs-ov.min{right:8px;left:8px}.cs-ov.min .cs-pill{width:100%}.cs-pw{flex:1}
}
/* incoming call banner: avatar, name, answer and decline */
.cl-incoming.min{width:min(560px,calc(100vw - 20px));top:calc(12px + env(safe-area-inset-top))}
.cl-incoming .cl-mini{padding:12px 14px 12px 12px;border-radius:34px;background:rgba(6,30,23,.94);border:1px solid rgba(52,211,153,.3);backdrop-filter:blur(18px);box-shadow:0 20px 48px rgba(0,0,0,.5);gap:14px}
.cl-incoming .cl-mini .cl-ph.sm,.cl-incoming .cl-mini .cl-av.sm{width:62px;height:62px;border-radius:50%;box-shadow:0 0 0 6px rgba(52,211,153,.13),0 0 22px rgba(52,211,153,.45);font-size:1.5rem;background:radial-gradient(circle at 35% 25%,#3ee6ab,#0f7a5a 72%)}
.cl-incoming .cl-mini b{font-size:1.2rem}.cl-incoming .cl-mini small{color:rgba(255,255,255,.66);font-size:.98rem}
.cl-incoming .cl-round{width:58px;height:58px}.cl-incoming .cl-round.yes{background:#10a972;box-shadow:0 0 22px rgba(16,169,114,.5)}.cl-incoming .cl-round.no{background:#ef3b3b;box-shadow:0 0 22px rgba(239,59,59,.45)}
.danger-i{color:var(--danger)!important}
.cs-voice h2{color:#fff}.cs-pill b{color:#fff}
.cl-incoming.card.min{border:0;background:none;box-shadow:none;overflow:visible;border-radius:0}
.cs-logo img{filter:brightness(1.9) saturate(1.1)}
@media (max-width:700px){
  .cs-bar{justify-self:stretch;width:auto}.cs-ic{width:50px;height:50px}.cs-b{gap:6px}.cs-b em{font-size:.72rem;white-space:normal;text-align:center;line-height:1.15}.cs-b svg{width:22px;height:22px}
  .cl-incoming .cl-mini b{font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cl-incoming .cl-mini .cl-ph.sm,.cl-incoming .cl-mini .cl-av.sm{width:54px;height:54px}.cl-incoming .cl-round{width:50px;height:50px}.cl-incoming .cl-mini{gap:10px}
}

/* ---- call screen: no animated rings; phone screen like the reference ---- */
.cs-ring>i{display:none}.cs-ring{width:min(300px,52vw);margin-bottom:10px}.cs-pic{width:100%;border:3px solid rgba(110,231,183,.75);box-shadow:0 0 0 10px rgba(52,211,153,.06),0 0 50px rgba(52,211,153,.25)}
.cs-tn{display:none}
@media (max-width:700px){
  .cs-ov{background:#031a13 url(../img/chat-wall.webp) center/cover no-repeat}.cs-ov:before,.cs-ov:after{display:none}
  .cs-top{position:relative;justify-content:center;padding:calc(22px + env(safe-area-inset-top)) 18px 8px;min-height:84px}.cs-logo,.cs-top>.cs-sep,.cs-state{display:none}
  .cs-tn{display:grid;justify-items:center;gap:4px;text-align:center}.cs-tn b{font-size:1.5rem;font-weight:500;color:#fff}.cs-tn span{font-size:1.1rem;color:rgba(255,255,255,.62)}
  .cs-minb{position:absolute;left:16px;top:calc(18px + env(safe-area-inset-top));margin:0;width:54px;height:54px;background:rgba(255,255,255,.06)}.cs-top .cl-rec{position:absolute;right:16px;top:calc(30px + env(safe-area-inset-top));margin:0}
  .cs-voice h2,.cs-voice p{display:none}.cs-ring{width:min(240px,64vw);margin:0}
  .cs-bar{margin:0 14px calc(26px + env(safe-area-inset-bottom));padding:16px 14px;border-radius:44px;justify-content:space-between;gap:6px;background:rgba(255,255,255,.04)}
  .cs-b em,.cs-bsep,#clShare.cs-b{display:none}.cs-b{flex:0 0 auto;min-width:0}.cs-ic{width:66px;height:66px;background:rgba(255,255,255,.07)}.cs-ic svg{width:26px;height:26px}
  #clRecB{order:1}#clCam{order:2}#clMute{order:3}#clEnd{order:4}.cs-b.end .cs-ic{width:68px;height:68px}
}
/* ---- messages: sizes of the reference designs ---- */
@media (min-width:861px){.mx-shell{grid-template-columns:minmax(290px,clamp(290px,24vw,380px)) minmax(0,1fr)}}
.mx-sidehead h1{font-size:1.75rem}.mx-sidehead>p{font-size:.92rem;margin:4px 0 14px}.mx-new{padding:11px 20px;font-size:.95rem}.mx-filters>*{height:42px;font-size:.93rem}.mx-av{width:48px;height:48px}.mx-conv{padding:9px}
.mx-head{padding:14px 20px}.mx-hav img{width:54px;height:54px}.mx-hn b{font-size:1.1rem}.mx-hn span{font-size:.85rem}.mx-ab{height:40px;font-size:.9rem}
.mx-b{font-size:.93rem;padding:12px 16px 8px}.mx-bav{width:42px;height:42px}.mx-b time{font-size:.74rem}.mx-bw{display:grid;max-width:min(640px,72%)}.mx-bw .mx-b{max-width:none}.mx-bw time.out{display:none}
.mx-comp{margin:8px 20px 16px}.mx-comp input{font-size:.95rem}.mx-send{width:50px;height:50px}.mx-ib{width:38px;height:38px}
@media (max-width:860px){
  .mx-head{padding:8px 12px;gap:8px}.mx-hav img{width:42px;height:42px}.mx-hn b{font-size:1rem}.mx-hn span{font-size:.78rem}.mx-ab{width:38px;height:38px;border-radius:12px}.mx-ab svg{width:18px;height:18px}.mx-dots{width:26px}
  .mx-thread{padding:12px;gap:10px}.mx-bav{width:34px;height:34px}.mx-bw{max-width:80%}.mx-b{max-width:none;font-size:.88rem;padding:10px 14px;line-height:1.45}.mx-b time.in{display:none}
  .mx-bw time.out{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--muted);margin:3px 4px 0}.mx-row.me .mx-bw time.out{justify-self:end}.mx-row.me .ticks{color:var(--brand)}
  .mx-day{font-size:.78rem;padding:3px 16px}
  .mx-limg img{height:148px}.mx-lb{padding:10px 12px 2px}.mx-lt h3{font-size:.98rem}.mx-lp{font-size:.95rem}.mx-lloc{font-size:.82rem;margin:2px 0 6px}.mx-lf{font-size:.85rem;gap:14px}.mx-lact{padding:4px 12px 12px}.mx-vl{padding:8px;font-size:.88rem;height:38px}.mx-ext{width:38px;height:38px}
  .mx-quick>*{padding:9px 8px;font-size:.78rem;gap:6px;border-radius:10px}.mx-quick svg{width:18px;height:18px}
  .mx-comp{margin:6px 10px 10px;padding:4px 4px 4px 8px}.mx-comp input{font-size:.88rem;padding:8px 4px}.mx-ib{width:34px;height:34px}.mx-ib svg{width:20px;height:20px}.mx-send{width:42px;height:42px}
  .mx-sidehead h1{font-size:1.5rem}.mx-filters>*{height:40px}
}
.sf-mark .logo-svg{height:60px;width:auto;display:block}

/* ---- messages: the list column like before (title, new message button, search, tabs, list) ---- */
.mx-side{padding:18px 12px 8px}.mx-sidehead{padding:0 6px}.mx-hrow{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.mx-hrow h1{font-size:1.7rem;margin:0}
.mx-newi{width:44px;height:44px;border-radius:12px;background:var(--mx-me);color:#fff;display:grid;place-items:center;flex:none}.mx-newi:hover{filter:brightness(1.15)}
.mx-mode{margin:0 0 6px}.mx-mode button{padding:7px 6px;font-size:.92rem;white-space:nowrap}.mx-hint{margin:0 0 10px!important}
.mx-sidehead .mx-search{margin:0 0 10px}.mx-search[hidden]{display:none}
.mx-tabs{display:flex;gap:6px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border)}.mx-tabs button{flex:1;border:0;background:none;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;padding:8px 4px;border-radius:10px;white-space:nowrap;cursor:pointer}.mx-tabs button:hover{background:var(--surface)}.mx-tabs button.on{background:var(--soft);color:var(--head)}
.mx-convs{padding:0 2px 6px}
.mx-search input{font-size:.9rem}

/* ---- call screen on short windows ---- */
.cs-ring{width:clamp(120px,min(300px,50vw,34vh),300px)}.cs-voice h2{font-size:clamp(1.4rem,min(4vw,5.5vh),2.8rem)}.cs-voice p{font-size:clamp(.9rem,2.2vh,1.12rem)}.cs-voice{gap:clamp(4px,1.4vh,10px)}.cs-stage{padding:0 10px}
@media (max-height:760px){.cs-top{padding-top:14px;padding-bottom:6px}.cs-ic{width:54px;height:54px}.cs-bar{margin-bottom:20px;padding:12px 22px 10px}.cs-b em{font-size:.82rem}.cs-b{min-width:68px;gap:6px}}
@media (max-height:560px){.cs-ic{width:46px;height:46px}.cs-b em{display:none}.cs-bar{margin-bottom:10px;padding:10px 18px}}

/* ---- chat in the Faxton Homes style: chips, icon header, wallpaper, tails, call cards, rounded composer ---- */
.mx-tabs{gap:8px;border:0;padding-bottom:6px}.mx-tabs button{flex:0 0 auto;border:1px solid var(--border);border-radius:999px;padding:7px 16px;background:var(--card);color:var(--text);font-weight:500}.mx-tabs button:hover{background:var(--surface)}.mx-tabs button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-c);font-weight:700}
.mx-conv p{display:flex;align-items:center;gap:6px}.mx-conv p svg{flex:none;color:var(--muted)}
.mx-ab{width:44px;height:44px;padding:0;justify-content:center;border:0;background:none;border-radius:50%;color:var(--head)}.mx-ab:hover{background:var(--surface)}.mx-ab svg{color:var(--head)}.mx-ab span{display:none}
.mx-head .mx-hav img{width:46px;height:46px}
.mx-find{padding:8px 18px;border-bottom:1px solid var(--border);background:var(--card)}.mx-find[hidden]{display:none}.mx-find input{width:100%;height:38px;border:1px solid var(--border);border-radius:999px;padding:0 16px;background:var(--surface);color:var(--text);font:inherit;outline:0}
.mx-thread{background-color:var(--bg);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300' viewBox='0 0 300 300' fill='none' stroke='%2378928a' stroke-opacity='.16' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M24 78V50l22-20 22 20v28z M38 78V62h16v16'/><circle cx='122' cy='44' r='11'/><path d='M133 44h30v8h-8v-8M148 44v8'/><path d='M200 70c12-30 46-34 66-24-4 30-34 46-66 24z M204 66l50-26'/><path d='M30 188c12-30 46-34 66-24-4 30-34 46-66 24z M34 184l50-26'/><circle cx='142' cy='172' r='11'/><path d='M153 172h30v8h-8v-8M168 172v8'/><path d='M222 206V178l22-20 22 20v28z M236 206v-16h16v16'/><path d='M60 280c12-30 46-34 66-24-4 30-34 46-66 24z'/><circle cx='186' cy='268' r='11'/><path d='M197 268h30v8h-8v-8'/></svg>");background-size:300px}
.mx-day{background:var(--card);color:var(--head);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.mx-b{position:relative;border-radius:14px;box-shadow:0 1px 2px rgba(0,0,0,.1)}.mx-row:not(.me) .mx-b{background:var(--card);border-top-left-radius:4px;border-bottom-left-radius:14px}.mx-row.me .mx-b{background:var(--mx-me);border-top-right-radius:4px;border-bottom-right-radius:14px}
.mx-b:before{content:"";position:absolute;top:0;width:10px;height:12px;background:inherit}.mx-row:not(.me) .mx-b:before{left:-6px;clip-path:polygon(100% 0,0 0,100% 100%)}.mx-row.me .mx-b:before{right:-6px;clip-path:polygon(0 0,100% 0,0 100%)}
.mx-row .mx-bav{display:none}
.mx-cc{display:flex;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:14px;background:var(--card);box-shadow:0 1px 2px rgba(0,0,0,.1);min-width:min(340px,78%);max-width:min(420px,84%)}.mx-cc.me{background:var(--mx-me);color:#fff}
.mx-cc .mx-ci{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--brand);flex:none}.mx-cc.me .mx-ci{background:rgba(255,255,255,.16);color:#fff}.mx-cc.bad .mx-ci{background:rgba(239,59,59,.16);color:#ef5b5b}
.mx-cc>div{flex:1;min-width:0}.mx-cc b{display:block;font-size:1rem;color:inherit}.mx-cc small{display:block;opacity:.7;margin-top:2px}.mx-cc time{align-self:flex-end;font-size:.74rem;opacity:.7}
.mx-comp{gap:10px;margin:8px 16px 14px;padding:0;border:0;background:none}.mx-comp input{background:var(--card);border:1px solid var(--border);border-radius:999px;height:50px;padding:0 20px}
.mx-circ{width:46px;height:46px;border-radius:50%;background:var(--card);border:1px solid var(--border);color:var(--head)}
.mx-send{width:52px;height:52px;background:var(--brand);color:var(--brand-c);position:relative}.mx-send .mx-snd{display:none}.mx-send.has .mx-snd{display:grid}.mx-send.has .mx-mic{display:none}.mx-send .mx-mic,.mx-send .mx-snd{place-items:center}
.mx-micb{display:none!important}
@media (max-width:860px){.mx-ab.mx-d{display:none}.mx-ab{width:38px;height:38px}.mx-comp{margin:6px 10px 10px}.mx-comp input{height:44px;font-size:.9rem}.mx-circ{width:40px;height:40px}.mx-send{width:46px;height:46px}.mx-tabs button{padding:6px 13px}}

/* ---- call history rows in the Messages list ---- */
.mx-call{display:flex;align-items:center;gap:12px;padding:12px 6px;border-bottom:1px solid var(--border)}.mx-call:last-child{border-bottom:0}
.mx-av.ini{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#0f7a5a;color:#fff;font-weight:700;flex:none}
.mx-cm{flex:1;min-width:0}.mx-cm b{display:block;color:var(--head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-cm p{display:flex;align-items:center;gap:6px;margin:2px 0 0;color:var(--muted);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mx-cm p svg{flex:none}.mx-cm small{display:block;color:var(--muted);font-size:.78rem;margin-top:1px}
.mx-call.missed .mx-cm b,.mx-call.missed .mx-cm p{color:#ef5b5b}
.mx-cb{display:flex;gap:2px;flex:none}.mx-cb .mx-ib{width:38px;height:38px;color:var(--brand)}
.mx-conv{border-bottom:1px solid var(--border);border-radius:0}.mx-conv:last-child{border-bottom:0}.mx-conv.on{border-radius:12px;border-bottom-color:transparent}
@media (max-width:860px){.adm-side nav,.adm-side .adm-nav{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;gap:2px;scrollbar-width:none}.adm-side nav::-webkit-scrollbar{display:none}.adm-side nav a.item{flex:0 0 auto;min-width:78px}}
.hm-img{background-position:center 38%}

/* ---- notifications panel ---- */
.note-panel{position:fixed;z-index:480;width:min(380px,calc(100vw - 16px));max-height:min(560px,calc(100dvh - 90px));display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 22px 60px rgba(0,0,0,.35);overflow:hidden;animation:dlxIn .18s ease}
.np-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.np-head b{font-size:1.05rem;color:var(--head)}.np-head button{border:0;background:none;color:var(--brand);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.np-list{overflow-y:auto;flex:1;min-height:0}.np-item{display:flex;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border)}.np-item:last-child{border-bottom:0}.np-item.new{background:var(--soft)}
.np-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--muted);flex:none}.np-ic.verified{background:rgba(52,211,153,.16);color:var(--brand)}.np-ic.rejected{background:rgba(239,59,59,.16);color:#ef5b5b}.np-ic.info{background:rgba(96,165,250,.16);color:#60a5fa}
.np-item b{display:block;color:var(--head);font-size:.95rem}.np-item p{margin:2px 0 0;color:var(--text);font-size:.88rem;line-height:1.4}.np-item small{display:block;margin-top:4px;color:var(--muted);font-size:.78rem}
.np-empty{text-align:center;color:var(--muted);padding:34px 16px}.np-empty svg{color:var(--muted);margin-bottom:6px}
.np-foot{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border-top:1px solid var(--border);color:var(--brand);font-weight:600}.np-foot b{background:var(--brand);color:var(--brand-c);border-radius:999px;padding:1px 8px;font-size:.78rem}
@media (max-width:700px){.note-panel{left:8px!important;right:8px!important;width:auto}}

/* ---- in-call sound wave, and the phone call screen with labelled buttons ---- */
.cs-wave{display:flex;align-items:center;justify-content:center;gap:5px;height:56px;margin-top:10px;opacity:0;transition:opacity .4s}.cs-wave.live,.cs-wave.anim{opacity:1}
.cs-wave i{width:3px;height:56px;border-radius:2px;background:#34d399;transform:scaleY(.1);transform-origin:center;will-change:transform}
.cs-wave.anim i{animation:csWave 1.1s ease-in-out infinite}.cs-wave.anim i:nth-child(3n){animation-delay:.2s}.cs-wave.anim i:nth-child(3n+1){animation-delay:.45s}@keyframes csWave{50%{transform:scaleY(.8)}}
@media (max-width:700px){
  .cs-tn{display:none}.cs-top{justify-content:flex-end;min-height:0;padding:calc(16px + env(safe-area-inset-top)) 18px 0}
  .cs-minb{left:16px;top:calc(14px + env(safe-area-inset-top));width:50px;height:50px;background:rgba(255,255,255,.07)}
  .cs-voice h2,.cs-voice p{display:block}.cs-voice h2{font-size:1.9rem;font-weight:600}.cs-voice p{letter-spacing:.04em;font-size:1.15rem}
  .cs-ring{width:min(190px,48vw);margin-bottom:12px}.cs-pic{border:0;box-shadow:none;width:100%}
  .cs-bar{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:20px 14px;margin:0 8px calc(22px + env(safe-area-inset-bottom));padding:0;background:none;border:0;backdrop-filter:none;box-shadow:none}
  .cs-b em,#clShare.cs-b{display:grid}.cs-b em{display:block;font-size:.82rem}.cs-b{flex:0 0 76px;min-width:0;gap:8px}.cs-ic{width:68px;height:68px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.06)}.cs-ic svg{width:26px;height:26px}
  #clMute{order:1}#clCam{order:2}#clRecB{order:3}#clShare{order:4}#clEnd{order:5;flex:0 0 100%}.cs-b.end{justify-items:center}.cs-b.end .cs-ic{width:76px;height:76px}.cs-b.end em{display:block}
  .cs-bsep{display:none}
}

/* ---- chat: wallpaper, replies, pins, photos, drag and drop ---- */
.mx-thread{background-color:var(--bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='440' viewBox='0 0 480 440' fill='none' stroke='%237f958d' stroke-opacity='.30' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform=%22translate(12.0 16) rotate(-15 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(132.0 16) rotate(-8 16 16)%22%3E%3Ccircle cx=%229%22 cy=%229%22 r=%227%22/%3E%3Cpath d=%22M14 14 L30 30 M24 24 L29 19 M28 28 L32 24%22/%3E%3C/g%3E%3Cg transform=%22translate(252.0 16) rotate(-1 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(372.0 16) rotate(6 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3Cg transform=%22translate(30.0 126) rotate(13 16 16)%22%3E%3Ccircle cx=%2214%22 cy=%2213%22 r=%2212%22/%3E%3Cpath d=%22M14 25 V38 M14 31 L9 26 M14 28 L19 23%22/%3E%3C/g%3E%3Cg transform=%22translate(150.0 126) rotate(-10 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(270.0 126) rotate(-3 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3Cg transform=%22translate(390.0 126) rotate(4 16 16)%22%3E%3Cpath d=%22M3 36 V6 H21 V36 M0 36 H26 M21 14 H28 V36%22/%3E%3Cpath d=%22M8 12 H10 M14 12 H16 M8 19 H10 M14 19 H16 M8 26 H10 M14 26 H16%22/%3E%3C/g%3E%3Cg transform=%22translate(12.0 236) rotate(11 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(132.0 236) rotate(-12 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(252.0 236) rotate(-5 16 16)%22%3E%3Ccircle cx=%229%22 cy=%229%22 r=%227%22/%3E%3Cpath d=%22M14 14 L30 30 M24 24 L29 19 M28 28 L32 24%22/%3E%3C/g%3E%3Cg transform=%22translate(372.0 236) rotate(2 16 16)%22%3E%3Ccircle cx=%2214%22 cy=%2213%22 r=%2212%22/%3E%3Cpath d=%22M14 25 V38 M14 31 L9 26 M14 28 L19 23%22/%3E%3C/g%3E%3Cg transform=%22translate(30.0 346) rotate(9 16 16)%22%3E%3Cpath d=%22M3 36 V6 H21 V36 M0 36 H26 M21 14 H28 V36%22/%3E%3Cpath d=%22M8 12 H10 M14 12 H16 M8 19 H10 M14 19 H16 M8 26 H10 M14 26 H16%22/%3E%3C/g%3E%3Cg transform=%22translate(150.0 346) rotate(-14 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(270.0 346) rotate(-7 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(390.0 346) rotate(0 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3C/svg%3E");background-size:480px 440px}
:root[data-theme=dark] .mx-thread{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='440' viewBox='0 0 480 440' fill='none' stroke='%238fb3a5' stroke-opacity='.11' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform=%22translate(12.0 16) rotate(-15 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(132.0 16) rotate(-8 16 16)%22%3E%3Ccircle cx=%229%22 cy=%229%22 r=%227%22/%3E%3Cpath d=%22M14 14 L30 30 M24 24 L29 19 M28 28 L32 24%22/%3E%3C/g%3E%3Cg transform=%22translate(252.0 16) rotate(-1 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(372.0 16) rotate(6 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3Cg transform=%22translate(30.0 126) rotate(13 16 16)%22%3E%3Ccircle cx=%2214%22 cy=%2213%22 r=%2212%22/%3E%3Cpath d=%22M14 25 V38 M14 31 L9 26 M14 28 L19 23%22/%3E%3C/g%3E%3Cg transform=%22translate(150.0 126) rotate(-10 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(270.0 126) rotate(-3 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3Cg transform=%22translate(390.0 126) rotate(4 16 16)%22%3E%3Cpath d=%22M3 36 V6 H21 V36 M0 36 H26 M21 14 H28 V36%22/%3E%3Cpath d=%22M8 12 H10 M14 12 H16 M8 19 H10 M14 19 H16 M8 26 H10 M14 26 H16%22/%3E%3C/g%3E%3Cg transform=%22translate(12.0 236) rotate(11 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(132.0 236) rotate(-12 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(252.0 236) rotate(-5 16 16)%22%3E%3Ccircle cx=%229%22 cy=%229%22 r=%227%22/%3E%3Cpath d=%22M14 14 L30 30 M24 24 L29 19 M28 28 L32 24%22/%3E%3C/g%3E%3Cg transform=%22translate(372.0 236) rotate(2 16 16)%22%3E%3Ccircle cx=%2214%22 cy=%2213%22 r=%2212%22/%3E%3Cpath d=%22M14 25 V38 M14 31 L9 26 M14 28 L19 23%22/%3E%3C/g%3E%3Cg transform=%22translate(30.0 346) rotate(9 16 16)%22%3E%3Cpath d=%22M3 36 V6 H21 V36 M0 36 H26 M21 14 H28 V36%22/%3E%3Cpath d=%22M8 12 H10 M14 12 H16 M8 19 H10 M14 19 H16 M8 26 H10 M14 26 H16%22/%3E%3C/g%3E%3Cg transform=%22translate(150.0 346) rotate(-14 16 16)%22%3E%3Cpath d=%22M2 12 L16 1 L30 12 V30 H2 Z M13 30 V19 H19 V30%22/%3E%3Cpath d=%22M23 5 V9%22/%3E%3C/g%3E%3Cg transform=%22translate(270.0 346) rotate(-7 16 16)%22%3E%3Cpath d=%22M2 28 C0 12 14 2 32 2 C34 18 22 32 2 28 Z M4 26 L26 8%22/%3E%3C/g%3E%3Cg transform=%22translate(390.0 346) rotate(0 16 16)%22%3E%3Cpath d=%22M15 32 C15 32 2 20 2 12 A13 13 0 0 1 28 12 C28 20 15 32 15 32 Z%22/%3E%3Ccircle cx=%2215%22 cy=%2212%22 r=%224.5%22/%3E%3C/g%3E%3C/svg%3E")}
.mx-chat{position:relative}.mx-chat.drop:after{content:"Drop pictures to send";position:absolute;inset:8px;z-index:20;display:grid;place-items:center;border:2px dashed var(--brand);border-radius:16px;background:color-mix(in srgb,var(--bg) 80%,transparent);color:var(--head);font-weight:600;font-size:1.1rem;pointer-events:none}
.mx-row{position:relative}.mx-bw{position:relative}.mx-row.swipe:before{content:"";position:absolute;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:var(--soft)}
.mx-row.flash .mx-b{animation:mxFlash 1.4s ease}@keyframes mxFlash{0%,60%{box-shadow:0 0 0 3px var(--brand)}100%{box-shadow:0 1px 2px rgba(0,0,0,.1)}}
.mx-ma{position:absolute;top:2px;right:2px;width:24px;height:24px;border:0;border-radius:50%;background:color-mix(in srgb,currentColor 12%,transparent);color:inherit;display:none;place-items:center;cursor:pointer;opacity:.85}.mx-ma svg{transform:rotate(-90deg);transform:rotate(0)}.mx-b:hover .mx-ma{display:grid}
@media (hover:none){.mx-ma{display:none!important}}
.mx-rq{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--brand);border-radius:6px;background:rgba(0,0,0,.12);color:inherit;padding:6px 10px;margin:0 0 6px;font:inherit;cursor:pointer}.mx-rq b{display:block;font-size:.8rem;color:var(--brand)}.mx-row.me .mx-rq b{color:#9ff0cd}.mx-rq span{display:block;font-size:.85rem;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}
.mx-pic{display:block;max-width:min(300px,100%);max-height:320px;border-radius:10px;margin:0 0 4px;cursor:zoom-in;object-fit:cover}.mx-b.has-pic{padding:6px 6px 8px}.mx-b.has-pic .mx-tx{display:block;padding:4px 8px 0}.mx-b.has-pic time.in{margin-right:6px}
.mx-pin{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:1px solid var(--border);background:var(--card);color:var(--brand)}.mx-pin[hidden]{display:none}.mx-pt{flex:1;min-width:0;text-align:left;border:0;background:none;font:inherit;color:var(--text);cursor:pointer}.mx-pt b{display:block;font-size:.8rem;color:var(--brand)}.mx-pt span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.88rem}.mx-pu{width:30px;height:30px;border:0;border-radius:50%;background:none;color:var(--muted);display:grid;place-items:center;cursor:pointer}.mx-pu:hover{background:var(--surface)}
.mx-reply{display:flex;align-items:center;gap:10px;margin:6px 16px 0;padding:8px 12px;border-left:3px solid var(--brand);border-radius:10px;background:var(--card)}.mx-reply[hidden]{display:none}.mx-reply>div{flex:1;min-width:0}.mx-reply b{display:block;font-size:.8rem;color:var(--brand)}.mx-reply span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.88rem;color:var(--muted)}.mx-reply button{width:28px;height:28px;border:0;border-radius:50%;background:none;color:var(--muted);display:grid;place-items:center;cursor:pointer}
.mx-mm{position:absolute;z-index:30;min-width:150px}.mx-mm[hidden]{display:none}.mx-mm button{display:flex;align-items:center;gap:10px;width:100%;text-align:left}
@media (max-width:860px){.mx-reply{margin:6px 10px 0}.mx-pin{padding:7px 12px}.mx-thread{background-size:400px 367px}}

.mx-thread{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='560' viewBox='0 0 600 560' fill='none' stroke='%237f958d' stroke-opacity='.34' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform=%22translate(14 18) rotate(-12 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(164 18) rotate(1 18 18)%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%228%22/%3E%3Cpath d=%22M16 16 L34 34 M26 26 L32 20 M31 31 L36 26%22/%3E%3C/g%3E%3Cg transform=%22translate(314 18) rotate(-10 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(464 18) rotate(3 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3Cg transform=%22translate(36 158) rotate(-8 18 18)%22%3E%3Ccircle cx=%2216%22 cy=%2215%22 r=%2213%22/%3E%3Cpath d=%22M16 28 V42 M16 34 L10 28 M16 31 L22 25%22/%3E%3C/g%3E%3Cg transform=%22translate(186 158) rotate(5 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(336 158) rotate(-6 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3Cg transform=%22translate(486 158) rotate(7 18 18)%22%3E%3Cpath d=%22M3 40 V6 H24 V40 M0 40 H30 M24 15 H32 V40%22/%3E%3Cpath d=%22M9 13 H11 M16 13 H18 M9 21 H11 M16 21 H18 M9 29 H11 M16 29 H18%22/%3E%3C/g%3E%3Cg transform=%22translate(14 298) rotate(-4 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(164 298) rotate(9 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(314 298) rotate(-2 18 18)%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%228%22/%3E%3Cpath d=%22M16 16 L34 34 M26 26 L32 20 M31 31 L36 26%22/%3E%3C/g%3E%3Cg transform=%22translate(464 298) rotate(11 18 18)%22%3E%3Ccircle cx=%2216%22 cy=%2215%22 r=%2213%22/%3E%3Cpath d=%22M16 28 V42 M16 34 L10 28 M16 31 L22 25%22/%3E%3C/g%3E%3Cg transform=%22translate(36 438) rotate(0 18 18)%22%3E%3Cpath d=%22M3 40 V6 H24 V40 M0 40 H30 M24 15 H32 V40%22/%3E%3Cpath d=%22M9 13 H11 M16 13 H18 M9 21 H11 M16 21 H18 M9 29 H11 M16 29 H18%22/%3E%3C/g%3E%3Cg transform=%22translate(186 438) rotate(-11 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(336 438) rotate(2 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(486 438) rotate(-9 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3C/svg%3E");background-size:600px 560px}
:root[data-theme=dark] .mx-thread{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='560' viewBox='0 0 600 560' fill='none' stroke='%238fb3a5' stroke-opacity='.13' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg transform=%22translate(14 18) rotate(-12 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(164 18) rotate(1 18 18)%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%228%22/%3E%3Cpath d=%22M16 16 L34 34 M26 26 L32 20 M31 31 L36 26%22/%3E%3C/g%3E%3Cg transform=%22translate(314 18) rotate(-10 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(464 18) rotate(3 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3Cg transform=%22translate(36 158) rotate(-8 18 18)%22%3E%3Ccircle cx=%2216%22 cy=%2215%22 r=%2213%22/%3E%3Cpath d=%22M16 28 V42 M16 34 L10 28 M16 31 L22 25%22/%3E%3C/g%3E%3Cg transform=%22translate(186 158) rotate(5 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(336 158) rotate(-6 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3Cg transform=%22translate(486 158) rotate(7 18 18)%22%3E%3Cpath d=%22M3 40 V6 H24 V40 M0 40 H30 M24 15 H32 V40%22/%3E%3Cpath d=%22M9 13 H11 M16 13 H18 M9 21 H11 M16 21 H18 M9 29 H11 M16 29 H18%22/%3E%3C/g%3E%3Cg transform=%22translate(14 298) rotate(-4 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(164 298) rotate(9 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(314 298) rotate(-2 18 18)%22%3E%3Ccircle cx=%2210%22 cy=%2210%22 r=%228%22/%3E%3Cpath d=%22M16 16 L34 34 M26 26 L32 20 M31 31 L36 26%22/%3E%3C/g%3E%3Cg transform=%22translate(464 298) rotate(11 18 18)%22%3E%3Ccircle cx=%2216%22 cy=%2215%22 r=%2213%22/%3E%3Cpath d=%22M16 28 V42 M16 34 L10 28 M16 31 L22 25%22/%3E%3C/g%3E%3Cg transform=%22translate(36 438) rotate(0 18 18)%22%3E%3Cpath d=%22M3 40 V6 H24 V40 M0 40 H30 M24 15 H32 V40%22/%3E%3Cpath d=%22M9 13 H11 M16 13 H18 M9 21 H11 M16 21 H18 M9 29 H11 M16 29 H18%22/%3E%3C/g%3E%3Cg transform=%22translate(186 438) rotate(-11 18 18)%22%3E%3Cpath d=%22M2 14 L18 2 L34 14 V34 H2 Z M15 34 V22 H21 V34%22/%3E%3Cpath d=%22M27 5 V10%22/%3E%3C/g%3E%3Cg transform=%22translate(336 438) rotate(2 18 18)%22%3E%3Cpath d=%22M2 32 C0 14 16 2 36 2 C38 20 24 36 2 32 Z M5 29 L29 9%22/%3E%3C/g%3E%3Cg transform=%22translate(486 438) rotate(-9 18 18)%22%3E%3Cpath d=%22M18 2 C10 2 4 8 4 15 C4 24 18 36 18 36 C18 36 32 24 32 15 C32 8 26 2 18 2 Z%22/%3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%225%22/%3E%3C/g%3E%3C/svg%3E")}
@media (max-width:860px){.mx-thread{background-size:480px 448px}}

/* ---- chat in the dark design: curved backdrop, voice messages, files, call cards, unread line ---- */
:root[data-theme=dark] .mx-thread{background-image:linear-gradient(rgba(3,14,11,.30),rgba(3,14,11,.30)),url(../img/chat-wall-wide.webp);background-size:cover;background-position:center}
.mx-vn{display:flex;align-items:center;gap:12px;min-width:min(300px,60vw)}.mx-play{width:44px;height:44px;border-radius:50%;border:0;background:color-mix(in srgb,currentColor 14%,transparent);color:inherit;display:grid;place-items:center;flex:none;cursor:pointer}.mx-play svg{margin-left:2px}.mx-vn.playing .mx-play svg{display:none}.mx-vn.playing .mx-play:after{content:"";width:12px;height:14px;border-left:4px solid currentColor;border-right:4px solid currentColor}
.mx-wv{display:flex;align-items:center;gap:2px;height:34px;flex:1}.mx-wv i{flex:1;max-width:5px;min-width:2px;border-radius:2px;background:currentColor;opacity:.35}.mx-wv i.on{background:#34d399;opacity:1}.mx-row:not(.me) .mx-wv i.on{background:var(--brand)}
.mx-vd{font-size:.8rem;opacity:.75;align-self:flex-end;margin-bottom:2px;white-space:nowrap}.mx-b.has-vn{padding-right:14px}
.mx-file{display:flex;align-items:center;gap:12px;min-width:min(300px,64vw)}.mx-fi{width:46px;height:46px;border-radius:10px;background:color-mix(in srgb,currentColor 12%,transparent);display:grid;place-items:center;flex:none}.mx-file>div{flex:1;min-width:0}.mx-file b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.mx-file small{opacity:.7}.mx-dl{width:40px;height:40px;border-radius:50%;border:1.5px solid currentColor;color:inherit;display:grid;place-items:center;opacity:.85;flex:none}
.mx-cc{border-left:4px solid var(--brand);background:color-mix(in srgb,var(--card) 90%,transparent);border-radius:12px;text-align:left;font:inherit;color:var(--text);border-top:0;border-right:0;border-bottom:0;cursor:default;width:min(420px,84%)}
.mx-cc.me{background:color-mix(in srgb,var(--mx-me) 90%,transparent);color:#fff;border-left-color:#34d399}.mx-cc.ok .mx-ci{background:rgba(52,211,153,.14);color:var(--brand)}
.mx-cc.bad{border-left-color:#ef4b4b;background:rgba(120,30,38,.16);cursor:pointer}.mx-cc.bad .mx-ci{background:rgba(239,59,59,.14);color:#ef5b5b}.mx-cc.bad b{color:#ff8d8d}.mx-cc small{display:block}
.mx-unread{display:flex;align-items:center;gap:14px;color:var(--brand)}.mx-unread:before,.mx-unread:after{content:"";height:1px;flex:1;background:color-mix(in srgb,var(--brand) 45%,transparent)}.mx-unread span{border:1px solid color-mix(in srgb,var(--brand) 45%,transparent);border-radius:999px;padding:6px 18px;font-size:.88rem;background:color-mix(in srgb,var(--card) 80%,transparent)}
.mx-rec{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:0 6px}.mx-rec[hidden]{display:none}.mx-rec>button{width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;flex:none;color:var(--muted);background:var(--card)}.mx-rec .mx-recsend{background:var(--brand);color:var(--brand-c);width:52px;height:52px}
.mx-rdot{width:10px;height:10px;border-radius:50%;background:#ef4b4b;animation:csDot 1s infinite;flex:none}#recT{font-variant-numeric:tabular-nums;color:var(--head);min-width:38px}
.mx-live{display:flex;align-items:center;gap:3px;height:34px;flex:1;min-width:0;overflow:hidden}.mx-live i{width:3px;height:8%;border-radius:2px;background:var(--brand);flex:none;transition:height .1s}
.mx-comp.recording>:not(.mx-rec){display:none!important}
.mx-send .mx-snd{display:none}.mx-send.has .mx-snd{display:grid}.mx-send.has .mx-mic{display:none}
/* call screen background on computers */
@media (min-width:701px){.cs-ov{background:#031a13 url(../img/chat-wall-wide.webp) center/cover no-repeat}.cs-ov:before,.cs-ov:after{display:none}}

/* ---- profile card (tap a picture) and the verified tick ---- */
.vseal{display:inline-block;vertical-align:-3px;flex:none}
.pf-ov{position:fixed;inset:0;z-index:470;background:rgba(2,10,8,.62);backdrop-filter:blur(3px);display:grid;place-items:center;padding:16px;animation:dlxIn .18s ease}
.pf-sheet{position:relative;width:min(470px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;border-radius:26px;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--border));background:var(--bg);color:var(--text);box-shadow:0 30px 80px rgba(0,0,0,.5);scrollbar-width:thin}
:root[data-theme=dark] .pf-sheet{background:linear-gradient(180deg,#0d1f1c,#091613)}
.pf-cover{height:150px;background:radial-gradient(500px 220px at 30% 0,rgba(52,211,153,.28),transparent 70%),linear-gradient(135deg,#0b3d2e,#06251c);background-size:cover;background-position:center;position:relative}
.pf-x,.pf-m{position:absolute;top:14px;width:42px;height:42px;border-radius:50%;border:0;background:rgba(0,0,0,.28);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}.pf-x{left:14px}.pf-more{position:absolute;right:14px;top:0}.pf-m{right:0;left:auto}.pf-menu{position:absolute;right:0;top:54px;min-width:170px}.pf-menu[hidden]{display:none}.pf-menu button{display:flex;gap:10px;align-items:center;width:100%;text-align:left}
.pf-body{padding:0 18px 22px;text-align:center}
.pf-av{position:relative;width:132px;height:132px;margin:-66px auto 10px;border-radius:50%;border:3px solid color-mix(in srgb,var(--brand) 45%,#2a3a36);background:#0a1512;display:grid;place-items:center;font-size:2.6rem;font-weight:700;color:#fff}.pf-av img{width:100%;height:100%;object-fit:cover;border-radius:50%}.pf-av>span:not(.pf-vb){display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 35% 25%,#3ee6ab,#0f7a5a 72%)}
.pf-vb{position:absolute;right:-2px;bottom:6px;width:34px;height:34px;border-radius:50%;background:var(--bg);display:grid;place-items:center}
.pf-body h2{font-size:1.7rem;margin:4px 0 2px;color:var(--head);display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}.pf-role{margin:0;color:var(--muted)}.pf-about{margin:8px auto 0;max-width:36ch;color:var(--muted);font-size:.95rem;line-height:1.45}
.pf-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:10px;margin:18px 0 14px}.pf-t{display:grid;justify-items:center;gap:8px;padding:14px 6px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 85%,transparent);color:var(--head);font:inherit;font-size:.9rem;cursor:pointer}.pf-t svg{color:var(--brand)}.pf-t:hover{background:var(--surface)}
.pf-card{text-align:left;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--card) 85%,transparent);margin-top:10px;overflow:hidden}
.pf-r{display:flex;align-items:center;gap:14px;width:100%;padding:13px 14px;border:0;border-top:1px solid var(--border);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.pf-card>.pf-r:first-child,.pf-prod>.pf-r:first-child{border-top:0}.pf-r:hover{background:var(--surface)}
.pf-ri{width:38px;height:38px;border-radius:50%;background:var(--surface);display:grid;place-items:center;color:var(--head);flex:none}.pf-rt{flex:1;min-width:0}.pf-rt b{display:block;font-weight:500;color:var(--head)}.pf-rt small{display:block;color:var(--muted);font-size:.86rem;margin-top:2px}.pf-r em{font-style:normal;color:var(--muted);font-size:.9rem}.pf-r>svg:last-child{color:var(--muted);transform:rotate(-90deg);flex:none}
.pf-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 12px 14px}.pf-thumbs img{width:100%;aspect-ratio:1.1;object-fit:cover;border-radius:10px;display:block}
@media (max-width:700px){.pf-ov{padding:0;place-items:stretch}.pf-sheet{width:100%;max-height:100dvh;border-radius:0;border:0}.pf-cover{height:140px}}
.pf-av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.pf-av>span:not(.pf-vb){position:absolute;inset:0}
.pf-tiles{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}@media (max-width:700px){.pf-t{font-size:.8rem;padding:12px 4px}}

/* ---- emoji reactions ---- */
.mx-rx{display:flex;flex-wrap:wrap;gap:4px;margin:-4px 6px 0;position:relative;z-index:1}.mx-row.me .mx-rx{justify-content:flex-end}
.mx-rx button{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border);border-radius:999px;background:var(--card);color:var(--text);padding:2px 8px;font-size:.95rem;line-height:1.3;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.18)}.mx-rx button b{font-size:.78rem;font-weight:600;color:var(--muted)}.mx-rx button.mine{border-color:var(--brand);background:var(--soft)}
.mx-react{display:flex;gap:2px;padding:6px 6px 8px;border-bottom:1px solid var(--border);margin-bottom:4px}.mx-react button{width:36px;height:36px;border:0;border-radius:50%;background:none;font-size:1.3rem;display:grid;place-items:center;cursor:pointer;padding:0}.mx-react button:hover,.mx-react button.on{background:var(--soft)}
.mx-rmore{display:flex;flex-wrap:wrap;gap:2px;padding:4px 6px 8px;max-width:244px;border-bottom:1px solid var(--border);margin-bottom:4px}.mx-rmore[hidden]{display:none}.mx-rmore button{width:36px;height:36px;border:0;border-radius:8px;background:none;font-size:1.25rem;display:grid;place-items:center;cursor:pointer;padding:0}.mx-rmore button:hover{background:var(--soft)}
.mx-mm{min-width:250px}
.pf-r.flat{cursor:default}.pf-r.flat:hover{background:none}.pf-r.flat[data-k]{pointer-events:none}
/* the cover fades into the card instead of ending in a hard edge */
.pf-cover{-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent);height:170px}
.pf-x,.pf-more{z-index:3}.pf-cover{overflow:visible}
.pf-body{margin-top:-30px;position:relative;padding-top:0}.pf-av{margin-top:0}
.pf-t span{white-space:nowrap}
.pf-body{margin-top:0}.pf-av{margin-top:-66px}

/* ---- Admin > Call setup ---- */
.cr-card{padding:22px;max-width:860px}.cr-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.cr-head h3{font-size:1.35rem}
.cr-chip{background:rgba(52,211,153,.14);color:var(--brand);border-radius:10px;padding:7px 14px;font-weight:600;font-size:.9rem}.cr-chip.off{background:var(--surface);color:var(--muted)}
.cr-card .field{display:block;margin:12px 0}.cr-l{display:block;font-weight:600;color:var(--head);margin-bottom:6px}.cr-card input{width:100%}
.cr-ok{color:var(--brand);font-weight:600;margin:8px 0}.cr-ok[hidden]{display:none}

/* ---- phone polish: dark mode on the home page, filters, tabs, notices ---- */
:root[data-theme=dark] .dsh-vf{color:#f3d9a0;background:rgba(245,158,11,.1)}:root[data-theme=dark] .dsh-vf b{color:#ffe7b3}:root[data-theme=dark] .dsh-vf .vf-ic{color:#f6b73c;background:rgba(245,158,11,.2)}
.dsh-tbl td[colspan]{white-space:normal}
@media (max-width:860px){
  :root[data-theme=dark] .hmm-hero{background:linear-gradient(90deg,#0c181e 24%,rgba(12,24,30,.82) 58%,rgba(12,24,30,.35) 100%),url(../img/hero-hd.webp) 78% 25%/cover}
  :root[data-theme=dark] .hmm-text h1,:root[data-theme=dark] .hmc-p{color:var(--head)!important}
  :root[data-theme=dark] .hmm-text p{color:#b9c9cf}:root[data-theme=dark] .hmm-eye{color:#9fd8c2}
  :root[data-theme=dark] .hmm-search{background:var(--card);border-color:var(--border)}:root[data-theme=dark] .hmm-search input{color:var(--text)}:root[data-theme=dark] .hmm-si{color:var(--head)}:root[data-theme=dark] .hmm-search button{background:var(--brand);color:var(--brand-c)}
  :root[data-theme=dark] .hmm-chips a,:root[data-theme=dark] .hmm-all{background:var(--card);color:var(--head);border:1px solid var(--border)}
  :root[data-theme=dark] .hmm-sec h2{color:var(--head)}
  .filters{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;overflow:visible!important;margin:0 0 12px!important;padding:0!important}.filters .fsel{min-width:0;width:100%}.filters .fsel select{min-width:0;width:100%}.filters .sort{grid-column:1/-1}.filters .more{grid-column:1/-1}.filters .more>button{width:100%;justify-content:center}
  .rn-tabs{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.rn-tabs::-webkit-scrollbar{display:none}.rn-tabs a{flex:0 0 auto;padding-inline:14px}
  #dt{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}#dt::-webkit-scrollbar{display:none}#dt button{flex:0 0 auto;white-space:nowrap}
}

/* ---- True cost of renting ---- */
.tc{margin-top:26px;border:1px solid var(--border);background:var(--card);border-radius:18px;padding:22px}
.tc-head h2{display:flex;align-items:center;gap:10px;font-size:1.3rem}.tc-head h2 .ic{color:var(--brand)}.tc-head p{margin-top:4px}
.tc-bar{display:flex;gap:3px;height:12px;border-radius:99px;overflow:hidden;margin:18px 0 6px}.tc-bar i{display:block;min-width:6px}
.tc-rows{list-style:none;margin:8px 0 0;padding:0}.tc-rows li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}
.tc-dot{width:10px;height:10px;border-radius:50%;flex:none}.tc-t{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;color:var(--text)}
.tc-t small{font-size:.76rem;font-weight:600;padding:2px 9px;border-radius:99px;background:var(--surface);color:var(--muted)}.tc-t small.ok{background:var(--soft);color:var(--soft-t)}
.tc-rows b{color:var(--head);font-variant-numeric:tabular-nums;white-space:nowrap}
.tc-total{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:16px 18px;border-radius:14px;background:var(--soft);color:var(--soft-t);font-weight:700}
.tc-total b{font-size:1.5rem;color:var(--head);font-family:var(--font-display);letter-spacing:-.02em}
.tc-sub{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.tc-sub>div{border:1px solid var(--border);border-radius:14px;padding:14px;display:grid;gap:2px}
.tc-sub small,.tc-due small{color:var(--muted);font-weight:600}.tc-sub b{font-size:1.2rem;color:var(--head)}.tc-sub span{font-size:.84rem;color:var(--muted)}
.tc-plan{margin-top:20px}.tc-plan h4{margin-bottom:10px}.tc-plan .dt-plans{display:flex;flex-wrap:wrap;gap:8px}
.tc-due{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.tc-due>div{display:grid;gap:2px;padding:14px;border-radius:14px;background:var(--surface)}.tc-due b{color:var(--head);font-size:1.1rem}
.tc-note{margin-top:12px;font-size:.85rem}
.sc-tc{display:inline-flex;align-items:center;gap:6px;margin:-4px 0 14px;font-size:.88rem;font-weight:600;color:var(--brand)}.sc-tc:hover{text-decoration:underline}
@media (max-width:560px){.tc{padding:16px}.tc-sub,.tc-due{grid-template-columns:1fr}.tc-total b{font-size:1.3rem}}

/* ---- Neighbourhood intelligence ---- */
.nh-head h2{display:flex;align-items:center;gap:10px;font-size:1.3rem}.nh-head h2 .ic{color:var(--brand)}.nh-head p{margin:6px 0 16px}
.nh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.nh-t{display:flex;gap:12px;padding:14px;border:1px solid var(--border);background:var(--card);border-radius:14px;min-width:0}.nh-t>div{min-width:0}
.nh-t small{display:block;color:var(--muted);font-weight:600;font-size:.82rem}.nh-t b{display:block;color:var(--head);font-size:1.05rem;margin:1px 0 4px}.nh-t p{font-size:.85rem;color:var(--muted);line-height:1.4}
.nh-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;flex:none;background:var(--soft);color:var(--soft-t)}
.nh-ic.good{background:var(--soft);color:var(--soft-t)}.nh-ic.mid{background:var(--warn-bg);color:#b7791f}.nh-ic.bad{background:var(--danger-bg);color:var(--danger)}
:root[data-theme=dark] .nh-ic.mid{color:#f3c76b}
.nh-sec{margin-top:22px;border:1px solid var(--border);background:var(--card);border-radius:16px;padding:18px}
.nh-sh{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.nh-sh h3{display:flex;align-items:center;gap:8px;font-size:1.1rem}.nh-sh h3 .ic{color:var(--brand)}
.nh-pick{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted);font-weight:600}.nh-pick select{width:auto;padding:8px 10px}
.nh-cm{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.nh-cm>div{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:var(--surface);min-width:0}.nh-cm small{display:block;color:var(--muted);font-size:.8rem;font-weight:600}.nh-cm b{color:var(--head)}
.nh-fine{margin-top:10px;font-size:.82rem}
.nh-near{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.nh-c{border:1px solid var(--border);border-radius:14px;padding:14px;min-width:0}.nh-ch{display:flex;align-items:center;gap:10px;margin-bottom:8px}.nh-ch>span{color:var(--brand);display:grid}.nh-ch b{flex:1;color:var(--head)}.nh-ch em{font-style:normal;font-size:.78rem;font-weight:600;color:var(--soft-t);background:var(--soft);padding:2px 9px;border-radius:99px}
.nh-c ul{list-style:none;margin:0;padding:0}.nh-c li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid var(--border);font-size:.9rem}.nh-c li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nh-c li b{color:var(--muted);font-weight:600;white-space:nowrap}
.nh-c li.none{color:var(--muted)}.nh-c li.sk{height:30px;border-radius:8px;background:linear-gradient(90deg,var(--surface),var(--soft),var(--surface));background-size:200% 100%;animation:sk 1.2s linear infinite;border-top:0;margin-top:6px}
@keyframes sk{to{background-position:-200% 0}}
@media (max-width:640px){.nh-cm{grid-template-columns:1fr}.nh-sec{padding:14px}.nh-pick{width:100%}.nh-pick select{flex:1}}
.tc-plan .dt-plans{display:flex;flex-wrap:wrap;gap:8px;background:none;border:0;padding:0}.tc-plan .dt-plans button{padding:9px 16px;border-radius:99px;border:1.5px solid var(--border);background:var(--card);color:var(--text);font-weight:600}
.tc-plan .dt-plans button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-c)}
.am-pick{display:flex;flex-wrap:wrap;gap:8px}.am-pick label{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:99px;font-weight:500;font-size:.88rem;background:var(--card);cursor:pointer}.am-pick input{width:auto;margin:0}

/* ---- Make an offer ---- */
.sc-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sc-two .btn{padding:13px 8px;font-size:.92rem;gap:6px;min-width:0;white-space:normal;line-height:1.2;text-align:center}
.of-ban{display:flex;align-items:center;gap:10px;margin-top:10px;padding:12px 14px;border-radius:12px;background:var(--warn-bg);color:var(--head);font-size:.9rem}.of-ban span{flex:1;min-width:0;display:grid}.of-ban small{color:var(--muted)}
.of-ban.accepted{background:var(--soft)}.of-ban.countered{background:var(--info-bg)}
.of-dlg{display:grid;gap:4px;min-width:min(440px,86vw)}.of-dlg h2{display:flex;align-items:center;gap:10px}.of-dlg h2 .ic{color:var(--brand)}.of-dlg>p.muted{margin-bottom:8px}
.of-ask{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:var(--surface);margin-bottom:12px}.of-ask b{color:var(--head)}
.of-in{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border);border-radius:12px;padding:0 14px;background:var(--card)}.of-in:focus-within{border-color:var(--brand)}.of-in span{font-weight:700;color:var(--head)}.of-in input{border:0;background:none;padding:14px 0;font-size:1.25rem;font-weight:700;outline:0}
.of-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:2px 0 12px}.of-chips button{display:grid;gap:2px;padding:8px 4px;border:1px solid var(--border);border-radius:10px;background:var(--card);font-weight:700;font-size:.85rem;color:var(--head)}.of-chips button small{font-weight:500;color:var(--muted);font-size:.72rem}.of-chips button:hover{border-color:var(--brand)}
.of-sum{display:grid;gap:8px;margin-bottom:10px}.of-sum>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;padding:10px 14px;border-radius:12px;background:var(--soft);color:var(--soft-t);font-size:.92rem}.of-sum b{color:var(--head)}.of-sum small{color:var(--muted);width:100%;text-align:right}
.of-warn{padding:10px 14px;border-radius:12px;background:var(--warn-bg);color:var(--head);font-size:.88rem}
.of-agreed{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--soft);color:var(--soft-t);font-weight:600;font-size:.9rem;margin-bottom:8px}
.of-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,430px),1fr));align-items:start}
.of-card{border:1px solid var(--border);background:var(--card);border-radius:18px;padding:18px;display:grid;gap:14px;min-width:0}
.of-card header{display:flex;align-items:center;gap:12px}.of-card header img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:none}.of-card header>div{flex:1;min-width:0}.of-card h3{font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.of-card header p{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.of-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.of-nums>div{padding:10px 12px;border-radius:12px;background:var(--surface);min-width:0}.of-nums small{display:block;color:var(--muted);font-size:.78rem;font-weight:600}.of-nums b{display:block;color:var(--head);font-size:.98rem;overflow-wrap:anywhere}.of-nums em{font-style:normal;font-size:.78rem;font-weight:700;color:var(--soft-t)}
.of-state{display:flex;align-items:center;gap:8px;font-size:.92rem;color:var(--muted);font-weight:600}.of-state.me{color:var(--brand-d)}
.of-tl{list-style:none;margin:0;padding:0 0 0 4px;display:grid;gap:0}.of-tl li{position:relative;display:flex;gap:12px;padding:0 0 14px}.of-tl li:last-child{padding-bottom:0}.of-tl li::before{content:"";position:absolute;left:5px;top:14px;bottom:-2px;width:2px;background:var(--border)}.of-tl li:last-child::before{display:none}
.of-tl i{width:12px;height:12px;border-radius:50%;background:var(--brand);margin-top:5px;flex:none;position:relative;z-index:1}.of-tl li.counter i{background:#f3a712}.of-tl li.decline i,.of-tl li.withdraw i{background:var(--danger)}
.of-tl b{display:block;color:var(--head);font-size:.93rem}.of-tl p{font-size:.88rem;color:var(--muted);font-style:italic}.of-tl small{color:var(--muted);font-size:.78rem}
.of-act{display:flex;flex-wrap:wrap;gap:8px}.of-act .btn{flex:1 1 auto;padding:11px 14px;font-size:.92rem}
@media (max-width:520px){.of-nums{grid-template-columns:1fr 1fr}.of-nums>div:last-child{grid-column:1/-1}.of-chips{grid-template-columns:repeat(2,1fr)}.of-card{padding:14px}}
.of-card,.of-dlg,.of-sum,.tc,.nh{grid-template-columns:minmax(0,1fr)}
.of-card>*{min-width:0}.of-act .btn{min-width:0}
.of-card h3{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.of-card header p{white-space:normal}

/* ---- Viewing safety ---- */
.vs-trust{margin-top:18px;padding:16px;border:1px dashed var(--brand);border-radius:14px;background:var(--soft)}.vs-trust h3{display:flex;align-items:center;gap:8px;font-size:1.02rem;color:var(--soft-t)}.vs-trust p{margin:6px 0 12px;font-size:.9rem}
.vs-h3{margin:18px 0 10px;font-size:1.05rem}
.vs-id{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:var(--card)}.vs-id.ok{border-color:rgba(19,146,111,.45);background:var(--soft)}.vs-id.no{background:var(--warn-bg);border-color:transparent}
.vs-id .avatar{width:46px;height:46px}.vs-id>div{flex:1;min-width:0}.vs-id b{display:flex;align-items:center;gap:6px;color:var(--head)}.vs-id small{display:block;color:var(--muted);font-size:.82rem;line-height:1.35;margin-top:2px}.vs-id.sm .avatar{width:38px;height:38px}
.vs-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:99px;font-size:.76rem;font-weight:700;background:var(--brand);color:var(--brand-c);white-space:nowrap}.vs-chip.warn{background:#f3a712;color:#2b1d00}
.vs-tips{margin-top:14px;border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--card)}.vs-tips summary{cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:600;color:var(--head)}.vs-tips ul{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;font-size:.9rem;color:var(--muted)}
.vw-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));align-items:start}
.vw-card{border:1px solid var(--border);background:var(--card);border-radius:18px;padding:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.vw-card header{display:flex;gap:12px;align-items:flex-start}.vw-card header img{width:68px;height:68px;border-radius:12px;object-fit:cover;flex:none}.vw-card header>div:nth-child(2){flex:1;min-width:0}.vw-card h3{font-size:1.05rem}.vw-card header p{font-size:.88rem}.vw-when{color:var(--head);font-weight:600;margin-top:4px}
.vw-st{display:grid;gap:6px;justify-items:end}
.vs-box{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface)}.vs-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.vs-head h4{display:flex;align-items:center;gap:8px;color:var(--head)}.vs-head h4 .ic{color:var(--brand)}
.vs-sosbtn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:99px;border:0;background:var(--danger);color:#fff;font-weight:700;font-size:.85rem;box-shadow:0 0 0 0 rgba(217,45,75,.5);animation:vsp 2.4s infinite}
@keyframes vsp{70%{box-shadow:0 0 0 10px rgba(217,45,75,0)}100%{box-shadow:0 0 0 0 rgba(217,45,75,0)}}
.vs-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}.vs-steps li{display:flex;align-items:center;gap:12px}.vs-steps li>div{flex:1;min-width:0}.vs-steps b{display:block;color:var(--head);font-size:.95rem}.vs-steps small{color:var(--muted);font-size:.82rem}
.vs-steps i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700;font-size:.8rem;background:var(--card);border:1.5px solid var(--border);color:var(--muted);flex:none}.vs-steps li.ok i{background:var(--brand);border-color:var(--brand);color:var(--brand-c)}
.vs-steps .btn{flex:none}
.vs-late{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;border-radius:12px;background:var(--danger-bg);margin-bottom:12px;color:var(--head)}.vs-late>div{flex:1;min-width:160px}.vs-late small{display:block;color:var(--muted)}
.vs-sos{display:grid;gap:10px;min-width:min(420px,86vw)}.vs-sos h2{text-align:center}.vs-sos>p{text-align:center}.vs-sosi{width:60px;height:60px;border-radius:50%;background:var(--danger-bg);color:var(--danger);display:grid;place-items:center;margin:0 auto}
.vs-act{display:flex;align-items:center;gap:14px;width:100%;padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--card);text-align:left;color:var(--head)}.vs-act:hover{border-color:var(--brand)}.vs-act>span{width:44px;height:44px;border-radius:12px;background:var(--soft);color:var(--soft-t);display:grid;place-items:center;flex:none}.vs-act b{display:block}.vs-act small{color:var(--muted);font-size:.84rem}
.vs-act.red{background:var(--danger);border-color:var(--danger);color:#fff}.vs-act.red>span{background:rgba(255,255,255,.2);color:#fff}.vs-act.red small{color:rgba(255,255,255,.85)}
.vs-sent{display:flex;align-items:center;gap:8px;justify-content:center;color:var(--soft-t);font-weight:600;font-size:.9rem}
@media (max-width:520px){.vw-card{padding:14px}.vs-steps li{flex-wrap:wrap}.vs-steps li>div{flex-basis:calc(100% - 50px)}.vs-steps .btn{margin-left:38px}.vs-id{flex-wrap:wrap}.vs-chip{margin-left:50px}}
.vs-sos,.of-dlg{min-width:min(420px,calc(100vw - 88px))}
.vs-id{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px}.vs-id>div{flex:none}
@media (max-width:520px){.vs-id{grid-template-columns:auto minmax(0,1fr)}.vs-chip{grid-column:2;justify-self:start;margin:6px 0 0}.vs-steps li{flex-wrap:nowrap}.vs-steps li>div{flex-basis:auto}.vs-steps .btn{margin-left:0;padding:8px 12px}}

/* ---- Smart Home Match ---- */
.mm-ban{display:flex;align-items:center;gap:16px;margin:26px 0;padding:18px 22px;border-radius:20px;background:linear-gradient(120deg,#0b3d2e,#13926f);color:#fff;box-shadow:var(--shadow);transition:transform .15s}.mm-ban:hover{transform:translateY(-2px)}
.mm-bi{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.16);display:grid;place-items:center;flex:none}.mm-bt{flex:1;min-width:0;display:grid;gap:2px}.mm-bt b{font-size:1.15rem;font-family:var(--font-display)}.mm-bt small{color:rgba(255,255,255,.82);font-size:.92rem;line-height:1.4}
.mm-bg{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:12px;background:#fff;color:#0b3d2e;font-weight:700;white-space:nowrap}
.mm-ban.slim{margin:0 0 16px;padding:12px 16px}.mm-ban.slim .mm-bi{width:40px;height:40px;border-radius:12px}.mm-ban.slim .mm-bt small{display:none}.mm-ban.slim .mm-bt b{font-size:1rem}
:root[data-theme=dark] .mm-ban{background:linear-gradient(120deg,#0f3a35,#146a54)}
@media (max-width:640px){.mm-ban{flex-wrap:wrap;padding:16px;margin:18px 0}.mm-bg{width:100%;justify-content:center}.mm-ban.slim .mm-bg{display:none}.mm-ban.slim{padding:12px 14px}}
.mm-pg{max-width:880px;padding-top:18px;padding-bottom:50px}
.mm-card{border:1px solid var(--border);background:var(--card);border-radius:24px;padding:clamp(18px,3vw,34px);box-shadow:var(--shadow)}
.mm-top{display:flex;justify-content:space-between;align-items:center;min-height:34px}.mm-back{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--brand-d);font-weight:600;padding:6px 0}.mm-count{color:var(--muted);font-size:.9rem;font-weight:600;margin-left:auto}
.mm-bar{height:6px;border-radius:99px;background:var(--surface);overflow:hidden;margin:8px 0 22px}.mm-bar i{display:block;height:100%;background:var(--brand);border-radius:99px;transition:width .3s}
.mm-card h1{font-size:clamp(1.6rem,3.4vw,2.2rem)}.mm-d{margin:8px 0 0}.mm-body{margin-top:22px}.mm-sub{margin:16px 0 10px;font-weight:600;color:var(--head)}
.mm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.mm-grid.c1{grid-template-columns:minmax(0,1fr)}.mm-grid.c5{grid-template-columns:repeat(5,1fr)}.mm-grid.c4{grid-template-columns:repeat(4,1fr)}
.mm-o{position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;border:1.5px solid var(--border);background:var(--card);text-align:left;min-width:0;transition:border-color .15s,background .15s}.mm-o:hover{border-color:var(--brand)}
.mm-o b{display:block;color:var(--head)}.mm-o small{display:block;color:var(--muted);font-size:.84rem;margin-top:2px}.mm-o>span:not(.mm-oi){flex:1;min-width:0}
.mm-oi{width:42px;height:42px;border-radius:12px;background:var(--soft);color:var(--soft-t);display:grid;place-items:center;flex:none}
.mm-o>i{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border);display:grid;place-items:center;color:transparent;flex:none}
.mm-o.on{border-color:var(--brand);background:var(--soft)}.mm-o.on>i{background:var(--brand);border-color:var(--brand);color:var(--brand-c)}
.mm-grid.c5 .mm-o,.mm-grid.c4 .mm-o{justify-content:center;text-align:center;padding:16px 8px}.mm-grid.c5 .mm-o>i,.mm-grid.c4 .mm-o>i{display:none}
.mm-or{display:grid;gap:8px;margin-top:18px;font-weight:600;color:var(--head)}
.mm-chips{display:flex;flex-wrap:wrap;gap:10px}.mm-c{padding:11px 18px;border-radius:99px;border:1.5px solid var(--border);background:var(--card);font-weight:600;color:var(--head)}.mm-c.on{background:var(--brand);border-color:var(--brand);color:var(--brand-c)}
.mm-nav{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.mm-nav .btn{min-width:120px}
@media (max-width:560px){.mm-grid{grid-template-columns:minmax(0,1fr)}.mm-grid.c5{grid-template-columns:repeat(3,1fr)}.mm-grid.c4{grid-template-columns:repeat(2,1fr)}.mm-o{padding:14px}.mm-nav .btn{flex:1}}
.mm-rh{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.mm-eye{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:99px;background:var(--soft);color:var(--soft-t);font-weight:700;font-size:.82rem;margin-bottom:10px}.mm-rh h1{font-size:clamp(1.6rem,3.4vw,2.3rem)}
.mm-sum{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}.mm-sum span{padding:6px 12px;border-radius:99px;background:var(--surface);border:1px solid var(--border);font-size:.85rem;font-weight:600;color:var(--head)}
.mm-list{display:grid;gap:16px}
.mm-r{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;border:1px solid var(--border);background:var(--card);border-radius:20px;overflow:hidden;cursor:pointer;transition:box-shadow .15s,transform .15s}.mm-r:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.mm-img{position:relative;min-height:200px}.mm-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mm-best{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:99px;background:#f3a712;color:#2b1d00;font-weight:800;font-size:.78rem}
.mm-rb{padding:18px;min-width:0;display:grid;gap:8px;align-content:start}.mm-rt{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.mm-rt h3{font-size:1.15rem}.mm-rt .muted{font-size:.9rem}
.mm-score{--c:var(--brand);width:64px;height:64px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--c) calc(var(--p) * 1%),var(--surface) 0);position:relative}.mm-score::before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--card)}
.mm-score b{position:relative;font-size:1.15rem;color:var(--head);font-family:var(--font-display)}.mm-score small{font-size:.65rem;font-weight:700}
.mm-score.good{--c:#13926f}.mm-score.ok{--c:#f3a712}.mm-score.low{--c:#e2704a}.mm-score.top{--c:#0ea66e}
.mm-price{color:var(--muted);font-size:.92rem}.mm-price b{color:var(--head);font-size:1.1rem}.mm-v{font-weight:700;font-size:.88rem}.mm-v.top,.mm-v.good{color:var(--soft-t)}.mm-v.ok{color:#b7791f}.mm-v.low{color:#c2410c}
:root[data-theme=dark] .mm-v.ok{color:#f3c76b}
.mm-why{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:5px;font-size:.9rem}.mm-why li{display:flex;gap:8px;align-items:flex-start}.mm-why .ic{margin-top:3px}.mm-why .y{color:var(--text)}.mm-why .y .ic{color:var(--brand)}.mm-why .n{color:var(--muted)}.mm-why .n .ic{color:#e2a13c}
.mm-ra{display:flex;gap:8px;margin-top:6px}
@media (max-width:700px){.mm-r{grid-template-columns:minmax(0,1fr)}.mm-img{min-height:0;aspect-ratio:16/9}.mm-rb{padding:14px}}

/* ---- My Home (after-rent) ---- */
.mh-banner{display:flex;align-items:center;gap:16px;margin:22px 0;padding:16px 20px;border-radius:18px;background:var(--soft);border:1px solid rgba(19,146,111,.35);color:var(--head);transition:transform .15s}.mh-banner:hover{transform:translateY(-2px)}
.mh-bi{width:48px;height:48px;border-radius:14px;background:var(--brand);color:var(--brand-c);display:grid;place-items:center;flex:none}.mh-bt{flex:1;min-width:0;display:grid;gap:2px}.mh-bt b{font-family:var(--font-display);font-size:1.05rem}.mh-bt small{color:var(--muted);line-height:1.4}
.mh-bg{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:var(--brand);color:var(--brand-c);font-weight:700;white-space:nowrap}
@media (max-width:640px){.mh-banner{flex-wrap:wrap;padding:14px}.mh-bg{width:100%;justify-content:center}}
.mh-head{display:flex;align-items:center;gap:18px;margin:6px 0 18px;flex-wrap:wrap}.mh-head>img{width:96px;height:96px;border-radius:18px;object-fit:cover;flex:none}.mh-head>div:nth-child(2){flex:1;min-width:200px}.mh-head .pg-h1{margin:4px 0}
@media (max-width:560px){.mh-head>img{width:72px;height:72px;border-radius:14px}.mh-hact{width:100%}.mh-hact .btn{width:100%}}
.mh-tabs{margin-bottom:18px}.mh-tabs a{position:relative}.mh-dot{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:99px;background:var(--danger);color:#fff;font-size:.7rem;font-weight:700}.mh-dot[hidden]{display:none}
.mh-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:stretch}.mh-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;align-items:start}.mh-two.big{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);margin-top:0}
@media (max-width:860px){.mh-grid,.mh-two,.mh-two.big{grid-template-columns:minmax(0,1fr)}}
.mh-bar{height:10px;border-radius:99px;background:var(--surface);overflow:hidden;margin:6px 0}.mh-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#6ee7b7);border-radius:99px}.mh-lt{display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem;margin-bottom:14px}.mh-lt b{color:var(--head)}
.mh-next{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.mh-next>div{flex:1;min-width:150px}.mh-next small{color:var(--muted);font-weight:600}.mh-next b{display:block;color:var(--head);font-size:1.1rem}.mh-next p{color:var(--muted);font-size:.9rem}.mh-ni{width:50px;height:50px;border-radius:14px;background:var(--soft);color:var(--soft-t);display:grid;place-items:center;flex:none}
.mh-next.soon .mh-ni{background:var(--warn-bg);color:#b7791f}.mh-next.late{border-color:var(--danger)}.mh-next.late .mh-ni{background:var(--danger-bg);color:var(--danger)}
.mh-stats{margin-top:16px}.mh-qa{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px}.mh-qa .qa{border:1px solid var(--border);background:var(--card);border-radius:16px;padding:14px}
.mh-note{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--border)}.mh-note:first-of-type{border-top:0}.mh-note>div{flex:1;min-width:0}.mh-note b{color:var(--head)}.mh-note p{color:var(--text);font-size:.92rem;margin:2px 0}.mh-note small{color:var(--muted)}
.mh-mrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.mh-mrow>div{flex:1;min-width:0}.mh-mrow small{display:block;color:var(--muted)}
.mh .si{width:38px;height:38px;border-radius:12px;background:var(--soft);color:var(--soft-t);display:grid;place-items:center;flex:none}
.mh-sr{align-items:flex-end;margin-bottom:14px}.mh-mlist{display:grid;gap:14px}
.mh-m{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}.mh-m header{display:flex;align-items:center;gap:12px}.mh-m header>div{flex:1;min-width:0}.mh-m h3{font-size:1.05rem}.mh-m header small{color:var(--muted)}.mh-ph{max-width:220px;border-radius:12px;cursor:zoom-in}
.mh-mact{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mh-in{flex:1;min-width:140px;width:auto;padding:9px 12px}.mh-in.sm{flex:0 1 150px;min-width:110px}.mh-sel{width:auto;padding:9px 12px}
.mh-tbl td,.mh-tbl th{padding:11px 10px;white-space:nowrap}.mh-tbl td:first-child{white-space:normal;min-width:150px}.mh-ra{display:flex;gap:6px;align-items:center;justify-content:flex-end}
.empty-s{display:grid;justify-items:center;gap:8px;text-align:center;padding:26px 12px;color:var(--muted)}.empty-s .ic{color:var(--brand)}
.mh-doc{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.mh-doc>div{flex:1;min-width:0}.mh-doc b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mh-doc small{color:var(--muted)}
.mh-ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px;color:var(--text)}.mh-ul li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}.mh-ul .ic{color:var(--brand);margin-top:3px}
.mh-count{display:grid;justify-items:start;margin:10px 0 16px}.mh-count b{font-size:3rem;line-height:1;color:var(--head);font-family:var(--font-display)}.mh-count span{font-weight:600;color:var(--head)}.mh-count small{color:var(--muted)}
.mh-status{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:var(--surface);margin:10px 0}.mh-status small{display:block;color:var(--muted)}
.mh-reply{display:flex;gap:12px;padding:12px 14px;border-radius:12px;background:var(--info-bg);margin:10px 0;color:var(--head)}.mh-reply p{font-size:.93rem}.mh-reply small{color:var(--muted)}
.mh-ck li button{border:0;background:none;padding:0;display:contents}.mh-ck li{cursor:default}.mh-ck li>button i{cursor:pointer}
.mh-chk{display:flex;align-items:center;gap:8px;font-weight:500}.mh-chk input{width:auto}
.stat3.mh-stats{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:640px){.stat3.mh-stats{grid-template-columns:minmax(0,1fr)}}
.mh-lease .rh-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mh-lease .rh-3 b{font-size:1rem;overflow-wrap:anywhere}@media (max-width:480px){.mh-lease .rh-3 b{font-size:.88rem}}

/* ---- booking page on phones ---- */
@media (max-width:1100px){.bk-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){
  .cal-box{grid-template-columns:minmax(0,1fr)}.cal-box .times{border-left:0;border-top:1px solid var(--border)}
  .cal-head{flex-wrap:wrap}.cal-nav{gap:8px}
  .pg-steps.line-h{gap:8px;justify-content:space-between}.pg-steps.line-h li{gap:8px;min-width:0}.pg-steps.line-h li b{font-size:.85rem}.pg-steps.line-h li:not(.on) b{display:none}.pg-steps.line-h .ln{flex:1;min-width:10px}
  .legend{flex-wrap:wrap;gap:10px 16px}
}
.mh-head .active-t{background:var(--soft);color:var(--soft-t)}.mh-head .pg-h1{font-size:clamp(1.5rem,5vw,2.2rem)}
/* verified seal on a profile picture: the seal itself, with a thin ring, no white disc */
.pf-vb{width:auto;height:auto;border-radius:0;background:none;right:2px;bottom:4px;z-index:2;line-height:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}
.pf-vb .vseal{display:block;width:34px;height:34px;vertical-align:baseline}
.pf-vb .vseal path:first-of-type{stroke:var(--bg);stroke-width:2.8;stroke-linejoin:round;paint-order:stroke}
.pf-av{overflow:visible}

/* the verified badge is a plain round circle */
.pf-vb .vseal path:first-of-type{stroke:var(--bg);stroke-width:2.6;paint-order:stroke}
.pf-vb .vseal path:last-of-type{stroke:#fff}

/* phone home hero: the text sits on a clear panel so it never fights the photo */
@media (max-width:860px){
  .hmm-hero{background:linear-gradient(90deg,#fff 34%,rgba(255,255,255,.88) 60%,rgba(255,255,255,.12) 92%),url(../img/hero-hd.webp) 88% 25%/cover}
  .hmm-text{max-width:88%}.hmm-text p{color:#33423c;font-size:.98rem}
  .hmm-chips a{flex-direction:column;justify-content:center;text-align:center;gap:6px;padding:12px 6px;border-radius:18px;font-size:.76rem!important;line-height:1.25}
  .hmm-chips a span{overflow-wrap:anywhere}
  :root[data-theme=dark] .hmm-hero{background:linear-gradient(90deg,#0c181e 34%,rgba(12,24,30,.9) 62%,rgba(12,24,30,.3) 100%),url(../img/hero-hd.webp) 88% 25%/cover}
}

/* ---- audit fixes ---- */
:root[data-theme=dark] .tag{background:rgba(7,28,22,.86);color:#6ee7b7}:root[data-theme=dark] .tag.off{background:rgba(61,24,34,.9);color:#ff9bab}
:root[data-theme=dark] .day.out{color:#6d8089}:root[data-theme=dark] .day:disabled{color:#6d8089}.day.out{color:#8f9b96}
.cal,.grid-days,.dow{min-width:0}.day{min-width:0;padding:0}
.hmm-chips a span{hyphens:auto}
@media (max-width:640px){
  .site-foot a,.sf-links a,footer a{display:inline-flex;align-items:center;min-height:40px}
  .crumbs a,.back-link,.fg-back,.dz-link,.dsh-link,.sc-tc{display:inline-flex;align-items:center;min-height:36px}
  .mh-mact .mh-in,.mh-mact .mh-sel{flex:1 1 100%}.mh-tbl td:first-child{min-width:0}
  .dtab td small,.mh-tbl small{overflow-wrap:anywhere}
  select[data-view],select[data-app],select[data-tk]{min-width:130px}
  :root[data-theme=dark] .hmm-hero{background:linear-gradient(90deg,#0c181e 38%,rgba(12,24,30,.94) 66%,rgba(12,24,30,.45) 100%),url(../img/hero-hd.webp) 88% 25%/cover}
}
.nh-fine,.tc-note,.muted small{overflow-wrap:anywhere}
@media (max-width:640px){.mh-tbl td,.mh-tbl th{white-space:normal}.sf-choices{min-height:40px}}
.day:disabled{color:#7f8b86}
.stat4 b{display:block}.stat4 .btn{display:inline-flex}
