/* Material Symbols Styling */
.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-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: 'liga';
    vertical-align: middle;
}

/* Size variations to match FontAwesome */
.material-symbols-outlined.fa-2x,
.material-symbols-outlined.md-24 {
    font-size: 24px;
}

.material-symbols-outlined.fa-3x,
.material-symbols-outlined.md-36 {
    font-size: 36px;
}

.material-symbols-outlined.fa-4x,
.material-symbols-outlined.md-48 {
    font-size: 48px;
}

/* Small icons for inline use */
.material-symbols-outlined.md-18 {
    font-size: 18px;
}

/* Navigation icons */
.nav-link .material-symbols-outlined {
    font-size: 20px;
    margin-right: 8px;
    vertical-align: middle;
}

/* Button icons */
.btn .material-symbols-outlined {
    font-size: 20px;
    vertical-align: middle;
}

/* Sidebar icons */
.sidebar .material-symbols-outlined {
    font-size: 20px;
    margin-right: 8px;
}

/* Alert icons */
.alert .material-symbols-outlined {
    font-size: 20px;
    margin-right: 8px;
    vertical-align: middle;
}

/* Card icons */
.card-title .material-symbols-outlined,
.card-header .material-symbols-outlined {
    font-size: 24px;
    margin-right: 8px;
    vertical-align: middle;
}

/* Badge icons */
.badge .material-symbols-outlined {
    font-size: 16px;
    vertical-align: middle;
}

/* Spacing utilities to match FontAwesome me-2, ms-2 classes */
.material-symbols-outlined.me-1 {
    margin-right: 0.25rem;
}

.material-symbols-outlined.me-2 {
    margin-right: 0.5rem;
}

.material-symbols-outlined.me-3 {
    margin-right: 1rem;
}

.material-symbols-outlined.ms-1 {
    margin-left: 0.25rem;
}

.material-symbols-outlined.ms-2 {
    margin-left: 0.5rem;
}

.material-symbols-outlined.ms-3 {
    margin-left: 1rem;
}

/* Text color utilities */
.material-symbols-outlined.text-primary { color: var(--bs-primary); }
.material-symbols-outlined.text-secondary { color: var(--bs-secondary); }
.material-symbols-outlined.text-success { color: var(--bs-success); }
.material-symbols-outlined.text-danger { color: var(--bs-danger); }
.material-symbols-outlined.text-warning { color: var(--bs-warning); }
.material-symbols-outlined.text-info { color: var(--bs-info); }
.material-symbols-outlined.text-muted { color: var(--bs-secondary); }

/* Icon animations */
@keyframes rotate {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.material-symbols-outlined.fa-spin,
.material-symbols-outlined.rotate {
    animation: rotate 2s linear infinite;
}
