/* Velzon Material authentication and error pages. */
.icat-auth { background-color: var(--vz-body-bg); }
.icat-auth .icat-auth-page {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3rem 0 1.5rem;
    background-image: radial-gradient(ellipse at 15% 10%, rgba(var(--vz-primary-rgb), .06), transparent 45%), radial-gradient(ellipse at 95% 90%, rgba(var(--vz-secondary-rgb), .08), transparent 50%);
}
.icat-auth .auth-page-content { position: relative; width: 100%; padding: 0; }
.icat-auth .icat-auth-card {
    border: 1px solid var(--vz-border-color);
    border-radius: 1rem;
    box-shadow: var(--vz-box-shadow-lg);
}
.icat-auth-intro {
    position: relative;
    overflow: hidden;
    min-height: 580px;
    background: linear-gradient(140deg, var(--vz-primary), var(--vz-secondary));
}
.icat-auth-intro::after {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    right: -210px;
    bottom: -100px;
    border: 65px solid rgba(var(--vz-white-rgb), .04);
    border-radius: 50%;
    pointer-events: none;
}
.icat-auth-institution {
    position: relative;
    align-self: flex-start;
    padding: .8rem 1rem;
    border-radius: .5rem;
    background-color: var(--vz-white);
}
.icat-auth-institution img { max-width: 100%; height: auto; }
.icat-auth-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border: 1px solid rgba(var(--vz-white-rgb), .3);
    border-radius: 1rem;
    color: var(--vz-white);
    background: rgba(var(--vz-white-rgb), .1);
    font-size: 30px;
}
.icat-auth-eyebrow { color: rgba(var(--vz-white-rgb), .8); font-size: .7rem; font-weight: 600; letter-spacing: .16em; }
.icat-auth-intro h2 { font-size: clamp(1.65rem, 2.2vw, 2rem); line-height: 1.35; }
.icat-auth-description, .icat-auth-intro-footer { color: rgba(var(--vz-white-rgb), .8); line-height: 1.7; }
.icat-auth-intro-footer { border-top: 1px solid rgba(var(--vz-white-rgb), .18); font-size: .78rem; }
.icat-auth-logo { display: block; width: 142px; height: auto; }
.icat-auth-form .form-control { min-height: 44px; }
.icat-auth-form .icat-password-toggle { height: 44px; border: 0; }
.icat-auth-form #password.is-invalid { background-image: none; }
.icat-auth-submit { min-height: 44px; }
.icat-auth-footer { position: relative; padding: 1.5rem 1rem 0; }
.icat-error-content > .card {
    overflow: hidden;
    border: 0;
    border-radius: 1rem;
    box-shadow: var(--vz-box-shadow-lg) !important;
}
.icat-error-content .card-header { padding: 1.25rem; }
.icat-error-content .card-body { padding-left: 2rem; padding-right: 2rem; }
.icat-error-content .display-1 { font-size: clamp(4.5rem, 12vw, 6rem); }
@media (max-width: 991.98px) {
    .icat-auth .icat-auth-page { padding-top: 2rem; }
    .icat-auth-card { max-width: 520px; margin-inline: auto; }
}
@media (max-width: 575.98px) {
    .icat-auth .icat-auth-page { padding-top: 1rem; }
    .icat-error-content .card-body { padding-left: 1.25rem; padding-right: 1.25rem; }
}
