@font-face
{
	font-family: 'Zurich';
    src: url('../Fonts/zurich_bt.ttf');
}

@font-face
{
	font-family: 'Zurich Light Condensed';
    src: url('../Fonts/zurich_light_condensed_bt.ttf');
}

@font-face
{
	font-family: 'Zurich Bold Condensed';
    src: url('../Fonts/zurich_bold_condensed_bt.ttf');
}

@font-face
{
	font-family: 'Zurich Lighthead';
    src: url('../Fonts/zurich_lighthead_bt.ttf');
}

@font-face
{
	font-family: 'Shentox Bold';
    src: url('../Fonts/backforce/shentox_bold.woff2');
}

@font-face
{
	font-family: 'Shentox Light';
    src: url('../Fonts/backforce/shentox_light.woff2');
}

@font-face
{
	font-family: 'Shentox Regular';
    src: url('../Fonts/backforce/shentox_regular.woff2');
}

:root {
    --UI_WHITE: white;
    --UI_BACKGROUND: #E6E6E6;
    --UI_MODULE_BASE: #F2F2F2;
    --UI_MODULE_HOVER: #DDDDDD;
    --UI_BUTTON_BASE: #808080;
    --UI_BUTTON_HOVER: #999999;
    --UI_BUTTON_DROP: #B3B3B3;
    --UI_TITLEBAR: #25828E;
    --UI_PARTITION: #B3B3B3;
    --UI_HIGHLIGHT: #2A95A3;
    --UI_HOVER: #7bc4ce;
    --UI_SHADE: #2c2c2c;
    --UI_DARK: #242424;
    --UI_PANEL_BACK: #555;
    --UI_SCROLLBAR: #bec7c7;
    --UI_SCROLLBAR_HOVER: #719493;
    --UI_SCROLLBAR_BACK: #202c2c;
    --RADIAL_FADE_START: 90%;
}


*
{
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


*:focus
{
    outline: none;
}


html,
body {
    width: 100%;
    height: 100%;
    position: relative;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    font-family: "Arial", Times, serif;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Safari */
    -khtml-user-select: none;
    /* Konqueror HTML */
    -moz-user-select: none;
    /* Old versions of Firefox */
    -ms-user-select: none;
    /* Internet Explorer/Edge */
    user-select: none;
    /* Non-prefixed version, currently
                                  supported by Chrome, Opera and Firefox */
}


canvas
{
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
}


#background
{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}


#background #background-image-container
{
    position: relative;
    width: 100%;
    height: 100%;
}


#background #background-image-container img
{
    position: absolute;
}


#background #background-image-container img.fit
{
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}


#background #background-image-container img.free
{
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


#background #background-image-container img:not([src]),
#background #background-image-container img[src='']
{
    display: none;
}


#loadingScreenContainer > *
{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}


#loadingScreenContainer > img
{    
    max-width: 25%;
    max-height: 25%;
}


#loadingScreenContainer > .loadingio-spinner-spinner-g5f6ir0ssz5
{
    transform: translate(-50%, -50%) scale(0.7);
}


#loadingScreenContainer > .loadingio-spinner-spinner-g5f6ir0ssz5 span.progressIndicator
{
    transform: translate(-50%, -50%) scale(1.42857);
}


#BlendingScreenshot
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    z-index: 1;
    display: none;
}


#fibutton
{
    display: none;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    justify-content: center;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px; /* future proofing */    
    -khtml-border-radius: 0px; /* for old Konqueror browsers */
}


#fibuttonbg
{
    display: none;
    position: absolute;
    margin: auto;
    width: 208px;
    height: 208px;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    justify-content: center;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    /* future proofing */
    -khtml-border-radius: 0px;
    /* for old Konqueror browsers */
    mix-blend-mode: multiply;
}


#canvasContainer
{
    width: 100%;
    height: 100%;
    padding: 0px;
    margin: 0px;
    position: relative;
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */    
    -khtml-user-select: none; /* Konqueror HTML */    
    -moz-user-select: none; /* Firefox */    
    -ms-user-select: none; /* Internet Explorer/Edge */    
    user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */ 
}



input[type=range]
{
    -webkit-appearance: none;
    width: 400px;
    height: 7px;
    border-radius: 3.5px;
    background: var(--UI_MODULE_BASE);
    outline: none;
    opacity: 0.7;
    -webkit-transition: .2s;
    transition: opacity .2s;
}


input[type=range]:hover
{
    opacity: 1;
}


input[type=range]::-webkit-slider-thumb
{
    -webkit-appearance: none;
    appearance: none;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: var(--UI_HIGHLIGHT);
    cursor: pointer;
}


input[type=range]::-moz-range-thumb
{
    width: 1em;
    height: 1em;
    border-radius: 50%;
    background: var(--UI_HIGHLIGHT);
    cursor: pointer;
}


.rectangularFadeFrameBorder
{
    -webkit-mask-image: -webkit-linear-gradient(0deg, transparent 0%, black 5%, black 95%, transparent 100%), -webkit-linear-gradient(90deg, transparent 0%, black 5%, black 95%, transparent 100%);
    mask-image: linear-gradient(0deg, transparent 0%, black 5%, black 95%, transparent 100%), linear-gradient(90deg, transparent 0%, black 5%, black 95%, transparent 100%);
    -webkit-mask-composite: destination-in;
    mask-composite: intersect;
}


.radialFadeFrameBorder
{
    -webkit-mask-image: -webkit-radial-gradient(closest-side, white var(--RADIAL_FADE_START), transparent 100%);
    mask-image: radial-gradient(closest-side, white var(--RADIAL_FADE_START), transparent 100%);
}

#offlinecontent {
    position: absolute;
    display: block;
    opacity: 0;
    z-index: -100000000;
}

#oc1 {
    font-family: 'Zurich';
}

#oc2 {
    font-family: 'Zurich Light Condensed';
}

#oc3 {
    font-family: 'Zurich Bold Condensed';
}

#oc4 {
    font-family: 'Zurich Lighthead';
}

#oc5 {
    font-family: 'Shentox Bold';
}

#oc6 {
    font-family: 'Shentox Light';
}

#oc7 {
    font-family: 'Regular';
}

/* Network Connection popup style */

#networkpopupcontainer {
    display: none;
    position: absolute;
    width: 90%;
    max-width: 340px;
    height: 160px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 100000;
}

#networkpopupbody {
    position: absolute;
    display: grid;
    width: 100%;
    height: 100%;
    grid-template-rows: 60% 40%;
    justify-content: center;
    justify-items: center;
}

#networkupperpart {
    position: relative;
    display: grid;
    width: 95%;
    height: auto;
    grid-template-columns: 20% 80%;
    justify-items: center;
}

#warningicon {
    /* position: absolute; */
    width: 40px;
    height: 40px;
    justify-self: center;
    vertical-align: middle;
    align-self: center;
}

.networkbackgroundwebshop
{
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #D3072A;
    opacity: 0.95;
}

.networkbackgroundbackforce
{
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: black;
    opacity: 0.95;
}

#warningmessage {
    position: relative;
    display: grid;
    grid-template-rows: auto auto;
    width: 100%;
    height: 100%;
}

.warningmessageheadwebshop {
    /* position: absolute; */
    width: auto;
    height: auto;
    color: white;
    font-family: 'Zurich Bold Condensed';
    font-size: 1.4em;
    padding: 5px;
    padding-bottom: 0px;
    /* padding-right: 30px; */
    align-self: flex-end;

}

.warningmessageheadbackforce {
    /* position: absolute; */
    width: auto;
    height: auto;
    color: white;
    font-family: 'Shentox Bold';
    font-size: 1.4em;
    padding: 5px;
    padding-bottom: 0px;
    /* padding-right: 30px; */
    align-self: flex-end;

}

.warningmessagebodywebshop {
    /* position: relative; */
    width: auto;
    height: auto;
    color: white;
    font-family: 'Zurich';
    font-size: 0.9em;
    padding: 5px;
    padding-top: 0px;
    /* padding-right: 30px; */
    align-self: flex-start;
}

.warningmessagebodybackforce {
    /* position: relative; */
    width: auto;
    height: auto;
    color: white;
    font-family: 'Shentox Light';
    font-size: 0.9em;
    padding: 5px;
    padding-top: 0px;
    /* padding-right: 30px; */
    align-self: flex-start;
}

#networkbuttoncontainer {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    vertical-align: middle;
    align-content: center;
}

.networktryagainbuttonwebshop {
    display: flex;
    position: relative;
    width: auto;
    height: auto;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 8px;
    padding-bottom:8px;
    border: 2px solid white;
    background-color: transparent;
    color: white;
    font-family: 'Zurich', Helvetica, Arial, sans-serif;
    font-size: 0.8em;
    margin: auto;
    margin-top: 5px;
    cursor: pointer;
    vertical-align: middle;
    align-self: flex-start;
}

.networktryagainbuttonbackforce {
    display: flex;
    position: relative;
    width: auto;
    height: auto;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 8px;
    padding-bottom:8px;
    border: 2px solid white;
    background-color: transparent;
    color: white;
    font-family: 'Shentox Regular', Helvetica, Arial, sans-serif;
    font-size: 0.8em;
    margin: auto;
    margin-top: 5px;
    cursor: pointer;
    vertical-align: middle;
    align-self: flex-start;
}

#model-viewer {
    display: none;
    width: 100%;
    height: 100%;
}

#displayar {
    display: none;
    cursor: pointer;
    width: 50px;
    height: 50px;
    font: bold 11px Arial;
    text-decoration: none;    
    background-color: #EEEEEE;
    color: #333333;
    padding: 2px 6px 2px 6px;
    border-top: 1px solid #CCCCCC;
    border-right: 1px solid #333333;
    border-bottom: 1px solid #333333;
    border-left: 1px solid #CCCCCC;
}

/* Screenshot Generation popup style */

#screenshot-generation {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10000;
}

#camera-controls {
    display: none;
    position: absolute;
    width: 20%;
    left: 0;
    /* right: 0; */
    margin: auto;
    z-index: 10000;
    font-size: 14px;
}