@charset "UTF-8";
/**
* ! =========================================================
* ! fa-cm-styles.scss - Estilos base Fuentes Abasolo
* !
* ! Autor: David Murillo | Frontend Developer
* ! Versión: v1.0.0 | Fecha: 17/06/2025
* !
* ! Última Actualización: 17/06/2025 por David Murillo
* ! Changelog:
* ! - [v1.0.0] Versión inicial. Estilos base.
* !
* ! Dependencias:
* ! 
* ! 
* !
* ! Notas:
* ! - Este archivo contiene estilos generales para el sitio de Abasolo.
* !
* ! =========================================================
*/
/* ====================================================
*                     SYSTEM STRUCTURE
*
* 0. LIMPIEZA DE ETIQUETAS STYLE
* 1. IMPORTE EL CORE DE ESTILOS CORPORATIVO MERLOS
* 2. ABSTRACTS ESPECÍFICOS DEL PROYECTO
* 3. TEMAS
* 4. LAYOUTS ESPECÍFICOS DEL PROYECTO
* 5. PÁGINAS ESPECÍFICAS DEL PROYECTO
* ====================================================
*/
.fa-bg-login-image {
  background-image: url("/media/images/backgrounds/fa-bg-image.png");
}

.fa-login-logo {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: var(--color-text-primary);
  font-family: var(--font-family-sans-serif);
}
.fa-login-logo__image {
  max-width: 150px;
  height: auto;
  display: block;
}
.fa-login-logo__text {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bolder;
  text-align: center;
  font-size: 2rem;
  color: black;
}

.house-profile {
  background-color: #f5f7fa;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  margin: 0 auto;
}
.house-profile__header {
  padding: 20px;
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #eee;
}
.house-profile__title {
  font-size: 1.4rem;
  color: #2c3e50;
  margin: 0;
}
.house-profile__icon {
  margin-right: 10px;
  color: #2c3e50;
}
.house-profile__actions {
  display: flex;
  gap: 10px;
}
.house-profile__button {
  padding: 8px 16px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease;
}
.house-profile__button--primary {
  background-color: #2c3e50;
  color: white;
}
.house-profile__button--secondary {
  background-color: #ecf0f1;
  color: #2c3e50;
}
.house-profile__content {
  padding: 20px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
.house-profile__overview {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 20px;
}
@media (max-width: 768px) {
  .house-profile__overview {
    grid-template-columns: 1fr;
  }
}

.house-card {
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.house-card__header .house-card__image {
  height: 180px;
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
}
.house-card__header .house-card__image img {
  width: 100%;
  height: auto;
}
.house-card__status {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 500;
}
.house-card__status--occupied {
  background-color: rgba(39, 174, 96, 0.1);
  color: #27ae60;
}
.house-card__status--vacant {
  background-color: rgba(243, 156, 18, 0.1);
  color: #f39c12;
}
.house-card__title {
  padding: 15px 20px 5px;
  font-size: 1.3rem;
  color: #2c3e50;
  margin: 0;
}
.house-card__address {
  padding: 0 20px 15px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  margin: 0;
}
.house-card__icon {
  color: #2c3e50;
}
.house-card__details {
  padding: 0 20px 20px;
}
.house-card__detail {
  display: flex;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}
.house-card__detail:last-child {
  border-bottom: none;
}
.house-card__label {
  color: #666;
  font-weight: 500;
}
.house-card__value {
  color: #2c3e50;
  font-weight: 600;
}

.house-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.house-stats__item {
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
}
.house-stats__item--primary .house-stats__icon {
  background-color: #2c3e50;
}
.house-stats__item--success .house-stats__icon {
  background-color: #27ae60;
}
.house-stats__item--warning .house-stats__icon {
  background-color: #f39c12;
}
.house-stats__item--info .house-stats__icon {
  background-color: #3498db;
}
.house-stats__icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 1.2rem;
}
.house-stats__info {
  flex: 1;
}
.house-stats__label {
  font-size: 0.8rem;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: block;
  margin-bottom: 5px;
}
.house-stats__value {
  font-size: 1.4rem;
  font-weight: 700;
  color: #2c3e50;
}

.house-tabs {
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.house-tabs__nav {
  border-bottom: 1px solid #eee;
}
.house-tabs__list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.house-tabs__item {
  margin-bottom: -1px;
}
.house-tabs__item--active .house-tabs__link {
  color: #2c3e50;
  border-bottom: 3px solid #2c3e50;
}
.house-tabs__link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 15px 20px;
  text-decoration: none;
  color: #666;
  font-weight: 500;
  border-bottom: 3px solid transparent;
  transition: all 0.2s ease;
}
.house-tabs__link:hover {
  color: #2c3e50;
}
.house-tabs__icon {
  font-size: 0.9rem;
}
.house-tabs__content {
  padding: 20px;
}

.house-tab {
  display: none;
}
.house-tab--active {
  display: block;
}

.house-summary {
  margin-top: 30px;
}
.house-summary__card {
  background-color: white;
  padding: 20px;
  max-width: 500px;
}
.house-summary__title {
  margin-bottom: 20px;
  color: #2c3e50;
}
.house-summary__progress {
  height: 30px;
  background-color: #eee;
  border-radius: 15px;
  margin-bottom: 20px;
  overflow: hidden;
}
.house-summary__progress-bar {
  height: 100%;
  background-color: #27ae60;
  border-radius: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 0.8rem;
  font-weight: 500;
}
.house-summary__progress-text {
  padding: 0 10px;
}
.house-summary__details {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.house-summary__detail span {
  display: block;
  font-size: 0.8rem;
  color: #666;
  margin-bottom: 5px;
}
.house-summary__detail strong {
  font-size: 1.1rem;
}
.house-summary__value--danger {
  color: #e74c3c;
}

.text-right {
  text-align: right !important;
}

.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.requerido {
  color: red;
}

.select2-selection__choice {
  background: #0665d0 !important;
  border-color: #0665d0 !important;
  color: white !important;
}

.modal div.modal-dialog div.modal-content div.modal-body div span {
  display: block;
  width: 100%;
  text-align: center;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: white !important;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 10px;
}

#overlay {
  position: fixed;
  top: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  display: none;
  background: rgba(0, 0, 0, 0.6);
}

.cv-spinner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.spinner {
  width: 40px;
  height: 40px;
  border: 4px #ddd solid;
  border-top: 4px #2e93e6 solid;
  border-radius: 50%;
  animation: sp-anime 0.8s infinite linear;
}

@keyframes sp-anime {
  100% {
    transform: rotate(360deg);
  }
}
.text-right {
  text-align: right !important;
}

.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.requerido {
  color: red;
}

.hide {
  display: none !important;
}

.show {
  display: inline !important;
}

.select2-selection__choice {
  background: #0665d0 !important;
  border-color: #0665d0 !important;
  color: white !important;
}

.modal div.modal-dialog div.modal-content div.modal-body div span {
  display: block;
  width: 100%;
  text-align: center;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: white !important;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 10px;
}

.nav-tabs-alt .nav-item .show {
  position: relative;
  float: left;
}

.input-uniform {
  height: 40px !important;
  font-size: 14px !important;
  padding: 0.375rem 0.75rem !important;
  line-height: 1.5 !important;
  border-radius: 0.25rem !important;
}

.input-uniform::placeholder {
  color: #6c757d !important;
}

.form-select.input-uniform {
  padding-right: 2.25rem !important;
}

body {
  font-family: "Arimo", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

.sidebar-user-info {
  padding: 30px 10px;
  background-color: #2c3e50;
  color: #ecf0f1;
  border-bottom: 1px solid #34495e;
  font-size: 13px;
}

.sidebar-user-info-inner {
  text-align: center;
}

.user-profile {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #ecf0f1;
  margin-bottom: 15px;
}

.user-profile img {
  border: 2px solid #3498db;
  width: 50px;
  height: 50px;
  transition: transform 0.3s ease, border-color 0.3s ease;
}

.user-profile img:hover {
  transform: scale(1.1);
  border-color: #2980b9;
}

.user-profile span {
  margin-left: 8px;
  text-align: left;
  font-size: 10px;
}

.user-profile span strong {
  display: block;
  font-size: 14px;
  font-weight: bold;
}

.user-profile span strong, .user-profile span {
  transition: color 0.3s ease;
}

.user-profile:hover span strong, .user-profile:hover span {
  color: #3498db;
}

.user-links {
  margin-top: 8px;
  padding: 0;
}

.user-links li {
  width: 50%;
  margin-bottom: 8px;
  float: left;
}

.user-links li a {
  color: #ecf0f1;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s ease;
  font-size: 12px;
}

.user-links li a:hover {
  color: #3498db;
}

.user-links li a i {
  margin-right: 6px;
  font-size: 12px;
}

.logout-link a {
  color: #e74c3c;
  font-size: 12px;
}

.logout-link a:hover {
  color: #c0392b;
}

.user-profile img {
  border: 2px solid #3498db;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transition: transform 0.3s ease, border-color 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.user-profile img:hover {
  transform: scale(1.1);
  border-color: #2980b9;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.row-squares {
  align-items: center;
  justify-content: center;
}

.logo-icon {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  max-width: 200px;
}

.logo-icon img {
  width: 100%;
  height: auto;
}

.form-alta input.datepicker {
  z-index: 0 !important;
}

.form-alta .dark-mode .datepicker {
  background-color: #343a40; /* Color oscuro */
  color: #fff;
  border-color: #6c757d;
}

.form-alta .dark-mode .datepicker table {
  background-color: #343a40;
  color: #fff;
}

.form-alta .dark-mode .datepicker td,
.form-alta .dark-mode .datepicker th {
  color: #fff;
}

.form-alta .dark-mode .datepicker .day:hover,
.form-alta .dark-mode .datepicker .focused {
  background-color: #495057;
}

#btnAgregarSolicitud {
  max-width: 200px;
  margin: 0 auto;
}

.select2-container .select2-selection--single {
  display: inline-block;
  height: auto;
  line-height: 40px !important;
  width: 100%;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  line-height: 40px !important;
  height: 40px;
  width: 40px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 40px !important;
}

.smini-hidden {
  font-size: 14px;
}

.select-w-x span span span span span.select2-selection__clear {
  display: none !important;
}

/*# sourceMappingURL=fa-cm-styles.css.map */
