@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css");
@import url("https://fonts.googleapis.com/css2?family=MedievalSharp&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Vujahday+Script&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");

@font-face {
    font-family: "OpenDyslexic";
    src: url("../assets/fonts/OpenDyslexic-Regular.woff2") format("woff2"), url("../assets/fonts/OpenDyslexic-Regular.woff") format("woff"), url("../assets/fonts/OpenDyslexic-Regular.otf") format("opentype"), url("../assets/fonts/OpenDyslexic-Regular.eot");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

:root {
    --color-bg: #000000;
    --color-text: #ffffff;
    --color-primary: #ffffff;
    --color-border: #ffffff;
    --a11y-font-scale: 1;
}

html {
    scrollbar-gutter: stable;
    background: var(--color-bg);
    color: var(--color-text) !important;
    overflow-x: hidden;
    font-size: calc(16px * var(--a11y-font-scale));
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

body, button, input, select, textarea {
    font: inherit;
}

html.theme-light {
    --color-bg: #ffffff;
    --color-text: var(--color-text);
    --color-primary: #4f46e5;
    --color-border: rgba(0, 0, 0, 0.2);
}

html.theme-dark {
    --color-bg: #160029;
    --color-text: var(--color-text);
    --color-primary: #A155E3;
    --color-border: #1600294C;
}

html.a11y-underline-links a,
html.a11y-underline-links a:visited {
    text-decoration: underline !important;
}

html.a11y-readable-font {
    font-family: "OpenDyslexic", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

html.a11y-grayscale #mainContent {
    filter: grayscale(1);
}

html.a11y-contrast-high #mainContent {
    filter: contrast(1.5) saturate(1.2);
}

html.a11y-contrast-negative #mainContent {
    filter: invert(1) hue-rotate(180deg);
}

#loadingScreen {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    inset: 0;
    z-index: 2000;
    background: var(--color-bg);
    color: var(--color-text);
    font-size: 1.5rem;
    font-family: "Plus Jakarta Sans", sans-serif;
    opacity: 0;
    transition: opacity 400ms ease;
}

#loadingScreen.visible {
    opacity: 1;
}

#loadingScreen .loadingContent {
    max-width: min(90vw, 900px);
    padding: 2rem;
    text-align: center;
}

#loadingScreen #loadingMessage {
    font-size: clamp(28px, 6vw, 64px);
    line-height: 1.2;
    margin: 0;
}

/*# sourceMappingURL=loadingScreen.css.map */
