/* ========================================
   SVG ICONS STYLES - LinumSerenum
   Замена Font Awesome на легкие SVG иконки
   ======================================== */

/* Базовый класс для SVG иконок */
.icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    fill: currentColor;
    vertical-align: middle;
    transition: all 0.3s ease;
}

/* Размеры иконок */
.icon-sm {
    width: 0.875rem;
    height: 0.875rem;
}

.icon-md {
    width: 1.125rem;
    height: 1.125rem;
}

.icon-lg {
    width: 1.5rem;
    height: 1.5rem;
}

.icon-xl {
    width: 2rem;
    height: 2rem;
}

.icon-2x {
    width: 2em;
    height: 2em;
}

.icon-3x {
    width: 3em;
    height: 3em;
}

/* Специальные размеры для конкретных случаев */
.icon-fs-3 {
    width: 1.75rem;
    height: 1.75rem;
}

/* Отступы для иконок рядом с текстом */
.icon + * {
    margin-left: 0.5rem;
}

* + .icon {
    margin-left: 0.5rem;
}

/* Убираем отступы для иконок в overlay */
.category-overlay .icon,
.category-overlay .icon + * {
    margin: 0;
}

/* Адаптация под конкретные контексты */
.alert .icon {
    margin-right: 0.5rem;
}

/* Hover эффекты */
.icon:hover {
    transform: scale(1.1);
}

/* Анимации */
.icon-spin {
    animation: icon-spin 2s infinite linear;
}

@keyframes icon-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Конкретные стили для категорий */
.category-overlay .icon {
    width: 1.75rem;
    height: 1.75rem;
    transition: transform 0.3s ease;
}

.category-card:hover .category-overlay .icon {
    transform: scale(1) translateX(4px);
}

.category-image-placeholder .icon {
    width: 3rem;
    height: 3rem;
    transition: all 0.3s ease;
}

.category-card:hover .category-image-placeholder .icon {
    transform: scale(1.1);
}

/* Стили для сертификатов */
.certificates-page .icon {
    vertical-align: middle;
}

.certificates-page .alert .icon {
    color: var(--border-heading-color);
    width: 1.25rem;
    height: 1.25rem;
}

.certificates-page .mb-3 .icon {
    width: 3rem;
    height: 3rem;
}

/* Стили для форм */
.review-form-note .icon {
    color: var(--primary-peach);
    margin-right: 0.5rem;
}