/*
 * Nexture Icons - CSS библиотека иконок
 * Конвертировано из React/TypeScript шаблона
 */

/* Базовый класс для иконок */
.ni {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    stroke: currentColor;
    line-height: 1;
}

/* Размеры иконок */
.ni-xs {
    width: 12px;
    height: 12px;
    stroke-width: 1.5;
}

.ni-sm {
    width: 16px;
    height: 16px;
    stroke-width: 1.5;
}

.ni-md,
.ni {
    width: 20px;
    height: 20px;
    stroke-width: 1.5;
}

.ni-lg {
    width: 24px;
    height: 24px;
    stroke-width: 1.5;
}

.ni-xl {
    width: 28px;
    height: 28px;
    stroke-width: 1.25;
}

.ni-2xl {
    width: 32px;
    height: 32px;
    stroke-width: 1.25;
}

/* Варианты иконок */
.ni-outlined {
    fill: none;
}

.ni-filled {
    fill: currentColor;
    stroke: none;
}

/* One-tone вариант - все элементы одинаковой прозрачности */
.ni-onetone path[opacity] {
    opacity: 1 !important;
}

/* SVG настройки */
.ni svg {
    display: block;
    width: 100%;
    height: 100%;
}

/* Адаптация для различных контекстов */
.btn .ni,
.nav-link .ni,
.dropdown-item .ni {
    margin-right: 0.5rem;
}

/* Анимация вращения для иконок загрузки */
@keyframes ni-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.ni-spin {
    animation: ni-spin 1s linear infinite;
}

/* Пульсация */
@keyframes ni-pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.ni-pulse {
    animation: ni-pulse 2s ease-in-out infinite;
}
