/* Tourneys module shell (#163) — island styles ship with js/bundles/tourneys.js (+ tourneys-app.css).
   Spec: docs/TOURNEYS.md · list-only React island; bridge mounts #tourneys-root. */

#view-tourneys {
  min-height: 0;
  flex: 1;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#tourneys-root {
  min-height: 100%;
}

#tourneys-root:empty::before {
  content: 'Loading Tourneys…';
  display: block;
  padding: 32px 20px;
  color: var(--ps, #64748b);
  font-family: Outfit, system-ui, sans-serif;
  font-weight: 600;
}

.tourneys-bridge-err {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: min(52vh, 420px);
  padding: 28px 20px calc(28px + var(--bottom-nav-h, 0px) + env(safe-area-inset-bottom, 0px));
  font-family: Outfit, system-ui, sans-serif;
  background:
    radial-gradient(90% 70% at 10% 0%, rgba(37, 99, 235, 0.08), transparent 55%),
    radial-gradient(80% 60% at 100% 20%, rgba(15, 118, 110, 0.12), transparent 50%);
}

.tourneys-bridge-err-card {
  width: min(100%, 420px);
  padding: 28px 24px 30px;
  border-radius: 20px;
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92));
  border: 1px solid rgba(30, 58, 138, 0.1);
  box-shadow: 0 16px 48px rgba(30, 58, 138, 0.1);
  text-align: left;
}

.tourneys-bridge-err-eyebrow {
  margin: 0 0 8px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #0f766e;
}

.tourneys-bridge-err-title {
  margin: 0 0 10px;
  font-size: 1.45rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: #0f172a;
}

.tourneys-bridge-err-lead {
  margin: 0;
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.55;
  color: #64748b;
}
