/* Reset and Base Styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Inter', sans-serif;
  background: linear-gradient(180deg, #C0C5F8 15.38%, #FFFFFF 100%);
  min-height: 100vh;
  overflow-x: hidden;
  position: relative;
}

.main-container {
  width: 100%;
  min-height: 100vh;
  position: relative;
}

/* Typography */
h1, h2, h3 {
  font-family: 'Kaisei Tokumin', serif;
}

/* Utility Classes */
.gradient-text {
  background: linear-gradient(135deg, #A25AFF 0%, #666666 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Animations */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
}

@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}

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

/* Responsive Design */
@media (max-width: 768px) {
  .main-container {
    padding: 0 20px;
  }
}

@media (max-width: 480px) {
  .main-container {
    padding: 0 15px;
  }
}
