*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  /* Zámek proti horizontálnímu posunu */
  overflow-x: hidden;
  /* Dovolíme jen jeden plynulý svislý scroll */
  overflow-y: scroll;
  height: auto;
  -webkit-overflow-scrolling: touch;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  /* Pozadí musí být pevné, aby se s ním nehýbalo */
  background: radial-gradient(circle at 50% 38%, #1a0f3f 0%, #0a1030 38%, #050816 72%, #03050e 100%) fixed;
  background-color: #06091a;
  color: #e8f4ff;
  font-family: 'Rajdhani', sans-serif;
  /* Klíč k odstranění gumy: body nesmí mít vlastní scroll */
  overflow: visible !important;
  position: relative;
}

/* NOVÉ CANVAS POZADÍ */
#network {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  display: block;
}

.site-header,
.site-footer,
.wp-block-post-title,
.entry-header,
.page-header {
  display: none !important;
}

.site-main,
.site-content,
main,
#content,
#primary {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  background: transparent !important;
}

.st-app {
  width: 100%;
  max-width: 1560px;
  margin: 0 auto;
  padding: 20px 15px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  height: auto !important; /* Zajistí, že se appka natáhne podle budíků */
  overflow: visible !important; /* Zakáže vnitřní scroll */
}


.st-hdr-title {
  text-align: center;
  font-size: 31px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #eef5ff;
  margin-bottom: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  text-shadow: 0 0 18px rgba(120,160,255,.14);
}

.st-hdr-title::before,
.st-hdr-title::after {
  content: "";
  flex: 1;
  max-width: 120px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(110,150,255,.34));
}

.st-hdr-title::after {
  background: linear-gradient(90deg, rgba(110,150,255,.34), transparent);
}

.st-hdr-sub {
  text-align: center;
  font-family: 'DM Mono', monospace;
  font-size: 15px;
  color: #d7e7ff;
  letter-spacing: .04em;
  margin-bottom: 1rem;
  text-shadow: 0 0 10px rgba(60,120,255,.12);
}

.st-main-row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  max-width: 1500px;
  min-height: 760px;
  margin: 0 auto;
  position: relative;
}

.st-center-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 1 auto;
  position: relative;
  z-index: 2;
}

.st-gauges-row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
  position: relative;
}

.st-big-gc,
.st-sm-gc {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.st-big-gc {
  transform: translateY(-4px);
  position: relative;
  z-index: 2;
}

.st-big-gc.st-left {
  margin-right: -28px;
}

.st-big-gc.st-right {
  margin-left: -28px;
}

.st-gauge-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: #9ec6ff;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.st-gdot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}

.st-gdot-dl { background:#00c8ff; box-shadow:0 0 10px #00c8ff; }
.st-gdot-ul { background:#d05cff; box-shadow:0 0 10px #d05cff; }
.st-gdot-pi { background:#00e5c8; box-shadow:0 0 10px #00e5c8; }
.st-gdot-ji { background:#a060ff; box-shadow:0 0 10px #a060ff; }

canvas {
  display: block;
}

.st-big-gc canvas {
  width: 470px;
  height: 470px;
}

.st-big-val,
.st-sm-val {
  text-align: center;
}

.st-big-val {
  margin-top: -84px;
}

.st-big-num {
  font-family: 'DM Mono', monospace;
  font-size: 66px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.03em;
  color: #eef8ff;
  text-shadow: 0 0 18px rgba(160,210,255,.08);
}

.st-big-unit {
  font-size: 11px;
  letter-spacing: .20em;
  text-transform: none !important;
  color: #74aef7;
  margin-top: 4px;
}

.st-big-max {
  font-family: 'DM Mono', monospace;
  font-size: 10px;
  color: #5f88c7;
  letter-spacing: .08em;
  margin-top: 2px;
}

/* ═══════════════════════════════════════════════════════════════
   MALÉ BUDÍKY – FINÁLNÍ VERZE (bez stupnice + velká čísla + pozice)
═══════════════════════════════════════════════════════════════ */

.st-side {
  position: absolute;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 190px;
  pointer-events: none;
}

/* POZICE – DOTÝKAJÍ SE, NEPŘEKRÝVAJÍ */
.st-side-left {
  left: 18px;
  top: 470px;
  transform: translateX(42px);
}

.st-side-right {
  right: 18px;
  top: 470px;
  transform: translateX(-42px);
}

/* KRUH */
.st-sm-gc {
  position: relative;
  width: 168px;
  height: 168px;
  border-radius: 50%;
  overflow: visible;
  filter:
    drop-shadow(0 0 10px rgba(0, 180, 255, .10))
    drop-shadow(0 0 18px rgba(0, 140, 255, .08));
}

/* BAREVNÝ OKRAJ */
.st-sm-gc::before {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  background:
    conic-gradient(
      from 220deg,
      rgba(0, 210, 255, .98) 0deg,
      rgba(54, 140, 255, .98) 70deg,
      rgba(132, 92, 255, .98) 128deg,
      rgba(210, 78, 255, .98) 195deg,
      rgba(255, 78, 196, .95) 242deg,
      rgba(255, 78, 196, 0) 280deg,
      rgba(0, 210, 255, 0) 360deg
    );
  box-shadow:
    0 0 14px rgba(0, 170, 255, .18),
    0 0 24px rgba(180, 70, 255, .12);
  -webkit-mask: radial-gradient(circle, transparent 56%, #000 58%);
  mask: radial-gradient(circle, transparent 56%, #000 58%);
  z-index: 1;
}

/* VNITŘEK */
.st-sm-gc::after {
  content: "";
  position: absolute;
  inset: 30px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 48%, rgba(18, 26, 70, .96) 0%, rgba(8, 14, 42, .985) 58%, rgba(4, 8, 24, 1) 100%);
  border: 1px solid rgba(60, 120, 255, .10);
  box-shadow:
    inset 0 0 24px rgba(0, 0, 0, .62),
    inset 0 0 42px rgba(0, 40, 120, .12);
  z-index: 2;
}

/* ❌ ZRUŠENÍ STUPNICE */
.st-mini-scale,
.st-mini-ticks {
  display: none !important;
}

/* ❌ ZRUŠENÍ CANVAS STUPNICE */
.st-sm-gc canvas {
  opacity: 0 !important;
}

/* ČÍSLO */
.st-sm-val {
  position: absolute;
  left: 50%;
  bottom: 0px;
  transform: translateX(-50%);
  z-index: 10;
  text-align: center;
  min-width: 110px;
}

.st-sm-num {
  font-family: 'DM Mono', monospace;
  font-size: 52px;
  font-weight: 700;
  line-height: 1;
  color: #eef8ff;
  text-shadow:
    0 0 12px rgba(255,255,255,.10),
    0 0 20px rgba(120,200,255,.14);
}

.st-sm-unit {
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #75a7ef;
  margin-top: 4px;
}

/* POPIS (PING / JITTER) */
.st-sm-lbl {
  position: absolute;
  top: 138px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #8dbaff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
  text-shadow: 0 0 10px rgba(70,180,255,.10);
}

.st-sm-lbl .st-gdot {
  width: 10px;
  height: 10px;
}

/* RESPONSIVE */
@media (max-width: 1280px) {
  .st-side-left {
    left: 8px;
    top: 430px;
    transform: translateX(30px);
  }

  .st-side-right {
    right: 8px;
    top: 430px;
    transform: translateX(-30px);
  }
}
@media (max-width: 820px) {
  .st-app {
    padding-top: .8rem;
  }

  .st-hdr-title {
    font-size: 18px;
    letter-spacing: .12em;
    gap: 10px;
  }

  .st-hdr-title::before,
  .st-hdr-title::after {
    max-width: 34px;
  }

  .st-hdr-sub {
    font-size: 12px;
    line-height: 1.5;
    padding: 0 10px;
  }

  .st-main-row {
    min-height: auto;
    flex-direction: column;
    align-items: center;
    gap: 18px;
  }

  .st-gauges-row {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }

  .st-big-gc.st-left,
  .st-big-gc.st-right {
    margin-left: 0;
    margin-right: 0;
    transform: none;
  }

  .st-big-gc canvas {
    width: 300px;
    height: 300px;
  }

  .st-big-val {
    margin-top: -20px;
  }

  .st-big-num {
    font-size: 44px;
  }

  .st-side {
    position: static;
    width: auto;
    transform: none !important;
  }

  .st-sm-gc {
    width: 132px;
    height: 132px;
    filter: none;
  }

  .st-sm-gc canvas {
    width: 132px;
    height: 132px;
  }

  .st-sm-gc .st-mini-scale span {
    font-size: 9px;
  }

 ..st-sm-val {
  position: absolute;
  left: 50%;
  bottom: 0px;
  transform: translateX(-50%);
  z-index: 20;
  text-align: center;
  min-width: 110px;
}

.st-sm-num {
  font-family: 'DM Mono', monospace;
  font-size: 52px !important;
  font-weight: 700;
  line-height: 1;
  color: #eef8ff;
  text-shadow:
    0 0 12px rgba(255,255,255,.10),
    0 0 20px rgba(120,200,255,.14);
}

.st-sm-lbl {
  position: absolute;
  top: 138px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
  font-size: 15px !important;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #8dbaff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
  text-shadow: 0 0 10px rgba(70,180,255,.10);
}
.st-sm-unit {
  font-size: 13px !important;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #75a7ef;
  margin-top: 4px;
}

.st-sm-lbl .st-gdot {
  width: 10px;
  height: 10px;
}
	
	
  .st-top-center,
  .test-counter-core {
    width: 150px;
    height: 150px;
  }

  .st-bot-center {
    margin-top: 6px !important;
  }
}

/* === FINÁLNÍ FIX MALÝCH BUDÍKŮ === */
.st-mini-scale,
.st-mini-ticks {
  display: none !important;
}

.st-sm-gc canvas {
  opacity: 0 !important;
}

.st-side {
  width: 220px !important;
}
.st-side-left {
  left: 110px !important;
  top: 432px !important;
  transform: none !important;
}

.st-side-right {
  right: 110px !important;
  top: 432px !important;
  transform: none !important;
}

.st-sm-gc {
  width: 186px !important;
  height: 186px !important;
}

.st-sm-gc::before {
  inset: 7px !important;
}

.st-sm-gc::after {
  inset: 34px !important;
}

.st-sm-val {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 50 !important;
  text-align: center !important;
}

.st-sm-num {
  font-family: 'DM Mono', monospace !important;
  font-size: 60px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #eef8ff !important;
  text-shadow: 0 0 12px rgba(255,255,255,.12), 0 0 20px rgba(120,200,255,.16) !important;
}

.st-sm-unit {
  font-size: 13px !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #75a7ef !important;
  margin-top: 4px !important;
}

.st-sm-lbl {
  position: absolute !important;
  top: 150px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 50 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #8dbaff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

.st-sm-lbl .st-gdot {
  width: 11px !important;
  height: 11px !important;
}

@media (max-width: 1280px) {
  .st-side-left {
    left: -4px !important;
    top: 448px !important;
    transform: none !important;
  }

  .st-side-right {
    right: -4px !important;
    top: 448px !important;
    transform: none !important;
  }

  .st-sm-gc {
    width: 170px !important;
    height: 170px !important;
  }

  .st-sm-num {
    font-size: 52px !important;
  }

  .st-sm-lbl {
    top: 138px !important;
    font-size: 13px !important;
  }
}
@media (max-width: 820px) {
  .st-app {
    zoom: 0.85; /* Toto zmenší obsah bez toho, aby to rozbilo scrollování */
  }
}
/* Definitivní likvidátor vnitřního scrollu */
.st-app, .site-main, main, #content {
    overflow: visible !important;
    height: auto !important;
}