/**
 * plugins/themes/stailAcademic/styles/stail-academic.css
 *
 * Modern Scholarly Stylesheet for STAI Luqman Al Hakim Surabaya (STAIL) OJS 3 Journals.
 * Wide Editorial Main Canvas (~75% left) + Compact Right Sidebar (~25% right).
 * Built on CSS Grid, Flexbox, Container Queries, Logical Properties, and WCAG AA Accessibility.
 */

:root {
	--stail-primary: #0f6d34;
	--stail-primary-dark: #094520;
	--stail-primary-soft: #ecfdf3;
	--stail-accent: #c88a1e;
	--stail-accent-soft: #fef7e6;
	--stail-bg: #f1f5f9;
	--stail-surface: #ffffff;
	--stail-surface-muted: #f8fafc;
	--stail-border: #e2e8f0;
	--stail-border-strong: #cbd5e1;
	--stail-text: #0f172a;
	--stail-text-body: #334155;
	--stail-text-muted: #526071;
	--stail-radius-sm: 8px;
	--stail-radius-md: 12px;
	--stail-radius-lg: 14px;
	--stail-shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
	--stail-shadow-md: 0 10px 26px -8px rgba(15, 23, 42, 0.1), 0 2px 6px -2px rgba(15, 23, 42, 0.05);
}

/* ==========================================================================
   1. Base Reset, OJS Legacy Clearfix Removal & Container Scaffolding
   ========================================================================== */

body.stail_academic_body {
	background-color: var(--stail-bg);
	color: var(--stail-text-body);
	font-size: 15px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

.stail-page-shell {
	min-block-size: 100dvh;
	display: flex;
	flex-direction: column;
}

.stail-page-shell img,
.stail-page-shell svg {
	display: block;
}

.stail-page-shell a {
	color: var(--stail-primary);
	transition: color 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.stail-page-shell a:hover {
	color: var(--stail-primary-dark);
}

.stail-page-shell :where(a:any-link, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--stail-accent);
	outline-offset: 3px;
}

/*
 * CRITICAL: Remove OJS Default Theme legacy float clearfix pseudo-elements
 * (`content: " "; display: table;`) so they never act as anonymous CSS Grid / Flex items!
 */
.stail-page-shell .pkp_helpers_clear::before,
.stail-page-shell .pkp_helpers_clear::after,
.stail-page-shell .pkp_head_wrapper::before,
.stail-page-shell .pkp_head_wrapper::after,
.stail-page-shell .pkp_site_name_wrapper::before,
.stail-page-shell .pkp_site_name_wrapper::after,
.stail-page-shell .pkp_navigation_primary_wrapper::before,
.stail-page-shell .pkp_navigation_primary_wrapper::after,
.stail-page-shell .pkp_navigation_user::before,
.stail-page-shell .pkp_navigation_user::after,
.stail-page-shell .pkp_structure_content::before,
.stail-page-shell .pkp_structure_content::after,
.stail-page-shell .pkp_structure_main::before,
.stail-page-shell .pkp_structure_main::after,
.stail-page-shell .pkp_structure_footer::before,
.stail-page-shell .pkp_structure_footer::after,
.stail-page-shell .pkp_brand_footer::before,
.stail-page-shell .pkp_brand_footer::after,
.stail-page-shell .row::before,
.stail-page-shell .row::after,
.stail-page-shell .cmp_article_list > li::before,
.stail-page-shell .cmp_article_list > li::after,
.stail-page-shell .obj_issue_toc .heading::before,
.stail-page-shell .obj_issue_toc .heading::after,
.stail-page-shell .obj_issue_toc .section::before,
.stail-page-shell .obj_issue_toc .galleys::before,
.stail-page-shell .obj_article_summary::before,
.stail-page-shell .obj_article_summary::after,
.stail-page-shell .obj_issue_summary::before,
.stail-page-shell .obj_issue_summary::after {
	content: none !important;
	display: none !important;
}

.stail-container,
.stail-page-shell .pkp_head_wrapper,
.stail-page-shell .pkp_structure_content,
.stail-page-shell .pkp_structure_footer {
	width: 100% !important;
	max-width: 1260px !important;
	inline-size: 100% !important;
	max-inline-size: 1260px !important;
	margin-inline: auto !important;
	padding-inline: 1.5rem !important;
}

.stail-page-shell .pkp_site_name_wrapper,
.stail-page-shell .pkp_navigation_primary_wrapper {
	width: 100% !important;
	max-width: none !important;
	inline-size: 100% !important;
	max-inline-size: none !important;
	padding-inline: 0 !important;
	margin: 0 !important;
}

/* ==========================================================================
   2. Site Header: Top Institutional Bar + Hero Banner + Primary Navbar
   ========================================================================== */

.stail-site-header.pkp_structure_head {
	background: var(--stail-surface);
	border-block-end: 1px solid var(--stail-border);
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
}

/* Top Institutional Utility Bar */
.stail-topbar {
	background-color: var(--stail-primary-dark);
	color: rgba(255, 255, 255, 0.92);
	font-size: 0.82rem;
	border-block-end: 1px solid rgba(255, 255, 255, 0.12);
}

.stail-topbar-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	justify-content: space-between;
	gap: 0.5rem 1rem;
	padding-block: 0.45rem;
}

.stail-topbar-left,
.stail-topbar-right {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.55rem;
	min-inline-size: 0;
}

.stail-portal-back {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: #ffffff !important;
	font-weight: 600;
	text-decoration: none;
	padding-block: 0.2rem;
	padding-inline: 0.6rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.22);
	min-block-size: 26px;
}

.stail-portal-back:hover {
	background: rgba(255, 255, 255, 0.24);
	color: #ffffff !important;
	text-decoration: none;
}

.stail-topbar-divider {
	opacity: 0.45;
}

.stail-topbar-inst {
	color: rgba(255, 255, 255, 0.84);
	font-weight: 500;
}

@media (max-width: 640px) {
	.stail-topbar-divider,
	.stail-topbar-inst {
		display: none;
	}
}

.stail-issn-pills {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.stail-issn-pill {
	display: inline-flex;
	align-items: center;
	padding-block: 0.16rem;
	padding-inline: 0.55rem;
	border-radius: 6px;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	background: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.stail-issn-online {
	background: rgba(255, 255, 255, 0.2);
	border: 1px solid rgba(255, 255, 255, 0.28);
}

/* Override default theme's absolute user navigation wrapper */
.stail-site-header .stail-user-nav.pkp_navigation_user_wrapper {
	position: static !important;
	inset: auto !important;
	transform: none !important;
	width: auto !important;
	inline-size: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.stail-site-header .pkp_navigation_user {
	display: inline-flex !important;
	align-items: safe center;
	gap: 0.25rem;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	width: auto !important;
	inline-size: auto !important;
}

.stail-site-header .pkp_navigation_user > li {
	display: inline-flex;
	position: relative;
}

.stail-site-header .pkp_navigation_user > li > a {
	color: #ffffff !important;
	font-size: 0.8rem;
	font-weight: 600;
	padding-block: 0.22rem;
	padding-inline: 0.65rem;
	border-radius: 6px;
	text-decoration: none;
	margin: 0 !important;
	min-block-size: 26px;
	display: inline-flex;
	align-items: center;
}

.stail-site-header .pkp_navigation_user > li > a:hover {
	background: rgba(255, 255, 255, 0.18);
}

.stail-site-header .pkp_navigation_user ul {
	position: absolute;
	inset-block-start: 100%;
	inset-inline-end: 0;
	inset-inline-start: auto;
	min-inline-size: 12rem;
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-sm);
	box-shadow: var(--stail-shadow-md);
	padding-block: 0.35rem;
	z-index: 1050;
}

.stail-site-header .pkp_navigation_user ul a {
	color: var(--stail-text) !important;
	padding-block: 0.45rem;
	padding-inline: 0.85rem;
	font-size: 0.85rem;
}

.stail-site-header .pkp_navigation_user ul a:hover {
	background: var(--stail-primary-soft);
	color: var(--stail-primary) !important;
}

/* Main Journal Hero Banner */
.stail-hero-banner {
	position: relative;
	overflow: clip;
	background: linear-gradient(132deg, var(--stail-primary-dark) 0%, var(--stail-primary) 62%, var(--stail-primary-dark) 100%);
	color: #ffffff;
}

.stail-hero-pattern {
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	inline-size: min(460px, 55%);
	block-size: 100%;
	color: rgba(255, 255, 255, 0.13);
	pointer-events: none;
}

.stail-site-header .stail-hero-inner.pkp_head_wrapper {
	position: relative;
	z-index: 1;
	padding-block: 1.55rem 1.7rem !important;
}

.stail-site-header .stail-brand-row.pkp_site_name_wrapper {
	display: flex;
	align-items: safe center;
	gap: 1.15rem;
	height: auto !important;
	block-size: auto !important;
}

.stail-emblem {
	flex: 0 0 auto;
	inline-size: 66px;
	block-size: 66px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.13);
	border: 1.5px solid rgba(255, 255, 255, 0.32);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 6px 16px rgba(0, 0, 0, 0.18);
	display: grid;
	place-items: center;
	padding: 0.35rem;
	text-align: center;
}

.stail-emblem span {
	font-weight: 800;
	font-size: 0.78rem;
	letter-spacing: 0.06em;
	line-height: 1.15;
	color: #ffffff;
	text-transform: uppercase;
}

@media (max-width: 640px) {
	.stail-emblem {
		display: none;
	}
}

.stail-site-header .stail-brand-text.pkp_site_name {
	position: static !important;
	inset: auto !important;
	flex: 1 1 auto;
	min-inline-size: 0;
	padding: 0 !important;
	margin: 0 !important;
	white-space: normal !important;
	overflow: visible !important;
	font-size: 1rem !important;
}

.stail-brand-badges {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.45rem;
	margin-block-end: 0.45rem;
}

.stail-badge-sinta,
.stail-badge-access,
.stail-badge-freq {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.73rem;
	font-weight: 700;
	letter-spacing: 0.025em;
	padding-block: 0.18rem;
	padding-inline: 0.6rem;
	border-radius: 999px;
	line-height: 1.3;
	text-decoration: none;
}

.stail-badge-sinta {
	background: #fbbf24;
	color: #1e293b !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
}

.stail-badge-sinta:hover {
	background: #fde047;
	color: #0f172a !important;
}

.stail-badge-access {
	background: rgba(255, 255, 255, 0.18);
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.28);
}

.stail-badge-freq {
	background: rgba(15, 23, 42, 0.26);
	color: rgba(255, 255, 255, 0.92);
}

.stail-journal-heading {
	margin: 0;
	padding: 0;
	font-size: clamp(1.25rem, 2.2vw, 1.82rem);
	line-height: 1.25;
	font-weight: 800;
	letter-spacing: -0.01em;
}

.stail-site-header .stail-journal-heading .is_text {
	font-size: inherit !important;
	line-height: inherit !important;
	font-weight: 800;
	color: #ffffff !important;
	text-decoration: none;
	display: inline;
	padding: 0;
}

.stail-site-header .stail-journal-heading .is_text:hover {
	color: rgba(255, 255, 255, 0.92) !important;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.stail-site-header .stail-journal-heading .is_img img {
	max-block-size: 76px;
	inline-size: auto;
	border-radius: var(--stail-radius-sm);
}

.stail-journal-subtitle {
	margin-block: 0.35rem 0;
	font-size: 0.9rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.86);
	font-weight: 400;
}

/* Mobile Menu Button */
.stail-site-header .pkp_site_nav_toggle {
	position: static;
	flex: 0 0 auto;
	inline-size: 42px;
	block-size: 42px;
	border-radius: var(--stail-radius-sm);
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.28);
}

@media (min-width: 992px) {
	.stail-site-header .pkp_site_nav_toggle {
		display: none;
	}
}

/* Primary Navigation Bar */
.stail-navbar-wrap {
	background: var(--stail-surface);
	border-block-start: 1px solid rgba(255, 255, 255, 0.08);
	position: relative;
}

.stail-site-header .stail-navbar.pkp_site_nav_menu {
	background: var(--stail-surface);
	padding-block: 0 !important;
}

@media (max-width: 991px) {
	.stail-site-header .stail-navbar.pkp_site_nav_menu {
		display: none;
		position: static;
		inline-size: 100%;
		padding-block: 0.85rem 1.1rem !important;
		border-block-start: 1px solid var(--stail-border);
	}

	.stail-site-header .stail-navbar.pkp_site_nav_menu.pkp_site_nav_menu--isOpen {
		display: block;
	}

	.stail-site-header .pkp_navigation_primary li {
		display: block;
		border-block-end: 1px solid var(--stail-border);
	}

	.stail-site-header .pkp_navigation_primary a {
		display: block;
		color: var(--stail-text) !important;
		padding-block: 0.55rem;
		font-weight: 600;
	}

	.stail-site-header .pkp_navigation_primary ul {
		padding-inline-start: 1rem;
		background: var(--stail-surface-muted);
	}

	.stail-nav-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 0.65rem;
		margin-block-start: 0.85rem;
	}
}

@media (min-width: 992px) {
	.stail-site-header .stail-nav-inner.pkp_navigation_primary_wrapper {
		display: flex;
		align-items: safe center;
		justify-content: space-between;
		gap: 1rem;
	}

	.stail-site-header .pkp_navigation_primary {
		display: flex !important;
		flex-wrap: wrap;
		align-items: safe center;
		gap: 0.15rem;
		max-width: none !important;
		max-inline-size: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.stail-site-header .pkp_navigation_primary > li > a {
		margin: 0 !important;
		padding-block: 0.85rem;
		padding-inline: 0.85rem;
		color: var(--stail-text) !important;
		font-weight: 600;
		font-size: 0.92rem;
		border-block-end: 3px solid transparent;
		display: inline-flex;
		align-items: center;
		gap: 0.25rem;
	}

	.stail-site-header .pkp_navigation_primary > li > a:hover,
	.stail-site-header .pkp_navigation_primary > li > a:focus-visible {
		color: var(--stail-primary) !important;
		background: var(--stail-primary-soft);
		border-block-end-color: var(--stail-primary);
	}

	.stail-site-header .pkp_navigation_primary ul {
		min-inline-size: 14.5rem;
		border: 1px solid var(--stail-border);
		border-radius: var(--stail-radius-sm);
		box-shadow: var(--stail-shadow-md);
		padding-block: 0.35rem;
		background: var(--stail-surface);
	}

	.stail-site-header .pkp_navigation_primary ul a {
		color: var(--stail-text-body) !important;
		font-size: 0.88rem;
		font-weight: 500;
		padding-block: 0.55rem;
		padding-inline: 0.95rem;
		border-inline-start: 3px solid transparent;
	}

	.stail-site-header .pkp_navigation_primary ul a:hover,
	.stail-site-header .pkp_navigation_primary ul a:focus-visible {
		background: var(--stail-primary-soft);
		color: var(--stail-primary) !important;
		border-inline-start-color: var(--stail-primary);
	}

	.stail-nav-actions {
		display: flex;
		align-items: safe center;
		gap: 0.6rem;
		flex: 0 0 auto;
	}

	.stail-site-header .stail-search-pill-wrap.pkp_navigation_search_wrapper {
		float: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}
}

.stail-search-pill {
	display: inline-flex !important;
	align-items: center;
	gap: 0.42rem;
	padding-block: 0.42rem !important;
	padding-inline: 0.85rem !important;
	margin: 0 !important;
	border-radius: 999px;
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border-strong) !important;
	color: var(--stail-text-body) !important;
	font-size: 0.86rem;
	font-weight: 600;
	text-decoration: none !important;
	min-block-size: 34px;
}

.stail-search-pill:hover {
	background: var(--stail-primary-soft);
	border-color: var(--stail-primary) !important;
	color: var(--stail-primary) !important;
}

.stail-nav-submit-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-block: 0.44rem;
	padding-inline: 0.95rem;
	border-radius: 999px;
	background: var(--stail-primary);
	color: #ffffff !important;
	font-size: 0.85rem;
	font-weight: 700;
	text-decoration: none !important;
	min-block-size: 34px;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.12);
}

.stail-nav-submit-btn:hover {
	background: var(--stail-primary-dark);
	color: #ffffff !important;
}

/* ==========================================================================
   3. Main Editorial Column (Left ~75%) & Compact Utility Sidebar (Right ~25%)
   ========================================================================== */

.stail-page-shell .stail-content-grid.pkp_structure_content {
	flex: 1 0 auto;
	padding-block: 2rem 3.25rem !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
	align-items: start;
}

.stail-page-shell .stail-main.pkp_structure_main,
.stail-page-shell .stail-sidebar.pkp_structure_sidebar {
	float: none !important;
	width: 100% !important;
	inline-size: 100% !important;
	min-width: 0 !important;
	min-inline-size: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

@media (min-width: 992px) {
	.stail-page-shell .stail-content-grid.has_sidebar {
		grid-template-columns: minmax(0, 1fr) 296px;
		gap: 2.25rem;
	}

	.stail-page-shell .stail-content-grid.has_sidebar > .stail-main {
		grid-column: 1;
		grid-row: 1;
	}

	.stail-page-shell .stail-content-grid.has_sidebar > .stail-sidebar {
		grid-column: 2;
		grid-row: 1;
	}
}

/* ==========================================================================
   4. Wide Journal Homepage: Editorial Intro + Primary Publication Sheet
   ========================================================================== */

.stail-journal-home {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.stail-wide-banner-card {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-lg);
	overflow: clip;
	box-shadow: var(--stail-shadow-sm);
	margin: 0 !important;
}

.stail-wide-banner-card img {
	inline-size: 100%;
	block-size: auto;
	object-fit: cover;
}

/* Unified Compact Editorial Intro & Indexing Bar */
.stail-editorial-intro {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-inline-start: 4px solid var(--stail-primary);
	border-radius: var(--stail-radius-lg);
	overflow: clip;
	box-shadow: var(--stail-shadow-sm);
	padding: 0 !important;
	margin: 0 !important;
}

.stail-intro-body {
	padding: 1.25rem 1.65rem;
}

.stail-section-head {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	justify-content: space-between;
	gap: 0.5rem;
	margin-block-end: 0.5rem;
}

.stail-section-head h2 {
	margin: 0 !important;
	font-size: 1.05rem !important;
	line-height: 1.3 !important;
	font-weight: 800 !important;
	color: var(--stail-text);
}

.stail-link-subtle {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
}

.stail-about-excerpt {
	margin: 0 !important;
	color: var(--stail-text-body);
	font-size: 0.94rem;
	line-height: 1.68 !important;
}

.stail-indexing-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.55rem 0.85rem;
	padding: 0.75rem 1.65rem;
	background: var(--stail-surface-muted);
	border-block-start: 1px solid var(--stail-border);
}

.stail-indexing-label {
	font-size: 0.76rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--stail-text-muted);
	flex: 0 0 auto;
}

.stail-indexing-row {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.45rem;
}

.stail-indexer-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.42rem;
	padding-block: 0.24rem;
	padding-inline: 0.32rem 0.65rem;
	border-radius: 999px;
	background: var(--stail-surface);
	border: 1px solid var(--stail-border-strong);
	text-decoration: none !important;
	color: var(--stail-text) !important;
	font-size: 0.8rem;
	font-weight: 600;
}

.stail-indexer-chip:hover {
	background: var(--stail-primary-soft);
	border-color: var(--stail-primary);
	color: var(--stail-primary-dark) !important;
}

.stail-indexer-monogram {
	flex: 0 0 auto;
	inline-size: 22px;
	block-size: 22px;
	border-radius: 999px;
	background: var(--stail-primary);
	color: #ffffff;
	font-size: 0.66rem;
	font-weight: 800;
	display: grid;
	place-items: center;
	letter-spacing: 0.02em;
}

/* Primary Wide Publication Sheet (Houses Current Issue + Full-Width Article TOC) */
.stail-publication-sheet {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-block-start: 4px solid var(--stail-primary);
	border-radius: var(--stail-radius-lg);
	padding: clamp(1.35rem, 2.8vw, 2.25rem);
	box-shadow: var(--stail-shadow-sm);
	margin: 0 !important;
}

.stail-pub-sheet-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.85rem 1.25rem;
	padding-block-end: 1.25rem;
	margin-block-end: 1.5rem;
	border-block-end: 1px solid var(--stail-border);
}

.stail-eyebrow {
	display: inline-block;
	font-size: 0.76rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--stail-primary);
	margin-block-end: 0.25rem;
}

.stail-issue-main-title {
	margin: 0 !important;
	font-size: clamp(1.35rem, 2.1vw, 1.65rem) !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: var(--stail-text);
}

/* Wide Issue Feature Banner inside TOC */
.stail-issue-hero {
	container: issue-hero / inline-size;
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-md);
	padding: 1.35rem 1.5rem;
	margin-block-end: 2rem;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.4rem;
	align-items: center;
}

.stail-page-shell .obj_issue_toc .stail-issue-cover-link.cover {
	float: none !important;
	width: 100% !important;
	inline-size: 100% !important;
	max-inline-size: 175px;
	margin: 0 !important;
	border-radius: var(--stail-radius-sm);
	overflow: clip;
	border: 1px solid var(--stail-border-strong);
	box-shadow: 0 10px 24px -6px rgba(15, 23, 42, 0.22);
	background: var(--stail-surface);
}

.stail-page-shell .obj_issue_toc .stail-issue-cover-link.cover img {
	inline-size: 100%;
	block-size: auto;
	max-block-size: none;
}

@container issue-hero (inline-size > 460px) {
	.stail-issue-hero:has(> .stail-issue-cover-link) {
		grid-template-columns: 165px minmax(0, 1fr);
		gap: 1.65rem;
	}
}

.stail-issue-meta-body {
	min-inline-size: 0;
}

.stail-issue-badges {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.5rem;
	margin-block-end: 0.65rem;
}

.stail-published-pill,
.stail-openaccess-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin: 0 !important;
	padding-block: 0.24rem;
	padding-inline: 0.65rem;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 600;
}

.stail-published-pill {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border-strong);
	color: var(--stail-text-body);
}

.stail-openaccess-pill {
	background: var(--stail-primary-soft);
	border: 1px solid rgba(15, 109, 52, 0.2);
	color: var(--stail-primary);
}

.stail-issue-hero-name {
	margin-block: 0 0.45rem !important;
	font-size: 1.2rem;
	font-weight: 800;
	line-height: 1.35 !important;
}

.stail-issue-hero-name a {
	color: var(--stail-text);
	text-decoration: none;
}

.stail-issue-hero-name a:hover {
	color: var(--stail-primary);
	text-decoration: underline;
}

.stail-issue-desc,
.stail-issue-subnote {
	margin: 0 !important;
	color: var(--stail-text-muted);
	font-size: 0.9rem;
	line-height: 1.6 !important;
}

/* ==========================================================================
   5. Full-Width Editorial Table of Contents & Article Entries
   ========================================================================== */

.stail-page-shell .obj_issue_toc .stail-toc-section.section {
	margin: 0 !important;
	padding: 0 !important;
}

.stail-toc-sections {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.stail-toc-section-head {
	display: flex;
	align-items: safe center;
	justify-content: space-between;
	gap: 0.75rem;
	padding-block: 0.6rem;
	padding-inline: 0.9rem;
	margin-block-end: 0.25rem;
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-sm);
}

.stail-page-shell .obj_issue_toc .stail-toc-section.section > .stail-toc-section-head .stail-toc-section-title,
.stail-toc-section-title {
	position: static !important;
	display: inline-flex !important;
	align-items: center;
	gap: 0.55rem;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	font-size: 0.96rem !important;
	font-weight: 800 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--stail-text) !important;
}

.stail-toc-accent-dot {
	inline-size: 8px;
	block-size: 18px;
	border-radius: 4px;
	background: var(--stail-primary);
	flex: 0 0 auto;
}

.stail-toc-count {
	font-size: 0.78rem;
	font-weight: 700;
	padding-block: 0.2rem;
	padding-inline: 0.65rem;
	border-radius: 999px;
	background: var(--stail-primary-soft);
	color: var(--stail-primary);
}

/* Editorial Article List: Clean Full-Width Scholarly Rows (Not Cramped Widget Boxes) */
.stail-article-list,
.stail-page-shell .cmp_article_list.articles {
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.stail-article-list > li,
.stail-page-shell .cmp_article_list.articles > li {
	margin: 0 !important;
	padding: 0 !important;
	border-block-end: 1px solid var(--stail-border);
}

.stail-article-list > li:last-child,
.stail-page-shell .cmp_article_list.articles > li:last-child {
	border-block-end: 0;
}

.stail-article-card {
	container: article-card / inline-size;
	background: transparent;
	border-inline-start: 3px solid transparent;
	padding-block: 1.35rem;
	padding-inline: 0.85rem 0.5rem;
	margin: 0 !important;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.55rem;
	transition: background-color 0.16s ease, border-color 0.16s ease;
}

.stail-article-card:hover {
	background: var(--stail-surface-muted);
	border-inline-start-color: var(--stail-primary);
}

.stail-article-thumb {
	inline-size: 100%;
	max-inline-size: 120px;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	border-radius: var(--stail-radius-sm);
	border: 1px solid var(--stail-border);
}

@container article-card (inline-size > 520px) {
	.stail-article-card:has(> .stail-article-thumb) {
		grid-template-columns: 112px minmax(0, 1fr);
		column-gap: 1.25rem;
	}

	.stail-article-card:has(> .stail-article-thumb) > .stail-article-thumb {
		grid-column: 1;
		grid-row: 1 / span 3;
	}

	.stail-article-card:has(> .stail-article-thumb) > :not(.stail-article-thumb) {
		grid-column: 2;
	}
}

.stail-page-shell .obj_article_summary > .stail-article-title.title {
	margin: 0 !important;
	font-size: 1.08rem !important;
	line-height: 1.48 !important;
	font-weight: 700 !important;
	min-inline-size: 0;
	overflow-wrap: anywhere;
}

.stail-page-shell .obj_article_summary > .stail-article-title.title a {
	color: var(--stail-text);
	text-decoration: none;
}

.stail-page-shell .obj_article_summary > .stail-article-title.title a:hover {
	color: var(--stail-primary);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.stail-page-shell .obj_article_summary .subtitle {
	font-size: 0.94rem;
	font-weight: 500;
	color: var(--stail-text-muted);
	margin-block: 0.2rem 0;
}

.stail-page-shell .obj_article_summary .stail-article-meta.meta {
	position: static;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.45rem 1.15rem;
	font-size: 0.9rem;
	color: var(--stail-text-muted);
}

.stail-page-shell .obj_article_summary .stail-article-authors.authors {
	padding: 0 !important;
	display: inline-flex;
	align-items: center;
	gap: 0.42rem;
	font-weight: 500;
	color: var(--stail-text-body);
}

.stail-article-authors svg {
	flex: 0 0 auto;
	color: var(--stail-primary);
}

.stail-article-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	justify-content: space-between;
	gap: 0.55rem 1rem;
	padding-block-start: 0.35rem;
}

.stail-article-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	gap: 0.5rem 0.75rem;
	min-inline-size: 0;
}

.stail-page-shell .obj_article_summary .stail-galley-list.galleys_links {
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.stail-page-shell .obj_article_summary .stail-galley-list.galleys_links li {
	margin: 0 !important;
}

/* Galley Download Button */
.stail-page-shell .stail-galley-btn.obj_galley_link,
.stail-page-shell .stail-galley-btn.obj_galley_link_supplementary {
	display: inline-flex;
	align-items: center;
	gap: 0.38rem;
	padding-block: 0.3rem;
	padding-inline: 0.85rem;
	min-block-size: 31px;
	border-radius: 6px;
	background: var(--stail-primary);
	border: 1px solid var(--stail-primary);
	color: #ffffff !important;
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-decoration: none !important;
}

.stail-page-shell .stail-galley-btn.obj_galley_link::before,
.stail-page-shell .stail-galley-btn.obj_galley_link_supplementary::after {
	content: none !important;
	display: none !important;
}

.stail-page-shell .stail-galley-btn.obj_galley_link:hover,
.stail-page-shell .stail-galley-btn.obj_galley_link_supplementary:hover {
	background: var(--stail-primary-dark);
	border-color: var(--stail-primary-dark);
	color: #ffffff !important;
}

/* Inline DOI Pill on Article TOC Row */
.stail-doi-badge {
	display: inline-flex;
	align-items: center;
	min-inline-size: 0;
	border-radius: 6px;
	border: 1px solid var(--stail-border-strong);
	background: var(--stail-surface);
	font-size: 0.76rem;
	line-height: 1.2;
	text-decoration: none !important;
	overflow: clip;
}

.stail-doi-prefix {
	background: var(--stail-surface-muted);
	color: var(--stail-text-muted);
	font-weight: 800;
	padding: 0.32rem 0.5rem;
	border-inline-end: 1px solid var(--stail-border);
}

.stail-doi-val {
	padding: 0.32rem 0.6rem;
	color: var(--stail-primary);
	font-weight: 600;
	min-inline-size: 0;
	overflow-wrap: anywhere;
}

.stail-doi-badge:hover {
	border-color: var(--stail-primary);
}

.stail-doi-badge:hover .stail-doi-val {
	background: var(--stail-primary-soft);
	color: var(--stail-primary-dark);
}

.stail-page-shell .obj_article_summary .stail-article-pages.pages {
	position: static !important;
	margin-inline-start: auto;
	font-size: 0.8rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: var(--stail-text-muted);
	background: var(--stail-surface-muted);
	padding-block: 0.22rem;
	padding-inline: 0.65rem;
	border-radius: 6px;
	border: 1px solid var(--stail-border);
	line-height: 1.35;
}

/* Buttons & Call for Papers Card */
.stail-btn-primary,
.stail-btn-outline,
.stail-view-all-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	padding-block: 0.55rem;
	padding-inline: 1.1rem;
	min-block-size: 38px;
	border-radius: var(--stail-radius-sm);
	font-size: 0.86rem;
	font-weight: 700;
	text-decoration: none !important;
	cursor: pointer;
}

.stail-btn-primary {
	background: var(--stail-primary);
	border: 1px solid var(--stail-primary);
	color: #ffffff !important;
}

.stail-btn-primary:hover {
	background: var(--stail-primary-dark);
	border-color: var(--stail-primary-dark);
	color: #ffffff !important;
}

.stail-btn-outline,
.stail-view-all-btn {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border-strong);
	color: var(--stail-primary) !important;
}

.stail-btn-outline:hover,
.stail-view-all-btn:hover {
	background: var(--stail-primary-soft);
	border-color: var(--stail-primary);
	color: var(--stail-primary-dark) !important;
}

.stail-archive-footer-cta {
	margin-block-start: 1.5rem;
	padding-block-start: 1.25rem;
	border-block-start: 1px solid var(--stail-border);
	display: flex;
	justify-content: flex-end;
}

.stail-cfp-card {
	background: linear-gradient(145deg, var(--stail-surface) 0%, var(--stail-primary-soft) 100%);
	border: 1px solid var(--stail-border-strong);
	border-block-start: 4px solid var(--stail-primary);
	border-radius: var(--stail-radius-lg);
	padding: 2.25rem;
	box-shadow: var(--stail-shadow-sm);
}

.stail-cfp-card h2 {
	margin-block: 0.25rem 0.65rem !important;
	font-size: 1.4rem !important;
	color: var(--stail-text);
}

.stail-cfp-card p {
	margin-block: 0 1.25rem !important;
	max-inline-size: 68ch;
}

.stail-cfp-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* ==========================================================================
   6. Compact Right Utility Sidebar (<aside class="stail-sidebar">)
   ========================================================================== */

.stail-sidebar {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.stail-sidebar .pkp_block {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-md);
	padding: 1.1rem 1.15rem !important;
	box-shadow: var(--stail-shadow-sm);
	font-size: 0.85rem;
}

.stail-sidebar .pkp_block .title {
	font-size: 0.8rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--stail-text-muted);
	padding-block-end: 0.55rem;
	margin-block-end: 0.8rem;
	border-block-end: 1px solid var(--stail-border);
}

/* Author CTA Card */
.stail-cta-card {
	background: linear-gradient(180deg, var(--stail-surface) 0%, var(--stail-primary-soft) 100%) !important;
	border-color: var(--stail-border-strong) !important;
}

.stail-cta-desc {
	margin-block: 0 0.85rem;
	font-size: 0.83rem;
	line-height: 1.55;
	color: var(--stail-text-body);
}

.stail-cta-actions {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.stail-btn-submit-full,
.stail-btn-template-full {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	inline-size: 100%;
	min-block-size: 38px;
	padding-block: 0.55rem;
	padding-inline: 0.9rem;
	border-radius: var(--stail-radius-sm);
	font-size: 0.84rem;
	font-weight: 700;
	text-decoration: none !important;
	text-align: center;
}

.stail-btn-submit-full {
	background: var(--stail-primary);
	color: #ffffff !important;
	box-shadow: 0 4px 10px -2px rgba(15, 23, 42, 0.18);
}

.stail-btn-submit-full:hover {
	background: var(--stail-primary-dark);
	color: #ffffff !important;
}

.stail-btn-template-full {
	background: var(--stail-surface);
	border: 1.5px solid var(--stail-primary);
	color: var(--stail-primary) !important;
}

.stail-btn-template-full:hover {
	background: var(--stail-surface-muted);
	color: var(--stail-primary-dark) !important;
}

/* Metadata Definition List */
.stail-meta-list {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.stail-meta-row {
	display: grid;
	grid-template-columns: 78px minmax(0, 1fr);
	gap: 0.45rem;
	font-size: 0.82rem;
	padding-block-end: 0.45rem;
	border-block-end: 1px dashed var(--stail-border);
}

.stail-meta-row:last-child {
	padding-block-end: 0;
	border-block-end: 0;
}

.stail-meta-row dt {
	font-weight: 700;
	color: var(--stail-text-muted);
}

.stail-meta-row dd {
	margin: 0;
	color: var(--stail-text);
	min-inline-size: 0;
}

/* Quick Editorial Links Menu */
.stail-quickmenu-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.stail-quickmenu-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding-block: 0.42rem;
	padding-inline: 0.55rem;
	border-radius: var(--stail-radius-sm);
	color: var(--stail-text-body) !important;
	font-size: 0.84rem;
	font-weight: 600;
	text-decoration: none;
	min-block-size: 32px;
}

.stail-quickmenu-list a:hover {
	background: var(--stail-primary-soft);
	color: var(--stail-primary) !important;
}

/* Sidebar Indexer & Tool Partner Logos Card */
.stail-indexer-logo-card {
	padding: 1.15rem !important;
}

.stail-sidebar-logos {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.65rem;
}

.stail-sidebar-logo-item {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-sm);
	padding: 0.5rem 0.6rem;
	min-block-size: 58px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
	text-decoration: none;
}

.stail-sidebar-logo-item:hover {
	transform: translateY(-2px);
	border-color: var(--stail-primary);
	box-shadow: var(--stail-shadow-sm);
}

.stail-sidebar-logo-item img {
	max-inline-size: 100%;
	max-block-size: 38px;
	inline-size: auto;
	block-size: auto;
	object-fit: contain;
}

/* Sidebar Visitor Statistics & Flag Counter Card */
.stail-visitor-stats-card {
	padding: 1.15rem !important;
}

.stail-stats-box {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.stail-flagcounter-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-sm);
	padding: 0.65rem 0.5rem;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	overflow: hidden;
}

.stail-flagcounter-wrap a {
	display: block;
	max-inline-size: 100%;
	line-height: 0;
}

.stail-flagcounter-img {
	max-inline-size: 100%;
	block-size: auto;
	display: block;
	margin-inline: auto;
	border-radius: 4px;
}

.stail-stats-meta-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-block-start: 0.35rem;
	border-block-start: 1px dashed var(--stail-border);
	font-size: 0.78rem;
}

.stail-stats-link {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	color: var(--stail-primary);
	font-weight: 600;
	text-decoration: none;
	font-size: 0.8rem;
	transition: color 0.15s ease;
}

.stail-stats-link:hover {
	color: var(--stail-primary-hover);
	text-decoration: underline;
}

.stail-statcounter-tracker {
	display: inline-block;
	opacity: 0.01;
	inline-size: 1px;
	block-size: 1px;
}

.stail-sidebar .block_information ul li a {
	display: block;
	padding-block: 0.28rem;
	font-weight: 500;
	color: var(--stail-text-body);
}

.stail-sidebar .block_information ul li a:hover {
	color: var(--stail-primary);
}

.stail-sidebar .block_developed_by {
	display: none;
}

/* ==========================================================================
   7. Inner Pages: Article Details, Issue Archive, Search, Static/About, Auth
   ========================================================================== */

.stail-page-shell .page:not(.page_index_journal) {
	background: var(--stail-surface);
	border: 1px solid var(--stail-border);
	border-block-start: 4px solid var(--stail-primary);
	border-radius: var(--stail-radius-lg);
	padding: clamp(1.35rem, 2.8vw, 2.25rem);
	box-shadow: var(--stail-shadow-sm);
}

.stail-page-shell .cmp_breadcrumbs {
	display: block;
	margin-block-end: 1.25rem;
	padding-block: 0.45rem;
	padding-inline: 0.85rem;
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-sm);
	font-size: 0.83rem;
}

.stail-page-shell .cmp_breadcrumbs ol {
	margin: 0;
	padding: 0;
}

.stail-page-shell .page h1,
.stail-page-heading {
	margin-block: 0 1.25rem;
	font-size: clamp(1.35rem, 2.2vw, 1.75rem);
	line-height: 1.3;
	font-weight: 800;
	color: var(--stail-text);
}

/* Article Detail View (.obj_article_details) */
.stail-page-shell .obj_article_details .page_title {
	font-size: clamp(1.3rem, 2.2vw, 1.7rem);
	line-height: 1.35;
	color: var(--stail-text);
	margin-block-end: 0.5rem;
}

.stail-page-shell .obj_article_details > .row {
	margin-inline: 0 !important;
	border: 0 !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.75rem;
}

@media (min-width: 768px) {
	.stail-page-shell .obj_article_details > .row {
		grid-template-columns: minmax(0, 1fr) 235px;
	}

	.stail-page-shell .obj_article_details > .row > .main_entry {
		grid-column: 1;
	}

	.stail-page-shell .obj_article_details > .row > .entry_details {
		grid-column: 2;
	}
}

.stail-page-shell .obj_article_details .main_entry,
.stail-page-shell .obj_article_details .entry_details {
	float: none !important;
	width: 100% !important;
	inline-size: 100% !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	min-inline-size: 0;
}

.stail-page-shell .obj_article_details .main_entry > .item {
	padding-inline: 0 !important;
}

.stail-page-shell .obj_article_details .entry_details {
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border) !important;
	border-radius: var(--stail-radius-md);
	padding: 1.15rem !important;
	align-self: start;
}

.stail-page-shell .obj_article_details .entry_details .item {
	margin: 0;
	padding-block: 0.85rem;
	padding-inline: 0;
	border-block-end: 1px solid var(--stail-border);
}

.stail-page-shell .obj_article_details .entry_details .item:first-child {
	padding-block-start: 0;
}

.stail-page-shell .obj_article_details .entry_details .item:last-child {
	padding-block-end: 0;
	border-block-end: 0;
}

.stail-page-shell .obj_article_details .abstract {
	background: var(--stail-surface-muted);
	border-inline-start: 4px solid var(--stail-primary);
	border-radius: var(--stail-radius-sm);
	padding: 1.2rem 1.35rem !important;
}

/* Issue Archive Grid */
.stail-page-shell .issues_archive {
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1.25rem;
}

.stail-page-shell .issues_archive > li {
	margin: 0 !important;
	padding: 1.15rem !important;
	border: 1px solid var(--stail-border) !important;
	border-radius: var(--stail-radius-md);
	background: var(--stail-surface-muted);
	transition: border-color 0.16s ease, box-shadow 0.16s ease;
}

.stail-page-shell .issues_archive > li:hover {
	border-color: var(--stail-primary) !important;
	background: var(--stail-surface);
	box-shadow: var(--stail-shadow-sm);
}

.stail-page-shell .obj_issue_summary .cover {
	float: none !important;
	width: 100% !important;
	inline-size: 100% !important;
	max-inline-size: 150px;
	margin-block-end: 0.85rem !important;
	border-radius: var(--stail-radius-sm);
	overflow: clip;
	border: 1px solid var(--stail-border);
}

/* Search Form */
.stail-search-form {
	background: var(--stail-surface-muted);
	border: 1px solid var(--stail-border);
	border-radius: var(--stail-radius-md);
	padding: 1.25rem;
	margin-block-end: 1.75rem;
}

.stail-field-label {
	display: block;
	font-weight: 700;
	font-size: 0.9rem;
	color: var(--stail-text);
	margin-block-end: 0.45rem;
}

.stail-search-bar-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.stail-search-bar-row input.query {
	flex: 1 1 240px;
	min-block-size: 42px;
	max-inline-size: none !important;
	padding-inline: 0.95rem;
	border-radius: var(--stail-radius-sm);
	border: 1px solid var(--stail-border-strong);
	background: var(--stail-surface);
	font-size: 0.95rem;
}

.page_search button.stail-btn-primary::after {
	content: none !important;
	display: none !important;
}

.stail-search-filters {
	margin-block-start: 1rem !important;
	padding-block-start: 0.85rem !important;
	border-block-start: 1px solid var(--stail-border) !important;
}

/* ==========================================================================
   8. Responsive 3-Column Academic Footer
   ========================================================================== */

.stail-footer-wrapper.pkp_structure_footer_wrapper {
	background: #0f172a;
	color: #cbd5e1;
	border-block-start: 4px solid var(--stail-primary);
	margin-block-start: auto;
}

.stail-footer.pkp_structure_footer {
	padding-block: 2.75rem 1.75rem !important;
	text-align: start !important;
}

.stail-footer-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 2rem;
	padding-block-end: 2rem;
	border-block-end: 1px solid rgba(255, 255, 255, 0.1);
}

.stail-footer-heading {
	margin-block: 0 0.85rem;
	font-size: 1rem;
	font-weight: 700;
	color: #ffffff;
	line-height: 1.35;
}

.stail-footer-inst {
	margin-block: 0 0.75rem;
	font-size: 0.88rem;
	line-height: 1.6;
	color: #e2e8f0;
}

.stail-footer-address {
	font-style: normal;
	font-size: 0.84rem;
	line-height: 1.65;
	color: #94a3b8;
}

.stail-footer-address a,
.stail-cc-box a {
	color: #93c5fd !important;
	text-decoration: underline;
}

.stail-footer-nav {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.stail-footer-nav a {
	color: #cbd5e1 !important;
	font-size: 0.88rem;
	text-decoration: none;
	display: inline-block;
	padding-block: 0.15rem;
}

.stail-footer-nav a:hover {
	color: #ffffff !important;
	text-decoration: underline;
}

.stail-cc-box p {
	margin-block: 0.55rem 0;
	font-size: 0.82rem;
	line-height: 1.55;
	color: #94a3b8;
}

.stail-cc-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding-block: 0.28rem;
	padding-inline: 0.7rem;
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #ffffff !important;
	font-size: 0.8rem;
	font-weight: 700;
	text-decoration: none !important;
}

.stail-ojs-brand.pkp_brand_footer {
	float: none !important;
	width: auto !important;
	inline-size: auto !important;
	padding: 0 !important;
	margin-block-start: 1rem;
}

.stail-ojs-brand.pkp_brand_footer a {
	float: none !important;
	display: inline-block;
}

.stail-ojs-brand img {
	max-inline-size: 115px;
	opacity: 0.88;
	background: rgba(255, 255, 255, 0.92);
	padding: 0.35rem 0.55rem;
	border-radius: 6px;
}

/* Footer Mini Visitor Flag Counter */
.stail-footer-stats-wrap {
	margin-block-start: 1.15rem;
	padding-block-start: 0.85rem;
	border-block-start: 1px dashed rgba(255, 255, 255, 0.16);
}

.stail-footer-stats-title {
	display: block;
	font-size: 0.74rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #94a3b8;
	margin-block-end: 0.45rem;
}

.stail-footer-stats-wrap a {
	display: inline-block;
	background: #ffffff;
	padding: 0.4rem 0.55rem;
	border-radius: var(--stail-radius-sm);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22);
	line-height: 0;
	transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.stail-footer-stats-wrap a:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
}

.stail-footer-flag-img {
	max-inline-size: 100%;
	block-size: auto;
	display: block;
	border-radius: 3px;
}

/* Footer Partner & Indexing Logos Showcase */
.stail-footer-logos-row {
	margin-block: 1.75rem 0;
	padding-block-start: 1.5rem;
	border-block-start: 1px solid rgba(255, 255, 255, 0.12);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 1.5rem;
}

.stail-footer-logos-label {
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #94a3b8;
	text-transform: uppercase;
}

.stail-footer-logos-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem;
}

.stail-footer-logo-item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	border-radius: var(--stail-radius-sm);
	padding: 0.45rem 0.85rem;
	min-inline-size: 110px;
	min-block-size: 48px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
	transition: transform 0.16s ease, box-shadow 0.16s ease;
	text-decoration: none;
}

.stail-footer-logo-item:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.32);
}

.stail-footer-logo-item img {
	max-inline-size: 115px;
	max-block-size: 34px;
	inline-size: auto;
	block-size: auto;
	object-fit: contain;
}

.stail-footer-bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: safe center;
	justify-content: space-between;
	gap: 0.75rem;
	padding-block-start: 1.25rem;
	font-size: 0.82rem;
	color: #94a3b8;
}

.stail-footer-bottom a {
	color: #cbd5e1 !important;
	text-decoration: none;
	font-weight: 600;
}

.stail-footer-bottom a:hover {
	color: #ffffff !important;
	text-decoration: underline;
}

/* Coarse pointer touch-target comfort (WCAG 2.5.8) */
@media (pointer: coarse) {
	.stail-galley-btn,
	.stail-portal-back,
	.stail-search-pill,
	.stail-nav-submit-btn,
	.stail-quickmenu-list a {
		min-block-size: 40px;
	}
}
