/* MCQ Test Portal – public pages (practice, landing, account, result). Everything is scoped to .mtp. */

:root {
	--mtp-accent: #2b4c9b;
	--mtp-cta: #d9622b;
}

.mtp,
.mtp-lead,
.mtp-toasts {
	--mtp-ink: #1d2433;
	--mtp-ink-2: #4a5468;
	--mtp-muted: #6b7486;
	--mtp-line: #dfe3ec;
	--mtp-soft: #f4f6fb;
	--mtp-bg: #ffffff;
	--mtp-ok: #1f7a4d;
	--mtp-ok-bg: #e7f5ee;
	--mtp-bad: #b3261e;
	--mtp-bad-bg: #fdecea;
	--mtp-warn: #8a5a00;
	--mtp-warn-bg: #fff4dc;
	--mtp-radius: 12px;
	--mtp-font: system-ui, -apple-system, "Segoe UI", "Noto Sans Devanagari", sans-serif;
}

.mtp {
	font-family: var(--mtp-font);
	color: var(--mtp-ink);
	line-height: 1.65;
	font-size: 1rem;
	max-width: 860px;
	margin-inline: auto;
	box-sizing: border-box;
	overflow-wrap: anywhere;
}

.mtp [hidden],
.mtp-lead [hidden] {
	display: none !important;
}

.mtp *,
.mtp *::before,
.mtp *::after {
	box-sizing: border-box;
}

.mtp [lang="hi"],
.mtp :lang(hi) {
	line-height: 1.75;
}

.mtp img {
	max-width: 100%;
	height: auto;
}

.mtp img.mtp-math {
	display: inline-block;
	max-width: none;
	margin: 0 .08em;
}

.mtp .mtp-math-block {
	display: block;
	text-align: center;
	margin: .6em 0;
	overflow-x: auto;
}

.mtp .mtp-math-block img.mtp-math {
	max-width: 100%;
}

.mtp-h3 {
	font-size: 1.2rem;
	line-height: 1.35;
	margin: 1.6em 0 .6em;
	color: var(--mtp-ink);
}

.mtp-muted,
.mtp-small {
	color: var(--mtp-muted);
	font-size: .9em;
}

.mtp-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.mtp .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

/* ---------- Buttons ---------- */

.mtp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .4em;
	min-height: 44px;
	padding: .55em 1.2em;
	border: 1.5px solid transparent;
	border-radius: 999px;
	background: var(--mtp-accent);
	color: #fff !important;
	font: inherit;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none !important;
	cursor: pointer;
	transition: filter .15s, transform .05s;
}

.mtp-btn:hover {
	filter: brightness(1.08);
}

.mtp-btn:active {
	transform: translateY(1px);
}

.mtp-btn:focus-visible,
.mtp-opt:focus-visible,
.mtp-chip:focus-visible,
.mtp-tab:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--mtp-accent) 45%, transparent);
	outline-offset: 2px;
}

.mtp-btn[disabled],
.mtp-btn.is-busy {
	opacity: .6;
	cursor: not-allowed;
}

.mtp-btn.is-busy::after {
	content: "";
	width: 1em;
	height: 1em;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: mtp-spin .8s linear infinite;
}

.mtp-btn-cta {
	background: var(--mtp-cta);
}

.mtp-btn-ghost {
	background: transparent;
	border-color: var(--mtp-accent);
	color: var(--mtp-accent) !important;
}

.mtp-btn-link {
	background: none;
	color: var(--mtp-muted) !important;
	text-decoration: underline !important;
	min-height: 36px;
}

.mtp-btn-outline-light {
	background: transparent;
	border-color: rgba(255, 255, 255, .7);
	color: #fff !important;
}

.mtp-btn-lg {
	min-height: 52px;
	font-size: 1.08rem;
	padding-inline: 1.8em;
}

.mtp-btn-sm {
	min-height: 34px;
	padding: .3em .9em;
	font-size: .9rem;
}

/* ---------- Alerts, notes ---------- */

.mtp-alert {
	padding: .9em 1.1em;
	border-radius: var(--mtp-radius);
	background: var(--mtp-soft);
	border: 1px solid var(--mtp-line);
	margin: 1em 0;
}

.mtp-alert-success {
	background: var(--mtp-ok-bg);
	border-color: #bfe3cf;
	color: var(--mtp-ok);
}

.mtp-error,
.mtp-lead-error {
	color: var(--mtp-bad);
	font-size: .92rem;
	margin: .4em 0;
}

.mtp-success {
	color: var(--mtp-ok);
	background: var(--mtp-ok-bg);
	padding: .7em 1em;
	border-radius: 10px;
}

.mtp-note {
	color: var(--mtp-ink-2);
	margin: .3em 0 .8em;
}

.mtp-empty {
	color: var(--mtp-muted);
	padding: 1.2em;
	text-align: center;
	background: var(--mtp-soft);
	border-radius: var(--mtp-radius);
}

/* ---------- Practice question cards ---------- */

.mtp-practice-meta {
	color: var(--mtp-muted);
	font-size: .92rem;
	margin: 0 0 1em;
}

.mtp-intro {
	margin-bottom: 1.4em;
}

.mtp-pq {
	background: var(--mtp-bg);
	border: 1px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	padding: 1.1em 1.2em 1.2em;
	margin: 0 0 1.1em;
	box-shadow: 0 1px 2px rgba(20, 30, 60, .04);
	scroll-margin-top: 80px;
}

.mtp-pq-head {
	display: flex;
	align-items: center;
	gap: .6em;
	margin-bottom: .5em;
	flex-wrap: wrap;
}

.mtp-pq-n {
	font-weight: 700;
	color: var(--mtp-accent);
	font-size: .92rem;
	letter-spacing: .01em;
}

.mtp-pq-tag {
	font-size: .78rem;
	color: var(--mtp-ink-2);
	background: var(--mtp-soft);
	border-radius: 999px;
	padding: .1em .7em;
}

.mtp-pq-text {
	font-size: 1.05rem;
	margin-bottom: .8em;
}

.mtp-pq-text > div + div,
.mtp-alt-lang {
	color: var(--mtp-ink-2);
}

.mtp-pq-text > .mtp-alt-lang {
	margin-top: .35em;
	font-size: .97em;
}

.mtp-pq-text p {
	margin: 0 0 .5em;
}

.mtp-pq-text table,
.mtp-pq-exp table {
	border-collapse: collapse;
	margin: .5em 0;
	max-width: 100%;
	display: block;
	overflow-x: auto;
}

.mtp-pq-text td,
.mtp-pq-text th,
.mtp-pq-exp td,
.mtp-pq-exp th {
	border: 1px solid var(--mtp-line);
	padding: .3em .6em;
}

.mtp-pq-options {
	display: grid;
	gap: .55em;
}

.mtp-opt {
	display: flex;
	align-items: flex-start;
	gap: .75em;
	width: 100%;
	min-height: 48px;
	padding: .65em .85em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 10px;
	background: var(--mtp-bg);
	color: var(--mtp-ink);
	font: inherit;
	text-align: start;
	cursor: pointer;
	transition: border-color .12s, background .12s;
}

.mtp-opt:hover {
	border-color: color-mix(in srgb, var(--mtp-accent) 50%, var(--mtp-line));
	background: var(--mtp-soft);
}

.mtp-opt-key {
	flex: 0 0 auto;
	display: inline-grid;
	place-items: center;
	width: 1.9em;
	height: 1.9em;
	border-radius: 50%;
	border: 1.5px solid var(--mtp-line);
	font-weight: 700;
	font-size: .9em;
	color: var(--mtp-ink-2);
	background: var(--mtp-bg);
}

.mtp-opt-body {
	flex: 1 1 auto;
	padding-top: .1em;
}

.mtp-opt-sep {
	color: var(--mtp-muted);
}

.mtp-opt-flag {
	flex: 0 0 auto;
	font-weight: 700;
	font-size: 1.1em;
}

.mtp-opt.is-selected {
	border-color: var(--mtp-accent);
	background: color-mix(in srgb, var(--mtp-accent) 7%, #fff);
}

.mtp-opt.is-selected .mtp-opt-key {
	background: var(--mtp-accent);
	border-color: var(--mtp-accent);
	color: #fff;
}

.mtp-pq.is-answered .mtp-opt {
	cursor: default;
}

.mtp-pq.is-answered .mtp-opt:hover {
	background: var(--mtp-bg);
}

.mtp-opt.is-correct,
.mtp-pq.is-answered .mtp-opt.is-correct:hover {
	border-color: var(--mtp-ok);
	background: var(--mtp-ok-bg);
}

.mtp-opt.is-correct .mtp-opt-key {
	background: var(--mtp-ok);
	border-color: var(--mtp-ok);
	color: #fff;
}

.mtp-opt.is-correct .mtp-opt-flag {
	color: var(--mtp-ok);
}

.mtp-opt.is-wrong,
.mtp-pq.is-answered .mtp-opt.is-wrong:hover {
	border-color: var(--mtp-bad);
	background: var(--mtp-bad-bg);
}

.mtp-opt.is-wrong .mtp-opt-key {
	background: var(--mtp-bad);
	border-color: var(--mtp-bad);
	color: #fff;
}

.mtp-opt.is-wrong .mtp-opt-flag {
	color: var(--mtp-bad);
}

.mtp-pq.is-busy {
	opacity: .7;
	pointer-events: none;
}

.mtp-pq-actions {
	margin-top: .7em;
	animation: mtp-fade-in .15s ease-out;
}

@keyframes mtp-fade-in {
	from { opacity: 0; transform: translateY(-3px); }
	to { opacity: 1; transform: none; }
}

.mtp-show-all-wrap {
	margin: 1.4em 0 .4em;
	padding: 1em;
	border: 1.5px dashed var(--mtp-line);
	border-radius: 14px;
	text-align: center;
}

.mtp-show-all-wrap .mtp-btn {
	min-width: 220px;
}

.mtp-show-all-msg {
	margin: .6em 0 0;
	color: var(--mtp-bad);
}


.mtp-pq-feedback {
	margin-top: .8em;
	padding: .6em .9em;
	border-radius: 10px;
	background: var(--mtp-soft);
	display: flex;
	align-items: center;
	gap: .7em;
	flex-wrap: wrap;
}

.mtp-pq-feedback.is-ok {
	background: var(--mtp-ok-bg);
	color: var(--mtp-ok);
}

.mtp-pq-feedback.is-bad {
	background: var(--mtp-bad-bg);
	color: var(--mtp-bad);
}

.mtp-pq-feedback.is-info {
	background: var(--mtp-warn-bg);
	color: var(--mtp-warn);
}

.mtp-pq-exp {
	margin-top: .8em;
	padding: .9em 1em;
	border-left: 4px solid var(--mtp-accent);
	background: var(--mtp-soft);
	border-radius: 0 10px 10px 0;
}

.mtp-exp-title {
	display: block;
	margin-bottom: .3em;
	color: var(--mtp-accent);
}

.mtp-pq-exp > div + div {
	margin-top: .6em;
	padding-top: .6em;
	border-top: 1px dashed var(--mtp-line);
}

/* ---------- Pagination, CTA, related ---------- */

.mtp-pages {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .35em;
	margin: 1.6em 0;
}

.mtp-page-link {
	display: inline-grid;
	place-items: center;
	min-width: 44px;
	height: 44px;
	padding: 0 .6em;
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
	font-weight: 600;
	background: var(--mtp-bg);
}

a.mtp-page-link:hover {
	border-color: var(--mtp-accent);
	color: var(--mtp-accent) !important;
}

.mtp-page-link.is-current {
	background: var(--mtp-accent);
	border-color: var(--mtp-accent);
	color: #fff !important;
}

.mtp-page-gap {
	align-self: center;
	color: var(--mtp-muted);
}

.mtp-cta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: .7em;
	padding: 1.4em;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--mtp-accent), color-mix(in srgb, var(--mtp-accent) 70%, #000));
	color: #fff;
	margin: 1.8em 0;
}

.mtp-cta-title {
	font-size: 1.2rem;
}

.mtp-cta-meta {
	opacity: .9;
	font-size: .95rem;
}

.mtp-related ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: .4em;
}

.mtp-related a {
	display: block;
	padding: .65em .9em;
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
	text-decoration: none;
	color: var(--mtp-accent);
}

.mtp-related a:hover {
	background: var(--mtp-soft);
}

/* ---------- Lead dialog ---------- */

.mtp-lead {
	font-family: var(--mtp-font);
	border: 0;
	border-radius: 18px;
	padding: 0;
	width: min(440px, calc(100vw - 32px));
	max-height: calc(100dvh - 32px);
	color: var(--mtp-ink);
	box-shadow: 0 24px 60px rgba(10, 20, 50, .3);
}

.mtp-lead::backdrop {
	background: rgba(15, 22, 40, .55);
}

.mtp-lead-form {
	padding: 1.4em 1.4em 1.2em;
	display: grid;
	gap: .7em;
}

.mtp-lead-title {
	font-family: inherit;
	font-weight: 700;
	letter-spacing: 0;
	font-size: 1.2rem;
	line-height: 1.35;
	margin: 0;
}

.mtp-lead-sub {
	margin: 0 0 .3em;
	color: var(--mtp-muted);
	font-size: .92rem;
}

.mtp-field {
	display: grid;
	gap: .3em;
	font-size: .92rem;
	font-weight: 600;
	color: var(--mtp-ink-2);
}

.mtp-field input,
.mtp-field select,
.mtp-coupon-code {
	width: 100%;
	min-height: 46px;
	padding: .5em .8em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 10px;
	font: inherit;
	font-weight: 400;
	color: var(--mtp-ink);
	background: #fff;
}

.mtp-field input:focus,
.mtp-field select:focus,
.mtp-coupon-code:focus {
	outline: none;
	border-color: var(--mtp-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--mtp-accent) 20%, transparent);
}

.mtp-phone {
	display: flex;
	align-items: stretch;
}

.mtp-cc {
	flex: 0 0 auto;
	white-space: nowrap;
	overflow-wrap: normal;
	display: grid;
	place-items: center;
	padding: 0 .7em;
	border: 1.5px solid var(--mtp-line);
	border-right: 0;
	border-radius: 10px 0 0 10px;
	background: var(--mtp-soft);
	color: var(--mtp-ink-2);
	font-weight: 600;
}

.mtp-phone input {
	border-radius: 0 10px 10px 0;
}

.mtp-check {
	display: flex;
	gap: .6em;
	align-items: flex-start;
	font-size: .86rem;
	color: var(--mtp-ink-2);
	line-height: 1.5;
}

.mtp-check input {
	margin-top: .2em;
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	accent-color: var(--mtp-accent);
}

.mtp-lead-submit {
	width: 100%;
	margin-top: .3em;
}

/* ---------- Landing pages ---------- */

.mtp-crumb a {
	color: var(--mtp-accent);
	font-weight: 600;
	text-decoration: none;
}

.mtp-facts {
	list-style: none;
	padding: 0;
	margin: 0 0 1.4em;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: .6em;
}

.mtp-facts li {
	background: var(--mtp-soft);
	border-radius: var(--mtp-radius);
	padding: .8em .6em;
	text-align: center;
	display: grid;
}

.mtp-facts strong {
	font-size: 1.5rem;
	color: var(--mtp-accent);
	line-height: 1.2;
}

.mtp-facts span {
	color: var(--mtp-muted);
	font-size: .85rem;
}

.mtp-table-wrap {
	overflow-x: auto;
	margin: 0 0 1.2em;
	border: 1px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
}

.mtp-table {
	width: 100%;
	border-collapse: collapse;
	font-size: .95rem;
}

.mtp-table th,
.mtp-table td {
	overflow-wrap: normal;
	padding: .65em .8em;
	text-align: start;
	border-bottom: 1px solid var(--mtp-line);
}

.mtp-table thead th {
	background: var(--mtp-soft);
	font-weight: 600;
	color: var(--mtp-ink-2);
}

.mtp-table tr:last-child td {
	border-bottom: 0;
}

.mtp-rules {
	padding-inline-start: 1.2em;
	color: var(--mtp-ink-2);
}

.mtp-rules li {
	margin: .3em 0;
}

.mtp-instr-box {
	margin: 1.2em 0;
	padding: 1em 1.2em;
	border: 1px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	background: var(--mtp-bg);
}

.mtp-instr-box .mtp-h3 {
	margin: 0 0 .5em;
}

.mtp-instr-box .mtp-rules {
	margin: 0;
}

.mtp-instr-box .mtp-rules + .mtp-custom-instructions {
	margin-top: .9em;
	padding-top: .9em;
	border-top: 1px dashed var(--mtp-line);
}

.mtp-custom-instructions {
	line-height: 1.7;
	overflow-wrap: anywhere;
}

.mtp-custom-instructions > :first-child {
	margin-top: 0;
}

.mtp-custom-instructions > :last-child {
	margin-bottom: 0;
}

.mtp-custom-instructions img {
	max-width: 100%;
	height: auto;
}

.mtp-it-instr {
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
	padding: .55em .9em;
	background: var(--mtp-soft);
}

.mtp-it-instr summary {
	cursor: pointer;
	font-weight: 600;
	color: var(--mtp-accent);
}

.mtp-it-instr[open] summary {
	margin-bottom: .5em;
}

.mtp-instructions {
	margin: 1em 0;
	padding: 1em 1.2em;
	border: 1px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
}

.mtp-action-box {
	margin: 1.4em 0;
	padding: 1em 1.2em;
	border: 1px solid var(--mtp-line);
	border-radius: 16px;
	background: rgba(255, 255, 255, .97);
	box-shadow: 0 -4px 20px rgba(20, 30, 60, .06);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8em 1.2em;
}

.mtp-agree {
	font-size: .95rem;
}

.mtp-past .mtp-list {
	list-style: none;
	padding: 0;
	display: grid;
	gap: .4em;
}

.mtp-past .mtp-list li {
	display: flex;
	justify-content: space-between;
	gap: 1em;
	padding: .6em .9em;
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
}

/* Series */

.mtp-badges {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	margin: 0 0 .8em;
}

.mtp-badge {
	display: inline-block;
	padding: .15em .75em;
	border-radius: 999px;
	background: var(--mtp-soft);
	color: var(--mtp-ink-2);
	font-size: .8rem;
	font-weight: 600;
}

.mtp-badge-paid {
	background: color-mix(in srgb, var(--mtp-cta) 14%, #fff);
	color: color-mix(in srgb, var(--mtp-cta) 80%, #000);
}

.mtp-badge-free {
	background: var(--mtp-ok-bg);
	color: var(--mtp-ok);
}

.mtp-badge-practice {
	background: color-mix(in srgb, var(--mtp-accent) 10%, #fff);
	color: var(--mtp-accent);
}

.mtp-price-box {
	border: 1.5px solid var(--mtp-line);
	border-radius: 16px;
	padding: 1.2em 1.3em;
	margin: 0 0 1.4em;
	display: grid;
	gap: .7em;
}

.mtp-price {
	display: flex;
	align-items: baseline;
	gap: .6em;
	flex-wrap: wrap;
	margin: 0;
}

.mtp-price-now {
	font-size: 2rem;
	line-height: 1;
	color: var(--mtp-ink);
}

.mtp-price-mrp {
	color: var(--mtp-muted);
}

.mtp-price-off {
	color: var(--mtp-ok);
	font-weight: 700;
	font-size: .9rem;
}

.mtp-validity,
.mtp-secure {
	color: var(--mtp-muted);
	font-size: .88rem;
	margin: 0;
}

.mtp-coupon summary {
	cursor: pointer;
	color: var(--mtp-accent);
	font-weight: 600;
	font-size: .92rem;
}

.mtp-coupon-row {
	display: flex;
	gap: .5em;
	margin-top: .5em;
}

.mtp-coupon-code {
	text-transform: uppercase;
	max-width: 220px;
}

.mtp-coupon-msg {
	font-size: .88rem;
	margin: .3em 0 0;
}

.mtp-coupon-msg.is-ok {
	color: var(--mtp-ok);
}

.mtp-coupon-msg.is-bad {
	color: var(--mtp-bad);
}

.mtp-test-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: .55em;
	counter-reset: mtp-t;
}

.mtp-test-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1em;
	padding: .8em 1em;
	border: 1px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	background: var(--mtp-bg);
}

.mtp-test-row-main {
	display: grid;
	gap: .15em;
	min-width: 0;
}

.mtp-test-title {
	font-weight: 600;
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp-test-meta {
	color: var(--mtp-muted);
	font-size: .86rem;
}

.mtp-test-row-status {
	display: flex;
	align-items: center;
	gap: .5em;
	flex: 0 0 auto;
}

.mtp-test-row.is-locked .mtp-test-title {
	color: var(--mtp-ink-2) !important;
}

.mtp-lock {
	color: var(--mtp-muted);
	display: inline-flex;
}

.mtp-enrolled {
	margin: 0;
	color: var(--mtp-ok);
}

/* Cards (series list, dashboard) */

.mtp-cards {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: .9em;
}

.mtp-card {
	border: 1px solid var(--mtp-line);
	border-radius: 14px;
	padding: 1em 1.1em;
	display: grid;
	gap: .4em;
	align-content: start;
	background: var(--mtp-bg);
}

.mtp-card-title {
	font-weight: 700;
	font-size: 1.05rem;
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp-card-title:hover {
	color: var(--mtp-accent) !important;
}

.mtp-card-text {
	color: var(--mtp-ink-2);
	font-size: .92rem;
}

.mtp-card-meta {
	color: var(--mtp-muted);
	font-size: .86rem;
}

/* Account */

.mtp-account {
	max-width: 440px;
}

.mtp-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	background: var(--mtp-soft);
	border-radius: 999px;
	padding: 4px;
	margin-bottom: 1.2em;
}

.mtp-tab {
	border: 0;
	background: transparent;
	border-radius: 999px;
	min-height: 42px;
	font: inherit;
	font-weight: 600;
	color: var(--mtp-ink-2);
	cursor: pointer;
}

.mtp-tab.is-active {
	background: #fff;
	color: var(--mtp-accent);
	box-shadow: 0 1px 3px rgba(20, 30, 60, .12);
}

.mtp-form {
	display: grid;
	gap: .8em;
}

.mtp-dash-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
}

.mtp-hello {
	font-size: 1.3rem;
	font-weight: 700;
	margin: 0;
}

.mtp-data-request {
	max-width: 480px;
}

.mtp-center {
	text-align: center;
}

/* ---------- Result page (standalone) ---------- */

.mtp-result-body {
	margin: 0;
	background: var(--mtp-soft, #f4f6fb);
}

.mtp-result-root {
	max-width: 900px;
	padding: 0 16px 48px;
}

.mtp-result-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1em;
	padding: 1em 0;
	flex-wrap: wrap;
}

.mtp-site {
	font-weight: 700;
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp-result-nav {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .6em 1em;
}

.mtp-result-nav a {
	color: var(--mtp-accent);
	font-weight: 600;
	text-decoration: none;
}

.mtp-result-title {
	font-size: 1.5rem;
	line-height: 1.3;
	margin: .2em 0 .8em;
}

.mtp-score-card {
	background: #fff;
	border: 1px solid var(--mtp-line);
	border-radius: 18px;
	padding: 1.3em;
	display: grid;
	gap: 1.1em;
}

.mtp-score-main {
	display: grid;
	gap: .4em;
}

.mtp-score-label {
	color: var(--mtp-muted);
	font-weight: 600;
}

.mtp-score-value {
	font-size: 1.4rem;
	color: var(--mtp-ink-2);
}

.mtp-score-value strong {
	font-size: 2.6rem;
	color: var(--mtp-accent);
	line-height: 1;
}

.mtp-score-bar {
	display: block;
	height: 10px;
	border-radius: 999px;
	background: var(--mtp-soft);
	overflow: hidden;
}

.mtp-score-bar > span {
	display: block;
	height: 100%;
	background: var(--mtp-accent);
	border-radius: 999px;
}

.mtp-score-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
	gap: .6em;
	margin: 0;
}

.mtp-score-grid > div {
	background: var(--mtp-soft);
	border-radius: 12px;
	padding: .6em .8em;
}

.mtp-score-grid dt {
	color: var(--mtp-muted);
	font-size: .82rem;
}

.mtp-score-grid dd {
	margin: 0;
	font-weight: 700;
	font-size: 1.2rem;
}

.mtp-score-grid dd.is-good {
	color: var(--mtp-ok);
}

.mtp-score-grid dd.is-bad {
	color: var(--mtp-bad);
}

.mtp-sec-card {
	background: #fff;
	border: 1px solid var(--mtp-line);
	border-radius: 14px;
	padding: .9em 1.1em;
	margin-bottom: .6em;
	display: grid;
	gap: .45em;
}

.mtp-sec-head {
	display: flex;
	justify-content: space-between;
	gap: 1em;
}

.mtp-sec-meta {
	color: var(--mtp-muted);
	font-size: .86rem;
}

.mtp-filter {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	margin-bottom: 1em;
	position: sticky;
	top: 0;
	background: var(--mtp-soft);
	padding: .5em 0;
	z-index: 2;
}

.mtp-chip {
	border: 1.5px solid var(--mtp-line);
	background: #fff;
	color: var(--mtp-ink-2);
	border-radius: 999px;
	min-height: 38px;
	padding: .3em 1em;
	font: inherit;
	font-weight: 600;
	font-size: .9rem;
	cursor: pointer;
}

.mtp-chip.is-active {
	background: var(--mtp-accent);
	border-color: var(--mtp-accent);
	color: #fff;
}

.mtp-sol {
	background: #fff;
	border: 1px solid var(--mtp-line);
	border-left: 5px solid var(--mtp-line);
	border-radius: 14px;
	padding: 1em 1.2em;
	margin-bottom: .9em;
}

.mtp-sol.is-right {
	border-left-color: var(--mtp-ok);
}

.mtp-sol.is-wrong {
	border-left-color: var(--mtp-bad);
}

.mtp-sol-head {
	display: flex;
	justify-content: space-between;
	gap: 1em;
	flex-wrap: wrap;
	margin-bottom: .5em;
}

.mtp-sol-status {
	color: var(--mtp-muted);
	font-size: .88rem;
}

.mtp-sol.is-right .mtp-sol-status {
	color: var(--mtp-ok);
}

.mtp-sol.is-wrong .mtp-sol-status {
	color: var(--mtp-bad);
}

.mtp-sol-options {
	list-style: none;
	padding: 0;
	margin: 0 0 .6em;
	display: grid;
	gap: .4em;
}

.mtp-sol-opt {
	display: flex;
	align-items: flex-start;
	gap: .7em;
	padding: .5em .8em;
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
}

.mtp-sol-opt.is-correct {
	border-color: var(--mtp-ok);
	background: var(--mtp-ok-bg);
}

.mtp-sol-opt.is-wrong {
	border-color: var(--mtp-bad);
	background: var(--mtp-bad-bg);
}

.mtp-sol-opt .mtp-opt-body {
	flex: 1;
}

.mtp-sol-tag {
	font-size: .78rem;
	font-weight: 700;
	white-space: nowrap;
}

.mtp-sol-opt.is-correct .mtp-sol-tag {
	color: var(--mtp-ok);
}

.mtp-sol-opt.is-wrong .mtp-sol-tag {
	color: var(--mtp-bad);
}

/* ---------- Toasts and spinner ---------- */

.mtp-toasts {
	position: fixed;
	left: 50%;
	bottom: 20px;
	transform: translateX(-50%);
	z-index: 100000;
	display: grid;
	gap: .5em;
	width: min(480px, calc(100vw - 32px));
	pointer-events: none;
	font-family: var(--mtp-font);
}

.mtp-toast {
	background: #1d2433;
	color: #fff;
	padding: .75em 1.1em;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
	font-size: .95rem;
	line-height: 1.45;
	transition: opacity .3s, transform .3s;
}

.mtp-toast.is-warn {
	background: #7a4b00;
}

.mtp-toast.is-error {
	background: var(--mtp-bad);
}

.mtp-toast.is-out {
	opacity: 0;
	transform: translateY(8px);
}

.mtp-spinner {
	display: inline-block;
	width: 22px;
	height: 22px;
	border: 3px solid var(--mtp-line, #dfe3ec);
	border-top-color: var(--mtp-accent, #2b4c9b);
	border-radius: 50%;
	animation: mtp-spin .8s linear infinite;
	vertical-align: middle;
}

@keyframes mtp-spin {
	to {
		transform: rotate(360deg);
	}
}

.mtp-math-live.is-display {
	display: block;
	text-align: center;
	overflow-x: auto;
}

/* ---------- Small screens ---------- */

@media (max-width: 640px) {
	.mtp-facts {
		grid-template-columns: repeat(2, 1fr);
	}

	.mtp-pq {
		padding: .95em .9em 1em;
		border-radius: 10px;
	}

	.mtp-score-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.mtp-test-row {
		flex-direction: column;
		align-items: stretch;
	}

	.mtp-test-row-status {
		justify-content: space-between;
	}

	.mtp-action-box {
		position: sticky;
		bottom: 0;
		z-index: 5;
	}

	.mtp-action-box .mtp-btn-lg {
		width: 100%;
	}

	.mtp-price-now {
		font-size: 1.7rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mtp *,
	.mtp-toast {
		transition: none !important;
		animation-duration: 1.5s !important;
	}
}

@media print {
	.mtp-pq-actions,
	.mtp-show-all-wrap,
	.mtp-lead,
	.mtp-action-box,
	.mtp-cta,
	.mtp-pages,
	.mtp-filter {
		display: none !important;
	}

	.mtp-pq-exp[hidden] {
		display: block !important;
	}
}

/* ---------- Interface language menu ---------- */

.mtp-lang-switch {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: var(--mtp-font, system-ui, sans-serif);
	font-size: .9rem;
	color: var(--mtp-ink-2, #4a5468);
}

.mtp-lang-switch label {
	display: inline-flex;
	align-items: center;
	color: inherit;
	margin: 0;
}

.mtp-lang-top {
	max-width: 860px;
	margin: 0 auto .8em;
	justify-content: flex-end;
}

.mtp-archive .mtp-lang-top {
	max-width: none;
}

.mtp-lang-inline {
	display: inline-flex;
}

.mtp-lang-switch select.mtp-lang-select {
	min-height: 36px;
	padding: 4px 28px 4px 10px;
	border: 1px solid var(--mtp-line, #dfe3ec);
	border-radius: 999px;
	background-color: #fff;
	color: var(--mtp-ink, #1d2433);
	font: inherit;
	width: auto;
	max-width: 100%;
	cursor: pointer;
}

/* ---------- Theme-proofing ----------
 * Many themes style every <button> (background, colour, borders, uppercase text,
 * hover-only colours). These rules keep the plugin's buttons readable everywhere. */

.mtp :is(.mtp-btn, .mtp-opt, .mtp-chip, .mtp-tab, .mtp-page-link),
.mtp-lead :is(.mtp-btn),
.mtp-lang-switch select {
	text-transform: none !important;
	letter-spacing: normal !important;
	text-shadow: none !important;
	background-image: none !important;
	font-family: inherit !important;
	text-decoration: none !important;
	opacity: 1;
	visibility: visible !important;
}

.mtp .mtp-btn,
.mtp-lead .mtp-btn {
	background-color: var(--mtp-accent) !important;
	border-color: var(--mtp-accent) !important;
	color: #fff !important;
	box-shadow: none !important;
	border-radius: 999px !important;
}

.mtp .mtp-btn-cta,
.mtp-lead .mtp-btn-cta {
	background-color: var(--mtp-cta) !important;
	border-color: var(--mtp-cta) !important;
	color: #fff !important;
}

.mtp .mtp-btn-ghost,
.mtp-lead .mtp-btn-ghost {
	background-color: transparent !important;
	border-color: var(--mtp-accent) !important;
	color: var(--mtp-accent) !important;
}

.mtp .mtp-btn-link,
.mtp-lead .mtp-btn-link {
	background-color: transparent !important;
	border-color: transparent !important;
	color: var(--mtp-muted, #6b7486) !important;
	text-decoration: underline !important;
}

.mtp .mtp-btn-outline-light {
	background-color: transparent !important;
	border-color: rgba(255, 255, 255, .7) !important;
	color: #fff !important;
}

.mtp .mtp-btn:hover,
.mtp .mtp-btn:focus,
.mtp-lead .mtp-btn:hover,
.mtp-lead .mtp-btn:focus {
	filter: brightness(1.08);
}

.mtp .mtp-btn[disabled],
.mtp-lead .mtp-btn[disabled] {
	opacity: .55 !important;
	filter: none;
}

.mtp .mtp-opt {
	display: flex !important;
	flex-direction: row !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
	text-align: left !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: .65em .85em !important;
	border-style: solid !important;
	border-width: 1.5px !important;
	border-radius: 10px !important;
	background-color: var(--mtp-bg, #fff) !important;
	border-color: var(--mtp-line, #dfe3ec) !important;
	color: var(--mtp-ink, #1d2433) !important;
	box-shadow: none !important;
	font-size: inherit !important;
	font-weight: 400 !important;
	white-space: normal !important;
	height: auto !important;
	line-height: inherit !important;
}

.mtp .mtp-opt-body {
	flex: 1 1 auto !important;
	min-width: 0;
	text-align: left !important;
}

.mtp .mtp-opt-key {
	margin: 0 !important;
}

[dir="rtl"] .mtp .mtp-opt,
[dir="rtl"] .mtp .mtp-opt-body {
	text-align: right !important;
}

.mtp .mtp-opt:hover,
.mtp .mtp-opt:focus {
	background-color: var(--mtp-soft, #f4f6fb) !important;
	color: var(--mtp-ink, #1d2433) !important;
}

.mtp .mtp-opt.is-selected {
	background-color: color-mix(in srgb, var(--mtp-accent) 7%, #fff) !important;
	border-color: var(--mtp-accent) !important;
}

.mtp .mtp-opt.is-correct,
.mtp .mtp-opt.is-correct:hover {
	background-color: var(--mtp-ok-bg, #e7f5ee) !important;
	border-color: var(--mtp-ok, #1f7a4d) !important;
}

.mtp .mtp-opt.is-wrong,
.mtp .mtp-opt.is-wrong:hover {
	background-color: var(--mtp-bad-bg, #fdecea) !important;
	border-color: var(--mtp-bad, #b3261e) !important;
}

.mtp .mtp-chip,
.mtp .mtp-tab {
	background-color: #fff !important;
	color: var(--mtp-ink-2, #4a5468) !important;
	box-shadow: none !important;
}

.mtp .mtp-tab {
	background-color: transparent !important;
	border-color: transparent !important;
}

.mtp .mtp-chip.is-active {
	background-color: var(--mtp-accent) !important;
	border-color: var(--mtp-accent) !important;
	color: #fff !important;
}

.mtp .mtp-tab.is-active {
	background-color: #fff !important;
	color: var(--mtp-accent) !important;
}

/* ---------- Test inside a page, name + mobile forms, leaderboard ---------- */

.mtp-inline-test {
	margin: 1.5em auto;
}

.mtp-it-head {
	margin-bottom: .6em;
}

.mtp-it-title {
	font-family: inherit;
	font-size: 1.3rem;
	line-height: 1.35;
	margin: 0 0 .2em;
}

.mtp-it-meta {
	margin: 0;
	color: var(--mtp-muted);
	font-size: .92rem;
}

.mtp-it-intro {
	padding: 1.1em 1.2em;
	border: 1px solid var(--mtp-line);
	border-radius: 16px;
	background: var(--mtp-bg);
	display: grid;
	gap: .8em;
}

.mtp-action-box .mtp-it-intro {
	border: 0;
	padding: 0;
}

.mtp-action-box:has(.mtp-inline-test) {
	display: block;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: none;
}

.mtp-it-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .6em;
	margin: 1em 0 0;
}

.mtp-it-loading {
	padding: 2em;
	text-align: center;
	color: var(--mtp-ink-2);
}

.mtp-it-result-inner {
	padding: 0;
	max-width: none;
}

.mtp-test-lead {
	display: grid;
	gap: .7em;
	width: 100%;
	max-width: 520px;
}

.mtp-result-gate {
	background: #fff;
	border: 1px solid var(--mtp-line);
	border-radius: 18px;
	padding: 1.3em;
	max-width: 560px;
	margin: 1em auto;
	box-shadow: 0 8px 30px rgba(20, 30, 60, .08);
}

.mtp-result-gate .mtp-test-lead {
	max-width: none;
}

.mtp-start-controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8em 1.2em;
}

.mtp-leaderboard tr.is-me td {
	background: color-mix(in srgb, var(--mtp-accent) 8%, #fff);
	font-weight: 600;
}

/* ---------- Test catalogue ---------- */

.mtp-tests-archive {
	max-width: 1100px;
}

.mtp-archive-filters {
	display: flex;
	flex-wrap: wrap;
	gap: .6em;
	align-items: center;
	margin: 0 0 .6em;
}

.mtp-archive-filters input[type=search],
.mtp-archive-filters select {
	flex: 1 1 200px;
	min-height: 44px;
	padding: .4em .9em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 999px;
	background: #fff;
	font: inherit;
	color: var(--mtp-ink);
}

.mtp-archive-filters select {
	flex: 0 1 220px;
}

.mtp-archive-count {
	color: var(--mtp-muted);
	font-size: .9rem;
	margin: 0 0 .8em;
}

.mtp-test-card {
	grid-template-rows: auto auto auto 1fr auto;
}

.mtp-test-card .mtp-badges {
	margin: 0;
}

.mtp-test-card .mtp-card-text a {
	color: var(--mtp-accent);
	text-decoration: none;
	font-size: .88rem;
}

.mtp-card-cta {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	align-items: center;
	margin-top: .5em;
	align-self: end;
}

.mtp-badge-done {
	background: color-mix(in srgb, var(--mtp-accent) 10%, #fff);
	color: var(--mtp-accent);
}

.mtp-test-card.is-locked .mtp-card-title {
	color: var(--mtp-ink-2) !important;
}

.mtp-it-result .mtp-result-title {
	display: none;
}

/* Options with text + picture: keep "हिंदी / English" on one line, picture below. */
.mtp-opt-body p {
	display: inline;
	margin: 0;
}

.mtp-opt-body p:has(> img:only-child) {
	display: block;
	margin-top: 6px;
}

/* Source (PYQ) label, e.g. "UKPSC 2021". */
.mtp .mtp-pyq {
	display: inline-block;
	font-size: .74rem;
	font-weight: 600;
	line-height: 1.6;
	padding: .05em .65em;
	border: 1px solid #efcf95;
	border-radius: 999px;
	background: #fff6e5;
	color: #7a4a00 !important;
	text-decoration: none !important;
	white-space: nowrap;
}

.mtp a.mtp-pyq:hover,
.mtp a.mtp-pyq:focus-visible {
	background: #ffecc7;
	text-decoration: underline !important;
}

.mtp-sol-head-l {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	flex-wrap: wrap;
}

/* Download PDF */
.mtp .mtp-pdf-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: .45em;
}

.mtp .mtp-pdf-btn.is-busy {
	opacity: .7 !important;
	cursor: progress;
}

.mtp .mtp-pdf-link {
	display: inline !important;
	font-weight: 600;
}

.mtp-show-all-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: .7em;
}

.mtp-show-all-wrap[hidden],
.mtp-show-all-wrap [hidden] {
	display: none !important;
}

.mtp-show-all-msg {
	flex-basis: 100%;
	text-align: center;
}

.mtp-score-actions {
	margin-top: .9em;
	display: flex;
	flex-wrap: wrap;
	gap: .6em;
}

.mtp-past-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .6em;
}

.mtp-past-head .mtp-h3 {
	margin: 0;
}

/* ---------- Current affairs ---------- */

.mtp-ca-topics {
	display: flex;
	flex-wrap: wrap;
	gap: .45em;
	margin: 0 0 1em;
}

.mtp .mtp-ca-topics .mtp-chip {
	display: inline-flex !important;
	align-items: center;
	gap: .35em;
	padding: .3em .8em;
	border: 1px solid var(--mtp-line);
	border-radius: 999px;
	font-size: .88rem;
	color: var(--mtp-ink-2) !important;
	text-decoration: none !important;
}

.mtp .mtp-ca-topics .mtp-chip span {
	font-size: .78em;
	color: var(--mtp-muted);
}

.mtp .mtp-ca-topics .mtp-chip.is-active {
	background: var(--mtp-accent) !important;
	border-color: var(--mtp-accent) !important;
	color: #fff !important;
}

.mtp .mtp-ca-topics .mtp-chip.is-active span {
	color: rgba(255, 255, 255, .85);
}

.mtp-ca-day {
	margin: 1.4em 0 .6em;
	padding: .35em .8em;
	border-left: 4px solid var(--mtp-accent);
	background: var(--mtp-soft);
	border-radius: 0 8px 8px 0;
	font-size: 1rem;
	font-family: inherit;
}

.mtp-ca-hub > section {
	margin: 0 0 2em;
}

.mtp-ca-date {
	font-size: .8rem;
	font-weight: 700;
	color: var(--mtp-accent);
	text-transform: uppercase;
	letter-spacing: .03em;
}

.mtp-ca-cal-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5em;
	margin-bottom: .6em;
}

.mtp-ca-cal-head .mtp-h3 {
	margin: 0;
}

.mtp-ca-cal-nav {
	display: flex;
	align-items: center;
	gap: .8em;
}

.mtp .mtp-ca-cal-nav a {
	display: inline-grid;
	place-items: center;
	width: 2em;
	height: 2em;
	border: 1px solid var(--mtp-line);
	border-radius: 50%;
	text-decoration: none !important;
	color: var(--mtp-ink) !important;
}

.mtp-ca-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 4px;
	max-width: 520px;
}

.mtp-ca-wd {
	font-size: .75rem;
	font-weight: 600;
	color: var(--mtp-muted);
	text-align: center;
	padding: .2em 0;
}

.mtp-ca-cell {
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	border-radius: 8px;
	font-size: .9rem;
	color: var(--mtp-muted);
	background: var(--mtp-soft);
}

.mtp-ca-cell.is-empty {
	background: transparent;
}

.mtp .mtp-ca-cell.has-set {
	background: var(--mtp-accent);
	color: #fff !important;
	font-weight: 700;
	text-decoration: none !important;
}

.mtp .mtp-ca-cell.has-set:hover {
	filter: brightness(1.1);
}

/* ---------- Current affairs: breadcrumb, previous / next, jump links ---------- */

.mtp-ca-nav {
	display: grid;
	gap: .75em;
	margin: 0 0 1.3em;
}

.mtp-ca-nav.is-bottom {
	margin: 1.8em 0 1.2em;
}

.mtp .mtp-ca-trail {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: .15em .45em;
	font-size: .88rem;
	color: var(--mtp-muted);
}

.mtp .mtp-ca-trail li {
	margin: 0;
	padding: 0;
}

.mtp .mtp-ca-trail li + li::before {
	content: "›";
	margin-inline-end: .45em;
	color: var(--mtp-muted);
}

.mtp .mtp-ca-trail a {
	color: var(--mtp-accent) !important;
	text-decoration: none !important;
	font-weight: 600;
}

.mtp .mtp-ca-trail a:hover {
	text-decoration: underline !important;
}

.mtp .mtp-ca-trail [aria-current] {
	color: var(--mtp-ink-2);
}

.mtp-ca-pn {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .6em;
}

.mtp .mtp-ca-pn-link {
	display: flex;
	align-items: center;
	gap: .55em;
	min-height: 58px;
	padding: .55em .85em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 12px;
	background: var(--mtp-bg);
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
	transition: border-color .15s, background-color .15s;
}

.mtp .mtp-ca-pn-link.is-next {
	flex-direction: row-reverse;
	text-align: right;
}

.mtp a.mtp-ca-pn-link:hover,
.mtp a.mtp-ca-pn-link:focus-visible {
	border-color: var(--mtp-accent);
	background: color-mix(in srgb, var(--mtp-accent) 5%, #fff);
}

.mtp .mtp-ca-pn-link.is-off {
	border-color: transparent;
	background: none;
	min-height: 0;
	padding: 0;
}

.mtp-ca-pn-arrow {
	flex: none;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--mtp-accent) 10%, #fff);
	color: var(--mtp-accent);
	font-size: 1.35rem;
	line-height: 1;
	font-weight: 700;
}

.mtp-ca-pn-text {
	display: grid;
	min-width: 0;
	line-height: 1.3;
}

.mtp-ca-pn-text small {
	font-size: .76rem;
	font-weight: 600;
	color: var(--mtp-muted);
}

.mtp-ca-pn-text strong {
	font-size: .96rem;
	color: var(--mtp-ink);
}

.mtp-ca-jump {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35em;
}

.mtp-ca-jump-title {
	font-size: .84rem;
	font-weight: 700;
	color: var(--mtp-ink-2);
	margin-inline-end: .35em;
}

.mtp .mtp-ca-jump-link {
	display: inline-grid;
	place-items: center;
	min-width: 34px;
	height: 34px;
	padding: 0 .6em;
	border-radius: 9px;
	background: var(--mtp-soft);
	color: var(--mtp-ink-2) !important;
	text-decoration: none !important;
	font-size: .86rem;
	font-weight: 600;
}

.mtp a.mtp-ca-jump-link:hover {
	background: color-mix(in srgb, var(--mtp-accent) 12%, #fff);
	color: var(--mtp-accent) !important;
}

.mtp .mtp-ca-jump-link.is-current {
	background: var(--mtp-accent);
	color: #fff !important;
}

.mtp .mtp-ca-day a {
	color: inherit !important;
	text-decoration: none !important;
}

.mtp .mtp-ca-day a:hover {
	color: var(--mtp-accent) !important;
}

.mtp .mtp-ca-day a::after {
	content: " ›";
	color: var(--mtp-accent);
}

@media (max-width: 480px) {
	.mtp .mtp-ca-pn-link {
		padding: .5em .6em;
		gap: .45em;
	}

	.mtp-ca-pn-arrow {
		width: 26px;
		height: 26px;
		font-size: 1.15rem;
	}

	.mtp-ca-pn-text strong {
		font-size: .88rem;
	}
}

/* ---------- Subject / exam / topic / PYQ pages ---------- */

body.mtp-archive-page .site-main.mtp-archive-main--full,
body.mtp-archive-page main.mtp-archive-main--full {
	max-width: none !important;
	width: 100% !important;
	padding-inline: 0 !important;
	margin-inline: 0 !important;
}

/* Inside the theme's own archive page: the theme sets the width and the heading. */
.mtp.mtp-archive.is-themed {
	max-width: none;
	padding: 0 0 40px;
}

.mtp-arch-intro {
	margin: 0 0 22px;
}

.mtp-arch-intro .mtp-arch-stats {
	margin-top: .4em;
}

.mtp-archive.is-themed .mtp-arch-stats li {
	background: var(--mtp-soft);
	border-color: transparent;
}

.mtp.mtp-archive {
	max-width: 1180px;
	padding: 24px 16px 48px;
}

.mtp-arch-hero {
	position: relative;
	overflow: hidden;
	margin: 0 0 22px;
	padding: 22px 26px 22px;
	border: 1px solid color-mix(in srgb, var(--mtp-accent) 16%, var(--mtp-line));
	border-radius: 18px;
	background:
		radial-gradient(circle at 100% 0, color-mix(in srgb, var(--mtp-cta) 12%, transparent) 0, transparent 38%),
		linear-gradient(135deg, color-mix(in srgb, var(--mtp-accent) 10%, #fff) 0%, #fff 70%);
}

.mtp .mtp-arch-crumbs ol {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: .15em .45em;
	margin: 0 0 12px;
	padding: 0;
	font-size: .85rem;
	color: var(--mtp-muted);
}

.mtp .mtp-arch-crumbs li {
	margin: 0;
	padding: 0;
}

.mtp .mtp-arch-crumbs li + li::before {
	content: "›";
	margin-inline-end: .45em;
}

.mtp .mtp-arch-crumbs a {
	color: var(--mtp-ink-2) !important;
	text-decoration: none !important;
}

.mtp .mtp-arch-crumbs a:hover {
	color: var(--mtp-accent) !important;
}

.mtp-arch-eyebrow {
	display: inline-block;
	padding: .2em .8em;
	border: 1px solid color-mix(in srgb, var(--mtp-accent) 28%, #fff);
	border-radius: 999px;
	background: #fff;
	color: var(--mtp-accent);
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.mtp .mtp-arch-title {
	margin: .35em 0 .25em;
	padding: 0;
	font-family: inherit;
	font-size: clamp(1.5rem, 1.15rem + 1.5vw, 2.25rem);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -.01em;
	color: var(--mtp-ink);
}

.mtp-arch-page {
	margin-inline-start: .35em;
	font-size: .5em;
	font-weight: 600;
	color: var(--mtp-muted);
	vertical-align: middle;
}

.mtp-arch-desc {
	max-width: 72ch;
	color: var(--mtp-ink-2);
}

.mtp-arch-desc p {
	margin: 0 0 .5em;
}

.mtp .mtp-arch-stats {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin: .8em 0 0;
	padding: 0;
}

.mtp .mtp-arch-stats li {
	display: inline-flex;
	align-items: baseline;
	gap: .35em;
	margin: 0;
	padding: .35em .9em;
	border: 1px solid var(--mtp-line);
	border-radius: 10px;
	background: #fff;
	color: var(--mtp-ink-2);
	font-size: .9rem;
}

.mtp-arch-stats strong {
	font-size: 1.12rem;
	color: var(--mtp-ink);
}

.mtp-arch-sub {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .45em;
	margin: 0 0 24px;
}

.mtp-arch-sub-title {
	margin-inline-end: .2em;
	font-size: .9rem;
	font-weight: 700;
	color: var(--mtp-ink-2);
}

.mtp .mtp-arch-chip {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: .25em .95em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--mtp-ink-2) !important;
	font-size: .9rem;
	font-weight: 600;
	text-decoration: none !important;
}

.mtp .mtp-arch-chip:hover {
	border-color: var(--mtp-accent);
	color: var(--mtp-accent) !important;
}

.mtp-arch-section {
	margin: 0 0 30px;
}

.mtp-arch-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: .5em;
	margin: 0 0 14px;
	padding-bottom: 9px;
	border-bottom: 2px solid var(--mtp-soft);
}

.mtp .mtp-arch-h2 {
	margin: 0;
	padding: 0;
	font-family: inherit;
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.3;
	color: var(--mtp-ink);
}

.mtp-arch-count {
	min-width: 2em;
	padding: .05em .6em;
	border-radius: 999px;
	background: var(--mtp-soft);
	color: var(--mtp-ink-2);
	font-size: .85rem;
	font-weight: 700;
	text-align: center;
}

.mtp-arch-meta {
	color: var(--mtp-muted);
	font-size: .88rem;
}

.mtp-arch-hint {
	margin: -4px 0 14px;
	color: var(--mtp-muted);
	font-size: .88rem;
}

.mtp .mtp-arch-cards {
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 14px;
}

.mtp .mtp-cards > li {
	margin: 0;
}

.mtp-arch-card {
	padding: 16px 16px 14px;
	box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
	transition: border-color .15s, box-shadow .15s, transform .15s;
}

.mtp-arch-card:hover {
	border-color: color-mix(in srgb, var(--mtp-accent) 35%, var(--mtp-line));
	box-shadow: 0 6px 18px rgba(16, 24, 40, .08);
	transform: translateY(-1px);
}

.mtp-arch-card .mtp-badges {
	margin: 0;
}

.mtp-arch-card .mtp-card-title {
	line-height: 1.35;
}

.mtp-arch-main {
	min-width: 0;
}

.mtp-arch-aside {
	display: grid;
	gap: 16px;
	align-content: start;
	margin-top: 28px;
}

.mtp-arch-box {
	padding: 14px 16px;
	border: 1px solid var(--mtp-line);
	border-radius: 14px;
	background: #fff;
}

.mtp .mtp-arch-box-title {
	margin: 0 0 6px;
	padding: 0;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 800;
	color: var(--mtp-ink);
}

.mtp .mtp-arch-links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mtp .mtp-arch-links li {
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--mtp-soft);
}

.mtp .mtp-arch-links li:first-child {
	border-top: 0;
}

.mtp .mtp-arch-links a {
	display: flex;
	justify-content: space-between;
	gap: .5em;
	padding: .55em 0;
	color: var(--mtp-ink-2) !important;
	font-size: .93rem;
	text-decoration: none !important;
}

.mtp .mtp-arch-links a::after {
	content: "›";
	color: var(--mtp-muted);
}

.mtp .mtp-arch-links a:hover {
	color: var(--mtp-accent) !important;
}

.mtp .mtp-arch-box-cta {
	width: 100%;
	margin-top: 10px;
}

.mtp a.mtp-pq-n {
	color: var(--mtp-accent) !important;
	text-decoration: none !important;
}

.mtp a.mtp-pq-n:hover {
	text-decoration: underline !important;
}

@media (min-width: 960px) {
	.mtp-archive:not(.is-themed) .mtp-arch-body.has-aside {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 300px;
		gap: 28px;
		align-items: start;
	}

	.mtp-archive:not(.is-themed) .mtp-arch-aside {
		position: sticky;
		top: 24px;
		margin-top: 0;
	}
}

/* The theme's content area is narrower below 1200px (Hello: 800px), so the side panel waits. */
@media (min-width: 1200px) {
	.mtp-archive.is-themed .mtp-arch-body.has-aside {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 280px;
		gap: 26px;
		align-items: start;
	}

	.mtp-archive.is-themed .mtp-arch-aside {
		position: sticky;
		top: 24px;
		margin-top: 0;
	}
}

@media (max-width: 640px) {
	.mtp.mtp-archive:not(.is-themed) {
		padding: 16px 16px 40px;
	}

	.mtp-arch-hero {
		padding: 18px 16px;
		border-radius: 14px;
	}

	.mtp .mtp-arch-stats li {
		padding: .3em .7em;
		font-size: .85rem;
	}
}

/* Yearly current affairs: month-wise PDFs under "Download PDF". */
.mtp-pdf-months {
	flex-basis: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: .4em;
	margin: .3em 0 0;
	font-size: .9rem;
	color: var(--mtp-ink-2);
}

.mtp .mtp-pdf-months .mtp-pdf-link {
	display: inline-flex !important;
	align-items: center;
	min-height: 32px;
	padding: .15em .8em;
	border: 1px solid var(--mtp-line);
	border-radius: 999px;
	background: #fff;
	color: var(--mtp-accent) !important;
	text-decoration: none !important;
	font-size: .86rem;
}

.mtp .mtp-pdf-months .mtp-pdf-link:hover {
	border-color: var(--mtp-accent);
}

/* ---------- Hindi / English / Both ---------- */

.mtp .mtp-langsw {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2px;
	margin: 0 0 1em;
	padding: 3px;
	border: 1.5px solid var(--mtp-line);
	border-radius: 999px;
	background: var(--mtp-bg);
	max-width: 100%;
}

.mtp .mtp-langsw-lbl {
	padding: 0 .55em 0 .6em;
	font-size: .82rem;
	color: var(--mtp-muted);
}

.mtp .mtp-langsw button {
	appearance: none;
	margin: 0;
	padding: .34em .95em;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--mtp-ink);
	font: inherit;
	font-size: .9rem;
	font-weight: 600;
	line-height: 1.25;
	cursor: pointer;
	box-shadow: none;
	text-transform: none;
	letter-spacing: 0;
	min-height: 32px;
}

.mtp .mtp-langsw button:hover {
	background: var(--mtp-soft);
	color: var(--mtp-ink);
}

.mtp .mtp-langsw button[aria-pressed="true"] {
	background: var(--mtp-accent);
	color: #fff;
}

.mtp .mtp-langsw button:focus-visible {
	outline: 2px solid var(--mtp-accent);
	outline-offset: 2px;
}

[data-qlang="hi"] .mtp-l-en,
[data-qlang="hi"] .mtp-l-sep,
[data-qlang="en"] .mtp-l-hi,
[data-qlang="en"] .mtp-l-sep {
	display: none !important;
}

[data-qlang="en"] .mtp-l-en.mtp-alt-lang,
[data-qlang="en"] .mtp-pq-text > .mtp-l-en {
	color: inherit;
	font-size: inherit;
	margin-top: 0;
}

[data-qlang="hi"] [data-nl="en"],
[data-qlang="en"] [data-nl="hi"] {
	display: none;
}

.mtp .is-fallback [data-nl] {
	display: block;
}

.mtp .is-fallback li[data-nl] {
	display: list-item;
}

/* ---------- Current affairs notes ---------- */

.mtp .mtp-anchor {
	scroll-margin-top: 90px;
}

.mtp .mtp-notes-toc {
	margin: 0 0 1.2em;
	padding: .9em 1.1em;
	border: 1.5px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	background: var(--mtp-soft);
}

.mtp .mtp-notes-toc-title {
	display: block;
	margin: 0 0 .4em;
	font-weight: 700;
	font-size: .95rem;
}

.mtp .mtp-notes-toc ol {
	margin: 0;
	padding-inline-start: 1.4em;
	columns: 2 18em;
	column-gap: 2em;
}

.mtp .mtp-notes-toc li {
	margin: 0 0 .3em;
	break-inside: avoid;
	font-size: .93rem;
	line-height: 1.4;
}

.mtp .mtp-notes-toc li.is-mcq {
	font-weight: 700;
}

.mtp .mtp-notes-toc a {
	color: var(--mtp-accent) !important;
	text-decoration: none !important;
}

.mtp .mtp-notes-toc a:hover {
	text-decoration: underline !important;
}

.mtp .mtp-notes {
	margin: 2em 0 1em;
	scroll-margin-top: 90px;
	counter-reset: mtp-note;
}

.mtp .mtp-note {
	counter-increment: mtp-note;
}

.mtp .mtp-note-n::before {
	content: counter(mtp-note);
}

.mtp .mtp-notes-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em .9em;
	margin: 0 0 1em;
	padding: 0 0 .6em;
	border-bottom: 2px solid var(--mtp-accent);
}

.mtp .mtp-notes-title {
	margin: 0;
	font-size: 1.35rem;
	line-height: 1.3;
}

.mtp .mtp-notes-count {
	color: var(--mtp-muted);
	font-size: .9rem;
}

.mtp .mtp-notes-head .mtp-pdf-btn {
	margin-inline-start: auto;
}

.mtp .mtp-notes-fallback {
	margin: 0 0 1em;
	padding: .6em .9em;
	border-radius: 10px;
	background: var(--mtp-warn-bg);
	color: var(--mtp-warn);
	font-size: .9rem;
}

.mtp .mtp-note {
	margin: 0 0 1.4em;
	padding: 1.1em 1.25em 1em;
	border: 1.5px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	background: var(--mtp-bg);
	scroll-margin-top: 90px;
}

.mtp .mtp-note-head {
	display: flex;
	align-items: flex-start;
	gap: .75em;
	margin: 0 0 .8em;
}

.mtp .mtp-note-n {
	flex: none;
	display: grid;
	place-items: center;
	width: 2em;
	height: 2em;
	border-radius: 50%;
	background: var(--mtp-accent);
	color: #fff;
	font-weight: 700;
	font-size: .9rem;
	margin-top: .1em;
}

.mtp .mtp-note-headtext {
	min-width: 0;
}

.mtp .mtp-note-title {
	margin: 0 0 .35em;
	font-size: 1.22rem;
	line-height: 1.35;
}

.mtp .mtp-note-title a {
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp .mtp-note-title a:hover {
	color: var(--mtp-accent) !important;
}

.mtp .mtp-note-chips,
.mtp .mtp-note-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35em;
}

.mtp .mtp-note-chip {
	display: inline-block;
	padding: .14em .65em;
	border-radius: 999px;
	background: color-mix(in srgb, var(--mtp-accent) 10%, #fff);
	color: var(--mtp-accent) !important;
	font-size: .8rem;
	font-weight: 600;
	line-height: 1.5;
	text-decoration: none !important;
}

.mtp .mtp-note-chip.is-subject {
	background: color-mix(in srgb, var(--mtp-cta) 12%, #fff);
	color: #8a3a12 !important;
}

.mtp a.mtp-note-chip:hover {
	text-decoration: underline !important;
}

.mtp .mtp-note-body {
	font-size: 1.02rem;
	line-height: 1.7;
	color: var(--mtp-ink);
	overflow-wrap: anywhere;
}

.mtp .mtp-note-body > :first-child {
	margin-top: 0;
}

.mtp .mtp-note-body h2,
.mtp .mtp-note-body h3,
.mtp .mtp-note-body h4,
.mtp .mtp-note-body h5 {
	margin: 1.2em 0 .45em;
	line-height: 1.35;
	color: var(--mtp-ink);
}

.mtp .mtp-note .mtp-note-body h3 {
	font-size: 1.08rem;
	color: var(--mtp-accent);
}

.mtp .mtp-note .mtp-note-body h4 {
	font-size: 1rem;
}

.mtp .mtp-note-body p,
.mtp .mtp-note-body ul,
.mtp .mtp-note-body ol,
.mtp .mtp-note-body blockquote {
	margin: 0 0 .8em;
}

.mtp .mtp-note-body ul,
.mtp .mtp-note-body ol {
	padding-inline-start: 1.5em;
}

.mtp .mtp-note-body li {
	margin: 0 0 .3em;
}

.mtp .mtp-note-body blockquote {
	padding: .6em 1em;
	border-inline-start: 4px solid var(--mtp-accent);
	background: var(--mtp-soft);
	border-radius: 0 10px 10px 0;
}

.mtp .mtp-note-body img {
	max-width: 100%;
	height: auto;
}

.mtp .mtp-note-img {
	text-align: center;
}

.mtp .mtp-note-caption {
	text-align: center;
	font-size: .86rem;
	color: var(--mtp-muted);
	margin-top: -.4em;
}

.mtp .mtp-note-table {
	overflow-x: auto;
	margin: 0 0 1em;
	-webkit-overflow-scrolling: touch;
}

.mtp .mtp-note-table table {
	width: 100%;
	min-width: 420px;
	border-collapse: collapse;
	font-size: .94rem;
	line-height: 1.5;
	margin: 0;
}

.mtp .mtp-note-table th,
.mtp .mtp-note-table td {
	padding: .5em .7em;
	border: 1px solid var(--mtp-line);
	vertical-align: top;
	text-align: start;
}

.mtp .mtp-note-table th {
	background: color-mix(in srgb, var(--mtp-accent) 9%, #fff);
	font-weight: 700;
}

.mtp .mtp-note-table p {
	margin: 0 0 .35em;
}

.mtp .mtp-note-foot {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .4em 1.1em;
	margin-top: .9em;
	padding-top: .75em;
	border-top: 1px dashed var(--mtp-line);
	font-size: .9rem;
}

.mtp .mtp-note-foot a {
	color: var(--mtp-accent) !important;
	font-weight: 600;
	text-decoration: none !important;
}

.mtp .mtp-note-foot a:hover {
	text-decoration: underline !important;
}

.mtp .mtp-note-foot .mtp-note-top {
	margin-inline-start: auto;
	color: var(--mtp-muted) !important;
	font-weight: 500;
}

.mtp .mtp-notes-list {
	margin: 0 0 1em;
	padding-inline-start: 1.5em;
}

.mtp .mtp-notes-list li {
	margin: 0 0 .45em;
	line-height: 1.5;
}

.mtp .mtp-notes-list li .mtp-note-chip {
	margin-inline-start: .3em;
	font-size: .74rem;
}

.mtp .mtp-notes-list a {
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
	font-weight: 600;
}

.mtp .mtp-notes-list a:hover {
	color: var(--mtp-accent) !important;
	text-decoration: underline !important;
}

.mtp .mtp-notes-list li.is-current {
	color: var(--mtp-muted);
	font-weight: 600;
}

.mtp .mtp-notes-day {
	margin: 0 0 1.2em;
}

.mtp .mtp-notes-day .mtp-ca-day small {
	font-weight: 500;
	color: var(--mtp-muted);
	font-size: .8em;
	margin-inline-start: .4em;
}

.mtp .mtp-notes-months {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: .5em;
}

.mtp .mtp-notes-months li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35em .9em;
	margin: 0;
	padding: .65em .9em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 10px;
}

.mtp .mtp-notes-months li > a {
	font-weight: 700;
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp .mtp-notes-months .mtp-pdf-btn {
	margin-inline-start: auto;
}

/* Article page */

.mtp-note-page {
	margin: 0 0 1.5em;
}

.mtp .mtp-note-crumbs {
	margin-bottom: .9em;
}

.mtp-note-page .mtp-note-meta {
	margin: 0 0 1em;
}

.mtp .mtp-note-date {
	font-weight: 600;
	color: var(--mtp-ink-2);
	margin-inline-end: .4em;
	font-size: .92rem;
}

.mtp .mtp-note-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	margin: 0 0 1.3em;
}

.mtp-note-page .mtp-note-body h2 {
	font-size: 1.25rem;
	color: var(--mtp-accent);
}

.mtp-note-page .mtp-note-body h3 {
	font-size: 1.1rem;
}

.mtp .mtp-note-pn {
	margin: 1.8em 0 1.2em;
}

.mtp .mtp-note-more {
	margin: 1.2em 0 0;
	padding: 1em 1.2em;
	border-radius: var(--mtp-radius);
	background: var(--mtp-soft);
}

.mtp .mtp-note-more .mtp-h3 {
	margin-top: 0;
}

/* Subject / topic pages: current affairs | MCQs */

.mtp .mtp-arch-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: .4em;
	margin: 0 0 1.2em;
	padding: 0 0 .1em;
	border-bottom: 1.5px solid var(--mtp-line);
}

.mtp .mtp-arch-tab {
	display: inline-flex;
	align-items: center;
	gap: .45em;
	margin-bottom: -1.5px;
	padding: .55em 1em;
	border: 1.5px solid transparent;
	border-radius: 10px 10px 0 0;
	color: var(--mtp-ink-2) !important;
	font-weight: 600;
	text-decoration: none !important;
}

.mtp .mtp-arch-tab span {
	padding: .05em .55em;
	border-radius: 999px;
	background: var(--mtp-soft);
	font-size: .8rem;
	color: var(--mtp-muted);
}

.mtp .mtp-arch-tab.is-current {
	border-color: var(--mtp-line);
	border-bottom-color: var(--mtp-bg);
	background: var(--mtp-bg);
	color: var(--mtp-accent) !important;
}

.mtp .mtp-arch-tab:hover {
	color: var(--mtp-accent) !important;
}

.mtp .mtp-arch-chip-n {
	opacity: .65;
	font-size: .85em;
}

.mtp .mtp-arch-notes .mtp-ca-day {
	margin: 1.3em 0 .6em;
}

.mtp .mtp-arch-notes .mtp-ca-day:first-child {
	margin-top: 0;
}

.mtp .mtp-arch-note {
	margin: 0 0 .7em;
	padding: .85em 1em;
	border: 1.5px solid var(--mtp-line);
	border-radius: 12px;
	background: var(--mtp-bg);
}

.mtp .mtp-arch-note-title {
	margin: 0 0 .35em;
	font-size: 1.06rem;
	line-height: 1.4;
}

.mtp .mtp-arch-note-title a {
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
}

.mtp .mtp-arch-note-title a:hover {
	color: var(--mtp-accent) !important;
}

.mtp .mtp-arch-note-ex {
	margin: .45em 0 0;
	color: var(--mtp-ink-2);
	font-size: .93rem;
	line-height: 1.55;
}

@media (max-width: 600px) {
	.mtp .mtp-note {
		padding: .9em .85em .8em;
	}

	.mtp .mtp-note-n {
		width: 1.75em;
		height: 1.75em;
	}

	.mtp .mtp-notes-toc ol {
		columns: 1;
	}

	.mtp .mtp-langsw-lbl {
		display: none;
	}

	.mtp .mtp-notes-head .mtp-pdf-btn {
		margin-inline-start: 0;
	}
}

/* ---------- Mobile code (OTP) ---------- */

.mtp .mtp-otp {
	display: grid;
	gap: .7em;
}

.mtp .mtp-otp-msg {
	margin: 0;
	font-weight: 600;
}

.mtp .mtp-otp-test {
	margin: 0;
	padding: .5em .8em;
	border-radius: 10px;
	background: var(--mtp-warn-bg);
	color: var(--mtp-warn);
	font-size: .9rem;
}

.mtp .mtp-otp-code {
	font-size: 1.5rem !important;
	letter-spacing: .35em;
	text-align: center;
	font-variant-numeric: tabular-nums;
	max-width: 14em;
}

.mtp .mtp-otp-links {
	display: flex;
	flex-wrap: wrap;
	gap: .4em 1.2em;
	margin: 0;
	font-size: .9rem;
}

.mtp .mtp-otp-links button {
	appearance: none;
	border: 0;
	background: none;
	padding: 0;
	color: var(--mtp-accent);
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
	box-shadow: none;
	min-height: 0;
}

.mtp .mtp-otp-links button:disabled {
	color: var(--mtp-muted);
	text-decoration: none;
	cursor: default;
}

.mtp .mtp-lead-login {
	margin: .3em 0 0;
}

.mtp .mtp-lead-exists {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .6em;
}

/* ---------- Student dashboard: password, progress ---------- */

.mtp .mtp-setpass {
	margin: 0 0 1.4em;
	padding: 1em 1.1em;
	border: 1.5px solid color-mix(in srgb, var(--mtp-accent) 35%, #fff);
	border-radius: var(--mtp-radius);
	background: color-mix(in srgb, var(--mtp-accent) 5%, #fff);
}

.mtp .mtp-setpass-text {
	margin: 0 0 .6em;
}

.mtp .mtp-setpass-row {
	display: flex;
	flex-wrap: wrap;
	gap: .5em;
	align-items: stretch;
}

.mtp .mtp-setpass-row .mtp-field {
	flex: 1 1 220px;
	margin: 0;
}

.mtp .mtp-progress {
	margin: 0 0 1.6em;
}

.mtp .mtp-progress-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
	gap: .6em;
	margin: 0 0 1em;
}

.mtp .mtp-progress-cards > div {
	padding: .65em .85em;
	border-radius: 12px;
	background: var(--mtp-soft);
}

.mtp .mtp-progress-cards dt {
	color: var(--mtp-muted);
	font-size: .82rem;
}

.mtp .mtp-progress-cards dd {
	margin: 0;
	font-size: 1.3rem;
	font-weight: 700;
}

.mtp .mtp-progress-trend {
	margin: 0 0 1em;
	padding: .8em 1em;
	border: 1.5px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
}

.mtp .mtp-progress-topics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: .8em;
}

.mtp .mtp-progress-topic {
	padding: .8em 1em;
	border-radius: var(--mtp-radius);
	border: 1.5px solid var(--mtp-line);
}

.mtp .mtp-progress-topic.is-weak {
	border-color: color-mix(in srgb, var(--mtp-bad) 35%, #fff);
	background: var(--mtp-bad-bg);
}

.mtp .mtp-progress-topic.is-strong {
	border-color: color-mix(in srgb, var(--mtp-ok) 35%, #fff);
	background: var(--mtp-ok-bg);
}

.mtp .mtp-progress-topic ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mtp .mtp-progress-topic li {
	display: flex;
	justify-content: space-between;
	gap: .6em;
	padding: .25em 0;
	margin: 0;
}

.mtp .mtp-progress-topic li span {
	color: var(--mtp-ink-2);
	font-size: .88rem;
	white-space: nowrap;
}

/* ---------- Result: detailed analysis ---------- */

.mtp .mtp-an {
	margin: 1.6em 0;
}

.mtp .mtp-an-block {
	margin: 0 0 1.2em;
	padding: 1em 1.1em;
	border: 1.5px solid var(--mtp-line);
	border-radius: var(--mtp-radius);
	background: var(--mtp-bg);
}

.mtp .mtp-an-h {
	margin: 0 0 .7em;
	font-size: 1.05rem;
}

.mtp .mtp-an-sub {
	margin: .8em 0 .4em;
	font-weight: 600;
	font-size: .92rem;
}

.mtp .mtp-an-note {
	margin: .4em 0 0;
	color: var(--mtp-ink-2);
	font-size: .9rem;
}

.mtp .mtp-an-muted {
	color: var(--mtp-muted);
	font-size: .88rem;
}

.mtp .mtp-an-compare th,
.mtp .mtp-an-compare td,
.mtp .mtp-an-topics th,
.mtp .mtp-an-topics td {
	vertical-align: middle;
}

.mtp .mtp-an-compare .is-me {
	background: color-mix(in srgb, var(--mtp-accent) 7%, #fff);
	font-weight: 600;
}

.mtp .mtp-an-bar {
	display: block;
	height: 6px;
	margin-top: 4px;
	border-radius: 999px;
	background: var(--mtp-soft);
	overflow: hidden;
	min-width: 60px;
}

.mtp .mtp-an-bar > span {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: #8e98ad;
}

.mtp .mtp-an-bar.is-me > span {
	background: var(--mtp-accent);
}

.mtp .mtp-an-bar.is-top > span {
	background: var(--mtp-ok);
}

.mtp .mtp-an-bar.is-weak > span {
	background: var(--mtp-bad);
}

.mtp .mtp-an-bar.is-strong > span {
	background: var(--mtp-ok);
}

.mtp .mtp-an-topics .is-good {
	color: var(--mtp-ok);
	font-weight: 700;
}

.mtp .mtp-an-topics .is-bad {
	color: var(--mtp-bad);
	font-weight: 700;
}

.mtp .mtp-an-badge {
	display: inline-block;
	margin-inline-start: .4em;
	padding: .05em .55em;
	border-radius: 999px;
	font-size: .74rem;
	font-weight: 700;
	vertical-align: middle;
}

.mtp .mtp-an-badge.is-weak {
	background: var(--mtp-bad-bg);
	color: var(--mtp-bad);
}

.mtp .mtp-an-badge.is-strong {
	background: var(--mtp-ok-bg);
	color: var(--mtp-ok);
}

.mtp .mtp-an-tips ul {
	margin: 0;
	padding-inline-start: 1.3em;
}

.mtp .mtp-an-tips li {
	margin: 0 0 .45em;
	line-height: 1.55;
}

.mtp .mtp-an-split {
	display: flex;
	height: 16px;
	border-radius: 999px;
	overflow: hidden;
	background: var(--mtp-soft);
}

.mtp .mtp-an-split .is-correct,
.mtp .mtp-an-legend .is-correct::before {
	background: var(--mtp-ok);
}

.mtp .mtp-an-split .is-wrong,
.mtp .mtp-an-legend .is-wrong::before {
	background: var(--mtp-bad);
}

.mtp .mtp-an-split .is-skipped,
.mtp .mtp-an-legend .is-skipped::before {
	background: #a9b1c2;
}

.mtp .mtp-an-legend {
	display: flex;
	flex-wrap: wrap;
	gap: .3em 1.2em;
	margin: .5em 0 0;
	padding: 0;
	list-style: none;
	font-size: .88rem;
}

.mtp .mtp-an-legend li {
	margin: 0;
}

.mtp .mtp-an-legend li::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 3px;
	margin-inline-end: .4em;
}

.mtp .mtp-an-slow {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: .3em;
}

.mtp .mtp-an-slow li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .5em;
	margin: 0;
	font-size: .92rem;
}

.mtp .mtp-an-slow a {
	font-weight: 700;
	color: var(--mtp-accent) !important;
	min-width: 2.6em;
}

.mtp .mtp-an-pill {
	padding: .05em .55em;
	border-radius: 999px;
	font-size: .76rem;
	font-weight: 600;
}

.mtp .mtp-an-pill.is-correct {
	background: var(--mtp-ok-bg);
	color: var(--mtp-ok);
}

.mtp .mtp-an-pill.is-wrong {
	background: var(--mtp-bad-bg);
	color: var(--mtp-bad);
}

.mtp .mtp-an-pill.is-skipped {
	background: var(--mtp-soft);
	color: var(--mtp-ink-2);
}

.mtp .mtp-an-map {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(46px, 1fr));
	gap: 6px;
	margin: .7em 0 0;
	padding: 0;
	list-style: none;
}

.mtp .mtp-an-map li {
	margin: 0;
}

.mtp .mtp-an-map a {
	display: grid;
	place-items: center;
	gap: 0;
	min-height: 46px;
	padding: 4px 2px;
	border-radius: 9px;
	border: 1.5px solid var(--mtp-line);
	background: var(--mtp-soft);
	color: var(--mtp-ink) !important;
	text-decoration: none !important;
	line-height: 1.1;
}

.mtp .mtp-an-map strong {
	font-size: .95rem;
}

.mtp .mtp-an-map small {
	font-size: .66rem;
	opacity: .8;
}

.mtp .mtp-an-map .is-correct a {
	background: var(--mtp-ok-bg);
	border-color: color-mix(in srgb, var(--mtp-ok) 45%, #fff);
	color: var(--mtp-ok) !important;
}

.mtp .mtp-an-map .is-wrong a {
	background: var(--mtp-bad-bg);
	border-color: color-mix(in srgb, var(--mtp-bad) 45%, #fff);
	color: var(--mtp-bad) !important;
}

/* Charts (inline SVG) */

.mtp-chart {
	display: block;
	width: 100%;
	height: auto;
	max-width: 620px;
}

.mtp-chart-axis,
.mtp-chart-grid {
	stroke: #d6dbe6;
	stroke-width: 1;
}

.mtp-chart-grid {
	stroke-dasharray: 3 4;
}

.mtp-chart-bar {
	fill: #c4cbe0;
}

.mtp-chart-bar.is-me {
	fill: var(--mtp-accent, #2b4c9b);
}

.mtp-chart-val,
.mtp-chart-lbl {
	font: 11px system-ui, sans-serif;
	fill: #6b7486;
}

.mtp-chart-line {
	fill: none;
	stroke: var(--mtp-accent, #2b4c9b);
	stroke-width: 2.5;
	stroke-linejoin: round;
}

.mtp-chart-dot {
	fill: #fff;
	stroke: var(--mtp-accent, #2b4c9b);
	stroke-width: 2;
}
