/**
 * OpenF1 — document-level width constraints for all modules.
 * Linked from every full-page template; keeps narrow viewports from horizontal “phantom” scroll.
 */

html {
    /* clip avoids the spec quirk where overflow-x:hidden + overflow-y:visible forces overflow-y:auto (double scrollbar with body). */
    overflow-x: clip;
    max-width: 100%;
}

/* Do not set body overflow-x here: it can reset overflow-y after module `overflow: hidden` shorthands. */
body {
    max-width: 100%;
}

/* Flex/grid shells: default min-width:auto lets children force page wider than the viewport */
.app-container,
main.main-content,
.content-wrapper,
main {
    min-width: 0;
}

/* LLM hub and similar single-column apps */
.hub-container {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.hub-container .d-flex > * {
    min-width: 0;
}

img,
video,
canvas,
svg {
    max-width: 100%;
    height: auto;
}

.container-fluid {
    max-width: 100%;
}
