/* ChatDecitas Home Clean v43
   Rediseño exclusivo de portada.
   No afecta landings, sala.html ni Socket.IO.
*/

html.ui-v36-home body{
    background:#f8f3f6 !important;
    color:#2b1f24;
}

/* HEADER: corto, limpio y sin segunda navegación */
html.ui-v36-home header{
    min-height:64px;
    padding:10px clamp(16px,4vw,34px) !important;
}

html.ui-v36-home header nav ul{
    align-items:center;
    gap:4px;
    flex-wrap:nowrap;
}

html.ui-v36-home header nav ul li{
    margin:0 !important;
}

html.ui-v36-home header nav ul li a{
    display:block;
    padding:8px 10px;
    border-radius:9px;
    white-space:nowrap;
}

html.ui-v36-home header nav ul li a:hover,
html.ui-v36-home header nav ul li a:focus-visible{
    background:rgba(255,255,255,.11);
    color:#fff;
    outline:none;
}

/* CONTENEDOR PRINCIPAL */
html.ui-v36-home .container.home-shell-v43{
    display:block !important;
    width:calc(100% - 28px);
    max-width:1100px !important;
    margin:24px auto 30px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

html.ui-v36-home .home-shell-v43 .main-content{
    width:100%;
    min-width:0;
}

/* HERO */
.home-hero-v43{
    padding:clamp(24px,5vw,44px);
    border:1px solid #f0dbe4;
    border-radius:22px;
    background:
        radial-gradient(circle at 92% 8%,rgba(217,54,111,.10),transparent 15rem),
        linear-gradient(145deg,#fff 0%,#fff8fb 100%);
    box-shadow:0 14px 38px rgba(104,25,53,.07);
    text-align:center;
}

.home-eyebrow-v43{
    display:inline-flex;
    margin:0 0 10px;
    padding:6px 11px;
    border-radius:999px;
    background:#fff0f5;
    color:#a80d46;
    font-size:.82rem;
    font-weight:800;
    letter-spacing:.01em;
}

.home-hero-v43 h1{
    max-width:760px;
    margin:0 auto 12px !important;
    color:#741033 !important;
    font-size:clamp(1.8rem,5vw,2.65rem) !important;
    line-height:1.08;
    letter-spacing:-.035em;
}

.home-hero-v43 > p:last-child{
    max-width:720px;
    margin:0 auto;
    color:#66555c;
    font-size:clamp(.98rem,2vw,1.08rem);
    line-height:1.65;
}

/* BUSCADOR */
html.ui-v36-home .home-search-panel-v43{
    position:relative;
    margin:16px 0 !important;
    padding:18px !important;
    border:1px solid #ead6de !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(104,25,53,.055) !important;
}

html.ui-v36-home .home-search-panel-v43 h2{
    margin:0 0 11px !important;
    padding:0 !important;
    border:0 !important;
    color:#741033 !important;
    font-size:1.08rem !important;
}

html.ui-v36-home .home-search-v42 input[type="search"]{
    min-height:52px !important;
    border:1px solid #d8c4cc !important;
    border-radius:12px !important;
    padding:12px 15px !important;
    font-size:1rem;
}

html.ui-v36-home .home-search-v42 input[type="search"]:focus{
    border-color:#b72772 !important;
    outline:3px solid rgba(183,39,114,.13) !important;
}

html.ui-v36-home .home-search-results-v42{
    border-radius:12px !important;
}

/* CUATRO BLOQUES PRINCIPALES */
.home-category-grid-v43{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin:16px 0;
}

.home-category-card-v43{
    min-width:0;
    padding:19px;
    border:1px solid #ecd8e1;
    border-radius:18px;
    background:#fff;
    box-shadow:0 7px 22px rgba(104,25,53,.055);
}

.home-category-card-v43:nth-child(1),
.home-category-card-v43:nth-child(4){
    background:linear-gradient(145deg,#fff,#fff8fb);
}

.home-category-title-v43{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:7px;
}

.home-category-icon-v43{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border-radius:11px;
    background:#fff0f5;
    font-size:1.12rem;
}

.home-category-card-v43 h2{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    color:#741033 !important;
    font-size:1.13rem !important;
}

.home-category-card-v43 p{
    margin:0 0 13px;
    color:#74646b;
    font-size:.9rem;
    line-height:1.5;
}

.home-chip-list-v43{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    list-style:none;
    margin:0;
    padding:0;
}

.home-chip-list-v43 li{
    margin:0;
}

.home-chip-list-v43 a{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:7px 10px;
    border:1px solid #efd5df;
    border-radius:999px;
    background:#fff5f8;
    color:#8a1644;
    text-decoration:none;
    font-size:.88rem;
    font-weight:700;
}

.home-chip-list-v43 a:hover,
.home-chip-list-v43 a:focus-visible{
    border-color:#d9366f;
    background:#ffeaf1;
    outline:3px solid rgba(217,54,111,.12);
    outline-offset:1px;
}

/* DESTACADAS */
html.ui-v36-home .home-featured-v42{
    margin:16px 0 !important;
    padding:20px !important;
    border:1px solid #ead6de !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:none !important;
}

html.ui-v36-home .home-featured-v42 h2,
html.ui-v36-home .home-live-v42 h2{
    margin:0 0 14px !important;
    padding:0 !important;
    border:0 !important;
    color:#741033 !important;
    font-size:1.25rem !important;
}

html.ui-v36-home .home-featured-v42 .room-list{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:9px !important;
}

html.ui-v36-home .home-featured-v42 .room-item a{
    display:flex !important;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:9px 10px !important;
    border:1px solid #efd7e0 !important;
    border-radius:12px !important;
    background:#fff8fb !important;
    color:#85143f !important;
    font-size:.91rem !important;
    font-weight:750 !important;
}

html.ui-v36-home .home-featured-v42 .room-item a:hover,
html.ui-v36-home .home-featured-v42 .room-item a:focus-visible{
    border-color:#d9366f !important;
    background:#ffeef4 !important;
}

/* ACTIVIDAD REAL */
html.ui-v36-home .home-live-v42{
    margin:16px 0 !important;
    padding:20px !important;
    border:1px solid #d8eadf !important;
    border-radius:18px !important;
    background:#fbfffc !important;
    box-shadow:none !important;
}

html.ui-v36-home .home-live-v42 .room-list a{
    border-radius:12px !important;
    background:#fff !important;
}

/* DIRECTORIO INFERIOR */
.home-directory-v43{
    margin-top:26px;
}

.home-section-heading-v43{
    margin-bottom:13px;
}

.home-section-heading-v43 h2{
    margin:0 0 5px;
    color:#741033;
    font-size:1.45rem;
}

.home-section-heading-v43 p{
    margin:0;
    color:#74646b;
    line-height:1.55;
}

.home-directory-grid-v43{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
}

html.ui-v36-home .home-directory-v43 .room-category-block,
html.ui-v36-home .home-more-v43 .room-category-block{
    margin:0 !important;
    padding:17px !important;
    border:1px solid #eadce2 !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:none !important;
}

html.ui-v36-home .home-directory-v43 .room-category-block h3,
html.ui-v36-home .home-more-v43 .room-category-block h2{
    margin:0 0 11px;
    padding:0;
    border:0;
    color:#741033;
    font-size:1.02rem;
}

html.ui-v36-home .home-directory-v43 .room-list,
html.ui-v36-home .home-more-v43 .room-list{
    display:flex !important;
    flex-wrap:wrap;
    gap:7px !important;
}

html.ui-v36-home .home-directory-v43 .room-list li,
html.ui-v36-home .home-more-v43 .room-list li{
    width:auto;
}

html.ui-v36-home .home-directory-v43 .room-list a,
html.ui-v36-home .home-more-v43 .room-list a{
    display:inline-flex !important;
    width:auto !important;
    min-height:34px;
    align-items:center;
    padding:6px 9px !important;
    border:1px solid #eee1e6 !important;
    border-radius:9px !important;
    background:#fffafa !important;
    color:#6f263f !important;
    text-decoration:none !important;
    white-space:normal !important;
}

/* TEXTO SEO: presente, pero deja de dominar la portada */
html.ui-v36-home .main-content-info-block{
    margin:26px 0 0 !important;
    padding:clamp(20px,4vw,28px) !important;
    border:1px solid #eadce2 !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:none !important;
}

html.ui-v36-home .main-content-info-block h2{
    margin-top:0 !important;
    padding:0 !important;
    border:0 !important;
    color:#741033 !important;
    font-size:1.35rem !important;
}

html.ui-v36-home .main-content-info-block .random-rooms-subheading{
    color:#85143f !important;
    border:0 !important;
}

html.ui-v36-home .main-content-info-block a{
    color:#a80d46;
}

/* BLOQUE FINAL DE APOYO */
html.ui-v36-home .home-more-v43{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:13px;
    margin-top:14px;
}

/* FOOTER */
.site-footer-v43{
    width:100%;
    box-sizing:border-box;
    margin-top:34px;
    padding:34px 20px 24px;
    background:#2b1f24;
    color:#e9dde2;
}

.site-footer-grid-v43{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:26px;
    width:min(1100px,100%);
    margin:0 auto;
}

.site-footer-v43 h2{
    margin:0 0 11px;
    color:#fff;
    font-size:1rem;
}

.site-footer-v43 ul{
    list-style:none;
    margin:0;
    padding:0;
}

.site-footer-v43 li{
    margin:7px 0;
}

.site-footer-v43 a{
    color:#ddcbd2;
    text-decoration:none;
}

.site-footer-v43 a:hover,
.site-footer-v43 a:focus-visible{
    color:#fff;
    text-decoration:underline;
    outline:none;
}

.site-footer-copy-v43{
    width:min(1100px,100%);
    margin:27px auto 0;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.12);
    color:#baa9b0;
    text-align:center;
    font-size:.86rem;
}

/* ACCESIBILIDAD */
html.ui-v36-home a:focus-visible,
html.ui-v36-home button:focus-visible{
    outline:3px solid rgba(217,54,111,.28);
    outline-offset:3px;
}

/* TABLET */
@media (max-width:850px){
    html.ui-v36-home .home-featured-v42 .room-list{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .site-footer-grid-v43{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

/* MÓVIL */
@media (max-width:768px){
    html.ui-v36-home .container.home-shell-v43{
        width:calc(100% - 20px);
        margin:76px auto 22px !important;
    }

    html.ui-v36-home header nav ul{
        align-items:stretch;
        gap:2px;
    }

    html.ui-v36-home header nav ul li a{
        padding:11px 20px;
    }
}

@media (max-width:620px){
    .home-category-grid-v43,
    .home-directory-grid-v43,
    html.ui-v36-home .home-more-v43{
        grid-template-columns:1fr;
    }

    html.ui-v36-home .home-featured-v42 .room-list{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .home-hero-v43{
        padding:24px 17px;
        border-radius:17px;
    }

    html.ui-v36-home .home-search-panel-v43,
    html.ui-v36-home .home-featured-v42,
    html.ui-v36-home .home-live-v42{
        padding:15px !important;
        border-radius:15px !important;
    }

    .home-category-card-v43{
        padding:16px;
        border-radius:15px;
    }

    .site-footer-grid-v43{
        grid-template-columns:1fr 1fr;
        gap:20px;
    }
}

@media (max-width:420px){
    .site-footer-grid-v43{
        grid-template-columns:1fr;
    }
}

/* Menú Salas v43 */
html.ui-v36-home .nav-salas-v43{
    position:relative;
}

html.ui-v36-home .nav-salas-v43 details{
    position:relative;
}

html.ui-v36-home .nav-salas-v43 summary{
    list-style:none;
    cursor:pointer;
    padding:8px 10px;
    border-radius:9px;
    color:#fff;
    user-select:none;
}

html.ui-v36-home .nav-salas-v43 summary::-webkit-details-marker{
    display:none;
}

html.ui-v36-home .nav-salas-v43 summary::after{
    content:" ▾";
    font-size:.72em;
}

html.ui-v36-home .nav-salas-v43 details[open] summary,
html.ui-v36-home .nav-salas-v43 summary:hover,
html.ui-v36-home .nav-salas-v43 summary:focus-visible{
    background:rgba(255,255,255,.11);
    outline:none;
}

html.ui-v36-home .nav-salas-menu-v43{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    z-index:1500;
    display:block !important;
    min-width:190px;
    padding:7px !important;
    border:1px solid #ead6de;
    border-radius:13px;
    background:#fff;
    box-shadow:0 14px 34px rgba(55,15,30,.18);
}

html.ui-v36-home .nav-salas-menu-v43 li{
    margin:0 !important;
}

html.ui-v36-home .nav-salas-menu-v43 a{
    display:block;
    padding:9px 11px !important;
    border-radius:8px;
    color:#741033 !important;
}

html.ui-v36-home .nav-salas-menu-v43 a:hover,
html.ui-v36-home .nav-salas-menu-v43 a:focus-visible{
    background:#fff0f5 !important;
    color:#a80d46 !important;
}

html.ui-v36-home #tematicas,
html.ui-v36-home #regionales,
html.ui-v36-home #paises,
html.ui-v36-home #lgtb{
    scroll-margin-top:90px;
}

@media (max-width:768px){
    html.ui-v36-home .nav-salas-v43{
        width:100%;
    }

    html.ui-v36-home .nav-salas-v43 summary{
        padding:11px 20px;
    }

    html.ui-v36-home .nav-salas-menu-v43{
        position:static;
        width:auto;
        min-width:0;
        margin:4px 14px 5px;
        box-shadow:none;
    }
}

/* ======================================================
   FIX DEFINITIVO MENÚ SALAS — PC + MÓVIL
   ====================================================== */

html.ui-v36-home header{
    overflow:visible !important;
}

html.ui-v36-home .nav-salas-v43{
    position:relative !important;
}

html.ui-v36-home .nav-salas-v43 details{
    position:relative;
}

html.ui-v36-home .nav-salas-v43 summary{
    display:block;
    padding:8px 10px;
    border-radius:9px;
    color:#fff;
    cursor:pointer;
    white-space:nowrap;
    list-style:none;
    font:inherit;
}

html.ui-v36-home .nav-salas-v43 summary::-webkit-details-marker{
    display:none;
}

html.ui-v36-home .nav-salas-v43 summary::after{
    content:" ▾";
    margin-left:3px;
    font-size:.72em;
}

html.ui-v36-home .nav-salas-v43 details[open] > summary,
html.ui-v36-home .nav-salas-v43 summary:hover{
    background:rgba(255,255,255,.12);
}

html.ui-v36-home .nav-salas-v43 summary:focus-visible{
    outline:2px solid #fff;
    outline-offset:2px;
}

html.ui-v36-home .nav-salas-menu-v43{
    position:absolute !important;
    top:calc(100% + 9px);
    left:0;
    z-index:9999;
    display:grid !important;
    width:210px;
    padding:7px;
    gap:2px;
    border:1px solid #ead6de;
    border-radius:13px;
    background:#fff;
    box-shadow:0 16px 36px rgba(40,10,25,.22);
}

html.ui-v36-home .nav-salas-menu-v43 a{
    display:block !important;
    padding:10px 11px !important;
    border-radius:8px !important;
    color:#741033 !important;
    background:transparent !important;
    text-decoration:none;
    white-space:nowrap;
}

html.ui-v36-home .nav-salas-menu-v43 a:hover,
html.ui-v36-home .nav-salas-menu-v43 a:focus-visible{
    background:#fff0f5 !important;
    color:#a80d46 !important;
}

@media (max-width:768px){

    html.ui-v36-home .nav-links-container{
        overflow-y:auto !important;
        overflow-x:hidden !important;
    }

    html.ui-v36-home .nav-salas-v43{
        width:100% !important;
    }

    html.ui-v36-home .nav-salas-v43 details{
        width:100%;
    }

    html.ui-v36-home .nav-salas-v43 summary{
        width:100%;
        box-sizing:border-box;
        padding:11px 20px;
    }

    html.ui-v36-home .nav-salas-menu-v43{
        position:static !important;
        width:auto !important;
        margin:2px 14px 8px;
        padding:5px;
        box-shadow:none;
    }

    html.ui-v36-home .nav-salas-menu-v43 a{
        padding:10px 12px !important;
    }
}

/* Adultos +18 */
.home-adult-v43{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin:16px 0;
    padding:19px 20px;
    border:1px solid #eadce2;
    border-radius:18px;
    background:#fff;
}

.home-adult-v43 h2{
    margin:2px 0 5px;
    color:#741033;
    font-size:1.22rem;
}

.home-adult-label-v43{
    margin:0;
    color:#a80d46;
    font-size:.78rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.home-adult-copy-v43{
    margin:0;
    color:#74646b;
    font-size:.9rem;
    line-height:1.45;
}

#adultos,
#lgtb,
#tematicas,
#regionales,
#paises{
    scroll-margin-top:90px;
}

@media(max-width:700px){
    .home-adult-v43{
        display:block;
        padding:16px;
    }

    .home-adult-v43 .home-chip-list-v43{
        margin-top:13px;
    }
}
