/**
 * Impactora. Admin scoped to .impactora-page. Public widget/badge inherit
 * theme text colour and only add a gold accent from the mark.
 */

.impactora-page {
	--imp-navy: #102040;
	--imp-gold: #e0a010;
	--imp-gold-soft: #fdf6e3;
	--imp-ink: #102040;
	--imp-muted: #5c6b80;
	--imp-line: #d7deea;
	--imp-soft: #f4f7fb;
	max-width: 64rem;
	margin: 0 auto;
	padding: 0.25rem 0 2rem;
	color: var(--imp-ink);
}
.impactora-page, .impactora-page * { box-sizing: border-box; }
.impactora-page a { color: var(--imp-navy); text-decoration: none; }
.impactora-page a:hover { color: #0a1b33; }

.impactora-hero {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem 1.25rem;
	margin: 0 0 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--imp-line);
}
.impactora-hero-brand { display: flex; flex-direction: column; gap: 0.35rem; min-width: 0; }
.impactora-logo {
	height: 2.6rem;
	width: auto;
	max-width: 16rem;
	object-fit: contain;
	background: transparent;
}
.impactora-lead { margin: 0; color: var(--imp-muted); font-size: 0.9rem; }
.impactora-version {
	display: inline-flex;
	padding: 0.28rem 0.7rem;
	border: 1px solid var(--imp-line);
	border-radius: 999px;
	background: var(--imp-gold-soft);
	color: var(--imp-navy);
	font-size: 0.75rem;
	font-weight: 700;
	font-family: ui-monospace, Menlo, monospace;
}

.impactora-range {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	align-items: center;
	margin: 0 0 0.75rem;
}
.impactora-page .impactora-range a {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.38rem 0.8rem;
	border: 1px solid var(--imp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--imp-navy);
	font-size: 0.82rem;
	font-weight: 650;
}
.impactora-page .impactora-range a.is-on,
.impactora-page .impactora-range a:hover { background: var(--imp-navy); color: #fff; border-color: var(--imp-navy); }
.impactora-page .impactora-range a.is-on .imp-i,
.impactora-cited .impactora-range a.is-on .imp-i { color: var(--imp-gold, #e0a010); }
.impactora-range-note { font-size: 0.75rem; color: var(--imp-muted); }

.impactora-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	align-items: flex-end;
	margin: 0 0 0.5rem;
}
.impactora-filters label { display: flex; flex-direction: column; gap: 0.25rem; font-size: 0.75rem; font-weight: 650; color: var(--imp-muted); }
.impactora-filters input, .impactora-filters select {
	min-height: 2.4rem;
	padding: 0.35rem 0.65rem;
	border: 1px solid var(--imp-line);
	border-radius: 0.55rem;
	font: inherit;
	color: var(--imp-ink);
	background: #fff;
}
.impactora-method { font-size: 0.75rem; color: var(--imp-muted); margin: 0 0 1rem; line-height: 1.45; }

.impactora-metrics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
	gap: 0.6rem;
	margin: 0 0 1rem;
}
.impactora-metric {
	padding: 0.9rem;
	border: 1px solid var(--imp-line);
	border-top: 3px solid var(--imp-gold);
	border-radius: 0.85rem;
	background: #fff;
}
.impactora-metric:first-child { background: var(--imp-gold-soft); }
.impactora-metric-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.85rem;
	height: 1.85rem;
	margin: 0 0 0.4rem;
	border-radius: 0.5rem;
	background: var(--imp-navy, #102040);
	color: var(--imp-gold, #e0a010);
}
.impactora-metric:first-child .impactora-metric-ico {
	background: var(--imp-navy);
	color: var(--imp-gold);
}
.impactora-metric strong {
	display: block;
	font-size: 1.35rem;
	letter-spacing: -0.03em;
	font-variant-numeric: tabular-nums;
	color: var(--imp-navy);
}
.impactora-metric > span:not(.impactora-metric-ico) {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--imp-muted);
}

.impactora-toolbar { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1rem; align-items: center; }
.impactora-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	min-height: 2.45rem;
	padding: 0.4rem 1rem;
	border: 0;
	border-radius: 0.6rem;
	background: var(--imp-navy);
	color: #fff;
	font-weight: 700;
	font-size: 0.85rem;
	cursor: pointer;
	text-decoration: none;
}
.impactora-page a.impactora-btn { color: #fff; }
.impactora-btn:hover { background: #0a1b33; color: #fff; }
.impactora-btn-ghost {
	background: #fff;
	color: var(--imp-navy);
	border: 1px solid var(--imp-line);
}
.impactora-page a.impactora-btn-ghost { color: var(--imp-navy); }
.impactora-btn-ghost:hover { background: var(--imp-gold-soft); color: var(--imp-navy); }

.impactora-panel {
	margin: 0 0 1rem;
	padding: 1rem 1.1rem;
	border: 1px solid var(--imp-line);
	border-radius: 1rem;
	background: #fff;
}
.impactora-panel h2 { margin: 0 0 0.5rem; font-size: 1.05rem; color: var(--imp-navy); }
.impactora-panel-h {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}
.impactora-panel-h .imp-i { color: var(--imp-gold); }
.impactora-muted { color: var(--imp-muted); font-size: 0.82rem; margin: 0 0 0.75rem; }
.impactora-profile { font-size: 0.85rem; font-weight: 700; color: var(--imp-navy); margin: 0 0 0.75rem; }
.impactora-empty {
	padding: 1.4rem;
	border: 1px dashed var(--imp-line);
	border-radius: 1rem;
	background: var(--imp-soft);
	text-align: center;
}
.impactora-empty .imp-i { color: var(--imp-gold); margin-bottom: 0.4rem; }
.impactora-empty-title { margin: 0 0 0.35rem; font-weight: 750; }
.impactora-empty-copy { margin: 0; color: var(--imp-muted); }

.impactora-alert { padding: 0.85rem 1rem; border-radius: 0.75rem; margin: 0 0 1rem; font-size: 0.875rem; }
.impactora-alert-warn { background: var(--imp-gold-soft); border: 1px solid #f0d48a; color: #6b4e00; }
.impactora-alert-info { background: var(--imp-soft); border: 1px solid var(--imp-line); color: var(--imp-navy); }
.impactora-alert-ok { background: #eef6ff; border: 1px solid #c5d7f0; color: var(--imp-navy); }

.impactora-table-wrap { overflow-x: auto; }
.impactora-table { width: 100%; border-collapse: collapse; font-size: 0.88rem; }
.impactora-table th, .impactora-table td {
	text-align: left;
	padding: 0.65rem 0.4rem;
	border-bottom: 1px solid #eef2f7;
	vertical-align: top;
}
.impactora-table th {
	font-size: 0.68rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--imp-muted);
}
.impactora-table tbody tr:hover { background: var(--imp-gold-soft); }
.impactora-num { font-variant-numeric: tabular-nums; font-weight: 750; white-space: nowrap; }
.impactora-mini { height: 0.35rem; background: var(--imp-soft); border-radius: 999px; margin-top: 0.4rem; overflow: hidden; }
.impactora-mini span { display: block; height: 100%; background: var(--imp-gold); border-radius: 999px; }

.impactora-chart {
	display: flex;
	align-items: flex-end;
	gap: 0.35rem;
	height: 8.5rem;
	padding: 0.5rem 0 0;
}
.impactora-chart-col { flex: 1; display: flex; flex-direction: column; align-items: center; height: 100%; justify-content: flex-end; gap: 0.25rem; min-width: 0; }
.impactora-chart-bar { width: 100%; max-width: 1.4rem; background: var(--imp-navy); border-radius: 0.3rem 0.3rem 0 0; min-height: 4px; }
.impactora-chart-col span { font-size: 0.62rem; color: var(--imp-muted); transform: rotate(-40deg); transform-origin: top left; white-space: nowrap; }

.impactora-authors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; }
.impactora-author {
	display: flex;
	gap: 0.7rem;
	align-items: center;
	padding: 0.7rem 0.8rem;
	border: 1px solid var(--imp-line);
	border-radius: 0.75rem;
	background: var(--imp-soft);
}
.impactora-author-rank {
	width: 1.85rem;
	height: 1.85rem;
	border-radius: 999px;
	background: var(--imp-navy);
	color: var(--imp-gold);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	font-weight: 800;
	flex-shrink: 0;
}
.impactora-author strong { display: block; font-size: 0.88rem; }
.impactora-author span { font-size: 0.72rem; color: var(--imp-muted); }

.impactora-link-form { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: center; }
.impactora-link-form select { max-width: 16rem; font-size: 0.78rem; min-height: 2.2rem; }
.impactora-embed { width: 100%; min-height: 6rem; font-size: 0.72rem; font-family: ui-monospace, Menlo, monospace; border: 1px solid var(--imp-line); border-radius: 0.55rem; padding: 0.6rem; }
.impactora-source { display: inline-block; font-size: 0.62rem; font-weight: 700; padding: 0.12rem 0.45rem; border-radius: 999px; text-transform: uppercase; }
.impactora-source-scholar { background: var(--imp-gold-soft); color: #6b4e00; }
.impactora-source-crossref { background: var(--imp-soft); color: var(--imp-navy); }

.impactora-update {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	margin: 0 0 1rem;
	padding: 0.9rem 1rem;
	border: 1px solid #f0d48a;
	border-radius: 0.85rem;
	background: var(--imp-gold-soft);
}

.impactora-settings-hero {
	margin: 0 0 1.1rem;
	padding: 1.1rem;
	border: 1px solid var(--imp-line, #d7deea);
	border-radius: 1rem;
	background: linear-gradient(180deg, #fdf6e3 0%, #fff 100%);
	text-align: center;
}
.impactora-settings-hero img {
	display: block;
	height: 3.2rem;
	width: auto;
	max-width: 14rem;
	margin: 0 auto 0.5rem;
	object-fit: contain;
	background: transparent;
}

@media (max-width: 800px) {
	.impactora-metrics, .impactora-authors { grid-template-columns: 1fr 1fr; }
	.impactora-chart { height: 7rem; }
}
@media (max-width: 560px) {
	.impactora-metrics, .impactora-authors { grid-template-columns: 1fr; }
	.impactora-filters label { width: 100%; }
}

/* Public sidebar: inherit theme type, gold accent only */
.pkp_block.block_impactora .impactora-sidebar-list,
.block_impactora .impactora-sidebar-list { list-style: none; padding: 0; margin: 0; }
.pkp_block.block_impactora .impactora-sidebar-item,
.block_impactora .impactora-sidebar-item {
	padding: 0.55rem 0;
	border-bottom: 1px solid currentColor;
	border-bottom-opacity: 0.12;
	opacity: 1;
}
.block_impactora .impactora-sidebar-item { border-bottom: 1px solid rgba(127, 127, 127, 0.25); }
.block_impactora .impactora-sidebar-item:last-child { border-bottom: 0; }
.block_impactora .impactora-sidebar-link { display: block; text-decoration: none; color: inherit; }
.block_impactora .impactora-sidebar-title { display: block; font-size: 0.85rem; font-weight: 650; line-height: 1.4; color: inherit; }
.block_impactora .impactora-sidebar-cite {
	display: inline-block;
	margin-top: 0.25rem;
	font-size: 0.7rem;
	font-weight: 700;
	color: inherit;
	border-left: 3px solid #e0a010;
	padding: 0.05rem 0.45rem;
}
.block_impactora .impactora-sidebar-rank {
	display: inline-block;
	min-width: 1.2rem;
	font-weight: 800;
	color: #e0a010;
	margin-right: 0.25rem;
}

.impactora-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.5rem;
	padding: 0.2rem 0.7rem;
	border: 1px solid currentColor;
	border-left: 3px solid #e0a010;
	border-radius: 999px;
	color: inherit;
	background: transparent;
	font-size: 0.8rem;
}
.impactora-badge-count { font-weight: 800; }
.impactora-badge-label { opacity: 0.85; }
.impactora-badge .imp-i { color: #e0a010; }

.imp-i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 0;
	vertical-align: -0.15em;
}
.imp-i svg { width: 1.05em; height: 1.05em; display: block; }
.imp-i-lg svg { width: 2rem; height: 2rem; }
.impactora-inline-ico { display: inline-flex; align-items: center; gap: 0.28rem; }
.impactora-range-note { display: inline-flex; align-items: center; gap: 0.28rem; }
.impactora-method { display: flex; align-items: center; gap: 0.35rem; }

.impactora-rank {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 999px;
	background: #102040;
	color: #e0a010;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.72rem;
	font-weight: 800;
	flex-shrink: 0;
}
.impactora-cited-copy { min-width: 0; line-height: 1.4; }
.impactora-cited-n {
	display: inline-flex;
	align-items: center;
	gap: 0.28rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: #e0a010;
	white-space: nowrap;
}
.impactora-cited-n .imp-i { color: #e0a010; }

.impactora-cited .impactora-range a {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
}
.impactora-cited .impactora-metric { text-align: left; }
.impactora-cited .impactora-panel { border: 1px solid #d7deea; border-radius: 1rem; background: #fff; padding: 1rem 1.1rem; }
.impactora-cited .impactora-panel-h { color: #102040; }
.impactora-cited .impactora-empty { margin: 1rem 0; }

.block_impactora .imp-i { color: #e0a010; }
.block_impactora .title { display: flex; align-items: center; gap: 0.4rem; }
.block_impactora .impactora-sidebar-cite { display: inline-flex; align-items: center; gap: 0.28rem; }
.block_impactora .impactora-sidebar-more a { display: inline-flex; align-items: center; gap: 0.2rem; }
.impactora-article-more a { display: inline-flex; align-items: center; gap: 0.3rem; }
.impactora-article-kicker { display: flex; align-items: center; gap: 0.35rem; }

.impactora-sc-line { display: flex; align-items: center; gap: 0.4rem; flex-wrap: wrap; }
.impactora-sc-line .imp-i { color: #e0a010; }
.impactora-cited-foot { display: flex; align-items: center; gap: 0.35rem; flex-wrap: wrap; }
.impactora-cited-foot .imp-i { color: #e0a010; }

.impactora-source-sc { background: var(--imp-gold-soft, #fdf6e3); color: #6b4e00; }
.impactora-source-wikipedia { background: #eef6ff; color: #102040; }
.impactora-source-news { background: #f4f7fb; color: #102040; }
.impactora-source-blog { background: #f4f7fb; color: #102040; }
.impactora-source-web { background: #f4f7fb; color: #102040; }
.impactora-source-reddit { background: #f4f7fb; color: #102040; }

.impactora-mention-list { list-style: none; margin: 0; padding: 0; }
.impactora-mention-list li {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 0.7rem;
	align-items: baseline;
	padding: 0.45rem 0;
	border-bottom: 1px solid var(--imp-line, #d7deea);
	font-size: 0.85rem;
}
.impactora-mention-list li:last-child { border-bottom: 0; }
.impactora-mention-list time { font-variant-numeric: tabular-nums; color: var(--imp-muted, #5c6b80); font-size: 0.75rem; }

.impactora-sc-line { font-size: 0.82rem; color: var(--imp-muted, #5c6b80); margin: 0 0 1rem; }

.impactora-cited {
	--imp-navy: #102040;
	--imp-gold: #e0a010;
	--imp-gold-soft: #fdf6e3;
	--imp-ink: #102040;
	--imp-muted: #5c6b80;
	--imp-line: #d7deea;
	--imp-soft: #f4f7fb;
	max-width: 52rem;
	margin: 0 auto;
	padding: 0.5rem 0 2.5rem;
}
.impactora-cited-hero { text-align: center; margin: 0 0 1.2rem; }
.impactora-cited-hero h1 { margin: 0.4rem 0 0.35rem; font-size: 1.45rem; color: #102040; }
.impactora-cited-hero p { margin: 0; color: inherit; opacity: 0.8; font-size: 0.9rem; }
.impactora-cited .impactora-logo { height: 2.4rem; width: auto; margin: 0 auto; display: block; background: transparent; }
.impactora-cited .impactora-range { justify-content: center; }
.impactora-cited .impactora-range a {
	padding: 0.38rem 0.8rem;
	border: 1px solid #d7deea;
	border-radius: 999px;
	background: #fff;
	color: #102040;
	font-size: 0.82rem;
	font-weight: 650;
	text-decoration: none;
}
.impactora-cited .impactora-range a.is-on,
.impactora-cited .impactora-range a:hover { background: #102040; color: #fff; border-color: #102040; }
.impactora-cited-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.85rem; margin: 0 0 1rem; }
.impactora-cited-list { list-style: none; margin: 0; padding: 0; }
.impactora-cited-list li {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 0.5rem;
	align-items: center;
	padding: 0.5rem 0;
	border-bottom: 1px solid rgba(127,127,127,0.2);
	font-size: 0.88rem;
}
.impactora-cited-n { font-weight: 800; font-variant-numeric: tabular-nums; color: #e0a010; }
.impactora-cited-foot { font-size: 0.72rem; opacity: 0.7; margin: 1rem 0 0; }

.impactora-article { margin: 0.75rem 0 1rem; }
.impactora-article-kicker {
	margin: 0.6rem 0 0.3rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	opacity: 0.75;
}
.impactora-article-citing ul { list-style: none; margin: 0; padding: 0; }
.impactora-article-citing li {
	padding: 0.28rem 0;
	font-size: 0.82rem;
	border-bottom: 1px solid rgba(127,127,127,0.18);
}
.impactora-article-citing time { margin-right: 0.4rem; opacity: 0.7; font-variant-numeric: tabular-nums; }
.impactora-article-more { margin: 0.5rem 0 0; font-size: 0.8rem; }
.block_impactora .impactora-sidebar-more { margin: 0.65rem 0 0; font-size: 0.78rem; }
.block_impactora .impactora-sidebar-more a { color: inherit; border-bottom: 2px solid #e0a010; text-decoration: none; }

.block_impactora,
.impactora-cited,
.impactora-page {
	--imp-navy: #102040;
	--imp-gold: #e0a010;
}
.impactora-rank-card {
	border: 1px solid var(--imp-gold, #e0a010);
	border-radius: 0.85rem;
	padding: 0.7rem 0.85rem 0.8rem;
	margin: 0 0 0.85rem;
	background: #fff;
}
.impactora-rank-kicker {
	margin: 0 0 0.2rem;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--imp-muted, #5c6b80);
}
.impactora-rank-card-n {
	margin: 0;
	font-size: 1.55rem;
	font-weight: 800;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
	color: var(--imp-navy, #102040);
}
.impactora-rank-card-label {
	margin: 0.15rem 0 0.35rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--imp-muted, #5c6b80);
}
.impactora-rank-card-meta {
	margin: 0;
	font-size: 0.75rem;
	line-height: 1.45;
	color: var(--imp-navy, #102040);
}
.impactora-index-pins {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	margin: 0 0 0.85rem;
	padding: 0;
}
.impactora-index-pins li { margin: 0; padding: 0; }
.impactora-index-pin {
	display: inline-flex;
	align-items: center;
	gap: 0.28rem;
	padding: 0.28rem 0.65rem;
	border-radius: 999px;
	background: var(--imp-navy, #102040);
	color: #fff;
	font-size: 0.72rem;
	font-weight: 750;
	letter-spacing: 0.02em;
	text-decoration: none;
	line-height: 1.2;
}
.impactora-index-pin .imp-i { color: var(--imp-gold, #e0a010); }
a.impactora-index-pin:hover { filter: brightness(1.08); color: #fff; }
.impactora-index-pin.is-q1 {
	background: var(--imp-gold, #e0a010);
	color: var(--imp-navy, #102040);
}
.impactora-index-pin.is-q1 .imp-i { color: var(--imp-navy, #102040); }
.impactora-cited-hero .impactora-index-pins { justify-content: center; margin: 0.85rem 0 0; }

@media (max-width: 800px) {
	.impactora-cited-grid { grid-template-columns: 1fr; }
}
