.hdr{position:absolute;top:16px;left:16px;z-index:1000;display:flex;gap:8px;align-items:center}
.brand{background:var(--card);backdrop-filter:var(--gl);padding:8px 16px;border-radius:var(--R);border:1px solid var(--bdr);box-shadow:var(--shd)}
.brand h1{font-family:var(--hf);font-size:1.1rem;color:var(--ink);line-height:1}
.brand span{display:none}
.srch{width:300px;position:relative}
.srch input{width:100%;padding:14px 16px 14px 42px;border-radius:var(--R);border:1px solid var(--bdr);background:var(--card);backdrop-filter:var(--gl);box-shadow:var(--shd);font-family:inherit;font-size:.82rem;color:var(--ink);outline:none;transition:.2s}
.srch input:focus{border-color:var(--acc);background:#fff}
.srch input::placeholder{color:var(--mut)}
.si{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;stroke:var(--acc);fill:none;stroke-width:2.5}
.dd{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--card);backdrop-filter:var(--gl);border:1px solid var(--bdr);border-radius:calc(var(--R) - 4px);box-shadow:var(--shd);z-index:1001;display:none;max-height:250px;overflow-y:auto}
.dd.open{display:block}
.di{padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--bdr);display:flex;justify-content:space-between;align-items:center;font-size:.78rem;transition:.1s}
.di:last-child{border:none}.di:hover{background:rgba(0,0,0,.025)}.di b{font-weight:600;color:var(--ink)}.di em{font-style:normal;font-size:.65rem;color:var(--acc);font-weight:700}.di small{font-size:.6rem;color:var(--mut)}
.pnl{position:absolute;top:16px;right:16px;bottom:16px;width:440px;z-index:1000;background:var(--card);backdrop-filter:var(--gl);border-radius:var(--R);border:1px solid var(--bdr);box-shadow:var(--shd);display:flex;flex-direction:column;transition:.6s cubic-bezier(.19,1,.22,1)}
.pnl.shut{transform:translateX(calc(100% + 60px))}
.px{width:26px;height:26px;border-radius:8px;border:1px solid var(--bdr);background:var(--card);cursor:pointer;display:none;align-items:center;justify-content:center;font-size:.85rem;color:var(--mut);z-index:2}.px:hover{color:var(--ink)}
.pnl-collapse{position:absolute;top:12px;right:12px;width:26px;height:26px;border-radius:8px;border:1px solid var(--bdr);background:var(--card);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--mut);z-index:3;transition:.15s;padding:0}.pnl-collapse:hover{color:var(--ink);border-color:var(--acc)}
.pnl-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:0;margin-bottom:12px}
.pnl-tab{flex:1;min-width:calc(50% - 4px);padding:12px 8px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fff;font-family:'Outfit',sans-serif;font-size:.62rem;font-weight:600;color:#333;cursor:pointer;text-align:center;transition:.15s;display:flex;align-items:center;justify-content:center;gap:4px}
.pnl-tab:hover{border-color:#2563eb;color:#2563eb;background:rgba(37,99,235,.03)}
.pnl-tab.active{border-color:#2563eb;background:rgba(37,99,235,.06);color:#2563eb}
.pnl-tab-icon{font-size:.8rem}
.pnl-section{display:none;animation:fadeIn .2s}
.pnl-section.show{display:block}
.pnl-tab.cta-tab{background:#2563eb;color:#fff;border-color:#2563eb}
.pnl-tab.cta-tab:hover{background:#1d4ed8}
.pnl-handle{display:none;padding:8px 14px 0;cursor:grab;position:relative;flex-shrink:0;touch-action:none}
.handle-bar{width:36px;height:4px;border-radius:4px;background:var(--bdr);margin:0 auto 6px}
@media(max-width:768px){.handle-bar{width:48px;height:5px;background:#b0b0b0}}
.handle-min{position:absolute;right:42px;top:6px;width:26px;height:26px;border-radius:8px;border:1px solid var(--bdr);background:var(--card);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--mut);transition:.15s}.handle-min:hover{color:var(--ink)}
.pnl.mini .pb,.pnl.mini .pf{display:none!important}
.pnl.mini{max-height:none!important;height:auto!important}
.pnl.mini .pnl-handle{padding-bottom:6px}
.mini-peek{padding:10px 16px 8px;border-top:1px solid var(--bdr);display:none}
@media(max-width:768px){.mini-peek{background:rgba(245,245,247,.98);border-top:2px solid var(--acc);padding:12px 16px 10px}}
.pnl.mini .mini-peek{display:block}
.mini-peek .mp-sub{font-family:var(--hf);font-size:1rem;font-weight:700;color:var(--ink)}
.mini-peek .mp-meta{font-size:.6rem;color:var(--mut);margin-top:1px}
.mini-peek .mp-cta{font-size:.6rem;color:var(--acc);font-weight:700;margin-top:4px;cursor:pointer}
.pb{flex:1;overflow-y:auto;padding:28px;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.pb::-webkit-scrollbar{width:3px}.pb::-webkit-scrollbar-thumb{background:var(--bdr);border-radius:3px}
.pf{padding:16px 28px;border-top:1px solid var(--bdr);border-radius:0 0 var(--R) var(--R)}.pf .appr-count{font-size:.52rem;color:var(--mut);text-align:center;margin-bottom:6px}
.mc{position:absolute;bottom:20px;left:16px;z-index:1000;display:flex;gap:5px}
.mb{background:var(--card);backdrop-filter:var(--gl);border:1px solid var(--bdr);padding:8px 14px;border-radius:calc(var(--R) - 10px);font-family:inherit;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;box-shadow:var(--shd);color:var(--mut);transition:.15s}.mb.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.attr{position:absolute;bottom:16px;right:480px;z-index:500;font-size:.55rem;color:rgba(255,255,255,.4)}
@media(max-width:768px){
  .landing-inner{max-width:100%;padding:24px 20px;border-radius:16px;margin:0 12px}
  .landing h1{font-size:1.6rem}
  .landing-sub{font-size:.75rem}
  .landing-input{font-size:.85rem;padding:14px 14px 14px 42px}
  .landing-stat{gap:16px}
  .landing-stat-val{font-size:1.1rem}
  .landing-explore{font-size:.72rem;padding:8px 18px}
  .landing-trust{gap:10px}
  .landing-trust span{font-size:.48rem}
}
@media(max-width:1000px){.pnl{width:370px;right:10px;top:70px;bottom:10px}}
@media(max-width:768px){
  .pnl{left:8px;right:8px;width:auto;top:auto;bottom:0;max-height:38vh;border-radius:var(--R) var(--R) 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}.pnl.shut{transform:translateY(100%)}
  .pnl-collapse{display:none}
  .pnl-handle{display:block}
  .px{position:static;width:26px;height:26px;border-radius:8px;position:absolute;right:10px;top:6px}
  .pf{border-radius:0;padding:12px 20px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .hdr{top:8px;left:8px;right:8px;flex-direction:row;align-items:center;gap:8px;padding:6px 10px}.srch{width:100%}
  .brand{padding:8px 14px}.brand h1{font-size:1.2rem}
  .mc{position:absolute;bottom:auto;top:8px;right:8px;left:auto;z-index:1001;display:flex;gap:4px}
  .mc .mb:not(#bLoc){display:none}
  #bLoc{display:flex!important}
  .pb{padding:14px 16px}
  .hero-price{font-size:2rem}
  .hp h2{font-size:1.4rem;line-height:1.1}
  .bench{padding:18px}
  .ticker{bottom:auto;top:55px;left:8px;right:8px;max-width:none}
  .pin-hint{bottom:auto;top:105px;font-size:.64rem;padding:8px 14px}
  .attr{right:16px;bottom:50px;font-size:.55rem}
  .pg{grid-template-columns:1fr 1fr 1fr;gap:4px}.ps{padding:8px 4px}.ps .pv{font-size:1rem}
  .ac{padding:12px;gap:10px}.ac-rk{width:24px;height:24px;font-size:.65rem}.ac-body h4{font-size:.8rem}
}
@media(max-width:768px){
  .share-btn{padding:12px 8px!important;font-size:.65rem!important}
}
@media(max-width:768px){
  .ac{padding:10px;gap:8px}
  .ac-photo{width:36px;height:36px}
  .ac-body h4{font-size:.78rem}
  .ae-cta{font-size:.55rem}
}
@media(max-width:768px){
  .fi-price{font-size:1rem}
  .fi-addr{font-size:.65rem}
  .fi-meta{font-size:.58rem}
  .fi-time{font-size:.6rem;min-width:50px}
}
@media(max-width:768px){
  .sm-price{font-size:10px;padding:5px 6px}
  .sm-face{width:28px;height:28px}
  .sm-wrap{filter:drop-shadow(0 1px 4px rgba(0,0,0,.25))}
  .map-period{bottom:auto!important;top:46px!important;right:8px!important;left:auto!important}
}
@media(max-width:768px){
  .mo-box{margin:0 8px;max-width:100%}
}
@media(max-width:768px){
  .ticker{bottom:auto;top:46px;left:8px;right:auto;max-width:72vw}
  .tick{font-size:.58rem}
}
@media(max-width:380px){
  .price-range{flex-direction:column;gap:8px;text-align:left!important}
  .price-range>div{text-align:left!important}
}
@media(max-width:768px){
  .mo-box{margin:0 8px;max-width:100%}
}
@media(max-width:768px){
  .mb{min-height:36px;min-width:36px}
  .landing-input{font-size:16px}
  .pnl-handle{padding-bottom:env(safe-area-inset-bottom,0px)}
}
@media(max-width:380px){
  .pb{padding:16px}
  .fr{grid-template-columns:1fr}
  .hp h2{font-size:1.4rem}
  .hero-price{font-size:1.8rem}
}
