/* HBV Pure Theme: Portal Dashboard */
:root{
  --hbv-bg:#0a0a0a;
  --hbv-fg:#fbee00;
  --hbv-dim:#c9bd00;
  --hbv-card:#111213;
  --hbv-border:#1c1d1f;
  --hbv-accent:#3aa0ff;
  --ok:#26c281; --warn:#e67e22; --beta:#9b59b6; --info:#3498db;
}
*{box-sizing:border-box}
html,body{height:100%} body{margin:0;background:#0a0a0a;color:var(--hbv-fg);font-family:ui-monospace,Consolas,Menlo,monospace;line-height:1.6}
.site-header{border-bottom:1px solid var(--hbv-border);padding:14px 16px;background:linear-gradient(180deg,#0b0b0b,#0a0a0a)}
.brand{display:flex;gap:14px;align-items:center;max-width:1200px;margin:0 auto}
.logo{width:44px;height:44px}
.brand-text h1{margin:0;font-size:20px}
.brand-text .sub{margin:0;color:var(--hbv-dim);font-size:13px}
.nav{margin-left:auto;display:flex;gap:14px}
.nav a{color:var(--hbv-accent);text-decoration:none}
.content{max-width:1200px;margin:20px auto;padding:0 16px;display:flex;flex-direction:column;gap:16px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.card,.panel{background:var(--hbv-card);border:1px solid var(--hbv-border);border-radius:16px;padding:16px;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.metric{font-size:28px;margin:6px 0 2px}
.metric.warn{color:var(--warn)}
.list{list-style:none;margin:0;padding:0}
.list.two-col{columns:2}
.list li{padding:6px 0;border-bottom:1px dashed var(--hbv-border)}
.list li:last-child{border-bottom:none}
.tag{font-size:12px;padding:2px 6px;border-radius:999px;border:1px solid var(--hbv-border);margin-left:8px}
.tag.ok{color:var(--ok)} .tag.warn{color:var(--warn)} .tag.beta{color:var(--beta)} .tag.info{color:var(--info)}
.chart{overflow:auto}
.site-footer{border-top:1px solid var(--hbv-border);padding:16px;text-align:center;color:var(--hbv-dim)}


/* Nodes list */
.nodes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.node{background:#0e0f10;border:1px solid var(--hbv-border);border-radius:12px;padding:10px}
.node h3{margin:0 0 6px 0;font-size:14px}
.meter{height:8px;border:1px solid var(--hbv-border);border-radius:8px;overflow:hidden;background:#0b0c0d;margin:6px 0}
.meter > .fill{height:100%;background:linear-gradient(90deg,#c3b900,#fbee00);width:0%}
.kv{display:flex;justify-content:space-between;font-size:12px;color:var(--hbv-dim)}
.status.OK{color:#26c281}.status.WARN{color:#e67e22}.status.DOWN{color:#e74c3c}
