:root{--bg:#0b0f14;--p:#121821;--p2:#18202b;--b:#243042;--t:#d8e1ec;--m:#8796a8;--g:#3fb37f;--a:#e0a63a;--r:#e5534b;--c:#4ea1ff}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--t);font:13px/1.4 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}
a{color:var(--c);text-decoration:none}h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--m);margin:0 0 6px}
header{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;background:#0d131bee;border-bottom:1px solid var(--b);backdrop-filter:blur(6px)}
.brand{font-weight:700;letter-spacing:.2em;font-size:12px;color:var(--m)}.level{font:700 15px ui-monospace,monospace;padding:4px 10px;border-radius:6px;background:var(--p2)}
.l1{color:var(--g)}.l2{color:#9fd36b}.l3{color:var(--a)}.l4{color:#f07b3f}.l5{color:var(--r)}.ltext{flex:1;min-width:200px;color:var(--t)}.gen{color:var(--m);font-size:12px}
.health{display:flex;flex-wrap:wrap;gap:4px;padding:8px 14px;border-bottom:1px solid var(--b)}
.fd{display:flex;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;background:var(--p);font-size:11px;color:var(--m);cursor:default}
.dot{width:8px;height:8px;border-radius:50%}.green{background:var(--g)}.amber{background:var(--a)}.red{background:var(--r)}.grey{background:#555}
main{padding:12px 14px;display:flex;flex-direction:column;gap:12px}
.mapwrap{position:relative;border:1px solid var(--b);border-radius:10px;overflow:hidden}#map{height:52vh;min-height:320px;background:#0b0f14}
.layers{position:absolute;top:8px;right:8px;z-index:500;background:#0d131be6;border:1px solid var(--b);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;gap:2px;max-width:220px}
.layers label{display:flex;gap:6px;align-items:center;font-size:12px;cursor:pointer}.layers small{color:var(--m)}
.kp{position:absolute;left:8px;bottom:8px;z-index:500;background:#0d131be6;border:1px solid var(--b);border-radius:6px;padding:4px 8px;font-size:12px}
.col2{display:grid;grid-template-columns:1fr 340px;gap:12px}@media(max-width:900px){.col2{grid-template-columns:1fr}}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:10px}
.card{background:var(--p);border:1px solid var(--b);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.card h3{margin:0;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--m)}
.sig{display:grid;grid-template-columns:1fr auto;gap:2px 8px;align-items:center;border-top:1px solid var(--b);padding-top:6px}
.sig .v{font:600 20px ui-monospace,monospace}.sig .u{font-size:11px;color:var(--m);font-weight:400}.sig .lab{grid-column:1/3;color:var(--t)}
.sig .meta{grid-column:1/3;color:var(--m);font-size:11px}
.badge{font:600 11px ui-monospace,monospace;padding:2px 6px;border-radius:4px;background:var(--p2);color:var(--m);white-space:nowrap}.b2{color:var(--a)}.b3{color:var(--r)}
svg.sp{width:100%;height:28px;grid-column:1/3}
.items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.items li{border-top:1px dashed var(--b);padding-top:4px}
.items .s{color:var(--m);font-size:11px}.slot{border:1px dashed var(--a);border-radius:8px;padding:6px 8px;color:var(--a);font-size:12px}
.changes{background:var(--p);border:1px solid var(--b);border-radius:10px;padding:10px 12px;align-self:start;max-height:80vh;overflow:auto}
.hint{color:var(--m);font-size:11px;margin:0 0 6px}#changes{list-style:none;margin:0;padding:0}#changes li{border-top:1px solid var(--b);padding:6px 0}
.cf{font-size:11px;font-weight:600}.cf.y{color:var(--g)}.cf.n{color:var(--a)}.cf.st{color:var(--r)}
footer{padding:14px;color:var(--m);font-size:11px;border-top:1px solid var(--b)}
.tc{position:sticky;top:45px;z-index:900;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:8px 14px;background:#0d131bf2;border-bottom:1px solid var(--b)}
.tc button{background:var(--p2);color:var(--t);border:1px solid var(--b);padding:5px 11px;font:600 12px system-ui;cursor:pointer}
.tc .seg{display:flex}.tc .seg button:first-child{border-radius:6px 0 0 6px}.tc .seg button:last-child{border-radius:0 6px 6px 0}.tc .seg button.on{background:var(--c);color:#04121f;border-color:var(--c)}
.tc .step{display:flex;align-items:center;gap:6px}.tc .step button{border-radius:6px}.tc .step button:disabled{opacity:.35;cursor:default}#tcl{font:600 13px ui-monospace,monospace;min-width:150px;text-align:center}
.tcn{color:var(--m);font-size:11px}
details.about{font-size:12px}details.about summary{cursor:pointer;color:var(--c);list-style:none;display:inline-flex;align-items:center;gap:5px;font-size:11px}
details.about summary::-webkit-details-marker{display:none}.i{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;border:1px solid var(--c);font:700 10px Georgia,serif;font-style:italic}
details.about .ab{margin-top:6px;padding:8px 10px;background:var(--p2);border:1px solid var(--b);border-radius:8px;color:var(--t)}details.about p{margin:0 0 6px}
details.about h4{margin:6px 0 3px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--m)}details.about ul{margin:0;padding-left:16px}details.about li{margin:2px 0}
.mapabout{margin-top:-6px}.hotcard ol.hot{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:10px}.hotcard ol.hot>li{border-top:1px solid var(--b);padding-top:8px}
.hh{display:flex;justify-content:space-between;gap:8px;font-size:14px}.fact ul{margin:4px 0;padding-left:16px}.tag{font:700 10px ui-monospace,monospace;padding:1px 5px;border-radius:3px;margin-right:4px}
.tag.f{background:#16314a;color:#9cd0ff}.tag.ti{background:#3a2a10;color:#ffc46b}.inf{margin-top:4px;color:#e8dcc6}.fact .s,.hotcard .s{color:var(--m);font-size:11px}
.layers{max-height:calc(100% - 16px);overflow:auto}.layers label.dim{opacity:.5}.sig.na .v{color:var(--m)}
.leaflet-container{background:#0b0f14}
@media(max-width:600px){.layers{max-width:170px;font-size:11px;top:auto;bottom:34px;right:6px;max-height:46%}.layers label{font-size:11px}#map{height:58vh}.tc{top:0;position:static}}
.tag{display:inline-block;line-height:1.3;vertical-align:1px}#lyd summary{cursor:pointer;font:600 11px system-ui;color:var(--m);text-transform:uppercase;letter-spacing:.1em}
