/*
	Theme Name:   Jannah Child
	Theme URI:    http://jannah.tielabs.com/
	Description:  Jannh Child Theme
	Author:       TieLabs
	Author URI:   https://tielabs.com
	Template:     jannah
	Version:      1.0.2
	License:      license purchased
	License URI:  http://themeforest.net/licenses/regular_extended
	Tags:         Tags: two-columns, buddypress, left-sidebar, right-sidebar, custom-menu, editor-style, featured-images, full-width-template, microformats, rtl-language-support, sticky-post, threaded-comments, translation-ready
	Text Domain:  jannah-child
*/


/* write custom css after this line */
/* === BARRA INFERIOR FIJA MÓVIL === */
.qco-bottom-bar {
    position: fixed !important; /* por si algo lo pisa */
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: #111;          /* pon el color que quieras */
    border-top: 1px solid #333;
    box-shadow: 0 -2px 6px rgba(0,0,0,0.6);
}

/* UL de la barra */
#qco-bottom-menu.qco-bottom-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: space-around;
    align-items: stretch;
}

/* Cada item */
#qco-bottom-menu > li {
    flex: 1;
    text-align: center;
}

/* Enlaces: solo icono */
#qco-bottom-menu > li > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 8px 0 6px;
    text-decoration: none;
    color: #f5f5f5;

    font-size: 0;            /* escondemos el texto visualmente */
    line-height: 1;
}

/* Iconos con Font Awesome via ::before */
/* 1er item (Home) */
#qco-bottom-menu > li:nth-child(1) > a::before {
    content: "\f015";        /* fa-house */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    display: block;
}

/* 2º item (Geolocalizador / mapa) */
#qco-bottom-menu > li:nth-child(2) > a::before {
    content: "\f3c5";        /* fa-location-dot */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 20px;
    display: block;
}

/* Hover / activo */
#qco-bottom-menu > li > a:hover,
#qco-bottom-menu > li.current-menu-item > a {
    color: #f8d96b;          /* color marca qconciertos */
}

/* Solo mostrar en móvil */
@media (min-width: 769px) {
    .qco-bottom-bar {
        display: none;
    }
}

/* Reservar espacio abajo en móvil para que no tape contenido */
@media (max-width: 768px) {
    body {
        padding-bottom: 60px;
    }
}

/* Wrapper general */
.qconciertos-wall-wrapper {
    width: 100%;
    margin: 20px auto;
}

/* Grid estilo Instagram */
.qconciertos-wall-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 columnas en desktop */
    gap: 6px;
}

@media (max-width: 768px) {
    .qconciertos-wall-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 columnas en móvil */
    }
}

.qconciertos-wall-item {
    display: block;
    overflow: hidden;
    border-radius: 8px;
}

.qconciertos-wall-item img {
    width: 100%;
    aspect-ratio: 1 / 1; /* cuadradas como Instagram */
    object-fit: cover;
    transition: transform .25s ease-out;
}

.qconciertos-wall-item:hover img {
    transform: scale(1.06);
}
add_action('init', 'registrar_metadatos_fuente_rest');
function registrar_metadatos_fuente_rest() {
    register_meta('post', 'fuente', array(
        'show_in_rest' => true,
        'single' => true,
        'type' => 'string',
        'auth_callback' => function() {
            return current_user_can('edit_posts');
        }
    ));
}



/* =========================
   Tabs búsqueda QConciertos
   ========================= */

.qc-search-tabs{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:18px 0 8px;
	padding:0;
	border-bottom:1px solid #e5e7eb;
}

.qc-search-tab{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:10px 16px;
	background:#f3f4f6;
	color:#1f2937;
	text-decoration:none !important;
	font-weight:600;
	font-size:14px;
	line-height:1;
	border:1px solid #e5e7eb;
	border-bottom:none;
	border-radius:8px 8px 0 0;
	transition:all .2s ease;
	position:relative;
	top:1px;
}

.qc-search-tab:hover{
	background:#111827;
	color:#ffffff;
	border-color:#111827;
}

.qc-search-tab.is-active{
	background:#ffffff;
	color:#111827;
	border-color:#e5e7eb;
	border-bottom:1px solid #ffffff;
}

.qc-search-tab.is-active::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-1px;
	height:3px;
	background:#eab308;
	border-radius:3px 3px 0 0;
}

#qc-search-results{
	background:#ffffff;
	min-height:120px;
	transition:opacity .2s ease;
}

#qc-search-results.is-loading{
	opacity:.55;
	pointer-events:none;
}

/* Resultado de ciudades */
.qc-city-results{
	list-style:none;
	margin:0;
	padding:0;
}

.qc-city-results .post-item{
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-item:last-child{
	border-bottom:none;
}

.qc-city-results .post-title{
	margin:0 0 8px;
	font-size:28px;
	line-height:1.2;
}

.qc-city-results .post-title a{
	color:#1f2937;
	text-decoration:none;
}

.qc-city-results .post-title a:hover{
	color:#eab308;
}

.qc-city-results .post-meta{
	margin-bottom:10px;
	font-size:13px;
	color:#6b7280;
	text-transform:uppercase;
	letter-spacing:.04em;
}

.qc-city-results .post-excerpt p{
	margin:0;
	color:#4b5563;
	line-height:1.7;
}

/* Responsive */
@media (max-width: 767px){
	.qc-search-tabs{
		gap:8px;
		margin-top:14px;
	}

	.qc-search-tab{
		padding:9px 12px;
		font-size:13px;
		border-radius:6px 6px 0 0;
	}

	.qc-city-results .post-title{
		font-size:22px;
	}
}
.qc-city-results .post-item{
	display:flex;
	gap:20px;
	align-items:flex-start;
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-thumb{
	flex:0 0 280px;
	max-width:280px;
}

.qc-city-results .post-thumb img{
	width:100%;
	height:auto;
	display:block;
	border-radius:6px;
	object-fit:cover;
	aspect-ratio:16/9;
	background:#f3f4f6;
}

.qc-city-results .post-details{
	flex:1;
	min-width:0;
}

@media (max-width: 767px){
	.qc-city-results .post-item{
		flex-direction:column;
	}

	.qc-city-results .post-thumb{
		flex:none;
		max-width:100%;
		width:100%;
	}
}
.qc-city-results .post-item{
	display:flex;
	gap:20px;
	align-items:flex-start;
	padding:22px 0;
	border-bottom:1px solid #ececec;
}

.qc-city-results .post-thumb{
	flex:0 0 420px;
	max-width:420px;
}

.qc-city-thumb a{
	position:relative;
	display:block;
	overflow:hidden;
	border-radius:6px;
}

.qc-city-results .post-thumb img{
	width:100%;
	display:block;
	aspect-ratio:16/9;
	object-fit:cover;
	background:#f3f4f6;
}

.qc-city-thumb-overlay{
	position:absolute;
	inset:0;
	display:flex;
	align-items:flex-end;
	padding:18px;
	background:linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,.15) 45%, rgba(0,0,0,0));
}

.qc-city-thumb-label{
	display:inline-block;
	color:#fff;
	font-size:28px;
	font-weight:800;
	line-height:1.1;
	text-shadow:0 2px 10px rgba(0,0,0,.35);
}

.qc-city-results .post-details{
	flex:1;
	min-width:0;
}

.qc-city-meta{
	margin:8px 0 14px;
}

.qc-city-badge{
	display:inline-flex;
	align-items:center;
	padding:5px 10px;
	border-radius:999px;
	background:#f3f4f6;
	color:#4b5563;
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:.05em;
}

@media (max-width: 767px){
	.qc-city-results .post-item{
		flex-direction:column;
	}

	.qc-city-results .post-thumb{
		flex:none;
		max-width:100%;
		width:100%;
	}

	.qc-city-thumb-label{
		font-size:22px;
	}
}