*{box-sizing:border-box}body{margin:0;font:15px Segoe UI,Arial;background:#f5f7fb;color:#183047}.head{height:76px;display:flex;align-items:center;gap:18px;padding:0 24px;background:#fff;border-bottom:1px solid #dbe3ec}.head a{color:#0f5a8a;text-decoration:none;font-weight:700}.head h1{margin:0;font-size:24px}.head-count{margin-left:auto;padding:7px 12px;border-radius:999px;background:#e6f8fb;color:#08798a;font-size:13px;font-weight:700}.app{display:grid;grid-template-columns:370px 1fr;height:calc(100vh - 76px)}.side{padding:18px;overflow:auto;background:#f8fafc;border-right:1px solid #dbe3ec}.control{width:100%;margin-bottom:10px;padding:13px;border:1px solid #c8d5e3;border-radius:12px;background:#fff;color:#183047}.item{width:100%;margin-top:10px;padding:13px;text-align:left;color:#183047;background:#fff;border:1px solid #dbe3ec;border-radius:12px;cursor:pointer}.item:hover{border-color:#0f78a8;box-shadow:0 5px 14px #18304712}.item b,.item small{display:block}.item small{margin-top:5px;color:#61778c}.empty-list{margin-top:12px;padding:24px 16px;border:1px dashed #c8d5e3;border-radius:12px;text-align:center;color:#72869a;background:#fff}.detail{margin-top:14px;padding:15px;border-radius:14px;background:#fff;border:1px solid #dbe3ec}.detail img{width:100%;max-height:180px;object-fit:cover;border-radius:10px}.detail a{display:inline-block;margin:7px 5px 0 0;padding:8px 10px;border-radius:8px;color:#fff;background:#087f8c;text-decoration:none}.map-wrap{position:relative;min-width:0;background-color:#e8edf2;background-image:linear-gradient(#dbe3e9 1px,transparent 1px),linear-gradient(90deg,#dbe3e9 1px,transparent 1px);background-size:32px 32px}#map{height:100%;z-index:1}.map-message{position:absolute;z-index:500;top:18px;left:50%;max-width:560px;transform:translateX(-50%);padding:12px 18px;border:1px solid #e3aa28;border-radius:12px;background:#fff8e5;color:#805600;font-weight:650;box-shadow:0 8px 30px #18304725;text-align:center}.map-message.empty{top:50%;transform:translate(-50%,-50%);padding:20px 24px;border-color:#b9cad8;background:#fff;color:#536b80}.heritage-pin{display:grid;place-items:center;width:34px;height:34px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 8px #0005;color:#fff}.heritage-pin span{transform:rotate(45deg);font-size:16px}@media(max-width:760px){.app{grid-template-columns:1fr;grid-template-rows:42% 58%}.side{grid-row:2}.head h1{font-size:18px}.head-count{display:none}}
