/* Age restriction modal */

.nc-age-overlay {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at top, rgba(21, 17, 15, 0.94), rgba(10, 7, 5, 0.98));
  color: var(--color-text);
}

.nc-age-modal {
  width: 100%;
  max-width: 480px;
  padding: var(--space-32) var(--space-24);
  border-radius: var(--radius-xl);
  background: linear-gradient(145deg, #fdfbf7, #f7f3eb);
  box-shadow: var(--shadow-soft-lg);
  border: 1px solid rgba(182, 138, 58, 0.25);
}

.nc-age-header h2 {
  font-family: var(--font-serif-display);
  font-size: 1.6rem;
  margin-bottom: var(--space-8);
}

.nc-age-eyebrow {
  font-family: var(--font-sans);
  font-size: 0.75rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.nc-age-body p {
  font-family: var(--font-sans);
  font-size: 0.9rem;
  color: var(--color-text);
}

.nc-age-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-12);
  justify-content: flex-end;
  margin-top: var(--space-24);
}

.nc-age-actions .btn {
  font-size: 0.8rem;
}

.nc-age-no {
  order: 1;
}

.nc-age-yes {
  order: 2;
}

@media (max-width: 480px) {
  .nc-age-modal {
    margin: 0 var(--space-16);
    padding: var(--space-24) var(--space-20);
  }

  .nc-age-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .nc-age-no,
  .nc-age-yes {
    width: 100%;
  }
}

.nc-age-overlay--hidden {
  display: none !important;
}

body.nc-age-locked {
  overflow: hidden;
}
