.rail a{display:block;padding:.15rem .35rem;border-radius:4px;text-decoration:none;color:var(--ink)}
.rail{max-height:34rem;overflow:auto;border-right:1px solid var(--line);padding-right:.4rem;font-size:.82rem}
.maprail{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.6rem;margin:.6rem 0}
.mrf legend{font-size:.7rem;color:var(--mut);letter-spacing:.04em;padding:0 .3rem}
.mrf label{display:block;font-size:.78rem;margin:.22rem 0;line-height:1.4}
.mrf{border:1px solid var(--line);border-radius:6px;padding:.5rem .6rem;background:var(--paper);min-width:0}
.rdlbl{display:block;font-size:.78rem;margin:.22rem 0;line-height:1.4}
.gbtn[aria-pressed=true]{background:var(--paper);color:var(--red);font-weight:600;border-color:var(--red)}
.gbtn{padding:.35rem .7rem;border:1px solid var(--line);border-radius:5px;background:none;color:var(--mut);cursor:pointer;font-size:.82rem}
.kpi .v{font-size:1.15rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.kpi .l{font-size:.72rem;color:var(--mut);letter-spacing:.01em;line-height:1.45}
.tip{position:fixed;pointer-events:none;background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:.35rem .55rem;font-size:.78rem;box-shadow:0 4px 14px rgba(0,0,0,.16);opacity:0;transition:opacity .1s;z-index:9;max-width:16rem}
.langbar button[aria-checked=true]{background:var(--paper);color:var(--red);border-color:var(--red);font-weight:600}
.langbar button{font-size:.74rem;padding:.2rem .5rem;border:1px solid var(--line);background:none;color:var(--mut);cursor:pointer;border-radius:4px}
.mapinsp{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:6px;padding:.6rem .7rem;background:var(--paper);font-size:.84rem;min-width:0}
.lede{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:6px;padding:.8rem 1rem;margin:1rem 0;font-size:.92rem}
.modebar .mode[aria-selected=true]{background:var(--chrome-hi);color:var(--chrome-ink);
  border-color:var(--chrome-hi);box-shadow:inset 0 -3px 0 var(--copper)}
.modebar .mode:hover{color:var(--ink)}
.modebar .mode{font:600 .84rem/1 system-ui,sans-serif;letter-spacing:.02em;padding:.42rem .8rem;
  border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--mut);cursor:pointer}
.chartfig{margin:1rem 0;border:1px solid var(--line);border-radius:6px;padding:.7rem .8rem;background:var(--paper)}
.langbar button:focus-visible{outline:2px solid var(--red);outline-offset:1px}
.gs-pin{background:#6b4fa0;border:2px solid #fff;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.45)}
details.lnote{margin:.05rem 0 .3rem 1.35rem}
details.lnote>summary{cursor:pointer;opacity:.85}
details.lnote[open]>summary{opacity:1}
details.lnote>summary .lang-zh,details.lnote>summary .lang-en{display:inline;border:none;margin:0;padding:0}
details.lnote>summary .lang-zh{margin-left:.45em}
.gc-badge{background:#6b4fa0;color:#fff;font:700 11px/1.5 system-ui;padding:1px 6px;border-radius:9px;border:1.5px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.45);white-space:nowrap;width:max-content!important;height:auto!important;transform:translate(-50%,-50%)}
.geo-head{display:flex;align-items:center;gap:.4rem;margin:.45rem 0 .2rem;font-weight:600;color:var(--chrome-ink)}
.geo-head .geo-ct{font-weight:400;color:var(--rail-mut)}
.geo-ab{margin-left:auto;display:flex;gap:.25rem}
.geo-ab button{font:600 .62rem/1 system-ui;padding:.14rem .45rem;border:1px solid rgba(245,240,235,.35);border-radius:4px;background:rgba(255,255,255,.08);color:var(--chrome-ink);cursor:pointer}
.geo-list{max-height:13rem;overflow-y:auto;margin:0 0 .3rem;padding-right:.2rem}
.geo-row{display:flex;gap:.35rem;align-items:baseline;font-size:.78rem;padding:.1rem 0}
.geo-row .geo-sub{color:var(--rail-mut);font-size:.7rem}
.geo-row a{color:#ffd166}
.tabs{display:flex;flex-wrap:wrap;gap:.2rem;border-bottom:2px solid var(--line);margin:1rem 0 0}
.tab{padding:.5rem .9rem;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;cursor:pointer;font-size:.9rem;color:var(--mut);background:none}
.tab[aria-selected=true]{background:var(--paper);border-color:var(--line);color:var(--red);font-weight:600;margin-bottom:-2px}
.leaflet-tooltip.pc-lbl{background:none;border:none;box-shadow:none;padding:0;color:#1c1a17;font:600 10px/1 sans-serif;text-shadow:0 1px 2px #fff,0 -1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff,0 0 4px #fff}
.pc-lbl.pc-zone{font-style:italic;font-weight:500;letter-spacing:.03em}
details.fold>summary{cursor:pointer;font-weight:600;color:var(--ink);padding:.35rem 0;list-style-position:outside}
details.fold[open]>summary{border-bottom:1px solid var(--line);margin-bottom:.6rem}
.kpis{display:flex;flex-wrap:wrap;gap:.6rem;margin:.8rem 0}
.kpi{display:flex;flex-direction:column;justify-content:flex-start}
.audstrip{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}
.kpi .l .lang-zh{font-size:.92em;opacity:.85}
#masthead{background:linear-gradient(135deg,var(--chrome-lo) 0%,var(--chrome-hi) 100%);
  color:var(--chrome-ink);padding:.7rem 1.1rem .9rem;border-radius:8px;margin:.2rem 0 1rem;
  display:flex;flex-direction:column;gap:.15rem}
#masthead h1{color:var(--chrome-ink);margin:.1rem 0}
#masthead .sub{color:var(--chrome-ink);opacity:.92;font-style:italic;margin:.1rem 0 0}
#masthead a{color:var(--chrome-ink);text-decoration-color:rgba(245,240,235,.5)}
#masthead .crumb{margin:0;font-size:.82rem;opacity:.9}
#masthead .brand{font-size:.78rem;opacity:.75;text-decoration:none;letter-spacing:.04em}
#masthead .brand:hover{opacity:1}
body{background:var(--ground)}
@media(max-width:640px){
  #masthead{padding:.55rem .8rem .7rem;border-radius:6px;margin-bottom:.7rem}
  #masthead h1{font-size:1.35rem;line-height:1.2}
  #masthead .sub{font-size:.8rem}
  #masthead .crumb{font-size:.76rem}
}
.lede{box-shadow:0 2px 8px rgba(0,0,0,.06);border-radius:8px}
.panel{background:var(--ground)}
.pe-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;
  box-shadow:0 2px 8px rgba(0,0,0,.06);padding:.9rem 1rem;margin:.9rem 0}
.audit-stat{border-left:3px solid var(--copper)}
.tlim,.hon{border-left:4px solid var(--copper);border-radius:0 6px 6px 0}
.kpi,.atile,.mrf,.mapinsp,.chartfig{border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
:focus-visible{outline:2px solid #1a56db;outline-offset:2px}
#masthead :focus-visible{outline-color:#fff}
.mrf :focus-visible,.mapinsp :focus-visible{outline-color:#ffd166}
.modebar{position:sticky;top:0;z-index:1200;display:flex;flex-wrap:wrap;gap:.25rem;
  background:var(--ground);padding:.45rem 0 .35rem;margin:0 0 .1rem;border-bottom:1px solid var(--line)}
.wrap>.modebar{grid-column:screen;justify-self:center;width:calc(100% - 2*var(--pad))}
@media screen and (min-width:1440px){
  :root{--nav:13rem}
  .wrap{
    grid-template-columns:
      [screen-start] var(--pad)
      [nav-start]    var(--nav)
      [nav-end canvas-start body-start] minmax(0,1fr)
      [canvas-end body-end]   var(--pad)
      [screen-end];
    column-gap:1.5rem;
  }
  .wrap>.b-wide,.wrap>.modebar,.wrap>.langbar{grid-column:screen;width:auto;justify-self:stretch}
  .wrap>#subtabs{
    grid-column:nav; align-self:start; position:sticky; top:6.5rem;
    display:flex; flex-direction:column; align-items:stretch; gap:.15rem;
    border-bottom:0; border-right:2px solid var(--line); margin:1.1rem 0 0; padding-right:.1rem;
  }
  #subtabs .tab{
    border-radius:6px 0 0 6px; border-bottom:1px solid transparent; text-align:left;
    white-space:normal;
  }
  #subtabs .tab[aria-selected=true]{border-color:var(--line);border-right-color:var(--paper);margin:0 -2px 0 0}
  .wrap>.panel{grid-column:canvas; width:auto; justify-self:stretch}
  .wrap.solo-view>#subtabs{display:none}
  .wrap.solo-view>.panel{grid-column:nav-start/canvas-end}
  
  #panel-dossiers:not([hidden])>.doss{grid-column:screen;justify-self:start;
    width:calc(100% - 2*var(--pad));grid-template-columns:14rem minmax(0,var(--measure)) minmax(0,1fr)}
  body[data-lang="both"] #panel-map>#map-note{max-width:calc(148ch + 2rem);display:grid;
    grid-template-columns:1fr 1fr;column-gap:2rem}
  body[data-lang="both"] #panel-map>#map-note>.lang-zh{border-top:none;margin-top:0;padding-top:0}
}
#subtabs{margin-top:.15rem}
@media(max-width:640px){.modebar .mode{font-size:.78rem;padding:.36rem .6rem}}
@media(min-width:1100px){
  #panel-map:not([hidden]){display:grid;grid-template-columns:290px minmax(0,1fr);gap:1rem;align-items:start}
  #panel-map>h2,#panel-map>#map-note,#panel-map>.legend,#panel-map>#map-declared,
  #panel-map>p,#panel-map>div.scroll{grid-column:1/-1}
#map-rail{grid-column:1;grid-row:2;width:auto;justify-self:stretch;max-height:calc(100vh - 8.5rem);overflow-y:auto;overscroll-behavior:contain}
  #panel-map>#map.b-wide{grid-column:2;grid-row:2;width:auto;justify-self:stretch;margin:0;height:calc(100vh - 8.5rem);min-height:30rem}
#panel-map>#maplegend{grid-column:2;grid-row:3;max-width:none}#panel-map>p{max-width:74ch}#map-declared>p,#map-declared>summary{max-width:74ch}
}
#map-rail{background:var(--rail-bg);color:var(--chrome-ink);border-radius:8px;padding:.7rem .8rem;
  box-shadow:0 2px 8px rgba(0,0,0,.18);display:block}
#map-rail .mrf{background:transparent;border:0;border-top:1px solid rgba(245,240,235,.16);
  border-radius:0;padding:.5rem 0 .2rem;margin:0}
#map-rail .mrf:first-of-type{border-top:0}
#map-rail legend{font:600 .9rem/1.2 Georgia,serif;color:var(--chrome-ink);padding:0 0 .18rem;
  border-bottom:1px solid var(--copper);width:100%;margin-bottom:.3rem}
#map-rail label,#map-rail .rdlbl{font-family:system-ui,sans-serif;font-size:.76rem;color:var(--chrome-ink)}
#map-rail .note,#map-rail .rdlbl .note{color:var(--rail-mut)}
#map-rail input{accent-color:var(--copper)}
#map-rail a{color:#ffd166}
#map-rail summary{color:var(--chrome-ink);cursor:pointer}
#map-rail .rdtex{border-top-color:var(--rail-mut)}
#map-rail #map-inspector{background:rgba(255,255,255,.06);border:1px solid rgba(245,240,235,.18);
  border-left:3px solid var(--copper);color:var(--chrome-ink);margin-top:.6rem}
#map-rail #map-inspector .note{color:var(--rail-mut)}
#map-rail #map-inspector a{color:#ffd166}
#map-rail .gbtn{background:rgba(255,255,255,.1);border-color:rgba(245,240,235,.28);color:var(--chrome-ink)}
@media print{
  #modebar,#subtabs,[role=tablist],.langbar,#map-status{display:none!important}
  .panel[hidden]{display:block!important}
  .panel{margin-bottom:1rem;border-top:1px solid #999;break-inside:auto}
  #map-rail{max-height:none!important;overflow:visible!important;position:static!important;width:auto!important}
  .scroll,.rail,.geo-list{overflow:visible!important;max-height:none!important}  
  #panel-map{display:block!important}
  #map-rail{background:#fff!important;color:#000!important;box-shadow:none!important;border:1px solid #999}
  #map-rail legend,#map-rail a,#map-rail summary,#map-rail .note,#map-rail #map-inspector .note{color:#000!important}
  #map-rail #map-inspector{background:#fff!important;border-color:#999!important}
  #masthead{background:#fff!important;color:#000!important;box-shadow:none}
  #masthead a,#masthead .note{color:#000!important}
  thead{display:table-header-group}  
  tr,figure{break-inside:avoid}
}
