/* ═══════════════════════════════════════════════════════════════
   RESET & BASE
   ═══════════════════════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  background: #0a1428;
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
  overflow: hidden;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  color: #fff;
}

/* ═══════════════════════════════════════════════════════════════
   SCREENS
   ═══════════════════════════════════════════════════════════════ */
.screen {
  position: fixed;
  inset: 0;
  display: none;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  background: #0a1428;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.screen.active {
  display: flex;
  opacity: 1;
  z-index: 10;
}

.screen.leaving {
  display: flex;
  opacity: 0;
  z-index: 5;
}

/* ═══════════════════════════════════════════════════════════════
   TYPOGRAPHY
   ═══════════════════════════════════════════════════════════════ */
.headline {
  font-size: clamp(36px, 8vw, 64px);
  font-weight: 900;
  font-style: italic;
  text-transform: uppercase;
  line-height: 1.05;
  text-align: center;
  letter-spacing: -1px;
  padding: 0 20px;
}

.headline .green {
  color: #00e5a0;
}

.headline .white {
  color: #fff;
}

.subtitle {
  font-size: clamp(14px, 3.5vw, 18px);
  color: rgba(255,255,255,0.8);
  text-align: center;
  line-height: 1.6;
  max-width: 520px;
  padding: 0 24px;
  margin-top: 16px;
}

.subtitle em {
  color: #00e5a0;
  font-style: italic;
}

/* ═══════════════════════════════════════════════════════════════
   RESET FLASH
   ═══════════════════════════════════════════════════════════════ */
#reset-flash {
  position: fixed;
  inset: 0;
  background: #fff;
  z-index: 900;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
}
