.registry-view .catalog-map-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
.registry-view #results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:0}
.registry-view .catalog-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;background:white;padding:17px;border:1px solid #e0e8e2;border-radius:17px;margin:20px 0}
.registry-view .catalog-toolbar .field{flex:1;min-width:170px}.registry-view .catalog-toolbar select{min-height:46px}
.registry-view .stay-card{display:flex;flex-direction:column;min-width:0;padding:0;border:1px solid #e0e7e1;border-radius:17px;overflow:hidden;background:#fff;box-shadow:0 12px 28px #183d420d;transition:.16s}
.registry-view .stay-card:hover{transform:translateY(-2px);box-shadow:0 16px 30px #183d4220}
.registry-view .stay-photo{position:relative;aspect-ratio:1.52;background:#e8eeeb}
.registry-view .stay-photo img{display:block;width:100%;height:100%;object-fit:cover}
.registry-view .stay-label{position:absolute;top:12px;left:12px;background:#133741e8;color:#fff;border-radius:8px;font-size:11px;font-weight:750;padding:6px 10px}
.registry-view .stay-type{position:absolute;bottom:12px;left:12px;background:#ffffffef;color:#2c5557;border-radius:8px;font-size:12px;padding:5px 9px}
.registry-view .stay-content{padding:16px 17px;display:flex;flex-direction:column;flex:1}
.registry-view .stay-content h3{font-size:21px;min-height:45px;line-height:1.2;margin:3px 0 7px}
.registry-view .stay-location{font-size:13px;color:#647a80}.registry-view .stay-summary{font-size:13px;color:#65777d;min-height:42px;flex:1}
.registry-view .amenity-chips{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 13px}
.registry-view .amenity-chip{font-size:11px;border:1px solid #dce9e3;background:#f2f8f5;border-radius:8px;padding:5px 7px;color:#315955}
.registry-view .stay-bottom{border-top:1px solid #e9efea;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.registry-view .stay-price{font-size:20px;font-weight:800}.registry-view .stay-price small{font-size:11px;display:block;color:#738486;font-weight:500}
.registry-view .stay-btn{padding:8px 12px;min-height:38px;font-size:12px}
.registry-view .catalog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.registry-view .catalog-head h2{font-size:clamp(27px,2.5vw,37px)}
.registry-view .catalog-note{background:#f6f8f4;border:1px solid #e1e8e2;padding:11px 14px;border-radius:10px;color:#5b7176;font-size:12px;margin:14px 0 18px}
.registry-view .map-panel{position:sticky;top:94px;border:1px solid #dce7e0;border-radius:18px;background:#fff;padding:17px;box-shadow:0 12px 30px #15383e12}
.registry-view .map-panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 11px}.registry-view .map-panel-head h3{font-size:21px}
.registry-view #map{height:580px;min-height:580px;border-radius:12px;background:#e6f1ea;overflow:hidden}
.registry-view .map-help{font-size:12px;margin:11px 0;color:#60777c}.registry-view .map-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:#526e73;margin:10px 0}
.registry-view .map-legend i{width:12px;height:12px;display:inline-block;border-radius:50%;margin-right:5px}
.registry-view #map-info{padding:13px;margin:14px 0 0;box-shadow:none}.registry-view .map-reset{font-size:12px;min-height:37px;padding:6px 10px}
.registry-view .tour-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:18px;background:#0b2734bf}
.registry-view .tour-modal.open{display:flex}.registry-view .tour-modal-card{width:min(940px,100%);max-height:95vh;overflow:auto;border-radius:19px;background:#fff;box-shadow:0 40px 85px #102c3e55;position:relative}
.registry-view .modal-x{position:absolute;right:17px;top:17px;z-index:3;width:43px;height:43px;background:#ffffffeb;border:0;border-radius:99px;font-size:24px;cursor:pointer}
.registry-view #detail-image{width:100%;height:clamp(230px,27vw,360px);object-fit:cover;display:block}
.registry-view .modal-inner{padding:27px 32px 35px}.registry-view .modal-inner h2{font-size:31px}.registry-view .modal-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:23px;margin:15px 0}
.registry-view .room-card{border:1px solid #dbe8e2;padding:16px;border-radius:12px;margin:12px 0}.registry-view .room-card strong{display:block}.registry-view .room-card p{font-size:13px;color:#5f787d;margin:5px 0}
.registry-view .modal-price-box{border:1px solid #dce8de;background:#f1f9f4;padding:18px;border-radius:14px}
.registry-view .modal-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.registry-view .modal-gallery button{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:white;cursor:pointer}
.registry-view .modal-gallery button:focus-visible{border-color:#087e86}.registry-view .modal-gallery img{display:block;width:100%;height:85px;object-fit:cover}
.registry-view .maplibregl-popup-content{font:13px/1.5 system-ui,sans-serif;border-radius:12px;padding:12px}.registry-view .maplibregl-popup-content button{background:#087e86;color:white;border:0;border-radius:7px;padding:8px;margin-top:7px}
@media(max-width:1200px){.registry-view .catalog-map-grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.registry-view #results{grid-template-columns:1fr}}
@media(max-width:900px){.registry-view .catalog-map-grid{grid-template-columns:1fr}.registry-view #results{grid-template-columns:repeat(2,minmax(0,1fr))}.registry-view .map-panel{position:static}.registry-view #map{height:450px;min-height:450px}.registry-view .modal-grid{grid-template-columns:1fr}}
@media(max-width:610px){.registry-view #results{grid-template-columns:1fr}.registry-view .catalog-toolbar .field{min-width:100%}.registry-view #map{height:360px;min-height:360px}.registry-view .modal-inner{padding:18px}.registry-view .modal-gallery img{height:65px}}
