/* Scrollbar */
html, body {
    height: 100%;
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    background-color: var(--wi-background-color);
    font-family: var(--wi-font-family);
    color: var(--wi-font-color);
}

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

::-webkit-scrollbar {
    width: var(--wi-scrollbar-width);
    height: var(--wi-scrollbar-height);
}

::-webkit-scrollbar-thumb {
    background-color: var(--wi-scrollbar-background-color);
    border-radius: var(--wi-scrollbar-border-radius);
}

::-webkit-scrollbar-track {
    background-color: var(--wi-scrollbar-track-background-color);
}

::-webkit-scrollbar-corner {
    background-color: var(--wi-scrollbar-track-background-color); 
}

/* Global Tooltip Styles
   Themeable via --wi-tooltip-* (theme files, or per tooltip through WiTooltipContent's Class); every fallback is the
   look the tooltip had before the variables existed. */
.wicam-tooltip-text {
    width: max-content;
    max-width: var(--wi-tooltip-max-width, 250px);
    background-color: var(--wi-tooltip-background-color, var(--wi-background-color));
    color: var(--wi-tooltip-font-color, var(--wi-font-color));
    text-align: var(--wi-tooltip-text-align, center);
    padding: var(--wi-tooltip-padding, 6px 12px);
    border-radius: var(--wi-tooltip-border-radius, 6px);
    border: 1px solid var(--wi-tooltip-border-color, var(--wi-border-color));
    position: relative;
    font-size: var(--wi-tooltip-font-size, 14px);
    box-shadow: var(--wi-tooltip-shadow, 0 4px 16px rgba(0,0,0,0.2));
    /* A rich tooltip is rendered where its WiTooltipContent sits and inherits from there - a dropdown's nowrap made
       its text run out of the box sideways. The plain tooltip lives in <body> and never noticed. */
    white-space: normal;
}

/* Arrow pointer above the target (Tooltip is ABOVE target, arrow points DOWN) */
.wicam-tooltip:not(.tooltip-bottom) .wicam-tooltip-text::after,
.wicam-tooltip:not(.tooltip-bottom) .wicam-tooltip-text::before {
    content: "";
    position: absolute;
    top: 100%;
    left: var(--wi-tooltip-arrow-left, 50%);
    margin-left: -6px;
    border-width: 6px;
    border-style: solid;
}

.wicam-tooltip:not(.tooltip-bottom) .wicam-tooltip-text::after {
    border-color: var(--wi-tooltip-background-color, var(--wi-background-color)) transparent transparent transparent;
    margin-top: -1px; /* Overlap border */
    z-index: 2;
}

.wicam-tooltip:not(.tooltip-bottom) .wicam-tooltip-text::before {
    border-color: var(--wi-tooltip-border-color, var(--wi-border-color)) transparent transparent transparent;
    z-index: 1;
}

/* Arrow pointer below the target (Tooltip is BELOW target, arrow points UP) */
.wicam-tooltip.tooltip-bottom .wicam-tooltip-text::after,
.wicam-tooltip.tooltip-bottom .wicam-tooltip-text::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: var(--wi-tooltip-arrow-left, 50%);
    margin-left: -6px;
    border-width: 6px;
    border-style: solid;
}

.wicam-tooltip.tooltip-bottom .wicam-tooltip-text::after {
    border-color: transparent transparent var(--wi-tooltip-background-color, var(--wi-background-color)) transparent;
    margin-bottom: -1px;
    z-index: 2;
}

.wicam-tooltip.tooltip-bottom .wicam-tooltip-text::before {
    border-color: transparent transparent var(--wi-tooltip-border-color, var(--wi-border-color)) transparent;
    z-index: 1;
}