:root {

	--brand: #1e6a75;
	--brand-600: #1e6a75;
	--brand-700: #1e6a75;
	--brand-050: #e8f3f4;
	--brand-100: #b8dce1;

	--gold: #f4b400;
	--gold-600: #d99e00;
	--gold-050: #fff9e8;
	--gold-100: #fceec1;
	--gold-ink: #7a5a00;
	--ink: #1f2430;
	--ink-soft: #4b5161;
	--muted: #7a8194;
	--line: #ececf0;
	--paper: #ffffff;
	--bg: #f5f5f5;
}

* { box-sizing: border-box; }

html, body {
	margin: 0;
	padding: 0;
	min-height: 100%;
	font-family: "Yekan Bakh", Vazirmatn, "IRANSans", Tahoma, "Segoe UI", sans-serif;
	color: var(--ink);
	background: var(--bg);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

a { color: var(--brand-700); text-decoration: none; }
a:hover { text-decoration: underline; }

.stage {
	display: grid;
	grid-template-columns: 1.35fr 1fr;
	min-height: 100vh;
}

.content {
	background: var(--paper);
	padding: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	border-inline-start: 4px solid var(--brand);
	position: relative;
}

.content__fade {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	height: 80px;
	background: linear-gradient(to top, var(--paper) 16%, rgba(255, 255, 255, 0));
	pointer-events: none;
	z-index: 4;
	opacity: 1;
	transition: opacity .25s ease;
}

.content__bottom-dock {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	z-index: 5;
	height: 80px;
	pointer-events: none;
}

.content__help-fab {
	position: absolute;
	left: 20px;
	bottom: 12px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	min-width: 56px;
	min-height: 56px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 0;
	background: var(--brand);
	color: #fff;
	font: inherit;
	cursor: pointer;
	pointer-events: auto;
	box-shadow: 0 12px 32px rgba(30, 106, 117, 0.28);
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.content__help-fab-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.content__help-fab-svg {
	width: 28px;
	height: 28px;
	display: block;
}
.content__help-fab:hover,
.content__help-fab:focus-visible {
	background: #fff;
	color: var(--brand);
	border-color: var(--brand);
	transform: translateY(-2px);
	box-shadow: 0 16px 36px rgba(30, 106, 117, 0.32);
}
@media (prefers-reduced-motion: reduce) {
	.content__help-fab { transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease; }
	.content__help-fab:hover,
	.content__help-fab:focus-visible { transform: none; }
}

.scroll-hint,
.scroll-top {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 7px;
	background: var(--brand);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 8px 14px;
	box-shadow: 0 8px 20px rgba(30, 106, 117, .28);
	white-space: nowrap;
	border: 0;
	font-family: inherit;
	transition: opacity .25s ease, visibility .25s ease;
}
.scroll-hint {
	cursor: pointer;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.scroll-hint svg { width: 14px; height: 14px; animation: hintbounce 1.4s ease-in-out infinite; }
.scroll-hint:hover { filter: brightness(1.06); }
.scroll-hint:active { transform: translateX(-50%) translateY(1px); }
.scroll-top {
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	gap: 0;
	padding: 10px;
	min-width: 40px;
	min-height: 40px;
	justify-content: center;
}
.scroll-top svg { width: 16px; height: 16px; animation: hintbounce-up 1.4s ease-in-out infinite; }
.scroll-top:hover { filter: brightness(1.06); }
.scroll-top:active { transform: translateX(-50%) translateY(1px); }
@keyframes hintbounce {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(3px); }
}
@keyframes hintbounce-up {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-3px); }
}
.content.is-scrolled .scroll-hint,
.scroll-hint.is-off { opacity: 0; visibility: hidden; pointer-events: none; }
.content.is-scrolled .scroll-top {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.content.no-scroll .scroll-hint,
.content.no-scroll .scroll-top {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
.content.at-bottom .content__fade { opacity: 0; }
@media (prefers-reduced-motion: reduce) {
	.scroll-hint svg,
	.scroll-top svg { animation: none; }
}

.content__bar {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 28px;
	border-bottom: 1px solid var(--line);
	position: sticky;
	top: 0;
	background: var(--paper);
	z-index: 3;
	flex-shrink: 0;
}

.content__bar .mark {
	min-width: 34px;
	height: 34px;
	padding: 0 6px;
	font-size: 9px;
}

.content__bar-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}
.content__bar-brand:hover,
.content__bar-brand:focus-visible {
	text-decoration: none;
	color: inherit;
}

.mark {
	min-width: 46px;
	height: 46px;
	padding: 0 10px;
	background: var(--brand);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 11px;
	letter-spacing: -0.3px;
	flex-shrink: 0;
	white-space: nowrap;
}

.mark--logo {
	padding: 0;
	background: transparent;
	box-shadow: none;
	overflow: hidden;
}

.mark--logo img,
.mark--logo .mark__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mark--logo-themed .mark__img--dark {
	display: none;
}

html[data-theme="dark"] .mark--logo-themed .mark__img--light {
	display: none;
}

html[data-theme="dark"] .mark--logo-themed .mark__img--dark {
	display: block;
}

.content__bar .mark--logo {
	min-width: 34px;
	height: 34px;
	background: transparent;
	box-shadow: none;
}

.content__bar h1,
.content__bar-brand h1 {
	font-size: 14px;
	margin: 0;
	line-height: 1.35;
	font-weight: 800;
}
.content__bar span { display: block; font-size: 12px; color: var(--muted); font-weight: 500; }

.quick-nav {
	display: grid;
	grid-template-columns: repeat(10, minmax(0, 1fr));
	align-items: stretch;
	gap: 6px;
	padding: 8px 12px 10px;
	border-bottom: 1px solid var(--line);
	flex-shrink: 0;
	background: linear-gradient(180deg, #fafcfc 0%, var(--paper) 100%);
	position: relative;
	overflow: visible;
	z-index: 5;
}
.quick-nav__item {
	position: relative;
	min-width: 0;
	min-height: 68px;
	height: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	padding: 7px 4px 8px;
	border-radius: 0;
	background: var(--brand-050);
	border: 1px solid var(--brand-100);
	color: var(--brand-700);
	text-decoration: none;
	transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.quick-nav__item:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(30, 106, 117, .18);
	transform: translateY(-1px);
}
.quick-nav__item.is-active,
.quick-nav__item.is-active:hover {
	background: var(--brand);
	border-color: var(--brand-600);
	color: #fff;
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(30, 106, 117, .24);
	transform: none;
}
.quick-nav__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	flex-shrink: 0;
	border-radius: 0;
	background: var(--paper);
	border: 1px solid var(--brand-100);
	color: var(--brand);
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.quick-nav__item:hover .quick-nav__icon {
	background: rgba(255, 255, 255, .14);
	border-color: rgba(255, 255, 255, .35);
	color: #fff;
}
.quick-nav__item.is-active .quick-nav__icon,
.quick-nav__item.is-active:hover .quick-nav__icon {
	background: rgba(255, 255, 255, .14);
	border-color: rgba(255, 255, 255, .35);
	color: #fff;
}
.quick-nav__icon svg { width: 18px; height: 18px; }
.quick-nav__label {
	margin: 5px 0 0;
	text-align: center;
	font-size: 10px;
	font-weight: 800;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}
.quick-nav__item::after,
.quick-nav__item::before {
	display: none;
}
.quick-nav__item--soon {
	cursor: default;
}
.quick-nav__item--soon:hover,
.quick-nav__item--soon:focus-visible {
	background: var(--brand-050);
	border-color: var(--brand-100);
	color: var(--brand-700);
	box-shadow: none;
	transform: none;
}
.quick-nav__item--soon:hover .quick-nav__icon,
.quick-nav__item--soon:focus-visible .quick-nav__icon {
	background: var(--paper);
	border-color: var(--brand-100);
	color: var(--brand);
}

.scroll {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 14px 40px 96px;
	line-height: 2.05;
	scrollbar-width: thin;
	scrollbar-color: var(--brand) var(--brand-050);
	scroll-padding-top: var(--idx3-scroll-anchor-offset, 12px);
}
.scroll::-webkit-scrollbar { width: 11px; }
.scroll::-webkit-scrollbar-track { background: var(--brand-050); }
.scroll::-webkit-scrollbar-thumb { background: var(--brand-100); border: 2px solid var(--brand-050); }
.scroll::-webkit-scrollbar-thumb:hover { background: var(--brand); }

.auth__iran-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 12px auto 0;
	padding: 0;
	background: transparent;
	border: 0;
	cursor: pointer;
	font: inherit;
}
.auth__iran-logo img {
	display: block;
	max-height: 52px;
	width: auto;
	max-width: min(180px, 72%);
	object-fit: contain;
	opacity: 0.92;
	transition: filter 0.4s ease, opacity 0.35s ease, transform 0.35s ease;
	-webkit-user-select: none;
	user-select: none;
	-webkit-user-drag: none;
	user-drag: none;
	-webkit-touch-callout: none;
	pointer-events: none;
}
.auth__iran-logo:hover img,
.auth__iran-logo:focus-visible img {
	opacity: 1;
	transform: scale(1.04);
	filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.45))
		drop-shadow(0 0 22px rgba(244, 180, 0, 0.35))
		brightness(1.08);
}
html[data-theme="dark"] .auth__iran-logo:hover img,
html[data-theme="dark"] .auth__iran-logo:focus-visible img {
	filter: drop-shadow(0 0 12px rgba(90, 180, 196, 0.7))
		drop-shadow(0 0 26px rgba(120, 230, 242, 0.45))
		brightness(1.12);
}
@media (prefers-reduced-motion: reduce) {
	.auth__iran-logo img { transition: filter 0.2s ease, opacity 0.2s ease; }
	.auth__iran-logo:hover img,
	.auth__iran-logo:focus-visible img { transform: none; }
}

.iran-flash {
	position: fixed;
	inset: 0;
	z-index: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(8, 14, 22, 0.55);
	pointer-events: none;
}
.iran-flash[hidden] { display: none !important; }
.iran-flash__img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(920px, 92vw);
  max-height: min(78vh, 720px);
  object-fit: contain;
  opacity: 0;
  transform: scale(0.92);
  -webkit-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-touch-callout: none;
  pointer-events: none;
}
.iran-flash.is-on .iran-flash__img {
	animation: idx3-iran-flash 3s ease-in-out forwards;
}
@keyframes idx3-iran-flash {
	0% {
		opacity: 0;
		transform: scale(0.9);
		filter: brightness(1) drop-shadow(0 0 0 transparent);
	}
	12% {
		opacity: 1;
		transform: scale(1.02);
		filter: brightness(1.35)
			drop-shadow(0 0 18px rgba(255, 255, 255, 0.85))
			drop-shadow(0 0 40px rgba(244, 180, 0, 0.55));
	}
	28% {
		opacity: 1;
		transform: scale(1);
		filter: brightness(1.05)
			drop-shadow(0 0 10px rgba(255, 255, 255, 0.35))
			drop-shadow(0 0 22px rgba(30, 106, 117, 0.35));
	}
	45% {
		filter: brightness(1.4)
			drop-shadow(0 0 24px rgba(255, 255, 255, 0.9))
			drop-shadow(0 0 48px rgba(244, 180, 0, 0.65));
	}
	62% {
		opacity: 1;
		filter: brightness(1.08)
			drop-shadow(0 0 12px rgba(255, 255, 255, 0.4))
			drop-shadow(0 0 28px rgba(30, 106, 117, 0.4));
	}
	78% {
		opacity: 1;
		filter: brightness(1.3)
			drop-shadow(0 0 20px rgba(255, 255, 255, 0.75))
			drop-shadow(0 0 42px rgba(244, 180, 0, 0.5));
	}
	100% {
		opacity: 0;
		transform: scale(1.04);
		filter: brightness(1.15) drop-shadow(0 0 0 transparent);
	}
}
@media (prefers-reduced-motion: reduce) {
	.iran-flash.is-on .iran-flash__img {
		animation: idx3-iran-flash-simple 3s ease-in-out forwards;
	}
	@keyframes idx3-iran-flash-simple {
		0% { opacity: 0; }
		15% { opacity: 1; }
		75% { opacity: 1; }
		100% { opacity: 0; }
	}
}

.hero-title {
	font-size: 23px;
	font-weight: 800;
	margin: 0 0 6px;
	line-height: 1.6;
}
.hero-kicker {
	display: inline-block;
	background: var(--gold-050);
	color: var(--gold-ink);
	font-size: 12px;
	font-weight: 700;
	padding: 6px 12px;
	margin-bottom: 16px;
	border: 1px solid var(--gold-100);
}

.sec { margin-top: 30px; }
.sec--intro { margin-top: 0; }
.sec[id],
#idx3-intro {
	scroll-margin-top: var(--idx3-scroll-anchor-offset, 12px);
}
.sec__h {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	margin: 0 0 12px;
	padding-inline-start: 12px;
	border-inline-start: 4px solid var(--brand);
}
.sec p { margin: 0 0 12px; color: var(--ink-soft); font-size: 14.5px; text-align: justify; }

.list { list-style: none; margin: 0; padding: 0; }
.list li {
	position: relative;
	padding-inline-start: 24px;
	margin-bottom: 10px;
	color: var(--ink-soft);
	font-size: 14.5px;
	text-align: justify;
}
.list li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 13px;
	width: 9px;
	height: 9px;
	background: var(--brand);
}
.list--news li {
	padding-inline-start: 0;
	margin-bottom: 8px;
}
.list--news li::before { display: none; }
.news-item {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	text-align: start;
	border: 1px solid var(--line);
	border-inline-start: 4px solid var(--brand);
	background: var(--paper);
	color: var(--ink);
	font: inherit;
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.7;
	padding: 10px 12px;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.news-item__thumb {
	flex: 0 0 72px;
	width: 72px;
	height: 54px;
	overflow: hidden;
	background: var(--brand-050);
	border: 1px solid var(--line);
}
.news-item__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.news-item__thumb img[data-idx3-defer-src] {
	visibility: hidden;
}
.news-item__title {
	flex: 1 1 auto;
	min-width: 0;
}
.news-item:hover,
.news-item:focus-visible {
	background: var(--brand-050);
	border-color: var(--brand-100);
	color: var(--brand-700);
	outline: none;
}
.news-empty {
	margin: 0;
	color: var(--muted);
	font-size: 14px;
}
.faq-cat {
	margin-bottom: 18px;
}
.faq-cat__title {
	margin: 0 0 10px;
	font-size: 14px;
	font-weight: 800;
	color: var(--brand-700);
}
.faq-item {
	border: 1px solid var(--line);
	background: var(--paper);
	margin-bottom: 8px;
}
.faq-item summary {
	cursor: pointer;
	padding: 12px 14px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--ink);
	list-style: none;
}
.faq-item summary::-webkit-details-marker {
	display: none;
}
.faq-item[open] summary {
	color: var(--brand-700);
}
.faq-item__body {
	padding: 0 14px 14px;
	color: var(--muted);
	font-size: 13.5px;
	line-height: 1.85;
}
.faq-item__body p {
	margin: 0 0 10px;
}
.faq-item__body p:last-child {
	margin-bottom: 0;
}
.faq-answer__media {
	margin: 14px 0 0;
}
.faq-answer__media img {
	display: block;
	width: 100%;
	max-width: 560px;
	height: auto;
	border: 1px solid var(--line);
}
.faq-empty {
	margin: 0;
	color: var(--muted);
	font-size: 14px;
}
.faq-popup-eyebrow {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	color: var(--brand-700);
}
.faq-popup-lead {
	margin: 0 0 16px;
	color: var(--muted);
	font-size: 13.5px;
	line-height: 1.75;
}
.news-popup__dialog--faq {
	text-align: start;
}
.news-popup__dialog--faq .faq-popup-body {
	max-height: min(62vh, 560px);
	overflow: auto;
}
.news-popup {
	position: fixed;
	inset: 0;
	z-index: 460;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(15, 24, 37, 0.72);
}
.news-popup[hidden] { display: none !important; }
.news-popup__dialog {
	position: relative;
	width: min(640px, 100%);
	max-height: min(80vh, 720px);
	overflow-x: hidden;
	overflow-y: auto;
	background: var(--paper);
	color: var(--ink);
	border: 1px solid var(--line);
	border-top: 4px solid var(--brand);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
	padding: 28px 24px 24px;
}
.news-popup__dialog--wide {
	width: min(860px, calc(100vw - 32px));
	max-height: min(88vh, 900px);
}
.news-popup__dialog--auth {
	width: min(420px, 100%);
	max-height: none;
	overflow: visible;
	padding: 28px 24px 22px;
	border-top-color: #d64545;
}
.news-popup__dialog--auth.is-warn {
	border-top-color: var(--gold);
}
.news-popup__dialog--auth .news-popup__title {
	margin-bottom: 10px;
	font-size: 18px;
}
.news-popup__dialog--auth .news-popup__body {
	margin: 0 0 20px;
	font-size: 14px;
	line-height: 1.85;
	text-align: start;
}
.idx3-auth-popup__ok {
	margin: 0;
}
.news-popup__close {
	position: absolute;
	top: 10px;
	inset-inline-end: 10px;
	width: 36px;
	height: 36px;
	border: 0;
	background: var(--brand-050);
	color: var(--brand-700);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}
.news-popup__close:hover { background: var(--brand-100); }
.news-popup__title {
	margin: 0 36px 14px 0;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.6;
}
html[dir="ltr"] .news-popup__title { margin: 0 0 14px 36px; }
.news-popup__body {
	font-size: 14.5px;
	line-height: 2;
	color: var(--ink-soft);
	text-align: justify;
	overflow-x: hidden;
	max-width: 100%;
}
.news-popup__body p { margin: 0 0 12px; }
.news-popup__body img,
.news-popup__body video,
.news-popup__body iframe,
.news-popup__body svg {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
}
.news-popup__body figure,
.news-popup__body .aligncenter,
.news-popup__body .wp-caption,
.news-popup__body .elementor-widget-container {
	max-width: 100%;
	margin-inline: 0;
}
.news-popup__body table {
	width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	margin: 0 0 16px;
	font-size: 13px;
	display: block;
	overflow-x: auto;
}
.news-popup__body th,
.news-popup__body td {
	border: 1px solid var(--line);
	padding: 8px 10px;
	vertical-align: top;
	text-align: start;
}
.news-popup__body figcaption {
	margin: 0 0 10px;
	font-size: 13px;
	font-weight: 800;
}
.news-popup__media {
	margin: 16px 0 0;
	border: 1px solid var(--line);
	overflow: hidden;
	background: var(--brand-050);
}
.news-popup__media[hidden] { display: none !important; }
.news-popup__media img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 360px;
	object-fit: cover;
}
html.news-popup-open { overflow: hidden; }

.idx3-licensed-institutes-lead {
	margin: 0 0 14px;
	font-size: 13px;
	line-height: 1.85;
	color: var(--muted);
	text-align: start;
}
.idx3-licensed-institutes-source-link {
	color: var(--brand-600, #009ef7);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 2px;
}
.idx3-licensed-institutes-source-link:hover,
.idx3-licensed-institutes-source-link:focus-visible {
	color: var(--brand-700, #0086d6);
}
.idx3-licensed-institutes-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 12px;
	margin: 0 0 12px;
}
.idx3-licensed-institutes-search-label {
	font-size: 12px;
	font-weight: 700;
	color: var(--ink-soft);
	flex: 0 0 auto;
}
.idx3-licensed-institutes-search {
	flex: 1 1 220px;
	min-width: 0;
	padding: 10px 12px;
	border: 1px solid var(--line);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.88);
	color: var(--ink);
	font: inherit;
	font-size: 13px;
}
.idx3-licensed-institutes-search:focus {
	outline: none;
	border-color: rgba(var(--cms-color-primary-rgb), 0.45);
	box-shadow: 0 0 0 3px rgba(var(--cms-color-primary-rgb), 0.12);
}
.idx3-licensed-institutes-count {
	font-size: 12px;
	font-weight: 700;
	color: var(--muted);
	white-space: nowrap;
}
.idx3-active-fields-filter {
	flex: 0 1 150px;
	min-width: 120px;
	padding: 10px 12px;
	border: 1px solid var(--line);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.88);
	color: var(--ink);
	font: inherit;
	font-size: 13px;
}
.idx3-active-fields-filter:focus {
	outline: none;
	border-color: rgba(var(--cms-color-primary-rgb), 0.45);
	box-shadow: 0 0 0 3px rgba(var(--cms-color-primary-rgb), 0.12);
}
.idx3-licensed-institutes-col-id {
	width: 5.5rem;
	min-width: 5.5rem;
	text-align: center !important;
	white-space: nowrap;
	color: var(--muted);
	font-variant-numeric: tabular-nums;
}
html[data-theme="dark"] .idx3-active-fields-filter {
	background: rgba(255, 255, 255, 0.06);
	color: var(--ink);
}
.idx3-licensed-institutes-table-wrap {
	max-height: min(52vh, 520px);
	overflow: auto;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.72);
}
.idx3-licensed-institutes-table {
	width: 100%;
	border-collapse: collapse;
	margin: 0;
	font-size: 12.5px;
}
.idx3-licensed-institutes-table th,
.idx3-licensed-institutes-table td {
	border-bottom: 1px solid var(--line);
	padding: 9px 10px;
	vertical-align: top;
	text-align: start;
}
.idx3-licensed-institutes-table thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	background: var(--brand-050);
	font-size: 12px;
}
.idx3-licensed-institutes-col-no {
	width: 3.25rem;
	min-width: 3.25rem;
	text-align: center !important;
	white-space: nowrap;
	color: var(--muted);
	font-variant-numeric: tabular-nums;
}
.idx3-licensed-institutes-table tbody tr:last-child td {
	border-bottom: 0;
}
.idx3-licensed-institutes-empty {
	margin: 0;
	padding: 18px 14px;
	font-size: 13px;
	color: var(--muted);
	text-align: center;
}
.news-popup__dialog--institutes {
	width: min(980px, 100%);
}

html[data-theme="dark"] .idx3-licensed-institutes-search {
	background: rgba(255, 255, 255, 0.06);
	color: var(--ink);
}

.ol { counter-reset: c; list-style: none; margin: 0; padding: 0; }
.ol li {
	position: relative;
	padding-block: 12px;
	padding-inline-start: 52px;
	padding-inline-end: 14px;
	margin-bottom: 10px;
	background: var(--brand-050);
	border: 1px solid var(--brand-100);
	color: var(--ink);
	font-size: 14.5px;
}
.ol li b { display: block; margin-bottom: 2px; }
.idx3-useful-link {
	appearance: none;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font: inherit;
	font-weight: inherit;
	color: var(--brand-700);
	text-align: inherit;
	text-decoration: none;
	cursor: pointer;
}
.idx3-useful-link:hover,
.idx3-useful-link:focus-visible {
	color: var(--brand);
	text-decoration: none;
	outline: none;
}
html[data-theme="dark"] .scroll .idx3-useful-link {
	color: #8ad4de;
}
html[data-theme="dark"] .scroll .idx3-useful-link:hover,
html[data-theme="dark"] .scroll .idx3-useful-link:focus-visible {
	color: #fff;
}
.ol li .notice-item {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: inherit;
	cursor: pointer;
}
.ol li .notice-item:hover b,
.ol li .notice-item:focus-visible b {
	color: var(--brand-700);
}
.ol li .notice-item:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}
.notice-empty {
	margin: 0;
	color: var(--muted);
	font-size: 14px;
}
.ol li::before {
	counter-increment: c;
	content: counter(c);
	position: absolute;
	inset-inline-start: 0;
	top: 0;
	bottom: 0;
	width: 40px;
	background: var(--brand);
	color: #fff;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.card {
	border: 1px solid var(--line);
	border-top: 3px solid var(--brand);
	padding: 16px;
	color: inherit;
	text-decoration: none;
	background: transparent;
}
.card h4 { margin: 0 0 6px; font-size: 14.5px; font-weight: 800; }
.card p { margin: 0; font-size: 13px; color: var(--muted); }
a.card--file {
	display: block;
	transition: border-color .15s ease, background .15s ease, transform .15s ease;
	cursor: pointer;
}
a.card--file:hover,
a.card--file:focus-visible {
	border-color: var(--brand-100);
	background: var(--brand-050);
	color: inherit;
	text-decoration: none;
	transform: translateY(-1px);
}

.feature-btns {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin-top: 18px;
}
.feature-btn {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 96px;
	padding: 16px 12px;
	border: 1px solid var(--brand-100);
	border-top: 3px solid var(--brand);
	background: var(--brand-050);
	color: var(--brand-700);
	text-decoration: none;
	font-family: inherit;
	transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.feature-btn:hover,
.feature-btn:focus-visible {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(30, 106, 117, .18);
	transform: translateY(-1px);
}
.feature-btn__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	background: var(--paper);
	border: 1px solid var(--brand-100);
	color: var(--brand);
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.feature-btn:hover .feature-btn__icon,
.feature-btn:focus-visible .feature-btn__icon {
	background: rgba(255, 255, 255, .14);
	border-color: rgba(255, 255, 255, .35);
	color: #fff;
}
.feature-btn__icon svg { width: 20px; height: 20px; }
.feature-btn__label {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
	text-align: center;
}
.feature-btn--soon {
	cursor: default;
}
.feature-btn--soon:hover,
.feature-btn--soon:focus-visible {
	background: var(--brand-050);
	border-color: var(--brand-100);
	border-top-color: var(--brand);
	color: var(--brand-700);
	box-shadow: none;
	transform: none;
}
.feature-btn--soon:hover .feature-btn__icon,
.feature-btn--soon:focus-visible .feature-btn__icon {
	background: var(--paper);
	border-color: var(--brand-100);
	color: var(--brand);
}
.feature-btn--soon::after {
	content: attr(data-soon-tooltip);
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	transform: translateX(-50%) translateY(4px);
	padding: 6px 10px;
	background: var(--ink);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	white-space: nowrap;
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity .16s ease, visibility .16s ease, transform .16s ease;
	z-index: 5;
	box-shadow: 0 6px 16px rgba(31, 36, 48, .2);
}
.feature-btn--soon.is-tooltip-open::after {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

.meta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 26px;
	margin-bottom: 22px;
}
.chip {
	border: 1px solid var(--line);
	padding: 10px 14px;
	font-size: 13px;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.chip span { color: var(--muted); font-size: 11px; margin-bottom: 3px; }
.chip b {
	font-size: 14px;
	line-height: 1.55;
	white-space: normal;
	word-break: break-word;
}
.chip--accent {
	grid-column: 1 / -1;
	background: var(--paper);
	border-color: var(--line);
	color: var(--ink);
}
.chip--accent span { color: var(--muted); }

@media (max-width: 768px) {
	.meta { grid-template-columns: 1fr; }
}

.contact-social {
	margin-bottom: 24px;
}
.contact-social__label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: var(--muted);
	margin-bottom: 10px;
}
.contact-social__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.contact-social__item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 12px;
	border: 1px solid var(--line);
	background: var(--paper);
	color: var(--ink);
	font-size: 12.5px;
	font-weight: 600;
	text-decoration: none;
	transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}
.contact-social__item i,
.contact-social__item .contact-social__ico {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--brand);
}
.contact-social__item i {
	font-size: 16px;
	text-align: center;
}
.contact-social__item:hover {
	border-color: var(--brand-100);
	background: var(--brand-050);
	color: var(--brand-700);
	text-decoration: none;
}
.contact-social__name {
	font-size: 11px;
	font-weight: 800;
	color: var(--brand-700);
}
#idx3-contact .ol {
	margin-top: 4px;
}

.gallery-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(108px, 1fr));
	gap: 10px;
	margin-top: 18px;
}
.gallery-thumb {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	padding: 0;
	border: 1px solid var(--line);
	background: var(--brand-050);
	cursor: pointer;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.gallery-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gallery-thumb:hover,
.gallery-thumb:focus-visible {
	border-color: var(--brand);
	box-shadow: 0 8px 20px rgba(30, 106, 117, 0.18);
	transform: translateY(-1px);
	outline: none;
}
.gallery-teaser {
	margin-top: 22px;
	padding-top: 18px;
	border-top: 1px solid var(--line);
}
.gallery-teaser__title {
	margin: 0 0 6px;
	font-size: 16px;
	font-weight: 800;
	color: var(--ink);
}
.gallery-teaser__label {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--ink-soft);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	direction: ltr;
	text-align: start;
}
.gallery-teaser__player {
	position: relative;
	width: 100%;
	border: 1px solid var(--line);
	background: #0f1825;
	overflow: hidden;
}
.gallery-teaser__poster {
	display: block;
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0;
	border: 0;
	cursor: pointer;
	background: transparent;
	aspect-ratio: 16 / 9;
}
.gallery-teaser__poster-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gallery-teaser__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	transition: transform 0.2s ease, opacity 0.2s ease;
}
.gallery-teaser__poster:hover .gallery-teaser__play,
.gallery-teaser__poster:focus-visible .gallery-teaser__play {
	transform: scale(1.06);
}
.gallery-teaser__poster:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 2px;
}
.gallery-teaser__play-icon {
	filter: drop-shadow(0 6px 16px rgba(0, 0, 0, 0.35));
}
.gallery-teaser__video {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	background: #0f1825;
	vertical-align: top;
}
.gallery-teaser__video[hidden] {
	display: none !important;
}
.gallery-teaser.is-playing .gallery-teaser__poster {
	display: none;
}
.gallery-lightbox {
	position: fixed;
	inset: 0;
	z-index: 400;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(15, 24, 37, 0.88);
}
.gallery-lightbox[hidden] {
	display: none !important;
}
.gallery-lightbox__img {
	display: block;
	max-width: min(960px, 100%);
	max-height: calc(100vh - 48px);
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 4px;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}
.gallery-lightbox__close {
	position: absolute;
	top: 16px;
	inset-inline-end: 16px;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}
.gallery-lightbox__close:hover {
	background: rgba(255, 255, 255, 0.24);
}
html.gallery-lightbox-open {
	overflow: hidden;
}

.signoff {
	margin-top: 30px;
	padding-top: 18px;
	border-top: 1px dashed var(--line);
	color: var(--muted);
	font-size: 13.5px;
}

.auth {
	background: var(--brand);
	color: #fff;
	padding: 68px 44px 56px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.auth__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background: linear-gradient(160deg, var(--brand) 0%, var(--brand-700) 100%);
}

.auth__globe-glow {
	position: absolute;
	width: min(72%, 440px);
	aspect-ratio: 1;
	left: 50%;
	top: 52%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(138, 212, 222, 0.16) 0%, rgba(30, 106, 117, 0.08) 42%, transparent 72%);
	z-index: 0;
	pointer-events: none;
	animation: authGlobePulse 7s ease-in-out infinite alternate;
}

.auth__network-canvas {
	position: absolute;
	inset: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.auth__mesh {
	position: absolute;
	inset: 0;
	z-index: 2;
	opacity: 0.11;
	background: repeating-linear-gradient(
		-24deg,
		transparent,
		transparent 32px,
		rgba(255, 255, 255, 0.1) 32px,
		rgba(255, 255, 255, 0.1) 33px
	);
	animation: authMeshDrift 26s linear infinite;
	pointer-events: none;
}

.auth__mesh--alt {
	opacity: 0.08;
	background: repeating-linear-gradient(
		18deg,
		transparent,
		transparent 44px,
		rgba(138, 212, 222, 0.14) 44px,
		rgba(138, 212, 222, 0.14) 45px
	);
	animation: authMeshDriftAlt 34s linear infinite;
	mix-blend-mode: screen;
}

@keyframes authGlobePulse {
	0% { opacity: 0.75; transform: translate(-50%, -50%) scale(0.96); }
	100% { opacity: 1; transform: translate(-50%, -50%) scale(1.04); }
}

@keyframes authMeshDrift {
	0% { transform: translate3d(0, 0, 0); }
	100% { transform: translate3d(-32px, 24px, 0); }
}

@keyframes authMeshDriftAlt {
	0% { transform: translate3d(0, 0, 0) rotate(0deg); }
	100% { transform: translate3d(28px, -20px, 0) rotate(2deg); }
}

@media (prefers-reduced-motion: reduce) {
	.auth__globe-glow,
	.auth__mesh,
	.auth__mesh--alt {
		animation: none;
	}
}

.auth__inner { position: relative; z-index: 2; max-width: 380px; margin: 0 auto; width: 100%; }

.auth__brandline {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-bottom: 30px;
}
.auth__brandline .mark { background: transparent; color: var(--brand-700); }
.auth__brandline .mark--logo {
	background: transparent;
	box-shadow: none;
}
.auth__brandline-text {
	font-size: 16px;
	line-height: 1.65;
	font-weight: 800;
	opacity: .95;
}

.auth h2 { font-size: 24px; font-weight: 800; margin: 0 0 8px; }
.auth__lead { font-size: 14px; line-height: 1.9; opacity: .92; margin: 0 0 30px; }

.formcard {
	background: #fff;
	color: var(--ink);
	padding: 28px 26px;
	border-top: 4px solid var(--gold);
}
.formcard h3 { margin: 0 0 4px; font-size: 17px; font-weight: 800; }
.formcard p.hint { margin: 0 0 22px; font-size: 12.5px; color: var(--muted); line-height: 1.8; }
.formcard p.hint .masked { color: var(--brand-700); }
.idx3-spam-help-link {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font: inherit;
	font-weight: 800;
	line-height: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
	color: #dc3545;
	animation: idx3-spam-help-blink 1.1s ease-in-out infinite;
}
.idx3-spam-help-link:hover,
.idx3-spam-help-link:focus-visible {
	text-decoration-thickness: 2px;
}
@keyframes idx3-spam-help-blink {
	0%, 100% { color: #dc3545; }
	50% { color: #22a06b; }
}
@media (prefers-reduced-motion: reduce) {
	.idx3-spam-help-link { animation: none; color: #dc3545; }
}
.news-popup__dialog--spam-help {
	width: min(920px, calc(100vw - 32px));
	max-height: min(92vh, 960px);
}
#idx3-spam-help-popup {
	z-index: 480;
}
.news-popup__media--spam {
	margin-top: 12px;
	background: #111;
}
.news-popup__media--spam img {
	max-height: min(70vh, 720px);
	object-fit: contain;
	background: #111;
}

.formcard-version {
	margin: 10px 0 0;
	font-size: 11px;
	font-weight: 600;
	color: #fff;
	text-align: center;
	opacity: .88;
	letter-spacing: 0.04em;
}

.auth__version-iran {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin-top: 10px;
}
.auth__version-iran .formcard-version {
	margin: 0;
	line-height: 1;
}
.auth__version-iran .auth__iran-logo {
	margin: 0;
}

.auth-access-help-link-wrap {
	margin: 14px 0 0;
	text-align: center;
}
.auth-access-help-link {
	display: inline-block;
	color: #fff;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.7;
	text-decoration: underline;
	text-underline-offset: 3px;
	opacity: .94;
}
.auth-access-help-link:hover,
.auth-access-help-link:focus {
	color: #fff;
	opacity: 1;
	text-decoration: underline;
}

.news-popup__dialog--help {
	width: min(420px, 100%);
	max-height: min(88vh, 720px);
	border-top-color: var(--gold);
	padding: 26px 22px 22px;
}
.news-popup__dialog--help .news-popup__title {
	margin-bottom: 8px;
	font-size: 18px;
}
.news-popup__dialog--help-ok {
	border-top-color: var(--brand);
}
.access-help-eyebrow {
	margin: 0 0 4px;
	font-size: 11px;
	font-weight: 700;
	color: var(--brand-700);
}
.access-help-intro {
	margin: 0 0 16px;
	font-size: 13px;
	line-height: 1.85;
	color: var(--muted);
	text-align: start;
}
.access-help-spam-hint {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.85;
	color: var(--ink-soft);
	text-align: start;
}
.access-help-error {
	margin: 0 0 14px;
	padding: 10px 12px;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.7;
	background: #fdecec;
	border: 1px solid #f3c4c4;
	color: #9b1c1c;
}
.access-help-error[hidden] { display: none !important; }
.access-help-form .field { margin-bottom: 14px; }
.access-help-form .field input {
	text-align: start;
	letter-spacing: normal;
}
.access-help-char-count {
	margin: -6px 0 16px;
	font-size: 11px;
	font-weight: 600;
	color: var(--muted);
	text-align: center;
}
.access-help-form .btn { margin-top: 2px; }

.field { margin-bottom: 18px; }
.field label { display: block; font-size: 13px; font-weight: 700; margin-bottom: 8px; }
.field input {
	width: 100%;
	height: 50px;
	border: 1.5px solid var(--line);
	background: #fafafb;
	padding: 0 14px;
	font-size: 16px;
	font-family: inherit;
	color: var(--ink);
	letter-spacing: 1px;
	direction: ltr;
	text-align: center;
	transition: border-color .15s, background .15s;
	outline: none;
}
.field input::placeholder { letter-spacing: normal; color: #b9bdc9; }
.field input:focus { border-color: var(--brand); background: #fff; }

.field--text input { direction: rtl; text-align: right; letter-spacing: normal; }
.field-hint {
	margin: 6px 0 0;
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
}

.password-rules {
	margin: 10px 0 0;
	padding: 12px 14px;
	border: 1px solid rgba(0, 107, 122, 0.22);
	border-radius: 10px;
	background: linear-gradient(180deg, #f4fbfc 0%, #f8fafb 100%);
}
.password-rules__title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 800;
	color: var(--brand-700);
	line-height: 1.6;
}
.password-rules__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--brand);
}
.password-rules__list {
	margin: 0;
	padding: 0 18px 0 0;
	list-style: none;
}
.password-rules__item {
	position: relative;
	margin: 0 0 6px;
	padding-right: 18px;
	font-size: 12px;
	font-weight: 600;
	color: #5b6474;
	line-height: 1.65;
}
.password-rules__item:last-child { margin-bottom: 0; }
.password-rules__item::before {
	content: "";
	position: absolute;
	right: 0;
	top: 0.55em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #c5cad3;
	transition: background-color .15s, box-shadow .15s;
}
.password-rules__item.is-ok {
	color: #1f6b48;
}
.password-rules__item.is-ok::before {
	background: #22a06b;
	box-shadow: 0 0 0 3px rgba(34, 160, 107, 0.18);
}
.password-rules__item.is-bad {
	color: #9b2330;
}
.password-rules__item.is-bad::before {
	background: #dc3545;
	box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.14);
}
.password-rules__item strong {
	font-weight: 800;
	color: inherit;
}
.field--password input.is-invalid {
	border-color: #dc3545;
	background: #fff8f8;
}
.field--password input.is-valid {
	border-color: #22a06b;
}

.field--text select {
	width: 100%;
	height: 50px;
	border: 1.5px solid var(--line);
	background: #fafafb;
	padding: 0 14px;
	font-size: 16px;
	font-family: inherit;
	font-weight: 700;
	color: var(--ink);
	direction: rtl;
	text-align: right;
	letter-spacing: normal;
	outline: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2.4' stroke-linecap='square'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left 14px center;
	transition: border-color .15s, background-color .15s;
}
.field--text select:focus { border-color: var(--brand); background-color: #fff; }
.field--role { margin-bottom: 18px; }

.field input.code {
	letter-spacing: 10px;
	font-size: 22px;
	font-weight: 800;
	padding: 0;
}
.field input.code::placeholder { letter-spacing: 6px; font-weight: 500; }

.field--otp label { display: block; margin-bottom: 10px; }

.otp-boxes {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	margin-top: 4px;
}

.otp-digit {
	width: 52px;
	height: 52px;
	max-width: 18vw;
	padding: 0;
	border: 1px solid var(--line, rgba(15, 23, 42, 0.14));
	border-radius: 10px;
	background: var(--field-bg, #f4f6f8);
	font-family: inherit;
	font-size: 22px;
	font-weight: 800;
	color: var(--ink);
	text-align: center;
	caret-color: var(--brand);
	transition: border-color .15s, background .15s, box-shadow .15s;
	outline: none;
}

.otp-digit:focus {
	border-color: var(--brand);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(30, 106, 117, 0.18);
}

html[data-theme="dark"] .otp-digit {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(255, 255, 255, 0.14);
}

html[data-theme="dark"] .otp-digit:focus {
	background: rgba(255, 255, 255, 0.1);
	box-shadow: 0 0 0 3px rgba(100, 200, 210, 0.2);
}

.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: start; }
.field-row .field { margin-bottom: 18px; }
@media (max-width: 480px) { .field-row { grid-template-columns: 1fr; } }

.btn {
	width: 100%;
	height: 52px;
	border: 0;
	background: var(--gold);
	color: var(--brand-700);
	font-size: 16px;
	font-weight: 800;
	font-family: inherit;
	cursor: pointer;
	transition: background .15s, transform .05s;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.btn:hover { background: var(--gold-600); }
.btn:active { transform: translateY(1px); }
.btn:disabled { background: #e7e9ee; color: var(--muted); cursor: default; }
.btn svg { width: 18px; height: 18px; }

.btn--ghost {
	background: transparent;
	color: var(--brand);
	border: 1.5px solid var(--brand-100);
	height: 48px;
	font-weight: 700;
	margin-top: 12px;
}
.btn--ghost:hover { background: var(--brand-050); }

.reset-channel-actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 8px;
}
.reset-channel-actions .btn {
	margin-top: 0;
}
.reset-channel-actions .btn .masked {
	font-weight: 800;
	margin-inline-start: 4px;
}

.alert {
	padding: 11px 14px;
	font-size: 12.5px;
	line-height: 1.8;
	margin-bottom: 16px;
	border: 1px solid;
	border-inline-start-width: 4px;
}
.alert--error { background: #fdf1f1; border-color: #f0c9c9; border-inline-start-color: #d64545; color: #8d2b2b; }
.alert--warn { background: var(--gold-050); border-color: var(--gold-100); border-inline-start-color: var(--gold); color: var(--gold-ink); }
.alert--info { background: var(--brand-050); border-color: var(--brand-100); border-inline-start-color: var(--brand); color: var(--brand-700); }

.auth-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 16px;
	margin-top: 18px;
}
.auth-actions form { margin: 0; }
.auth-link {
	background: none;
	border: 0;
	padding: 0;
	font: inherit;
	font-size: 12.5px;
	font-weight: 700;
	color: var(--brand);
	cursor: pointer;
	text-decoration: none;
}
.auth-link:hover { text-decoration: underline; }
.auth-link[disabled], .auth-link.is-disabled { color: var(--muted); cursor: default; text-decoration: none; }

.resend-line { margin-top: 6px; font-size: 12.5px; color: var(--muted); }
.resend-line b { color: var(--brand-700); font-variant-numeric: tabular-nums; }

.masked { direction: ltr; unicode-bidi: embed; font-weight: 700; }

.welcome { text-align: center; }
.welcome .avatar {
	width: 64px;
	height: 64px;
	margin: 0 auto 14px;
	background: var(--gold);
	color: var(--brand-700);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	font-weight: 800;
}
.welcome h3 { margin: 0 0 6px; font-size: 18px; font-weight: 800; }
.welcome p { margin: 0 0 18px; font-size: 13px; color: var(--muted); line-height: 1.9; }

.auth__foot { margin-top: 26px; font-size: 12px; opacity: .85; text-align: center; }
.auth__foot a { color: #fff; text-decoration: underline; }

.auth__foot.powered {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	opacity: 1;
}
.auth__foot.powered span { font-size: 11.5px; opacity: .8; }
.auth__foot.powered a {
	display: inline-flex;
	text-decoration: none;
	opacity: .92;
	transition: opacity .15s;
}
.auth__foot.powered a:hover { opacity: 1; }
.auth__foot.powered img {
	height: 30px;
	width: auto;
	display: block;
}

.auth__copybar {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	z-index: 6;
	background: var(--gold);
	color: var(--brand-700);
	text-align: center;
	padding: 6px 14px;
	font-size: 11.5px;
	font-weight: 600;
	line-height: 1.5;
}
.auth__copybar b { font-weight: 800; }
.auth__copybar a { color: var(--brand-700); text-decoration: none; }
.auth__copybar a:hover { text-decoration: underline; }
.auth__copybar-tel { unicode-bidi: plaintext; font-variant-numeric: tabular-nums; }

.auth__mobile-continue {
	display: none;
	width: auto;
	max-width: 100%;
	height: 38px;
	padding: 0 16px;
	margin: 14px auto 0;
	font-size: 13px;
	font-weight: 700;
	background: #fff;
	color: var(--brand-700);
	border: 1px solid rgba(255, 255, 255, .85);
	box-shadow: 0 6px 16px rgba(0, 0, 0, .1);
}
.auth__mobile-continue:hover { background: var(--brand-050); color: var(--brand-700); }

.content__mobbar {
	display: none;
	flex-shrink: 0;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 10px 14px;
	border-bottom: 1px solid var(--line);
	background: var(--paper);
}
.content__mobbar-btn {
	flex: 1 1 0;
	min-width: 0;
	padding: 10px 12px;
	border: 1px solid var(--brand-100);
	border-radius: 0;
	background: var(--brand-050);
	color: var(--brand-700);
	font: inherit;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.content__mobbar-btn:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}

@media (max-width: 992px) {
	html, body {
		height: 100%;
		height: 100dvh;
		height: var(--idx3-vvh, 100dvh);
		max-height: 100dvh;
		max-height: var(--idx3-vvh, 100dvh);
		overflow: hidden;
		background: var(--brand);
	}
	.stage {
		grid-template-columns: 1fr;
		min-height: 100%;
		min-height: 100dvh;
		min-height: var(--idx3-vvh, 100dvh);
		height: 100%;
		height: 100dvh;
		height: var(--idx3-vvh, 100dvh);
		max-height: 100dvh;
		max-height: var(--idx3-vvh, 100dvh);
		overflow: hidden;
	}
	.stage.idx3-mob-auth .auth__mobile-continue {
		display: flex;
		align-items: center;
		justify-content: center;
		position: fixed;
		left: 64px;
		right: 64px;
		bottom: var(--idx3-mob-dock-auth-bottom, 36px);
		z-index: 450;
		height: 40px;
		margin: 0;
		width: auto;
		max-width: none;
		padding: 0 8px;
		font-size: 12px;
		line-height: 1.2;
		text-align: center;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		border-radius: 0;
		pointer-events: auto;
		background: #fff;
		color: var(--brand-700);
		border: 1px solid var(--brand-100, #b8dce1);
		box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
	}
	.stage.idx3-mob-menu .auth__mobile-continue,
	.stage.idx3-mob-section .auth__mobile-continue {
		display: none !important;
	}
	.auth__version-iran {
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: 10px;
		margin-top: 10px;
	}
	.auth__version-iran .formcard-version {
		margin: 0;
		line-height: 1;
	}
	.auth__version-iran .auth__iran-logo {
		margin: 0;
	}
	.stage.idx3-mob-auth .scroll-top,
	.stage.idx3-mob-menu .scroll-top {
		display: none !important;
	}

	.stage .content { display: none; order: 0; }
	.stage.idx3-mob-auth {
		--idx3-mob-dock-auth-bottom: calc(env(safe-area-inset-bottom, 0px) + 36px);
	}
	.stage.idx3-mob-auth .content {
		display: block;
		position: fixed;
		inset: 0;
		pointer-events: none;
		background: transparent;
		border: 0;
		z-index: 8;
		min-height: 0;
		height: auto;
		overflow: visible;
	}
	.stage.idx3-mob-auth .content > *:not(.content__bottom-dock):not(.cms-web-support-widget--idx3) {
		display: none !important;
	}
	.stage.idx3-mob-auth .content .cms-web-support-widget--idx3 {
		display: block !important;
		pointer-events: auto;
	}
	.stage.idx3-mob-auth .content__bottom-dock {
		position: fixed;
		inset: 0;
		height: 0;
		pointer-events: none;
		z-index: 450;
	}
	.stage.idx3-mob-auth .content__help-fab {
		position: fixed;
		left: 14px;
		bottom: var(--idx3-mob-dock-auth-bottom, 36px);
		z-index: 450;
		width: 40px;
		height: 40px;
		min-width: 40px;
		min-height: 40px;
		background: #fff;
		color: var(--brand);
		border-color: var(--brand-100, #b8dce1);
		box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
	}
	.stage.idx3-mob-auth .content__help-fab:hover,
	.stage.idx3-mob-auth .content__help-fab:focus-visible {
		background: #fff;
		color: var(--brand-700);
		border-color: var(--brand);
		box-shadow: 0 10px 26px rgba(30, 106, 117, 0.22);
	}
	.stage.idx3-mob-auth .scroll-hint {
		display: none !important;
	}

	.stage.idx3-mob-menu .content,
	.stage.idx3-mob-section .content {
		display: flex;
		flex-direction: column;
		min-height: 0;
		height: 100%;
		height: 100dvh;
		height: var(--idx3-vvh, 100dvh);
		max-height: 100dvh;
		max-height: var(--idx3-vvh, 100dvh);
		border-top: 0;
		overflow: hidden;
		background: var(--paper);
	}
	.stage.idx3-mob-menu .content {
		justify-content: flex-start;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	.stage.idx3-mob-section .content {
		overflow: hidden;
	}

	.stage .auth {
		order: 0;
		padding: 68px 24px calc(44px + env(safe-area-inset-bottom, 0px));
		min-height: 0;
		height: 100%;
		height: 100dvh;
		height: var(--idx3-vvh, 100dvh);
		max-height: 100dvh;
		max-height: var(--idx3-vvh, 100dvh);
		overflow: hidden;
		justify-content: center;
	}
	.auth__inner {
		max-height: 100%;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	.auth__copybar {
		padding-bottom: calc(6px + env(safe-area-inset-bottom, 0px));
	}
	.stage.idx3-mob-menu .auth,
	.stage.idx3-mob-section .auth { display: none; }

	.stage.idx3-mob-menu .content__mobbar,
	.stage.idx3-mob-section .content__mobbar { display: flex; }
	.stage.idx3-mob-menu .content__mobbar-btn--menu { display: none; }

	.stage.idx3-mob-menu .content__mobbar {
		padding: 8px 14px 6px;
	}
	.stage.idx3-mob-menu .content__bar { display: none; }
	.stage.idx3-mob-menu .scroll { display: none; }
	.stage.idx3-mob-menu .quick-nav {
		flex: 0 0 auto;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: auto;
		align-content: start;
		gap: 8px;
		padding: 4px 16px 16px;
		margin-top: 0;
		border-bottom: 0;
	}
	.stage.idx3-mob-menu .quick-nav__item {
		min-height: 68px;
		padding: 8px 8px;
		border-radius: 0;
	}
	.stage.idx3-mob-menu .quick-nav__icon {
		width: 36px;
		height: 36px;
		border-radius: 0;
	}
	.stage.idx3-mob-menu .quick-nav__icon svg { width: 18px; height: 18px; }
	.stage.idx3-mob-menu .quick-nav__label {
		margin: 6px 0 0;
		font-size: 11px;
		font-weight: 700;
		line-height: 1.35;
	}
	.stage.idx3-mob-section .quick-nav { display: none; }
	.stage.idx3-mob-section .content__bar { display: flex; }
	.stage.idx3-mob-section .scroll {
		display: block;
		flex: 1 1 auto;
		min-height: 0;
		max-height: none;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		padding: 12px 22px 88px;
	}

	.stage.idx3-mob-section .content__bottom-dock {
		position: fixed;
		inset-inline: 0;
		bottom: 0;
		height: 0;
		pointer-events: none;
		z-index: 440;
	}
	.stage.idx3-mob-section .content__help-fab {
		position: fixed;
		left: 14px;
		bottom: 10px;
		z-index: 450;
		width: 52px;
		height: 52px;
		min-width: 52px;
		min-height: 52px;
	}
	.stage.idx3-mob-section .scroll-hint {
		display: none;
	}
	.stage.idx3-mob-section .scroll-top {
		position: fixed;
		left: 50%;
		bottom: 16px;
		transform: translateX(-50%);
		z-index: 450;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		display: flex;
	}
	.stage.idx3-mob-section .scroll-top:active {
		transform: translateX(-50%) translateY(1px);
	}
	.stage.idx3-mob-section .content.no-scroll .scroll-top,
	.stage.idx3-mob-section .content.is-scrolled .scroll-top {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.stage.idx3-mob-section .scroll-top[hidden] {
		display: flex;
	}

	.content { order: 2; border-inline-start: 0; border-top: 4px solid var(--brand); }
	.scroll { max-height: none; padding: 12px 22px 88px; }
	.auth__iran-logo img { max-height: 42px; max-width: min(140px, 56vw); }
	.content__help-fab {
		left: 12px;
		bottom: 10px;
		width: 52px;
		height: 52px;
		min-width: 52px;
		min-height: 52px;
	}
	.content__help-fab-svg { width: 24px; height: 24px; }
	.content__bar { padding: 8px 16px; }
	.quick-nav {
		grid-template-columns: repeat(10, minmax(0, 1fr));
		gap: 5px;
		padding: 8px 10px 10px;
	}
	.quick-nav__item {
		min-height: 60px;
		padding: 6px 2px 7px;
		border-radius: 0;
	}
	.quick-nav__icon { width: 30px; height: 30px; border-radius: 0; }
	.quick-nav__icon svg { width: 16px; height: 16px; }
	.cards { grid-template-columns: 1fr; }
	.feature-btns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
}
@media (max-width: 520px) {
	.stage.idx3-mob-menu .quick-nav {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 2px 12px 16px;
	}
	.stage.idx3-mob-menu .quick-nav__item {
		min-height: 64px;
		padding: 8px 6px;
	}
	.stage.idx3-mob-menu .quick-nav__icon {
		width: 32px;
		height: 32px;
	}
	.stage.idx3-mob-menu .quick-nav__icon svg { width: 16px; height: 16px; }
	.stage.idx3-mob-menu .quick-nav__label { font-size: 10px; }

	.quick-nav {
		grid-template-columns: repeat(10, minmax(0, 1fr));
		gap: 4px;
		padding: 8px 6px 10px;
	}
	.quick-nav__item {
		padding: 5px 1px;
		border-radius: 0;
	}
	.quick-nav__icon {
		width: 28px;
		height: 28px;
		border-radius: 0;
	}
	.quick-nav__icon svg { width: 15px; height: 15px; }
	.quick-nav__label { font-size: 9px; margin-top: 4px; }
}
@media (min-width: 993px) {
	.content { height: 100vh; display: flex !important; }
	.auth { height: 100vh; display: flex !important; }
	.auth__mobile-continue { display: none !important; }
	.content__mobbar { display: none !important; }
}

.wf-toolbar {
	position: absolute;
	top: 0;
	inset-inline: 0;
	z-index: 7;
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 18px;
}
.wf-tbtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	height: 36px;
	min-width: 36px;
	padding: 0 10px;
	font-family: inherit;
	font-size: 12.5px;
	font-weight: 700;
	color: #fff;
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .22);
	cursor: pointer;
	transition: background .15s, border-color .15s;
}
.wf-tbtn:hover { background: rgba(255, 255, 255, .18); }
.wf-tbtn:active { transform: translateY(1px); }
.wf-tbtn svg { width: 18px; height: 18px; }
.wf-tbtn .icon-sun { display: none; }
html[data-theme="dark"] .wf-tbtn .icon-moon { display: none; }
html[data-theme="dark"] .wf-tbtn .icon-sun { display: inline; }
.wf-lang-wrap { position: relative; }
.wf-lang-flag { display: inline-flex; }
.wf-lang-flag img { display: block; width: 18px; height: 18px; object-fit: cover; }
.wf-lang-label { line-height: 1; }
.wf-lang-menu {
	position: absolute;
	top: calc(100% + 6px);
	inset-inline-start: 0;
	z-index: 20;
	margin: 0;
	padding: 6px;
	min-width: 168px;
	list-style: none;
	background: var(--paper);
	border: 1px solid var(--line);
	box-shadow: 0 12px 30px rgba(30, 106, 117, .22);
}
.wf-lang-menu[hidden] { display: none; }
.wf-lang-item {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 9px 10px;
	font-family: inherit;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--ink);
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: start;
}
.wf-lang-item:hover { background: var(--brand-050); }
.wf-lang-item.is-active { background: var(--brand-050); color: var(--brand-700); }
.wf-lang-sym { display: inline-flex; }
.wf-lang-sym img { display: block; width: 20px; height: 20px; object-fit: cover; }

.wf-tz { position: relative; }
.wf-tbtn--tz { gap: 8px; height: auto; min-height: 36px; padding-top: 5px; padding-bottom: 5px; }
.wf-tz-ico { width: 16px; height: 16px; flex-shrink: 0; }
.wf-tz-stack { display: inline-flex; flex-direction: column; align-items: center; gap: 2px; }
.wf-tz-clock {
	direction: ltr;
	font-variant-numeric: tabular-nums;
	font-size: 12.5px;
	line-height: 1;
	min-width: 58px;
	text-align: center;
}
.wf-tz-flag { display: block; width: 18px; height: 18px; object-fit: cover; flex-shrink: 0; }
.wf-tz-label { line-height: 1; }
.wf-tz-date {
	font-size: 9.5px;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	opacity: .85;
}
.wf-tz-menu {
	inset-inline-start: auto;
	inset-inline-end: 0;
	min-width: 220px;
	max-height: 320px;
	overflow-y: auto;
}
@media (max-width: 560px) {
	.wf-tz-label { display: none; }
	.wf-tz-clock { min-width: 52px; }
}

html[data-theme="dark"] {
	--ink: #e6ebf3;
	--ink-soft: #b6c0cf;
	--muted: #8a94a6;
	--line: #2b3852;
	--paper: #141d2b;
	--bg: #0d1420;
	--brand: #287884;
	--brand-600: #1e6a75;
	--brand-700: #1e6a75;
	--brand-050: #152d31;
	--brand-100: #1e4248;
}
html[data-theme="dark"] body { background: var(--bg); color: var(--ink); }
html[data-theme="dark"] .formcard {
	background: #141d2b;
	color: var(--ink);
}
html[data-theme="dark"] .field input {
	background: #0f1825;
	border-color: #2b3852;
	color: var(--ink);
}
html[data-theme="dark"] .field input::placeholder { color: #5a6678; }
html[data-theme="dark"] .field input:focus { background: #0f1825; border-color: var(--gold); }
html[data-theme="dark"] .field-hint { color: #8a94a6; }
html[data-theme="dark"] .password-rules {
	border-color: rgba(138, 212, 222, 0.25);
	background: linear-gradient(180deg, #0f1a24 0%, #121e2a 100%);
}
html[data-theme="dark"] .password-rules__title { color: #8ad4de; }
html[data-theme="dark"] .password-rules__item { color: #9aa8b8; }
html[data-theme="dark"] .password-rules__item.is-ok { color: #6dd4a0; }
html[data-theme="dark"] .password-rules__item.is-bad { color: #f08796; }
html[data-theme="dark"] .field--password input.is-invalid {
	border-color: #e35d6a;
	background: #221318;
}
html[data-theme="dark"] .field--password input.is-valid { border-color: #3ecf8e; }
html[data-theme="dark"] .field--text select {
	background-color: #0f1825;
	border-color: #2b3852;
	color: var(--ink);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238ad4de' stroke-width='2.4' stroke-linecap='square'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
}
html[data-theme="dark"] .field--text select:focus {
	background-color: #0f1825;
	border-color: var(--gold);
}
html[data-theme="dark"] .formcard p.hint .masked { color: #8ad4de; }
html[data-theme="dark"] .auth-access-help-link,
html[data-theme="dark"] .auth-access-help-link:hover,
html[data-theme="dark"] .auth-access-help-link:focus { color: #fff; }
html[data-theme="dark"] .access-help-error {
	background: #2a1718;
	border-color: #5a2b2b;
	color: #f3b6b6;
}
html[data-theme="dark"] .btn--ghost {
	color: #e6ebf3;
	border-color: #2a4a50;
	background: transparent;
}
html[data-theme="dark"] .btn--ghost:hover { background: rgba(255, 255, 255, .06); }
html[data-theme="dark"] .auth-link { color: #8ad4de; }
html[data-theme="dark"] .alert--error { background: #2a1718; border-color: #5a2b2b; color: #f3b6b6; }
html[data-theme="dark"] .alert--info { background: #142a2e; border-color: #287884; color: #d4eef2; }
html[data-theme="dark"] .scroll-hint { box-shadow: 0 8px 20px rgba(0, 0, 0, .5); }
html[data-theme="dark"] .content a,
html[data-theme="dark"] .scroll a { color: #8ad4de; }
html[data-theme="dark"] .quick-nav {
	background: linear-gradient(180deg, #101820 0%, #0f1825 100%);
	border-bottom-color: #2a3444;
}
html[data-theme="dark"] .quick-nav__item {
	background: #142a2e;
	border-color: #1e4a52;
	color: #d4eef2;
}
html[data-theme="dark"] .quick-nav__icon {
	background: #0f1f22;
	border-color: #1e4a52;
	color: #8ad4de;
}
html[data-theme="dark"] .quick-nav__item:hover {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}
html[data-theme="dark"] .quick-nav__item.is-active,
html[data-theme="dark"] .quick-nav__item.is-active:hover {
	background: var(--brand);
	border-color: var(--brand-600);
	color: #fff;
}
html[data-theme="dark"] .quick-nav__item.is-active .quick-nav__icon,
html[data-theme="dark"] .quick-nav__item.is-active:hover .quick-nav__icon {
	background: rgba(255, 255, 255, .14);
	border-color: rgba(255, 255, 255, .35);
	color: #fff;
}
html[data-theme="dark"] .feature-btn {
	background: rgba(138, 212, 222, .08);
	border-color: rgba(138, 212, 222, .22);
	color: #8ad4de;
}
html[data-theme="dark"] .feature-btn__icon {
	background: #14212e;
	border-color: rgba(138, 212, 222, .22);
	color: #8ad4de;
}
html[data-theme="dark"] .feature-btn:hover,
html[data-theme="dark"] .feature-btn:focus-visible {
	background: var(--brand);
	border-color: var(--brand);
	color: #fff;
}
html[data-theme="dark"] .feature-btn--soon:hover,
html[data-theme="dark"] .feature-btn--soon:focus-visible {
	background: rgba(138, 212, 222, .08);
	border-color: rgba(138, 212, 222, .22);
	color: #8ad4de;
}
html[data-theme="dark"] .feature-btn--soon:hover .feature-btn__icon,
html[data-theme="dark"] .feature-btn--soon:focus-visible .feature-btn__icon {
	background: #14212e;
	border-color: rgba(138, 212, 222, .22);
	color: #8ad4de;
}
html[data-theme="dark"] .resend-line b { color: #8ad4de; }
