
:root{
  --bg:#0b0f1a;
  --card:#0e1525;
  --muted:#a1acc9;
  --text:#e2e8f0;
  --grad1:#7C3AED;
  --grad2:#22D3EE;
  --grad3:#F59E0B;
  --accent:#22D3EE;
  --good:#10b981;
  --bad:#ef4444;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
img{max-width:100%;display:block}

.container{max-width:1200px;margin:0 auto;padding:0 20px}
.section{padding:72px 0}

.btn{
  padding:12px 20px;border:0;border-radius:14px;
  background:linear-gradient(135deg,var(--grad1),var(--grad2));
  color:white;font-weight:700;box-shadow:0 6px 20px rgba(124,58,237,.35);
  transition:.2s transform ease-in-out;
}
.btn:hover{transform:translateY(-2px)}

.nav{
  position:sticky;top:0;z-index:50;
  backdrop-filter: blur(10px);
  background:linear-gradient(180deg, rgba(11,15,26,.8), rgba(11,15,26,.3));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav .wrap{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:36px;height:36px}
.brand span{font-weight:800;letter-spacing:.2px}

.menu{display:flex;gap:18px;flex-wrap:wrap}
.menu a{display:flex;align-items:center;gap:10px}
.menu a img.i{width:18px;height:18px;opacity:.95;filter: drop-shadow(0 1px 2px rgba(0,0,0,.55));}
.menu a{padding:8px 12px;border-radius:10px;color:#cbd5e1}
.menu a.active,.menu a:hover{background:rgba(255,255,255,.06);color:white}

.hero{
  position:relative;overflow:hidden;
  background: radial-gradient(1200px 400px at 50% -10%, rgba(124,58,237,.35), transparent),
              radial-gradient(900px 300px at 20% 0%, rgba(34,211,238,.25), transparent),
              radial-gradient(900px 300px at 80% 0%, rgba(245,158,11,.25), transparent);
}
.hero-inner{padding:120px 0 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.hero h1{font-size:44px;line-height:1.12;margin:0 0 14px}
.hero p{color:var(--muted);margin:0 0 22px}
.hero-canvas{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:0;opacity:.85}
.hero .copy{position:relative;z-index:1}
.hero .panel{position:relative;z-index:1;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px}

.metrics{
  position:sticky;top:66px;z-index:40;background:rgba(11,15,26,.75);backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.metrics .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:10px 0}
.metric{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px
}
.metric .k{font-size:13px;color:#94a3b8}
.metric .v{font-size:18px;font-weight:800}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px
}
.card h3{margin:0 0 8px;font-size:18px}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.badge{font-size:12px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.08);color:#cbd5e1}

.grid-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tile{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:10px}
.tile .head{display:flex;gap:10px;align-items:center}
.tile img{width:28px;height:28px}
.tile .name{font-weight:800}
.tile .kv{display:flex;gap:10px;flex-wrap:wrap;color:#cbd5e1;font-size:13px}

.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
.table th{color:#93a0b5;font-weight:600}

.footer{padding:32px 0;border-top:1px solid rgba(255,255,255,.06);color:#94a3b8}

.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kpi{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px}
.kpi .t{color:#94a3b8;font-size:13px}
.kpi .n{font-size:22px;font-weight:900}

.notice{padding:12px 14px;border-radius:12px;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.35)}

.form{display:grid;gap:12px}
.input, textarea{width:100%;padding:12px 14px;border-radius:12px;background:#0b1020;border:1px solid rgba(255,255,255,.08);color:#e2e8f0}
textarea{min-height:140px;resize:vertical}

.chart-panel{padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
}

@media (max-width: 1024px){
  .hero-inner{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr 1fr}
  .grid-tiles{grid-template-columns:1fr 1fr}
  .metrics .grid{grid-template-columns:repeat(2,1fr)}
  .kpis{grid-template-columns:1fr 1fr}
}
@media (max-width: 640px){
  .cards{grid-template-columns:1fr}
  .grid-tiles{grid-template-columns:1fr}
  .metrics .grid{grid-template-columns:1fr 1fr}
  .hero h1{font-size:34px}
}

.i24{width:24px;height:24px;display:inline-block;vertical-align:middle}

.site-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:-1;opacity:.22;pointer-events:none}

.i{display:inline-block;vertical-align:middle}
.i16{width:16px;height:16px}
.i18{width:18px;height:18px}
.i20{width:20px;height:20px}
.i24{width:24px;height:24px}
.iconed{display:flex;align-items:center;gap:8px}
.menu a img.i{width:18px;height:18px;opacity:.95;filter: drop-shadow(0 1px 2px rgba(0,0,0,.55));}
.card .i24{filter: drop-shadow(0 1px 2px rgba(0,0,0,.6));}

.menu a:hover img.i{transform: translateY(-1px) scale(1.04)}

/* Canvas layout hardening */
canvas.constellation{display:block;position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}

/* Inline icon sizing (applies to <svg.i> and <img.i>) */
svg.i, img.i{display:inline-block;vertical-align:middle}
.i16{width:16px;height:16px}
.i18{width:18px;height:18px}
.i20{width:20px;height:20px}
.i24{width:24px;height:24px}

/* Menu icon visuals */
.menu a .i{filter: drop-shadow(0 1px 2px rgba(0,0,0,.55));}
.menu a:hover .i{transform: translateY(-1px) scale(1.04)}

/* Card icon shadows */
.card .i24{filter: drop-shadow(0 1px 2px rgba(0,0,0,.6));}

/* Chart sizing fix (no downward creep) */
.grid-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width: 900px){.grid-charts{grid-template-columns:1fr}}
.chart-card{padding:14px;height:260px;overflow:hidden}
@media(max-width:640px){.chart-card{height:240px}}
.chart-card canvas{display:block;width:100% !important;height:100% !important}
.chart-head{font-weight:600;margin:0 0 8px}


/* --- Icon visibility hardening v2 --- */
svg.i, img.i{display:inline-block;vertical-align:middle;opacity:1 !important;filter:none !important}
.i16{width:16px;height:16px}
.i18{width:18px;height:18px}
.i20{width:20px;height:20px}
.i24{width:24px;height:24px}
.nav .menu a .i{width:20px;height:20px;margin-right:8px}
h2 .i, h3 .i{width:20px;height:20px;margin-right:8px}
.card .i24{width:24px;height:24px;margin-right:8px}


/* Featured pools: responsive grid for many tiles */
.grid-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width: 1024px){ .grid-tiles{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 640px){ .grid-tiles{grid-template-columns:1fr} }
.grid-tiles .tile--featured{grid-column:1 / -1}



/* --- Recent blocks table styles --- */
.blocks-table thead th{position:sticky;top:0;background:rgba(16,22,33,.75);backdrop-filter:saturate(120%) blur(4px);z-index:1}
.cell-coin{display:flex;align-items:center;gap:8px}
.blocks-table td, .blocks-table th{white-space:nowrap}
.blocks-table .h{text-decoration:none;border-bottom:1px dashed rgba(255,255,255,.25)}
.badge.ok{background:rgba(34,197,94,.15);color:#22c55e;border:1px solid rgba(34,197,94,.35)}
.badge.pending{background:rgba(234,179,8,.15);color:#eab308;border:1px solid rgba(234,179,8,.35)}



/* --- Feature tiles styling (bolder & prettier) --- */
.feature-tile{position:relative;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));transition:transform .2s ease, box-shadow .2s ease}
.feature-tile:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.feature-tile h3{font-size:20px;line-height:1.25;margin:0 0 8px;display:flex;align-items:center;gap:10px}
.feature-tile p{font-size:15px;line-height:1.6;color:#cbd5e1;margin:0}
.feature-tile .i{width:28px;height:28px}
.feature-tile.ft-sec{border-left:3px solid #22c55e}
.feature-tile.ft-perf{border-left:3px solid #60a5fa}
.feature-tile.ft-fees{border-left:3px solid #f59e0b}
@media (max-width:640px){
  .feature-tile h3{font-size:18px}
  .feature-tile p{font-size:14px}
}



/* Pools grid modern */
.pools-grid{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:16px}
@media(max-width:1200px){.pools-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.pools-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pools-grid{grid-template-columns:1fr}}
.pool-card{border-radius:16px;padding:16px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px rgba(0,0,0,.2);display:flex;flex-direction:column;gap:12px;transition:transform .2s ease, box-shadow .2s ease}
.pool-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.28)}
.pc-head{display:flex;align-items:center;gap:12px}
.pc-name{font-size:18px;font-weight:600;display:flex;align-items:center;gap:8px}
.pc-sub{font-size:12px;color:#93a0b5}
.pc-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pc-stats span{display:block;font-size:12px;color:#94a3b8}
.pc-stats b{font-size:15px}
.btn-grad{display:inline-block;text-align:center;border-radius:12px;padding:10px 12px;background:linear-gradient(90deg,#7c3aed,#22d3ee);font-weight:600}
.pc-flagship{background:rgba(59,130,246,.15);color:#60a5fa;border:1px solid rgba(59,130,246,.35)}
.pc--btc{border:1px solid rgba(124,58,237,.25);background:linear-gradient(135deg, rgba(124,58,237,.06), rgba(34,197,94,.06))}



/* Modern pools grid */
.pools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media(max-width:1200px){.pools-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.pools-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pools-grid{grid-template-columns:1fr}}
.pool-card{border-radius:18px;padding:16px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);
  box-shadow:0 4px 16px rgba(0,0,0,.20);display:flex;flex-direction:column;gap:12px;transition:transform .2s ease, box-shadow .2s ease}
.pool-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.28)}
.pc-head{display:flex;align-items:center;gap:12px}
.pc-name{font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px}
.pc-sub{font-size:12px;color:#93a0b5}
.pc-logo img{width:32px;height:32px}
.pc-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pc-stats span{display:block;font-size:12px;color:#94a3b8}
.pc-stats b{font-size:15px}
.btn-grad{display:inline-block;text-align:center;border-radius:12px;padding:10px 12px;background:linear-gradient(90deg,#7c3aed,#22d3ee);font-weight:600}
.pc-flagship{background:rgba(59,130,246,.15);color:#60a5fa;border:1px solid rgba(59,130,246,.35)}
/* Featured BTC spans full width on wide screens */
.pc--featured{grid-column:auto}

.pc--btc{border:1px solid rgba(124,58,237,.25);background:linear-gradient(135deg, rgba(124,58,237,.06), rgba(34,197,94,.06))}



/* --- Bitcoin Pool Health legend (rich) --- */
.badge-btc{background:rgba(245,158,11,.15);border:1px solid rgba(249,115,22,.45);color:#ffd9a6}
.ni-card.ni-health{position:relative;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.28)}
.ni-card.ni-health::before{
  content:"";position:absolute;inset:-40% -20% auto -20%;height:160%;
  background:radial-gradient(120px 120px at 20% 10%, rgba(255,179,64,.25), transparent 60%),
             radial-gradient(180px 180px at 80% 30%, rgba(34,211,238,.22), transparent 60%);
  filter: blur(24px);pointer-events:none
}
.chart-holder{height:320px}
@media(max-width:640px){.chart-holder{height:260px}}
.ni-score{background:linear-gradient(90deg,#f59e0b,#f97316);-webkit-background-clip:text;background-clip:text;color:transparent}
.ni-legend-rich{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;font-size:12px;color:#aab4c3}
.ni-legend-rich span{
  position:relative; display:inline-flex; align-items:center; gap:8px;
  padding:6px 12px 6px 22px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  backdrop-filter:saturate(120%);
}
.ni-legend-rich span::before{
  content:""; position:absolute; left:8px; top:50%; transform:translateY(-50%);
  width:8px; height:8px; border-radius:50%;
  box-shadow:0 0 8px rgba(255,255,255,.25);
}
.ni-legend-rich [data-leg="uptime"]::before{ background:linear-gradient(180deg,#10b981,#34d399);}
.ni-legend-rich [data-leg="stale"]::before{ background:linear-gradient(180deg,#f59e0b,#f97316);}
.ni-legend-rich [data-leg="payout"]::before{ background:linear-gradient(180deg,#06b6d4,#22d3ee);}
.ni-legend-rich [data-leg="nodes"]::before{ background:linear-gradient(180deg,#8b5cf6,#6366f1);}
.ni-legend-rich [data-leg="luck"]::before{ background:linear-gradient(180deg,#22c55e,#16a34a);}
.ni-legend-rich [data-leg="latency"]::before{ background:linear-gradient(180deg,#ef4444,#f43f5e);}
.ni-legend-rich i{font-style:normal; color:#e5e7eb; opacity:.9}



/* --- Network insights base --- */
.network-insights .ni-grid{display:grid;grid-template-columns:1fr;gap:16px}
.ni-card{border:1px solid rgba(255,255,255,.10);border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));padding:16px}
.ni-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.ni-title{font-weight:700;font-size:18px}
.chart-holder{position:relative;width:100%;height:300px}
.chart-holder canvas{position:absolute;inset:0;width:100% !important;height:100% !important}



/* --- Contact form (in-place) --- */
.form.contact-form{display:grid;gap:12px}
.form .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:720px){.form .grid-2{grid-template-columns:1fr}}
.field{display:grid;gap:6px}
.field input,.field textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.03);
  padding:12px 12px;color:#e5e7eb;outline:none}
.field input:focus,.field textarea:focus{border-color:rgba(34,211,238,.6);box-shadow:0 0 0 3px rgba(34,211,238,.15)}
.actions{margin-top:4px}
.alert{border-radius:12px;padding:10px 12px;margin:8px 0;font-weight:600}
.alert-ok{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.35);color:#bbf7d0}
.alert-err{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#fecaca}



/* --- Home: tight vertical spacing --- */
.page-home .section{padding:16px 0 !important; margin:12px 0 !important}
@media(max-width:768px){.page-home .section{padding:14px 0 !important; margin:10px 0 !important}}
.page-home .section:first-of-type{margin-top:0 !important}
.page-home .section + .section{margin-top:10px !important}
/* grids/cards gaps */
.page-home .cards{gap:10px !important}
.page-home .pools-grid{gap:10px !important}
/* headings & paragraphs spacing */
.page-home h2{margin:0 0 8px !important}
.page-home h3{margin:0 0 6px !important}
.page-home p{margin:6px 0 !important}
/* brief block compact */
.pool-about-brief{margin-top:8px !important; margin-bottom:8px !important}
.pab-wrap{padding:14px; border:1px solid rgba(255,255,255,.10); border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));}
.pool-about-brief .lead{font-size:15px; line-height:1.55; margin:4px 0 6px !important}
.pab-list{margin:0; padding-left:16px; display:grid; gap:4px}
.pab-list li{font-size:14px; line-height:1.45}
/* ensure any chart holders on home don't stretch */
.page-home .chart-holder{height:260px; min-height:200px}
.page-home .chart-holder canvas{position:absolute; inset:0; width:100% !important; height:100% !important}



/* --- Miners Live: styles --- */
.miners-live{padding:16px 0}
.ml-head{margin:0 0 10px}
.ml-head h2{margin:0 0 4px;font-size:20px}
.ml-head .muted{margin:0;color:#93a0b5;font-size:13px}

.ml-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:10px 0 12px}
.ml-left{display:flex;gap:10px;align-items:center}
.ml-input,.ml-select,.ml-btn{height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);color:inherit;padding:0 10px}
.ml-input{min-width:260px}
.ml-btn{cursor:pointer}
.ml-btn[data-paused="1"]{outline:2px solid rgba(255,255,255,.25)}

.ml-table-wrap{border:1px solid rgba(255,255,255,.10);border-radius:14px;overflow:auto;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));
  height:480px;max-height:480px}
@media(max-width:720px){.ml-table-wrap{height:360px;max-height:360px}}

.ml-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}
.ml-table th,.ml-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  font-size:13px;line-height:1.35;vertical-align:middle}
.ml-table thead th{position:sticky;top:0;background:rgba(0,0,0,.35);backdrop-filter:saturate(120%);font-size:12px;z-index:1;cursor:pointer}
.ml-table tbody tr:nth-child(odd){background:rgba(255,255,255,.02)}
.ml-table .mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.2px}
.ml-table .coin-ic{width:16px;height:16px;vertical-align:-3px;margin-right:6px}
.ml-table .spacer-row td{border:0 !important;padding:0 !important;height:auto}
.ml-table .ok{color:#a7f3d0}.ml-table .bad{color:#fecaca}.ml-table .warn{color:#fde68a}
/* --- End Miners Live --- */



/* --- Miners Live: toolbar w/o buttons --- */
.ml-toolbar{justify-content:flex-start !important; gap:10px !important}
.ml-left{gap:10px}
/* Hide any leftover right container if present */
.ml-right{display:none !important}



/* --- Miners Live: dynamic effects --- */
@keyframes cell-flash-up { 0%{background:rgba(34,197,94,.25)} 100%{background:transparent} }
@keyframes cell-flash-bad{ 0%{background:rgba(239,68,68,.25)} 100%{background:transparent} }
@keyframes cell-flash-warn{ 0%{background:rgba(234,179,8,.25)} 100%{background:transparent} }
@keyframes cell-flash-lat{ 0%{background:rgba(59,130,246,.22)} 100%{background:transparent} }

.ml-table td.flash-up{animation:cell-flash-up .8s ease-out}
.ml-table td.flash-bad{animation:cell-flash-bad .9s ease-out}
.ml-table td.flash-warn{animation:cell-flash-warn .9s ease-out}
.ml-table td.flash-lat{animation:cell-flash-lat .9s ease-out}

.ml-table td[data-x="hr"]{position:relative}
.ml-table td[data-x="hr"]::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:var(--bar,0%);
  background:linear-gradient(90deg, rgba(34,197,94,.22), rgba(34,197,94,.10));
  pointer-events:none;
}
.ml-table td[data-x="hr"] > * { position:relative }

.ml-live-dot{
  display:inline-block; width:8px; height:8px; border-radius:50%; background:#22c55e; margin-right:6px; vertical-align:middle;
  box-shadow:0 0 0 0 rgba(34,197,94,.7); animation:pulse 1.4s infinite;
}
@keyframes pulse {
  0%{ box-shadow:0 0 0 0 rgba(34,197,94,.6) }
  70%{ box-shadow:0 0 0 10px rgba(34,197,94,0) }
  100%{ box-shadow:0 0 0 0 rgba(34,197,94,0) }
}

.ml-ticker{position:relative; overflow:hidden; height:26px; border:1px solid rgba(255,255,255,.12); border-radius:8px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02)); margin:6px 0 10px}
.ml-ticker-track{display:flex; gap:18px; white-space:nowrap; align-items:center; height:100%;
  will-change:transform; animation:marquee 18s linear infinite}
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.ml-tick{opacity:.95; font-size:12px; padding:0 8px}
.ml-tick .ts{opacity:.6; margin-right:6px}
.ml-tick.good{color:#86efac} .ml-tick.bad{color:#fca5a5} .ml-tick.info{color:#93c5fd}
/* --- End dynamic effects --- */



/* --- Miners Live: no toolbar controls --- */
.ml-toolbar{display:none !important}



/* --- Miners Live: hardened styles --- */
.ml-status{margin:6px 0 10px; font-size:12px; color:#93a0b5}
@keyframes cell-flash-up { 0%{background:rgba(34,197,94,.25)} 100%{background:transparent} }
@keyframes cell-flash-bad{ 0%{background:rgba(239,68,68,.25)} 100%{background:transparent} }
@keyframes cell-flash-warn{ 0%{background:rgba(234,179,8,.25)} 100%{background:transparent} }
@keyframes cell-flash-lat{ 0%{background:rgba(59,130,246,.22)} 100%{background:transparent} }
.ml-table td.flash-up{animation:cell-flash-up .8s ease-out}
.ml-table td.flash-bad{animation:cell-flash-bad .9s ease-out}
.ml-table td.flash-warn{animation:cell-flash-warn .9s ease-out}
.ml-table td.flash-lat{animation:cell-flash-lat .9s ease-out}
.ml-table td[data-x="hr"]{position:relative}
.ml-table td[data-x="hr"]::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:var(--bar,0%);
  background:linear-gradient(90deg, rgba(34,197,94,.22), rgba(34,197,94,.10));
  pointer-events:none;
}
.ml-table td[data-x="hr"] > * { position:relative }
.ml-live-dot{display:inline-block; width:8px; height:8px; border-radius:50%; background:#22c55e; margin-right:6px; vertical-align:middle;
  box-shadow:0 0 0 0 rgba(34,197,94,.7); animation:pulse 1.4s infinite; }
@keyframes pulse { 0%{ box-shadow:0 0 0 0 rgba(34,197,94,.6) } 70%{ box-shadow:0 0 0 10px rgba(34,197,94,0) } 100%{ box-shadow:0 0 0 0 rgba(34,197,94,0) } }



/* --- About Pool section --- */
.about-pool{padding:18px 0 8px}
.about-pool h2{margin:0 0 8px;font-size:20px}
.about-pool .lead{margin:0 0 12px;color:#93a0b5;font-size:14px;line-height:1.5}
.ap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:1024px){.ap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.ap-grid{grid-template-columns:1fr}}
.ap-grid .tile{border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:14px;background:
  linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));display:flex;gap:10px;align-items:flex-start;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.ap-grid .tile .ico{width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px}
.ap-grid .tile:hover{transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.18) inset}
/* --- End About Pool section --- */



/* --- About Pool: colorful tiles --- */
.ap-grid .tile--power{
  border-color: rgba(255,107,107,.35);
  background:
    radial-gradient(120% 120% at 0% 0%, rgba(255,179,71,.18), transparent 60%),
    radial-gradient(120% 120% at 100% 100%, rgba(192,132,252,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.ap-grid .tile--asic{
  border-color: rgba(34,211,238,.35);
  background:
    radial-gradient(120% 120% at 100% 0%, rgba(34,211,238,.18), transparent 60%),
    radial-gradient(120% 120% at 0% 100%, rgba(96,165,250,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.ap-grid .tile--community{
  border-color: rgba(167,139,250,.35);
  background:
    radial-gradient(120% 120% at 0% 0%, rgba(192,132,252,.18), transparent 60%),
    radial-gradient(120% 120% at 100% 100%, rgba(244,114,182,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.ap-grid .tile--online{
  border-color: rgba(34,197,94,.35);
  background:
    radial-gradient(120% 120% at 100% 0%, rgba(74,222,128,.18), transparent 60%),
    radial-gradient(120% 120% at 0% 100%, rgba(6,182,212,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
/* --- End colorful tiles --- */



/* --- Miners Live: mobile tweaks --- */
@media (max-width: 640px) {
  .ml-table-wrap { height: 58vh; max-height: 58vh; -webkit-overflow-scrolling: touch; }
  .ml-table th, .ml-table td { padding: 8px 10px; font-size: 12px; }
  .ml-head h2 { font-size: 18px; }
  .ml-status { font-size: 11px; margin-top: 4px; }
  /* hide Diff (8) and Uptime (10) on small screens */
  #ml-table th:nth-child(8), #ml-table td:nth-child(8),
  #ml-table th:nth-child(10), #ml-table td:nth-child(10) { display: none; }
}
@media (max-width: 420px) {
  .ml-table-wrap { height: 60vh; }
  /* hide Algo (2) on very small screens */
  #ml-table th:nth-child(2), #ml-table td:nth-child(2) { display: none; }
}
/* --- End Miners Live mobile --- */



/* --- About page (assets6+) --- */
.about-hero{padding:18px 0 6px}
.about-hero h1{margin:0 0 6px;font-size:26px}
.about-hero .sub{margin:0;color:#93a0b5;font-size:14px;line-height:1.6}

.about-pool-explain{padding:8px 0 4px}
.about-pool-explain h2{margin:0 0 8px;font-size:20px}
.about-pool-explain p{margin:0;color:#cbd5e1;font-size:14px;line-height:1.6}

.about-tiles{padding:10px 0}
.tiles-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:1024px){.tiles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.tiles-grid{grid-template-columns:1fr}}
.card{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;display:flex;gap:12px;align-items:flex-start;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));transition:transform .18s ease, box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.card .ico{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center}
.card h3{margin:0 0 4px;font-size:15px}
.card p{margin:0;color:#cbd5e1;font-size:13px;line-height:1.5}

.card--sec{border-color:rgba(34,211,238,.35)}
.card--perf{border-color:rgba(251,113,133,.35)}
.card--fees{border-color:rgba(34,197,94,.35)}
.card--support{border-color:rgba(192,132,252,.35)}

.about-company{padding:8px 0}
.about-company h2{margin:0 0 8px;font-size:20px}
.about-company p{margin:0 0 8px;color:#cbd5e1;font-size:14px;line-height:1.6}
.about-company .values{margin:0;padding-left:18px;color:#cbd5e1}
.about-company .values li{margin:4px 0 6px;font-size:13px;line-height:1.5}

.about-how{padding:8px 0 18px}
.about-how h2{margin:0 0 8px;font-size:20px}
.steps{margin:0;padding-left:18px;color:#cbd5e1}
.steps li{margin:4px 0 6px;font-size:13px;line-height:1.5}
/* --- End About page (assets6+) --- */



/* --- FIX: prevent overlap in tiles (about + homepage) --- */
/* About page cards */
.tiles-grid .card{
  display:grid !important;
  grid-template-columns: 40px 1fr;
  column-gap: 12px;
  align-items:start;
}
.tiles-grid .card .ico{
  min-width:40px; max-width:40px; width:40px;
  height:40px;
  display:grid; place-items:center;
}
.tiles-grid .card .ico svg{ display:block; width:28px; height:28px }
.tiles-grid .card h3, .tiles-grid .card p{ min-width:0; word-wrap:break-word; overflow-wrap:break-word }

/* Homepage about tiles */
.ap-grid .tile{
  display:grid !important;
  grid-template-columns: 40px 1fr;
  column-gap: 12px;
  align-items:start;
}
.ap-grid .tile .ico{
  min-width:40px; max-width:40px; width:40px;
  height:40px;
  display:grid; place-items:center;
}
.ap-grid .tile .ico svg{ display:block; width:28px; height:28px }
.ap-grid .tile h3, .ap-grid .tile p{ min-width:0; word-wrap:break-word; overflow-wrap:break-word }
/* --- END FIX --- */



/* --- FIX v2: text should use full tile width, no overlap --- */
/* Unified grid layout for tiles (about + homepage) */
.ap-grid .tile, .tiles-grid .card{
  display:grid !important;
  grid-template-columns: 44px minmax(0,1fr);
  column-gap:12px;
  align-items:start;
  padding:14px;
}
.ap-grid .tile .ico, .tiles-grid .card .ico{
  grid-column:1; grid-row:1 / -1;
  width:44px; min-width:44px; max-width:44px;
  height:44px;
  display:grid; place-items:center;
}
.ap-grid .tile .ico svg, .tiles-grid .card .ico svg{ width:28px; height:28px; display:block }

/* Content always in second column with safe wrapping */
.ap-grid .tile > h3, .ap-grid .tile > p,
.tiles-grid .card > h3, .tiles-grid .card > p{
  grid-column:2;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.ap-grid .tile > h3, .tiles-grid .card > h3{ margin:0 0 4px; font-size:15px; line-height:1.25 }
.ap-grid .tile > p, .tiles-grid .card > p{ margin:0; font-size:13px; line-height:1.5 }

/* Tiny screens: stack icon above text */
@media (max-width: 420px){
  .ap-grid .tile, .tiles-grid .card{
    grid-template-columns: minmax(0,1fr);
    row-gap:8px;
  }
  .ap-grid .tile .ico, .tiles-grid .card .ico{
    grid-column:1; grid-row:auto; justify-self:start;
    width:36px; min-width:36px; max-width:36px; height:36px;
  }
  .ap-grid .tile > h3, .ap-grid .tile > p,
  .tiles-grid .card > h3, .tiles-grid .card > p{
    grid-column:1;
  }
}
/* --- END FIX v2 --- */


/* --- About tiles (restored) --- */
.about-tiles{padding:10px 0}
.tiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:980px){.tiles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.tiles-grid{grid-template-columns:1fr}}
.card{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;display:grid;grid-template-columns:44px minmax(0,1fr);
  column-gap:12px;align-items:start;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  transition:transform .18s ease, box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.card .ico{width:44px;min-width:44px;max-width:44px;height:44px;display:grid;place-items:center}
.card .ico svg{width:28px;height:28px;display:block}
.card h3{margin:0 0 4px;font-size:15px}
.card p{margin:0;color:#cbd5e1;font-size:13px;line-height:1.5}
.card--sec{border-color:rgba(34,211,238,.35)}
.card--foot{border-color:rgba(192,132,252,.35)}
.card--sup{border-color:rgba(34,197,94,.35)}
/* --- End About tiles --- */


/* --- SCOPE FIX: limit about-page card styles to about tiles only --- */
.about-tiles .card, .tiles-grid .card{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px}
.about-tiles .card:hover, .tiles-grid .card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.about-tiles .card .ico, .tiles-grid .card .ico{display:grid;place-items:center}
.about-tiles .card h3, .tiles-grid .card h3{margin:0 0 4px}
.about-tiles .card p, .tiles-grid .card p{margin:0}
/* --- END SCOPE FIX --- */

/* --- HOMEPAGE TOP TILES RESET --- */
.page-home .cards .card{display:flex !important; align-items:flex-start; gap:12px; grid-template-columns:none !important}
.page-home .cards .card .ico{width:28px; min-width:28px; height:28px; display:grid; place-items:center}
.page-home .cards .card .ico svg{width:24px; height:24px; display:block}
.page-home .cards .card > h3{margin:0 0 8px; font-size:18px}
.page-home .cards .card > p{margin:0; line-height:1.5}
.page-home .cards{gap:16px}
/* --- END HOMEPAGE TOP TILES RESET --- */



/* --- Home features (scoped) --- */
#home-features .hf-tile{
  display:grid; grid-template-columns: 44px minmax(0,1fr);
  column-gap:12px; align-items:start;
  border:1px solid rgba(255,255,255,.10); border-radius:16px; padding:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
#home-features .hf-tile:hover{ transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,.35) }
#home-features .hf-tile .ico{ width:44px; height:44px; min-width:44px; display:grid; place-items:center }
#home-features .hf-tile .ico svg{ width:28px; height:28px; display:block }
#home-features .hf-tile h2, #home-features .hf-tile h3{ margin:0 0 4px; font-size:16px; line-height:1.25 }
#home-features .hf-tile p{ margin:0; font-size:13px; line-height:1.5; color:#cbd5e1 }
#home-features .tile--sec{ border-color: rgba(34,211,238,.35) }
#home-features .tile--perf{ border-color: rgba(251,113,133,.35) }
#home-features .tile--fees{ border-color: rgba(34,197,94,.35) }
@media (max-width: 420px){
  #home-features .hf-tile{ grid-template-columns: minmax(0,1fr); row-gap:8px }
  #home-features .hf-tile .ico{ width:36px; height:36px; min-width:36px }
}
/* --- End Home features --- */



/* --- Home features: overflow/crooked fix (v2) --- */
#home-features{ overflow-x: hidden; } /* guard against accidental overflow */
#home-features .hf-tile{
  display: flex !important;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-sizing: border-box;
  max-width: 100%;
}
#home-features .hf-tile .ico{
  width: 36px; min-width: 36px; height: 36px;
  display: grid; place-items: center;
}
#home-features .hf-tile .ico svg{ width: 24px; height: 24px; display: block }
#home-features .hf-tile h2,
#home-features .hf-tile h3,
#home-features .hf-tile p{
  margin: 0 0 4px;
  flex: 1 1 auto;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
#home-features .hf-tile p{ margin: 0; line-height: 1.5; color:#cbd5e1 }
#home-features .tile--sec{ border-color: rgba(34,211,238,.35) }
#home-features .tile--perf{ border-color: rgba(251,113,133,.35) }
#home-features .tile--fees{ border-color: rgba(34,197,94,.35) }

/* On very small screens, stack icon above text if needed */
@media (max-width: 420px){
  #home-features .hf-tile{
    flex-direction: column;
    align-items: flex-start;
  }
  #home-features .hf-tile .ico{
    width: 32px; min-width: 32px; height: 32px;
  }
}
/* --- End overflow/crooked fix --- */



/* --- Home features: simple clean 3-card block --- */
.home-features .hf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width: 980px){.home-features .hf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width: 540px){.home-features .hf-grid{grid-template-columns:1fr}}
.hf-card{display:flex;align-items:flex-start;gap:12px;border:1px solid rgba(255,255,255,.10);
  border-radius:16px;padding:14px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
  box-sizing:border-box;max-width:100%}
.hf-card .ico{width:40px;min-width:40px;height:40px;display:grid;place-items:center}
.hf-card .ico svg{width:26px;height:26px;display:block}
.hf-card .txt{min-width:0}
.hf-card h3{margin:0 0 4px;font-size:16px;line-height:1.25}
.hf-card p{margin:0;font-size:13px;line-height:1.5;color:#cbd5e1;word-break:break-word;overflow-wrap:anywhere}
/* --- End Home features --- */



/* --- Contact page (scoped) --- */
.page-contact .contact-hero{padding:16px 0 8px}
.page-contact .contact-hero h1{margin:0 0 6px;font-size:26px}
.page-contact .contact-hero .sub{margin:0;color:#93a0b5;font-size:14px;line-height:1.55}

.page-contact .contact-block{padding:8px 0 18px}
.page-contact .contact-grid{
  display:grid; grid-template-columns: 1.15fr 1fr; gap:16px; align-items:start;
}
@media(max-width: 980px){ .page-contact .contact-grid{ grid-template-columns: 1fr; } }

.page-contact .contact-info{display:grid; grid-template-columns: 1fr; gap:12px}
.page-contact .contact-card{
  display:flex; gap:12px; align-items:flex-start;
  border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
}
.page-contact .contact-card .ico{width:40px; min-width:40px; height:40px; display:grid; place-items:center}
.page-contact .contact-card .ico svg{width:24px; height:24px; display:block}
.page-contact .contact-card .txt{min-width:0}
.page-contact .contact-card h3{margin:0 0 4px; font-size:16px}
.page-contact .contact-card p{margin:0; font-size:13px; line-height:1.5; color:#cbd5e1; overflow-wrap:anywhere; word-break:break-word}

.page-contact .contact-form{border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:16px; background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}
.page-contact .contact-form form{display:block; width:100%}
.page-contact .contact-form .row{display:flex; flex-direction:column; gap:6px; margin-bottom:10px}
.page-contact .contact-form label{font-size:13px; color:#cbd5e1}
.page-contact .contact-form input, .page-contact .contact-form textarea, .page-contact .contact-form select{
  width:100%; box-sizing:border-box; padding:10px 12px; border-radius:10px; border:1px solid rgba(255,255,255,.12);
  background:#0b1220; color:#e5eef7; outline:none;
}
.page-contact .contact-form textarea{resize:vertical}
.page-contact .contact-form button, .page-contact .contact-form input[type="submit"]{
  display:inline-block; padding:10px 14px; border-radius:12px; border:1px solid rgba(34,211,238,.5);
  background:linear-gradient(180deg,rgba(34,211,238,.15),rgba(34,211,238,.05)); color:#e6fbff; cursor:pointer;
}
/* Nuke legacy floats/widths that caused overlap */
.page-contact .contact-form *, .page-contact .contact-info *{ float: none !important; max-width: 100% !important; }
/* --- End Contact page --- */



/* --- Contact page: direct contacts box --- */
.page-contact .contact-direct{
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));
  display:grid; gap:12px;
}
.page-contact .contact-direct h3{ margin:0 0 6px; font-size:18px }
.page-contact .contact-direct .contact-card{ display:flex; gap:12px; align-items:flex-start }
.page-contact .contact-direct .contact-card .ico{ width:40px; min-width:40px; height:40px; display:grid; place-items:center }
.page-contact .contact-direct .contact-card .ico svg{ width:24px; height:24px; display:block }
.page-contact .contact-direct .contact-card .txt h4{ margin:0 0 2px; font-size:14px }
.page-contact .contact-direct .contact-card .txt p{ margin:0; font-size:13px; line-height:1.5 }
.page-contact .contact-direct a{ color:#e6fbff; text-decoration:underline; word-break:break-word }
.page-contact .contact-direct a:hover{ opacity:.9 }
/* --- End direct contacts --- */


/* --- Contact page: notices --- */
.page-contact .contact-form .notice{
  margin-bottom:10px; padding:10px 12px; border-radius:10px; font-size:13px;
}
.page-contact .notice.ok{ border:1px solid rgba(34,197,94,.45); background:rgba(34,197,94,.08); color:#d1fae5 }
.page-contact .notice.err{ border:1px solid rgba(239,68,68,.45); background:rgba(239,68,68,.08); color:#fee2e2 }
/* --- End notices --- */

/* --- Contact extra block --- */
.contact-extra{
  margin-bottom: 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));
  display:grid; gap:10px;
  max-width:100%;
  box-sizing:border-box;
}
.contact-extra .item{ display:flex; gap:10px; align-items:center }
.contact-extra .ico{ width:36px; min-width:36px; height:36px; display:grid; place-items:center }
.contact-extra .ico svg{ width:22px; height:22px; display:block }
.contact-extra .txt{ min-width:0 }
.contact-extra h3{ margin:0; font-size:14px; line-height:1.25 }
.contact-extra p{ margin:2px 0 0; font-size:13px; line-height:1.45; color:#cbd5e1; word-break:break-word; overflow-wrap:anywhere }
.contact-extra a{ color:#e6fbff; text-decoration:underline }
.contact-extra a:hover{ opacity:.9 }
/* --- End Contact extra block --- */


/* --- Contact page: neutralize global .card styles and stabilize layout --- */
.page-contact .cards{ gap:16px }
.page-contact .card{
  display:block !important; /* avoid global flex/grid overrides */
  padding:18px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)) !important;
  box-sizing:border-box;
  max-width:100%;
}
.page-contact .card .contact-extra{ margin-bottom:12px }
.page-contact .card h3{ margin-top:0; margin-bottom:10px }

/* Reinforce original form grid inside the contact card */
.page-contact .form.contact-form .grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px }
@media(max-width:640px){
  .page-contact .form.contact-form .grid-2{ grid-template-columns:1fr }
}
.page-contact .form.contact-form .field{ display:flex; flex-direction:column; gap:6px }

/* Ensure inputs fill width inside any overrides */
.page-contact .form.contact-form input,
.page-contact .form.contact-form textarea,
.page-contact .form.contact-form select{ width:100%; box-sizing:border-box }
/* --- End contact stabilization --- */



/* --- Stats page: contain charts inside cards --- */
.page-stats .cards{ grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px }
@media(max-width: 980px){ .page-stats .cards{ grid-template-columns: repeat(2, minmax(0,1fr)) } }
@media(max-width: 560px){ .page-stats .cards{ grid-template-columns: 1fr } }

.page-stats .card{ max-width: 100%; box-sizing: border-box }
.page-stats .chart-panel{ padding: 12px 14px; overflow: hidden }
.page-stats .chart-panel h3{ margin: 0 0 8px; font-size: 15px; line-height: 1.25 }

/* Chart container controls the height; canvas fills it */
.page-stats .chart-wrap{
  position: relative;
  height: 200px;
}
@media (max-width: 980px){ .page-stats .chart-wrap{ height: 180px } }
@media (max-width: 560px){ .page-stats .chart-wrap{ height: 160px } }

.page-stats .chart-wrap > canvas{
  position: absolute; inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
}

/* Guard against any global canvas rules */
.page-stats canvas{ max-width: 100%; box-sizing: border-box }
/* --- End stats containment --- */



/* --- Stats page: tighter chart spacing --- */
.page-stats .chart-panel h3{ margin: 0 0 6px !important; }
.page-stats .chart-wrap{ margin: 0 !important; padding: 0 !important; }
/* Guard any paragraphs inside cards from adding extra margins */
.page-stats .chart-panel p{ margin: 0 !important; }
/* --- End tighter spacing --- */



/* --- Stats: align to global chart-holder heights --- */
@media (max-width: 980px){ .chart-holder{ height:300px } }
@media (max-width: 560px){ .chart-holder{ height:240px } }
/* --- End --- */


/* --- Register page (scoped) --- */
.page-register .register-hero{ padding:8px 0 2px }
.page-register .register-hero h1{ margin:0 0 6px; font-size:28px }
.page-register .register-hero .sub{ margin:0; color:#93a0b5; font-size:14px }
.page-register .register-block{ padding:6px 0 12px }
.page-register .register-card{ padding:18px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)) }
.page-register .register-form .grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px }
@media(max-width:720px){ .page-register .register-form .grid-2{ grid-template-columns:1fr } }
.page-register .register-form .field{ display:flex; flex-direction:column; gap:6px }
.page-register .register-form label{ font-size:13px; color:#cbd5e1 }
.page-register .register-form input{ width:100%; box-sizing:border-box; padding:10px 12px; border-radius:10px; border:1px solid rgba(255,255,255,.12); background:#0b1220; color:#e5eef7; outline:none }
.page-register .register-form .actions{ margin-top:10px }
.page-register .register-form button{ padding:10px 14px; border-radius:12px; border:1px solid rgba(34,211,238,.5); background:linear-gradient(180deg,rgba(34,211,238,.15),rgba(34,211,238,.05)); color:#e6fbff; cursor:pointer }
.page-register .hero-canvas.constellation{ display:block; width:100%; height:120px; position:relative; border-radius:14px; margin-bottom:6px; }
@media(max-width:720px){ .hero-canvas.constellation{ height:130px } }
/* --- End register page --- */


/* --- Mobile compact spacing (site-wide) --- */
@media (max-width: 720px){
  /* Reduce vertical air between header and content */
  .section{ padding-top: 10px !important; padding-bottom: 10px !important; }
  /* Tighter gaps in common grids */
  .cards{ gap: 10px !important; }
  /* More compact cards */
  .card{ padding: 12px !important; border-radius: 14px !important; }
  .card h1, .card h2, .card h3{ margin-top: 0 !important; margin-bottom: 8px !important; }
  .card p{ margin-top: 4px !important; margin-bottom: 6px !important; }
  /* Containers shouldn't add extra space at the top */
  .section .container > h1,
  .section .container > h2,
  .section .container > h3,
  .section .container > p{ margin-top: 0.2rem; margin-bottom: 0.6rem; }
  /* Charts: keep smaller on very small devices */
  .chart-holder{ height: 220px; }
}
@media (max-width: 480px){
  .chart-holder{ height: 200px; }
  .card{ padding: 10px !important; border-radius: 12px !important; }
}
/* --- End Mobile compact spacing --- */

