@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/Vazir-Thin-FD-WOL.woff2") format("woff2");
	font-weight: 100;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/Vazir-Light-FD-WOL.woff2") format("woff2");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/Vazir-FD-WOL.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/Vazir-Medium-FD-WOL.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Vazirmatn";
	src: url("../fonts/Vazir-Bold-FD-WOL.woff2") format("woff2");
	font-weight: 700 900;
	font-style: normal;
	font-display: swap;
}

html,
body,
button,
input,
select,
textarea {
	font-family: "Vazirmatn", Tahoma, Arial, sans-serif;
}

.azm-eb,
.azm-eb *,
.azm-publication-settings,
.azm-publication-settings *,
.azm-public-body,
.azm-public-body * {
	font-family: "Vazirmatn", Tahoma, Arial, sans-serif;
}

/* =========================================================
   Readable type scale — accessibility baseline
   Keeps component proportions while removing micro text.
========================================================= */

html {
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

button,
input,
select,
textarea {
	font-size: 14px;
	line-height: 1.5;
}

/* Panel-wide readable minimums. */
.azm-exam-builder-page .azm-eb {
	font-size: 15px;
	line-height: 1.75;
}

.azm-exam-builder-page .azm-eb :where(p, li, label, td, th) {
	font-size: 14px !important;
	line-height: 1.8 !important;
}

.azm-exam-builder-page .azm-eb :where(button, input, select, textarea) {
	font-size: 14px !important;
	line-height: 1.55 !important;
}

.azm-exam-builder-page .azm-eb small {
	font-size: 12px !important;
	line-height: 1.65 !important;
}

.azm-exam-builder-page .azm-eb :where(.azm-eb-nav__link, .azm-eb-nav__toggle, .azm-eb-nav__subitem) {
	font-size: 14px !important;
}

.azm-exam-builder-page .azm-eb :where([class*="__meta"], [class*="__status"], [class*="__label"], [class*="__hint"], [class*="__subtitle"], [class*="badge"]) {
	font-size: 13px !important;
	line-height: 1.7 !important;
}

.azm-exam-builder-page .azm-eb :where([class*="action"], [class*="button"], [class*="btn"]) {
	font-size: 12px !important;
}

.azm-exam-builder-page .azm-eb h1 {
	font-size: clamp(22px, 2.2vw, 30px) !important;
	line-height: 1.55 !important;
}

.azm-exam-builder-page .azm-eb h2 {
	font-size: clamp(18px, 1.8vw, 24px) !important;
	line-height: 1.65 !important;
}

.azm-exam-builder-page .azm-eb h3 {
	font-size: 16px !important;
	line-height: 1.7 !important;
}

/* Tests: follows the user's enlarged desktop proportions. */
.azm-eb-tests-page .azm-eb-test-item h3 {
	font-size: 17px !important;
}

.azm-eb-tests-page .azm-eb-test-item__meta,
.azm-eb-tests-page .azm-eb-test-item__meta span {
	font-size: 13px !important;
}

.azm-eb-tests-page :where(.azm-eb-test-item__type, .azm-eb-test-item__status) {
	font-size: 12px !important;
}

.azm-eb-tests-page :where(.azm-eb-test-action, .azm-eb-results-menu__toggle, .azm-eb-results-dropdown a) {
	font-size: 14px !important;
}

.azm-eb-tests-page :where(.azm-eb-tests-tabs a, .azm-eb-tests-statuses a, .azm-eb-tests-search input) {
	font-size: 13px !important;
}

/* Exam links: preserves the user's readable mobile hierarchy. */
.azm-links-page .azm-links-table__head,
.azm-links-page .azm-links-summary,
.azm-links-page .azm-links-item__created {
	font-size: 12px !important;
}

.azm-links-page .azm-links-item__title-copy strong {
	font-size: 16px !important;
}

.azm-links-page :where(.azm-links-availability, .azm-links-item__cell--type > span) {
	font-size: 12px !important;
}

.azm-links-page .azm-links-item__cell--exam strong {
	font-size: 14px !important;
}

.azm-links-page :where(.azm-links-action, .azm-links-mobile-actions-toggle) {
	font-size: 13px !important;
}

.azm-links-page :where(.azm-links-search-field input, .azm-links-select-field select) {
	font-size: 13px !important;
}

/* Dashboard cards previously used 7–10px labels. */
.azm-eb-dashboard-page :where(.azm-eb-dashboard-kicker, .azm-eb-dashboard-section-head span, .azm-eb-dashboard-create > div > span) {
	font-size: 12px !important;
}

.azm-eb-dashboard-page :where(.azm-eb-dashboard-primary, .azm-eb-dashboard-secondary, .azm-eb-dashboard-section-head > a, .azm-eb-dashboard-exam__actions a) {
	font-size: 13px !important;
}

.azm-eb-dashboard-page :where(.azm-eb-dashboard-stat__copy > b, .azm-eb-dashboard-tool-list strong, .azm-eb-dashboard-create nav span) {
	font-size: 14px !important;
}

.azm-eb-dashboard-page :where(.azm-eb-dashboard-stat__copy > small, .azm-eb-dashboard-tool-list small, .azm-eb-dashboard-create nav small, .azm-eb-dashboard-exam__body p) {
	font-size: 12px !important;
}

.azm-eb-dashboard-page .azm-eb-dashboard-exam__body h3 {
	font-size: 15px !important;
}

/* Public exam and results screens. */
.azm-public-body :where(p, li, label, button, input, select, textarea, td, th),
.azm-publication-settings :where(p, li, label, button, input, select, textarea, td, th) {
	font-size: 15px !important;
	line-height: 1.8 !important;
}

.azm-public-body small,
.azm-publication-settings small {
	font-size: 13px !important;
}

/* Reliable account dropdown: below the account card on all breakpoints. */
.azm-eb-sidebar__head {
	position: relative;
	z-index: 120;
	overflow: visible;
}

.azm-eb-account-menu--sidebar-head {
	position: relative;
	z-index: 121;
}

.azm-eb-account-menu--sidebar-head .azm-eb-account-dropdown {
	position: absolute !important;
	top: calc(100% + 8px) !important;
	right: 0 !important;
	bottom: auto !important;
	left: auto !important;
	z-index: 1000 !important;
	display: block;
	width: min(276px, calc(100vw - 28px)) !important;
	max-height: calc(100vh - 100px);
	overflow-y: auto;
	pointer-events: auto;
}

.azm-eb-account-menu--sidebar-head .azm-eb-account-dropdown[hidden] {
	display: none !important;
}

.azm-eb-account-menu--sidebar-head .azm-eb-account-dropdown :where(a, button) {
	font-size: 14px !important;
}

@media (max-width: 680px) {
	.azm-exam-builder-page .azm-eb :where(p, li, label, button, input, select, textarea, td, th) {
		font-size: 14px !important;
	}

	.azm-links-page .azm-links-item__title-copy strong {
		font-size: 17px !important;
	}

	.azm-links-page .azm-links-item__created {
		font-size: 11px !important;
	}

	.azm-links-page :where(.azm-links-item__mobile-label, .azm-links-item__cell--exam strong) {
		font-size: 15px !important;
	}

	.azm-links-page :where(.azm-links-action, .azm-links-mobile-actions-toggle) {
		font-size: 14px !important;
	}
}
