.adm-badge{font:700 10.5px Inter;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#d4af37,#f3d98b);color:#2a1d00;border-radius:6px;padding:2px 6px;margin-left:4px}
.tbl{width:100%;border-collapse:collapse;font-size:13.5px}
.tbl th{text-align:left;color:var(--mut);font-weight:500;font-size:12px;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr.click{cursor:pointer}.tbl tr.click:hover td{background:var(--hov)}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
.chart{width:100%;height:120px;display:block}
.chart rect{fill:var(--acc);opacity:.85}.chart rect:hover{opacity:1}
.chart.w rect{fill:var(--warn)}.chart.b rect{fill:var(--bad)}.chart.g rect{fill:#d4af37}
.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:10px;margin-bottom:14px}
.filters input,.filters select{padding:8px 10px}
.acts{display:flex;flex-wrap:wrap;gap:8px}
.confirm{display:inline-flex;gap:6px;align-items:center;background:var(--bg2);border:1px solid var(--warnl);border-radius:10px;padding:4px 6px 4px 10px;font-size:13px}
.kv{display:grid;grid-template-columns:140px 1fr;gap:6px 12px;font-size:13.5px}.kv div:nth-child(odd){color:var(--mut)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;word-break:break-all}
.codes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:12px 0}.codes span{background:var(--bg2);border:1px solid var(--line);border-radius:8px;padding:6px;text-align:center;font-family:ui-monospace,Menlo,monospace}
.qr{background:#fff;border-radius:12px;padding:10px;width:180px;margin:10px auto}.qr svg{display:block;width:100%;height:auto}
.menu-btn{display:none}
.sec{margin-top:16px}
.tk{border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:10px}
.tk p{margin:.4em 0;white-space:pre-wrap}
@media (max-width:860px){
  .app{grid-template-columns:1fr}
  .side{position:fixed;inset:0 30% 0 0;z-index:50;transform:translateX(-105%);transition:transform .2s;height:100%;box-shadow:0 0 40px var(--sh)}
  .side.open{transform:none}
  .menu-btn{display:inline-flex}
  .filters{grid-template-columns:1fr 1fr}
  .filters input[type=search]{grid-column:1/-1}
  .g4,.g3{grid-template-columns:repeat(2,minmax(0,1fr))}.g2{grid-template-columns:1fr}
  .kv{grid-template-columns:110px 1fr}
  .main{padding:16px 16px 60px}
}
@media (prefers-reduced-motion:reduce){.side{transition:none}}
