
/* CSS Reset */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'BarlowCondensed', sans-serif;
    background-color: var(--background-color);
}

/* Regular */
@font-face {
    font-family: 'ShareTechMono';
    src: url('../fonts/ShareTechMono-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
/* Regular */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
/* Thin */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
/* Extra Light */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
/* Light */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
/* Medium */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
/* Semi Bold */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
/* Bold */
@font-face {
    font-family: 'BarlowCondensed';
    src: url('../fonts/BarlowCondensed-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

html {
    scrollbar-color: #CBD5E1 #F1F5F9;
}

button {
    border: 0;
    cursor: pointer;
}

:root {
    --competitor-table-font: 'JetBrains Mono', monospace;
    --laptime-font-main: 'Orbitron', sans-serif;
    --laptime-font-secondary: 'Rajdhani', sans-serif;

    /* Design System Office */
    --office-primary: #2563EB;
    --office-primary-hover: #1D4ED8;
    --office-primary-light: #EFF6FF;
    --office-surface: #FFFFFF;
    --office-surface-secondary: #F8FAFC;
    --office-border: #E2E8F0;
    --office-text: #0F172A;
    --office-text-secondary: #475569;
    --office-text-muted: #94A3B8;
    --office-success: #16A34A;
    --office-warning: #D97706;
    --office-danger: #DC2626;
    --office-shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
    --office-shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
    --office-radius: 8px;

    /* ========================================
     * SHARED PRIMITIVE TOKENS
     * Used by: Office, Tools, Partner
     * CRITICAL: Changes affect ALL web apps.
     * Office-specific tokens go in css/Office/office-tokens.css
     * ======================================== */

    /* Color Palette */
    --color-white: #FFFFFF;
    --color-black: #000000;
    --color-blue-50: #EFF6FF;
    --color-blue-600: #2563EB;
    --color-blue-700: #1D4ED8;
    --color-slate-50: #F8FAFC;
    --color-slate-200: #E2E8F0;
    --color-slate-400: #94A3B8;
    --color-slate-500: #64748B;
    --color-slate-600: #475569;
    --color-slate-900: #0F172A;
    --color-green-600: #16A34A;
    --color-amber-600: #D97706;
    --color-red-600: #DC2626;

    /* Spacing Scale */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-6: 1.5rem;
    --space-8: 2rem;

    /* Typography Scale */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;

    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);

    /* Border Radii */
    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;
    --radius-xl: 12px;

    /* Transition Durations */
    --duration-fast: 150ms;
    --duration-normal: 200ms;
    --duration-slow: 300ms;
}
