body{
    max-width: 100vw;
    overflow-x: hidden;
}

.shield{
    background-color:#c0c0c08f; 
    width: 100vw; 
    height: 100vh; 
    position: fixed; 
    left: 0px; 
    top: 0px;
    display: block;
    z-index: 99;
}

.container{
    width: 80%; 
    margin: auto; 
    min-width: 500px;
    max-width: 1024px;
}

.is-tight .container{
    min-width: 0;
    width: 100vw;
    max-width: 100vw;
    box-sizing: border-box;
}

.is-tight div::-webkit-scrollbar {
width: 2px;
}

.card-container{
    position: fixed;
    max-width: 100vw;
    min-width: 100vw;
    min-height: 100vh;
    max-height: 100vh;
    display: flex;
    align-items: center;
    flex-direction: column;
    top: 0;
    z-index: 100;
}

.card{
    position: relative;
    margin: auto;
    min-width: 650px;
    box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
    border: solid #b2b2b2 1px;
    border-radius: 8px;
    background-color: #ffffff;
    padding: 16px 28px;
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    overflow-x: auto;
}

.card > .header{
    border-bottom: solid #b2b2b2 1px;
    margin: -16px -28px 0;
    padding: 12px 28px;
}

.is-tight .card{
    width: 100%;
    min-width: 100%;
    max-height: 100vh;
    padding: 8px 16px;
    overflow-y: auto;
}

.raw-parent{
    border-bottom: solid lightgray 1px;
    position: relative;
    padding-bottom: 8px;
}

.raw-child{
    position: relative;
    margin-left: 40px;
    font-size: 90%;
}

.raw-child > *{
    margin-top: 6px;
}

.is-tight .raw-child{
    left: 20px;
}

.md-select-menu-container.md-active{
    z-index: 100;
}

md-select-menu{
    border-radius: 0 0 6px 6px;
    box-shadow: 2px 2px 2px rgb(0 0 0 / 30%);
    border: solid #b2b2b2 1px;
}

md-input-container{
    margin: 0;
    margin-top: 12px
}

md-checkbox{
    margin-bottom: 0;
}

.error-label{
    position: initial; 
    color:red; 
    font-size: large;
    font-weight: bold;
}

.upper-label{
    margin-top: 4px
}

.is-tight .upper-label{
    margin-top: 0;
}

.is-tight .head-buttons{
    display: flex;
    flex-direction: column;
}

.is-tight .head-buttons > *:not(legend){
    min-width: calc(100% - 16px);
}

body:not(.is-tight) .tight{
    display: none !important;
}

body.is-tight .wide{
    display: none !important;
}

.flex-row{
    display: flex;
    flex-direction: row;
}

.label{
    color: #5f5f5f;
    height: 100%;
    display: flex;
    align-items: center;
    font-weight: bold;
}

