/* =====================================================================
   Eurabelt Banking Verification v2.1 — Part C (administration and intelligence)
   Loaded on every portal page after eurabelt.css. Prefixes: dx- (diagnostics), us- (users), au- (event log),
   fi- (fraud intelligence), sw- (SWIFT tools), lg- (logos), mi- (issuer registry), bk- (bank registry).
   ===================================================================== */

/* shared */
.data-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.data-table td.mono,.data-table .mono{color:var(--text)}

/* ---------- diagnostics ---------- */
.dx-tiles{margin-bottom:.6rem}
.dx-tiles .stat.dx-good b{color:#7fd8ac}
.dx-tiles .stat.dx-warn{border-color:rgba(226,179,60,.45)}
.dx-tiles .stat.dx-warn b{color:var(--warn)}
.dx-sum{font-size:.86rem;margin:0 0 1.4rem}
.dx-h{font-size:1.15rem;margin:1.6rem 0 .8rem;color:var(--gold-l);letter-spacing:.01em}
.dx-h:first-of-type{margin-top:.4rem}
.dx-list{padding:.4rem 1.25rem}
.dx-row{display:flex;gap:.7rem;padding:.55rem 0;border-bottom:1px solid var(--line)}
.dx-row:last-child{border-bottom:0}
.dx-label{color:#fff}
.dx-detail{font-size:.86rem;word-break:break-word}
.dx-gap{margin-top:1.1rem}
.dx-sub td{background:rgba(201,162,39,.06);color:var(--gold-l)!important;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.dx-small{font-size:.82rem}
.dx-break{word-break:break-all}
.dx-cols{font-size:.84rem;color:var(--text3);margin-top:.5rem;word-break:break-word}

/* ---------- audit log ---------- */
.au-tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1rem;border-bottom:1px solid var(--line)}
.au-tabs a{padding:.6rem 1rem;color:var(--text2);border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:600;font-size:.92rem}
.au-tabs a span{font-weight:400;color:var(--text3);margin-left:.3rem;font-size:.82rem}
.au-tabs a.on{color:var(--gold-l);border-bottom-color:var(--gold)}
.au-tabs a:hover{color:#fff}
.au-filter{margin-bottom:1rem}
.au-filter .card-body{display:grid;grid-template-columns:minmax(200px,2fr) minmax(180px,1.4fr) repeat(2,minmax(140px,1fr)) minmax(90px,.6fr) auto;gap:.7rem;align-items:end}
.au-filter .form-group,.au-filter label{margin:0}
.au-f-btn{display:flex;gap:.4rem;white-space:nowrap}
@media (max-width:1100px){.au-filter .card-body{grid-template-columns:1fr 1fr}.au-f-q{grid-column:1/-1}}
@media (max-width:560px){.au-filter .card-body{grid-template-columns:1fr}}
.au-note{font-size:.86rem;margin:-.2rem 0 .9rem}
.au-empty{text-align:center;padding:2.6rem 1rem}
.au-empty h3{color:var(--text2);margin-bottom:.3rem}
.au-when{white-space:nowrap}
.au-name{color:#fff;font-weight:500}
.au-details{max-width:360px;font-size:.84rem}
.au-details code{font-size:.8rem;color:var(--text2);word-break:break-word;white-space:normal}
.au-details summary{cursor:pointer;color:var(--text2);word-break:break-word}
.au-ip{font-size:.82rem;white-space:nowrap}
.au-pager{display:flex;gap:.4rem;flex-wrap:wrap}

/* ---------- users ---------- */
.us-tiles{margin-bottom:1.2rem}
.us-tiles .stat{text-align:center}
.us-t-total b{color:var(--gold-l)} .us-t-active b{color:#7fd8ac} .us-t-locked b{color:#f3a3a3} .us-t-admin b{color:var(--info)}
.us-user{display:flex;align-items:center;gap:.6rem}
.us-user b{display:block;color:#fff;font-weight:600}
.us-user small{display:block;font-size:.78rem}
.us-av{width:34px;height:34px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--gold-l),var(--gold-d));color:var(--vault);display:inline-flex;align-items:center;justify-content:center;font:700 .72rem var(--sans)}
.us-mail{font-size:.86rem}
.us-nw{white-space:nowrap}
.us-warn{color:var(--warn)}
.us-off td{opacity:.5}
.us-det{max-width:280px;font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.us-check{display:flex;flex-direction:column;justify-content:flex-end}
.us-check label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.55rem 0;color:var(--text)}
.us-check input{accent-color:var(--gold);width:16px;height:16px}
.us-table .badge{white-space:nowrap}

/* ---------- inline-styled intelligence pages (fraud intelligence, issuer registry, instrument tools): responsive grids ---------- */
@media (max-width:1100px){
  .fi-page [style*="grid-template-columns:repeat(4"],.fi-page [style*="grid-template-columns: repeat(4"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .fi-page [style*="grid-template-columns:repeat(5"],.fi-page [style*="grid-template-columns:repeat(3"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:760px){
  .fi-page [style*="grid-template-columns:1fr 1fr"],.fi-page [style*="grid-template-columns: 1fr 1fr"],.fi-page [style*="grid-template-columns:2fr"],.fi-page [style*="grid-template-columns:1fr 2fr"],.fi-page [style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr!important}
  .fi-page [style*="padding:1.75rem 2rem"]{padding:1.1rem!important}
}
@media (max-width:460px){
  .fi-page [style*="grid-template-columns:repeat("]{grid-template-columns:1fr!important}
}
.fi-page{overflow-wrap:anywhere}

/* ---------- SWIFT tools ---------- */
.sw-pre{white-space:pre-wrap;font-size:.8rem;background:var(--vault);border:1px solid var(--line);border-radius:8px;padding:.8rem 1rem;color:var(--text2);margin-top:.8rem;overflow-x:auto}
.sw-steps{padding-left:1.3rem;color:var(--text2)}
.sw-steps li{margin:.25rem 0}

/* ---------- logos ---------- */
.lg-sub{display:block;font-size:.76rem;color:var(--text3);margin-top:.25rem}
.lg-note{font-size:.84rem;margin:-.6rem 0 1.2rem}

/* ---------- small screens ---------- */
.au-table{min-width:920px}
.us-table{min-width:1060px}
@media (max-width:640px){
  .dx-tiles,.us-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dx-tiles .stat b,.us-tiles .stat b{font-size:1.35rem}
}
.fi-page table{max-width:100%}
.fi-page .table-responsive,.fi-page .table-container{overflow-x:auto}
.fi-page .card,.fi-page > div{min-width:0;max-width:100%}
