/* Estilos gerais */
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.min-vh-100 {
    min-height: 100vh;
}

/* Sidebar */
.sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
    padding: 48px 0 0;
    box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}

.sidebar .nav-link {
    font-weight: 500;
    color: #333;
}

.sidebar .nav-link.active {
    color: #0d6efd;
}

.sidebar .nav-link:hover {
    color: #0d6efd;
}

.sidebar .nav-link i {
    margin-right: 4px;
}

/* Conteúdo principal */
main {
    padding-top: 1rem;
}

/* Cards */
.card-img-top {
    height: 180px;
    object-fit: cover;
}

/* Tabelas */
.table-responsive {
    overflow-x: auto;
}

/* Formulários */
.needs-validation .invalid-feedback {
    display: none;
}

.needs-validation .was-validated .form-control:invalid ~ .invalid-feedback,
.needs-validation .was-validated .form-select:invalid ~ .invalid-feedback {
    display: block;
}

/* Alertas */
.alert {
    margin-bottom: 1rem;
}

/* Paginação */
.pagination {
    margin-top: 1rem;
}

/* Imagens */
.img-thumbnail {
    max-width: 100%;
    height: auto;
}

/* Responsividade */
@media (max-width: 767.98px) {
    .sidebar {
        top: 5rem;
    }
}



/* Container principal do carrossel */
#carrosselImovel {
    width: 100%;
    height: 600px; /* Altura fixa que você deseja */
    overflow: hidden;
    position: relative;
    background-color: #f8f9fa; /* Cor de fundo para áreas vazias */
}

/* Container de cada imagem */
.carousel-inner {
    width: 100%;
    height: 100%;
}

/* Container que mantém a proporção */
.image-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

/* Estilo das imagens */
.carousel-item img {
    object-fit: contain; /* Mantém a proporção sem cortar */
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
}

/* Para manter proporção quadrada (opcional) */
.carousel-item {
    height: 600px; /* Mesma altura do container */
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: #ff0000; /* Cor de fundo */
    border-radius: 50%;
    width: 40px;
    height: 40px;
    background-size: 50% 50%;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}