/* Mosvita Font Family - Optimized for Web */

/* Medium Weight - 500 */
@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-Medium.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Bold Weight - 700 */
@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-Bold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Extra Bold Weight - 800 */
@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Mosvita';
    src: url('/fonts/Mosvita-ExtraBold.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Root CSS Variables for Filament */
:root {
    --font-family-sans: 'Mosvita', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* Apply Mosvita as default font for all Filament panels */
.fi-body,
.filament-body,
body.filament-body,
body.fi-body,
html {
    font-family: 'Mosvita', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Ensure all Filament components use the custom font */
.fi-sidebar,
.fi-sidebar *,
.fi-topbar,
.fi-topbar *,
.fi-page,
.fi-page *,
.fi-modal,
.fi-modal *,
.fi-notification,
.fi-notification *,
.fi-form,
.fi-form *,
.fi-table,
.fi-table *,
.fi-stats-overview,
.fi-stats-overview *,
.fi-widget,
.fi-widget *,
.fi-section,
.fi-section *,
.fi-tabs,
.fi-tabs *,
.fi-breadcrumbs,
.fi-breadcrumbs *,
.fi-header,
.fi-header *,
.fi-footer,
.fi-footer *,
.fi-nav,
.fi-nav * {
    font-family: inherit !important;
}

/* Typography elements */
h1, h2, h3, h4, h5, h6,
.fi-header-heading,
.fi-section-header-heading,
.fi-modal-heading,
.fi-dialog-heading,
.fi-card-heading {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.025em;
}

/* Body text */
p, span, div, li, td, th,
.fi-text,
.fi-description,
.fi-help-text {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400;
}

/* Interactive elements */
a, button, 
.fi-btn,
.fi-link,
.fi-tabs-item,
.fi-breadcrumbs-item,
.fi-dropdown-item {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
}

/* Form inputs */
input, textarea, select,
.fi-input,
.fi-select,
.fi-textarea {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400;
}

/* Labels */
label,
.fi-label,
.fi-form-label {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
}

/* Badges and stats */
.fi-badge,
.fi-stats-overview-stat-value,
.fi-stats-value {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 700 !important;
}

/* Navigation items */
.fi-sidebar-item,
.fi-sidebar-item-label,
.fi-topbar-item,
.fi-navigation-item {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
}

/* Table headers */
.fi-table th,
.fi-table-header-cell {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 600 !important;
}

/* Notifications */
.fi-notification-title {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 600 !important;
}

.fi-notification-body {
    font-family: 'Mosvita', ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400 !important;
}

/* Code blocks */
code, pre, 
.fi-code,
.mono {
    font-family: 'SF Mono', Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace !important;
}

/* Specific weight adjustments */
strong, b,
.font-bold,
.fi-font-bold {
    font-weight: 700 !important;
}

.font-semibold,
.fi-font-semibold {
    font-weight: 600 !important;
}

.font-medium,
.fi-font-medium {
    font-weight: 500 !important;
}

.font-normal,
.fi-font-normal {
    font-weight: 400 !important;
}

/* Extra bold for special elements */
.font-extrabold,
.fi-font-extrabold {
    font-weight: 800 !important;
}

/* Black weight */
.font-black,
.fi-font-black {
    font-weight: 900 !important;
}