/* EDC accommodation listings: neumorphic cards and detail view */
.lst-section{padding-top:30px}
.lst-head{margin-bottom:22px}
.lst-head h2{margin:.3em 0 .3em}
.lst-filter{margin-bottom:38px}
.lst-chip span{margin-left:6px;color:var(--orange-deep);font-size:.8em}
.lst-group{margin-bottom:52px}
.lst-group[hidden]{display:none}
.lst-group-head{display:flex;align-items:baseline;gap:14px;margin-bottom:22px}
.lst-group-head h2{font-size:1.6rem;margin:0}
.lst-group-count{font-size:.85rem;font-weight:700;color:var(--purple);padding:6px 14px;border-radius:999px;box-shadow:var(--nm-inset)}
.lst-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}
.lst-card{display:flex;flex-direction:column;border-radius:26px;overflow:hidden;background:linear-gradient(145deg,#F7F2FB,#ECE2F4);box-shadow:10px 10px 24px #CDBFDC,-9px -9px 20px #FFFFFF;transition:box-shadow .25s ease,transform .25s ease}
.lst-grid>.lst-card:nth-child(3n+2){background:linear-gradient(145deg,#F2FAFE,#E0F0F8)}
.lst-grid>.lst-card:nth-child(3n){background:linear-gradient(145deg,#FFF7F1,#FCE7DA)}
.lst-card:hover{box-shadow:16px 16px 34px #C5B6D6,-12px -12px 26px #FFFFFF;transform:translateY(-4px)}
button.lst-open{font:inherit;border:0;padding:0;background:none;cursor:pointer;text-align:left}
.lst-card>button.lst-open{display:block;padding:12px 12px 0}
.lst-photo{position:relative;display:block;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:#E4DCEE;box-shadow:inset 3px 3px 8px rgba(0,0,0,.08)}
.lst-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.lst-card:hover .lst-photo img{transform:scale(1.04)}
.lst-count,.lst-vac{position:absolute;font-size:.75rem;font-weight:700;padding:6px 12px;border-radius:999px}
.lst-count{left:10px;bottom:10px;background:rgba(40,22,54,.72);color:#fff}
.lst-vac{right:10px;top:10px;background:#7B449A;color:#fff;box-shadow:0 6px 14px -6px rgba(58,28,80,.6)}
.lst-body{display:flex;flex-direction:column;gap:10px;padding:18px 22px 22px;flex:1}
.lst-where{display:flex;align-items:center;gap:6px;margin:0;font-size:.85rem;font-weight:600;color:var(--purple)}
.lst-where svg{width:16px;height:16px;flex:none}
.lst-body h3{margin:0;font-size:1.12rem;line-height:1.3;color:var(--ink)}
.lst-stats{display:flex;gap:14px;flex-wrap:wrap;margin:2px 0 0;padding:0;list-style:none;font-size:.88rem;font-weight:600;color:var(--ink-soft)}
.lst-stats li{display:flex;align-items:center;gap:6px}
.lst-stats svg{width:18px;height:18px;color:var(--purple)}
.lst-rent{margin:0;font-size:.85rem;color:var(--ink-soft)}
.lst-tags{display:flex;flex-wrap:wrap;gap:6px}
.lst-tag{font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:999px;background:#FBF8FD;color:var(--purple-deep);box-shadow:2px 2px 5px rgba(123,68,154,.15),-2px -2px 5px #fff}
.lst-tag--sup{color:#fff;background:#25AAE1;box-shadow:none}
.lst-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:8px}
.lst-actions .btn{padding:11px 20px;font-size:.88rem}
.lst-source{font-size:.88rem;color:var(--ink-soft);margin-top:10px}
.lst-source a{color:var(--purple);font-weight:700;text-decoration:underline}

/* Detail view */
body.lst-lock{overflow:hidden}
.lst-dialog{width:min(1080px,94vw);max-height:92vh;padding:0;border:0;border-radius:28px;background:#F2ECF8;box-shadow:0 30px 80px rgba(40,22,54,.35);color:var(--ink)}
.lst-dialog::backdrop{background:rgba(40,22,54,.55)}
.lst-d-inner{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:28px;padding:26px;max-height:92vh;overflow:auto;box-sizing:border-box}
.lst-close{position:absolute;top:14px;right:14px;z-index:3;width:44px;height:44px;border:0;border-radius:50%;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--purple-deep);background:#F2ECF8;box-shadow:5px 5px 12px #CFC4DD,-5px -5px 12px #fff}
.lst-close:hover{box-shadow:inset 4px 4px 9px #CFC4DD,inset -4px -4px 9px #fff}
.lst-gallery{position:sticky;top:0;align-self:start}
.lst-main{position:relative;border-radius:20px;overflow:hidden;background:#E4DCEE;aspect-ratio:4/3;box-shadow:8px 8px 18px #CDBFDC,-6px -6px 14px #fff}
.lst-main img{width:100%;height:100%;object-fit:cover;display:block}
.lst-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--purple-deep);background:rgba(247,242,251,.92);box-shadow:0 6px 16px rgba(40,22,54,.25)}
.lst-prev{left:12px}.lst-next{right:12px}
.lst-d-counter{position:absolute;right:12px;bottom:12px;font-size:.78rem;font-weight:700;padding:5px 11px;border-radius:999px;background:rgba(40,22,54,.72);color:#fff}
.lst-thumbs{display:flex;gap:8px;overflow-x:auto;padding:14px 4px 6px}
.lst-thumb{flex:none;width:72px;height:54px;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:pointer;opacity:.6;box-shadow:3px 3px 7px #CFC4DD,-3px -3px 7px #fff}
.lst-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lst-thumb[aria-current="true"]{opacity:1;outline:3px solid var(--purple);outline-offset:1px}
.lst-d-body{padding-right:40px}
.lst-d-body h2{font-size:1.6rem;margin:.2em 0 .6em}
.lst-d-body h3{font-size:1.05rem;margin:22px 0 10px}
.lst-d-stats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:0;list-style:none}
.lst-d-stats li{display:flex;flex-direction:column;align-items:center;min-width:76px;padding:10px 12px;border-radius:16px;background:#F7F2FB;box-shadow:inset 3px 3px 7px #CFC4DD,inset -3px -3px 7px #fff}
.lst-d-stats strong{font-size:1.3rem;color:var(--purple)}
.lst-d-stats span{font-size:.72rem;color:var(--ink-soft)}
.lst-d-facts,.lst-d-nearby{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:0}
.lst-d-facts dt,.lst-d-nearby dt{font-size:.75rem;font-weight:700;color:var(--purple);text-transform:uppercase;letter-spacing:.04em}
.lst-d-facts dd,.lst-d-nearby dd{margin:2px 0 0;font-size:.9rem;color:var(--ink)}
.lst-d-desc{margin-top:18px;font-size:.93rem;color:var(--ink-soft)}
.lst-d-desc p,.lst-d-desc li{color:var(--ink-soft)}
.lst-d-desc h3{font-size:1rem}
.lst-d-desc ul{padding-left:20px;list-style:disc;margin:0 0 1em}
.lst-d-features{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.lst-d-features li{font-size:.8rem;font-weight:600;padding:6px 12px;border-radius:999px;background:#FBF8FD;color:var(--purple-deep);box-shadow:2px 2px 5px rgba(123,68,154,.15),-2px -2px 5px #fff}
.lst-dialog .lst-actions{margin-top:24px}
@media (max-width:860px){
  .lst-d-inner{grid-template-columns:1fr;padding:18px}
  .lst-gallery{position:static}
  .lst-d-body{padding-right:0}
}
@media (max-width:520px){
  .lst-grid{grid-template-columns:1fr}
  .lst-d-facts,.lst-d-nearby{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.lst-card,.lst-photo img{transition:none}.lst-card:hover{transform:none}.lst-card:hover .lst-photo img{transform:none}}
/* Region filter: pressed track with raised selected pill */
.lst-filter{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border-radius:32px;background:#EEE7F5;box-shadow:inset 5px 5px 11px #CFC4DD,inset -5px -5px 11px #fff;width:max-content;max-width:100%}
.lst-chip{font-family:var(--sans);font-weight:600;font-size:.85rem;min-height:44px;padding:10px 16px;border:0;border-radius:26px;background:transparent;color:var(--ink-soft);cursor:pointer;transition:box-shadow .2s,color .2s,background .2s}
.lst-chip:hover{color:var(--purple)}
.lst-chip[aria-pressed="true"]{background:#F4EEF9;color:var(--purple);box-shadow:5px 5px 12px #CFC4DD,-5px -5px 12px #fff}
@media (max-width:620px){.lst-filter{width:100%;border-radius:24px}.lst-chip{flex:1 0 auto;font-size:.8rem;padding:9px 12px}}
.lst-d-inner>*{min-width:0}
.lst-group-count{white-space:nowrap}
.lst-dialog{box-sizing:border-box}
