@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&display=swap');
:root{--bg:#101622;--panel:rgba(20,29,43,.94);--panel2:#192335;--line:#2b3950;--text:#eef3fb;--muted:#8fa0b8;--cyan:#56d7d0;--gold:#e3ad56;--red:#ff6b71}
*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{overflow:hidden;background:var(--bg);color:var(--text);font-family:'Noto Sans SC','Microsoft YaHei',sans-serif}button,input,select{font:inherit}
#globe{position:fixed;inset:0;z-index:500;overflow:hidden;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;background-color:#01050a;background-image:radial-gradient(circle at 50% 48%,rgba(19,48,63,.20),transparent 45%);display:none;cursor:grab}#globe.active{display:block}#globe canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}#globe:before{content:'';position:absolute;top:28px;left:34px;z-index:2;color:#a5d8d2;font-size:10px;letter-spacing:3px;opacity:.62}#globe:after{content:'拖拽旋转  ·  滚轮持续放大可进入平面地图';position:absolute;right:28px;bottom:28px;z-index:2;color:#78909f;font-size:11px;letter-spacing:1px}#globe:active{cursor:grabbing}#globe.globe-transition{opacity:1;animation:globeDive .68s cubic-bezier(.2,.75,.25,1) forwards;pointer-events:none}@keyframes globeDive{0%{opacity:1;filter:blur(0)}68%{opacity:.9;filter:blur(.3px)}100%{opacity:0;filter:blur(2px)}}
.globe-marker-tip{position:fixed;z-index:2200;min-width:130px;padding:8px 11px 8px 14px;border:1px solid rgba(165,216,210,.34);border-left:2px solid var(--gold);border-radius:3px;background:rgba(3,9,15,.9);box-shadow:0 8px 26px rgba(0,0,0,.42),0 0 18px rgba(86,215,208,.08);opacity:0;transform:translateY(5px);transition:opacity .14s,transform .14s;pointer-events:none}.globe-marker-tip.show{opacity:1;transform:translateY(0)}.globe-marker-tip i{position:absolute;left:-5px;top:13px;width:7px;height:7px;border:1px solid var(--gold);background:#08121a;transform:rotate(45deg)}.globe-marker-tip b{display:block;color:#edf4f5;font-size:12px;white-space:nowrap}.globe-marker-tip small{display:block;margin-top:2px;color:#88a2ad;font-size:9px;letter-spacing:.5px}
body.globe-mode #app{opacity:1;pointer-events:none}body.globe-mode #globe{z-index:2000}body.globe-mode .view-toggle{z-index:2100}
.globe-watermark{position:absolute;z-index:2050;left:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:7px 11px 7px 8px;border:1px solid rgba(208,190,153,.28);background:rgba(7,11,13,.68);color:#d8c9ab;font:600 11px/1.2 "Microsoft YaHei",sans-serif;letter-spacing:2px;pointer-events:none;opacity:0;transition:opacity .25s}.globe-watermark img{width:24px;height:24px;object-fit:contain;border-radius:2px}.globe-watermark span{color:#bb6443;text-shadow:0 1px 2px #000}body.globe-mode .globe-watermark{opacity:1}@media(max-width:720px){.globe-watermark{left:9px;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 8px);padding:5px 8px 5px 6px;font-size:10px}.globe-watermark img{width:20px;height:20px}}
.view-toggle{position:absolute;z-index:620;bottom:60px;left:50%;transform:translateX(-50%);display:flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:rgba(16,22,34,.94);box-shadow:0 4px 18px rgba(0,0,0,.4)}.view-toggle button{height:34px;padding:0 14px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;display:flex;align-items:center;gap:5px}.view-toggle button.active{background:var(--gold);color:#151b26;font-weight:700}
#loading{position:fixed;inset:0;z-index:9999;background:#0d1420;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:.55s}.loader-symbol{font-size:52px;color:var(--gold);animation:spin 1.6s linear infinite}.loader-symbol+strong{letter-spacing:8px;font-size:14px}.loader-symbol~span{font-size:12px;color:var(--muted)}#loading.done{opacity:0;visibility:hidden}#loading.boot-error{background:#16121a;text-align:center;padding:25px}#loading.boot-error .loader-symbol{animation:none;color:#ff7077}#loading.boot-error span{max-width:520px;line-height:1.8}@keyframes spin{to{transform:rotate(360deg)}}
.app{height:100%;display:grid;grid-template-rows:66px 92px minmax(0,1fr) 30px;background:radial-gradient(circle at 50% -20%,#20334b 0,#101622 45%)}
.header{display:flex;align-items:center;gap:24px;padding:0 22px;border-bottom:1px solid var(--line);background:rgba(14,21,32,.96);z-index:1100}.brand{display:flex;align-items:center;gap:12px;min-width:320px}.brand-name{height:42px;display:flex;align-items:center}.brand-name h1{display:flex;align-items:center;height:100%;margin:0!important}.brand-icon{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(153,40,0,.58);border-radius:7px;background:#000;box-shadow:0 0 16px rgba(153,40,0,.18)}.brand-icon img{display:block;width:100%;height:100%;object-fit:contain}.eyebrow{color:var(--gold);font-size:9px;letter-spacing:3px}.brand h1{font-size:20px;margin:2px 0 0}.live{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted);white-space:nowrap}.dot{width:7px;height:7px;background:#42d49b;border-radius:50%;box-shadow:0 0 9px #42d49b}.search{margin-left:auto;width:min(440px,34vw);position:relative}.search input{width:100%;height:38px;border-radius:20px;border:1px solid var(--line);background:#172131;color:var(--text);padding:0 46px 0 17px;outline:none}.search input:focus{border-color:var(--cyan)}.search button{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:31px;height:31px;padding:0;border:0;border-radius:50%;background:var(--gold);color:#151b26;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.search button span{display:block;font-size:21px;line-height:1;transform:translateY(-1px)}.icon-btn{width:38px;height:38px;border-radius:9px;border:1px solid var(--line);background:#172131;color:var(--text);cursor:pointer}
.metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:12px 22px}.metric{border:1px solid var(--line);background:var(--panel);border-radius:9px;display:flex;align-items:center;gap:13px;padding:12px 15px;box-shadow:0 8px 30px rgba(0,0,0,.12)}.metric i{font-style:normal;width:40px;height:40px;border-radius:8px;background:#202d42;display:grid;place-items:center;font-size:19px}.metric b{font-size:22px;color:var(--cyan);display:block}.metric:nth-child(2) b{color:var(--gold)}.metric small{font-size:11px;color:var(--muted)}
.workspace{min-height:0;display:grid;grid-template-columns:270px minmax(400px,1fr) 310px;gap:12px;padding:0 22px 18px}.left,.right{min-height:0;overflow:auto;display:flex;flex-direction:column;gap:10px;scrollbar-width:thin}.panel{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:14px}.panel-title{font-size:13px;font-weight:600;margin-bottom:13px}.panel-title em{display:block;color:var(--gold);font-size:9px;font-style:normal;letter-spacing:2px;margin-bottom:3px}.signal{display:flex;align-items:center;gap:14px}.signal-num{font-size:44px;font-weight:700;color:var(--gold);line-height:1}.signal b{font-size:14px}.signal small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.nearby-permission{display:flex;flex-direction:column;gap:7px}.nearby-permission b{font-size:13px}.nearby-permission span{font-size:10px;line-height:1.6;color:var(--muted)}.nearby-permission button{border:1px solid var(--gold);border-radius:5px;background:rgba(227,173,86,.1);color:var(--gold);padding:7px;cursor:pointer}.nearby-list{display:flex;flex-direction:column;gap:4px;margin-top:10px}.nearby-list button{display:flex;justify-content:space-between;gap:8px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);padding:7px 1px;cursor:pointer;text-align:left}.nearby-list button b{color:var(--cyan);font-size:10px;white-space:nowrap}.progress{height:5px;background:#28364b;border-radius:4px;margin-top:13px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),#ff7d65)}
.donut-row{display:flex;align-items:center;gap:18px}.donut{width:98px;height:98px;border-radius:50%;display:grid;place-items:center;position:relative}.donut:after{content:'';position:absolute;inset:12px;background:var(--panel);border-radius:50%}.donut span{z-index:1;text-align:center;font-size:20px}.donut span small{display:block;font-size:9px;color:var(--muted)}.legend{flex:1}.legend div{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:7px 0}.legend i{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px}.bar-row{display:grid;grid-template-columns:48px 1fr 22px;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin:8px 0}.bar{height:5px;background:#28364b;border-radius:5px;overflow:hidden}.bar i{height:100%;display:block;background:var(--cyan)}
.map-panel{min-height:0;position:relative;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#111a28}#map{position:absolute;inset:0;z-index:0;width:100%;height:100%;min-height:100%}.map-grid{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(rgba(91,123,153,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(91,123,153,.08) 1px,transparent 1px);background-size:38px 38px}.map-toolbar{position:absolute;z-index:600;top:13px;left:13px;right:13px;display:flex;justify-content:space-between;pointer-events:none}.map-toolbar>*{pointer-events:auto}.scope{padding:8px 15px;background:var(--gold);color:#161616;border-radius:5px;font-size:12px;font-weight:700}.controls{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:82%}.controls select,.controls button{height:34px;border:1px solid var(--line);border-radius:6px;background:rgba(20,29,43,.94);color:var(--text);padding:0 10px;cursor:pointer}.legacy-filter{display:none!important}.filter-crumbs{height:34px;display:flex;align-items:center;border:1px solid var(--line);border-radius:7px;background:rgba(20,29,43,.96);overflow:hidden}.filter-crumbs>button{height:32px!important;border:0!important;border-radius:0!important;background:transparent!important;padding:0 9px!important;display:flex;align-items:center;gap:6px;max-width:132px}.filter-crumbs>button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-crumbs>button i{font-style:normal;color:var(--gold);font-size:10px}.filter-crumbs>button:hover,.filter-crumbs>button.active{background:rgba(227,173,86,.14)!important;color:var(--gold)}.filter-crumbs>b{font-weight:400;color:#607089;font-size:15px}.filter-drawer{position:absolute;z-index:790;top:0;left:0;width:min(360px,88%);height:100%;background:rgba(17,25,38,.98);border-right:1px solid var(--line);box-shadow:18px 0 50px rgba(0,0,0,.42);transform:translateX(-105%);transition:transform .28s ease;display:flex;flex-direction:column}.filter-drawer.show{transform:translateX(0)}.drawer-mask{position:absolute;z-index:780;inset:0;background:rgba(4,8,14,.42);opacity:0;visibility:hidden;transition:.2s}.drawer-mask.show{opacity:1;visibility:visible}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 15px;border-bottom:1px solid var(--line)}.drawer-head small{display:block;color:var(--gold);font-size:9px;letter-spacing:2px;margin-bottom:7px}.drawer-head>button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#202c40;color:#fff;font-size:20px;cursor:pointer}.drawer-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px}.drawer-breadcrumb button{border:0;background:none;color:#e9eef6;padding:0;cursor:pointer}.drawer-breadcrumb button:hover{color:var(--gold)}.drawer-breadcrumb b{color:#63728a}.drawer-breadcrumb span{color:var(--gold)}.drawer-options{padding:12px;overflow:auto;display:grid;gap:6px}.drawer-option{min-height:43px;border:1px solid #2a384d;border-radius:7px;background:#182336;color:#dfe7f2;padding:0 13px;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.drawer-option:hover,.drawer-option.selected{border-color:var(--gold);background:rgba(227,173,86,.1);color:#fff}.drawer-option i{font-style:normal;color:var(--gold)}.drawer-empty{padding:40px 12px;text-align:center;color:var(--muted);font-size:12px}#map{height:100%;z-index:2}.leaflet-container{background:#111a28;font-family:inherit}.leaflet-control-zoom a{background:#182437!important;color:#fff!important;border-color:#2d3b50!important}.leaflet-bottom.leaflet-right{bottom:28px}.leaflet-control-attribution{margin-right:10px!important;margin-bottom:-25px!important;opacity:.72}
.map-watermark{position:absolute;z-index:650;left:12px;bottom:12px;padding:2px 4px;background:transparent;color:rgba(0,0,0,.52);font:italic 700 14px/1.1 "Segoe Print","Bradley Hand","Comic Sans MS",cursive;letter-spacing:.4px;pointer-events:none;opacity:.58;transform:rotate(-3deg)}.map-watermark b{font:inherit;color:inherit;letter-spacing:inherit}
.hotspot{width:18px;height:18px;border:2px solid #ffe0a0;border-radius:50%;background:#e8a94f;box-shadow:0 0 5px #ffd17c,0 0 18px rgba(236,168,70,.85);position:relative}.hotspot:after{content:'';position:absolute;inset:-7px;border:1px solid rgba(255,204,111,.5);border-radius:50%;animation:pulse 1.8s infinite}.hotspot.lv5{background:#ff6b71;border-color:#ffd4d5;box-shadow:0 0 7px #ff7d82,0 0 22px rgba(255,70,80,.9)}@keyframes pulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.55);opacity:0}}
.profile{display:none}.profile.show{display:block}.side-profile{position:relative;flex:0 0 auto;width:100%;background:rgba(20,29,43,.98);color:var(--text);border:1px solid var(--gold);border-radius:9px;padding:15px;box-shadow:0 12px 35px rgba(0,0,0,.28)}.profile .close{float:right;border:0;background:transparent;color:var(--muted);font-size:21px;cursor:pointer}.profile .eyebrow{color:var(--gold)}.profile h2{margin:4px 0 2px;font-size:18px}.profile .meta{font-size:11px;color:var(--muted)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:12px 0;padding:9px 0}.profile-stats div{text-align:center;border-right:1px solid var(--line)}.profile-stats div:last-child{border:0}.profile-stats b{display:block;font-size:15px;color:var(--gold)}.profile-stats small{color:var(--muted);font-size:9px}.profile p{font-size:11px;line-height:1.75;color:#bdc8d5;max-height:110px;overflow:auto}.profile-actions{display:flex;gap:7px;margin-top:10px}.profile-actions button{flex:1;border:1px solid var(--line);border-radius:5px;padding:8px;background:#172131;color:white;cursor:pointer}.profile-actions .fav{background:var(--gold);color:#172131}
.rank-head{display:flex;justify-content:space-between;align-items:end}.rank-head small{font-size:10px;color:var(--muted)}.ranking{overflow:auto}.rank-item{display:grid;grid-template-columns:26px 1fr 35px;align-items:center;padding:11px 2px;border-bottom:1px solid var(--line);cursor:pointer}.rank-item:hover{background:#1d293c}.rank-no{font-size:17px;color:var(--gold);font-weight:700}.rank-item b{font-size:12px;display:block}.rank-item small{color:var(--muted);font-size:9px}.score{color:var(--cyan);font-weight:700}.view-all{width:100%;border:1px solid var(--gold);background:transparent;color:var(--gold);padding:9px;border-radius:5px;margin-top:12px;cursor:pointer}.region-item{display:grid;grid-template-columns:50px 1fr 20px;gap:8px;align-items:center;font-size:10px;margin:8px 0;color:var(--muted)}
.welcome{position:fixed;inset:0;z-index:8000;background:rgba(5,10,17,.72);backdrop-filter:blur(5px);display:grid;place-items:center}.welcome.hidden{display:none}.welcome-card{width:min(520px,90vw);background:#f5f7f8;color:#152034;padding:32px;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.55);text-align:center}.welcome-card .crest{font-size:39px;color:#b68539}.welcome-card .eyebrow{color:#a7772f}.welcome-card h2{margin:8px 0}.welcome-card p{font-size:13px;color:#657184;line-height:1.8}.welcome-card button{margin-top:20px;border:0;border-radius:5px;padding:11px 32px;background:#152034;color:#fff;cursor:pointer}
.toast{position:absolute;z-index:900;left:50%;bottom:20px;transform:translateX(-50%) translateY(15px);background:#ecf1f4;color:#182133;border-radius:5px;padding:9px 15px;font-size:11px;opacity:0;transition:.25s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.state-text{min-height:48px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:11px;text-align:center}.skeleton{opacity:.62;animation:skel 1.3s ease-in-out infinite alternate}@keyframes skel{to{opacity:.9}}.error-wide{grid-column:1/-1;border-color:rgba(255,107,113,.55)}.error-wide b{color:var(--red)}.data-error{display:flex;flex-direction:column;gap:7px;align-items:flex-start;padding:8px 0;color:var(--muted);font-size:10px}.data-error b{color:var(--red);font-size:12px}.data-error span{word-break:break-word}.data-error a{color:var(--gold)}
.site-footer{height:30px;display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid var(--line);background:#0e1520;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;padding:0 12px}.site-footer a{color:#aab8cb;text-decoration:none}.site-footer a:hover{color:var(--gold)}
@media(max-width:1050px){.workspace{grid-template-columns:230px 1fr}.right{display:none}.detail-open .workspace{grid-template-columns:230px minmax(360px,1fr) 290px}.detail-open .right{display:flex}.detail-open .ranking{display:none}.metrics{grid-template-columns:repeat(3,1fr)}.metrics .metric:nth-child(n+4){display:none}.brand{min-width:auto}.live{display:none}}
@media(max-width:720px){.detail-open .workspace{grid-template-columns:1fr}.detail-open .right{display:flex;position:fixed;z-index:1700;left:8px;right:8px;bottom:48px;max-height:58vh;overflow:auto}.detail-open .side-profile{display:block}.globe-info{top:auto;right:10px;left:10px;bottom:82px;width:auto;transform:translateY(10px)}.globe-info.show{transform:translateY(0)}#globe:before{top:18px;left:18px}#globe:after{display:none}.app{grid-template-rows:58px 62px minmax(0,1fr) 40px}.header{padding:0 8px;gap:7px}.brand{min-width:0;max-width:42%}.brand h1{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand .eyebrow{display:none}.brand-icon{width:29px;height:29px;flex:0 0 29px}.search{width:auto;flex:1;min-width:0;margin-left:0}.search input{height:35px;padding-left:12px;font-size:12px}.search button{width:28px;height:28px}.icon-btn{display:none}.metrics{padding:7px 8px;gap:5px;overflow-x:auto;grid-template-columns:repeat(5,minmax(105px,1fr));scrollbar-width:none}.metrics::-webkit-scrollbar{display:none}.metric{padding:7px 9px;min-width:105px}.metric i{display:none}.metric b{font-size:16px}.metric small{font-size:9px}.workspace{grid-template-columns:1fr;padding:0 7px 7px;min-height:0}.left,.right{display:none}.map-panel{border-radius:7px}.map-toolbar{top:7px;left:7px;right:7px;align-items:flex-start;gap:5px}.scope{padding:7px 9px;font-size:10px;white-space:nowrap}.controls{gap:4px;display:flex;flex-wrap:nowrap;justify-content:flex-end;max-width:100%;overflow-x:auto;scrollbar-width:none}.controls::-webkit-scrollbar{display:none}.controls select,.controls button{height:31px;padding:0 7px;font-size:10px;min-width:86px;max-width:110px;flex:0 0 auto}.controls button{min-width:58px}.filter-crumbs{flex:0 0 auto;height:31px}.filter-crumbs>button{height:29px!important;min-width:auto!important;max-width:96px!important;padding:0 7px!important}.filter-drawer{position:fixed;top:auto;bottom:0;left:0;width:100%;height:min(72vh,520px);border-right:0;border-top:1px solid var(--line);border-radius:16px 16px 0 0;transform:translateY(105%)}.filter-drawer.show{transform:translateY(0)}.drawer-mask{position:fixed}.drawer-options{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-option{min-width:0}.map-watermark{left:8px;bottom:8px;padding:6px 9px;font-size:10px}.profile{top:48px;width:calc(100% - 14px);max-height:calc(100% - 60px);overflow:auto;padding:14px}.profile h2{font-size:17px}.profile-stats b{font-size:13px}.profile-actions{position:sticky;bottom:0;background:rgba(20,29,43,.98);padding-top:7px}.toast{bottom:45px;width:max-content;max-width:88%;text-align:center}.leaflet-bottom.leaflet-right{bottom:8px}.leaflet-control-attribution{display:none}.welcome-card{padding:24px 18px}.welcome-card h2{font-size:20px}.site-footer{height:40px;flex-wrap:wrap;align-content:center;gap:3px 7px;font-size:9px;line-height:1.2}.footer-sep{display:none}}
@media(max-width:390px){.brand{max-width:38%}.brand-icon{display:none}.brand h1{font-size:13px}.controls{max-width:calc(100% - 68px)}.scope{padding:7px 6px}.metrics{grid-template-columns:repeat(5,100px)}}

/* v5.7 民俗夜档案视觉修订：去掉通用 AI 仪表盘感，保留原有布局和功能 */
:root{
 --bg:#090c0f;--panel:rgba(17,20,21,.96);--panel2:#171b1b;--line:#363832;
 --text:#e7e1d3;--muted:#918f85;--cyan:#83aaa2;--gold:#b35a39;--red:#be5146;
 --paper:#d9cfb8;--ink:#171816;--locate-yellow:#f2c94c
}
body{background:#090c0f;color:var(--text);font-family:'Noto Sans SC','Microsoft YaHei',sans-serif}
body:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.018) 3px 4px),radial-gradient(circle at 16% 12%,rgba(122,50,31,.16),transparent 32%)}
.app{grid-template-rows:70px 66px minmax(0,1fr) 30px;background:transparent}
.header{padding:0 24px;border-bottom:1px solid #413c32;background:#0d1011;box-shadow:0 5px 24px rgba(0,0,0,.32)}
.brand{min-width:330px}.brand-icon{border-radius:1px;border-color:#71361f;box-shadow:none;transform:rotate(-1deg)}
.brand-name h1{font-family:'STKaiti','KaiTi','Noto Serif SC',serif;font-size:22px;font-weight:700;letter-spacing:3px;color:#eee5d2}
.live{font-family:Consolas,monospace;font-size:10px;letter-spacing:.5px}.dot{border-radius:0;width:6px;height:6px;background:#a84e34;box-shadow:none;transform:rotate(45deg)}
.search{width:min(420px,34vw)}.search input{height:36px;border:0;border-bottom:1px solid #5d584c;border-radius:0;background:transparent;padding-left:4px;color:#34f782}.search input::placeholder{color:#eee7d8;opacity:1}.search input:focus{border-color:#c57b52;box-shadow:none}.search button{right:0;width:32px;height:29px;border-radius:1px;background:#b35a39;color:#f4e9d4}.icon-btn{border-radius:1px;background:transparent;border-color:#494a44}
.metrics{display:flex;align-items:center;gap:0;padding:0 24px;border-bottom:1px solid #292c29;background:#0b0e0f;overflow-x:auto}
.metric{position:relative;min-width:145px;height:65px;padding:10px 28px 10px 16px;gap:9px;border:0;border-right:1px dashed #3b3c36;border-radius:0;background:transparent;box-shadow:none}
.metric:first-child{padding-left:0}.metric i{width:auto;height:auto;border-radius:0;background:transparent;color:#766d5d;font-size:15px}.metric b{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-weight:500;color:#d6c6a6!important}.metric small{font-size:10px;letter-spacing:.7px;color:#7f817b}
.workspace{grid-template-columns:258px minmax(400px,1fr) 298px;gap:10px;padding:10px 14px 12px}
.left,.right{gap:8px}.panel{position:relative;border:1px solid #343732;border-radius:1px;background:#121516;padding:15px;box-shadow:none}.panel:before{content:'';position:absolute;left:-1px;top:12px;width:2px;height:24px;background:#8e452f}.panel-title{font-family:'STKaiti','KaiTi',serif;font-size:14px;letter-spacing:1px;margin-bottom:12px;color:#ddd3bf}.panel-title em{display:none}
.nearby-permission{border-left:1px solid #4b493f;padding-left:10px}.nearby-permission b{font-family:'STKaiti','KaiTi',serif;font-size:14px}.nearby-permission span{color:#888981}
.nearby-permission button{margin-top:3px;border:1px solid #d8aa2e;border-radius:1px;background:var(--locate-yellow);color:#241d0c;padding:8px 10px;font-weight:700;letter-spacing:1px;box-shadow:3px 3px 0 #5d4610}
.nearby-permission button:hover{background:#ffdc59;transform:translate(-1px,-1px);box-shadow:4px 4px 0 #5d4610}
.signal-num{font-family:Georgia,serif;color:#c16a49}.progress,.bar{border-radius:0}.progress i{background:#a65338}
.donut:after{background:#121516}.legend div{border-bottom:1px dotted #33352f;padding-bottom:3px}.bar i{background:#8ea39c}
.category-chart-row{align-items:flex-start}.category-donut-wrap{position:relative;flex:0 0 112px;width:112px;height:112px}.category-donut-svg{display:block;width:112px;height:112px;overflow:visible}.category-slice{cursor:pointer;transition:filter .15s,opacity .15s,transform .15s;transform-origin:50% 50%}.category-slice:hover,.category-slice.active{filter:brightness(1.28) saturate(1.12);stroke:#f4e9d4;stroke-width:1.4}.category-legend-item{cursor:pointer}.category-legend-item:hover{color:#f4e9d4;background:rgba(227,173,86,.08)}.category-total{fill:#e5d8c2;font:700 10px Georgia,serif}.category-total-label{fill:#898d85;font:5px 'Microsoft YaHei',sans-serif}.category-tooltip{position:absolute;left:50%;top:calc(100% + 7px);z-index:20;min-width:130px;padding:6px 8px;border:1px solid #8f7650;background:#101516;color:#f3e8d3;font:11px/1.4 'Microsoft YaHei',sans-serif;text-align:center;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-3px);transition:opacity .12s,transform .12s;box-shadow:0 5px 16px #0008}.category-tooltip.show{opacity:1;transform:translate(-50%,0)}.category-chart-row .legend{max-height:145px;overflow-y:auto;padding-right:4px}.category-legend-item{cursor:default;transition:background .12s,color .12s;padding:2px 3px}.category-legend-item:hover,.category-legend-item.active{background:rgba(227,173,86,.12);color:#e8d7b7}
.map-panel{border-color:#3f4038;border-radius:1px;background:#0d1112;box-shadow:0 0 0 1px #090b0b,0 10px 35px rgba(0,0,0,.25)}
.map-grid{opacity:.38;background-size:46px 46px}
.scope{border-radius:0;background:#a94e33;color:#f6ead2;font-family:'STKaiti','KaiTi',serif;letter-spacing:1px}
.controls select,.controls button,.filter-crumbs{border-color:#4c4b42;border-radius:1px;background:rgba(13,16,17,.94)}
.controls select:focus,.controls button:focus{outline:1px solid #a65a3b;outline-offset:1px}
#locateBtn{border-color:#d7ad35!important;background:var(--locate-yellow)!important;color:#211b0d!important;font-weight:700;box-shadow:3px 3px 0 rgba(75,57,12,.9)}
#locateBtn:hover{background:#ffdc59!important;transform:translate(-1px,-1px)}

.filter-crumbs>button:hover,.filter-crumbs>button.active{background:#25221d!important;color:#d78a62}.filter-crumbs>button i{color:#ba6745}
.filter-drawer{background:#101314;border-right-color:#4d493e;box-shadow:14px 0 35px rgba(0,0,0,.5)}
.drawer-option{border-radius:0!important}.drawer-option.selected{background:#30251f!important;color:#e5c8a7!important}
.map-watermark{border-radius:1px;border-color:rgba(208,190,153,.25);background:rgba(12,14,14,.68);box-shadow:none;color:#c7c0b1}.map-watermark span{color:#bb6443;text-shadow:none}
.amap-place-icon{background:transparent!important;border:0!important}.hotspot{position:relative;width:14px;height:14px;border:1.5px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--marker-color,#e8473f);box-shadow:0 1px 4px rgba(0,0,0,.55),0 0 0 1px rgba(125,18,18,.35)}.hotspot i{position:absolute;left:3px;top:3px;width:5px;height:5px;border-radius:50%;background:#fff}.hotspot:after{content:none}.hotspot.lv5{border-color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.6),0 0 0 1px rgba(100,10,10,.45)}
.side-profile{border-radius:1px;border-color:#79442f;background:#111415;box-shadow:8px 8px 0 rgba(0,0,0,.25)}.profile .eyebrow{font-family:Consolas,monospace;color:#986249;letter-spacing:2px}.profile h2{font-family:'STKaiti','KaiTi',serif;letter-spacing:1px}.profile-actions button,.profile-actions .fav{border-radius:1px}.profile-actions .fav{background:#a95236;color:#f5ead7}
.rank-item{grid-template-columns:34px 1fr 35px;border-bottom:1px dotted #3c3d37}.rank-item:hover{background:#1d1d19}.rank-no{font-family:Georgia,serif;font-weight:400;color:#a65b3e}.score{color:#91aaa2}.view-all{border-radius:1px;border-color:#7b4936;color:#c98261}
.welcome{background:var(--welcome-overlay,rgba(5,7,7,.82))}.welcome-card{border-radius:1px;border:1px solid #8d826b;background:var(--welcome-bg,#ddd3bd);color:#1a1b18;box-shadow:12px 12px 0 rgba(0,0,0,.45);text-align:left}.welcome-card .crest{text-align:center;color:var(--welcome-accent,#8e3d28)}.welcome-card .eyebrow{color:var(--welcome-accent,#8e3d28)}.welcome-card h2{font-family:'STKaiti','KaiTi',serif;text-align:center;letter-spacing:2px;color:var(--welcome-title,#1a1b18)}.welcome-card p{color:var(--welcome-text,#53544e);border-top:1px solid #aaa08b;border-bottom:1px solid #aaa08b;padding:14px 0}.welcome-card button{display:block;margin:20px auto 0;border-radius:1px;background:var(--welcome-button,#8f432e);color:var(--welcome-button-text,#f7ecd8);box-shadow:4px 4px 0 #4b2a20}
.view-toggle{border-radius:1px;border-color:#49483f;background:#0e1112;box-shadow:5px 5px 0 rgba(0,0,0,.25)}.view-toggle button.active{background:#a84f34;color:#f5e8d2}
.site-footer{border-top-color:#2e302d;background:#0a0d0e}.toast{border-radius:1px;background:#d9cfb8;color:#1d1e1a;box-shadow:4px 4px 0 rgba(0,0,0,.35)}
@media(max-width:720px){
 .globe-watermark{display:none!important}
 .map-watermark{position:fixed;z-index:615;left:calc(50% - 152px);bottom:calc(max(34px,env(safe-area-inset-bottom)) + 10px);font-size:11px;opacity:.46;transform:translateX(-50%) rotate(-3deg)}

 .app{grid-template-rows:58px 55px minmax(0,1fr) 40px}.header{padding:0 9px}.brand-name h1{font-size:14px;letter-spacing:1px}.metrics{padding:0 8px}.metric{height:54px;min-width:108px;padding:6px 12px}.metric:first-child{padding-left:2px}.metric b{font-size:16px}.workspace{padding:7px}.map-panel{border-radius:1px}.welcome-card{padding:24px}.view-toggle{bottom:51px}
}

/* v5.8 全设备自适应修复 */
html,body,#app{width:100%;height:100%;height:100dvh;min-width:0}.app,.workspace,.map-panel,#map{min-width:0;min-height:0}.header>*{min-width:0}.view-toggle{max-width:calc(100vw - 24px)}.view-toggle button{white-space:nowrap}.view-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
@media(min-width:721px) and (max-width:1280px){.header{gap:14px;padding-inline:14px}.brand{min-width:245px}.brand-name h1{font-size:18px;letter-spacing:2px}.search{width:min(360px,31vw)}.workspace{grid-template-columns:225px minmax(360px,1fr) 270px;padding-inline:10px}.metric{min-width:132px;padding-right:18px}}
@media(min-width:721px) and (max-width:1024px){.workspace{grid-template-columns:210px minmax(0,1fr)}.right{display:none}.controls{max-width:100%}.filter-crumbs>button{max-width:105px}.view-toggle{bottom:48px}}
@media(max-width:720px){body{position:fixed;inset:0;width:100%;height:100%;height:100dvh;overscroll-behavior:none}.app{width:100vw;height:100%;height:100dvh;grid-template-rows:54px 48px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))}.header{gap:6px;padding:0 max(8px,env(safe-area-inset-left)) 0 max(8px,env(safe-area-inset-right))}.brand{flex:0 1 auto;max-width:46%;gap:6px}.brand-icon{width:28px;height:28px;flex-basis:28px}.brand-name{height:34px;min-width:0}.brand-name h1{display:block;line-height:34px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.search{min-width:92px}.search input{font-size:11px;padding-right:34px}.search button{right:1px}.metrics{height:48px;padding:0 7px;scroll-snap-type:x proximity}.metric{height:47px;min-width:104px;scroll-snap-align:start;padding:5px 10px}.metric small{display:block;white-space:nowrap}.workspace{width:100%;height:100%;padding:5px;overflow:hidden}.map-panel{width:100%;height:100%}.map-toolbar{top:5px;left:5px;right:5px;display:block;pointer-events:none}.map-toolbar .controls{pointer-events:auto;display:grid!important;grid-template-columns:minmax(0,1fr) 90px 74px;grid-template-rows:32px;align-items:stretch;width:100%;max-width:none!important;gap:4px;overflow:visible!important;padding:0}.filter-crumbs{display:grid!important;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr) 10px minmax(0,1fr);width:100%;max-width:none!important;min-width:0;height:32px;overflow:hidden;flex:none!important}.filter-crumbs>button{display:flex!important;width:100%;min-width:0!important;max-width:none!important;height:30px!important;padding:0 4px!important;justify-content:center;font-size:10px!important}.filter-crumbs>button span{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-crumbs>button i{flex:0 0 auto}.filter-crumbs>b{display:flex;align-items:center;justify-content:center;font-size:11px}.controls #baseSelect,.controls #locateBtn{width:100%!important;min-width:0!important;max-width:none!important;height:32px;flex:none!important;padding:0 4px;font-size:10px}#baseSelect{min-width:0}.map-watermark{max-width:calc(100% - 76px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.leaflet-bottom.leaflet-right{bottom:4px!important;right:4px!important}.view-toggle{position:fixed;left:50%;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 8px);width:auto;max-width:calc(100vw - 18px);transform:translateX(-50%);z-index:1600}.view-toggle button{height:32px;min-width:0;padding:0 11px;font-size:11px;gap:4px}.view-icon{font-size:13px}.site-footer{height:max(34px,env(safe-area-inset-bottom));padding:0 max(8px,env(safe-area-inset-left)) env(safe-area-inset-bottom) max(8px,env(safe-area-inset-right));font-size:8px}.detail-open .right{left:5px;right:5px;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 48px);max-height:60dvh}.profile-actions{padding-bottom:env(safe-area-inset-bottom)}.filter-drawer{height:min(74dvh,560px);padding-bottom:env(safe-area-inset-bottom)}.drawer-options{overflow:auto;-webkit-overflow-scrolling:touch}.welcome-card{width:calc(100vw - 28px);max-height:calc(100dvh - 36px);overflow:auto;margin:auto}.toast{position:fixed;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 48px)}}
@media(max-width:480px){.brand{max-width:41%}.brand-icon{display:none}.brand-name h1{font-size:12px;letter-spacing:.5px}.search input{height:32px}.metrics{scrollbar-width:none}.metrics::-webkit-scrollbar{display:none}.controls{overflow-x:auto;-webkit-overflow-scrolling:touch}.filter-crumbs{flex:0 0 232px}.filter-crumbs>button{max-width:68px!important;font-size:9px!important}#baseSelect{flex:0 0 80px}.controls #locateBtn{flex:0 0 72px}.drawer-options{grid-template-columns:1fr 1fr}.view-toggle button{padding-inline:9px}.view-toggle button span:last-child{max-width:72px;overflow:hidden;text-overflow:ellipsis}.map-watermark{font-size:8px;padding:5px 7px}}
@media(max-width:340px){.brand{max-width:35%}.brand-name h1{font-size:11px}.search input{font-size:10px}.filter-crumbs{flex-basis:210px}.view-toggle button{padding-inline:7px;font-size:10px}.view-toggle button span:last-child{max-width:58px}.site-footer{font-size:7px}}
@media(max-height:560px) and (max-width:900px){.app{grid-template-rows:48px 0 minmax(0,1fr) max(30px,env(safe-area-inset-bottom))}.metrics{display:none!important}.header{height:48px}.view-toggle{bottom:calc(max(30px,env(safe-area-inset-bottom)) + 5px)}.welcome-card{max-height:90dvh;padding:16px}.detail-open .right{max-height:72dvh}}
/* 手机地图筛选最终覆盖：禁止旧版横向 flex 规则造成国家/省份/类型错位 */
@media(max-width:480px){.map-toolbar .controls{display:grid!important;grid-template-columns:minmax(0,1fr) 82px 70px!important;overflow:visible!important}.map-toolbar .filter-crumbs{display:grid!important;width:100%!important;max-width:none!important;min-width:0!important;flex:none!important}.map-toolbar .filter-crumbs>button{width:100%!important;min-width:0!important;max-width:none!important;font-size:9px!important}.map-toolbar #baseSelect,.map-toolbar #locateBtn{width:100%!important;min-width:0!important;max-width:none!important;flex:none!important}}
@media(max-width:360px){.map-toolbar .controls{grid-template-columns:minmax(0,1fr) 72px 62px!important;gap:3px}.map-toolbar .filter-crumbs{grid-template-columns:minmax(0,1fr) 7px minmax(0,1fr) 7px minmax(0,1fr)}.map-toolbar .filter-crumbs>button{padding:0 2px!important;font-size:8px!important}.map-toolbar #baseSelect,.map-toolbar #locateBtn{font-size:9px;padding:0 2px}}

/* v5.8.2 手机工具区重新分区：筛选独占首行，底图和定位位于第二行 */
@media(max-width:720px){
 .map-toolbar{top:6px!important;left:6px!important;right:6px!important;height:68px!important}
 .map-toolbar .controls{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:32px 32px!important;gap:4px!important;width:100%!important;overflow:visible!important}
 .map-toolbar .filter-crumbs{grid-column:1/-1!important;grid-row:1!important;width:100%!important;height:32px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr) 10px minmax(0,1fr)!important;min-width:0!important;max-width:none!important;overflow:hidden!important}
 .map-toolbar #baseSelect{grid-column:1!important;grid-row:2!important;width:100%!important;height:32px!important;min-width:0!important;max-width:none!important}
 .map-toolbar #locateBtn{grid-column:2!important;grid-row:2!important;width:100%!important;height:32px!important;min-width:0!important;max-width:none!important}
 .map-toolbar .filter-crumbs>button{width:100%!important;min-width:0!important;max-width:none!important;height:30px!important;padding:0 5px!important;font-size:10px!important}
 .map-toolbar .filter-crumbs>button span{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
 .leaflet-control-zoom{margin-bottom:42px!important}
 .view-toggle{position:fixed!important;left:50%!important;right:auto!important;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 4px)!important;transform:translateX(-50%)!important;margin:0!important}
}
@media(max-width:360px){.map-toolbar .filter-crumbs>button{font-size:9px!important;padding:0 3px!important}}

/* 右侧省城热力 */
.capital-heat{padding:10px!important;flex:0 0 auto}.capital-heat:before{background:#b35a39}.heat-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.heat-head small{display:block;color:#8f8d84;font-size:9px;letter-spacing:1px}.heat-head b{display:block;margin-top:2px;font-family:'STKaiti','KaiTi',serif;font-size:14px;color:#ded4c0}.heat-head a,.heat-fallback a{color:#d18460;text-decoration:none;font-size:9px;white-space:nowrap}.heat-frame-wrap{position:relative;height:190px;border:1px solid #3a3b35;background:#070a0b;overflow:hidden}.heat-frame-wrap iframe{display:block;width:100%;height:100%;border:0;background:#05090c}.heat-fallback{position:absolute;left:6px;right:6px;bottom:6px;display:flex;justify-content:space-between;gap:8px;padding:5px 7px;background:rgba(8,11,12,.82);color:#888b87;font-size:8px;pointer-events:none}.heat-fallback a{pointer-events:auto}
@media(max-width:1050px){.detail-open .capital-heat{display:block}}
@media(max-width:720px){.capital-heat{display:none!important}}

/* v5.9：地图占满手机可用区域；热力图为本站独立绘制，不再嵌套外站 */
.heat-live{color:#e2b449;font:9px Consolas,monospace;white-space:nowrap}.heat-board{position:relative;height:190px;border:1px solid #3a3b35;background:#071015;overflow:hidden}.heat-board canvas{display:block;width:100%;height:100%}.heat-scale{position:absolute;right:6px;bottom:6px;display:flex;align-items:center;gap:4px;color:#9b9d91;font-size:8px;background:rgba(5,9,10,.72);padding:3px 5px}.heat-scale i{width:48px;height:5px;background:linear-gradient(90deg,#d83445,#f06d2d,#ffd84f)}.heat-caption{margin-top:6px;color:#777b73;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:720px){
 html,body,#app{height:100%!important;height:100dvh!important;overflow:hidden!important}.app{height:100%!important;height:100dvh!important;grid-template-rows:54px 48px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important}.workspace{height:auto!important;min-height:0!important;overflow:hidden!important;padding:0 5px 5px!important}.map-panel{height:100%!important;min-height:0!important}.map-panel #map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.map-panel .map-grid{inset:0!important}.capital-heat{display:none!important}
}
@media(max-width:720px){
 /* 单栏手机布局：隐藏桌面左右侧栏，地图独占整个主体宽度 */
 .workspace{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;width:100vw!important;max-width:100vw!important;margin:0!important;padding:0!important;gap:0!important;overflow:hidden!important}
 .workspace>.left,.workspace>.right{display:none!important;width:0!important;min-width:0!important;max-width:0!important;overflow:hidden!important}
 .workspace>.map-panel{display:block!important;grid-column:1!important;grid-row:1!important;width:100%!important;max-width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;border-left:0!important;border-right:0!important}
 .app{grid-template-rows:54px 48px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important;width:100vw!important;max-width:100vw!important;overflow:hidden!important}
 .metrics{width:100vw!important;max-width:100vw!important;min-width:0!important;overflow-x:auto!important}
 .map-panel #map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
 .map-panel .map-toolbar{width:calc(100% - 12px)!important;max-width:none!important}
 .view-toggle{position:fixed!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important}
}
@media(max-width:360px){.workspace>.map-panel{width:100vw!important}.map-panel .map-toolbar{width:calc(100% - 12px)!important}}

/* 点击地点后：右栏改为景点档案，隐藏高危地点榜单 */
.detail-open .ranking{display:none!important}.detail-open .side-profile{display:block!important}.scenic-cover{min-height:190px;margin:-15px -15px 0;padding:105px 15px 16px;background-color:#0b1b22;background-position:center;background-size:cover;border-bottom:1px solid #35525b}.scenic-kicker{color:#e7bf53;font-size:10px;letter-spacing:1px}.scenic-cover h2{margin:5px 0;font-size:24px;color:#f3f0e7;letter-spacing:1px}.scenic-place{color:#9fc1c5;font-size:11px}.scenic-score{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #34464a}.score-circle{width:62px;height:62px;border:1px solid #d3a83f;border-radius:50%;display:grid;place-items:center}.score-circle b{font-size:20px;color:#f0c551}.score-circle small{font-size:8px;color:#8daeb1;margin-top:-20px}.scenic-score strong{font-size:12px}.stars{color:#e9bd48;letter-spacing:2px;margin:5px 0}.scenic-score small{color:#84a3a7;font-size:9px}.scenic-section{padding:13px 0;border-bottom:1px solid #34464a}.scenic-section h3{border-left:3px solid #64b5a8;padding-left:9px;margin:0 0 8px;font-size:14px}.scenic-section h3 em{float:right;color:#708b8f;font:9px Consolas,monospace;font-style:normal}.scenic-section p,.scenic-section .rich{font-size:11px;line-height:1.8;color:#b5c7c6;margin:0}.scenic-section.rich img{max-width:100%;height:auto}.profile-actions .external{flex:1;display:flex;align-items:center;justify-content:center;border:1px solid #a85b3c;border-radius:1px;background:#a95236;color:#f5ead7;text-decoration:none;font-size:11px}.detail-open .profile-actions{flex-wrap:wrap}.detail-open .profile-actions>*{min-height:32px}
@media(max-width:720px){.detail-open .workspace>.right{display:flex!important;position:fixed!important;z-index:1700;left:5px;right:5px;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 44px);width:auto!important;max-width:none!important;min-width:0!important;height:auto;max-height:72dvh;background:#111415;overflow:auto;padding:0}.detail-open .workspace>.right .side-profile{width:100%;margin:0}.detail-open .workspace>.right .capital-heat{display:none!important}.detail-open .scenic-cover{min-height:170px}.detail-open .scenic-cover h2{font-size:21px}}

/* 前台不显示高危档案榜单与进入后台按钮；右栏仅保留档案密度图/地点详情 */
.ranking,.view-all{display:none!important}

/* v6.1.3：桌面端详情保持右栏；手机端使用遮罩弹窗，点击弹窗外空白关闭 */
.profile-mask{display:none}
@media(max-width:720px){
 body.detail-open{overflow:hidden!important}
 .profile-mask{display:block;position:fixed;inset:0;z-index:1650;background:rgba(0,0,0,.58);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
 .profile-mask.show{opacity:1;visibility:visible;pointer-events:auto}
 .detail-open .workspace>.right{z-index:1700!important;left:10px!important;right:10px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%);max-height:min(78dvh,680px)!important;border:1px solid #79442f!important;box-shadow:0 18px 55px rgba(0,0,0,.62)!important}
 .detail-open .workspace>.right .side-profile{max-height:min(78dvh,680px);overflow:auto;-webkit-overflow-scrolling:touch}
 .detail-open .profile .close{position:sticky;top:6px;float:right;z-index:4;width:34px;height:34px;margin:5px 5px -39px 0;border:1px solid rgba(255,255,255,.22);background:rgba(5,9,10,.82);color:#f2e8d8;font-size:24px;line-height:30px}
}

/* v6.1.6.4：未选择地点显示当前地图范围密度图+地点列表；选择地点仅显示图片+介绍 */
.place-photo,.side-profile{display:none!important}
.viewport-places{display:block!important;padding:10px!important;min-height:150px!important}
.viewport-head{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px solid #343832}.viewport-head b{font-family:'STKaiti','KaiTi',serif;font-size:14px;color:#ded4c0}.viewport-head small{font-size:8px;color:#777b73}.viewport-list{display:flex;flex-direction:column}.viewport-place{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 2px;border:0;border-bottom:1px dashed #343832;background:transparent;color:#c9c7bc;text-align:left;cursor:pointer}.viewport-place:hover{background:#171b19}.viewport-place span{min-width:0}.viewport-place b,.viewport-place small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport-place b{font-size:11px;font-weight:500}.viewport-country{display:inline-block;margin-left:7px;padding:1px 5px;border:1px solid rgba(91,177,118,.35);background:rgba(65,135,84,.12);color:#70c78c;font:normal 8px/1.4 'Microsoft YaHei',sans-serif;vertical-align:1px}.viewport-place small{margin-top:3px;color:#777f7b;font-size:8px}.viewport-place i{color:#a55b40;font-style:normal;font-size:18px}.viewport-empty{padding:28px 8px;text-align:center;color:#777b73;font-size:10px}
body.detail-open .right .capital-heat,body.detail-open .right .viewport-places{display:none!important}
body.detail-open .right .place-photo,body.detail-open .right .side-profile{display:block!important}
body.detail-open .right{gap:10px!important}

.right{display:flex!important;flex-direction:column!important;gap:10px!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-width:thin;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.right>*{flex:0 0 auto!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
.place-photo{position:relative;display:block!important;height:190px!important;min-height:190px!important;padding:0!important;overflow:hidden!important;background:#090d0e;border-color:#4c4037}
.place-photo>img{display:block;width:100%;height:100%;object-fit:cover}
.place-photo-label{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 10px;background:linear-gradient(transparent,rgba(4,7,8,.92));color:#eee5d5}
.place-photo-label b,.place-photo-label small{display:block}.place-photo-label small{margin-top:3px;color:#aaa99f;font-size:9px}
.place-photo-empty{height:100%;min-height:190px;display:grid;place-content:center;text-align:center;background:repeating-linear-gradient(135deg,#0b0e0f,#0b0e0f 12px,#0e1112 12px,#0e1112 24px);color:#817e75}
.place-photo-empty:before{content:'▧';font-size:30px;color:#5e5149;margin-bottom:6px}.place-photo-empty span{font:18px 'STKaiti','KaiTi',serif;color:#b8ad9b}.place-photo-empty small{margin-top:5px;font-size:9px}
.right .capital-heat{display:block!important;height:auto!important;min-height:0!important;margin:0!important;padding:8px!important;overflow:visible!important;border-color:#373832!important;background:#101313!important}.right .heat-head{margin-bottom:6px!important;gap:6px!important}.right .heat-head small{font-size:8px!important;letter-spacing:.7px!important}.right .heat-head b{margin-top:1px!important;font-size:13px!important}.right .heat-live{font-size:8px!important}.right .heat-board{height:128px!important;border-color:#323630!important}.right .heat-scale{right:4px!important;bottom:4px!important;padding:2px 4px!important;gap:3px!important;font-size:7px!important}.right .heat-scale i{width:34px!important;height:4px!important}.right .heat-caption{margin-top:5px!important;font-size:8px!important;line-height:1.45!important;white-space:normal!important}
.side-profile,.profile.show{position:relative!important;display:block!important;height:auto!important;min-height:180px!important;max-height:none!important;overflow:visible!important;padding:13px!important;margin:0!important;transform:none!important}
.profile .close,.detail-open .profile .close{position:absolute!important;top:8px!important;right:8px!important;float:none!important;z-index:4!important;width:32px!important;height:32px!important;margin:0!important;border:1px solid rgba(255,255,255,.18)!important;background:#171a19!important;color:#e9dfce!important;line-height:28px!important}
.place-intro-empty{height:auto;min-height:140px;display:grid;place-items:center;color:#77766f;font-size:11px;text-align:center}
.place-intro-head{padding:2px 40px 12px 0;border-bottom:1px solid #3d403a}.place-intro-head small{color:#a45e42;font-size:9px;letter-spacing:1px}.place-intro-head h2{margin:5px 0!important;font:22px 'STKaiti','KaiTi',serif!important;color:#ece2d0}.place-intro-head span{color:#899592;font-size:9px}
.place-intro-body{display:block!important;position:static!important;padding:13px 0!important;overflow:visible!important}.place-intro-body h3{margin:0 0 9px;padding-left:8px;border-left:3px solid #a95236;font-size:14px;color:#ddd3bf}.place-intro-body p{display:block!important;position:static!important;margin:0;color:#b5c1bd;font-size:11px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.place-intro-body .rich{display:block!important;position:static!important;margin-top:12px;color:#aeb9b5;font-size:11px;line-height:1.75;overflow:visible!important}.place-intro-body .rich img{display:block;max-width:100%;height:auto;margin:8px auto}.profile-actions{position:static!important;display:flex!important;flex-wrap:wrap!important;margin-top:12px!important}
@media(min-width:721px){body.detail-open .workspace{grid-template-columns:270px minmax(360px,1fr) 310px!important}body.detail-open .workspace>.right{display:flex!important;min-width:310px!important;max-width:310px!important;overflow-y:auto!important}}
@media(min-width:721px) and (max-width:1050px){body.detail-open .workspace{grid-template-columns:230px minmax(0,1fr) 300px!important}body.detail-open .workspace>.right{display:flex!important;min-width:300px!important;max-width:300px!important}}
@media(max-width:720px){body.detail-open .workspace>.right{display:flex!important;flex-direction:column!important;position:fixed!important;box-sizing:border-box!important;left:10px!important;right:10px!important;top:50%!important;bottom:auto!important;width:calc(100vw - 20px)!important;min-width:0!important;max-width:calc(100vw - 20px)!important;height:auto!important;max-height:86dvh!important;gap:2px!important;padding:4px!important;overflow-x:hidden!important;overflow-y:auto!important;transform:translateY(-50%)!important;visibility:visible!important;opacity:1!important}.detail-open .workspace>.right .place-photo{height:auto!important;min-height:0!important;max-height:35dvh!important;flex:0 0 auto!important}.detail-open .workspace>.right>#profile{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:6px!important}.right .heat-board{height:112px!important}.place-photo-empty{min-height:100px}}
/* v6.1.6.4 最终状态规则：放在全部旧响应式规则之后 */
body:not(.detail-open) .right>.place-photo,body:not(.detail-open) .right>#profile{display:none!important}
body:not(.detail-open) .right>.capital-heat,body:not(.detail-open) .right>.viewport-places{display:block!important}
body.detail-open .right>.capital-heat,body.detail-open .right>.viewport-places{display:none!important}
body.detail-open .right>.place-photo,body.detail-open .right>#profile{display:block!important}


/* v6.1.6.25：后台选择的高德普通地图配色同步至前台“高德标准”瓦片。 */
#map .leaflet-tile-pane{transition:filter .28s ease}.map-latitude-label{background:transparent;border:0;pointer-events:none}.map-latitude-label span{display:block;padding:3px 7px;border:1px solid rgba(57,230,212,.88);border-radius:3px;background:rgba(5,22,25,.92);color:#86fff1;font:700 12px/16px sans-serif;white-space:nowrap;box-shadow:0 2px 10px rgba(0,0,0,.5),0 0 10px rgba(57,230,212,.22)}
#map.amap-theme-normal .leaflet-tile-pane{filter:none}
#map.amap-theme-dark .leaflet-tile-pane{filter:brightness(.46) contrast(1.28) saturate(.72)}
#map.amap-theme-light .leaflet-tile-pane{filter:brightness(1.12) contrast(.86) saturate(.68)}
#map.amap-theme-whitesmoke .leaflet-tile-pane{filter:sepia(.08) saturate(.55) brightness(.93) contrast(.90)}
#map.amap-theme-fresh .leaflet-tile-pane{filter:hue-rotate(18deg) saturate(.90) brightness(.96)}
#map.amap-theme-grey .leaflet-tile-pane{filter:grayscale(.82) brightness(.88) contrast(1.04)}
#map.amap-theme-graffiti .leaflet-tile-pane{filter:saturate(1.48) contrast(1.20)}
#map.amap-theme-macaron .leaflet-tile-pane{filter:sepia(.20) hue-rotate(315deg) saturate(.82) brightness(1.05)}
#map.amap-theme-blue .leaflet-tile-pane{filter:hue-rotate(158deg) saturate(.88) brightness(.88)}
#map.amap-theme-darkblue .leaflet-tile-pane{filter:hue-rotate(165deg) saturate(1.05) brightness(.53) contrast(1.22)}
#map.amap-theme-wine .leaflet-tile-pane{filter:sepia(.28) hue-rotate(292deg) saturate(1.08) brightness(.68) contrast(1.16)}
#map.leaflet-dark-map .leaflet-tile-pane{filter:invert(.9) hue-rotate(180deg) brightness(.62) contrast(1.18) saturate(.72)}

/* v6.1.6.26 分类颜色/外部图标标记 */
.hotspot{width:22px!important;height:22px!important;background:var(--marker-color,#e3ad56)!important;border:2px solid #fff!important;display:grid!important;place-items:center!important;color:#fff!important;transform:rotate(-45deg)!important}
.hotspot strong{font-size:11px;line-height:1;transform:rotate(45deg);font-weight:700}
.category-marker-image{position:relative;width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:2px solid #fff;background:var(--marker-color,#e3ad56);box-shadow:0 2px 8px rgba(0,0,0,.6);overflow:hidden;display:grid;place-items:center}
.category-marker-image img{width:20px;height:20px;object-fit:contain;transform:rotate(45deg)}.category-marker-image span{width:100%;height:100%;place-items:center;transform:rotate(45deg);color:#fff;font-weight:700}

/* v6.1.6.30 mobile detail final：收紧手机详情空白并完整映射后台地点字段。 */
.profile-score{display:inline-block;margin-top:7px;padding:3px 7px;border:1px solid #86513a;color:#d6b276;font:11px Georgia,serif}.profile-scroll{display:block;min-height:0}.profile-scroll>.place-intro-body{margin:0;padding:10px 0;border-top:1px dotted #4a453d}.profile-scroll>.place-intro-body:first-child{border-top:0}.profile-scroll h3{margin:0 0 5px}.profile-scroll p{margin:0;white-space:pre-wrap}.metrics{grid-template-columns:repeat(4,minmax(112px,1fr))}.globe-marker-tip{z-index:9;pointer-events:none}.globe-marker-tip small{display:block}
@media(max-width:720px){
 .detail-open #profile .place-intro-head{padding:0 0 6px!important}
 .detail-open #profile .place-intro-body{padding:6px 0!important}
 body.detail-open .workspace>.right{gap:2px!important;padding:4px!important}
 body.detail-open .right>.place-photo{flex:0 0 auto!important;height:auto!important;min-height:0!important;max-height:35dvh!important;margin:0!important;padding:0!important}
 body.detail-open .right>.place-photo img{display:block!important;width:100%!important;height:auto!important;max-height:35dvh!important;object-fit:cover!important}
 body.detail-open .right>#profile{min-height:0!important;padding:6px!important}
 .detail-open #profile .place-intro-head{padding:0 30px 4px 0!important}
 .detail-open #profile .place-intro-head h2{margin:2px 0 1px;font-size:17px}
 .profile-scroll>.place-intro-body{padding:4px 0!important}
 .profile-scroll p,.profile-scroll .rich{font-size:12px!important;line-height:1.55!important}}

/* v6.1.6.43 后台可配置头部菜单与四项统计 */
.header-menu{display:flex;align-items:center;gap:2px;min-width:0;max-width:360px;overflow-x:auto;scrollbar-width:none}.header-menu::-webkit-scrollbar{display:none}.header-menu a{flex:0 0 auto;padding:7px 9px;border-left:1px dotted #4b493f;color:#aeb4ad;font-size:11px;text-decoration:none;white-space:nowrap}.header-menu a:hover,.header-menu a:focus{color:#e0c49b;background:#171b1b;outline:none}.metrics{grid-template-columns:repeat(4,minmax(112px,1fr))!important}
@media(max-width:1050px){.header-menu{max-width:220px}.header-menu a{padding-inline:7px}}
@media(max-width:720px){.header-menu{display:none}.header-menu-mobile{display:flex!important}.metrics{grid-template-columns:repeat(4,minmax(104px,1fr))!important}.metric-nav{display:none!important}}

/* v6.1.6.53 站务公告：纸质告示层，独立于地图和欢迎层 */
.announcement-entry{position:fixed;z-index:1250;right:16px;bottom:15px;padding:6px 11px;border:1px solid #704735;background:#171411;color:#d4b37a;text-decoration:none;font:12px/1.2 "Microsoft YaHei",sans-serif}
.announcement-popup{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:18px;background:rgba(5,6,6,.78);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
.announcement-popup.show{opacity:1;visibility:visible}.announcement-paper{position:relative;width:min(540px,calc(100vw - 28px));max-height:min(76vh,620px);overflow:auto;padding:34px 38px 30px;border:1px solid #8b7451;background:#e6dcc3;color:#2d2921;box-shadow:10px 10px 0 rgba(0,0,0,.46);font-family:"STKaiti","KaiTi","Microsoft YaHei",serif}
.announcement-paper:before{content:"告";position:absolute;right:23px;top:18px;width:42px;height:42px;display:grid;place-items:center;border:2px solid #9a3f2e;color:#9a3f2e;font-size:24px;transform:rotate(-4deg);opacity:.78}.announcement-kicker{padding-bottom:9px;border-bottom:1px solid #8e8169;color:#8b3d2e;font:700 12px/1.2 "Microsoft YaHei",sans-serif;letter-spacing:3px}.announcement-paper h2{margin:20px 58px 13px 0;color:#27231d;font-size:27px;font-weight:700;letter-spacing:0}.announcement-paper p{margin:0;white-space:pre-wrap;color:#4b4438;font-size:16px;line-height:1.9}.announcement-media{display:block;width:auto;max-width:min(100%,420px);max-height:230px;height:auto;margin:16px auto 0;border:1px solid #99866a;background:#151713;object-fit:contain}.announcement-close{position:absolute;right:8px;top:7px;width:30px;height:30px;border:0;background:transparent;color:#40382e;font-size:25px;line-height:1;cursor:pointer}.announcement-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:26px;padding-top:15px;border-top:1px dashed #9b8c73}.announcement-actions button,.announcement-actions a{min-height:36px;padding:8px 14px;border:1px solid #735c40;border-radius:0;background:transparent;color:#493b2d;text-decoration:none;font:13px/18px "Microsoft YaHei",sans-serif;cursor:pointer}.announcement-actions a{background:#863d2e;border-color:#863d2e;color:#f3e8d3}.announcement-open{overflow:hidden!important}
@media(max-width:560px){.announcement-paper{padding:28px 22px 24px}.announcement-paper h2{font-size:22px}.announcement-paper p{font-size:15px}.announcement-actions{align-items:stretch;flex-direction:column-reverse}.announcement-actions button,.announcement-actions a{width:100%;text-align:center}.announcement-entry{right:8px;bottom:8px}}

.metrics{display:grid!important;grid-template-columns:minmax(435px,48%) minmax(300px,1fr)!important;align-items:stretch!important;gap:0!important;padding:0 14px 0 24px!important;overflow:hidden!important}
.metric-items{display:grid;grid-template-columns:repeat(3,minmax(112px,1fr));min-width:0}.metric-items .metric{min-width:0}.metric-items .error-wide{grid-column:1/-1}
/* v6.1.6.52 广告位可见性增强：明确独立广告框，手机横向栏也保留广告 */
.ad-slot{position:relative;display:block!important;min-width:300px;height:100%;padding:5px 0;box-sizing:border-box;visibility:visible}.ad-slot.is-hidden{display:none!important}.ad-content{position:relative;display:flex!important;width:100%;height:100%;min-height:54px;min-width:0;box-sizing:border-box;overflow:hidden;border:2px solid #b65b34!important;background:#17100d!important;color:#fff0c7!important;text-decoration:none;box-shadow:inset 0 0 0 1px #2b1710,0 0 12px rgba(182,91,52,.22)}.ad-content:before{content:'推广';position:absolute;left:6px;top:4px;z-index:2;padding:1px 5px;background:#b65b34;color:#fff6df;font-size:8px;letter-spacing:1px}.ad-content:focus,.ad-content:hover{border-color:#e19a54!important;outline:none;background:#21140f!important}.ad-image img{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;object-fit:cover;visibility:hidden}.ad-image.is-loaded img{visibility:visible}.ad-image:not(.is-loaded) img{visibility:hidden}.ad-image .ad-image-fallback{display:flex}.ad-image.is-loaded .ad-image-fallback,.ad-image.is-loaded .ad-action{visibility:hidden}.ad-image-fallback{position:relative;z-index:1;min-width:0;padding-left:8px}.ad-image-fallback i{flex:0 0 auto;color:#d98a62;font:normal 9px/1.2 "Microsoft YaHei",sans-serif;white-space:nowrap}.ad-badge{position:absolute;z-index:3;right:4px;top:4px;padding:1px 4px;background:rgba(0,0,0,.72);color:#d8d0c2;font-size:8px}.ad-text{align-items:center;padding:15px 15px 6px;background:repeating-linear-gradient(90deg,#17100d 0 13px,#1b120e 13px 14px)!important}.ad-copy{display:flex;flex:1;min-width:0;align-items:baseline;gap:12px}.ad-copy small{display:none}.ad-copy b{color:#ffd277!important;font:700 18px 'STKaiti','KaiTi',serif;white-space:nowrap;text-shadow:0 1px 0 #000}.ad-copy em{min-width:0;color:#f0dfc5!important;font-size:11px;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-action{flex:0 0 auto;margin-left:12px;padding:5px 9px;border:1px solid #d27a43;color:#ffe0a0;font-size:10px;background:#2a1710}
@media(min-width:721px){.ad-slot{display:block!important;width:100%!important;min-width:300px!important;visibility:visible!important}.ad-slot:not(.is-hidden){opacity:1!important}}
@media(max-width:1050px){.metrics{grid-template-columns:minmax(360px,52%) minmax(260px,1fr)!important}.metric-items{grid-template-columns:repeat(3,minmax(110px,1fr))}.ad-copy em{display:none}.ad-copy b{font-size:15px}}
@media(max-width:720px){.metrics{display:flex!important;align-items:stretch!important;padding:0 8px!important;overflow-x:auto!important}.metric-items{display:grid;grid-template-columns:repeat(3,minmax(104px,1fr));flex:0 0 max-content;width:max-content;min-width:100%}.metric-items .metric:nth-child(n){display:flex}.ad-slot{display:block!important;flex:0 0 270px;order:2;min-width:270px;height:48px;padding:3px 0 3px 8px}.ad-content{min-height:42px}.ad-copy b{font-size:13px}.ad-copy em{display:none}.ad-action{margin-left:6px;padding-inline:6px}}
@media(max-width:720px){.app{grid-template-rows:58px 84px minmax(0,1fr) 40px}.metrics{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:48px 36px;align-items:stretch;padding:0 8px!important;overflow:hidden!important}.metric-items{grid-column:1;grid-row:1;display:grid;width:100%;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.metric-items .metric{min-width:0;height:48px;padding:4px 7px}.ad-slot{grid-column:1;grid-row:2;width:100%!important;min-width:0!important;height:36px;display:block!important;padding:0!important}.ad-content{width:100%;min-height:36px}}
 /* ========== 手机端 metrics+广告：统一 98px（48px 统计 + 50px 广告） ========== */
 @media(max-width:720px){
  .app{grid-template-rows:58px 98px minmax(0,1fr) 40px}
  .metrics{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:48px 50px!important;align-items:stretch;padding:0 8px!important;gap:0!important;overflow:hidden!important;height:98px!important;min-height:98px!important}
  .metric-items{grid-column:1;grid-row:1;display:grid;width:100%;min-width:0;height:48px;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}
  .metric-items .metric{min-width:0;height:48px;padding:4px 7px}
  .ad-slot{grid-column:1;grid-row:2;width:100%!important;min-width:0!important;height:50px!important;display:block!important;padding:0!important}
  .ad-content{width:100%!important;height:50px!important;min-height:50px!important}
  /* 广告隐藏时自动减去第二行 */
  .metrics:has(.ad-slot.is-hidden){grid-template-rows:48px!important;height:48px!important;min-height:48px!important}
  .app:has(.ad-slot.is-hidden){grid-template-rows:58px 48px minmax(0,1fr) 40px!important}}

@media(max-width:720px){
 body.detail-open .workspace>.right{display:block!important;left:6px!important;right:6px!important;top:50%!important;bottom:auto!important;width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;height:auto!important;max-height:84dvh!important;margin:0!important;padding:4px!important;gap:0!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;transform:translateY(-50%)!important}
 body.detail-open .right>.place-photo{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:35dvh!important;margin:0!important;padding:0!important;border-bottom:0!important;overflow:hidden!important}
 body.detail-open .right>.place-photo img{display:block!important;width:100%!important;height:auto!important;max-height:35dvh!important;object-fit:contain!important}
 body.detail-open .right>#profile{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:4px!important;border-top:0!important;overflow:visible!important}
 body.detail-open #profile .profile-scroll{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important}
 body.detail-open #profile .profile-actions{position:static!important;margin:6px 0 0!important;padding:8px 0 2px!important}
 body.detail-open #profile .place-intro-head{padding-top:0!important}
}

/* v6.1.6.55.3 广告最终可见性与恢复视角 */
.ad-slot:not(.is-hidden){display:block!important;min-height:50px!important;visibility:visible!important;opacity:1!important}
.ad-slot:not(.is-hidden) .ad-content{display:flex!important;min-height:50px!important;visibility:visible!important;opacity:1!important}
#resetViewBtn{border-color:#876a48!important;background:#241d16!important;color:#f0d5a4!important;font-weight:700;white-space:nowrap}
#resetViewBtn:hover{background:#35271c!important;border-color:#c58a52!important}
@media(min-width:721px){.map-toolbar .controls{max-width:100%;flex-wrap:wrap}.map-toolbar #resetViewBtn{min-width:76px}}
@media(max-width:720px){
 .app{grid-template-rows:54px 98px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important}
 .metrics{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:48px 50px!important;width:100vw!important;max-width:100vw!important;height:98px!important;min-height:98px!important;overflow:hidden!important}
 .ad-slot:not(.is-hidden){position:relative!important;z-index:1301!important;grid-column:1!important;grid-row:2!important;width:100%!important;height:50px!important;min-width:0!important;min-height:50px!important;padding:0!important;background:#2d160f!important;overflow:visible!important}
 .ad-slot:not(.is-hidden) .ad-content{position:relative!important;z-index:1!important;width:100%!important;height:50px!important;min-height:50px!important;border:2px solid #f0a65b!important;background:#6b2f20!important;background-image:none!important;box-shadow:none!important;overflow:visible!important}
 .ad-slot:not(.is-hidden) .ad-content:before{content:'广告'!important;display:block!important;left:5px!important;top:50%!important;transform:translateY(-50%)!important;padding:3px 6px!important;background:#e2a052!important;color:#211007!important;font-size:10px!important;font-weight:800!important}
 .ad-slot:not(.is-hidden) .ad-copy{padding-left:42px!important;gap:7px!important;align-items:center!important}
 .ad-slot:not(.is-hidden) .ad-copy b{display:block!important;color:#fff3d2!important;font-size:15px!important;text-shadow:0 1px 1px #000!important}
 .ad-slot:not(.is-hidden) .ad-copy em{display:block!important;color:#f1c89d!important;font-size:10px!important}
 .ad-slot:not(.is-hidden) .ad-action{display:block!important;color:#fff3d2!important;border-color:#e2a052!important;font-size:10px!important}
 .map-toolbar .controls{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .map-toolbar .filter-crumbs{grid-column:1/-1!important;grid-row:1!important}
 .map-toolbar #baseSelect{grid-column:1!important;grid-row:2!important}
 .map-toolbar #resetViewBtn{grid-column:2!important;grid-row:2!important;width:100%!important;min-width:0!important;height:32px!important;padding:0 4px!important;font-size:10px!important}
 .map-toolbar #locateBtn{grid-column:3!important;grid-row:2!important}
}

/* v6.1.6.56 去广告标签 · 公告按钮仅手机 · 手机统计横滑与可配置导航 */
.ad-content:before,.ad-slot .ad-content:before,.ad-slot:not(.is-hidden) .ad-content:before{content:none!important;display:none!important;padding:0!important;background:none!important;border:0!important}
/* 广告停用或无有效投放时，前台不保留占位内容。 */
.ad-content.ad-image img,.ad-content.ad-image-failed img{object-fit:contain!important;object-position:center center!important;background:#17100d!important}
.ad-badge{display:none!important}
.ad-copy small{display:none!important}
.announcement-entry{display:none!important}
@media(max-width:720px){.announcement-entry{display:block!important}}

.metric-strip{display:contents}
.metric-nav{display:none}

@media(max-width:720px){
 .app{grid-template-rows:54px 98px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important}
 .metrics{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:48px 50px!important;width:100vw!important;max-width:100vw!important;height:98px!important;min-height:98px!important;padding:0 8px!important;overflow:hidden!important}
 .metric-strip{display:flex!important;grid-column:1!important;grid-row:1!important;align-items:stretch!important;width:100%!important;min-width:0!important;height:48px!important;padding:0 8px!important;box-sizing:border-box!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-x:contain!important;scroll-snap-type:x proximity;scrollbar-width:none!important}
 .metric-strip::-webkit-scrollbar{display:none!important}
 .metric-items{display:flex!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;grid-template-columns:none!important;overflow:visible!important}
 .metric-items .metric{flex:0 0 106px!important;width:106px!important;min-width:106px!important;height:48px!important;padding:6px 8px!important;scroll-snap-align:start}
 .metric-nav{display:flex!important;flex:0 0 auto!important;align-items:stretch!important;gap:0!important;margin-left:4px!important;padding-left:6px!important;border-left:1px dotted #4b493f!important}
 .metric-nav.is-empty{display:none!important}
 .metric-nav-item{flex:0 0 auto;display:flex;align-items:center;height:54px;padding:0 11px;border-left:1px dotted #3c3a33;color:#c3b89f;font:12px/1.2 "Microsoft YaHei",sans-serif;text-decoration:none;white-space:nowrap;scroll-snap-align:start}
 .metric-nav-item:first-child{border-left:0}
 .metric-nav-item:active{background:#1b1f1f;color:#e8cd9f}
 .ad-slot:not(.is-hidden){grid-column:1!important;grid-row:2!important;margin:0 8px!important;width:calc(100% - 16px)!important}
}

/* v6.1.6.57 公告按钮全端移除 · 广告图失败降级为文字，不留空框 */
.announcement-entry{display:none!important}
@media(max-width:720px){.announcement-entry{display:none!important}}
.ad-content.ad-image-failed{display:flex!important;align-items:center!important;visibility:visible!important;opacity:1!important;background:#6b2f20!important}
/* v6.1.6.81：广告图完整显示，桌面/手机统一使用 contain，不裁剪内容。 */
.ad-content.ad-image img,.ad-content.ad-image-failed img{object-fit:contain!important;object-position:center center!important;background:#17100d!important}
.ad-content.ad-image-failed .ad-copy{display:flex!important;position:relative!important;z-index:2!important;visibility:visible!important;opacity:1!important;align-items:baseline!important;padding-left:10px!important}
.ad-content.ad-image-failed .ad-copy b{display:block!important;visibility:visible!important;color:#ffd277!important}
.ad-content.ad-image-failed .ad-copy em{display:block!important;visibility:visible!important;color:#f0dfc5!important}
.ad-content.ad-image-failed .ad-action{display:block!important;visibility:visible!important;opacity:1!important;margin-left:auto!important;margin-right:9px!important}

/* v6.1.6.58 广告图居中显示 + 右上角透明「广告」水印 */
.ad-slot:not(.is-hidden) .ad-content.ad-image{align-items:center!important;justify-content:center!important;padding:0!important;overflow:hidden!important}
.ad-content.ad-image img{position:absolute!important;left:0!important;top:0!important;transform:none!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;background:#17100d!important}
.ad-content.ad-image.is-loaded:after{content:'广告';position:absolute;z-index:4;right:0;top:0;padding:2px 6px;background:rgba(0,0,0,.34);color:rgba(255,244,220,.62);font:10px/1.2 "Microsoft YaHei",sans-serif;letter-spacing:1px;pointer-events:none;border-bottom-left-radius:3px}
@media(max-width:720px){.ad-content.ad-image.is-loaded:after{padding:2px 5px;font-size:9px}}

/* ===== v6.1.6.61 广告轮播控件：左右透明按钮 + 圆点指示 ===== */
.ad-nav{position:absolute;inset:0;z-index:6;pointer-events:none}
.ad-slot .ad-arrow{position:absolute;top:0;bottom:0;z-index:7;width:34px;padding:0;border:0;background:transparent;cursor:pointer;pointer-events:auto;display:grid;place-items:center;opacity:0;transition:opacity .18s ease,background .18s ease;-webkit-tap-highlight-color:transparent}
.ad-slot .ad-prev{left:0}
.ad-slot .ad-next{right:0}
.ad-slot:hover .ad-arrow,.ad-slot:focus-within .ad-arrow{opacity:1}
.ad-slot .ad-arrow:hover{background:linear-gradient(90deg,rgba(0,0,0,.34),transparent)}
.ad-slot .ad-next:hover{background:linear-gradient(270deg,rgba(0,0,0,.34),transparent)}
.ad-slot .ad-arrow:focus-visible{opacity:1;outline:2px solid #ffd277;outline-offset:-3px}
/* 箭头用边框旋转画，不依赖字体，避免图标字体缺失时空白 */
.ad-slot .ad-arrow i{display:block;width:8px;height:8px;border-left:2px solid rgba(255,240,205,.92);border-bottom:2px solid rgba(255,240,205,.92);filter:drop-shadow(0 1px 1px rgba(0,0,0,.75))}
.ad-slot .ad-prev i{transform:rotate(45deg);margin-left:-2px}
.ad-slot .ad-next i{transform:rotate(-135deg);margin-right:-2px}
.ad-dots{position:absolute;left:50%;bottom:2px;z-index:7;transform:translateX(-50%);display:flex;gap:5px;pointer-events:auto}
.ad-slot .ad-dot{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:rgba(255,240,205,.34);cursor:pointer;transition:background .18s ease,transform .18s ease;-webkit-tap-highlight-color:transparent}
.ad-slot .ad-dot.is-on{background:#ffd277;transform:scale(1.34)}
.ad-slot .ad-dot:focus-visible{outline:2px solid #ffd277;outline-offset:2px}
/* 触屏设备没有 hover，箭头常显但更淡 */
@media(hover:none){.ad-slot .ad-arrow{opacity:.62}}
@media(max-width:720px){.ad-slot .ad-arrow{width:28px}.ad-dots{bottom:1px;gap:4px}.ad-slot .ad-dot{width:5px;height:5px}}

/* v6.1.6.59 搜索图标错位修复：⌕(U+2315) 字形依赖字体、基线偏上且手柄朝向不稳，改为内联 SVG，几何完全由代码控制 */
.search button{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0}
.search-ico{display:block;width:16px;height:16px;fill:none;stroke:#f4e9d4;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
/* 兼容旧缓存：万一还残留 span 文字图标，也强制居中不外溢 */
.search button span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:16px;line-height:1;transform:none}
/* 方形按钮（v4.2 风格）贴合下划线输入框：底边与输入框下边线对齐 */
.search button{top:auto;bottom:3px;transform:none;height:26px;width:30px}
@media(max-width:720px){.search button{width:28px;height:24px;bottom:3px}.search-ico{width:15px;height:15px}}
@media(max-width:480px){.search button{width:26px;height:22px;bottom:3px}.search-ico{width:14px;height:14px}}

/* v6.1.6.70 桌面端广告完整显示 + 手机端地点图片铺满 */
@media(min-width:721px){
  .metrics{grid-template-columns:minmax(435px,48%) minmax(300px,1fr)!important;align-items:stretch!important;gap:0!important;padding:0 14px 0 24px!important;overflow:hidden!important;height:66px!important;min-height:66px!important;max-height:66px!important}
  .metric-strip{min-width:0!important;height:66px!important;overflow:hidden!important}
  .ad-slot{display:block!important;align-self:stretch!important;min-width:300px!important;height:66px!important;min-height:66px!important;max-height:66px!important;padding:4px 0!important;box-sizing:border-box!important;overflow:hidden!important}
  .ad-slot:not(.is-hidden) .ad-content{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:58px!important;min-height:58px!important;max-height:58px!important;box-sizing:border-box!important;overflow:hidden!important;border:2px solid #f0a65b!important}
  .ad-content.ad-image img{object-fit:cover!important;object-position:center center!important}
}
@media(max-width:720px){
  body.detail-open .workspace>.right{display:block!important;gap:0!important;padding:0!important;border:1px solid #79442f!important;box-sizing:border-box!important}
  body.detail-open .workspace>.right>.place-photo{display:block!important;position:relative!important;width:100%!important;height:150px!important;min-height:150px!important;max-height:150px!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid #79442f!important;overflow:hidden!important;box-sizing:border-box!important}
  body.detail-open .workspace>.right>.place-photo img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:center 30%!important}
  body.detail-open .workspace>.right>.place-photo .place-photo-empty{width:100%!important;height:100%!important;min-height:0!important;margin:0!important;display:grid!important;place-content:center!important}
  body.detail-open .workspace>.right>#profile{display:block!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;min-height:0!important;height:auto!important;margin:0!important;padding:9px 11px!important;border:0!important;transform:none!important;box-sizing:border-box!important}
  /* 手机端广告完整显示 */
  .ad-slot:not(.is-hidden){grid-row:2!important;width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;display:flex!important;align-items:stretch!important;justify-content:center!important;overflow:visible!important}
  .ad-slot:not(.is-hidden) .ad-content{width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border:2px solid #f0a65b!important}
  .ad-content.ad-image img{object-fit:cover!important;object-position:center center!important}
}

/* v6.1.6.73：四项最终对齐修复 */
.search button{color:#f4e9d4!important;background:#b35a39!important;overflow:visible!important}
.search button .search-ico{display:none!important}
.search button:before{content:'';display:block!important;width:12px;height:12px;border:2px solid #fff3d2!important;border-radius:50%;box-sizing:border-box;position:absolute;left:6px;top:4px}
.search button:after{content:'';display:block!important;width:8px;height:2px;background:#fff3d2!important;position:absolute;left:16px;top:16px;transform:rotate(45deg);transform-origin:left center;border-radius:2px}
/* 桌面搜索图标缩小为 9px 圆环 + 6px 手柄 */
@media(min-width:721px){
 .search button:before{width:9px!important;height:9px!important;border-width:1.5px!important;left:8px!important;top:6px!important}
 .search button:after{width:6px!important;height:1.5px!important;left:16px!important;top:14px!important}
 /* 广告严格放入 66px 统计行；允许边框显示，内容盒自身裁切图片 */
 .metrics{height:66px!important;min-height:66px!important;max-height:66px!important;overflow:visible!important}
 .ad-slot:not(.is-hidden){height:66px!important;min-height:66px!important;max-height:66px!important;padding:4px 0!important;overflow:visible!important;box-sizing:border-box!important}
 .ad-slot:not(.is-hidden) .ad-content{height:58px!important;min-height:58px!important;max-height:58px!important;margin:0!important;border:2px solid #f0a65b!important;overflow:hidden!important;box-sizing:border-box!important}
}
@media(max-width:720px){
 /* 清除旧版 margin-left:8px：广告在 8px 页面留白内左右等距 */
 .metrics .ad-slot:not(.is-hidden){width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;justify-self:stretch!important;align-self:stretch!important;box-sizing:border-box!important}
 .metrics .ad-slot:not(.is-hidden) .ad-content{width:100%!important;margin:0!important;box-sizing:border-box!important}
 .ad-content.ad-text,.ad-content.ad-text .ad-copy{justify-content:center!important;text-align:center!important}
 /* 统计右侧移动菜单：48px 行内水平、垂直同时居中 */
 .metric-nav{height:48px!important;align-items:center!important;justify-content:flex-start!important;padding-top:0!important;padding-bottom:0!important;box-sizing:border-box!important}
 .metric-nav-item{display:flex!important;align-items:center!important;justify-content:center!important;height:48px!important;min-height:48px!important;padding-top:0!important;padding-bottom:0!important;line-height:1.2!important;text-align:center!important;box-sizing:border-box!important}
}

/* v6.1.7.23：只替换原版权条，绝不改变网站其它 UI 或手机全屏地图结构。 */
.site-footer-rich{--footer-bg:#191b24;--footer-divider:#30333e;--footer-heading:#d8b733;--footer-link:#8dacd0;background:var(--footer-bg);border-top:1px solid var(--footer-divider);color:var(--footer-link);font-family:'Noto Sans SC','Microsoft YaHei',sans-serif;display:none}.footer-main{display:grid;grid-template-columns:minmax(300px,2.2fr) repeat(3,minmax(135px,1fr));gap:clamp(32px,5vw,88px);max-width:1480px;margin:0 auto;padding:64px 28px 58px}.footer-brand-head{display:flex;align-items:center;gap:13px}.footer-brand-mark{flex:0 0 auto;width:42px;height:42px;padding:4px;border:1px solid rgba(216,183,51,.3);background:#0f1117}.footer-brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.footer-brand-widget h2{margin:0;color:var(--footer-heading);font:700 23px/1.25 'STKaiti','KaiTi','Noto Serif SC',serif;letter-spacing:1px}.footer-brand-widget p{max-width:570px;margin:16px 0 0;font-size:15px;line-height:1.85;color:var(--footer-link)}.footer-widget h3{margin:3px 0 19px;color:var(--footer-heading);font-size:17px;font-weight:700}.footer-widget>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-link,.footer-bottom-link{color:var(--footer-link);text-decoration:none;font-size:14px;line-height:1.55;transition:color .16s ease}.footer-link:hover,.footer-bottom-link:hover{color:#f0f1f4;text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1480px;margin:0 auto;padding:24px 28px 28px;border-top:1px solid var(--footer-divider);font-size:13px;color:var(--footer-link)}.footer-bottom nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 26px}.footer-bottom-link{font-size:13px}
@media(min-width:721px){html,body,#app{height:auto!important;min-height:100%!important}body{overflow-x:hidden!important;overflow-y:auto!important}.app.footer-rich-active{grid-template-rows:70px 66px calc(100vh - 136px) auto!important;height:auto!important;min-height:100vh}.app.footer-rich-active .workspace{height:calc(100vh - 136px)!important;min-height:0!important;overflow:hidden!important}.app.footer-rich-active .left,.app.footer-rich-active .right{min-height:0!important;overflow:auto!important}.app.footer-rich-active .site-footer-rich{display:block}}
@media(max-width:1100px) and (min-width:721px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px}.footer-brand-widget{grid-column:1/-1;max-width:680px}}
@media(max-width:720px){.site-footer-rich{display:none!important}}
/* v6.1.7.27：桌面 UA 的手机会得到约 980px CSS 视口；触控小屏仍强制保留紧凑页脚。 */
@media (pointer:coarse) and (max-width:1100px){html,body,#app{height:100%!important;min-height:0!important}body{overflow:hidden!important}.app.footer-rich-active{height:100%!important;min-height:0!important;grid-template-rows:54px 48px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important}.app.footer-rich-active .workspace{height:auto!important;min-height:0!important}.app.footer-rich-active .site-footer-rich{display:none!important}}
.site-footer-rich.has-footer-bg{background-color:var(--footer-bg);background-image:linear-gradient(rgba(12,14,20,.88),rgba(12,14,20,.94)),var(--footer-bg-image);background-position:center;background-size:cover;background-repeat:no-repeat}.footer-brand-mark img{transition:filter .18s ease,opacity .18s ease}.footer-brand-mark:hover img{filter:brightness(0);opacity:.92}

/* v6.1.7.28：真实手机即便请求电脑 UA（CSS 视口会被伪装成宽屏），也固定使用单栏地图。 */
html.physical-mobile,html.physical-mobile body,html.physical-mobile #app{width:100%!important;height:100%!important;height:100dvh!important;min-width:0!important;overflow:hidden!important}
html.physical-mobile body{position:fixed!important;inset:0!important;overscroll-behavior:none!important}
html.physical-mobile .app{width:100vw!important;max-width:100vw!important;height:100%!important;height:100dvh!important;min-width:0!important;grid-template-rows:54px 48px minmax(0,1fr) max(34px,env(safe-area-inset-bottom))!important;overflow:hidden!important}
html.physical-mobile .header{gap:6px!important;padding:0 max(8px,env(safe-area-inset-left))!important;overflow:hidden!important}
html.physical-mobile .brand{flex:0 1 auto!important;min-width:0!important;max-width:46%!important;gap:6px!important}
html.physical-mobile .brand-icon{width:28px!important;height:28px!important;flex:0 0 28px!important}
html.physical-mobile .brand-name{height:34px!important;min-width:0!important}
html.physical-mobile .brand-name h1{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:14px!important;line-height:34px!important;letter-spacing:1px!important}
html.physical-mobile .live,html.physical-mobile .header-menu,html.physical-mobile .icon-btn{display:none!important}
html.physical-mobile .search{flex:1 1 auto!important;width:auto!important;min-width:92px!important;margin-left:0!important}
html.physical-mobile .metrics{height:48px!important;padding:0 7px!important;overflow-x:auto!important;overflow-y:hidden!important}
html.physical-mobile .metric{height:47px!important;min-width:104px!important;padding:5px 10px!important}
html.physical-mobile .workspace{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;width:100vw!important;max-width:100vw!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;gap:0!important;overflow:hidden!important}
html.physical-mobile .workspace>.left,html.physical-mobile .workspace>.right{display:none!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;overflow:hidden!important}
html.physical-mobile .workspace>.map-panel{display:block!important;grid-column:1!important;grid-row:1!important;width:100%!important;max-width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;border-left:0!important;border-right:0!important}
html.physical-mobile .map-toolbar{top:6px!important;left:6px!important;right:6px!important;height:68px!important;display:block!important}
html.physical-mobile .map-toolbar .controls{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-rows:32px 32px!important;gap:4px!important;width:100%!important;max-width:none!important;overflow:visible!important}
html.physical-mobile .map-toolbar .filter-crumbs{grid-column:1/-1!important;grid-row:1!important;display:grid!important;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr) 10px minmax(0,1fr)!important;width:100%!important;height:32px!important;min-width:0!important;max-width:none!important;overflow:hidden!important}
html.physical-mobile .map-toolbar #baseSelect{grid-column:1!important;grid-row:2!important;width:100%!important;height:32px!important;min-width:0!important;max-width:none!important}
html.physical-mobile .map-toolbar #locateBtn{grid-column:2!important;grid-row:2!important;width:100%!important;height:32px!important;min-width:0!important;max-width:none!important}
html.physical-mobile .map-toolbar .filter-crumbs>button{width:100%!important;min-width:0!important;max-width:none!important;height:30px!important;padding:0 5px!important;font-size:10px!important}
html.physical-mobile .map-toolbar .filter-crumbs>button span{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html.physical-mobile .site-footer-rich{display:none!important}
html.physical-mobile .view-toggle{position:fixed!important;left:50%!important;right:auto!important;bottom:calc(max(34px,env(safe-area-inset-bottom)) + 4px)!important;transform:translateX(-50%)!important;margin:0!important}
/* 手机标题优先完整展示；搜索框收为图标按钮，避免占用站名宽度。 */
html.physical-mobile .header{justify-content:space-between!important}
html.physical-mobile .brand{flex:0 0 auto!important;max-width:none!important;overflow:visible!important}
html.physical-mobile .brand-icon{display:none!important}
html.physical-mobile .brand-name{overflow:visible!important}
html.physical-mobile .brand-name h1{max-width:none!important;overflow:visible!important;text-overflow:clip!important;font-size:13px!important;letter-spacing:0!important;white-space:nowrap!important}
html.physical-mobile .search{flex:0 0 32px!important;min-width:32px!important;width:32px!important;height:32px!important}
html.physical-mobile .search input{display:none!important}
html.physical-mobile .search button{position:static!important;transform:none!important;width:32px!important;height:32px!important;margin:0!important}

/* v6.1.7.30：页脚外观必须服从后台设置，历史主题不得覆盖该图层。 */
.site-footer-rich{background-color:var(--footer-bg)!important}
.site-footer-rich.has-footer-bg{background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important}