/* Stays search page: list ~60% + map, large-photo cards (per sketch). */
.sr{max-width:1360px}
.lst{flex:1.5 1 0}
.mapw{flex:1 1 0}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}
.sc{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(23,48,46,.10),0 6px 20px rgba(23,48,46,.08)}
.sc.hot{box-shadow:0 0 0 2px var(--deep),0 6px 20px rgba(23,48,46,.12)}
.sc .cimg{position:relative;aspect-ratio:3/2;background:#E4F4EF;cursor:pointer;overflow:hidden}
.sc .slides,.sc .sl{position:absolute;inset:0}
.sc .sl{background:#E4F4EF center/cover no-repeat;opacity:0;transition:opacity .2s}
.sc .sl.on{opacity:1}
.sc .car{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#1A1A1A;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.18);opacity:0;transition:opacity .15s}
.sc .cimg:hover .car,.sc .car:focus-visible{opacity:1}
@media(hover:none){.sc .car{opacity:1}}
.sc .pv{left:8px}.sc .nx{right:8px}
.sc .ccount{position:absolute;bottom:12px;right:12px;padding:2px 8px;border-radius:8px;background:rgba(30,38,41,.72);color:#fff;font-size:12px}
.sc .cdate{position:absolute;top:12px;left:12px;padding:5px 12px;border-radius:8px;background:#fff;color:#1A1A1A;font-size:14px;font-weight:700}
.sc .fv{position:absolute;top:6px;right:6px;width:44px;height:44px;border:0;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}
.sc .fv svg{fill:rgba(0,0,0,.15)}
.sc .fv.on svg{fill:#D62F2F;stroke:#D62F2F}
.sc .cbody{padding:16px 20px 20px;display:flex;flex-direction:column;gap:6px;flex-grow:1}
.sc .crow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sc .bt{position:relative;display:inline-flex;align-items:center;gap:4px;font-size:14px}
.sc .ctag{padding:1px 8px;border-radius:4px;border:1px solid var(--deep);color:var(--deep);font-size:12px;font-weight:700;letter-spacing:.04em}
.sc .ctitle{margin:0;font-family:'Noto Serif TC',serif;font-size:20px;font-weight:600;line-height:1.35}
.sc .ctitle a{color:#1A1A1A;text-decoration:none}
.sc .ctitle a:hover{text-decoration:underline}
.sc .cdesc{margin:0;font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sc .amrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.sc .am{position:relative;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:12px;background:#E4F4EF;color:var(--deep)}
.tip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);z-index:10;padding:4px 10px;border-radius:8px;background:#1A1A1A;color:#fff;font-size:12px;font-weight:400;line-height:1.5;white-space:nowrap}
.sc .bt .tip{left:0;transform:none}
.am:hover .tip,.am:focus .tip,.bt:hover .tip,.bt:focus .tip{display:block}
.sc .cfoot{margin-top:auto;padding-top:12px;border-top:1px solid #E3E6E4;display:flex;flex-direction:column;gap:8px}
.sc .cspec{font-size:14px;color:var(--muted)}
.sc .cpr{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sc .cpr strong{font-size:24px;color:var(--deep)}
.sc .cpr small{font-size:13px;color:var(--muted)}
.sc .cact{display:flex;align-items:center;gap:12px}
.sc .cact a{font-size:14px;font-weight:500}
.sc .book{min-height:40px;padding:0 16px;border:0;border-radius:12px;background:var(--deep);color:#fff;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit}
.empty2{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;border:1px dashed #CCC;border-radius:16px;text-align:center}
.empty2[hidden]{display:none}
.empty2 strong{font-size:17px}.empty2 span{color:var(--muted)}
.empty2 .erow{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.empty2 .erow>*{padding:0 18px}
.ptip{font-weight:700;color:var(--deep)}
/* header search bar on dark header */
header.sh .sbar2{border-color:#fff}
header.sh .go{background:var(--deep);border:1px solid var(--deep)}
header.sh .seg .sl{color:var(--deep)}
/* map cluster colour + mobile card reuse */
.mcard .cprice{color:var(--deep);font-weight:700}
@media(max-width:900px){.lst{flex:1 1 100%}}
@media(max-width:600px){.sgrid{grid-template-columns:1fr;gap:18px}.sc .cbody{padding:14px 16px 16px}.sc .cpr strong{font-size:22px}}
header.sh .sbar2,header.sh .sbar2 #moreBtn{color:var(--ink)}
header.sh .hero h1,header.sh .hero p{white-space:normal}
