/* Internal page overrides for cleaner mobile sign-in and dashboard layout. */
.brand-logo {
  display: block;
  height: 84px;
  width: auto;
}

.internal-header .nav {
  flex-wrap: wrap;
  row-gap: 8px;
}

.register-box {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}

.login-box h3 {
  margin: 0 0 4px;
  font-size: 1rem;
}

@media (max-width: 1024px) {
  .internal-layout {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 14px;
  }

  .sidebar,
  .dashboard {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .dash-grid {
    grid-template-columns: 1fr;
  }

  .internal-event {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .event-actions {
    width: 100%;
    display: grid;
    gap: 8px;
  }

  .event-actions form,
  .event-actions .btn,
  .event-actions .badge {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .site-header.internal-header {
    align-items: flex-start;
    gap: 10px;
    padding: 12px;
  }

  .brand-logo {
    height: 58px;
  }

  .internal-header .nav {
    width: 100%;
    justify-content: flex-start;
    gap: 10px 14px;
    font-size: 0.95rem;
  }

  .sidebar {
    padding: 16px;
    border-radius: 18px;
  }

  .sidebar h1 {
    font-size: 1.35rem;
    margin-bottom: 8px;
  }

  .login-box {
    gap: 10px;
  }

  .login-box input,
  .login-box button,
  .event-form input,
  .event-form select,
  .event-form button {
    width: 100%;
    min-height: 44px;
    font-size: 16px;
  }

  .dashboard {
    padding: 16px;
    border-radius: 18px;
  }

  .internal-section {
    overflow-x: hidden;
  }
}
