html[data-idb-theme=dark]{
  --idb-bg:#0b1220; --idb-card:#111a2c; --idb-card-2:#16213a; --idb-line:#23314d; --idb-grid:rgba(148,163,184,.16);
  --idb-text:#e2e8f0; --idb-text-2:#94a3b8; --idb-accent:#2dd4bf; --idb-tip:#0f172a; --idb-hover:#1a2742;
  --idb-c1:#14b8a6; --idb-c2:#f59e0b; --idb-c3:#6366f1; --idb-c4:#38bdf8; --idb-c5:#a3e635; --idb-c-bad:#f87171; --idb-c-muted:#64748b;
  --ink:#e2e8f0; --muted:#94a3b8; --line:#23314d; --bg:#0b1220; --card:#111a2c; --accent:#2dd4bf;
  color-scheme:dark;
}
html[data-idb-theme=light]{
  --idb-bg:#f1f5f9; --idb-card:#fff; --idb-card-2:#f8fafc; --idb-line:#e2e8f0; --idb-grid:rgba(15,23,42,.08);
  --idb-text:#0f172a; --idb-text-2:#64748b; --idb-accent:#0f766e; --idb-tip:#fff; --idb-hover:#f0fdfa;
  --idb-c1:#0f766e; --idb-c2:#d97706; --idb-c3:#4f46e5; --idb-c4:#0284c7; --idb-c5:#65a30d; --idb-c-bad:#dc2626; --idb-c-muted:#94a3b8;
  color-scheme:light;
}
html[data-idb-theme=dark],html[data-idb-theme=dark] body{background:var(--idb-bg);color:var(--idb-text)}
html[data-idb-theme=dark] .shell-top{background:#070c17;border-bottom:1px solid var(--idb-line)}
html[data-idb-theme=dark] .crumbbar,html[data-idb-theme=dark] .ident{background:var(--idb-card);border-bottom-color:var(--idb-line)}
html[data-idb-theme=dark] .crumbbar .cur,html[data-idb-theme=dark] .ident h1{color:var(--idb-text)}
html[data-idb-theme=dark] .ident .facts{color:var(--idb-text)}
html[data-idb-theme=dark] .app-footer{background:#070c17;border-top-color:var(--idb-line);color:var(--idb-text-2)}
html[data-idb-theme=dark] .btn-ghost{background:var(--idb-card-2);border-color:var(--idb-line);color:var(--idb-text)}
html[data-idb-theme=dark] .btn-ghost:hover{background:var(--idb-hover)}
html[data-idb-theme=dark] .inp{background:var(--idb-bg);border-color:var(--idb-line);color:var(--idb-text)}
html[data-idb-theme=dark] .inp::placeholder{color:#64748b}
.idb-ident-r{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.idb-theme{display:inline-flex;border:1px solid var(--idb-line);border-radius:999px;padding:1px;background:var(--idb-card-2)}
.idb-theme button{border:0;background:transparent;color:var(--idb-text-2);font:inherit;font-size:.62rem;font-weight:700;padding:.14rem .55rem;border-radius:999px;cursor:pointer}
.idb-theme button.on{background:var(--idb-accent);color:#fff}
html[data-idb-theme=dark] .idb-theme button.on{color:#042f2e}
.idb{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.idb-tabs{display:flex;gap:.2rem;border-bottom:1px solid var(--idb-line);flex:0 0 auto}
.idb-tabs button{border:1px solid transparent;border-bottom:0;background:transparent;color:var(--idb-text-2);font:inherit;font-size:.76rem;font-weight:700;padding:.32rem 1.1rem;border-radius:.4rem .4rem 0 0;cursor:pointer;margin-bottom:-1px}
.idb-tabs button:hover{color:var(--idb-text)}
.idb-tabs button.on{background:var(--idb-card);border-color:var(--idb-line);color:var(--idb-accent)}
.idb-panels{flex:1 1 auto;min-height:0;overflow:auto;padding-top:.45rem}
.idb-panel{display:flex;flex-direction:column;gap:.45rem;min-height:100%}
.idb-panel[hidden]{display:none}
.idb-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.45rem;flex:0 0 auto}
.idb-kpi{background:var(--idb-card);border:1px solid var(--idb-line);border-radius:.5rem;padding:.4rem .6rem;display:flex;flex-direction:column;gap:.08rem;min-width:0}
.idb-kpi b{font-size:.55rem;text-transform:uppercase;letter-spacing:.05em;color:var(--idb-text-2);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idb-kpi-v{font-size:1.12rem;font-weight:750;color:var(--idb-text);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idb-kpi small{font-size:.66rem;color:var(--idb-text-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.idb-row{display:grid;gap:.45rem;flex:0 0 auto}
.idb-row-2{grid-template-columns:1fr 1fr}
.idb-row-3{grid-template-columns:1.25fr 1fr 1fr}
@media (max-width:1200px){.idb-row-3{grid-template-columns:1fr 1fr}.idb-row-3 .idb-card-status{grid-column:1 / -1}}
@media (max-width:900px){.idb-row-2,.idb-row-3{grid-template-columns:1fr}}
.idb-card{background:var(--idb-card);border:1px solid var(--idb-line);border-radius:.5rem;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.idb-card h2{margin:0;font-size:.78rem;font-weight:700;color:var(--idb-text);padding:.36rem .6rem;border-bottom:1px solid var(--idb-line);display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:2.05rem}
.idb-search{height:1.45rem;font-size:.68rem;width:12rem;max-width:50%}
.idb-chart{position:relative;height:16.5rem;padding:.35rem .5rem .4rem}
.idb-card-grid{flex:1 0 16rem}
.idb-grid-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.idb-scroll{flex:1 1 auto;min-height:0;overflow:auto}
.idb-card-grid .idb-scroll{max-height:none}
.idb-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.72rem}
.idb-table th{position:sticky;top:0;z-index:2;background:var(--idb-card-2);color:var(--idb-text-2);border-bottom:1px solid var(--idb-line);padding:.24rem .5rem}
.idb-table th.sorted,.idb-table th.sorted a,.idb-table th.sorted .sa{color:var(--idb-accent)}
.idb-table th.num,.idb-table td.num{text-align:right}
.idb-table th.num a{justify-content:flex-end}
.idb-table td{padding:.18rem .5rem;border-bottom:1px solid var(--idb-line);color:var(--idb-text);white-space:nowrap;font-variant-numeric:tabular-nums}
.idb-table tbody tr:hover td{background:var(--idb-hover)}
.idb-table tbody tr.idb-muted-row td:first-child{color:var(--idb-text-2);font-style:italic}
.idb-table tfoot td{position:sticky;bottom:0;background:var(--idb-card-2);font-weight:750;border-top:1px solid var(--idb-line);border-bottom:0}
.idb-empty{color:var(--idb-text-2);text-align:center;padding:.6rem}
.idb-status-body{display:flex;flex-direction:column;gap:.4rem;padding:.45rem .55rem .5rem;height:16.5rem}
.idb-status-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.2rem,1fr));gap:.35rem;flex:0 0 auto}
.idb-status-card{background:var(--idb-card-2);border:1px solid var(--idb-line);border-radius:.4rem;padding:.3rem .45rem;display:grid;grid-template-columns:auto 1fr;column-gap:.35rem;row-gap:.02rem;align-items:start;align-content:start;min-width:0}
.idb-status-card b{font-size:.58rem;line-height:1.15;color:var(--idb-text-2);font-weight:700;overflow-wrap:anywhere}
.idb-status-n{grid-column:1 / -1;font-size:1rem;font-weight:750;color:var(--idb-text);font-variant-numeric:tabular-nums}
.idb-status-card small{grid-column:1 / -1;font-size:.64rem;color:var(--idb-text-2);font-variant-numeric:tabular-nums}
.idb-dot{width:.55rem;height:.55rem;border-radius:999px;display:inline-block;margin-top:.08rem}
.idb-status-split{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:8.5rem 1fr;gap:.5rem;align-items:stretch}
.idb-chart-donut{height:auto;padding:0;min-height:0}
.idb-status-split .idb-grid-wrap{border:1px solid var(--idb-line);border-radius:.35rem;overflow:hidden}
.idb-filter{display:flex;align-items:flex-end;gap:.35rem;flex-wrap:wrap;margin-right:auto;margin-left:1rem}
.idb-f{display:flex;flex-direction:column}
.idb-f label{font-size:.55rem;text-transform:uppercase;letter-spacing:.04em;color:var(--idb-text-2);font-weight:700;margin-bottom:.08rem;white-space:nowrap}
.idb-filter .inp{height:1.6rem;font-size:.72rem}
.idb-w-preset{width:9.5rem}
.idb-w-date{width:6.9rem;font-variant-numeric:tabular-nums}
.idb-f-btn .btn{height:1.6rem}
.inp.idb-bad{border-color:var(--idb-c-bad);box-shadow:0 0 0 2px rgba(239,68,68,.18)}
.idb.idb-busy .idb-panels{opacity:.55;transition:opacity .15s}
html[data-idb-theme=dark] select.inp{background:var(--idb-bg);color:var(--idb-text)}
