:root {
	--oak-navy: #145f88;
	--oak-navy-deep: #0f4f73;
	--oak-link: #176c91;
	--oak-link-hover: #0d5578;
	--oak-gold: #f6c453;
	--oak-focus: #f6c453;
	--oak-border: #d9e3e8;
	--oak-surface: #ffffff;
	--oak-surface-soft: #f7fafb;
	--oak-shadow: 0 8px 22px rgba(15, 79, 115, 0.08);
	--oak-shadow-hover: 0 12px 30px rgba(15, 79, 115, 0.14);
	--oak-radius: 8px;
	--oak-motion: 180ms ease;
}

html {
	scroll-behavior: smooth;
}

:where(
	a,
	button,
	input,
	select,
	textarea,
	.cmp_button,
	.pkp_button,
	.block_make_submission a
) {
	transition:
		color var(--oak-motion),
		background-color var(--oak-motion),
		border-color var(--oak-motion),
		box-shadow var(--oak-motion),
		opacity var(--oak-motion),
		transform var(--oak-motion);
}

:where(
	a,
	button,
	input,
	select,
	textarea,
	[tabindex]:not([tabindex="-1"])
):focus-visible {
	outline: 3px solid var(--oak-focus);
	outline-offset: 3px;
	border-radius: 4px;
}

.pkp_site_name .is_img,
.pkp_site_name .is_img img {
	display: block;
}

.pkp_site_name .is_img:hover img {
	opacity: 0.94;
	transform: translateY(-1px);
}

#navigationPrimary > li > a,
#navigationUser > li > a {
	border-radius: 6px;
}

#navigationPrimary > li > a:hover,
#navigationPrimary > li > a:focus-visible,
#navigationUser > li > a:hover,
#navigationUser > li > a:focus-visible {
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

#navigationPrimary > li > a:active,
#navigationUser > li > a:active {
	background: rgba(255, 255, 255, 0.2);
	transform: translateY(1px);
}

.pkp_structure_main a:not(.is_img) {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.16em;
}

.pkp_structure_main a:not(.is_img):hover {
	color: var(--oak-link-hover);
	text-decoration-thickness: 2px;
}

:where(
	.cmp_button,
	.pkp_button,
	button:not(.pkp_site_nav_toggle),
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.block_make_submission a
) {
	border-radius: 6px;
	cursor: pointer;
}

:where(
	.cmp_button,
	.pkp_button,
	button:not(.pkp_site_nav_toggle),
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.block_make_submission a
):hover {
	border-color: var(--oak-navy-deep);
	box-shadow: 0 5px 14px rgba(15, 79, 115, 0.16);
}

:where(
	.cmp_button,
	.pkp_button,
	button:not(.pkp_site_nav_toggle),
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.block_make_submission a
):active {
	box-shadow: 0 2px 7px rgba(15, 79, 115, 0.12);
	transform: translateY(1px);
}

:where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="search"],
	input[type="url"],
	select,
	textarea
) {
	border-radius: 6px;
}

:where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="search"],
	input[type="url"],
	select,
	textarea
):hover {
	border-color: #9db9c7;
}

:where(
	input[type="text"],
	input[type="email"],
	input[type="password"],
	input[type="search"],
	input[type="url"],
	select,
	textarea
):focus {
	border-color: var(--oak-link);
	box-shadow: 0 0 0 3px rgba(23, 108, 145, 0.14);
}

.page_index_site .journals > ul > li {
	background: var(--oak-surface);
	border: 1px solid var(--oak-border);
	border-radius: var(--oak-radius);
	box-shadow: var(--oak-shadow);
	margin-bottom: 18px;
	padding: 24px;
	transition:
		border-color var(--oak-motion),
		box-shadow var(--oak-motion),
		transform var(--oak-motion);
}

.page_index_site .journals > ul > li:last-child {
	margin-bottom: 0;
}

.page_index_site .journals .thumb img {
	border-radius: 5px;
	box-shadow: 0 3px 10px rgba(22, 45, 57, 0.1);
	transition:
		box-shadow var(--oak-motion),
		transform var(--oak-motion);
}

.page_index_site .journals .body h3 a {
	display: inline-block;
}

.page_index_site .journals .description a {
	font-weight: 600;
}

.page_index_site .journals .links {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}

.page_index_site .journals .links li {
	margin: 0;
}

.page_index_site .journals .links a {
	background: var(--oak-surface-soft);
	border: 1px solid var(--oak-border);
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 6px 13px;
	text-decoration: none;
}

.page_index_site .journals .links a:hover,
.page_index_site .journals .links a:focus-visible {
	background: #eef6f9;
	border-color: #9dbdcb;
	color: var(--oak-link-hover);
}

@media (hover: hover) and (pointer: fine) {
	.page_index_site .journals > ul > li:hover {
		border-color: #abc5d1;
		box-shadow: var(--oak-shadow-hover);
		transform: translateY(-2px);
	}

	.page_index_site .journals > ul > li:hover .thumb img {
		box-shadow: 0 5px 16px rgba(22, 45, 57, 0.16);
		transform: scale(1.01);
	}
}

@media (max-width: 768px) {
	#navigationPrimary > li > a,
	#navigationUser > li > a,
	.pkp_site_nav_toggle,
	:where(
		.cmp_button,
		.pkp_button,
		button,
		input[type="button"],
		input[type="submit"],
		input[type="reset"],
		.block_make_submission a
	) {
		align-items: center;
		display: inline-flex;
		min-height: 44px;
	}

	.page_index_site .journals > ul > li {
		margin-bottom: 14px;
		padding: 18px;
	}

	.page_index_site .journals .links {
		gap: 10px;
	}

	.page_index_site .journals .links a {
		justify-content: center;
		min-height: 44px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	.page_index_site .journals > ul > li,
	.page_index_site .journals .thumb img,
	.pkp_site_name .is_img img,
	#navigationPrimary > li > a,
	#navigationUser > li > a,
	:where(
		.cmp_button,
		.pkp_button,
		button,
		input[type="button"],
		input[type="submit"],
		input[type="reset"],
		.block_make_submission a
	) {
		transform: none !important;
	}
}

/* Public Oak Tree site pages */
.oak_site_portal {
	background: #f4f7f8;
	color: #263943;
}

.oak_site_portal .pkp_structure_head {
	background: #fff;
	border-bottom: 1px solid #d9e2e6;
}

.oak_site_portal .pkp_head_wrapper {
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	padding-top: 24px;
}

.oak_site_portal .pkp_site_nav_menu,
.oak_site_portal .pkp_navigation_primary_row {
	background: #fff;
	border-top: 1px solid #edf1f3;
}

.oak_site_portal .pkp_site_name .is_img img {
	height: 58px;
	max-height: 58px;
	max-width: min(330px, 45vw);
	width: auto;
}

.oak_site_portal #navigationPrimary > li > a,
.oak_site_portal #navigationUser > li > a {
	color: #40515d;
}

.oak_site_portal #navigationPrimary > li > a:hover,
.oak_site_portal #navigationPrimary > li > a:focus-visible,
.oak_site_portal #navigationUser > li > a:hover,
.oak_site_portal #navigationUser > li > a:focus-visible {
	background: #e8f5f3;
	color: #0f766e;
}

.oak_site_portal #navigationPrimary > li > a:active,
.oak_site_portal #navigationUser > li > a:active {
	background: #d7eeea;
}

.oak_site_portal .pkp_structure_content {
	max-width: 1180px;
	padding-top: 20px;
}

.oak_site_portal .pkp_structure_main {
	margin-top: 0;
	padding-top: 0;
}

.oak_site_portal .pkp_structure_main:first-child:last-child {
	margin-top: 0;
}

.oak-home-page,
.page_oak_journals,
.page_oak_contact {
	color: #263943;
}

.oak-home-content {
	background: #fff;
	border: 1px solid #d9e2e6;
	border-radius: 8px;
	padding: 24px;
}

.oak-home-intro {
	border-bottom: 1px solid #dbe5e9;
	margin-bottom: 22px;
	padding-bottom: 6px;
}

.oak-home-intro h2,
.oak-section-heading h2,
.oak-contact-panel h2 {
	color: #263943;
	font-size: 1.35rem;
}

.oak-home-intro p,
.oak-contact-panel p {
	color: #475967;
	line-height: 1.68;
	margin-bottom: 16px;
}

.oak-section-heading {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.oak-section-heading h2 {
	margin: 0;
}

.oak-section-heading > a {
	color: #0f766e;
	font-weight: 700;
}

.oak-recent-list {
	display: grid;
	gap: 9px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.oak-recent-article > a {
	background: #f7fafb;
	border: 1px solid #dbe5e9;
	border-radius: 7px;
	color: #263943;
	display: block;
	padding: 13px 15px;
	text-decoration: none;
}

.oak-recent-article > a:hover,
.oak-recent-article > a:focus-visible {
	background: #eff8f6;
	border-color: #87bdb5;
	box-shadow: 0 5px 16px rgba(15, 118, 110, 0.09);
	color: #0f5f59;
	transform: translateY(-1px);
}

.oak-recent-article strong {
	display: block;
	font-size: 0.96rem;
	line-height: 1.4;
}

.oak-article-meta {
	color: #607482;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.82rem;
	gap: 5px 14px;
	margin-top: 5px;
}

.oak-article-journal {
	font-weight: 700;
}

.oak-empty-state {
	background: #f7fafb;
	border: 1px solid #dbe5e9;
	border-radius: 7px;
	color: #607482;
	padding: 16px;
}

.oak-journal-directory {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.oak-journal-card {
	background: #fff;
	border: 1px solid #dbe5e9;
	border-radius: 8px;
	display: grid;
	grid-template-columns: 145px minmax(0, 1fr);
	min-height: 190px;
	overflow: hidden;
	transition:
		border-color var(--oak-motion),
		box-shadow var(--oak-motion),
		transform var(--oak-motion);
}

.oak-journal-card:hover {
	border-color: #9fc8c2;
	box-shadow: 0 10px 26px rgba(15, 118, 110, 0.12);
	transform: translateY(-2px);
}

.oak-journal-cover {
	background: #e4ecef;
	display: block;
	min-height: 190px;
}

.oak-journal-cover img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.oak-journal-card-body {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 18px;
}

.oak-journal-card-body h2 {
	font-size: 1rem;
	line-height: 1.35;
	margin: 0;
}

.oak-journal-card-body h2 a {
	color: #172b35;
}

.oak-journal-primary-actions,
.oak-journal-secondary-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.oak-journal-primary-actions a {
	color: #0f766e;
	font-size: 0.84rem;
	font-weight: 750;
}

.oak-journal-secondary-actions {
	margin-top: auto;
}

.oak-journal-secondary-actions a {
	border: 1px solid #c8d4da;
	border-radius: 999px;
	color: #0f5f59;
	font-size: 0.8rem;
	font-weight: 700;
	padding: 6px 10px;
	text-decoration: none;
}

.oak-journal-secondary-actions a:hover,
.oak-journal-secondary-actions a:focus-visible {
	background: #e8f5f3;
	border-color: #87bdb5;
}

.oak-contact-panel {
	background: #fff;
	border: 1px solid #d9e2e6;
	border-radius: 8px;
	padding: 28px;
}

.oak-contact-panel a {
	color: #0f766e;
	font-weight: 750;
}

.oak-editorial-board {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 980px;
	padding: 28px;
}

.oak-editorial-heading {
	border-bottom: 1px solid #d9e2e6;
	margin-bottom: 24px;
	padding-bottom: 16px;
	text-align: center;
}

.oak-editorial-heading h1 {
	font-size: 1.7rem;
	margin: 0 0 8px;
}

.oak-editorial-heading p {
	color: #0f766e;
	font-size: 1.05rem;
	font-weight: 750;
	margin: 0;
}

.oak-editorial-members {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.oak-editorial-member {
	align-items: flex-start;
	background: #fff;
	border: 1px solid #d9e2e6;
	border-radius: 8px;
	display: grid;
	gap: 16px;
	grid-template-columns: 96px minmax(0, 1fr);
	min-width: 0;
	padding: 16px;
}

.oak-editorial-member:not(:has(.oak-editorial-photo)) {
	grid-template-columns: minmax(0, 1fr);
}

.oak-editorial-photo img {
	background: #eef3f5;
	border-radius: 6px;
	display: block;
	height: 108px;
	object-fit: cover;
	width: 96px;
}

.oak-editorial-details h2 {
	color: #243744;
	font-size: 1rem;
	line-height: 1.35;
	margin: 0 0 8px;
}

.oak-editorial-details p {
	color: #526675;
	font-size: 0.86rem;
	line-height: 1.45;
	margin: 2px 0;
}

.oak-journal-introduction p {
	color: #405565;
	line-height: 1.7;
	margin: 0 0 16px;
}

.oak-journal-introduction h3 {
	color: #243744;
	font-size: 1.05rem;
	line-height: 1.45;
	margin: 24px 0 14px;
}

.oak-journal-topics {
	background: #f6f9fa;
	border: 1px solid #d9e2e6;
	border-radius: 8px;
	column-count: 2;
	column-gap: 36px;
	list-style-position: inside;
	margin: 0;
	padding: 18px 22px;
}

.oak-journal-topics li {
	break-inside: avoid;
	color: #405565;
	line-height: 1.5;
	margin: 0 0 7px;
}

.pkp_page_login .pkp_structure_content {
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	width: 100%;
}

.pkp_page_login .pkp_structure_main {
	box-sizing: border-box;
	float: none;
	margin-left: auto;
	margin-right: auto;
	max-width: 860px;
	width: 100%;
}

@media (max-width: 900px) {
	.oak-journal-directory {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.oak_site_portal .pkp_structure_content {
		padding-top: 16px;
	}

	.oak_site_portal .pkp_site_name .is_img img {
		height: auto;
		max-width: 220px;
	}

	.oak-home-content,
	.oak-contact-panel {
		padding: 20px;
	}

	.oak-section-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.oak-editorial-board {
		padding: 20px;
	}

	.oak-editorial-members {
		grid-template-columns: 1fr;
	}

	.oak-journal-topics {
		column-count: 1;
	}
}

@media (max-width: 520px) {
	.oak-journal-card {
		grid-template-columns: 1fr;
	}

	.oak-journal-cover {
		aspect-ratio: 16 / 10;
		min-height: 0;
	}

	.oak-journal-cover img {
		object-fit: contain;
	}
}
