*{box-sizing:border-box}body{margin:0;font:15px/1.45 system-ui,sans-serif;background:#111;color:#e8e8e8}
a{color:#8ab4ff}header{position:sticky;top:0;background:#1b1b1b;padding:8px 10px;border-bottom:1px solid #333;z-index:5}
h1{font-size:17px;margin:0 0 6px}h1 small{font-weight:400;color:#999;font-size:12px}
h2{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#aaa;margin:10px 0 4px}
#sf{display:flex;gap:6px}#q{flex:1;padding:9px;font-size:16px;border-radius:6px;border:1px solid #444;background:#0c0c0c;color:#fff}
button{background:#2b4a8a;color:#fff;border:0;border-radius:6px;padding:7px 11px;font-size:14px;cursor:pointer}button:hover{background:#3a5fb0}
#tabs{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}#tabs button{background:#2a2a2a}#tabs button.on{background:#3a5fb0}
main{display:block;padding:10px}
#content{flex:1;min-width:0}.muted{color:#999;font-size:13px}
.chips{display:flex;flex-wrap:wrap;gap:4px}.chip{background:#262626;border:1px solid #3a3a3a;border-radius:14px;padding:3px 9px;font-size:13px;cursor:pointer;color:#ddd}.chip:hover{background:#34405e}.chip i{color:#888;font-style:normal;margin-left:4px;font-size:11px}
#nf{width:100%;padding:7px;border-radius:6px;border:1px solid #444;background:#0c0c0c;color:#fff}
#nlist{max-height:240px;overflow:auto;border:1px solid #333;border-radius:6px;margin-top:4px}#nlist div{padding:4px 8px;cursor:pointer;display:flex;justify-content:space-between;gap:6px;border-bottom:1px solid #222}#nlist div:hover{background:#34405e}#nlist span{color:#888;font-size:12px}
#v-search{display:flex;gap:12px;align-items:flex-start}#hits{width:300px;flex:none;max-height:calc(100vh - 140px);overflow:auto}
.hit{padding:6px 8px;border:1px solid #2c2c2c;border-radius:6px;margin-bottom:5px;cursor:pointer;background:#181818}.hit:hover,.hit.on{background:#27324d}.hit b{font-size:13px}.hit div{font-size:12px;color:#bbb;overflow-wrap:anywhere}
mark{background:#d4a017;color:#000;padding:0 1px;border-radius:2px}
#viewer{flex:1;min-width:0}.vh{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:6px}.vh b{margin-right:auto}
.pagebox{background:#000;border:1px solid #333;border-radius:6px;text-align:center;padding:4px;min-height:80px}.pagebox canvas,.pagebox img{max-width:100%;height:auto}
.txt{white-space:pre-wrap;overflow-wrap:anywhere;background:#181818;border:1px solid #2c2c2c;border-radius:6px;padding:8px;margin-top:8px;max-height:45vh;overflow:auto;font-size:14px}
.warn{background:#3a2d12;border:1px solid #6b5420;padding:5px 8px;border-radius:6px;margin:6px 0;font-size:13px}
textarea{width:100%;min-height:60px;background:#0c0c0c;color:#fff;border:1px solid #444;border-radius:6px;padding:6px;margin-top:6px}
.grid{display:flex;flex-wrap:wrap;gap:3px}.th{width:112px;height:112px;background-repeat:no-repeat;cursor:pointer;border:1px solid #222;position:relative}.th:hover{outline:2px solid #8ab4ff}.th span{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.65);font-size:10px;padding:1px 3px;opacity:0}.th:hover span{opacity:1}
table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #2a2a2a;padding:4px 6px;text-align:left;font-size:13px}
.bar{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0;align-items:center}select,.bar input{background:#0c0c0c;color:#fff;border:1px solid #444;border-radius:6px;padding:5px}
footer{padding:14px;text-align:center;border-top:1px solid #333;margin-top:16px;font-size:13px}
html{font-size:calc(16px*var(--fs,1))}body{font-size:calc(15px*var(--fs,1))}
html.light{filter:invert(1) hue-rotate(180deg)}html.light img,html.light canvas,html.light video,html.light .th,html.light .lb-img,html.light .leaflet-container img{filter:invert(1) hue-rotate(180deg)}
#rtools{margin:4px 0 0}#rtools button{padding:3px 8px;background:#2a2a2a}
#v-search{display:block}#sr{display:flex;gap:12px;align-items:flex-start}
.view details{border:1px solid #333;border-radius:6px;margin:4px 0;padding:4px 8px;background:#161616}summary{cursor:pointer;color:#cfd8ee;font-size:14px}
#side{margin-bottom:6px}#viewer{flex:1;min-width:0}
.badge{font-size:11px;border:1px solid #3a5fb0;color:#b9ccff;border-radius:10px;padding:1px 7px;white-space:nowrap}.badge.unv{border-color:#b8860b;color:#ffd77a}.badge.crt{border-color:#4a8f5a;color:#9fe0b0}
.unvbox{border:2px dashed #b8860b;border-radius:8px;padding:8px 10px;margin:10px 0;background:#201a08}
#lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:8px}
#lb .lb-img{max-width:96vw;max-height:66vh;object-fit:contain;background:#000}#lb video{max-width:96vw;max-height:60vh}
#lb .lb-th{background-repeat:no-repeat;background-color:#000;border:1px solid #333}
#lb .lb-d{background:#1b1b1b;border:1px solid #333;border-radius:8px;padding:8px 12px;max-width:min(96vw,640px);width:100%;font-size:14px}
#lb .lb-d b{color:#fff}#lb .lb-nav{position:absolute;top:50%;font-size:28px;background:#0008;padding:10px 14px}#lb .lb-x{position:absolute;top:8px;right:8px;font-size:18px;background:#600}
.jg{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}.jg img{width:96px;height:128px;object-fit:cover;border:1px solid #333;cursor:pointer;background:#000}
#map{height:420px;border-radius:8px;border:1px solid #333}.cmp{display:flex;gap:8px;align-items:flex-start}.cmp>div{flex:1;min-width:0}
svg text{fill:#ddd;font:12px system-ui}
@media(max-width:800px){#sr{flex-direction:column}#hits{width:100%;max-height:220px}.cmp{flex-direction:column}}
.btnlink{background:#2b4a8a;color:#fff;padding:3px 9px;border-radius:6px;text-decoration:none;white-space:nowrap}
.vph{display:inline-block;width:96px;height:54px;border:1px dashed #666;font-size:11px;text-align:center;line-height:54px;color:#999}
td img{vertical-align:middle;border-radius:3px}
mark.cur{outline:2px solid #ff9800;background:#ffb300}
.tg{display:inline-block;padding:1px 8px;margin:2px;border-radius:10px;font-size:12px;border:1px solid #888;cursor:pointer;user-select:none}
.tg.off{opacity:.55;background:transparent}.tg.on{color:#000}
.tg-fu{border-color:#f90}.tg-fu.on,.hit .tg-fu{background:#f90;color:#000}
.tg-ns{border-color:#e55}.tg-ns.on,.hit .tg-ns{background:#e55;color:#000}
.tg-ok{border-color:#4c4}.tg-ok.on,.hit .tg-ok{background:#4c4;color:#000}
.tg-c1{border-color:#6cf}.tg-c1.on,.hit .tg-c1{background:#6cf;color:#000}.tg-c2{border-color:#c9f}.tg-c2.on,.hit .tg-c2{background:#c9f;color:#000}
.tg-c3{border-color:#fd5}.tg-c3.on,.hit .tg-c3{background:#fd5;color:#000}.tg-c4{border-color:#5dc}.tg-c4.on,.hit .tg-c4{background:#5dc;color:#000}
#mic.on{background:#c33}#ssrow[hidden]{display:none}.jmp,.tgrow{flex-wrap:wrap}
button.on{outline:2px solid #3a5fb0}
