/* © 2026 bladept696 — Centro de Comando / Hash Commander. Todos os direitos reservados.
   é proibido copiar, modificar, redistribuir ou publicar este ficheiro, no todo ou em parte, sem autorização escrita do autor.
   https://github.com/bladept696/centro-de-comando-v3 */
/* ---------- Distribuição de hashrate: painel animado (distribuicao-hashrate.js) ---------- */
.chart-box[data-layout-id="chart-donut"]{border-radius:20px;border:1px solid #4fd6ff26;
  background:radial-gradient(90% 140% at 0% 50%,#0f3a4a55,transparent 60%),linear-gradient(160deg,#0d1a28,#070e17);box-shadow:inset 0 1px 0 #ffffff14,0 26px 50px -30px #000}
/* o título dourado vive no canvas; esconde o do cabeçalho e a linha de meta vazia */
.chart-box[data-layout-id="chart-donut"] .chart-header,
.chart-box[data-layout-id="chart-donut"] .chart-meta-row{display:none}
#hashrateDonutRow{display:block;padding:0;container-type:inline-size}
/* altura segue a largura (16:8.4) mas não passa de 400px quando o cartão ocupa a linha toda */
#hashrateDonutRow .dh-card{aspect-ratio:auto;height:min(52.5cqw,400px)}
.dh-card{--dh-teal:#2ee6c9;--dh-teal-d:#0f6f63;position:relative;border-radius:14px;overflow:hidden;max-width:100%;aspect-ratio:16/8.4;
  background:radial-gradient(120% 90% at 50% 40%,#0d1d22 0%,#05090c 70%);border:1px solid #13302f}
.dh-cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.dh-mach{position:absolute;right:12%;width:27%;min-width:0;display:grid;gap:10px;top:50%;translate:0 -50%;padding:0 16px 0 0}
/* a inclinação 3D alarga o lado direito dos cartões: sem corte no contentor, a margem fica na padding */
/* cartão estreito (coluna da grelha): os cartões encostam mais à direita e ganham largura */
@container (max-width:760px){.dh-mach{right:2%;width:38%}.dh-th{font-size:15px}}
.dh-card{container-type:inline-size}
.dh-m{background:linear-gradient(180deg,rgba(17,52,52,.85),rgba(8,22,24,.9));border:1px solid rgba(46,230,201,.55);border-radius:8px;padding:8px 10px;
  box-shadow:0 0 18px rgba(46,230,201,.18),inset 0 0 12px rgba(46,230,201,.08);transform:perspective(600px) rotateY(-14deg);transform-origin:left center}
.dh-n{display:flex;align-items:center;gap:6px;font-size:12px;color:#d8f3ee;min-width:0}
.dh-n span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dh-n i{flex:none;width:7px;height:7px;border-radius:50%;background:var(--c);box-shadow:0 0 6px var(--c)}
.dh-v{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-top:4px;font-variant-numeric:tabular-nums}
.dh-th{font-size:clamp(13px,1.7vw,19px);font-weight:600;color:#d8f3ee;white-space:nowrap}
.dh-pc{font-size:12px;color:var(--dh-teal)}
.dh-bar{height:5px;border-radius:3px;background:#0c2a29;margin-top:6px;overflow:hidden}
.dh-bar b{display:block;height:100%;width:var(--p);background:linear-gradient(90deg,var(--dh-teal-d),var(--c));box-shadow:0 0 8px var(--c)}
.dh-mini{display:flex;justify-content:space-between;gap:4px;font-size:9px;color:#6f9690;margin-top:4px;white-space:nowrap}
/* muitas máquinas: cartões mais compactos */
.dh-many .dh-mach{gap:6px}
.dh-many .dh-m{padding:5px 8px}
.dh-many .dh-mini{display:none}
@media (max-width:640px){
  #hashrateDonutRow .dh-card{height:125cqw}
  /* telemóvel: cristal em cima, cartões das máquinas por baixo, lado a lado */
  .dh-mach{top:auto;bottom:3%;left:4%;right:4%;width:auto;translate:none;padding:2px;grid-template-columns:1fr 1fr;gap:6px;align-content:end}
  .dh-th{font-size:13px}
  .dh-v{flex-wrap:wrap;gap:0 6px}
  .dh-m{padding:6px;transform:none}
  .dh-mini{display:none}
}
@media (prefers-reduced-motion:reduce){.dh-m{transform:none}}
