*,
::before,
::after {
    box-sizing: border-box;
}

/* any scrollable element should inherit these scrollbar settings */
*[scrollable] {
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
}

/* style used to facilitate unit conversions */
#dpi {
    height: 1in;
    width: 1in;
    position: absolute;
    left: -100%;
    top: -100%;
}

/* style to render things off-screen */
.invis {
    position: absolute;
    left: -100%;
    top: -100%;
    display: none;
    z-index: -99999;
}

.xSep {
    background-color: var(--border-strong);
    height: 1px;
    width: 100%;
}

.xHide {
    display: none;
    visibility: hidden;
}

/* template generic styles */
span.fw120 {
    display: inline-block;
    width: 120px;
}

span.fw180 {
    display: inline-block;
    width: 180px;
}

span.fw350 {
    display: inline-block;
    width: 350px;
}

/* Remove browser margin from dialogs */
body[onload="loadWindow();"] {
    margin: 0;
    width: 100%;
    height: 100%;
}

[hidden] {
    display: none;
}

blockquote {
    margin: 0;
}

.dis {
    filter: opacity(40%);
}