﻿/* =========================
   personalizado - bootstrap skill
   ========================= */
:root {
    --ui-page-max: 1200px;
    --ui-space-1: 0.75rem;
}

.ui-page {
    max-width: var(--ui-page-max);
    margin: 0 auto;
    padding: 1.5rem;
}

.ui-title {
    margin-bottom: 1rem;
}

.ui-form {
    display: grid;
    gap: var(--ui-space-1);
}

.ui-btn {
    min-width: 8rem;
}

.ui-card {
    border-radius: 0.5rem;
}

.ui-modal .modal-header {
    border-bottom: 0;
}

.ui-modal .modal-footer {
    border-top: 0;
}

/* Keep Bootstrap small select visible even with theme overrides. */
.form-select.form-select-sm {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.25rem;
    background-size: 6px;
    min-height: calc(1.5em + 0.5rem + 2px);
}

.avatar-composite {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    border-radius: 50%;
}

.avatar-composite.avatar-composite-lg {
    width: 60px;
    height: 60px;
}

.avatar-composite .avatar-composite__photo {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #fff;
    display: block;
}

.avatar-composite .avatar-composite__photo--placeholder {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #fff;
    background: #e9ecef;
    color: #6c757d;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}

.avatar-composite .avatar-composite__logo {
    position: absolute;
    right: -18px;
    top: -18px;
    bottom: auto;
    width: 30px;
    height: 30px;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #fff;
    background: #fff;
    display: block;
    z-index: 1;
}

.avatar-composite .avatar-composite__logo--placeholder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    color: #fff;
    background: #4ca6b6;
    text-transform: uppercase;
}

/* Disable template top loader bar (Pace). */
.pace,
.pace .pace-progress {
    display: none !important;
}

/* Keep the side navigator collapsed until the user clicks a menu level. */
.nxl-navigation .navbar-content .nxl-submenu {
    display: none;
}

/* Login art overrides load after the vendor theme. */
.login-auth-art,
.login-auth-art .auth-cover-content-inner,
.login-auth-art .auth-cover-content-wrapper,
.login-auth-art .auth-cover-sidebar-inner,
html.app-skin-dark .login-auth-art,
html.app-skin-dark .login-auth-art .auth-cover-content-inner,
html.app-skin-dark .login-auth-art .auth-cover-content-wrapper,
html.app-skin-dark .login-auth-art .auth-cover-sidebar-inner {
    background: #fff !important;
}

.login-auth-art {
    min-height: 100vh;
    overflow: hidden;
}

.login-auth-art .auth-cover-content-inner {
    overflow: hidden;
}

.login-auth-art .auth-cover-content-inner .auth-cover-content-wrapper {
    padding: 0 !important;
}

.login-auth-art .auth-cover-content-inner .auth-cover-content-wrapper .auth-img {
    width: 100% !important;
    height: 100vh !important;
    max-height: none !important;
    margin: 0 !important;
}

.login-auth-art .login-abstract-figure {
    display: block;
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.login-auth-art .auth-cover-sidebar-inner {
    border-left: 0 !important;
    box-shadow: none !important;
}

.login-logo-ret {
    width: 300px;
    max-width: 86%;
}

.login-logo-ret img {
    display: block;
    width: 100%;
    height: auto;
}

body:has(.login-auth-art) {
    background: #fff !important;
}

