﻿.form-row {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-left: 0;
    margin-right: 0;
}
/***************************************************************/
.form-control {
    padding: 0px 10px 0px 10px;
    min-height: 40px;
    min-width:50%;
} 
.form-control::placeholder {
    color: silver;
    opacity: 0.5;
}


.form-control {
    background-color: white !important;
}

    .form-control:disabled {
        color: gray !important;
    }

    .form-control input:read-only {
        color: gray !important;
    }

    .form-control select:disabled {
        color: gray !important;
    }
/***************************************************************/
.form-control[type=color] {
    cursor:pointer;
    padding-top:10px;
}
.form-control[type='range'] {
    accent-color: dodgerblue;
}
.form-control[type="number"] {
    border: 1px solid #d8d8d8;
    position: relative; 
    outline: none;
    background-image: url('data:image/svg+xml;utf8,%3Csvg%20version%3D%221.1%22%20viewBox%3D%220%200%2050%2067%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20stroke-width%3D%222%22%3E%3Cline%20x1%3D%221%22%20x2%3D%2250%22%20y1%3D%2233.5%22%20y2%3D%2233.5%22%20stroke%3D%22%23D8D8D8%22%2F%3E%3Cpolyline%20transform%3D%22translate(25%2020)%20rotate(45)%20translate(-25%20-20)%22%20points%3D%2219%2026%2019%2014%2032%2014%22%20stroke%3D%22%23000%22%2F%3E%3Cpolyline%20transform%3D%22translate(25%2045)%20rotate(225)%20translate(-25%20-45)%22%20points%3D%2219%2052%2019%2039%2032%2039%22%20stroke%3D%22%23000%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E');
    background-position: center right;
    background-size: contain;
    background-repeat: no-repeat;
    caret-color: blue;
}
.form-control[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    opacity: 1 !important;
    background: transparent !important;
    border-width: 0px;
    margin: 0;
    border-left: 1px solid #d8d8d8;
    height: 50px;
    width: 20px;
    cursor: pointer;
} 
/***************************************************************/
.form-autoexpand {
    height:auto;
    padding:10px;
}
.form-control-inner {
    border: none;
    display: block;
    font-size: 0.9em;
    outline: none;
    padding-left: 8px;
    padding-top: 8px;
    padding-bottom: -2px;
    margin: 0px;
}
    .form-control-inner:read-only {
        background-color: white;
        color: silver !important;
    }
.form-hidden {
    display: none;
}
.form-row textarea {
    padding-top: 10px;
    z-index: 1;
}
.form-row .form-label {
    position: absolute;
    top: 0px;
    left: 25px;
    max-width: 90%;
    font-size: 80%;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
    background-color: white;
    transform-origin: right;
    transition: all .2s ease-out;
    color: rebeccapurple;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0px;
    z-index: 5;
}

.form-row :focus-within .form-label {
    position: absolute;
    top: 0px;
    color:black;
    background-color:transparent;
} 
.col-max-width-30 {
    max-width: 30px;
}
.col-max-width-50 {
    max-width: 50px;
}
.col-max-width-80 {
    max-width: 70px;
}
.form-row .select2-selection {
    padding-top: 5px;
    min-height: 50px;
    font-size: 1em;
}
.form-row .form-checklist {
    max-height: 200px;
    height: unset;
    overflow-y: scroll;
    overflow-x: hidden;
    padding-top: 15px;
    padding-left: 10px;
} 
.form-row .form-checkbox-label {
    font-size: 0.8em;
}
.form-row .form-checkbox {
    margin-right: 20px;
    color: dodgerblue;
    margin: 15px 15px 15px 15px;
    transform: scale(1.5);
    filter: invert(0%) sepia(200%) saturate(0%) hue-rotate(200deg) brightness(100%) contrast(150%);
}

.form-row .form-checkbox:checked { 
    filter: invert(0%) sepia(40%) saturate(3000%) hue-rotate(200deg) brightness(100%) contrast(150%);
}
.form-row .form-checkbox:disabled {
    filter: none;
    color: unset;
}
    .form-row .form-checkbox:checked:disabled {
        filter: invert(80%) sepia(60%) saturate(0%) brightness(200%) contrast(200%);
        color: black;
    }
.form-row .form-item {
    white-space: nowrap;
} 
.form-row .form-comment {
    font-size: 0.8em;
    color: navy;
    font-style: italic;
}
.form-row .form-row-button {
    margin-left:5px;
}
.form-group {
    position:relative;
    
    padding-top: 40px;
    margin-left: 0px;
    margin-right: 0px; 
    border: solid 1px #c0c0c0bc;
    border-radius: 5px;
    color: darkgray;

}
.form-group .form-group-title {
    position:absolute;
    top: 5px;
    left: 10px;
    pointer-events: none;
    color:blue;
    font-size:12px;
    font-style:italic;
    text-decoration:underline;
}

.form-control.is-invalid, .was-validated .form-control:invalid {
    background-position: center right 2px;
}

.form-row-group {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
    outline:none;
}
.form-validation {
    color: white;
    font-weight: bold;
    font-size: 0.8em;
    background-color: darkred;
    border-radius: 10px;
    padding: 10px;
    padding-right: 50px;
    width: 60%;
    left: 20%;
    /*filter: invert(42%) sepia(100%) saturate(1352%) hue-rotate(10deg) brightness(119%) contrast(119%);*/
    /*    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z"/></svg>');
    background-repeat: no-repeat;
    background-position: center right 2px;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);*/



    margin-top: 10px;
    margin-bottom: 10px;
    cursor: pointer;
    border: solid 2px white;
    //position: fixed;
    //top: 30px;
    z-index: 999999;
}
    .form-validation:hover{
        border:solid 2px black;
    }
     

.modal-sm .form-validation {
    width: 40%;
    left: 30%;
}

.modal-lg .form-validation {
    width: 60%;
    left: 20%;
}

.modal-xl .form-validation {
    width: 80%;
    left: 10%;
}

.form-validation-passed {
    background-color: green;
    /*filter: invert(42%) sepia(10%) saturate(1352%) hue-rotate(100deg) brightness(100%) contrast(160%);
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-111 111-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L369 209z"/></svg>');*/
}

.form-validation-loading {
    pointer-events:none;
    cursor: default;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M304 48c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48 48 21.5 48 48zm-48 368c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm208-208c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zM96 256c0-26.5-21.5-48-48-48S0 229.5 0 256s21.5 48 48 48 48-21.5 48-48zm12.9 99.1c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48c0-26.5-21.5-48-48-48zm294.2 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48c0-26.5-21.5-48-48-48zM108.9 60.9c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z"/></svg>');
}
.form-validation:empty {
    display:none;
}
    
@media (max-width: 1024px) {

    .form-validation {
        width: calc(100vw - 40px) !important;
        left: 20px !important;
    } 

    .form-row .form-label {
        font-size: 0.7em;
    }

        .form-row .form-control {
            padding: 3px;
            color: black;
            min-height: 40px; 
        }
        .form-row .form-autoheight { 
            height: auto !important; 
            min-height:50px;
        } 
    .btn .text {
        display:none;
    }

        .form-row .form-checklist {
            max-height: 200px;
            height: unset;
            overflow-y: visible;
            overflow-x: hidden;
            padding-top: 15px;
            padding-left: 10px;
        }
}

.DialogMask {
    padding: 10px;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 50;
    background-color: #606060;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
    -moz-opacity: .5;
    opacity: .5;
}
.DialogSpin {
    width:100px;
    height:100px;
    position:absolute;
    margin-left: 50%;
    top:300px;
    z-index: 100;
    font-size:50px;
}


textarea.json-editor {
    width: 100%;
    height: 400px;
    font-family: monospace;
    font-size:12px;
    background-color: #2e2e2e;
    color: #f8f8f2;
    border: 1px solid #ccc;
    padding: 10px;
    box-sizing: border-box;
    white-space: pre;
    overflow: auto;
    resize: both;
}

.modal-loading {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.3);
    z-index: 999999;
    display: none;
    justify-content: center;
    align-items: center;
}

    .modal-loading i {
        width: 50px;
        height: 50px; 
        font-size:50px;
    }


.mandatory {
    background-image: url(/image/Asterisk.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
    width: 20px;
    height: 10px;
    margin:3px;
}