/* Google Material Symbols font */
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* VIcon base styles for custom SVG icons */
.v-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.v-icon svg {
    width: 100%;
    height: 100%;
}

/* VIcon SVG size classes */
.v-icon-sm {
    width: 16px;
    height: 16px;
}

.v-icon-md {
    width: 24px;
    height: 24px;
}

.v-icon-lg {
    width: 32px;
    height: 32px;
}

/* VIcon Material Symbols size classes */
.v-icon-material-sm {
    font-size: 16px !important;
}

.v-icon-material-md {
    font-size: 24px !important;
}

.v-icon-material-lg {
    font-size: 32px !important;
}

/* Universal VColor classes (can be reused by any component) */
.v-color-primary {
    color: var(--v-primary);
}

.v-color-primary-lighter {
    color: var(--v-text-primary-lighter);
}

.v-color-secondary {
    color: var(--v-text-secondary);
}

.v-color-success {
    color: var(--v-success);
}

.v-color-error {
    color: var(--v-error);
}

.v-color-warning {
    color: var(--v-warning);
}

.v-color-info {
    color: var(--v-info);
}

.v-color-muted {
    color: var(--v-text-muted);
}
