/* Base — Shared styles
   Loaded by ALL pages (landing + dashboard).
   Contains only truly global rules. */

body {
  background: var(--bg-gradient);
  overflow-x: hidden;
  min-height: -webkit-fill-available;
  padding-top: var(--safe-area-inset-top);
  padding-bottom: var(--safe-area-inset-bottom);
  padding-inline-start: var(--safe-area-inset-left);
  padding-inline-end: var(--safe-area-inset-right);
}


.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--space-5);
  padding-inline-start: max(20px, var(--safe-area-inset-left));
  padding-inline-end: max(20px, var(--safe-area-inset-right));
}

/* Button base styles — canonical source: css/components/buttons.css */

/* Enhanced Focus States for Accessibility */
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--primary-color);
  outline-offset: 2px;
  box-shadow: var(--primary-focus-ring);
}

/* Enhanced Animation Keyframes */
@keyframes slideInFromTop {
  from {
    opacity: 0;
    transform: translateY(-30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes expandWidth {
  from {
    transform: scaleX(0);
  }

  to {
    transform: scaleX(1);
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

/* prefers-reduced-motion is handled globally in css/reset.css */

/* Enhanced High contrast mode support */
@media (prefers-contrast: high) {
  :root {
    --primary-color: #d32f2f;
    --text-color: #000;
  }
}
