/* =========================================================
   Mosafa – Scholar OJS Theme
   Colours come from theme options: --msf-primary, --msf-accent
   ========================================================= */
:root {
	--msf-primary: #0B2545;
	--msf-accent: #1A73E8;
	--msf-ink: #14213D;
	--msf-text: #3B4559;
	--msf-muted: #6B7588;
	--msf-line: #E3E8F0;
	--msf-tint: #F3F6FB;
	--msf-white: #FFFFFF;
	--msf-radius: calc(10px * var(--msf-r, 1));
	--msf-shadow: 0 6px 22px rgba(11, 37, 69, .08);
	--msf-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--msf-serif: "Merriweather", Georgia, "Times New Roman", serif;
	--msf-max: 1200px;
}

body.msf {
	font-family: var(--msf-font);
	color: var(--msf-text);
	background: var(--msf-white);
	-webkit-font-smoothing: antialiased;
}
.msf h1, .msf h2, .msf h3, .msf h4 { font-family: var(--msf-font); color: var(--msf-ink); }
.msf a { color: var(--msf-accent); }
.msf .pkp_structure_page { max-width: none; margin: 0; box-shadow: none; background: transparent; }
.msf-container { max-width: var(--msf-max); margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.msf *, .msf *::before, .msf *::after { box-sizing: border-box; }

/* ---------- Buttons / links ---------- */
.msf-btn {
	display: inline-flex; align-items: center; gap: 10px;
	padding: 13px 24px; border-radius: calc(8px * var(--msf-r, 1)); font-weight: 600; font-size: calc(15px * var(--msf-fs, 1));
	text-decoration: none !important; border: 2px solid transparent; transition: .2s ease; line-height: 1.2;
}
.msf-btn--accent { background: var(--msf-accent); color: #fff !important; }
.msf-btn--accent:hover { filter: brightness(1.1); transform: translateY(-1px); }
.msf-btn--ghost { border-color: rgba(255,255,255,.85); color: #fff !important; }
.msf-btn--ghost:hover { background: #fff; color: var(--msf-primary) !important; }
.msf-btn--primary { background: var(--msf-primary); color: #fff !important; }
.msf-btn--primary:hover { background: var(--msf-accent); }
.msf-btn--sm { padding: 9px 16px; font-size: calc(13px * var(--msf-fs, 1)); }
.msf-link { font-weight: 600; font-size: calc(14px * var(--msf-fs, 1)); text-decoration: none; color: var(--msf-accent) !important; white-space: nowrap; }
.msf-link:hover { text-decoration: underline; }
.msf-link .fa { font-size: calc(12px * var(--msf-fs, 1)); margin-left: 4px; }

/* ---------- Header ---------- */
.msf-header.pkp_structure_head { background: #fff; border-bottom: 1px solid var(--msf-line); padding: 0; position: relative; z-index: 50; }
.msf-topbar { background: var(--msf-primary); color: rgba(255,255,255,.88); font-size: calc(13px * var(--msf-fs, 1)); }
.msf-topbar__inner { display: flex; justify-content: space-between; align-items: center; min-height: 40px; gap: 16px; }
.msf-topbar__contact { display: flex; gap: 26px; flex-wrap: wrap; }
.msf-topbar a { color: rgba(255,255,255,.9) !important; text-decoration: none; }
.msf-topbar a:hover { color: #fff !important; }
.msf-topbar .fa { margin-right: 6px; opacity: .85; }
.msf-topbar__user.pkp_navigation_user_wrapper { position: static; padding: 0; width: auto; display: block; }
.msf-usernav.pkp_navigation_user { display: flex; gap: 22px; margin: 0; padding: 0; list-style: none; float: none; }
.msf-usernav > li { position: relative; display: block; }
.msf-usernav > li > a { padding: 10px 0; display: inline-block; font-size: calc(13px * var(--msf-fs, 1)); }
.msf-usernav ul { background: #fff; border-radius: calc(8px * var(--msf-r, 1)); box-shadow: var(--msf-shadow); }
.msf-usernav ul a { color: var(--msf-ink) !important; }

.msf-mainbar__inner { display: flex; align-items: center; justify-content: space-between; min-height: 88px; gap: 24px; }
.msf-brand { display: flex; align-items: center; gap: 14px; text-decoration: none !important; min-width: 0; }
.msf-brand__logo { height: 58px; width: auto; flex: none; }
.msf-brand__text { display: flex; flex-direction: column; border-left: 1px solid var(--msf-line); padding-left: 14px; }
.msf-brand__name { font-family: var(--msf-serif); font-weight: 700; font-size: calc(21px * var(--msf-fs, 1) * var(--msf-hs, 1)); color: var(--msf-primary); line-height: 1.2; }
.msf-brand__tagline { font-size: calc(10.5px * var(--msf-fs, 1)); letter-spacing: .14em; text-transform: uppercase; color: var(--msf-muted); margin-top: 5px; white-space: pre; }

.msf-nav.pkp_site_nav_menu { display: flex; align-items: center; gap: 8px; background: transparent; position: static; width: auto; padding: 0; }
.msf-nav .pkp_navigation_primary.msf-nav__list { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; gap: 2px; }
.msf-nav__list > li { position: relative; display: block; }
.msf-nav__list > li > a {
	display: block; padding: 10px 13px !important; margin: 0; border: 0 !important;
	color: var(--msf-ink) !important; font-weight: 500; font-size: calc(15px * var(--msf-fs, 1)); text-decoration: none !important; position: relative;
}
.msf-nav__list > li > a::after {
	content: ""; position: absolute; left: 13px; right: 13px; bottom: 2px; height: 3px; border-radius: calc(2px * var(--msf-r, 1));
	background: var(--msf-accent); transform: scaleX(0); transition: transform .2s ease;
}
.msf-nav__list > li > a:hover::after, .msf-nav__list > li > a:focus::after { transform: scaleX(1); }
.msf-nav__list > li > a:hover { color: var(--msf-accent) !important; }
.msf-nav__list > li > ul {
	position: absolute; top: 100%; left: 0; min-width: 230px; margin: 0; padding: 8px 0; list-style: none;
	background: #fff; border: 1px solid var(--msf-line); border-radius: calc(10px * var(--msf-r, 1)); box-shadow: var(--msf-shadow);
	display: none; z-index: 1000;
}
.msf-nav__list > li:hover > ul, .msf-nav__list > li:focus-within > ul, .msf-nav__list > li > ul.show { display: block; }
.msf-nav__list > li > ul a { display: block; padding: 9px 18px; color: var(--msf-ink) !important; text-decoration: none; font-size: calc(14px * var(--msf-fs, 1)); border: 0 !important; }
.msf-nav__list > li > ul a:hover { background: var(--msf-tint); color: var(--msf-accent) !important; }
.msf-nav__list .dropdown-toggle::after, .msf-nav__list > li > a[data-toggle]::before { display: none; }
.msf-nav__search { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; color: var(--msf-ink) !important; text-decoration: none; }
.msf-nav__search:hover { background: var(--msf-tint); color: var(--msf-accent) !important; }
.msf-navtoggle.pkp_site_nav_toggle { display: none; }

/* ---------- Hero slider ---------- */
.msf-hero { position: relative; height: 470px; overflow: hidden; background: var(--msf-primary); }
.msf-hero__slide {
	position: absolute; inset: 0; background-size: cover; background-position: center;
	opacity: 0; transition: opacity .9s ease; display: flex; align-items: center;
}
.msf-hero__slide::before {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(90deg, rgba(8,25,48,.92) 0%, rgba(8,25,48,.78) 42%, rgba(8,25,48,.25) 75%, rgba(8,25,48,.1) 100%);
}
.msf-hero__slide.is-active { opacity: 1; z-index: 1; }
.msf-hero__content { position: relative; z-index: 2; width: 100%; color: #fff; }
.msf-hero__kicker { text-transform: uppercase; letter-spacing: .22em; font-size: calc(13px * var(--msf-fs, 1)); font-weight: 600; margin: 0 0 14px; color: rgba(255,255,255,.85); }
.msf .msf-hero__title { font-size: calc(44px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.15; font-weight: 800; color: #fff; margin: 0 0 18px; max-width: 640px; }
.msf-hero__text { font-size: calc(17px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.65; max-width: 560px; margin: 0 0 30px; color: rgba(255,255,255,.9); }
.msf-hero__actions { display: flex; gap: 14px; flex-wrap: wrap; }
.msf-hero__dots { position: absolute; bottom: 22px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; z-index: 3; }
.msf-hero__dot { width: 10px; height: 10px; border-radius: 50%; border: 0; padding: 0; background: rgba(255,255,255,.45); cursor: pointer; transition: .2s; }
.msf-hero__dot.is-active { background: #fff; width: 26px; border-radius: calc(6px * var(--msf-r, 1)); }
.msf-hero__arrow {
	position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 44px; height: 44px; border-radius: 50%;
	border: 1px solid rgba(255,255,255,.4); background: rgba(255,255,255,.08); color: #fff; font-size: calc(22px * var(--msf-fs, 1)); cursor: pointer; opacity: 0; transition: .2s;
}
.msf-hero:hover .msf-hero__arrow { opacity: 1; }
.msf-hero__arrow:hover { background: rgba(255,255,255,.22); }
.msf-hero__arrow--prev { left: 18px; }
.msf-hero__arrow--next { right: 18px; }

/* ---------- Stats strip ---------- */
.msf-stats { background: var(--msf-tint); border-bottom: 1px solid var(--msf-line); }
.msf-stats__inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 26px; padding-bottom: 26px; flex-wrap: wrap; }
.msf-stats__list { display: flex; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; }
.msf-stat { display: flex; align-items: center; gap: 14px; padding: 4px 30px; border-right: 1px solid var(--msf-line); }
.msf-stat:first-child { padding-left: 0; }
.msf-stat:last-child { border-right: 0; }
.msf-stat__icon { font-size: calc(26px * var(--msf-fs, 1)); color: var(--msf-primary); }
.msf-stat__body { display: flex; flex-direction: column; }
.msf-stat__value { font-size: calc(26px * var(--msf-fs, 1) * var(--msf-hs, 1)); font-weight: 800; color: var(--msf-ink); line-height: 1.1; }
.msf-stat__label { font-size: calc(13px * var(--msf-fs, 1)); color: var(--msf-muted); margin-top: 3px; }
.msf-search { display: grid; grid-template-columns: 1fr 46px; width: 360px; max-width: 100%; }
.msf-search input {
	height: 46px; border: 1px solid var(--msf-line); border-right: 0; border-radius: calc(8px * var(--msf-r, 1)) 0 0 calc(8px * var(--msf-r, 1)); padding: 0 14px;
	font: inherit; font-size: calc(14px * var(--msf-fs, 1)); background: #fff; color: var(--msf-ink); width: 100%;
}
.msf-search input:focus { outline: 2px solid var(--msf-accent); outline-offset: -2px; }
.msf-search button { height: 46px; border: 0; border-radius: 0 calc(8px * var(--msf-r, 1)) calc(8px * var(--msf-r, 1)) 0; background: var(--msf-primary); color: #fff; cursor: pointer; font-size: calc(16px * var(--msf-fs, 1)); }
.msf-search button:hover { background: var(--msf-accent); }
.msf-search__adv { grid-column: 1 / -1; justify-self: end; margin-top: 8px; font-size: calc(13px * var(--msf-fs, 1)); font-weight: 600; text-decoration: none; color: var(--msf-primary) !important; }

/* ---------- Sections ---------- */
.msf-section { padding: 52px 0; }
.msf-section--tint { background: var(--msf-tint); }
.msf-section__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 24px; }
.msf .msf-section__title { font-size: calc(26px * var(--msf-fs, 1) * var(--msf-hs, 1)); font-weight: 800; margin: 0; position: relative; padding-bottom: 12px; }
.msf-section__title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 4px; border-radius: calc(2px * var(--msf-r, 1)); background: var(--msf-accent); }
.msf .msf-section__title--sm { font-size: calc(18px * var(--msf-fs, 1) * var(--msf-hs, 1)); padding-bottom: 0; }
.msf-section__title--sm::after { display: none; }
.msf-section__title--sm .fa { color: var(--msf-accent); margin-right: 8px; }
.msf-empty { color: var(--msf-muted); }

/* ---------- Latest articles + sidebar ---------- */
.msf-latest { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 34px; align-items: start; }
.msf-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.msf-card { background: #fff; border: 1px solid var(--msf-line); border-radius: var(--msf-radius); overflow: hidden; display: flex; flex-direction: column; transition: .2s ease; }
.msf-card:hover { box-shadow: var(--msf-shadow); transform: translateY(-3px); }
.msf-card__media { position: relative; display: block; height: 150px; background: var(--msf-primary); overflow: hidden; }
.msf-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.msf-card__media--placeholder { display: flex; align-items: center; justify-content: center; }
.msf-ph-1 { background: linear-gradient(135deg, var(--msf-primary), var(--msf-accent)); }
.msf-ph-2 { background: linear-gradient(135deg, #0F5132, #2E9E6A); }
.msf-ph-0 { background: linear-gradient(135deg, #3B2A6B, #7A5AE0); }
.msf-card__media--placeholder::before {
	content: ""; position: absolute; inset: 0; opacity: .18;
	background-image: radial-gradient(circle at 20% 30%, #fff 1.5px, transparent 2px), radial-gradient(circle at 70% 60%, #fff 1.5px, transparent 2px);
	background-size: 26px 26px, 34px 34px;
}
.msf-card__initial { font-family: var(--msf-serif); font-size: calc(64px * var(--msf-fs, 1)); color: rgba(255,255,255,.88); position: relative; }
.msf-badge { position: absolute; top: 12px; left: 12px; background: var(--msf-accent); color: #fff; font-size: calc(11.5px * var(--msf-fs, 1)); font-weight: 600; padding: 4px 10px; border-radius: calc(5px * var(--msf-r, 1)); max-width: calc(100% - 24px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.msf-card__body { padding: 16px 16px 18px; display: flex; flex-direction: column; flex: 1; }
.msf .msf-card__title { font-size: calc(15px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.4; font-weight: 700; margin: 0 0 12px; }
.msf-card__title a { color: var(--msf-ink) !important; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.msf-card__title a:hover { color: var(--msf-accent) !important; }
.msf-meta { list-style: none; margin: 0 0 14px; padding: 0; font-size: calc(12.5px * var(--msf-fs, 1)); color: var(--msf-muted); display: grid; gap: 7px; }
.msf-meta li { display: flex; gap: 8px; align-items: baseline; }
.msf-meta .fa { width: 14px; flex: none; text-align: center; color: var(--msf-muted); }
.msf-meta a { color: var(--msf-accent) !important; word-break: break-all; text-decoration: none; }
.msf-card__galleys { margin-top: auto; display: flex; gap: 8px; flex-wrap: wrap; }
.msf-chip { display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; border: 1px solid var(--msf-line); border-radius: calc(6px * var(--msf-r, 1)); font-size: calc(12.5px * var(--msf-fs, 1)); font-weight: 600; color: var(--msf-ink) !important; text-decoration: none; }
.msf-chip .fa-file-pdf-o { color: #D93025; }
.msf-chip:hover { border-color: var(--msf-accent); color: var(--msf-accent) !important; }

.msf-latest__side { display: grid; gap: 22px; }
.msf-panel { background: #fff; border: 1px solid var(--msf-line); border-radius: var(--msf-radius); padding: 20px; box-shadow: 0 2px 10px rgba(11,37,69,.04); }
.msf .msf-panel__title { font-size: calc(18px * var(--msf-fs, 1) * var(--msf-hs, 1)); font-weight: 700; margin: 0 0 16px; }
.msf-issue__body { display: grid; grid-template-columns: 110px 1fr; gap: 16px; }
.msf-issue__cover { display: block; border-radius: calc(6px * var(--msf-r, 1)); overflow: hidden; box-shadow: 0 6px 16px rgba(0,0,0,.18); aspect-ratio: 3 / 4; background: var(--msf-primary); }
.msf-issue__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.msf-issue__cover-ph { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 10px; color: #fff; text-align: center; font-size: calc(11px * var(--msf-fs, 1)); background: linear-gradient(160deg, var(--msf-primary), var(--msf-accent)); }
.msf-issue__cover-ph img { width: 54px; height: auto; object-fit: contain; }
.msf-issue__series { font-weight: 700; color: var(--msf-ink); margin: 0 0 4px; font-size: calc(15px * var(--msf-fs, 1)); }
.msf-issue__name { margin: 0 0 4px; font-size: calc(13px * var(--msf-fs, 1)); color: var(--msf-text); }
.msf-issue__date { font-size: calc(12.5px * var(--msf-fs, 1)); color: var(--msf-muted); margin: 0 0 12px; }
.msf-issue__links, .msf-quick { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 4px; }
.msf-issue__links a, .msf-quick a { display: flex; align-items: center; gap: 10px; padding: 7px 4px; font-size: calc(14px * var(--msf-fs, 1)); text-decoration: none; color: var(--msf-primary) !important; border-radius: calc(6px * var(--msf-r, 1)); }
.msf-issue__links a:hover, .msf-quick a:hover { background: var(--msf-tint); color: var(--msf-accent) !important; }
.msf-issue__links .fa, .msf-quick .fa { width: 18px; text-align: center; color: var(--msf-muted); }
.msf-quick { margin: 0; }
.msf-quick__chev { margin-left: auto; }

/* ---------- About / subjects / indexing ---------- */
.msf-trio { display: grid; grid-template-columns: 1fr 1.2fr 1.2fr; gap: 40px; }
.msf-trio__col + .msf-trio__col { border-left: 1px solid var(--msf-line); padding-left: 40px; }
.msf .msf-trio__title { font-size: calc(17px * var(--msf-fs, 1) * var(--msf-hs, 1)); font-weight: 700; margin: 0 0 18px; display: flex; gap: 10px; align-items: center; }
.msf-trio__title .fa { color: var(--msf-accent); }
.msf-trio__text { font-size: calc(14px * var(--msf-fs, 1)); line-height: 1.7; margin: 0 0 14px; }
.msf-tiles { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.msf-tiles a {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center;
	min-height: 86px; padding: 12px 8px; background: #fff; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1));
	font-size: calc(13px * var(--msf-fs, 1)); color: var(--msf-ink) !important; text-decoration: none; transition: .2s;
}
.msf-tiles .fa { font-size: calc(20px * var(--msf-fs, 1)); color: var(--msf-primary); }
.msf-tiles a:hover { border-color: var(--msf-accent); box-shadow: var(--msf-shadow); }
.msf-tiles a:hover .fa { color: var(--msf-accent); }
.msf-index { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.msf-index li {
	display: flex; align-items: center; justify-content: center; text-align: center; min-height: 62px; padding: 10px;
	background: #fff; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1)); font-weight: 700; font-size: calc(15px * var(--msf-fs, 1)); color: var(--msf-primary);
}

/* ---------- Announcements ---------- */
.msf-announce { padding-top: 38px; padding-bottom: 42px; background: linear-gradient(180deg, var(--msf-tint), #E9EFF8); }
.msf-announce .msf-section__head { margin-bottom: 16px; }
.msf-announce__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.msf-announce__item { display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--msf-line); border-radius: calc(10px * var(--msf-r, 1)); padding: 12px 14px; text-decoration: none !important; color: var(--msf-text) !important; }
.msf-announce__item:hover { box-shadow: var(--msf-shadow); }
.msf-announce__date { flex: none; width: 50px; text-align: center; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1)); padding: 6px 0; display: flex; flex-direction: column; }
.msf-announce__date strong { font-size: calc(18px * var(--msf-fs, 1)); color: var(--msf-ink); line-height: 1; }
.msf-announce__date small { font-size: calc(11px * var(--msf-fs, 1)); color: var(--msf-muted); }
.msf-announce__body { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.msf-announce__body strong { font-size: calc(13.5px * var(--msf-fs, 1)); color: var(--msf-primary); }
.msf-announce__body small { font-size: calc(12px * var(--msf-fs, 1)); color: var(--msf-muted); }

/* ---------- Footer ---------- */
.msf-footer.pkp_structure_footer_wrapper { background: var(--msf-primary); color: rgba(255,255,255,.82); margin: 0; padding: 0; border: 0; }
.msf-footer__custom { padding-top: 26px; color: rgba(255,255,255,.82); }
.msf-footer__custom a { color: #fff !important; }
.msf-footer__main { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-top: 30px; padding-bottom: 26px; flex-wrap: wrap; }
.msf-footer__brand { display: flex; align-items: center; gap: 14px; text-decoration: none !important; color: #fff !important; }
.msf-footer__brand img { height: 52px; width: auto; }
.msf-footer__brand span { display: flex; flex-direction: column; border-left: 1px solid rgba(255,255,255,.25); padding-left: 14px; }
.msf-footer__brand strong { font-family: var(--msf-serif); font-size: calc(16px * var(--msf-fs, 1)); }
.msf-footer__brand small { font-size: calc(11.5px * var(--msf-fs, 1)); color: rgba(255,255,255,.7); }
.msf-footer__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
.msf-footer__list > li { position: relative; }
.msf-footer__list > li + li::before { content: "|"; color: rgba(255,255,255,.3); padding: 0 10px; }
.msf-footer__list > li > a { color: rgba(255,255,255,.88) !important; text-decoration: none; font-size: calc(13.5px * var(--msf-fs, 1)); }
.msf-footer__list > li > a:hover { color: #fff !important; text-decoration: underline; }
.msf-footer__list ul { display: none !important; }
.msf-footer__social { display: flex; gap: 10px; }
.msf-footer__social a { width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.1); color: #fff !important; text-decoration: none; font-size: calc(16px * var(--msf-fs, 1)); transition: .2s; }
.msf-footer__social a:hover { background: var(--msf-accent); }
.msf-footer__bottom { border-top: 1px solid rgba(255,255,255,.14); font-size: calc(12.5px * var(--msf-fs, 1)); }
.msf-footer__bottom-inner { display: flex; justify-content: space-between; gap: 16px; padding-top: 16px; padding-bottom: 18px; flex-wrap: wrap; }
.msf-footer__links { display: flex; gap: 22px; }
.msf-footer__links a { color: rgba(255,255,255,.82) !important; text-decoration: none; }
.msf-footer__links a:hover { color: #fff !important; }

/* ---------- Inner pages (keep default layout, align look) ---------- */
.msf .pkp_structure_content { max-width: var(--msf-max); margin: 0 auto; padding-top: 34px; padding-bottom: 40px; }
.msf .pkp_structure_main h1, .msf .page h1 { font-weight: 800; color: var(--msf-ink); }
.msf .pkp_structure_sidebar .pkp_block { border: 1px solid var(--msf-line); border-radius: var(--msf-radius); padding: 18px; margin-bottom: 18px; background: #fff; }
.msf .pkp_block .title { color: var(--msf-ink); font-weight: 700; }
.msf .obj_galley_link { border-color: var(--msf-accent); color: var(--msf-accent); border-radius: calc(6px * var(--msf-r, 1)); }
.msf .obj_galley_link:hover { background: var(--msf-accent); color: #fff; }
.msf .cmp_button, .msf button.submit, .msf .pkp_button_primary { background: var(--msf-accent); border-color: var(--msf-accent); border-radius: calc(6px * var(--msf-r, 1)); }
.msf .cmp_breadcrumbs { font-size: calc(13px * var(--msf-fs, 1)); }
.msf .obj_article_summary > .title a, .msf .obj_issue_summary .title { color: var(--msf-ink); }
.msf .obj_article_summary > .title a:hover { color: var(--msf-accent); }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
	.msf-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.msf-trio { grid-template-columns: 1fr 1fr; }
	.msf-trio__col:first-child { grid-column: 1 / -1; }
	.msf-trio__col:nth-child(2) { border-left: 0; padding-left: 0; }
	.msf-stat { padding: 4px 18px; }
}
@media (max-width: 992px) {
	.msf-mainbar__inner { min-height: 72px; }
	.msf-navtoggle.pkp_site_nav_toggle {
		display: block; position: relative; width: 44px; height: 44px; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1));
		background: #fff; flex: none; top: auto; left: auto; order: 2;
	}
	.msf-navtoggle.pkp_site_nav_toggle > span { background: var(--msf-ink); left: 11px; width: 20px; }
	.msf-navtoggle.pkp_site_nav_toggle > span::before, .msf-navtoggle.pkp_site_nav_toggle > span::after { background: var(--msf-ink); width: 20px; }
	.msf-nav.pkp_site_nav_menu {
		display: none; position: absolute; top: 100%; left: 0; right: 0; background: #fff; border-top: 1px solid var(--msf-line);
		box-shadow: var(--msf-shadow); padding: 10px 20px 18px; flex-direction: column; align-items: stretch;
	}
	.msf-nav.pkp_site_nav_menu--isOpen { display: flex; }
	.msf-nav .pkp_navigation_primary.msf-nav__list { flex-direction: column; }
	.msf-nav__list > li > a::after { display: none; }
	.msf-nav__list > li > ul { position: static; display: block; box-shadow: none; border: 0; padding: 0 0 6px 14px; min-width: 0; }
	.msf-latest { grid-template-columns: 1fr; }
	.msf-latest__side { grid-template-columns: 1fr 1fr; }
	.msf-announce__list { grid-template-columns: 1fr; }
	.msf .msf-hero__title { font-size: calc(34px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
}
@media (max-width: 720px) {
	.msf-topbar__contact a + a { display: none; }
	.msf-brand__logo { height: 44px; }
	.msf-brand__name { font-size: calc(16px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
	.msf-brand__tagline { display: none; }
	.msf-hero { height: 520px; }
	.msf .msf-hero__title { font-size: calc(28px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
	.msf-hero__text { font-size: calc(15px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
	.msf-hero__slide::before { background: rgba(8,25,48,.78); }
	.msf-stats__list { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; width: 100%; }
	.msf-stat { border: 0; padding: 0; }
	.msf-search { width: 100%; }
	.msf-cards, .msf-latest__side, .msf-trio { grid-template-columns: 1fr; }
	.msf-trio__col + .msf-trio__col { border-left: 0; padding-left: 0; }
	.msf-tiles { grid-template-columns: repeat(2, 1fr); }
	.msf-section { padding: 38px 0; }
	.msf-section__head { flex-direction: column; align-items: flex-start; }
	.msf-footer__main { flex-direction: column; align-items: flex-start; }
}

/* ---------- v1.0.1 fixes (header layout against parent theme rules) ---------- */
.msf-topbar__contact { flex: 1 1 auto; min-width: 0; align-items: center; }
.msf-topbar__contact a { display: inline-flex !important; align-items: center; white-space: nowrap; }
.msf .msf-topbar__user.pkp_navigation_user_wrapper { position: static !important; width: auto !important; max-width: none; flex: 0 0 auto; top: auto; right: auto; left: auto; transform: none; margin: 0; }
.msf .msf-usernav.pkp_navigation_user { display: flex !important; position: static; align-items: center; }
.msf .msf-usernav > li > a { color: rgba(255,255,255,.9) !important; border: 0; padding: 10px 0; }
.msf .msf-usernav > li > ul { position: absolute; right: 0; left: auto; top: 100%; min-width: 200px; padding: 6px 0; list-style: none; margin: 0; display: none; z-index: 1001; }
.msf .msf-usernav > li:hover > ul, .msf .msf-usernav > li:focus-within > ul, .msf .msf-usernav > li > ul.show { display: block; }
.msf .msf-usernav > li > ul a { display: block; padding: 8px 16px; color: var(--msf-ink) !important; font-size: calc(13.5px * var(--msf-fs, 1)); }
.msf .msf-usernav > li > ul a:hover { background: var(--msf-tint); }
.msf .msf-usernav .task_count { background: var(--msf-accent); color: #fff; border-radius: calc(10px * var(--msf-r, 1)); padding: 0 6px; font-size: calc(11px * var(--msf-fs, 1)); margin-left: 4px; }
.msf-nav .pkp_navigation_primary.msf-nav__list { flex-wrap: nowrap; }
.msf-nav__list > li > a { padding: 10px 11px !important; font-size: calc(14.5px * var(--msf-fs, 1)); white-space: nowrap; }
.msf-nav__list > li > a::after { left: 11px; right: 11px; }
@media (max-width: 1180px) {
	.msf-brand__tagline { display: none; }
	.msf-nav__list > li > a { padding: 10px 8px !important; font-size: calc(14px * var(--msf-fs, 1)); }
}

/* ---- v1.0.2: header, nav, mobile and home-content fixes ---- */
/* ---------- v1.0.2 header fixes ---------- */
.msf .msf-topbar__user.pkp_navigation_user_wrapper, .msf .msf-usernav.pkp_navigation_user { width: auto !important; max-width: none !important; }
.msf-topbar__contact { flex-wrap: nowrap; }
.msf-nav.pkp_site_nav_menu { flex: 1 1 auto; justify-content: flex-end; min-width: 0; }
.msf .msf-nav__list > li > a { margin: 0 !important; }
.msf-nav__search { flex: none; margin-left: 4px; }
.msf .msf-nav__list > li { flex: none; }
.msf .msf-nav__list > li > a[data-toggle]::after, .msf .msf-nav__list > li > a::after {
  position: absolute !important; display: block !important; width: auto !important; height: 3px !important; margin: 0 !important;
  border: 0 !important; top: auto !important; bottom: 2px !important; vertical-align: baseline !important;
}
.msf .msf-nav__list > li > a[data-toggle] { padding-right: 24px !important; }
.msf .msf-nav__list > li > a[data-toggle]::before {
  content: "" !important; display: block !important; position: absolute; right: 10px; top: 50%; margin-top: -2px;
  border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; width: 0; height: 0;
}
.msf .msf-nav .pkp_navigation_primary.msf-nav__list { flex: 0 0 auto; width: auto !important; max-width: none !important; }
.msf .msf-brand { flex: 0 1 auto; min-width: 0; }
.msf .msf-container.additional_content { max-width: var(--msf-max) !important; width: auto !important; margin: 0 auto !important; padding: 0 20px !important; border: 0 !important; }
.msf .msf-container.additional_content > * { max-width: 860px; }
.msf .additional_content h2, .msf .additional_content h3 { font-family: Merriweather, Georgia, serif; color: var(--msf-primary); margin: 22px 0 8px; }
.msf .additional_content p { line-height: 1.7; color: var(--msf-ink); }
/* no horizontal scroll on small screens */
html, body.msf { overflow-x: hidden; }
@supports (overflow: clip) { html, body.msf { overflow-x: clip; } }
.msf img { max-width: 100%; }
@media (max-width: 720px) {
  .msf .msf-topbar__contact a + a { display: none !important; }
}
@media (max-width: 992px) {
  .msf .msf-navtoggle.pkp_site_nav_toggle > span {
    position: absolute !important; display: block !important; left: 11px !important; top: 20px !important; width: 20px !important; height: 2px !important;
    margin: 0 !important; padding: 0 !important; font-size: 0 !important; line-height: 0 !important; color: transparent !important; overflow: visible !important;
    background: var(--msf-ink) !important; border-radius: calc(2px * var(--msf-r, 1)); text-indent: -9999px;
  }
  .msf .msf-navtoggle.pkp_site_nav_toggle > span::before, .msf .msf-navtoggle.pkp_site_nav_toggle > span::after {
    content: "" !important; position: absolute !important; left: 0 !important; width: 20px !important; height: 2px !important; background: var(--msf-ink) !important; border-radius: calc(2px * var(--msf-r, 1));
  }
  .msf .msf-navtoggle.pkp_site_nav_toggle > span::before { top: -6px !important; }
  .msf .msf-navtoggle.pkp_site_nav_toggle > span::after { top: 6px !important; }
  .msf .msf-nav__list > li > a[data-toggle] { padding-right: 13px !important; }
  .msf .msf-nav__list > li > a[data-toggle]::before { display: none !important; }
  .msf .msf-nav__list > li > ul.dropdown-menu { position: static !important; display: block !important; float: none !important; box-shadow: none !important; border: 0 !important; }
}
.msf-footer__list { flex-wrap: wrap; }
.msf .msf-navtoggle.pkp_site_nav_toggle > span, .msf .msf-navtoggle.pkp_site_nav_toggle > span::before, .msf .msf-navtoggle.pkp_site_nav_toggle > span::after { border: 0 !important; box-shadow: none !important; }
.msf .msf-usernav.pkp_navigation_user { display: flex !important; align-items: center; margin: 0 !important; padding: 0 !important; position: static !important; }
.msf .msf-usernav > li { display: block !important; position: relative; margin: 0 !important; }
.msf .msf-usernav > li > a { display: inline-flex !important; align-items: center; gap: 6px; padding: 10px 0 !important; line-height: 1.2 !important; }
.msf .msf-usernav .task_count { position: static !important; display: inline-block !important; }

/* ---- v1.0.3: user (admin) dropdown aligned under the topbar menu ---- */
.msf .msf-usernav > li { position: relative !important; }
.msf .msf-usernav > li > ul {
	position: absolute !important; top: 100% !important; right: 0 !important; left: auto !important; bottom: auto !important;
	transform: none !important; margin: 2px 0 0 !important; min-width: 210px; padding: 8px 0 !important; z-index: 1050 !important;
	background: #fff; border: 1px solid var(--msf-line); border-radius: calc(10px * var(--msf-r, 1)); box-shadow: var(--msf-shadow);
}
.msf .msf-usernav > li > ul > li { display: block; margin: 0; }
.msf .msf-usernav > li > ul a {
	display: flex !important; align-items: center; justify-content: space-between; gap: 12px;
	padding: 9px 18px !important; color: var(--msf-ink) !important; font-size: calc(14px * var(--msf-fs, 1)); white-space: nowrap; text-decoration: none;
}
.msf .msf-usernav > li > ul a:hover { background: var(--msf-tint); color: var(--msf-accent) !important; }
.msf .msf-usernav > li > ul .task_count { position: static !important; margin: 0 !important; flex: none; }
.msf .msf-usernav > li > ul { display: none !important; }
.msf .msf-usernav > li:hover > ul, .msf .msf-usernav > li:focus-within > ul, .msf .msf-usernav > li > ul.show { display: block !important; }

/* ---- v1.1.2: admin (user) dropdown above the main menu ---- */
.msf .msf-topbar { position: relative; z-index: 30; }
.msf .msf-mainbar { position: relative; z-index: 20; }

/* ---- v1.4: slider options, indexing logos, footer columns ---- */
.msf-hero--compact { height: 380px; }
.msf-hero--tall { height: 580px; }
.msf-hero__slide--medium::before { background: linear-gradient(90deg, rgba(8,25,48,.78) 0%, rgba(8,25,48,.55) 45%, rgba(8,25,48,.15) 100%); }
.msf-hero__slide--light::before { background: linear-gradient(90deg, rgba(8,25,48,.55) 0%, rgba(8,25,48,.3) 50%, rgba(8,25,48,0) 100%); }
.msf-hero__slide--center::before { background: rgba(8,25,48,.62); }
.msf-hero__slide--center.msf-hero__slide--medium::before { background: rgba(8,25,48,.45); }
.msf-hero__slide--center.msf-hero__slide--light::before { background: rgba(8,25,48,.28); }
.msf-hero__slide--center .msf-hero__content { text-align: center; }
.msf-hero__slide--center .msf-hero__title, .msf-hero__slide--center .msf-hero__text { margin-left: auto; margin-right: auto; }
.msf-hero__slide--center .msf-hero__actions { justify-content: center; }
@media (max-width: 720px) {
	.msf-hero--compact { height: 440px; }
	.msf-hero--tall { height: 560px; }
}

.msf-index li { padding: 0; overflow: hidden; }
.msf-index li > a, .msf-index li > span, .msf-index li > img { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 62px; padding: 10px; color: var(--msf-primary) !important; text-decoration: none; }
.msf-index li > a:hover { background: var(--msf-tint); }
.msf-index li img { max-width: 100%; max-height: 46px; width: auto; object-fit: contain; }
.msf-index li > a img { padding: 0; }

.msf-footer__main--cols { display: grid; grid-template-columns: minmax(260px, 1.5fr) repeat(auto-fit, minmax(160px, 1fr)); align-items: start; gap: 36px; padding-top: 44px; padding-bottom: 36px; }
.msf-footer__about { display: flex; flex-direction: column; gap: 16px; }
.msf-footer__text { margin: 0; font-size: calc(13.5px * var(--msf-fs, 1)); line-height: 1.65; color: rgba(255,255,255,.75); max-width: 360px; }
.msf-footer__contact { list-style: none; margin: 0; padding: 0; font-size: calc(13.5px * var(--msf-fs, 1)); display: grid; gap: 8px; }
.msf-footer__contact li { display: flex; gap: 10px; align-items: baseline; color: rgba(255,255,255,.8); }
.msf-footer__contact .fa { width: 14px; color: rgba(255,255,255,.6); }
.msf-footer__contact a { color: rgba(255,255,255,.88) !important; text-decoration: none; }
.msf-footer__contact a:hover { color: #fff !important; text-decoration: underline; }
.msf .msf-footer__heading { font: 700 13px/1.3 var(--msf-font); letter-spacing: .1em; text-transform: uppercase; color: #fff; margin: 6px 0 16px; }
.msf-footer__col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.msf-footer__col a { color: rgba(255,255,255,.8) !important; text-decoration: none; font-size: calc(14px * var(--msf-fs, 1)); }
.msf-footer__col a:hover { color: #fff !important; text-decoration: underline; }
.msf-footer__main:not(.msf-footer__main--cols) .msf-footer__about { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 24px; }
@media (max-width: 720px) {
	.msf-footer__main--cols { grid-template-columns: 1fr 1fr; gap: 28px; }
	.msf-footer__main--cols .msf-footer__about { grid-column: 1 / -1; }
}

/* ---- v1.5: notice bar, languages, sticky header, header without top bar ---- */
.msf-notice { background: var(--msf-accent); color: #fff; font-size: calc(14px * var(--msf-fs, 1)); position: relative; z-index: 40; }
.msf-notice--primary { background: var(--msf-primary); }
.msf-notice--warning { background: #F4B000; color: #1d1d1d; }
.msf-notice--success { background: #1E8E5A; }
.msf-notice[hidden] { display: none; }
.msf-notice__inner { display: flex; align-items: center; gap: 12px; min-height: 42px; padding-top: 8px; padding-bottom: 8px; }
.msf-notice__icon { flex: none; opacity: .85; }
.msf-notice__text { flex: 1; margin: 0; line-height: 1.45; }
.msf .msf-notice__link { color: inherit !important; font-weight: 700; text-decoration: underline; margin-left: 8px; white-space: nowrap; }
.msf-notice__close { flex: none; background: transparent; border: 0; color: inherit; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; font-size: calc(15px * var(--msf-fs, 1)); }
.msf-notice__close:hover, .msf-notice__close:focus-visible { background: rgba(255,255,255,.2); outline: none; }

.msf-topbar__right { display: flex; align-items: center; gap: 18px; flex: none; }
.msf-lang { position: relative; }
.msf-lang__toggle { background: transparent; border: 0; color: inherit; font: inherit; font-size: calc(13px * var(--msf-fs, 1)); cursor: pointer; display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; }
.msf-mainbar .msf-lang__toggle { color: var(--msf-ink); font-weight: 500; }
.msf-lang__menu { display: none; position: absolute; right: 0; top: 100%; z-index: 1060; min-width: 170px; list-style: none; margin: 4px 0 0; padding: 6px 0; background: #fff; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1)); box-shadow: var(--msf-shadow); }
.msf-lang.is-open .msf-lang__menu, .msf-lang:focus-within .msf-lang__menu { display: block; }
.msf .msf-lang__menu a { display: block; padding: 8px 16px; color: var(--msf-ink) !important; text-decoration: none; font-size: calc(14px * var(--msf-fs, 1)); }
.msf .msf-lang__menu a:hover { background: var(--msf-tint); color: var(--msf-accent) !important; }
.msf .msf-lang__menu a[aria-current] { font-weight: 700; color: var(--msf-accent) !important; }

.msf-header--sticky, .msf .pkp_structure_head.msf-header--sticky { position: -webkit-sticky; position: sticky; top: 0; z-index: 50; }
.msf-header--sticky .msf-mainbar { box-shadow: 0 2px 10px rgba(11,37,69,.06); }
.msf-sticky .msf-notice { position: relative; }

.msf-nav__extra { display: flex; align-items: center; gap: 14px; margin-left: 8px; }
.msf-nav__extra .msf-usernav > li > a { color: var(--msf-ink) !important; }
.msf-nav__extra .msf-usernav > li > ul { top: 100% !important; }
@media (max-width: 992px) {
	.msf-nav__extra { margin: 8px 0 0; padding-top: 8px; border-top: 1px solid var(--msf-line); }
}

.msf-stats--searchonly .msf-stats__inner { justify-content: center; }
.msf-stats--nosearch .msf-stats__list { width: 100%; justify-content: space-between; }

/* v1.5.1 – brand never overlaps the menu (top bar off puts the user menu in the nav) */
.msf .msf-brand__text { min-width: 0; }
.msf .msf-brand__name { white-space: normal; line-height: 1.2; }
.msf .msf-nav { flex: 0 1 auto; min-width: 0; }
@media (min-width: 993px) and (max-width: 1360px) {
	.msf .msf-mainbar__inner:has(.msf-nav__extra) { gap: 14px; }
	.msf .msf-mainbar__inner:has(.msf-nav__extra) .msf-brand__tagline { display: none; }
	.msf .msf-mainbar__inner:has(.msf-nav__extra) .msf-brand__name { font-size: calc(17px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
	.msf .msf-mainbar__inner:has(.msf-nav__extra) .msf-nav__list > li > a { padding: 10px 7px !important; font-size: calc(13.5px * var(--msf-fs, 1)); }
	.msf .msf-mainbar__inner:has(.msf-nav__extra) .msf-nav__list > li > a[data-toggle] { padding-right: 19px !important; }
	.msf .msf-mainbar__inner:has(.msf-nav__extra) .msf-nav__list > li > a[data-toggle]::before { right: 6px; }
	.msf .msf-nav__extra { gap: 8px; margin-left: 4px; }
}

/* ---- v1.6: call for papers bar + homepage section, most read articles ---- */
.msf-notice--cfp { background: var(--msf-primary); }
.msf-notice__countdown { display: inline-block; margin-left: 10px; padding: 1px 9px; border-radius: 999px; background: rgba(255,255,255,.16); font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }

.msf-cfp { background: var(--msf-primary); color: #fff; padding: 46px 0; position: relative; overflow: hidden; }
.msf-cfp::after { content: ""; position: absolute; right: -120px; top: -120px; width: 360px; height: 360px; border-radius: 50%; background: rgba(255,255,255,.05); pointer-events: none; }
.msf-cfp--accent { background: var(--msf-accent); }
.msf-cfp--light { background: var(--msf-tint); color: var(--msf-ink, #1f2933); border-top: 1px solid var(--msf-line); border-bottom: 1px solid var(--msf-line); }
.msf-cfp__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 28px 40px; align-items: center; position: relative; z-index: 1; }
.msf-cfp__inner.has-image { grid-template-columns: 170px minmax(0, 1fr) auto; }
.msf-cfp__media img { width: 100%; border-radius: calc(10px * var(--msf-r, 1)); box-shadow: 0 10px 30px rgba(0,0,0,.25); display: block; }
.msf-cfp__kicker { margin: 0 0 6px; font-size: calc(13px * var(--msf-fs, 1)); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; opacity: .9; }
.msf-cfp__title { margin: 0 0 10px; font-family: var(--msf-serif); font-size: calc(30px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.2; color: inherit; }
.msf-cfp__text { margin: 0 0 12px; opacity: .92; max-width: 680px; line-height: 1.6; }
.msf-cfp__deadline { margin: 0 0 18px; font-size: calc(15px * var(--msf-fs, 1)); }
.msf-cfp__deadline .fa { margin-right: 6px; opacity: .85; }
.msf-cfp__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.msf-cfp--accent .msf-btn--accent { background: #fff; color: var(--msf-accent) !important; }
.msf-cfp--light .msf-btn--ghost { border-color: var(--msf-primary); color: var(--msf-primary) !important; }
.msf-cfp--light .msf-btn--ghost:hover { background: var(--msf-primary); color: #fff !important; }
.msf-countdown { display: grid; grid-template-columns: repeat(4, 76px); gap: 10px; }
.msf-countdown > div { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: calc(12px * var(--msf-r, 1)); padding: 12px 6px; text-align: center; }
.msf-cfp--light .msf-countdown > div { background: #fff; border-color: var(--msf-line); }
.msf-countdown strong { display: block; font-size: calc(30px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1; font-weight: 800; font-variant-numeric: tabular-nums; }
.msf-countdown span { display: block; margin-top: 6px; font-size: calc(11px * var(--msf-fs, 1)); letter-spacing: .1em; text-transform: uppercase; opacity: .8; }
.msf-cfp--closed .msf-cfp__title { opacity: .85; }
@media (max-width: 992px) {
	.msf-cfp__inner, .msf-cfp__inner.has-image { grid-template-columns: minmax(0, 1fr); }
	.msf-cfp__media { max-width: 160px; }
	.msf-cfp__title { font-size: calc(25px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
}
@media (max-width: 480px) {
	.msf-countdown { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
	.msf-countdown strong { font-size: calc(22px * var(--msf-fs, 1) * var(--msf-hs, 1)); }
}

.msf-popular .msf-section__head { margin-bottom: 6px; align-items: center; }
.msf-popular__period { margin: 0 0 18px; color: var(--msf-muted); font-size: calc(14px * var(--msf-fs, 1)); }
.msf-popular__tabs { display: inline-flex; background: var(--msf-tint); border: 1px solid var(--msf-line); border-radius: calc(10px * var(--msf-r, 1)); padding: 3px; gap: 3px; }
.msf-popular__tab { border: 0; background: transparent; padding: 7px 14px; border-radius: calc(8px * var(--msf-r, 1)); font: inherit; font-size: calc(14px * var(--msf-fs, 1)); font-weight: 600; color: var(--msf-muted); cursor: pointer; }
.msf-popular__tab.is-active { background: #fff; color: var(--msf-primary); box-shadow: 0 1px 3px rgba(11,37,69,.12); }
.msf-popular__tab .fa { margin-right: 4px; }
.msf-popular__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
.msf-popular__list[hidden] { display: none; }
.msf-popular__item { display: flex; align-items: flex-start; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--msf-line); }
.msf-popular__rank { flex: none; font-family: var(--msf-serif); font-size: calc(26px * var(--msf-fs, 1)); font-weight: 700; line-height: 1; color: var(--msf-accent); opacity: .55; width: 40px; }
.msf-popular__body { flex: 1; min-width: 0; }
.msf-popular__title { margin: 0 0 5px; font-size: calc(16px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.4; font-weight: 700; }
.msf .msf-popular__title a { color: var(--msf-primary); text-decoration: none; }
.msf .msf-popular__title a:hover { color: var(--msf-accent); text-decoration: underline; }
.msf-popular__meta { margin: 0; color: var(--msf-muted); font-size: calc(13px * var(--msf-fs, 1)); }
.msf-popular__meta span::before { content: "·"; margin: 0 6px; }
.msf-popular__meta span:first-child::before { content: none; }
.msf-popular__count { flex: none; font-size: calc(13px * var(--msf-fs, 1)); font-weight: 700; color: var(--msf-primary); background: var(--msf-tint); border-radius: 999px; padding: 3px 10px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.msf-popular__count .fa { color: var(--msf-accent); margin-right: 3px; }
@media (max-width: 860px) { .msf-popular__list { grid-template-columns: minmax(0, 1fr); } }

/* =========================================================
   v1.7 – header styles, logo size, homepage layouts, journal badges,
   special issues, FAQ, fees, reviewers
   ========================================================= */

/* ---- logo size (desktop) ---- */
@media (min-width: 993px) {
	.msf-logo-small .msf-brand__logo { height: 44px; }
	.msf-logo-large .msf-brand__logo { height: 76px; }
	.msf-logo-large .msf-mainbar__inner { min-height: 104px; }
}

/* ---- header: centred ---- */
@media (min-width: 993px) {
	.msf.msf-hs-centered .msf-mainbar__inner { flex-direction: column; justify-content: center; gap: 8px; padding-top: 18px; }
	.msf.msf-hs-centered .msf-brand { justify-content: center; }
	.msf.msf-hs-centered .msf-nav { width: 100%; justify-content: center; border-top: 1px solid var(--msf-line); padding: 4px 0 !important; }
}

/* ---- header: dark (also the transparent style on pages without the slider) ---- */
.msf.msf-hs-dark .msf-mainbar,
.msf.msf-hs-transparent .msf-mainbar { background: var(--msf-primary); }
.msf.msf-hs-dark .msf-brand__name,
.msf.msf-hs-transparent .msf-brand__name { color: #fff; }
.msf.msf-hs-dark .msf-brand__tagline,
.msf.msf-hs-transparent .msf-brand__tagline { color: rgba(255,255,255,.7); }
.msf.msf-hs-dark .msf-brand__text,
.msf.msf-hs-transparent .msf-brand__text { border-left-color: rgba(255,255,255,.25); }
@media (min-width: 993px) {
	.msf.msf-hs-dark .msf-nav__list > li > a,
	.msf.msf-hs-transparent .msf-nav__list > li > a,
	.msf.msf-hs-dark .msf-nav__extra .msf-usernav > li > a,
	.msf.msf-hs-transparent .msf-nav__extra .msf-usernav > li > a { color: #fff !important; }
	.msf.msf-hs-dark .msf-nav__list > li > a::after,
	.msf.msf-hs-transparent .msf-nav__list > li > a::after { background: #fff; }
	.msf.msf-hs-dark .msf-nav__search, .msf.msf-hs-transparent .msf-nav__search,
	.msf.msf-hs-dark .msf-darktoggle, .msf.msf-hs-transparent .msf-darktoggle,
	.msf.msf-hs-dark .msf-lang__toggle, .msf.msf-hs-transparent .msf-lang__toggle { color: #fff !important; }
	.msf.msf-hs-dark .msf-nav__search:hover, .msf.msf-hs-transparent .msf-nav__search:hover,
	.msf.msf-hs-dark .msf-darktoggle:hover, .msf.msf-hs-transparent .msf-darktoggle:hover { background: rgba(255,255,255,.12); }
	.msf.msf-hs-centered.msf-hs-dark .msf-nav { border-top-color: rgba(255,255,255,.15); }
}

/* ---- header: transparent over the homepage slider (class set by js/msf.js on wide screens) ---- */
.msf.msf-overlay .msf-header { position: relative; z-index: 60; background: transparent !important; }
.msf.msf-overlay .msf-topbar { background: rgba(0, 0, 0, .28); border-bottom: 1px solid rgba(255,255,255,.12); }
.msf.msf-overlay .msf-mainbar { background: linear-gradient(180deg, rgba(5, 15, 30, .55), rgba(5, 15, 30, 0)); box-shadow: none !important; transition: background .25s ease; }
.msf.msf-overlay.is-scrolled .msf-header--sticky .msf-mainbar { background: var(--msf-primary); box-shadow: 0 2px 14px rgba(0,0,0,.25) !important; }
.msf.msf-overlay .msf-hero__slide { padding-top: var(--msf-head-h, 0px); }
.msf.msf-overlay .msf-hero__arrow { margin-top: calc(var(--msf-head-h, 0px) / 2); }

/* ---- homepage layout: modern ---- */
.msf-hl-modern .msf-section__head { flex-direction: column; align-items: center; text-align: center; }
.msf-hl-modern .msf-section__title::after { left: 50%; transform: translateX(-50%); }
.msf-hl-modern .msf-hero + .msf-stats { background: transparent; border: 0; position: relative; z-index: 5; margin-top: -64px; }
.msf-hl-modern .msf-hero + .msf-stats .msf-stats__inner { background: var(--msf-surface, #fff); border-radius: calc(16px * var(--msf-r, 1)); box-shadow: 0 18px 44px rgba(11,37,69,.16); padding: 24px 28px; }
.msf-hl-modern .msf-hero { height: 560px; }
.msf-hl-modern .msf-hero .msf-hero__content { padding-bottom: 40px; }
.msf-hl-modern .msf-card { border: 0; box-shadow: var(--msf-shadow); }
.msf-hl-modern .msf-popular { background: var(--msf-tint); }
.msf-hl-modern .msf-popular__period { text-align: center; }
@media (max-width: 992px) {
	.msf-hl-modern .msf-hero { height: 520px; }
	.msf-hl-modern .msf-hero + .msf-stats { margin-top: -40px; }
}

/* ---- homepage layout: minimal ---- */
.msf-hl-minimal .msf-hero { height: auto !important; background: var(--msf-tint); border-bottom: 1px solid var(--msf-line); }
.msf-hl-minimal .msf-hero__slide { position: relative; inset: auto; background-image: none !important; opacity: 1 !important; padding: 72px 0 64px; }
.msf-hl-minimal .msf-hero__slide:not(:first-of-type) { display: none !important; }
.msf-hl-minimal .msf-hero__slide::before, .msf-hl-minimal .msf-hero__arrow, .msf-hl-minimal .msf-hero__dots { display: none !important; }
.msf-hl-minimal .msf-hero__content { color: var(--msf-text); text-align: center; }
.msf-hl-minimal .msf-hero__kicker { color: var(--msf-accent); }
.msf-hl-minimal .msf .msf-hero__title, .msf-hl-minimal .msf-hero__title { color: var(--msf-ink) !important; margin-left: auto; margin-right: auto; font-family: var(--msf-serif); }
.msf-hl-minimal .msf-hero__text { color: var(--msf-text); margin-left: auto; margin-right: auto; }
.msf-hl-minimal .msf-hero__actions { justify-content: center; }
.msf-hl-minimal .msf-hero .msf-btn--ghost { border-color: var(--msf-primary); color: var(--msf-primary) !important; }
.msf-hl-minimal .msf-hero .msf-btn--ghost:hover { background: var(--msf-primary); color: #fff !important; }
.msf-hl-minimal .msf-hero .msf-badgerow--hero { justify-content: center; }
.msf-hl-minimal .msf-hero .msf-badgerow--hero a, .msf-hl-minimal .msf-hero .msf-badgerow--hero span { color: var(--msf-ink) !important; background: var(--msf-surface, #fff); border-color: var(--msf-line); }
.msf-hl-minimal .msf-card, .msf-hl-minimal .msf-panel { box-shadow: none; }
.msf-hl-minimal .msf-section__title::after { display: none; }
.msf-hl-minimal .msf-section__title { font-family: var(--msf-serif); padding-bottom: 0; }

/* ---- journal badges ---- */
.msf-badgerow { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.msf-badgerow a, .msf-badgerow > li > span { display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; border-radius: 999px; font-size: calc(13px * var(--msf-fs, 1)); text-decoration: none !important; border: 1px solid transparent; line-height: 1.3; }
.msf-badgerow strong { font-weight: 700; }
.msf-badgerow__label { opacity: .85; }
.msf-badgerow--hero { margin-top: 26px; }
.msf-badgerow--hero a, .msf-badgerow--hero > li > span { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.25); color: #fff !important; backdrop-filter: blur(4px); }
.msf-badgerow--hero a:hover { background: rgba(255,255,255,.22); }
.msf-hero__slide--center .msf-badgerow--hero { justify-content: center; }
.msf-footer__badges { padding-top: 6px; padding-bottom: 22px; }
.msf-badgerow--footer a, .msf-badgerow--footer > li > span { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.14); color: rgba(255,255,255,.88) !important; }
.msf-badgerow--footer a:hover { background: rgba(255,255,255,.14); }
.msf-badgerow--about { margin-top: 14px; }
.msf-badgerow--about a, .msf-badgerow--about > li > span { background: var(--msf-tint); border-color: var(--msf-line); color: var(--msf-ink) !important; }
.msf-badgerow--about .fa { color: var(--msf-accent); }

/* ---- special issues ---- */
.msf-special__intro { max-width: 760px; color: var(--msf-muted); margin: -8px 0 22px; }
.msf-hl-modern .msf-special__intro { margin-left: auto; margin-right: auto; text-align: center; }
.msf-special__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.msf .msf-special__card { display: flex; gap: 18px; background: #fff; border: 1px solid var(--msf-line); border-radius: var(--msf-radius); padding: 16px; text-decoration: none !important; color: var(--msf-text) !important; transition: .2s ease; }
.msf .msf-special__card:hover { border-color: var(--msf-accent); box-shadow: var(--msf-shadow); transform: translateY(-2px); }
.msf-special__media { position: relative; flex: none; width: 118px; aspect-ratio: 3 / 4; border-radius: calc(8px * var(--msf-r, 1)); overflow: hidden; background: var(--msf-primary); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,.7); font-size: 30px; }
.msf-special__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.msf-special__badge { position: absolute; left: 6px; top: 6px; background: var(--msf-accent); color: #fff; font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 3px 7px; border-radius: calc(4px * var(--msf-r, 1)); }
.msf-special__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.msf-special__title { color: var(--msf-ink); font-size: calc(17px * var(--msf-fs, 1) * var(--msf-hs, 1)); line-height: 1.35; }
.msf-special__meta { color: var(--msf-muted); font-size: calc(13px * var(--msf-fs, 1)); }
.msf-special__text { font-size: calc(14px * var(--msf-fs, 1)); line-height: 1.55; }
.msf-special__more { margin-top: auto; color: var(--msf-accent); font-weight: 600; font-size: calc(14px * var(--msf-fs, 1)); }
.msf-special--archive { margin-bottom: 30px; }
@media (max-width: 860px) { .msf-special__grid { grid-template-columns: minmax(0, 1fr); } }

/* ---- FAQ ---- */
.msf-faq--home { max-width: 900px; }
.msf-faq__intro { color: var(--msf-muted); margin: 0 0 16px; }
.msf-faq__list { display: flex; flex-direction: column; gap: 10px; }
.msf-faq__item { background: #fff; border: 1px solid var(--msf-line); border-radius: var(--msf-radius); }
.msf-faq__item summary { list-style: none; cursor: pointer; padding: 15px 18px; font-weight: 600; color: var(--msf-ink); display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.msf-faq__item summary::-webkit-details-marker { display: none; }
.msf-faq__item summary .fa { color: var(--msf-accent); transition: transform .2s; flex: none; }
.msf-faq__item[open] summary .fa { transform: rotate(45deg); }
.msf-faq__item summary:focus-visible { outline: 2px solid var(--msf-accent); outline-offset: 2px; border-radius: var(--msf-radius); }
.msf-faq__answer { padding: 0 18px 16px; line-height: 1.65; color: var(--msf-text); }
.msf-hl-modern .msf-faq--home { text-align: left; }
.msf-faq--home .msf-faq__title { text-align: center; }

/* ---- fees ---- */
.msf-fees__table { width: 100%; border-collapse: collapse; margin: 6px 0 10px; }
.msf-fees__table th, .msf-fees__table td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--msf-line); vertical-align: top; }
.msf-fees__table thead th { background: var(--msf-tint); font-size: calc(13px * var(--msf-fs, 1)); text-transform: uppercase; letter-spacing: .05em; color: var(--msf-muted); }
.msf-fees__table tbody th { font-weight: 600; color: var(--msf-ink); }
.msf-fees__table tbody th small { display: block; font-weight: 400; color: var(--msf-muted); margin-top: 2px; }
.msf-fees__table td { font-weight: 700; color: var(--msf-primary); white-space: nowrap; }
.msf-fees__note { color: var(--msf-muted); font-size: calc(14px * var(--msf-fs, 1)); }
.msf-fees__note .fa { color: var(--msf-accent); }

/* ---- reviewers ---- */
.msf-reviewers__count { display: inline-block; font-size: 13px; font-weight: 700; background: var(--msf-tint); color: var(--msf-primary); border-radius: 999px; padding: 2px 10px; vertical-align: middle; margin-left: 6px; }
.msf-reviewers__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 22px; }
.msf-reviewers__list li { display: flex; gap: 10px; align-items: flex-start; padding: 10px 0; border-bottom: 1px solid var(--msf-line); }
.msf-reviewers__list .fa { color: var(--msf-accent); font-size: 20px; margin-top: 1px; }
.msf-reviewers__list strong { display: block; color: var(--msf-ink); font-size: calc(14.5px * var(--msf-fs, 1)); }
.msf-reviewers__list small { color: var(--msf-muted); font-size: calc(13px * var(--msf-fs, 1)); }
@media (max-width: 900px) { .msf-reviewers__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .msf-reviewers__list { grid-template-columns: minmax(0, 1fr); } }

/* logo on dark headers: white emblem (default logo) / light pill behind an uploaded logo */
.msf-brand__logo--white { display: none; }
.msf.msf-hs-dark .msf-brand__logo--default, .msf.msf-hs-transparent .msf-brand__logo--default { display: none; }
.msf.msf-hs-dark .msf-brand__logo--white, .msf.msf-hs-transparent .msf-brand__logo--white { display: block; }
.msf.msf-hs-dark .msf-brand__logo--custom, .msf.msf-hs-transparent .msf-brand__logo--custom { background: rgba(255,255,255,.94); padding: 5px; border-radius: calc(8px * var(--msf-r, 1)); }
html[data-msf-theme="dark"] .msf-brand__logo--default { display: none; }
html[data-msf-theme="dark"] .msf-brand__logo--white { display: block; }
.msf-hl-modern .msf-homeboard .msf-section__head { align-items: center; }
.msf-hl-modern .msf-homeboard__text { margin-left: auto; margin-right: auto; }
.msf-box > .msf-faq .msf-faq__title { margin-top: 0; }

/* =========================================================
   v1.8 – mega menu, sidebar widgets, cookie notice, maintenance, speed
   ========================================================= */

/* ---- mega menu (wide screens) ---- */
@media (min-width: 993px) {
	.msf.msf-mega .msf-nav__list > li { position: static; }
	.msf.msf-mega .msf-nav .msf-nav__list > li > ul.msf-mega__panel {
		position: absolute !important; top: 100% !important; left: 50% !important; right: auto !important; transform: translateX(-50%);
		width: min(1160px, calc(100vw - 40px)) !important; min-width: 0; margin: 0 !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) 270px; grid-auto-flow: row dense; gap: 4px 16px;
		padding: 22px !important; border: 0; border-top: 3px solid var(--msf-accent); box-shadow: 0 24px 50px rgba(11,37,69,.18);
		border-radius: 0 0 calc(14px * var(--msf-r, 1)) calc(14px * var(--msf-r, 1));
	}
	.msf.msf-mega .msf-nav__list > li:hover > ul.msf-mega__panel,
	.msf.msf-mega .msf-nav__list > li:focus-within > ul.msf-mega__panel,
	.msf.msf-mega .msf-nav__list > li > ul.msf-mega__panel.show { display: grid !important; }
	/* invisible bridge so the panel stays open while the mouse moves down to it */
	.msf.msf-mega .msf-mega__panel::before { content: ""; position: absolute; left: 0; right: 0; bottom: 100%; height: 34px; }
	.msf.msf-mega .msf-mega__panel > li { grid-column: auto; }
	.msf.msf-mega .msf-mega__panel > li.msf-mega__promo { grid-column: 4; grid-row: 1 / span 6; }
}
.msf .msf-nav .msf-mega__link { display: flex !important; align-items: flex-start; gap: 12px; padding: 10px 12px !important; border-radius: calc(10px * var(--msf-r, 1)); white-space: normal; }
.msf .msf-nav .msf-mega__link:hover { background: var(--msf-tint); }
.msf-mega__icon { flex: none; width: 36px; height: 36px; border-radius: calc(9px * var(--msf-r, 1)); background: var(--msf-tint); color: var(--msf-accent); display: inline-flex; align-items: center; justify-content: center; font-size: 16px; }
.msf-mega__link:hover .msf-mega__icon { background: var(--msf-accent); color: #fff; }
.msf-mega__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.msf-mega__label { font-weight: 700; color: var(--msf-ink); font-size: calc(14.5px * var(--msf-fs, 1)); }
.msf-mega__desc { color: var(--msf-muted); font-size: calc(12.5px * var(--msf-fs, 1)); line-height: 1.45; font-weight: 400; }
.msf-mega__promo { list-style: none; background: linear-gradient(135deg, var(--msf-primary), color-mix(in srgb, var(--msf-primary) 70%, var(--msf-accent))); color: #fff; border-radius: calc(12px * var(--msf-r, 1)); padding: 18px; display: flex; flex-direction: column; gap: 8px; align-self: start; }
.msf-mega__promo strong { font-size: calc(16px * var(--msf-fs, 1)); }
.msf-mega__promo span { font-size: calc(13px * var(--msf-fs, 1)); color: rgba(255,255,255,.82); line-height: 1.5; }
.msf .msf-mega__promo .msf-btn { align-self: flex-start; margin-top: 4px; color: #fff !important; }
@media (max-width: 992px) {
	.msf-mega__promo, .msf-mega__desc { display: none !important; }
	.msf-mega__icon { width: 26px; height: 26px; font-size: 13px; }
	.msf .msf-nav .msf-mega__link { padding: 6px 8px !important; align-items: center; }
}

/* ---- sidebar widgets ---- */
.msf-sidebox--issue .msf-sidebox__issue { display: flex; flex-direction: column; gap: 10px; text-decoration: none !important; color: var(--msf-ink) !important; margin-bottom: 10px; }
.msf-sidebox--issue img { width: 100%; max-width: 220px; border-radius: calc(8px * var(--msf-r, 1)); box-shadow: var(--msf-shadow); }
.msf-sidebox--cfp { border-top: 3px solid var(--msf-accent); }
.msf-sidebox__kicker { margin: 0 0 4px !important; font-size: calc(12px * var(--msf-fs, 1)) !important; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--msf-accent) !important; }
.msf-sidebox__count strong { font-size: calc(18px * var(--msf-fs, 1)); color: var(--msf-primary); font-variant-numeric: tabular-nums; }
.msf-sidebox__news { list-style: none; margin: 0 0 12px; padding: 0; }
.msf-sidebox__news li { padding: 9px 0; border-bottom: 1px dashed var(--msf-line); font-size: calc(14px * var(--msf-fs, 1)); }
.msf-sidebox__news a { color: var(--msf-ink) !important; font-weight: 600; text-decoration: none; }
.msf-sidebox__news a:hover { color: var(--msf-accent) !important; }
.msf-sidebox__news small { display: block; color: var(--msf-muted); font-size: 12px; margin-top: 2px; }
.msf-sidebox__index { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.msf-sidebox__index li > * { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 6px; border: 1px solid var(--msf-line); border-radius: calc(8px * var(--msf-r, 1)); font-size: 13px; font-weight: 600; color: var(--msf-ink) !important; text-align: center; text-decoration: none; }
.msf-sidebox__index img { max-height: 36px; max-width: 100%; }

/* ---- cookie notice ---- */
.msf-cookie { position: fixed; z-index: 2000; background: var(--msf-surface, #fff); color: var(--msf-text); box-shadow: 0 -6px 30px rgba(11,37,69,.18); display: flex; align-items: center; gap: 16px 24px; flex-wrap: wrap; }
.msf-cookie[hidden] { display: none; }
.msf-cookie--bar { left: 0; right: 0; bottom: 0; padding: 16px max(20px, calc((100vw - 1160px) / 2)); border-top: 3px solid var(--msf-accent); }
.msf-cookie--box { left: 20px; bottom: 20px; max-width: 380px; padding: 18px 20px; border-radius: calc(14px * var(--msf-r, 1)); border: 1px solid var(--msf-line); }
.msf-cookie__text { margin: 0; flex: 1 1 320px; font-size: calc(14px * var(--msf-fs, 1)); line-height: 1.55; }
.msf-cookie__actions { display: flex; gap: 10px; }
.msf .msf-cookie__no { border-color: var(--msf-line); color: var(--msf-ink) !important; background: transparent; }

/* ---- maintenance ---- */
.msf-maint-ribbon { background: #B42318; color: #fff; text-align: center; font-size: 13.5px; font-weight: 600; padding: 7px 16px; }
.msf-maint-ribbon .fa { margin-right: 6px; }
body.msf-maintenance-page { min-height: 100vh; margin: 0; display: flex; align-items: center; justify-content: center; background: linear-gradient(160deg, var(--msf-tint), #fff 60%); }
.msf-maint { width: 100%; padding: 30px 16px; }
.msf-maint__card { max-width: 560px; margin: 0 auto; background: #fff; border: 1px solid var(--msf-line); border-radius: calc(18px * var(--msf-r, 1)); padding: 40px 32px; text-align: center; box-shadow: 0 24px 60px rgba(11,37,69,.12); }
.msf-maint__logo { height: 72px; width: auto; }
.msf-maint__journal { margin: 10px 0 22px; font-family: var(--msf-serif); font-weight: 700; color: var(--msf-primary); font-size: 18px; }
.msf-maint__icon { display: inline-flex; width: 54px; height: 54px; border-radius: 50%; align-items: center; justify-content: center; background: var(--msf-tint); color: var(--msf-accent); font-size: 22px; }
.msf .msf-maint__title { margin: 14px 0 10px; font-size: 28px; color: var(--msf-ink); }
.msf-maint__text { color: var(--msf-text); line-height: 1.65; margin: 0 0 14px; }
.msf-maint__until, .msf-maint__contact { margin: 6px 0; color: var(--msf-muted); }
.msf-maint__login { margin: 24px 0 0; font-size: 13px; }
.msf-maint__login a { color: var(--msf-muted); }

/* ---- fewer animations ---- */
.msf-reduce-motion *, .msf-reduce-motion *::before, .msf-reduce-motion *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
body.msf-maintenance-page { overflow-x: hidden; } .msf-maint { box-sizing: border-box; }
@media (min-width: 993px) { .msf .msf-nav .msf-mega__panel > li.msf-mega__promo { display: flex !important; flex-direction: column; } }
.msf .msf-mega__promo strong, .msf .msf-mega__promo span { display: block; }
@media (min-width: 993px) { .msf.msf-mega .msf-mega__panel > li.msf-mega__promo { grid-row: 1 / span 3; } }
/* right-to-left: arrows point the other way */
html[dir="rtl"] .msf .fa-arrow-right, html[dir="rtl"] .msf .fa-arrow-left,
html[dir="rtl"] .msf .fa-angle-right, html[dir="rtl"] .msf .fa-angle-left,
html[dir="rtl"] .msf .fa-chevron-right, html[dir="rtl"] .msf .fa-chevron-left { display: inline-block; transform: scaleX(-1); }

/* v1.9.1 – mobile finishing: menu button turns into a clean X, user menu caret + tap to open */
.msf .msf-navtoggle.pkp_site_nav_toggle > span, .msf .msf-navtoggle.pkp_site_nav_toggle > span::before, .msf .msf-navtoggle.pkp_site_nav_toggle > span::after { transition: transform .2s ease, background-color .2s ease, top .2s ease; }
.msf .msf-navtoggle.pkp_site_nav_toggle--transform > span { background: transparent !important; transform: none !important; }
.msf .msf-navtoggle.pkp_site_nav_toggle--transform > span::before { top: 0 !important; transform: rotate(45deg) !important; }
.msf .msf-navtoggle.pkp_site_nav_toggle--transform > span::after { top: 0 !important; transform: rotate(-45deg) !important; }
.msf .msf-navtoggle.pkp_site_nav_toggle:focus-visible { outline: 2px solid var(--msf-accent); outline-offset: 2px; }
.msf .msf-usernav > li.profile > a::after { content: ""; display: inline-block; width: 0; height: 0; margin-left: 2px; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; opacity: .85; position: static; background: none; }
.msf .msf-usernav > li.is-open > ul { display: block !important; }
.msf .msf-usernav .task_count { min-width: 22px; height: 22px; line-height: 22px !important; padding: 0 6px !important; border-radius: 999px !important; text-align: center; font-weight: 700; }
.msf .msf-usernav.pkp_navigation_user { border-top: 0 !important; }
/* v1.9.2 – exact centring of the menu button lines and the task count badge */
@media (max-width: 992px) {
	.msf .msf-navtoggle.pkp_site_nav_toggle { padding: 0 !important; }
	.msf .msf-navtoggle.pkp_site_nav_toggle > span { left: 0 !important; right: 0 !important; top: 0 !important; bottom: 0 !important; margin: auto !important; width: 20px !important; height: 2px !important; transform: none !important; }
	.msf .msf-navtoggle.pkp_site_nav_toggle > span::before,
	.msf .msf-navtoggle.pkp_site_nav_toggle > span::after { left: 0 !important; right: auto !important; margin: 0 !important; }
}
.msf .msf-usernav .task_count { display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; height: 20px; min-width: 20px; padding: 0 6px !important; line-height: 1 !important; font-size: 11px !important; vertical-align: middle; }

/* ---- v1.10 Google Scholar statistics ---- */
.msf-scholar .msf-section__title .fa { color: var(--msf-accent); margin-right: 6px; }
.msf-gs--full { display: grid; grid-template-columns: minmax(260px, 380px) minmax(0, 1fr); gap: 28px; align-items: end; }
.msf-gs__table { width: 100%; border-collapse: collapse; background: var(--msf-surface, #fff); border: 1px solid var(--msf-line); border-radius: var(--msf-radius); overflow: hidden; font-variant-numeric: tabular-nums; }
.msf-gs__table th, .msf-gs__table td { padding: 12px 16px; border-bottom: 1px solid var(--msf-line); text-align: right; }
.msf-gs__table tbody tr:last-child th, .msf-gs__table tbody tr:last-child td { border-bottom: 0; }
.msf-gs__table thead th { background: var(--msf-tint); font-size: calc(12.5px * var(--msf-fs, 1)); text-transform: uppercase; letter-spacing: .05em; color: var(--msf-muted); font-weight: 700; }
.msf-gs__table tbody th { text-align: left; font-weight: 600; color: var(--msf-ink); }
.msf-gs__table td { font-weight: 800; font-size: calc(18px * var(--msf-fs, 1)); color: var(--msf-primary); }
.msf-gs__h5 { display: flex; gap: 18px; margin: 10px 0 0; font-size: calc(13.5px * var(--msf-fs, 1)); color: var(--msf-muted); }
.msf-gs__h5 strong { color: var(--msf-ink); margin-left: 4px; }
.msf-gs__figure { margin: 0; }
.msf-gs__figure figcaption { font-size: calc(13px * var(--msf-fs, 1)); color: var(--msf-muted); font-weight: 600; margin-bottom: 8px; }
.msf-gs__chart { display: flex; align-items: flex-end; gap: 6px; height: 200px; padding: 22px 0 0; border-bottom: 1px solid var(--msf-line); }
.msf-gs__bar { position: relative; flex: 1; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; outline: none; }
.msf-gs__fill { width: 100%; max-width: 38px; background: var(--msf-accent); border-radius: calc(4px * var(--msf-r, 1)) calc(4px * var(--msf-r, 1)) 0 0; transition: filter .15s; }
.msf-gs__bar:hover .msf-gs__fill, .msf-gs__bar:focus .msf-gs__fill { filter: brightness(1.15); }
.msf-gs__val { font-size: calc(11.5px * var(--msf-fs, 1)); font-weight: 700; color: var(--msf-ink); margin-bottom: 4px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.msf-gs__year { position: absolute; bottom: -22px; font-size: calc(11.5px * var(--msf-fs, 1)); color: var(--msf-muted); }
.msf-gs__figure { padding-bottom: 24px; }
.msf-gs__foot { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin: 18px 0 0; }
.msf-gs__updated { color: var(--msf-muted); font-size: calc(12.5px * var(--msf-fs, 1)); }
.msf-gs--side .msf-gs__nums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; text-align: center; margin-bottom: 10px; }
.msf-gs--side .msf-gs__nums strong { display: block; font-size: calc(18px * var(--msf-fs, 1)); color: var(--msf-primary); font-variant-numeric: tabular-nums; }
.msf-gs--side .msf-gs__nums span { font-size: 11.5px; color: var(--msf-muted); }
.msf-gs__chart--mini { height: 48px; padding: 0; gap: 3px; margin-bottom: 6px; }
.msf-gs__chart--mini span { flex: 1; background: var(--msf-accent); opacity: .8; border-radius: 2px 2px 0 0; }
.msf-gs--side .msf-gs__updated { display: block; margin-bottom: 8px; }
.msf-h3 .fa-graduation-cap, .msf-h2 .fa-graduation-cap { color: var(--msf-accent); }
@media (max-width: 860px) { .msf-gs--full { grid-template-columns: minmax(0, 1fr); } .msf-gs__val { font-size: 10px; } }
