/* Only the Brainstorming and Wiki-Juris waiting screen. */
.connection-dialog {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: #fff;
  color: #173a55;
  overflow: auto;
}
.connection-dialog[open] { display: flex; flex-direction: column; }
.connection-dialog::backdrop { background: #fff; backdrop-filter: none; }
.connection-dialog .waiting-header { flex: 0 0 auto; width: min(1120px, 100%); margin: 0 auto; padding: 28px 32px; text-align: left; }
.connection-dialog .waiting-brand { display: inline-flex; align-items: center; gap: 12px; color: inherit; text-decoration: none; font-weight: 700; font-size: 1.2rem; }
.connection-dialog .waiting-brand img { display: block; object-fit: contain; }
.connection-dialog .waiting-body { flex: 1 0 auto; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 32px 24px 72px; text-align: center; }
.connection-dialog .waiting-icon { display: block; width: 176px; height: 176px; object-fit: contain; }
.connection-dialog #connection-title { margin: 26px 0 14px; color: #08183f; font-size: clamp(2.6rem, 7vw, 4rem); line-height: 1.08; letter-spacing: -.035em; }
.connection-dialog #waiting-description { max-width: 640px; margin: 0; font-size: clamp(1.25rem, 3vw, 1.75rem); line-height: 1.4; letter-spacing: -.025em; }
.connection-dialog #waiting-status { margin: 30px 0; padding: 10px 18px; border-radius: 24px; background: #edf4fa; font-size: .95rem; line-height: 1.5; }
.connection-dialog form { margin: 0; }
.connection-dialog .waiting-home-link { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 12px 22px; border: 0; border-radius: 24px; background: #173a55; color: #fff; font-size: .95rem; font-weight: 600; line-height: 1.5; text-decoration: none; cursor: pointer; }
.connection-dialog .waiting-home-link:hover { background: #08183f; }
.connection-dialog .waiting-footer { flex: 0 0 auto; padding: 22px 24px; border-top: 1px solid #e0edf7; text-align: center; font-size: .85rem; line-height: 1.6; }
@media (max-width: 480px) {
  .connection-dialog .waiting-header { padding: 20px 24px; }
  .connection-dialog .waiting-body { padding: 32px 20px 48px; }
  .connection-dialog .waiting-icon { width: 148px; height: 148px; }
  .connection-dialog .waiting-home-link { font-size: .875rem; }
}
