	.niva-domain-hero {
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		background: var(--primary);
		padding: 2.5rem 0 2rem;
	}
	.niva-domain-hero-inner {
		max-width: 71.25rem;
		margin: 0 auto;
		padding: 0 1.25rem;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 2rem;
		direction: rtl;
	}
	.niva-domain-hero-text { flex: 1 1 22rem; min-width: 0; }
	.niva-domain-hero-badge {
		display: inline-flex;
		align-items: center;
		gap: .5rem;
		background: #fff;
		color: #08111b;
		font-weight: 700;
		font-size: .8125rem;
		padding: .375rem .875rem;
		border-radius: 2rem;
		margin-bottom: 1.25rem;
	}
	.niva-domain-hero-text h1 {
		font-size: 1.625rem;
		font-weight: 800;
		line-height: 1.3;
		margin: 0 0 1.25rem;
		color: #08111b;
	}
	.niva-domain-hero-checks { list-style: none; margin: 0 0 1.75rem; padding: 0; }
	.niva-domain-hero-checks li {
		display: flex;
		align-items: center;
		gap: .625rem;
		font-weight: 600;
		color: #08111b;
		margin-bottom: .75rem;
		font-size: 1rem;
	}
	.niva-domain-hero-checks li:before {
		content: '✓';
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 1.5rem;
		height: 1.5rem;
		border-radius: 50%;
		background: #08111b;
		color: var(--primary);
		font-size: .8125rem;
		flex-shrink: 0;
	}
	.niva-domain-hero-image { flex: 1 1 18rem; min-width: 0; text-align: center; }
	.niva-domain-mock { width: 100%; max-width: 26rem; margin: 0 auto; direction: rtl; }
	.niva-domain-mock-win { background: #fff; border-radius: .9375rem; overflow: hidden; border: 1px solid var(--black-90); }
	.niva-domain-mock-bar { display: flex; align-items: center; gap: .625rem; padding: .875rem 1rem; background: var(--gray); border-bottom: 1px solid var(--black-90); direction: ltr; }
	.niva-domain-mock-bar svg { color: var(--black-50); flex-shrink: 0; }
	.niva-domain-mock-bar span { font-size: .8125rem; color: var(--black-30); }
	.niva-domain-mock-results { padding: .375rem .875rem; }
	.niva-domain-mock-row { display: flex; align-items: center; gap: .75rem; padding: .875rem 0; border-bottom: 1px solid var(--black-95); }
	.niva-domain-mock-row:last-child { border-bottom: none; }
	.niva-domain-mock-badge { flex-shrink: 0; width: 1.75rem; height: 1.75rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(0,202,73,.12); color: var(--success, #00ca49); }
	.niva-domain-mock-badge-danger { background: rgba(223,31,31,.12); color: var(--danger, #df1f1f); }
	.niva-domain-mock-row-name { flex: 1 1 auto; min-width: 0; font-size: .9375rem; font-weight: 700; color: var(--black); direction: ltr; text-align: right; }
	.niva-domain-mock-row-status { font-size: .8125rem; font-weight: 700; color: var(--black-50); white-space: nowrap; flex-shrink: 0; }
	.niva-domain-mock-row-status-available { color: var(--success, #00ca49); }
	.niva-domain-mock-row-status-taken { color: var(--danger, #df1f1f); }
	.niva-domain-search {
		background: #fff;
		border-radius: .75rem;
		display: flex;
		align-items: center;
		padding: .375rem .375rem .375rem .5rem;
		max-width: 34rem;
		box-shadow: 0 .5rem 1.5rem rgba(8,17,27,.12);
	}
	.niva-domain-search input {
		flex: 1;
		border: none;
		outline: none;
		background: transparent;
		font-size: 1rem;
		padding: .625rem 0;
		direction: ltr;
		text-align: right;
	}
	.niva-domain-search button {
		background: #08111b;
		color: var(--primary);
		border: none;
		border-radius: .5rem;
		padding: .75rem 1.5rem;
		font-weight: 700;
		font-size: .9375rem;
		cursor: pointer;
		flex-shrink: 0;
	}
	/* TLD price carousel — replaces the old flat trust bar. Design borrowed
	   from the client-panel "پسوندهای تخفیف‌دار" widget: a white rounded bar
	   with a title, a "view more" link and a horizontally scrolling row of
	   price cards. We show real per-TLD registration prices from WHMCS's own
	   $featuredTlds (no fabricated "before" price — there's no real discount
	   data behind it), so the card only carries a single, honest price. */
	.niva-tld-band {
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		background: var(--gray, #f2f2f2);
		padding: 1.5rem 0;
	}
	.niva-tld-carousel {
		max-width: 71.25rem;
		margin: 0 auto;
		padding: 1.25rem 1.5rem;
		display: flex;
		align-items: center;
		gap: 1.5rem;
		background: #fff;
		border-radius: .75rem;
		direction: rtl;
	}
	.niva-tld-carousel-title {
		flex-shrink: 0;
		margin: 0;
		font-size: 1.25rem;
		font-weight: 800;
		line-height: 1.5;
		color: #08111b;
	}
	.niva-tld-carousel-title span {
		display: block;
		color: #B8860B;
	}
	.niva-tld-carousel-divider {
		align-self: stretch;
		width: 1px;
		background: #e5e7eb;
		flex-shrink: 0;
	}
	.niva-tld-carousel-track {
		flex: 1;
		min-width: 0;
		display: flex;
		gap: .875rem;
		overflow-x: auto;
		scroll-behavior: smooth;
		scrollbar-width: none;
		cursor: grab;
		touch-action: pan-y;
		user-select: none;
		-webkit-user-select: none;
	}
	.niva-tld-carousel-track::-webkit-scrollbar { display: none; }
	.niva-tld-carousel-track.is-dragging {
		cursor: grabbing;
		scroll-behavior: auto;
	}
	.niva-tld-card {
		flex: 0 0 auto;
		display: flex;
		align-items: center;
		gap: .625rem;
		border: 1px solid #e5e7eb;
		border-radius: .625rem;
		padding: .75rem 1.125rem;
		transition: border-color .15s ease, background-color .15s ease;
	}
	.niva-tld-card:hover {
		border-color: var(--primary);
		background: var(--yellow-90, #fff9e6);
	}
	.niva-tld-card-ext {
		font-size: 1.3125rem;
		font-weight: 800;
		color: #08111b;
		white-space: nowrap;
	}
	.niva-tld-card-ext span {
		color: var(--primary-shade, #B8860B);
	}
	.niva-tld-card-price {
		font-size: .9375rem;
		font-weight: 700;
		color: #08111b;
		white-space: nowrap;
	}
	.niva-tld-carousel-nav {
		flex-shrink: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 1.75rem;
		height: 1.75rem;
		border-radius: 50%;
		border: 1px solid #e5e7eb;
		background: #fff;
		cursor: pointer;
	}
	.niva-tld-carousel-nav:hover {
		background: var(--gray, #f6f6f6);
	}
	.niva-tld-carousel-more {
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		gap: .375rem;
		color: #08111b;
		font-weight: 700;
		font-size: .875rem;
		text-decoration: none;
		white-space: nowrap;
	}
	.niva-tld-carousel-more:hover {
		color: var(--primary-shade, #B8860B);
	}
	@media (max-width: 61.9375rem) {
		.niva-tld-carousel {
			flex-wrap: wrap;
			padding: 1.25rem;
			/* Title and "مشاهده بیشتر" are the only two items left on this
			   first flex line (divider/nav are hidden, the track is pushed
			   to its own line below via order:4) — space-between pins the
			   title to the RTL start (right) and pushes the link all the
			   way to the opposite end (left) instead of them sitting
			   bunched together at the right edge. */
			justify-content: space-between;
		}
		.niva-tld-carousel-divider {
			display: none;
		}
		.niva-tld-carousel-title {
			/* The color-split span below defaults to display:block, which
			   forced "پسوندهای" / "پرطرفدار" onto two lines even though
			   there's plenty of width for them together on mobile. */
			font-size: 1.375rem;
		}
		.niva-tld-carousel-title span {
			display: inline;
		}
		.niva-tld-carousel-track {
			flex: 1 1 100%;
			order: 4;
		}
		.niva-tld-carousel-nav {
			display: none;
		}
	}

	.niva-domain-table-wrap { direction: rtl; overflow-x: auto; margin: 2.5rem 0; }
	.niva-domain-table { width: 100%; border-collapse: collapse; min-width: 45rem; }
	.niva-domain-table thead th {
		text-align: right;
		font-size: .8125rem;
		color: var(--black-50);
		font-weight: 700;
		padding: .75rem 1rem;
		border-bottom: 2px solid var(--black-90);
	}
	.niva-domain-table tbody td {
		padding: 1rem;
		border-bottom: 1px solid var(--black-90);
		font-size: .9375rem;
		vertical-align: middle;
	}
	.niva-domain-ext { font-weight: 800; font-size: 1.0625rem; direction: ltr; text-align: right; white-space: nowrap; }
	.niva-domain-badge {
		display: inline-block;
		margin-left: 4.5rem;
		font-size: .625rem;
		font-weight: 700;
		padding: .1875rem .5rem;
		border-radius: 1rem;
		vertical-align: middle;
		direction: rtl;
	}
	.niva-domain-badge-popular { background: #fff3cc; color: #8a6100; }
	.niva-domain-badge-sale { background: #fde2e2; color: #b42318; }
	.niva-domain-action { text-align: center; }
	/* On mobile, only دامنه / ثبت / دکمه are useful at a glance — تمدید,
	   انتقال and توضیحات forced a wide horizontally-scrolling table that was
	   hard to scan. Hide those three columns and let the rest fit natively. */
	@media (max-width: 47.9375rem) {
		.niva-domain-table-wrap { overflow-x: visible; }
		.niva-domain-table { min-width: 0; }
		.niva-domain-table th:nth-child(3),
		.niva-domain-table th:nth-child(4),
		.niva-domain-table th:nth-child(5),
		.niva-domain-table td:nth-child(3),
		.niva-domain-table td:nth-child(4),
		.niva-domain-table td:nth-child(5) { display: none; }
		.niva-domain-table thead th, .niva-domain-table tbody td { padding: .625rem .5rem; }
		.niva-domain-ext { font-size: .9375rem; }
		.niva-domain-badge { margin-left: .5rem; }
	}
	.niva-domain-btn { white-space: nowrap; }
	.niva-domain-price-new { display: block; font-weight: 800; color: #08111b; }
	.niva-domain-price-old { display: block; text-decoration: line-through; color: var(--black-50); font-size: .75rem; margin-bottom: .125rem; }
	.niva-domain-price-na { color: var(--black-50); }
	.niva-domain-note { color: var(--black-50); font-size: .8125rem; }
	@media (max-width: 47.9375rem) {
		.niva-domain-hero-text h1 { font-size: 1.5rem; }
	}

	.niva-domain-services {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 1.25rem;
		direction: rtl;
	}
	@media (max-width: 47.9375rem) { .niva-domain-services { grid-template-columns: 1fr; } }
	.niva-domain-service {
		display: flex;
		gap: 1rem;
		align-items: center;
		background: #fff;
		border: 1px solid #e5e7eb;
		border-radius: .75rem;
		padding: 1.25rem;
		box-shadow: 0 4px 15px rgba(0, 0, 0, .05);
		text-align: right;
		transition: transform .2s ease, box-shadow .2s ease;
	}
	.niva-domain-service:hover {
		transform: translateY(-4px);
		box-shadow: 0 10px 25px rgba(0, 0, 0, .08);
	}
	.niva-domain-service-icon {
		flex-shrink: 0;
		width: 3rem;
		height: 3rem;
		border-radius: .75rem;
		background: var(--yellow-90, #fff9e6);
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.375rem;
		line-height: 1;
	}
	.niva-domain-service-icon { color: #B8860B; }
	.niva-domain-service h3 { margin: 0 0 .5rem; font-size: 1.0625rem; font-weight: 700; text-align: right; }
	.niva-domain-service p { margin: 0; color: #4b5563; font-size: .9375rem; line-height: 1.7; text-align: right; }

	.niva-domain-services-band {
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		background: #f8fafc;
		padding: 3rem 0;
		margin-top: 3rem;
	}

	.niva-domain-banner {
		width: 100vw;
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		background: var(--primary);
		color: #08111b;
		padding: 3rem 0;
		margin-top: 3rem;
	}
	.niva-domain-banner-inner { max-width: 71.25rem; margin: 0 auto; padding: 0 1.25rem; direction: rtl; }
	.niva-domain-banner h2 { text-align: center; font-size: 1.5rem; margin: 0 0 2rem; color: #08111b; font-weight: 800; }
	.niva-domain-banner-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
	@media (max-width: 61.9375rem) { .niva-domain-banner-grid { grid-template-columns: 1fr; } }
	.niva-domain-banner-item {
		background: #fff;
		border-radius: .75rem;
		padding: 1.5rem;
	}
	.niva-domain-banner-item h3 { font-size: 1.0625rem; margin: 0 0 .5rem; color: #08111b; font-weight: 800; }
	.niva-domain-banner-item p { margin: 0; color: #52585f; font-size: .9375rem; line-height: 1.7; }

/* Domain pricing table (domain/pricing, #tableDomainPricing): 7 columns
   (پسوند/دسته‌بندی/ثبت/انتقال/تمدید دامنه/مهلت تمدید عادی/جریمه بازگردانی)
   ran ~480px wide with no responsive handling at all, overflowing a
   375px mobile viewport on both sides. Drops انتقال، مهلت تمدید عادی و
   جریمه بازگردانی (secondary info) below 768px, keeping پسوند/دسته‌بندی/
   ثبت/تمدید دامنه — same column-hiding technique already used for the
   other clientarea list tables (see niva-clientarea.css). */
@media (max-width: 47.9375rem) {
	#tableDomainPricing th:nth-child(4),
	#tableDomainPricing td:nth-child(4),
	#tableDomainPricing th:nth-child(6),
	#tableDomainPricing td:nth-child(6),
	#tableDomainPricing th:nth-child(7),
	#tableDomainPricing td:nth-child(7) {
		display: none;
	}
	#tableDomainPricing th,
	#tableDomainPricing td {
		padding: 0.5rem 0.375rem;
		font-size: 0.8125rem;
	}
	#tableDomainPricing {
		table-layout: fixed;
		width: 100% !important;
	}
	.dataTables_wrapper .listtable {
		width: 100% !important;
	}
}
