.admin-body {
  cursor: auto;
  min-height: 100vh;
}

.admin-body .cursor,
.admin-body .cursor-ring {
  display: block;
}

.admin-nav .nav-links a.active {
  color: var(--text);
}

.admin-hero {
  min-height: 42vh;
  padding: 8rem 1.2rem 3rem;
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(108,92,231,0.2);
}

.admin-hero-content {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.admin-title {
  font-family: 'Unbounded', sans-serif;
  font-size: clamp(32px, 7vw, 68px);
  line-height: 1.05;
  margin-bottom: 1rem;
}

.admin-sub {
  color: var(--text2);
  font-size: 14px;
  max-width: 560px;
  line-height: 1.8;
}

.admin-workspace {
  padding: 2rem 1rem 5rem;
  position: relative;
}

.admin-container {
  max-width: 1200px;
}

.admin-status {
  border: 1px solid rgba(108,92,231,0.35);
  background: rgba(108,92,231,0.08);
  color: var(--purple2);
  font-size: 12px;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
}

.admin-status.ok {
  border-color: rgba(0,206,201,0.45);
  background: rgba(0,206,201,0.1);
  color: var(--cyan);
}

.admin-status.error {
  border-color: rgba(253,121,168,0.45);
  background: rgba(253,121,168,0.14);
  color: #ff9ebf;
}

.admin-grid {
  display: grid;
  gap: 1rem;
}

.admin-hidden {
  display: none !important;
}

.admin-login-card {
  max-width: 560px;
}

.admin-delete-btn {
  font-size: 11px;
  padding: 0.4rem 0.6rem;
}

.participants-table td:last-child,
.participants-table th:last-child {
  width: 130px;
}

@media (max-width: 768px) {
  .admin-hero {
    padding-top: 6.5rem;
    min-height: 36vh;
  }

  .admin-title {
    font-size: clamp(28px, 9vw, 46px);
  }

  .admin-sub {
    font-size: 13px;
  }
}

@media (hover: none) {
  .admin-body .cursor,
  .admin-body .cursor-ring {
    display: none !important;
  }

  .admin-body {
    cursor: auto !important;
  }
}
