/* ==========================================================
   CASAS EN 360 — Paleta de colores
   Edita solo estas variables para cambiar todo el sitio
   ========================================================== */
:root {
    --propia-blue: #22bef8;   /* PropIA Blue     — primario dominante, CTAs */
    --navy:        #0a2d4d;   /* Ocean Deep      — header, footer, secciones */
    --navy-deep:   #061b30;   /* Midnight Navy   — footer-bottom, fondo profundo */
    --mist:        #d6f1fc;   /* Sky Mist        — fondos suaves, hover claro */
    --gold:        #f0a500;   /* Marine Gold     — precios, badges, acento cálido */

    /* Alias semánticos */
    --color-primary:      var(--propia-blue);
    --color-primary-dark: #0ea3d8;
    --color-primary-light:var(--mist);
    --color-secondary:    #5dd2f9;
    --color-accent:       var(--gold);
    --color-dark:         var(--navy);
    --color-dark-deep:    var(--navy-deep);
    --color-orchid:       #22bef8;             /* alias — no usado como orchid */

    /* Texto */
    --text-dark:    #2d2d2d;
    --text-mid:     #636363;
    --text-light:   #959595;
}

/* ==========================================================
   OVERRIDE HOUZEZ — Azul primario (#00aeef → coral)
   ========================================================== */

/* Links globales */
a { color: var(--color-primary); }
a:hover, a:focus { color: var(--color-primary-dark); }

/* Color primario houzez */
.color-primary { color: var(--color-primary) !important; }

/* Íconos de estrella y activos */
.top-ratings .fa-star        { color: var(--honey); }
.label-featured               { background-color: var(--honey) !important; }

/* Botón primario */
.btn-primary {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--color-primary-dark) !important;
    border-color: var(--color-primary-dark) !important;
}

/* Botón de búsqueda en banner */
.banner-search-main .btn-secondary {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}
.banner-search-main .btn-secondary:hover {
    background-color: var(--color-primary-dark) !important;
}

/* Botón "Publicar propiedad" en header */
.header-section-4 .header-right .btn-default,
.header-section-default .header-right .btn-default {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}
.header-section-4 .header-right .btn-default:hover {
    background-color: var(--color-primary-dark) !important;
}

/* Header fondo — navy sólido con línea cyan */
#header-section {
    background: var(--navy) !important;
    border-bottom: 3px solid var(--propia-blue);
}
#header-section .logo img { filter: brightness(0) invert(1); }

/* Links en header */
#header-section .navi > ul > li > a,
#header-section .header-right a {
    color: #fff !important;
}
#header-section .navi > ul > li > a:hover,
#header-section .navi > ul > li.active > a {
    color: var(--blush) !important;
}

/* Sub-menus */
#header-section .navi .sub-menu { background: var(--color-dark-deep) !important; }
#header-section .navi .sub-menu li a { color: #fff !important; }
#header-section .navi .sub-menu li a:hover { color: var(--blush) !important; }

/* Header sticky */
.sticky-header { background: var(--color-dark) !important; }

/* Active nav */
.navi ul li.current-menu-item > a,
.navi ul li.active > a { color: var(--color-primary) !important; }

/* Menú mobile */
.nav-trigger { color: var(--color-primary) !important; }

/* Breadcrumb */
.breadcrumbs a,
.breadcrumb li.active { color: var(--color-primary) !important; }

/* Property label status */
.label-status.label-default { background-color: var(--color-orchid) !important; }
.label-status.label-primary { background-color: var(--color-primary) !important; }

/* Precios */
.price h3 { color: var(--color-primary) !important; }
.price .rant { color: var(--text-mid); }

/* Botón "Detalles" en cards */
.property-item .btn-primary { font-size: 13px; }

/* Paginación */
.pagination > li > a,
.pagination > li > span {
    color: var(--color-primary);
}
.pagination > .active > a,
.pagination > .active > span {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

/* Tabs activos */
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover {
    color: var(--color-primary) !important;
    border-bottom-color: var(--color-primary) !important;
}

/* Input focus */
.form-control:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 2px rgba(255,107,94,.15) !important;
}

/* Selectpicker activo */
.bootstrap-select.open .btn.btn-default,
.bootstrap-select .btn.btn-default:focus {
    border-color: var(--color-primary) !important;
    outline: none !important;
}

/* Módulo título */
.houzez-module .module-title h2 { color: var(--color-dark); }

/* Header — alineación vertical general */
.header-section-4 .container,
.header-section-default .container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

.header-section-4 .header-left,
.header-section-default .header-left {
    display: flex !important;
    align-items: center !important;
    gap: 0;
}

/* Header — contenedor derecho */
.header-section-4 .header-right,
.header-section-default .header-right {
    display: flex !important;
    align-items: center !important;
    gap: 8px;
    white-space: nowrap;
    float: none !important;
}

/* Header — botones auth */
.header-link-login {
    color: rgba(255,255,255,.9) !important;
    font-size: 14px;
    margin-right: 12px;
    text-decoration: none;
}
.header-link-login:hover { color: #fff !important; text-decoration: underline; }

.btn-register {
    background: rgba(255,255,255,.15) !important;
    border: 2px solid rgba(255,255,255,.6) !important;
    color: #fff !important;
    font-size: 13px;
    padding: 7px 18px;
    border-radius: 6px;
    transition: background .2s, border-color .2s;
}
.btn-register:hover {
    background: rgba(255,255,255,.28) !important;
    border-color: #fff !important;
}

.btn-publish {
    font-size: 13px;
    padding: 7px 18px;
    border-radius: 6px;
}

/* Header — usuario autenticado */
.header-user-auth {
    display: flex;
    align-items: center;
    gap: 8px;
}
.header-avatar {
    width: 32px; height: 32px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.5);
    object-fit: cover;
}
.header-username {
    color: rgba(255,255,255,.9);
    font-size: 14px;
    max-width: 130px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.header-logout {
    color: rgba(255,255,255,.6) !important;
    font-size: 16px;
    margin-left: 4px;
    transition: color .2s;
}
.header-logout:hover { color: #fff !important; }

/* Footer — navy */
.footer-v2 { background-color: var(--navy) !important; }
.footer-v2 .footer { background-color: var(--navy) !important; }
.footer-v2 .footer-bottom { background-color: var(--navy-deep) !important; }
.footer-v2 .widget-title { color: #fff !important; border-bottom: 2px solid rgba(255,255,255,.3); padding-bottom: 8px; }
.footer-v2 p, .footer-v2 li { color: rgba(255,255,255,.85) !important; }
.footer-v2 a { color: rgba(255,255,255,.85) !important; }
.footer-v2 a:hover { color: #fff !important; text-decoration: underline; }
.footer-v2 .social a { color: #fff !important; }

/* Botón back-to-top */
.back-top {
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}

/* Location module hover */
.location-item:hover .location-info { background: var(--color-primary) !important; }

/* ==========================================================
   OVERRIDE Bootstrap primary (#337ab7 → coral)
   ========================================================== */
.btn-primary.bootstrap {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

/* ==========================================================
   PALETA MANTENIMIENTO
   ========================================================== */
#maintenance-section { background: linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 60%, #0d4a7a 100%); }
.divider           { background: var(--color-primary) !important; }
.maintenance-icon  { color: var(--honey) !important; }
.contact-block a   { color: var(--honey) !important; }
.social-links a:hover { background: var(--color-primary) !important; }
.powered-by img    { opacity: .75; }

/* Toast de favoritos */
.fav-toast {
    position: fixed;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%) translateY(20px);
    background: #0a2d4d;
    color: #fff;
    padding: 12px 20px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
    box-shadow: 0 4px 20px rgba(0,0,0,.25);
    z-index: 2000;
    opacity: 0;
    transition: opacity .3s, transform .3s;
    white-space: nowrap;
}
.fav-toast .fa { color: #e74c3c; margin-right: 6px; }
.fav-toast a   { color: #22bef8; font-weight: 700; margin-left: 4px; text-decoration: underline; }
.fav-toast-show { opacity: 1; transform: translateX(-50%) translateY(0); }
