/**
 * Prime Academic Press — force layer v13.
 * - Harmonize dropdown menu backgrounds with site palette.
 * - Normalize journal description spacing after rich-text cleanup.
 */

:root {
	--pap-drop-bg: rgba(233, 239, 247, 0.96);
	--pap-drop-border: rgba(140, 161, 186, 0.35);
	--pap-drop-text: #1f2a37;
	--pap-drop-shadow: rgba(23, 52, 87, 0.16);
	--pap-drop-hover-1: #f7d45a;
	--pap-drop-hover-2: #d4a81f;
	--pap-drop-hover-text: #2f2202;
	--pap-shared-band-bg: linear-gradient(180deg, #183760 0%, #163256 55%, #132d4d 100%);
}

/* Head/foot unified background tone */
header#headerNavigationContainer.pap-masthead,
header#headerNavigationContainer.pap-masthead .pap-header-top-strip,
header#headerNavigationContainer.pap-masthead .pap-header-nav-strip,
.footer.pap-footer,
.footer.pap-footer .pap-footer__main,
.footer.pap-footer .pap-footer__copyright,
.footer.pap-footer .pap-footer__accent {
	background: var(--pap-shared-band-bg) !important;
}

/* Masthead size tuning */
header#headerNavigationContainer.pap-masthead .pap_top_accent {
	height: 6px !important;
}

header#headerNavigationContainer.pap-masthead .pap-header-top-strip .pap-topbar-row {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	min-height: 28px !important;
	line-height: 1 !important;
}

header#headerNavigationContainer.pap-masthead .pap-topbar-start .navbar-brand-logo img {
	max-height: 28px !important;
}

header#headerNavigationContainer.pap-masthead .pap-header-nav-strip .pap-nav-menu-inner {
	padding-top: 4px !important;
	padding-bottom: 4px !important;
}

header#headerNavigationContainer.pap-masthead #navigationUser > li > a {
	height: 28px !important;
	padding-top: 3px !important;
	padding-bottom: 3px !important;
	line-height: 20px !important;
}

header#headerNavigationContainer.pap-masthead #nav-menu .navbar-nav > li > a {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

/* Unified dropdown panel background (user menu + top nav menu) */
header#headerNavigationContainer.pap-masthead #navigationUser .dropdown-menu,
header#headerNavigationContainer.pap-masthead #nav-menu .dropdown-menu,
header#headerNavigationContainer.pap-masthead .navbar-nav .dropdown-menu {
	background: var(--pap-drop-bg) !important;
	border: 1px solid var(--pap-drop-border) !important;
	border-top: 2px solid rgba(91, 125, 168, 0.5) !important;
	border-radius: 10px !important;
	box-shadow: 0 14px 30px var(--pap-drop-shadow) !important;
	backdrop-filter: blur(8px) saturate(130%) !important;
	-webkit-backdrop-filter: blur(8px) saturate(130%) !important;
}

header#headerNavigationContainer.pap-masthead #navigationUser .dropdown-menu > li > a,
header#headerNavigationContainer.pap-masthead #nav-menu .dropdown-menu > li > a {
	background: transparent !important;
	color: var(--pap-drop-text) !important;
	border-bottom: 1px solid rgba(31, 42, 55, 0.08) !important;
}

header#headerNavigationContainer.pap-masthead #navigationUser .dropdown-menu > li:last-child > a,
header#headerNavigationContainer.pap-masthead #nav-menu .dropdown-menu > li:last-child > a {
	background: transparent !important;
	color: var(--pap-drop-text) !important;
	border-bottom: 1px solid rgba(31, 42, 55, 0.08) !important;
}

/* keep yellow hover behavior requested previously */
header#headerNavigationContainer.pap-masthead #navigationUser .dropdown-menu > li > a:hover,
header#headerNavigationContainer.pap-masthead #navigationUser .dropdown-menu > li > a:focus,
header#headerNavigationContainer.pap-masthead #nav-menu .dropdown-menu > li > a:hover,
header#headerNavigationContainer.pap-masthead #nav-menu .dropdown-menu > li > a:focus {
	background: linear-gradient(180deg, var(--pap-drop-hover-1) 0%, var(--pap-drop-hover-2) 100%) !important;
	color: var(--pap-drop-hover-text) !important;
}

/* Journal description spacing normalization */
body.pap-site-index #main-site .journals .description {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

body.pap-site-index #main-site .journals .description > * {
	margin: 0 !important;
}

body.pap-site-index #main-site .journals .description > br {
	display: none !important;
}

body.pap-site-index #main-site .journals .description > div,
body.pap-site-index #main-site .journals .description > p {
	line-height: 1.72 !important;
}

/* Journal thumbnail: fully visible and centered (no top-crop) */
body.pap-site-index #main-site .journals .media-list > .media {
	align-items: center !important;
}

body.pap-site-index #main-site .journals .media-list > .media .media-left,
body.pap-site-index #main-site .journals .media-list > .media .media-right {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: center !important;
	margin-top: auto !important;
	margin-bottom: auto !important;
	flex: 0 0 112px !important;
	width: 112px !important;
	height: 112px !important;
}

body.pap-site-index #main-site .journals .media-list > .media .media-left > a,
body.pap-site-index #main-site .journals .media-list > .media .media-right > a {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	overflow: hidden !important;
	border-radius: 12px !important;
	background: rgba(255, 255, 255, 0.72) !important;
}

body.pap-site-index #main-site .journals .media-list > .media .media-left img,
body.pap-site-index #main-site .journals .media-list > .media .media-right img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: contain !important;
	object-position: center center !important;
	padding: 0 !important;
	margin: 0 !important;
	transform: none !important;
	vertical-align: middle !important;
}

/* Footer: lower fixed height and let content define total height */
.footer.pap-footer {
	margin-top: 14px !important;
	height: auto !important;
	min-height: 0 !important;
	background: var(--pap-shared-band-bg) !important;
}

.footer.pap-footer .pap-footer__main {
	background: var(--pap-shared-band-bg) !important;
	padding-top: 2px !important;
	padding-bottom: 2px !important;
	height: auto !important;
	min-height: 0 !important;
}

.footer.pap-footer .pap-footer__copyright {
	background: var(--pap-shared-band-bg) !important;
	padding-top: 2px !important;
	padding-bottom: 2px !important;
	height: auto !important;
	min-height: 0 !important;
}

@media (max-width: 768px) {
	.footer.pap-footer .pap-footer__main {
		padding-top: 2px !important;
		padding-bottom: 2px !important;
	}
}

/* Footer grid should size to content, not stretched columns */
.footer.pap-footer .pap-footer-grid {
	align-items: start !important;
	row-gap: 4px !important;
	column-gap: 18px !important;
}

.footer.pap-footer .pap-footer-col {
	height: auto !important;
	min-height: 0 !important;
}

.footer.pap-footer .pap-footer-col--brand {
	height: auto !important;
	min-height: 0 !important;
}

.footer.pap-footer .pap-footer-col--brand .pap-footer-social {
	margin-top: 4px !important;
}

/* Critical: override old large footer container paddings from earlier layers */
.footer.pap-footer .pap-footer__container.container,
.footer.pap-footer .pap-footer__container {
	padding-top: 2px !important;
	padding-bottom: 2px !important;
}

/* Trim text block margins inside footer */
.footer.pap-footer .pap-footer-col h4 {
	margin: 0 0 4px !important;
}

.footer.pap-footer .pap-footer-col ul {
	gap: 4px !important;
}

.footer.pap-footer .pap-footer-brand__tagline {
	margin-top: 2px !important;
	margin-bottom: 1px !important;
}

.footer.pap-footer .pap-footer-brand__desc {
	margin-top: 0 !important;
	margin-bottom: 2px !important;
}

.footer.pap-footer .pap-footer-note {
	margin-top: 4px !important;
	padding-top: 3px !important;
}
