/* ══════════════════════════════════════════════════════════════════════════
   be.css — be pybløck · minimalist cypherpunk design system.
   Cargado ÚLTIMO → overridea pyblock.css / pyblock-pro.css.
   Principios: negro puro, mono, líneas finas, flat (sin glows/gradientes/radios grandes).
   Acento = color de la sección (--sc / --color-primary); frame = verde matrix.
   ══════════════════════════════════════════════════════════════════════════ */
:root{
  --be-bg:#000;
  --be-fg:#dcd0ec;
  --be-dim:#8f6fd0;
  --be-line:rgba(185,107,255,.16);
  --be-line2:rgba(185,107,255,.07);
  --be-grn:#b96bff;
  --be-mono:"DejaVu Sans Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --be-accent:var(--sc, var(--color-primary, #b96bff));
}

body{
  background:#000 !important; color:var(--be-fg) !important;
  font-family:var(--be-mono) !important; background-image:none !important;
}
*{ text-shadow:none !important; }

/* ── layout ── */
.content-wrapper{ max-width:1000px !important; margin:0 auto !important; padding:0 20px 60px !important; }
section, .mb-lg, .mb-md, .mt-md{ margin-block:28px !important; }

/* ── headings ── */
h1,h2,h3,.stratum-core h1,.message-board-title{
  font-family:var(--be-mono) !important; font-weight:800 !important; letter-spacing:1px !important;
  text-transform:uppercase; text-shadow:none !important;
}
h2{ font-size:15px !important; letter-spacing:3px !important; color:var(--be-dim) !important; }

/* ── superficies flat (cards / paneles / stat boxes) ── */
.card,.stat-box,.pro-panel,.pro-hero,.pro-kpi,.message-board,.pro-sec,.supplier-card{
  background:rgba(185,107,255,.018) !important;
  border:1px solid var(--be-line) !important;
  border-radius:5px !important; box-shadow:none !important; backdrop-filter:none !important;
}

/* ── caja stratum connection ── */
.stratum-url,.stratum-core .card,.conn-box{
  font-family:var(--be-mono) !important; background:#000 !important;
  border:1px solid var(--be-accent) !important; border-radius:5px !important;
  box-shadow:none !important; filter:none !important; color:var(--be-accent) !important;
}

/* ── stat boxes ── */
.stats-grid{ gap:10px !important; }
.stat-box{ padding:16px !important; }
.stat-value{ font-family:var(--be-mono) !important; color:var(--be-accent) !important; font-weight:800 !important; }
.stat-label,.card-stat-label{ color:var(--be-dim) !important; text-transform:uppercase !important; letter-spacing:1.5px !important; font-size:11px !important; }
.card-stat-value{ font-family:var(--be-mono) !important; color:var(--be-accent) !important; }

/* ── tablas minimal ── */
table{ border-collapse:collapse !important; width:100% !important; font-family:var(--be-mono) !important; }
table th{
  color:var(--be-dim) !important; text-transform:uppercase !important; font-size:11px !important;
  letter-spacing:1.5px !important; font-weight:700 !important; text-align:left !important;
  padding:11px 14px !important; border-bottom:1px solid var(--be-line) !important; background:none !important;
}
table td{ padding:11px 14px !important; color:var(--be-fg) !important; border-bottom:1px solid var(--be-line2) !important; background:none !important; }
table tr:hover td{ background:rgba(185,107,255,.03) !important; }

/* ── botones flat ── */
.btn,.pro-cta,button.pro-cta{
  font-family:var(--be-mono) !important; background:transparent !important;
  border:1px solid var(--be-accent) !important; color:var(--be-accent) !important;
  border-radius:5px !important; box-shadow:none !important;
  text-transform:uppercase !important; letter-spacing:1.5px !important; font-weight:700 !important;
  transition:background .15s ease !important;
}
.btn:hover,.pro-cta:hover{ background:rgba(185,107,255,.08) !important; }

/* ── color helpers → coherencia ── */
.text-cyan{ color:var(--be-accent) !important; }
.text-yellow{ color:var(--be-accent) !important; }

/* ── inputs / message board ── */
.message-input-container input, .message-input-container textarea, input, textarea{
  background:#000 !important; border:1px solid var(--be-line) !important; color:var(--be-fg) !important;
  font-family:var(--be-mono) !important; border-radius:5px !important;
}

.stratum-url, .stratum-url a, .stratum-url span, .stratum-url code{ color:var(--be-accent) !important; }

/* --sc (color de cadena bip110 = púrpura) → verde del frame: el sitio blake no usa el púrpura */
.pro{ --sc:#b96bff !important; }
.stratum-core .stratum-url{ color:#b96bff !important; border-color:rgba(185,107,255,.45) !important; }

/* ══════════ MINIMAL PASS (Curly): fuentes más chicas · sin efectos hover · modales chicos ══════════ */
html{ font-size:14px !important; }
.stratum-core h1, .content-wrapper h1{ font-size:24px !important; letter-spacing:2px !important; }
h2{ font-size:12px !important; letter-spacing:2.5px !important; }
h3{ font-size:14px !important; }
.stratum-core .stratum-url,.stratum-url{ font-size:14px !important; padding:11px 15px !important; }
.stat-value{ font-size:17px !important; }
.stat-label,.card-stat-label{ font-size:10px !important; }
.card-stat,.card-stat-value{ font-size:12px !important; }
table th,table td{ font-size:12px !important; padding:8px 12px !important; }
.card,.stratum-core .card,.stat-box,.pro-panel{ padding:16px !important; }
.content-wrapper{ max-width:920px !important; }

/* modales / lookup más compactos */
.modal,.modal-content,.pb-modal,[class*="modal"]{ font-size:13px !important; max-width:560px !important; }
.modal .stat-value,.modal-content .stat-value{ font-size:15px !important; }

/* SIN EFECTOS HOVER — estático, minimalista */
*{ transition:none !important; }
.card:hover,.stat-box:hover,.pro-panel:hover,.pro-cta:hover,.btn:hover{
  transform:none !important; box-shadow:none !important; background:rgba(185,107,255,.018) !important; filter:none !important; }
.btn:hover,.pro-cta:hover{ background:transparent !important; }
table tr:hover td{ background:none !important; }
a:hover,.nav-link:hover,.be-link:hover{ text-shadow:none !important; }

/* ── jerarquía verde: matar cyan/azul decorativo del tema viejo ── */
:root[data-chain-theme="bip110"]{ --color-secondary:#8f6fd0 !important; --color-cyan:#8f6fd0 !important; }
.text-cyan,.text-secondary,.text-info{ color:#8f6fd0 !important; }
main a, .content-wrapper a, .pro-panel a, .pro-sec a, footer a, .site-footer a{ color:var(--be-grn) !important; }

/* ═══════════ MINIMAL v2 (2º pedido Curly): mucho más chico · modales compactos · CERO hover ═══════════ */
html{ font-size:13px !important; }
h1,.stratum-core h1,.content-wrapper h1{ font-size:20px !important; letter-spacing:1.5px !important; }
h2{ font-size:11px !important; }
h3{ font-size:13px !important; }
.stratum-core .stratum-url,.stratum-url{ font-size:13px !important; padding:9px 12px !important; }
.stat-value{ font-size:15px !important; }
.stat-label,.card-stat-label{ font-size:9px !important; }
.card,.stat-box,.pro-panel,.stratum-core .card{ padding:13px !important; }
section,.mb-lg,.mb-md,.mt-md{ margin-block:18px !important; }
.content-wrapper{ max-width:880px !important; }

/* ── MODALES / OVERLAYS / SEARCH — incluidos los bespoke (.ov/.box/.cls) ── */
.modal-content,.ov .box,.box,[class*="modal"] .box,.search-modal,.global-search-box{
  max-width:440px !important; width:92% !important; padding:16px 18px !important;
  box-shadow:none !important; border-radius:6px !important; }
.modal-content h1,.modal-content h2,.modal-content h3,.ov .box h3,.box h3,.modal-title,.modal-header{ font-size:14px !important; margin:0 0 8px !important; }
.ov .box label,.box label,.modal-body{ font-size:12px !important; }
.ov .box .cmd,.box .cmd,.cmd{ font-size:12px !important; padding:8px 10px !important; }
.kv .v{ font-size:13px !important; } .kv .k{ font-size:9px !important; }
.split .r,.viz-secondary{ font-size:11px !important; }
.viz-primary{ font-size:13px !important; padding:10px !important; }
.sv1-warn{ font-size:11px !important; padding:8px 10px !important; }
.cls,.modal-close,.global-search-close{ font-size:16px !important; top:10px !important; right:12px !important; }
#global-search-input{ font-size:14px !important; }
.search-empty-icon{ font-size:28px !important; }
.search-empty-title{ font-size:14px !important; }
.search-empty-text,.search-result-title,.search-result-desc,.search-result-type{ font-size:12px !important; }

/* ── CERO efectos hover en TODO el sitio ── */
*:hover{ transform:none !important; box-shadow:none !important; filter:none !important; }
.cmd:hover,.card:hover,.stat-box:hover,.pro-panel:hover,.btn:hover,.pro-cta:hover,.viz-primary:hover,.viz-secondary:hover,.tmpl-table tbody tr:hover{ background:transparent !important; }
.be-link:hover{ color:#c9a8ff !important; }

/* ═══════════ MESSAGE BOARD — compacto, organizado, sin glow, sin hover ═══════════ */
.message-board{ border:1px solid var(--be-line) !important; box-shadow:none !important; padding:14px !important; margin-top:20px !important; background:rgba(185,107,255,.015) !important; }
.message-board.magenta-theme{ border-color:var(--be-line) !important; box-shadow:none !important; }
.message-board-title{ font-size:12px !important; letter-spacing:2px !important; text-align:left !important; text-shadow:none !important; margin-bottom:10px !important; color:var(--be-dim) !important; }
.message-board-title::before{ color:var(--be-dim) !important; }
.message-list{ max-height:240px !important; padding:8px !important; border:1px solid var(--be-line) !important; }
.message-item{ border:1px solid var(--be-line2) !important; border-left:2px solid var(--be-accent) !important; padding:7px 10px !important; margin-bottom:7px !important; box-shadow:none !important; background:rgba(185,107,255,.02) !important; transition:none !important; }
.message-item:hover{ transform:none !important; box-shadow:none !important; background:rgba(185,107,255,.035) !important; }
.message-header{ font-size:11px !important; margin-bottom:5px !important; color:var(--be-dim) !important; }
.message-content,.message-text{ font-size:12px !important; line-height:1.45 !important; color:var(--be-fg) !important; }
.message-meta,.message-time{ font-size:10px !important; color:var(--be-dim) !important; }
.message-sats{ font-size:11px !important; }
.message-input-container{ gap:8px !important; margin-top:10px !important; align-items:stretch !important; }
.message-input-container textarea{ min-height:52px !important; border:1px solid var(--be-line) !important; padding:8px !important; font-size:12px !important; }

/* ── vencer a pyblock-pro.css (.pro …) + inline del board JS: specificity + !important ── */
.pro h2.text-center,.pro .pro-sec h2{ font-size:13px !important; letter-spacing:2px !important; margin:22px 0 10px !important; }
.pro .message-board,.pro .message-board *{ font-size:12px !important; }
.pro .message-board .message-board-title{ font-size:12px !important; }
.pro .message-board .message-item{ font-size:12px !important; padding:7px 10px !important; margin-bottom:7px !important; }
.pro .message-board .reply-indicator{ font-size:11px !important; }
.pro .message-board .message-content,.pro .message-board .message-text{ font-size:12px !important; }
.pro .message-board .message-header{ font-size:11px !important; }
.pro .message-board .message-time,.pro .message-board .message-meta{ font-size:10px !important; }
.pro .message-board .message-sats{ font-size:11px !important; }
.pro .message-board .btn-reply,.pro .message-board .btn{ font-size:11px !important; padding:4px 12px !important; }
.pro .message-board textarea,.pro .message-board input{ font-size:12px !important; }

/* verde reservado para datos LEGACY / non-bip110 (mineros, suppliers legacy) */
:root{ --be-legacy:#00ff41; --be-legacy-dim:#5c8a5c; --be-legacy-line:rgba(0,255,65,.16); }
