body.movingWindow {
    -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; 
    -moz-user-select: none; -ms-user-select: none; user-select: none;
}

.mvsWindow {
    position: absolute; min-width: 310px; min-height: 200px; margin: 20px auto; 
    border: solid 1px #888; background-color: #FFF;
    box-shadow: 0px 0px 10px 2px #444; z-index: 100;
}
/*.mvsWindow.active { z-index: 20; }*/
.mvsWindow > div { display: table; width: 100%; height: 100%; border-collapse: collapse; table-layout: fixed;  }
.mvsWindow > div > div { display: table-row;  }
.mvsWindow > div > div > div { display: table-cell; width: 100%; position: relative; margin: 0; padding: 0; vertical-align: top; }

/********** Titlebar **********/
.mvsWindow .mvsWindowTitlebar {
    height: 30px; border-bottom: solid 2px #888; background-color: steelblue; padding-left: 35px; 
}
.mvsWindow .mvsWindowTitlebar:before { 
    font-family: 'FontAwesome'; content: '\f07c'; position: absolute; left: 8px; height: 30px; 
    font-size: 1.2rem; vertical-align: middle; color: #FFF; padding-top: 6px;
}
.mvsWindow .mvsWindowTitlebar span {
    color: #FFF; font-size: 1.1rem; line-height: 30px; vertical-align: middle;
}
.mvsWindow .mvsWindowTitlebar div { 
    display:block; float: right; position: relative; height: 30px; width: 30px; 
    cursor: default; color: #FFF; border: solid 1px rgba(0,0,0,0); 
}
.mvsWindow .mvsWindowTitlebar div:before { 
    font-family: 'FontAwesome'; position: absolute; /*top: 5px; left: 7px; font-size: 1.2rem;*/
    top: 50%; left: 50%; font-size: 1.2rem; 
    transform: translate(-50%,-50%);
}
.mvsWindow .mvsWindowTitlebar div:hover { 
    background-color: #FFF; color: steelblue; border-color: #c1c1c1;
}
.mvsWindow .mvsWindowTitlebar div.closeWindow:before { content: '\f00d'; font-weight: bold; }
.mvsWindow .mvsWindowTitlebar div.fullscreen:before { content: '\f2d0'; }
.mvsWindow.fullscreen .mvsWindowTitlebar div.fullscreen:before { content: '\f2d2'; }


/********** Toolbar **********/
.mvsWindow .mvsWindowToolbar {
    -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; 
    -moz-user-select: none; -ms-user-select: none; user-select: none;
}
.mvsWindow .mvsWindowToolbar:after { content: ""; display: block; height: 0; overflow: hidden; }
.mvsWindow .mvsWindowToolbar:after { clear: both; }
.mvsWindow .mvsWindowToolbar { zoom: 1; }

.mvsWindow .mvsWindowToolbar > div { 
    float: left; height: 30px; margin: 2px 0px 2px 2px;
    padding-left: 25px; padding-right: 10px; position: relative; cursor: pointer;
    border: solid 1px #FFF; color: #444; vertical-align: middle;
}
.mvsWindow .mvsWindowToolbar > div.disabled { color: #888; }
.mvsWindow .mvsWindowToolbar > div:before { 
    content:''; font-family: 'FontAwesome'; position: absolute; left: 2px; top: 4px; font-size: 1.2rem; 
    width: 20px; height: 20px; line-height: 20px; vertical-align: middle; text-align: center;
}
.mvsWindow .mvsWindowToolbar > div > span { font-size: 0.9rem; line-height: 29px; vertical-align: middle; }
.mvsWindow  mvsWindowToolbar > div:not(.disabled):hover { 
    background-color: #c7e6ff; border: solid 1px #4a93d0; color: #000;
 }
.mvsWindow .mvsWindowToolbar > div.reload:before { content: '\f021'; }


/********** Content **********/
.mvsWindow .mvsWindowContent { height: 100%; overflow: auto; }
.mvsWindow .mvsWindowContent:after {  
    content: ''; position: relative; width: 1px; height:100%; display: block; min-height: 150px;
}

.mvsWindow .mvsWindowContent > div { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: 0; }

/********** Statusbar **********/
.mvsWindow .mvsWindowStatusbar {
    height: 20px; border-top: solid 1px #888; background-color: #222;
}
.mvsWindow .mvsWindowStatusbar > div.grip { 
    width: 20px; height: 20px; position: absolute; right: 0px; top: 0px; cursor: nw-resize;
}
.mvsWindow .mvsWindowStatusbar > div.grip:after {
    content: ''; position: absolute; bottom: 1px; right: 0; width: 0; height: 0;
    border-bottom: 15px solid #cecece; border-left: 15px solid transparent;
}
/*
.mvsWindow .mvsWindowStatusbar > div.grip:before { 
    content:''; font-family: 'FontAwesome'; position: absolute; left: 2px; top: 4px; font-size: 1.2rem; 
    width: 20px; height: 20px; line-height: 20px; vertical-align: middle; text-align: center;
}
.mvsWindow .mvsWindowStatusbar > div.grip:before { content: '\f065'; }
*/

.mvsWindow.fullscreen {
    position: fixed; 
    top: 0px !important; left: 0px !important; 
    width: 100% !important; max-width: 100% !important; 
    height: 100% !important; max-height: 100% !important; 
    margin: 0 !important; z-index: 999;
}

.mvsWindow.fullscreen .mvsWindowStatusbar > div.grip { display: none; }

.mvsWindow .locked:before { 
    position: absolute !important; top: 0; left: 0; width: 100%; height: 100%; 
    background-color: rgba(255,255,255,.7) !important; z-index: 999; content: '';
}