  @font-face {
    font-family: "Material Symbols Rounded";
    src: url("fonts/MaterialSymbolsRounded.ttf");
  }
body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
    overflow-y: auto !important;
    
}

button {
    background: none;
    border: none;
    font-size: 1em;
}


a { text-decoration: none; }
 
    a:link, a:visited {
        color: #1c2d41;
        cursor: pointer;
    }
    
    a:link:active, a:visited:active {
        color: #59b1e4;
    }
    
h1, h2, h3, h4, h5, h6 { color: #1c2d41; }
h1 { font-size: 1.6em; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.3em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.1em; }

.layout {
    width: 100vw;
    background-color: #85a1c0;
    height: 100vh;
    overflow-y: auto !important;

    display: flex;
    justify-content: space-around;

}

    #message {
        position: fixed;
        width: 100vw;
        height: 100vh;
        background-color: rgba(105, 128, 137, 0.706);;
        z-index: 1000;
        display: none;
        top: 0px;
    
        
        font-size: 1.5em;
        font-weight: 700;

        color:#06f;
    }
    
        #message div {
            display: grid;
            justify-content: space-around;
            align-items: center;
            height: 100%;
        }
        
            #message div .alert{
                height: fit-content;
                width: 40vw;
                background-color:aliceblue;
                text-align: center;
                padding-top: 2em;
            }

            #message button{
                width: 10vw;
                margin-top: 2em;
                margin-bottom: 2em;
            }
            
    .alert {
        padding: 20px;
        border-radius: 10px 10px;  
        border: 0.0625rem solid rgba(0, 0, 0, 0.125);
        margin-bottom: 40px;
    }
        .alert-danger {
            color: rgb(216, 0, 0);
            font-weight: 700;
        }

    .middle {
        margin-top: 1vh;
        margin-bottom: 1vh;
        padding: 2vw 2vw;
        
        background-color: #f9fafc;
        overflow-x: auto;

        border: none;
        border-radius: 40px 10px;  
        min-height: 70vh;
        height: fit-content;
    }

    .main-title {
        width: 100%;
    
        margin-top: 2em;
        margin-bottom: 1em;
    
        font-weight: 700;
        text-align: center;
    }
    
    .main-subtitle {
        width: 100%;
        color:#0f70a8;
        margin-bottom: 2em;
        padding-bottom: 1em;
    
        border-bottom: 0.0625rem solid rgba(0, 0, 0, 0.125);
    
        font-weight: 700;
        text-align: center;
    }
    
    form {
        height: 100%;
        padding: 0.1em;
    }

    form > fieldset {
        border-radius: 10px 10px;  
        padding: 1vw 1vw;
        border: 0.0625rem solid rgba(0, 0, 0, 0.125);
        margin-bottom: 2vh;
    }

    form > fieldset > label {
        display: block;
        padding: 10px;
        font-size: 1.1em;
        font-weight: 600;
        color: #263e58;
    }


    fieldset.radio {
        padding-top: 20px;
        margin-left: 5vw;
        width: fit-content;
        display: grid;
        justify-content: space-around;
        grid-template-columns: 1fr 1fr;
        gap: 2em;
    }
    
    fieldset.sortable-lists {
        display: flex;
        /* flex-wrap: wrap; */
        justify-content: space-around;
        height: 200px;
        margin-top: 20px;
        align-items: center;
    }
    
    fieldset.sortable-lists fieldset {
        width: 45%;
        
    }
    
    fieldset.sortable-lists fieldset label{
        display: block;
        padding-bottom: 5px;
    }
    
        fieldset.sortable-lists ul {
            height: 150px;
            overflow-y: scroll !important;
            border-style: solid;
            /* border-color: #85a1c0; */
            word-break: break-all;

        }

        fieldset.sortable-lists ul li{
            cursor: grab; 
            height: fit-content;
        }

        fieldset.sortable-lists ul li.disabled{
            cursor: not-allowed !important;
            color: #7a7a7a !important;
        }


    fieldset.tupla fieldset {
        display: inline-block;
        width: fit-content;
        margin-left: 20px;
        vertical-align: middle;
    }
        fieldset.tupla fieldset label{
            width: 10vw;
        }

        fieldset.tupla fieldset input{
            width: 20vw;
            min-width: 150px;
        }
        
        fieldset.tupla a {
            display: flex;
            align-items: center;
            left: 0px;
        }
        
        fieldset.tupla a:focus {
            color: #171e29;
        }
    
        fieldset.tupla a:hover, fieldset.tupla a:active {
            color: #06f;
            fill: #06f;
        }
    
    fieldset.text, fieldset.select {
        display: flex;
        justify-content: space-around;
        align-items: center;
        
        width: 80%;
        text-align: right;
    }
        fieldset.text label, fieldset.select label{
            width: 20%;
        }

        fieldset.text input, fieldset.select select{
            width: 75%;
            margin-left: 20px;
        }
        

    .icon-swap span::before {
        font-family: 'Material Symbols Rounded';
        font-size: 2.5em;
        content: "\e8d4";
        color:#6e8aaa;
    }

    .icon-right-arrow span::before {
        font-family: 'Material Symbols Rounded';
        font-size: 2em;
        content: "\e5c8";
    }
    
    .icon-left-arrow span::before {
        font-family: 'Material Symbols Rounded';
        font-size: 2em;
        content: "\e5c4";
    }

    .icon-remove span::before {
        font-family: 'Material Symbols Rounded';
        font-size: 1.5em;
        content: "\e14a";
        color: darkred;
    }
    
    
    input[type=text], select {
        width: 100%;
        padding: 12px 20px;
        margin: 8px 0;
        border-radius: 4px;
        border-color: #85a1c0;
        border-width: 1px;
        background-color: white;
    }

    input[type=text]:disabled, select:disabled {
        border-color: #dcdcdc;
        background-color: rgb(248, 248, 248);
    }

    .sortable {
        border: 1px solid #eee;
        width: 100%;
        min-height: 20px;
        list-style-type: none;
        margin: 0;
        padding: 5px 0 0 0;
        float: left;
        margin-right: 10px;
    }

      .sortable li {
        margin: 0 5px 5px 5px;
        padding: 5px;
        font-size: 1.2em;
        width: 90%;
        display: flex;
        align-items: center;
      }

    .button-area {
        width: 100%;
        display: flex;
        justify-content: space-around;
        align-items: center;
    }

    .button-59 {
        align-items: center;
        background-color: #fff;
        border: 2px solid #516b88;
        box-sizing: border-box;
        color: #41566e;;
        cursor: pointer;
        display: inline-flex;
        fill: #000;
        font-family: Inter,sans-serif;
        font-size: 16px;
        font-weight: 600;
        height: 48px;
        justify-content: center;
        letter-spacing: -.8px;
        line-height: 24px;
        min-width: 140px;
        outline: 0;
        padding: 0 17px;
        text-align: center;
        text-decoration: none;
        transition: all .3s;
        user-select: none;
        -webkit-user-select: none;
        touch-action: manipulation;
    }

    .button-59:focus {
        color: #171e29;
    }

    .button-59:hover {
        border-color: #06f;
        color: #06f;
        fill: #06f;
    }

    .button-59:active {
        border-color: #06f;
        color: #06f;
        fill: #06f;
    }

    @media (min-width: 768px) {
        .button-59 {
            min-width: 170px;
        }
    }