body {
  min-width: 375px;
}

body {
    font-family: 'Inter', sans-serif;
}
.form-container {
    max-width: 600px;
}
.bg-pattern {
    background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12);
}
.t-center
{
    text-align: center;
}

/* New CSS rule to make selected radio buttons visible */
input[type="radio"]:checked + div {
    background-color: #4f46e5;
    color: white;
    border-color: #4f46e5;
    transition: background-color 0.2s, border-color 0.2s;
}
input[type="radio"]:checked + div span {
    color: white;
}

/*#region Footer elements*/
.footer {
    display: flex;
    flex-wrap: wrap;          /* адаптивность */
    justify-content: space-between;
    align-items: center;
    padding: 1rem 2rem;
    font-size: 0.875rem;
    background-color: #1f2937; /* bg-gray-800 */
    color: white;
    margin-top: auto;
}

.footer-left {
    flex: 1 1 200px;
    margin: 0;
}

.footer-right {
    flex: 1 1 200px;
    display: flex;
    justify-content: flex-end;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 1rem;
}

.footer-right a {
    color: white;
    text-decoration: none;
}

.footer-right a:hover {
    color: #ddd;
    text-decoration: none;
}

@media (max-width: 768px) {
    .footer {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .footer-left,
    .footer-right {
        flex: none;
        margin: 0.5rem 0;
    }
    .footer-right {
        justify-content: center;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
}

/*#endregion*/

/*#region Toast*/
.toast-buttons {
    max-width: 700px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    margin: 2em auto;
}

.toast-row {
    display: flex;
    justify-content: center;
    margin: 1em 0;
    padding: 1rem;
    flex-wrap: wrap;
}

button.custom-toast {
    padding: 0.5rem 1rem;
    border: none;
    color: #fff;
    font-weight: 500;
    border-radius: 5px;
    box-shadow: 2px 2px 10px
        rgba(0, 0, 0, 0.785);
    cursor: pointer;
    width: 150px;
    margin: 0.5em;
    transition: filter 0.2s ease-in-out,
        transform 0.3s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1rem;
    background-color: transparent;
    outline: none;
    background: #3498db;
    color: #fff;
}

button.custom-toast:hover {
    filter: brightness(0.9);
}

button.success-toast {
    background-color: #2ecc71;
}

button.danger-toast {
    background-color: #e74c3c;
}

button.info-toast {
    background-color: #3498db;
}

button.warning-toast {
    background-color: #f1c40f;
}

.toast {
    position: fixed;
    top: 25px;
    right: 25px;
    max-width: 300px;
    background: #fff;
    padding: 0.5rem;
    border-radius: 4px;
    box-shadow: -1px 1px 10px
        rgba(0, 0, 0, 0.3);
    z-index: 1023;
    animation: slideInRight 0.3s
            ease-in-out forwards,
        fadeOut 0.5s ease-in-out
            forwards 3s;
    transform: translateX(110%);
}

.toast.closing {
    animation: slideOutRight 0.5s
        ease-in-out forwards;
}

.toast-progress {
    position: absolute;
    display: block;
    bottom: 0;
    left: 0;
    height: 4px;
    width: 100%;
    background: #b7b7b7;
    animation: toastProgress 3s
        ease-in-out forwards;
}

.toast-content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.toast-icon {
    padding: 0.35rem 0.5rem;
    font-size: 1.5rem;
}

.toast-message {
    flex: 1;
    font-size: 0.9rem;
    color: #000000;
    padding: 0.5rem;
}

.toast.toast-success {
    background: #95eab8;
}

.toast.toast-success .toast-progress {
    background-color: #2ecc71;
}

.toast.toast-danger {
    background: #efaca5;
}

.toast.toast-danger .toast-progress {
    background-color: #e74c3c;
}

.toast.toast-info {
    background: #bddaed;
}

.toast.toast-info .toast-progress {
    background-color: #3498db;
}

.toast.toast-warning {
    background: #ead994;
}

.toast.toast-warning .toast-progress {
    background-color: #f1c40f;
}

@keyframes slideInRight {
    0% {
        transform: translateX(110%);
    }

    75% {
        transform: translateX(-10%);
    }

    100% {
        transform: translateX(0%);
    }
}

@keyframes slideOutRight {
    0% {
        transform: translateX(0%);
    }

    25% {
        transform: translateX(-10%);
    }

    100% {
        transform: translateX(110%);
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes toastProgress {
    0% {
        width: 100%;
    }

    100% {
        width: 0%;
    }
}


@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  src: url(../kJEhBvYX7BgnkSrUwT8OhrdQw4oELdPIeeII9v6oFsI.woff2) format('woff2');
}

.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
/*#endregion*/