/**
 * sys.quebec - Fonts System
 * All fonts are self-hosted and licensed under OFL (Open Font License)
 * These fonts can be embedded in exports (SVG, HTML, PDF)
 */

/* ================================
   INTER - UI Default
   ================================ */
@font-face {
    font-family: 'Inter';
    src: url('/rsc/fonts/Inter/Inter-VariableFont_opsz,wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('/rsc/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   LATO - Friendly Sans
   ================================ */
@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Lato';
    src: url('/rsc/fonts/Lato/Lato-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   MONTSERRAT - Geometric Elegant
   ================================ */
@font-face {
    font-family: 'Montserrat';
    src: url('/rsc/fonts/Montserrat/Montserrat-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/rsc/fonts/Montserrat/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   NUNITO SANS - Rounded Friendly
   ================================ */
@font-face {
    font-family: 'Nunito Sans';
    src: url('/rsc/fonts/Nunito_Sans/NunitoSans-VariableFont_YTLC,opsz,wdth,wght.ttf') format('truetype');
    font-weight: 200 1000;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito Sans';
    src: url('/rsc/fonts/Nunito_Sans/NunitoSans-Italic-VariableFont_YTLC,opsz,wdth,wght.ttf') format('truetype');
    font-weight: 200 1000;
    font-style: italic;
    font-display: swap;
}

/* ================================
   OPEN SANS - Neutral Readable
   ================================ */
@font-face {
    font-family: 'Open Sans';
    src: url('/rsc/fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
    font-weight: 300 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('/rsc/fonts/Open_Sans/OpenSans-Italic-VariableFont_wdth,wght.ttf') format('truetype');
    font-weight: 300 800;
    font-style: italic;
    font-display: swap;
}

/* ================================
   RUBIK - Geometric Modern
   ================================ */
@font-face {
    font-family: 'Rubik';
    src: url('/rsc/fonts/Rubik/Rubik-VariableFont_wght.ttf') format('truetype');
    font-weight: 300 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Rubik';
    src: url('/rsc/fonts/Rubik/Rubik-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 300 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   SPACE GROTESK - Tech Modern
   ================================ */
@font-face {
    font-family: 'Space Grotesk';
    src: url('/rsc/fonts/Space_Grotesk/SpaceGrotesk-VariableFont_wght.ttf') format('truetype');
    font-weight: 300 700;
    font-style: normal;
    font-display: swap;
}

/* ================================
   PLAYFAIR DISPLAY - Elegant Serif
   ================================ */
@font-face {
    font-family: 'Playfair Display';
    src: url('/rsc/fonts/Playfair_Display/PlayfairDisplay-VariableFont_wght.ttf') format('truetype');
    font-weight: 400 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display';
    src: url('/rsc/fonts/Playfair_Display/PlayfairDisplay-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 400 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   PLAYFAIR DISPLAY SC - Small Caps
   ================================ */
@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Playfair Display SC';
    src: url('/rsc/fonts/Playfair_Display_SC/PlayfairDisplaySC-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

/* ================================
   ZILLA SLAB - Modern Slab Serif
   ================================ */
@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Zilla Slab';
    src: url('/rsc/fonts/Zilla_Slab/ZillaSlab-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

/* ================================
   DANCING SCRIPT - Handwritten
   ================================ */
@font-face {
    font-family: 'Dancing Script';
    src: url('/rsc/fonts/Dancing_Script/DancingScript-VariableFont_wght.ttf') format('truetype');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
}

/* ================================
   DM MONO - Clean Monospace
   ================================ */
@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'DM Mono';
    src: url('/rsc/fonts/DM_Mono/DMMono-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* ================================
   CSS VARIABLES FOR FONTS
   ================================ */
:root {
    /* Primary UI Font */
    --font-ui: 'Inter', sans-serif;
    
    /* Document Fonts */
    --font-sans: 'Inter', sans-serif;
    --font-serif: 'Playfair Display', serif;
    --font-mono: 'DM Mono', monospace;
    --font-display: 'Montserrat', sans-serif;
    --font-handwritten: 'Dancing Script', cursive;
    
    /* Font Stack Fallbacks */
    --font-stack-sans: 'Inter', 'Open Sans', 'Lato', sans-serif;
    --font-stack-serif: 'Playfair Display', 'Zilla Slab', serif;
    --font-stack-mono: 'DM Mono', monospace;
}

