/* Banncoin i18n Mobile Fixes - Typography + mobile resilience */
html { -webkit-text-size-adjust: 100%; }
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }

/* Prevent overflow on hashes/addresses/long strings */
.wrap, .hash, code, pre, .address, .mono, .kbd, .badge, .table {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Hero clamp = no giant text pushing content down */
.hero h1 {
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  line-height: 1.15;
  letter-spacing: -0.01em;
  margin: 0.25em 0 0.4em;
}
.hero p {
  font-size: clamp(1rem, 2.5vw, 1.125rem);
  max-width: 68ch;
  margin: 0;
}

/* Spacing that scales */
.section { padding: clamp(16px, 3vw, 40px) 16px; }

/* Responsive stats/grid cards */
.stats {
  display: grid;
  grid-template-columns: repeat(12, minmax(0,1fr));
  gap: 12px;
}
.stats > .card { grid-column: span 12; }
@media (min-width: 640px){ .stats > .card { grid-column: span 6; } }
@media (min-width: 1024px){ .stats > .card { grid-column: span 3; } }

/* Language toggle */
.lang a, .lang button {
  font: inherit; border: 0; background: none; padding: 4px 6px; cursor: pointer;
}
.lang [aria-current="true"] { font-weight: 700; text-decoration: underline; }

/* Accordion for long JSON / logs */
.accordion { display: inline-flex; align-items: center; gap: 8px; }
.accordion[aria-expanded="true"]::after { content: "−"; }
.accordion[aria-expanded="false"]::after { content: "+"; }

/* Utility */
.hidden { display: none !important; }
.visually-hidden {
  position: absolute !important; height: 1px; width: 1px; overflow: hidden;
  clip: rect(1px,1px,1px,1px); white-space: nowrap; border: 0; padding: 0; margin: -1px;
}
