@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Roboto&display=swap");



:root {
            --bs-primary: #4b0082; /* Indigo */
            --bs-primary-rgb: 75, 0, 130;
            --bs-primary-text: #fff;
            --bs-primary-hover: #37006a; /* Darker indigo for hover */
            --bs-primary-active: #2a0050; /* Even darker for active */
        }

        /* Buttons */
        .btn-primary {
            background-color: var(--bs-primary) !important;
            border-color: var(--bs-primary) !important;
            color: var(--bs-primary-text) !important;
            transition: background-color 0.3s ease;
        }
        .btn-primary:hover,
        .btn-primary:focus {
            background-color: var(--bs-primary-hover) !important;
            border-color: var(--bs-primary-hover) !important;
            color: var(--bs-primary-text) !important;
        }
        .btn-primary:active,
        .btn-primary.active,
        .show > .btn-primary.dropdown-toggle {
            background-color: var(--bs-primary-active) !important;
            border-color: var(--bs-primary-active) !important;
            color: var(--bs-primary-text) !important;
        }

        /* Navbar links */
        .navbar-dark .navbar-nav .nav-link {
            color: var(--bs-primary-text) !important;
            transition: color 0.3s ease;
        }
        .navbar-dark .navbar-nav .nav-link:hover,
        .navbar-dark .navbar-nav .nav-link:focus {
            color: var(--bs-primary-hover) !important;
        }
        .navbar-dark .navbar-nav .nav-link.active {
            color: var(--bs-primary) !important;
        }

        /* Feature icons with bg-primary */
        .feature-icon.bg-primary {
            background-color: var(--bs-primary) !important;
            background-image: linear-gradient(45deg, #4b0082, #7b3fbf);
            transition: background-color 0.3s ease;
        }
        .feature-icon.bg-primary:hover {
            background-color: var(--bs-primary-hover) !important;
        }

        /* Text primary */
        .text-primary {
            color: var(--bs-primary) !important;
        }

        /* Optional: add hover effect on links with text-primary */
        .text-primary:hover,
        .text-primary:focus {
            color: var(--bs-primary-hover) !important;
        }

        body {
            background-color: #090909; /* темный фон */
            color: #f8f9fa; /* светлый текст */
            min-height: 100vh;
            font-family: 'Roboto', sans-serif;
        }
        h1, h2, h3, h4, h5, h6 {
            font-family: 'Montserrat', sans-serif;
        }


        .alert-error {
  background-color: #ff4c4c;
  color: #fff;
  padding: 10px;
  border-radius: 5px;
  margin-bottom: 15px;
  text-align: center;
}

.alert-success {
  background-color: #00ff90;
  color: #000;
  padding: 10px;
  border-radius: 5px;
  margin-bottom: 15px;
  text-align: center;
}

/* Card styling */
.form-card {
  background-color: #121212; /* dark grey */
  border-radius: 0.5rem;
  box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,0.5);
  padding: 2rem;
  color: #f8f9fa;
}

/* Body style for login/register pages */
body.d-flex {
  min-height: 100vh;
  background-color: #090909;
}

/* Bootstrap form-control overrides for dark theme */
.form-control.bg-transparent {
  background-color: transparent !important;
  border-color: #0d6efd !important; /* bootstrap primary color */
  color: #0d6efd !important;
}

/* Text color for invalid-feedback inside forms */
.invalid-feedback.text-primary {
  color: #0d6efd !important;
}

/* Navbar styles */
.navbar-nav {
  margin: 0 auto;
}

.nav-link {
  font-size: 1.1rem;
  font-weight: 500;
}

/* Hero Section */
.hero-section {
  height: 100vh;
  display: flex;
  align-items: center;
}

.hero-text {
  max-width: 600px;
}

/* Custom button min widths */
.btn-custom {
  min-width: 150px;
}

.nav-button {
  min-width: 80px;
  font-size: 1.1rem;
  font-weight: 500;
}

/* Hero image style */
.hero-image {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  margin-left: 30px;
}

/* Features Section */
.features-section {
  background-color: #121212;
}

/* Feature icon styles */
.feature-icon {
  width: 4rem;
  height: 4rem;
  margin-bottom: 1rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}

/* Feature icon color and gradient */
.feature-icon.bg-primary {
  background-color: #0d6efd;
  background-image: linear-gradient(45deg, #0d6efd, #6610f2);
  color: white;
}

/* Footer styling */
footer.text-light.text-center.py-3.mt-auto p {
  margin-bottom: 0;
}
