/* JoomLine migration: compact header + marketplace polish (Bootstrap) */

/* Header: brand left, nav right on one line */
.container-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5rem 2rem;
}

.container-header .grid-child { width: auto; }

.container-header .navbar-brand img {
	max-height: 64px;
	width: auto;
}

.container-header .container-nav {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: .5rem 1.5rem;
}

.container-header .mod-menu.nav {
	flex-direction: row;
	flex-wrap: nowrap;
	white-space: nowrap;
	gap: .25rem 1.25rem;
	margin: 0;
}

.container-header .mod-menu.nav .nav-link,
.container-header .mod-menu.nav > li > a {
	text-transform: uppercase;
	font-size: .85rem;
	letter-spacing: .04em;
	color: var(--body-color);
}

/* Language switcher inline in header */
.container-header .container-nav ul.mod-menu:last-child { margin-left: .5rem; }

/* Top modules stack full width */
.container-top-a { display: block; }

/* Search module field */
.marketplace-search .control-label { display: none; }
.marketplace-search .controls { width: 100%; }
.marketplace-search .controls > .field { display: block; position: relative; }
.marketplace-search .controls input[type="text"] {
	width: 100%;
	height: 54px;
	padding: 0 14px 0 44px;
	border: 1px solid #dee2e6;
	border-radius: .5rem;
	background: #fff;
	box-shadow: none;
	font-size: 1.05rem;
}
.marketplace-search .controls input[type="text"]:focus {
	border-color: #0d6efd;
	box-shadow: 0 0 0 .2rem rgba(13,110,253,.15);
	outline: 0;
}
.marketplace-search .mpl-fieldwrap { position: relative; }
.marketplace-search .mpl-ico {
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	color: #6c757d;
	pointer-events: none;
}
.marketplace-search .mpl-submit { display: none; }
.marketplace-search div[input-autocomplete-search="empty"] { display: none; }
.marketplace-search div[input-autocomplete-search="result"] {
	position: absolute;
	z-index: 1000;
	left: 0; right: 0; top: 100%;
	background: #fff;
	border: 1px solid #dee2e6;
	border-radius: .5rem;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
}
.marketplace-search div[input-autocomplete-search="result"] ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.marketplace-search div[input-autocomplete-search="result"] ul:empty { display: none; }

/* Tag cloud buttons */
.marketplace-tags .btn { text-transform: uppercase; font-size: .8rem; letter-spacing: .02em; }

/* Card grid: flat covers like original */
.extensionsList .card { border-radius: .25rem; }
.extensionsList .card-img-top { border-bottom: 1px solid rgba(0,0,0,.05); }
.extensionsList .card-title a { color: var(--body-color); }

/* Footer: columns + copyright */
.container-footer { padding: 2rem 0; }
.container-footer .grid-child {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 3rem;
	justify-content: space-between;
	align-items: flex-start;
}
.container-footer ul.mod-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .25rem 1.5rem;
}
.container-footer .mod-custom { font-size: .85rem; color: #6c757d; }

.marketplace-search div[input-autocomplete-search="result"] li {
	list-style: none;
	padding: .45rem 1rem;
}
.marketplace-search div[input-autocomplete-search="result"] li a {
	display: block;
	color: var(--body-color);
	text-decoration: none;
}
.marketplace-search div[input-autocomplete-search="result"] li a:hover {
	background: #f8f9fa;
	text-decoration: none;
}

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

/* Header nav: tight group on the right */
.container-header .container-nav ul.mod-menu {
	flex: 0 0 auto;
	justify-content: flex-end;
	gap: .25rem 1.75rem;
}

.container-header .mod-languages ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
}

.container-header .mod-languages img {
	height: 22px;
	width: auto;
	border: 1px solid #dee2e6;
	border-radius: 2px;
	display: block;
}

.container-header .mod-languages .mod-languages__list.lang-inline li { margin: 0; }

/* Lightbox: modal + carousel */
.mpl-lb-modal .modal-content { background: rgba(0,0,0,.85) !important; }
.mpl-lb-modal .btn-close-white { filter: invert(1) grayscale(100%); opacity: .8; }
.mpl-lb-modal .btn-close-white:hover { opacity: 1; }
.mpl-lb-img {
	max-height: 80vh;
	max-width: 100%;
	width: auto;
	object-fit: contain;
	margin: 0 auto;
}
.mpl-lb-modal .carousel-control-prev,
.mpl-lb-modal .carousel-control-next {
	width: 8%;
	opacity: .7;
}
.mpl-lb-modal .carousel-control-prev:hover,
.mpl-lb-modal .carousel-control-next:hover { opacity: 1; }
.mpl-lb-indicators { margin-bottom: .5rem; }
.mpl-lb-indicators button {
	width: 10px; height: 10px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,.5);
	background: transparent;
}
.mpl-lb-indicators button.active { background: #fff; }
.mpl-lb-trigger:hover { opacity: .85; }
