/* Age restriction modal styles */

.age-modal {
  position: fixed;
  inset: 0;
  z-index: var(--z-modal);
  display: none;
  align-items: center;
  justify-content: center;
}

.age-modal--visible {
  display: flex;
}

.age-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 12, 18, 0.72);
  backdrop-filter: blur(10px);
}

.age-modal__content {
  position: relative;
  max-width: 480px;
  margin: 0 var(--space-4);
  border-radius: var(--radius-xl);
  background: radial-gradient(circle at top left, rgba(203, 163, 108, 0.24), rgba(25, 27, 35, 0.98));
  color: #f8f1e6;
  box-shadow: var(--shadow-elevated);
  padding: var(--space-6) var(--space-6) var(--space-5);
}

.age-modal__title {
  font-size: 1.3rem;
  margin-bottom: var(--space-3);
  color: #fff;
}

.age-modal__body p {
  font-size: 0.95rem;
  color: #f0e5d4;
}

.age-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-5);
}

.age-btn {
  border-radius: var(--radius-pill);
  padding: 0.65rem 1.4rem;
  font-size: 0.9rem;
  border: 1px solid transparent;
  cursor: pointer;
  white-space: nowrap;
}

.age-btn--primary {
  background: linear-gradient(135deg, #d8b481, #cba36c);
  color: #1f222b;
  border-color: rgba(203, 163, 108, 0.9);
}

.age-btn--primary:hover {
  background: linear-gradient(135deg, #e0bf90, #d2ae78);
}

.age-btn--secondary {
  background: transparent;
  color: #f8f1e6;
  border-color: rgba(245, 239, 231, 0.65);
}

.age-btn--secondary:hover {
  background: rgba(245, 239, 231, 0.08);
}

@media (max-width: 600px) {
  .age-modal__content {
    padding: var(--space-5) var(--space-4) var(--space-4);
  }

  .age-modal__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .age-btn {
    width: 100%;
    text-align: center;
  }
}

body.age-locked {
  overflow: hidden;
}
