/* Variables init */
:root {
    --bg-body: #f4f4f4;
    --bg-gradientA: #a3fccf;
    --bg-gradientZ: rgb(163 252 207 / 0%);
    --bg-header: #ffffff;
    --bc-header: #95c8f0;
    --bc-header-title: #da8044;
    --cl-body: #3f3f3f;
    --cl-body-title: #4caac9;
    --ac-body: #4caac9;
    --cl-gradientA: #a3fccf;
    --cl-gradientZ: #63bfed;
    --bc-content: #dee2e6;
    --bc-footer: #95c8f0;
    --bg-footer: #ededed;
    --ac-footer: #4caac9;
    --ah-footer: #da8044;
    --cl-shadow: #3f3f3f;
    --cl-shadow-strong: #8c8c8f;
    --bg-shadow: #00000040;
}

/* ATTIVARE BLOCCO SE SI VUOLE CUSTOMIZZARE IL TEMPLATE */
/*
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
*/

HTML {
    height: 100%;
}

BODY {
    display: flex;
    height: 100%;
    background-color: var(--bg-body);
    font-family: "Open Sans", Arial, sans-serif;
    font-size: clamp(10px, 1vw, 16px);
    font-weight: 300;
    color: var(--cl-body);
}

/* --- ShadowBox START --------------------------------- */
.shadowalert {
    width: 99%;
    height: 80%;
    position: fixed;
    top: 15%;
    z-index: 10001;
    text-align: center;
    /*  shadow p-3 mb-5 bg-body-tertiary rounded */
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(33, 37, 41, .15);
    padding: 1rem;
    margin: 1rem .5rem;
    opacity: 1;
}

.shadowalert #divalert {
    display: inline-block;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    border: none;
    font-size: clamp(10px, 1vw, 16px);
    padding-bottom: 2rem;
    text-align: left;
    min-width: 30vw;
    min-height: 25vh;
}

.shadowalert #divalert STRONG {
    display: block;
    font-weight: 600;
    font-size: clamp(12px, 1.2vw, 18px);
    text-align: center;
}

.shadowalert #divalert.alert-danger {
    padding-bottom: 1rem;
}

.shadowalert #divalert.alert-warning {
    padding-bottom: 1rem;
}

.shadowalert #divalert.alert-success {
    padding-bottom: 2rem;
}

.shadowalert #divalert .btnsi, .shadowalert #divalert .btnno, .shadowalert #divalert .btnok {
    position: absolute;
    bottom: .5rem;
    font-size: clamp(10px, 1vw, 16px);
    line-height: 2rem;
    transition: right 0s ease-in-out, bottom 0s ease-in-out;
    min-width: 50px;
}

.shadowalert #divalert .btnok {
    left: calc(50% - 25px);
}

.shadowalert #divalert .btnsi:hover, .shadowalert #divalert .btnno:hover, .shadowalert #divalert .btnok:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: pointer;
    border: 1px solid;
}

.shadowalert #divalert .btnsi {
    left: 1rem;
    border: 1px solid;
}

/*.shadowalert #divalert .btnsi:hover {
	bottom: -1.7rem;
}*/
.shadowalert #divalert .btnno {
    right: 1rem;
    border: 1px solid;
}

/*.shadowalert #divalert .btnno:hover {
	bottom: -1.7rem;
}*/
/*.shadowalert #divalert .btnok {
	float: right;
	right: 1rem;
	border: 1px solid;
}*/
/*.shadowalert #divalert .btnok:hover {
	bottom: -1.7rem;
}*/
.shadowalert #divalert .tabinsertbox .col-md-12 {
    margin-bottom: .5rem;
}

.shadowalert #divalert .tabinsertbox .col-md-12 .nomeColonna {
    min-width: 6rem;
}

.shadowalert #divalert .tabinsertbox .col-md-12 SELECT {
    font-size: clamp(10px, 1vw, 16px);
    width: 100%;
}

.shadowalert #divalert .tabinsertbox .col-md-12 INPUT {
    border: none;
}

.shadowalert {
    background-color: var(--bg-shadow);
}

.shadowalert #divalert {
    color: var(--cl-shadow);
}

.shadowalert #divalert STRONG {
    color: var(--cl-shadow-strong);
}

.shadowalert #divalert.alert-danger {
    background-color: #f8d7da;
    border-color: rgba(220, 53, 69, 1);
}

.shadowalert #divalert.alert-warning {
    background-color: #fffcf5;
    border-color: rgba(255, 193, 7, 1);
}

.shadowalert #divalert.alert-success {
    background-color: #a3fccf;
    border-color: rgba(25, 135, 84, 1);

}

.shadowalert #divalert .btnsi:hover, .shadowalert #divalert .btnno:hover, .shadowalert #divalert .btnok:hover {
    border-color: transparent;
}

.shadowalert #divalert .btnsi {
    background-color: #000;
    color: #fff;
    border-color: #000;
}

.shadowalert #divalert .btnsi:hover {
    background-color: #3f3f3f;
}

.shadowalert #divalert .btnno {
    background-color: #ced4da;
    color: #000;
    border-color: #ced4da;
}

.shadowalert #divalert .btnno:hover {
    background-color: #dfe2e5;
}

/* --- ShadowBox END ------------------------------------*/

#header-login {
    background-color: var(--bg-header);
    border-bottom: 4px solid var(--bc-header);
    top: 0;
    position: absolute;
    width: 100%;
    height: 10rem;
}

#header-login .image {
    position: absolute;
    top: 1rem;
    left: 3rem;
}

#header-login .title h1 {
    font-size: clamp(32px, 4vw, 40px);
    font-weight: 700;
    color: var(--bc-header-title);
    position: absolute;
    left: 50%;
    top: 50%;
    webkit-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

div.page-login {
    width: 40rem;
    position: absolute;
    top: 50vh;
    left: 50%;
    webkit-transform: translateY(-25vh) translateX(-50%);
    -ms-transform: translateY(-25vh) translateX(-50%);
    transform: translateY(-25vh) translateX(-50%);
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

div.page-login fieldset legend {
    text-align: center;
    font-weight: 600;
    color: var(--cl-body-title);
}

div.page-login fieldset input.form-control {
    padding: 1rem 0.75rem;
}

div.page-login fieldset a {
    color: var(--ac-body);
    text-decoration: none;
}

div.page-login fieldset a:hover {
    text-decoration: underline;
}

div.page-login fieldset div .form-floating span.fa-asterisk {
    position: absolute;
    top: 1rem;
    right: 0.5rem;
}

div.page-login button.btn-block {
    width: 100%;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

div.page-login button.btn-block.btn-primary {
    background-color: #248eea;
    background-image: linear-gradient(to bottom, #2990EA, #208be9);
    border: 1px solid #1476cc;
    box-shadow: rgba(0, 0, 0, 0.2) 0 1px 2px 0;
    color: #fff;
    text-shadow: #1476cc 0 -1px 1px;
}

div.page-login button.btn-block.btn-primary:hover {
    background-color: #1681df;
    background-image: linear-gradient(to bottom, #1684e3, #157eda);
}

div.page-login button.btn-block.btn-warning {
    background-color: #da8044;
    background-image: linear-gradient(to bottom, #da854c, #da7b3c);
    border: 1px solid #da712b;
    box-shadow: rgba(0, 0, 0, 0.2) 0 1px 2px 0;
    color: #000;
    text-shadow: #da712b 0 -1px 1px;
}

div.page-login button.btn-block.btn-warning:hover {
    background-color: #ec9053;
    background-image: linear-gradient(to bottom, #ec965c, #ec8b4a);
}

div.page-login p.lost-pwd {
    text-align: left;
    padding-top: 0.25rem;
}

div.page-register {
    width: 80rem;
    top: 45vh;
}

div.page-register fieldset {
    height: 60vh;
}

div.page-register div.div-multi-collapse {
    position: relative;
    height: 100%;
    background-color: #fff;
    padding: 0.5rem 1rem;
    border: 1px solid var(--bc-content);
    border-top: 0;
}

@media (max-width: 1599.98px) {
    div.page-register {
        width: 80rem;
        top: 48vh;
    }

    div.page-register fieldset {
        height: 58vh;
    }

    div#divtab-04-sub-01 {
        height: 85%;
        overflow-y: scroll;
    }
}

button.g-recaptcha, div.grecaptcha-badge {
    bottom: 50px !important;
}

div#informativa {
    position: absolute;
    top: 24vh;
    height: 70vh;
}

div#informativa div.testo-informativa {
    overflow: auto;
}

div#informativa .btn {
    width: 10vw;
}

#footer-login {
    background-color: var(--bg-footer);
    border-top: 4px solid var(--bc-footer);
    height: 5vh;
    padding-top: 1vh;
    font-size: clamp(9px, 0.8vw, 14px);
}

#footer-login a {
    color: var(--ac-footer);
    text-decoration: none;
}

#footer-login a:hover {
    color: var(--ah-footer);
    text-decoration: none;
}