html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Stile loading */

html:has(.loading.active) {
    overflow: hidden !important;
}

.content-loading {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    position: absolute;
    top: 45%;
}

.loading {
    background: hsla(0,0%,100%,.961);
    display: none;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99999
}

    .loading.active {
        display: block;
    }

    .loading.inline {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 9999;
    }

    .loading .spinner {
        -webkit-animation: s3 1.2s linear infinite;
        animation: s3 1.2s linear infinite;
        aspect-ratio: 1;
        background: radial-gradient(farthest-side,#2f6dd5 94%,transparent) top/6px 6px no-repeat,conic-gradient(transparent 30%,#2f6dd5);
        border-radius: 50%;
        -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 6px),#000 0);
        position: absolute;
        width: 4pc;
    }

.text-loader {
    width: 100%;
    position: absolute;
    display: flex;
    top: 55%;
    text-align: center;
    justify-content: center;
}

/* Stile animazione loading */

@-webkit-keyframes s3 {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes s3 {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}
/* Stile separatore */

.separator {
    border-bottom: 1px solid #d0d2d5;
    width: 100%;
    margin: 20px 0;
}
