/* RankHigher Tools: shared styles. Everything is scoped under .rht so the theme is untouched.
   Brand colours come from Settings > RankHigher Tools as --rht-c1 and --rht-c2. */

.rht {
	--rht-c1: #1f4fd1;
	--rht-c2: #0b1f5c;
	--rht-action: var(--rht-c1);
	--rht-ink: #14213d;
	--rht-muted: #5b6476;
	--rht-line: #dde2ea;
	--rht-surface: #f4f6f9;
	--rht-fail: #b42318;
	--rht-warn: #9a5b06;
	--rht-pass: #1e7b4f;
	--rht-radius: 12px;

	color: var(--rht-ink);
	font-size: 16px;
	line-height: 1.55;
	max-width: 1080px;
	margin: 0 auto;
	text-align: left;
}

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

.rht p,
.rht h2,
.rht h3,
.rht h4,
.rht ul,
.rht ol,
.rht dl,
.rht dd,
.rht table {
	margin: 0;
	padding: 0;
}

.rht ul,
.rht ol {
	list-style: none;
}

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

/* ================================================================ Hero */

.rht .rht-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(36px, 6vw, 72px) clamp(20px, 5vw, 64px);
	border-radius: 20px;
	background: linear-gradient(135deg, var(--rht-c1) 0%, var(--rht-c2) 100%);
	color: #fff;
	text-align: center;
}

.rht .rht-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 12% 18%, rgba(255, 255, 255, 0.16) 0, transparent 38%),
		radial-gradient(circle at 92% 88%, rgba(255, 255, 255, 0.10) 0, transparent 34%);
	pointer-events: none;
}

.rht .rht-hero > * {
	position: relative;
}

.rht .rht-hero__title {
	max-width: 760px;
	margin: 0 auto;
	color: #fff !important;
	font-size: clamp(30px, 4.6vw, 50px);
	line-height: 1.12;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.rht .rht-hero__sub {
	max-width: 620px;
	margin: 14px auto 0;
	color: rgba(255, 255, 255, 0.86);
	font-size: clamp(16px, 1.8vw, 19px);
}

.rht .rht-form {
	max-width: 760px;
	margin: 30px auto 0;
	display: grid;
	gap: 12px;
}

.rht .rht-inputrow {
	display: flex;
	padding: 6px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 18px 40px rgba(6, 14, 40, 0.28);
}

.rht .rht-inputrow:focus-within {
	box-shadow: 0 18px 40px rgba(6, 14, 40, 0.28), 0 0 0 4px rgba(255, 255, 255, 0.45);
}

.rht .rht-input {
	flex: 1;
	min-width: 0;
	height: 56px;
	padding: 0 16px;
	border: 0 !important;
	outline: none;
	box-shadow: none !important;
	background: transparent !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 17px;
}

.rht .rht-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 0 28px;
	border: 0;
	border-radius: 10px;
	background: var(--rht-action) !important;
	color: #fff !important;
	font: inherit;
	font-weight: 700;
	font-size: 16px;
	text-decoration: none !important;
	cursor: pointer;
	white-space: nowrap;
}

.rht .rht-btn:hover {
	filter: brightness(0.9);
}

.rht .rht-btn[disabled] {
	opacity: 0.75;
	cursor: progress;
}

.rht .rht-kwrow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
}

.rht .rht-kwrow__label {
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	font-weight: 600;
}

.rht .rht-kwrow__label span {
	font-weight: 400;
	opacity: 0.8;
}

.rht .rht-kwinput {
	width: min(320px, 100%);
	height: 40px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, 0.35) !important;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.12) !important;
	color: #fff !important;
	font: inherit;
	font-size: 15px;
	box-shadow: none !important;
	outline: none;
}

.rht .rht-kwinput::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.rht .rht-kwinput:focus {
	border-color: #fff !important;
	background: rgba(255, 255, 255, 0.2) !important;
}

.rht .rht-hero__trust {
	margin-top: 18px;
	color: rgba(255, 255, 255, 0.75);
	font-size: 14px;
}

.rht .rht-btn:focus-visible,
.rht a:focus-visible,
.rht summary:focus-visible {
	outline: 3px solid var(--rht-action);
	outline-offset: 3px;
}

.rht .rht-hero .rht-btn:focus-visible {
	outline-color: #fff;
}

/* ============================================================ Status */

.rht .rht-status:not(:empty) {
	margin-top: 22px;
}

.rht .rht-loading {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	border-radius: 10px;
	background: var(--rht-surface);
	color: var(--rht-muted);
}

.rht .rht-spinner {
	flex: none;
	width: 20px;
	height: 20px;
	border: 3px solid var(--rht-line);
	border-top-color: var(--rht-action);
	border-radius: 50%;
	animation: rht-spin 0.8s linear infinite;
}

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

.rht .rht-error {
	padding: 14px 18px;
	border-left: 4px solid var(--rht-fail);
	border-radius: 0 10px 10px 0;
	background: #fdf1f0;
	color: var(--rht-fail);
	font-weight: 500;
}

/* ============================================================ Report */

.rht .rht-results {
	margin-top: 44px;
	scroll-margin-top: 90px;
}

.rht .rht-example {
	margin-bottom: 28px;
	padding: 14px 18px;
	border: 1px dashed var(--rht-action);
	border-radius: 10px;
	background: #f5f8ff;
	background: color-mix(in srgb, var(--rht-action) 6%, #fff);
	color: var(--rht-ink);
}

.rht .rht-report {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 32px;
	align-items: center;
	padding-bottom: 28px;
}

.rht .rht-score {
	position: relative;
	width: 150px;
	height: 150px;
	display: grid;
	place-content: center;
	text-align: center;
}

.rht .rht-score svg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.rht .rht-score__bg {
	fill: none;
	stroke: var(--rht-surface);
	stroke-width: 10;
}

.rht .rht-score__fg {
	fill: none;
	stroke: currentColor;
	stroke-width: 10;
	stroke-linecap: round;
}

.rht .rht-score__num {
	font-size: 48px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.03em;
	font-variant-numeric: tabular-nums;
}

.rht .rht-score__of {
	margin-top: 4px;
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-score--good { color: var(--rht-pass); }
.rht .rht-score--mid { color: var(--rht-warn); }
.rht .rht-score--low { color: var(--rht-fail); }

.rht .rht-report__text {
	display: grid;
	gap: 10px;
}

.rht .rht-report__verdict {
	color: var(--rht-ink) !important;
	font-size: clamp(22px, 2.8vw, 30px);
	line-height: 1.2;
	font-weight: 800;
	outline: none;
}

.rht .rht-report__counts {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 20px;
	font-weight: 700;
}

.rht .rht-count::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-right: 7px;
	border-radius: 3px;
}

.rht .rht-count--fail::before { background: var(--rht-fail); }
.rht .rht-count--warn::before { background: var(--rht-warn); }
.rht .rht-count--pass::before { background: var(--rht-pass); }

.rht .rht-report__url {
	color: var(--rht-muted);
	font-size: 14px;
	overflow-wrap: anywhere;
}

/* Stats (definition list) */

.rht .rht-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 0 16px;
}

.rht .rht-stats > div {
	padding: 10px 0;
}

.rht .rht-stats dt {
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-stats dd {
	font-size: 17px;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

.rht .rht-facts {
	padding: 6px 0;
	border-top: 1px solid var(--rht-line);
	border-bottom: 1px solid var(--rht-line);
}

.rht .rht-facts dd {
	font-size: 20px;
}

.rht .rht-section-title {
	margin: 48px 0 18px;
	color: var(--rht-ink) !important;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 800;
}

/* Category scores */

.rht .rht-cats {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 12px;
}

.rht .rht-cat {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 6px 12px;
	padding: 16px 18px;
	border: 1px solid var(--rht-line);
	border-radius: var(--rht-radius);
	background: #fff;
}

.rht .rht-cat__label {
	font-weight: 700;
	font-size: 15px;
}

.rht .rht-cat__score {
	font-size: 20px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.rht .rht-cat__bar {
	grid-column: 1 / -1;
	height: 6px;
	border-radius: 6px;
	background: var(--rht-surface);
	overflow: hidden;
}

.rht .rht-cat__bar i {
	display: block;
	height: 100%;
	border-radius: 6px;
	background: currentColor;
}

.rht .rht-cat__meta {
	grid-column: 1 / -1;
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-cat--good .rht-cat__score,
.rht .rht-cat--good .rht-cat__bar { color: var(--rht-pass); }
.rht .rht-cat--mid .rht-cat__score,
.rht .rht-cat--mid .rht-cat__bar { color: var(--rht-warn); }
.rht .rht-cat--low .rht-cat__score,
.rht .rht-cat--low .rht-cat__bar { color: var(--rht-fail); }

/* Action list */

.rht .rht-group {
	margin-bottom: 36px;
}

.rht .rht-group__title {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--rht-ink) !important;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 800;
}

.rht .rht-pill {
	display: inline-block;
	min-width: 28px;
	padding: 1px 9px;
	border-radius: 20px;
	background: var(--rht-surface);
	color: var(--rht-muted);
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.rht .rht-group__intro {
	margin-top: 4px;
	color: var(--rht-muted);
}

.rht .rht-checks {
	margin-top: 14px;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-check {
	display: grid;
	grid-template-columns: 78px 1fr;
	gap: 16px;
	padding: 16px 0;
	border-bottom: 1px solid var(--rht-line);
}

.rht .rht-check__status {
	align-self: start;
	padding-top: 3px;
	border-top: 3px solid currentColor;
	font-size: 13px;
	font-weight: 800;
}

.rht .rht-check--fail .rht-check__status { color: var(--rht-fail); }
.rht .rht-check--warn .rht-check__status { color: var(--rht-warn); }
.rht .rht-check--pass .rht-check__status { color: var(--rht-pass); }
.rht .rht-check--info .rht-check__status { color: var(--rht-muted); }

.rht .rht-check__body {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.rht .rht-check__title {
	font-weight: 700;
}

.rht .rht-check__cat {
	margin-left: 10px;
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 500;
}

.rht .rht-check__detail {
	overflow-wrap: anywhere;
}

.rht .rht-check__fix {
	color: var(--rht-muted);
	font-size: 15px;
}

.rht .rht-check__fix strong {
	color: var(--rht-ink);
}

.rht details > summary {
	cursor: pointer;
	list-style: none;
}

.rht details > summary::-webkit-details-marker {
	display: none;
}

.rht .rht-group--pass > summary {
	display: flex;
	align-items: center;
	gap: 10px;
}

.rht .rht-group--pass > summary::after {
	content: "Show";
	color: var(--rht-action);
	font-size: 15px;
	font-weight: 700;
}

.rht .rht-group--pass[open] > summary::after {
	content: "Hide";
}

/* Detail panels */

.rht .rht-panels {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.rht .rht-panel {
	display: grid;
	align-content: start;
	gap: 14px;
	padding: 22px 24px;
	border: 1px solid var(--rht-line);
	border-radius: var(--rht-radius);
	background: #fff;
	min-width: 0;
}

.rht .rht-panel--wide {
	grid-column: 1 / -1;
}

.rht .rht-panel__title {
	color: var(--rht-ink) !important;
	font-size: 18px;
	font-weight: 800;
}

.rht .rht-panel__sub {
	margin-top: 4px;
	color: var(--rht-ink) !important;
	font-size: 15px;
	font-weight: 700;
}

.rht .rht-panel__note {
	color: var(--rht-muted);
	font-size: 14px;
}

/* Content strength meter */

.rht .rht-meter {
	display: grid;
	gap: 8px;
	padding: 16px 18px;
	border-radius: 10px;
	background: var(--rht-surface);
}

.rht .rht-meter__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.rht .rht-meter__label {
	font-size: 22px;
	font-weight: 800;
}

.rht .rht-meter__value {
	font-weight: 700;
	color: var(--rht-muted);
}

.rht .rht-meter__track {
	position: relative;
	height: 10px;
	border-radius: 10px;
	background: #fff;
	overflow: hidden;
}

.rht .rht-meter__track i {
	display: block;
	height: 100%;
	border-radius: 10px;
	background: currentColor;
}

.rht .rht-meter__track span {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 2px;
	background: rgba(255, 255, 255, 0.9);
}

.rht .rht-meter__scale {
	display: grid;
	grid-template-columns: 40% 20% 20% 20%;
	color: var(--rht-muted);
	font-size: 12px;
}

.rht .rht-meter__note {
	color: var(--rht-ink);
}

.rht .rht-meter--good .rht-meter__label,
.rht .rht-meter--good .rht-meter__track { color: var(--rht-pass); }
.rht .rht-meter--mid .rht-meter__label,
.rht .rht-meter--mid .rht-meter__track { color: var(--rht-warn); }
.rht .rht-meter--low .rht-meter__label,
.rht .rht-meter--low .rht-meter__track { color: var(--rht-fail); }

/* Tables */

.rht .rht-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.rht .rht-table th,
.rht .rht-table td {
	padding: 8px 10px 8px 0;
	border: 0;
	border-bottom: 1px solid var(--rht-line);
	background: none;
	text-align: left;
	vertical-align: top;
}

.rht .rht-table thead th {
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 600;
}

.rht .rht-table--kv th {
	width: 45%;
	color: var(--rht-muted);
	font-weight: 500;
}

.rht .rht-table td {
	font-weight: 600;
	overflow-wrap: anywhere;
}

.rht .rht-table__url {
	display: block;
}

.rht .rht-table__sub {
	display: block;
	color: var(--rht-muted);
	font-weight: 400;
}

.rht .rht-table--tags th {
	width: 32%;
}

.rht .rht-table code {
	padding: 0;
	background: none;
	color: var(--rht-ink);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.rht .rht-muted {
	color: var(--rht-muted);
	font-weight: 400;
}

.rht .rht-panel__sub .rht-pill {
	margin-left: 6px;
	font-size: 12px;
}

/* Yes / no lists, chips, states */

.rht .rht-places {
	display: grid;
	gap: 6px;
}

.rht .rht-places--grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rht .rht-place {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 15px;
}

.rht .rht-place__mark {
	flex: none;
	min-width: 62px;
	padding: 2px 8px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 800;
	text-align: center;
}

.rht .rht-place--yes .rht-place__mark {
	background: #e5f4ec;
	color: var(--rht-pass);
}

.rht .rht-place--no .rht-place__mark {
	background: #fdf1f0;
	color: var(--rht-fail);
}

.rht .rht-kw {
	font-size: 18px;
	font-weight: 700;
}

.rht .rht-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.rht .rht-chips li {
	padding: 4px 10px;
	border-radius: 20px;
	background: var(--rht-surface);
	font-size: 14px;
	font-weight: 600;
}

.rht .rht-state {
	font-weight: 800;
	font-size: 17px;
}

.rht .rht-state--yes { color: var(--rht-pass); }
.rht .rht-state--no { color: var(--rht-fail); }

.rht .rht-urls {
	display: grid;
	gap: 4px;
	font-size: 13px;
	color: var(--rht-muted);
	overflow-wrap: anywhere;
}

/* Headings */

.rht .rht-hcounts {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 8px;
}

.rht .rht-hcounts li {
	display: grid;
	gap: 2px;
	padding: 10px 6px;
	border-radius: 8px;
	background: var(--rht-surface);
	text-align: center;
}

.rht .rht-hcounts span {
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 700;
}

.rht .rht-hcounts strong {
	font-size: 20px;
}

.rht .rht-hcounts .is-warn {
	background: #fdf1f0;
	color: var(--rht-fail);
}

.rht .rht-outline > summary {
	color: var(--rht-action);
	font-weight: 700;
	font-size: 15px;
}

.rht .rht-outline ol {
	display: grid;
	gap: 6px;
	margin-top: 12px;
}

.rht .rht-outline li {
	padding-left: calc(var(--lvl, 0) * 18px);
	font-size: 14px;
	overflow-wrap: anywhere;
}

.rht .rht-outline li span {
	display: inline-block;
	min-width: 28px;
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 700;
}

/* Heading tree (T03) */

.rht .rht-tree {
	display: grid;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-tree__item {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: start;
	gap: 12px;
	padding: 9px 0 9px calc(var(--lvl, 0) * 26px);
	border-bottom: 1px solid var(--rht-line);
	font-size: 15px;
}

.rht .rht-tree__item.is-outside {
	opacity: 0.6;
}

.rht .rht-tree__tag {
	min-width: 34px;
	padding: 2px 0;
	border-radius: 6px;
	background: var(--rht-surface);
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 800;
	text-align: center;
}

.rht .rht-tree__tag--h1 {
	background: var(--rht-action);
	color: #fff;
}

.rht .rht-tree__tag--h2 {
	background: color-mix(in srgb, var(--rht-action) 16%, #fff);
	color: var(--rht-ink);
}

.rht .rht-tree__text {
	min-width: 0;
	overflow-wrap: anywhere;
	font-weight: 600;
}

.rht .rht-tree__item[style*="--lvl:0"] .rht-tree__text {
	font-size: 17px;
	font-weight: 800;
}

.rht .rht-tree__text em {
	color: var(--rht-fail);
	font-weight: 500;
}

.rht .rht-tree__words {
	color: var(--rht-muted);
	font-size: 13px;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.rht .rht-flag {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 7px;
	border-radius: 5px;
	background: #fdf1f0;
	color: var(--rht-fail);
	font-size: 12px;
	font-weight: 700;
	vertical-align: 1px;
}

.rht .rht-flag--long,
.rht .rht-flag--longsection,
.rht .rht-flag--outside {
	background: #fdf5e6;
	color: var(--rht-warn);
}

/* AI crawler table (T24) */

.rht .rht-bots {
	display: grid;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-bot {
	display: grid;
	grid-template-columns: 1.1fr 1.4fr 1.6fr 0.8fr 0.7fr;
	gap: 12px;
	align-items: start;
	padding: 10px 0;
	border-bottom: 1px solid var(--rht-line);
	font-size: 14px;
}

.rht .rht-bot--head {
	padding: 8px 0;
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 700;
}

.rht .rht-bot__name strong {
	display: block;
	font-size: 15px;
}

.rht .rht-bot__name span,
.rht .rht-bot__use,
.rht .rht-bot__live {
	color: var(--rht-muted);
}

.rht .rht-bot__robots {
	overflow-wrap: anywhere;
}

.rht .rht-bot__robots code,
.rht .rht-code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
}

.rht .rht-bot__robots code {
	padding: 1px 5px;
	border-radius: 4px;
	background: var(--rht-surface);
}

.rht .rht-bot--yes .rht-place__mark {
	background: #e5f4ec;
	color: var(--rht-pass);
}

.rht .rht-bot--no .rht-place__mark {
	background: #fdf1f0;
	color: var(--rht-fail);
}

.rht .rht-bot--warn .rht-place__mark {
	background: #fdf5e6;
	color: var(--rht-warn);
}

.rht .rht-code {
	max-height: 360px;
	margin: 0;
	padding: 14px 16px;
	overflow: auto;
	border-radius: 8px;
	background: #0f172a;
	color: #e2e8f0;
	line-height: 1.6;
	white-space: pre;
}

.rht .rht-code .is-ai {
	display: inline-block;
	min-width: 100%;
	background: rgba(250, 204, 21, 0.22);
	color: #fff;
}

.rht .rht-snippet {
	display: grid;
	gap: 8px;
	margin-bottom: 12px;
}

.rht .rht-snippet .rht-code {
	max-height: none;
}

.rht .rht-bot--neutral .rht-place__mark {
	background: var(--rht-surface);
	color: var(--rht-muted);
}

.rht .rht-snippet__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.rht .rht-copy {
	padding: 6px 14px;
	border: 1px solid var(--rht-line);
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.rht .rht-copy:hover {
	border-color: var(--rht-action);
	color: var(--rht-action) !important;
}

/* Generators: tabs, forms, repeaters (T22 and later) */

.rht .rht-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 28px 0 18px;
}

.rht .rht-tab {
	padding: 10px 18px;
	border: 1px solid var(--rht-line);
	border-radius: 30px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}

.rht .rht-tab:hover {
	border-color: var(--rht-action);
}

.rht .rht-tab.is-active {
	border-color: var(--rht-action);
	background: var(--rht-action) !important;
	color: #fff !important;
}

.rht .rht-tab:focus-visible,
.rht .rht-link:focus-visible,
.rht .rht-addrow:focus-visible,
.rht .rht-copy:focus-visible {
	outline: 3px solid var(--rht-action);
	outline-offset: 2px;
}

.rht .rht-schema-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 16px;
	align-items: start;
}

.rht .rht-schema-out {
	position: sticky;
	top: 20px;
}

.rht .rht-schema-out__body,
.rht .rht-schema-form > * {
	min-width: 0;
}

.rht .rht-schema-out__body {
	display: grid;
	gap: 14px;
}

.rht .rht-schema-out__body .rht-code {
	max-width: 100%;
}

.rht .rht-schema-intro {
	display: grid;
	gap: 8px;
	color: var(--rht-muted);
}

.rht .rht-notice {
	padding: 10px 14px;
	border-left: 4px solid var(--rht-warn);
	border-radius: 0 8px 8px 0;
	background: #fdf5e6;
	color: var(--rht-ink);
	font-size: 14px;
}

.rht .rht-schema-tools {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	text-align: left;
}

.rht .rht-link {
	padding: 0;
	border: 0;
	background: none !important;
	color: var(--rht-action) !important;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.rht .rht-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 14px;
	align-items: start;
}

.rht .rht-field {
	grid-column: 1 / -1;
	display: grid;
	gap: 5px;
	min-width: 0;
}

.rht .rht-field--half {
	grid-column: auto;
}

.rht .rht-field label {
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-field input,
.rht .rht-field select,
.rht .rht-field textarea {
	width: 100%;
	min-height: 44px;
	padding: 9px 12px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 15px;
	box-shadow: none !important;
}

.rht .rht-field textarea {
	min-height: 80px;
	resize: vertical;
}

.rht .rht-field input[type="checkbox"],
.rht .rht-check-opt input[type="checkbox"] {
	width: 18px;
	height: 18px;
	min-height: 0;
	margin: 0;
	padding: 0;
	flex: none;
	accent-color: var(--rht-action);
}

.rht .rht-field input:focus,
.rht .rht-field select:focus,
.rht .rht-field textarea:focus {
	border-color: var(--rht-action) !important;
	outline: 3px solid color-mix(in srgb, var(--rht-action) 22%, transparent);
	outline-offset: 0;
}

.rht .rht-field__help {
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-form-sub {
	grid-column: 1 / -1;
	margin-top: 8px;
	padding-top: 14px;
	border-top: 1px solid var(--rht-line);
	color: var(--rht-ink) !important;
	font-size: 15px;
	font-weight: 800;
}

.rht .rht-repeater {
	grid-column: 1 / -1;
	display: grid;
	gap: 12px;
}

.rht .rht-repeater__row {
	display: grid;
	gap: 10px;
	padding: 14px;
	border-radius: 10px;
	background: var(--rht-surface);
}

.rht .rht-repeater__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.rht .rht-repeater__head span {
	display: inline-grid;
	place-items: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #fff;
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 800;
}

.rht .rht-addrow {
	justify-self: start;
	padding: 9px 16px;
	border: 1px dashed var(--rht-action);
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-action) !important;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.rht .rht-check-opt {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.rht .rht-code--schema {
	max-height: 520px;
}

.rht .rht-place--warn .rht-place__mark {
	background: #fdf5e6;
	color: var(--rht-warn);
}

.rht .rht-place__mark {
	min-width: 92px;
}

/* Split layout used by browser tools (T11 and later) */

.rht .rht-robots-app,
.rht .rht-sr-app,
.rht .rht-ab-app,
.rht .rht-roas-app,
.rht .rht-rl-app,
.rht .rht-ls-app,
.rht .rht-wa-app,
.rht .rht-utm-app,
.rht .rht-cost-app,
.rht .rht-lv-app {
	margin-top: 28px;
}

.rht .rht-split {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 16px;
	align-items: start;
}

.rht .rht-split__out {
	position: sticky;
	top: 20px;
}

.rht .rht-split > * ,
.rht .rht-serp-out {
	min-width: 0;
}

.rht .rht-serp-out {
	display: grid;
	gap: 16px;
}

.rht .rht-loadurl {
	display: grid;
	gap: 6px;
	max-width: 760px;
	margin: 26px auto 22px;
}

.rht .rht-loadurl__label {
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.rht .rht-loadurl__label span {
	color: var(--rht-muted);
	font-weight: 400;
}

.rht .rht-loadurl__row {
	display: flex;
	gap: 8px;
}

.rht .rht-loadurl__input {
	flex: 1;
	min-width: 0;
	min-height: 46px;
	padding: 0 14px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 10px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	box-shadow: none !important;
}

.rht .rht-btn--small {
	min-height: 46px;
	padding: 0 20px;
	border-radius: 10px;
}

.rht .rht-ok {
	color: var(--rht-pass);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}

.rht .rht-loadurl .rht-error {
	font-size: 14px;
}

/* Google result mock-ups */

.rht .rht-gwrap {
	display: grid;
	gap: 8px;
}

.rht .rht-gwrap__label {
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 700;
}

.rht .rht-g {
	display: grid;
	gap: 4px;
	font-family: Arial, Helvetica, sans-serif;
	text-align: left;
}

.rht .rht-gscale {
	overflow: hidden;
}

.rht .rht-gscale .rht-g--desktop {
	transform-origin: top left;
}

.rht .rht-g--desktop {
	width: 652px;
	max-width: none;
	padding: 18px 20px;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	background: #fff;
}

.rht .rht-g--desktop .rht-g__title,
.rht .rht-g--desktop .rht-g__desc {
	max-width: 600px;
}

.rht .rht-g--desktop .rht-g__title {
	white-space: nowrap;
	overflow: hidden;
}

.rht .rht-g--mobile {
	max-width: 380px;
	padding: 16px;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 1px 6px rgba(32, 33, 36, 0.18);
}

.rht .rht-g__site {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 4px;
}

.rht .rht-g__fav {
	display: grid;
	place-items: center;
	flex: none;
	width: 28px;
	height: 28px;
	border: 1px solid #dadce0;
	border-radius: 50%;
	background: #f1f3f4;
	color: #5f6368;
	font-size: 13px;
	font-weight: 700;
}

.rht .rht-g__name {
	display: block;
	color: #202124;
	font-size: 14px;
	line-height: 20px;
}

.rht .rht-g__url {
	display: block;
	color: #4d5156;
	font-size: 12px;
	line-height: 18px;
	overflow-wrap: anywhere;
}

.rht .rht-g__title {
	color: #1a0dab;
	font-size: 20px;
	line-height: 26px;
	font-weight: 400;
}

.rht .rht-g--mobile .rht-g__title {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 18px;
	line-height: 24px;
}

.rht .rht-g__desc {
	color: #4d5156;
	font-size: 14px;
	line-height: 22px;
	overflow-wrap: anywhere;
}

.rht .rht-g--mobile .rht-g__desc {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.rht .rht-g__desc b {
	color: #202124;
	font-weight: 700;
}

.rht .rht-g__date {
	color: #70757a;
}

.rht .rht-share--serp {
	max-width: 520px;
}

/* Length meters */

.rht .rht-lens {
	display: grid;
	gap: 14px;
	padding: 16px 18px;
	border-radius: 10px;
	background: var(--rht-surface);
}

.rht .rht-len {
	display: grid;
	gap: 6px;
}

.rht .rht-len__head {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 4px 12px;
	font-size: 14px;
}

.rht .rht-len__head span:first-child {
	font-weight: 800;
}

.rht .rht-len__head span:last-child {
	color: var(--rht-muted);
	font-variant-numeric: tabular-nums;
}

.rht .rht-len__track {
	height: 8px;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

.rht .rht-len__track i {
	display: block;
	height: 100%;
	border-radius: 8px;
	background: currentColor;
}

.rht .rht-len__msg {
	font-size: 13px;
	font-weight: 700;
}

.rht .rht-len--good { color: var(--rht-pass); }
.rht .rht-len--mid { color: var(--rht-warn); }
.rht .rht-len--low { color: var(--rht-fail); }
.rht .rht-len .rht-len__head { color: var(--rht-ink); }

/* Keyword density (T09) */

.rht .rht-modes {
	display: inline-flex;
	gap: 4px;
	margin-top: 26px;
	padding: 4px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.14);
}

.rht .rht-mode {
	padding: 8px 18px;
	border: 0;
	border-radius: 30px;
	background: transparent !important;
	color: #fff !important;
	font: inherit;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}

.rht .rht-mode.is-active {
	background: #fff !important;
	color: var(--rht-c2) !important;
}

.rht .rht-mode:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 2px;
}

.rht .rht-hero .rht-modes + .rht-form {
	margin-top: 16px;
}

.rht .rht-textmode {
	display: grid;
	gap: 8px;
	padding: 6px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 18px 40px rgba(6, 14, 40, 0.28);
}

.rht .rht-textmode[hidden],
.rht .rht-inputrow[hidden] {
	display: none;
}

.rht .rht-textinput {
	width: 100%;
	min-height: 150px;
	padding: 12px 14px;
	border: 0 !important;
	outline: none;
	box-shadow: none !important;
	background: transparent !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 16px;
	resize: vertical;
}

.rht .rht-textmode .rht-btn {
	justify-self: end;
}

.rht .rht-kwhead {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 24px;
	align-items: center;
	padding: 16px 18px;
	border-radius: 10px;
	background: var(--rht-surface);
}

.rht .rht-kwhead__num {
	display: block;
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.rht .rht-kwhead__sub {
	color: var(--rht-muted);
	font-size: 14px;
}

.rht .rht-gauge {
	display: grid;
	gap: 6px;
}

.rht .rht-gauge__track {
	position: relative;
	display: flex;
	height: 12px;
	border-radius: 12px;
	overflow: visible;
}

.rht .rht-gauge__zone--low { background: #f6e3c2; border-radius: 12px 0 0 12px; }
.rht .rht-gauge__zone--good { background: #bfe3cd; }
.rht .rht-gauge__zone--high { background: #f4c7c3; border-radius: 0 12px 12px 0; }

.rht .rht-gauge__marker {
	position: absolute;
	top: -5px;
	width: 4px;
	height: 22px;
	margin-left: -2px;
	border-radius: 3px;
	background: var(--rht-ink);
}

.rht .rht-gauge__scale {
	position: relative;
	height: 16px;
	color: var(--rht-muted);
	font-size: 12px;
}

.rht .rht-gauge__scale span {
	position: absolute;
	transform: translateX(-50%);
}

.rht .rht-gauge__scale span:first-child {
	transform: none;
}

.rht .rht-gauge__scale span:last-child {
	transform: translateX(-100%);
}

.rht .rht-gauge__label {
	font-weight: 800;
}

.rht .rht-gauge--good .rht-gauge__label { color: var(--rht-pass); }
.rht .rht-gauge--low .rht-gauge__label { color: var(--rht-warn); }
.rht .rht-gauge--high .rht-gauge__label { color: var(--rht-fail); }

.rht .rht-tabs--small {
	margin: 0;
}

.rht .rht-tabs--small .rht-tab {
	padding: 7px 14px;
	font-size: 14px;
}

.rht .rht-tab.is-active .rht-pill {
	background: rgba(255, 255, 255, 0.25);
	color: #fff;
}

.rht .rht-table--terms td:first-child {
	font-weight: 700;
	overflow-wrap: normal;
	word-break: normal;
}

.rht .rht-table--terms td {
	white-space: normal;
}

.rht .rht-table--terms td {
	font-weight: 500;
}

.rht .rht-bar {
	display: inline-block;
	width: 80px;
	height: 8px;
	margin-right: 8px;
	border-radius: 8px;
	background: var(--rht-surface);
	overflow: hidden;
	vertical-align: 0;
}

.rht .rht-bar i {
	display: block;
	height: 100%;
	border-radius: 8px;
	background: var(--rht-action);
}

.rht .rht-tag {
	display: inline-block;
	margin: 0 4px 4px 0;
	padding: 1px 8px;
	border-radius: 5px;
	background: #e5f4ec;
	color: var(--rht-pass);
	font-size: 12px;
	font-weight: 700;
}

/* Robots.txt generator (T14) */

.rht .rht-split--robots {
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.rht .rht-robots-out {
	display: grid;
	gap: 14px;
	min-width: 0;
}

.rht .rht-stack {
	display: grid;
	gap: 16px;
	min-width: 0;
}

.rht .rht-pathlist {
	display: grid;
	gap: 8px;
}

.rht .rht-pathrow {
	display: flex;
	gap: 8px;
}

.rht .rht-pathrow input {
	flex: 1;
	min-width: 0;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 14px;
	box-shadow: none !important;
}

.rht .rht-pathrow input:focus {
	border-color: var(--rht-action) !important;
	outline: 3px solid color-mix(in srgb, var(--rht-action) 22%, transparent);
}

.rht .rht-iconbtn {
	flex: none;
	width: 42px;
	border: 1px solid var(--rht-line);
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-muted) !important;
	font: inherit;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.rht .rht-iconbtn:hover {
	border-color: var(--rht-fail);
	color: var(--rht-fail) !important;
}

.rht .rht-botrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 0;
	border-bottom: 1px solid var(--rht-line);
}

.rht .rht-botrow label {
	display: grid;
	min-width: 0;
	font-size: 14px;
}

.rht .rht-botrow label span {
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-botsel {
	flex: none;
	min-height: 36px;
	padding: 4px 10px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	font: inherit;
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-botsel--allow { color: var(--rht-pass) !important; }
.rht .rht-botsel--block { color: var(--rht-fail) !important; }

.rht .rht-checks-inline {
	display: grid;
	gap: 8px;
}

.rht .rht-btnrow {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.rht .rht-code--robots {
	max-height: 460px;
}

.rht .rht-tester {
	display: grid;
	gap: 10px;
	margin-top: 6px;
	padding-top: 16px;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-tester__out {
	display: grid;
	gap: 4px;
}

.rht .rht-tester code {
	padding: 1px 5px;
	border-radius: 4px;
	background: var(--rht-surface);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
}

.rht .rht-place--neutral .rht-place__mark {
	background: var(--rht-surface);
	color: var(--rht-muted);
}

.rht .rht-place__mark {
	flex: none;
}

/* llms.txt generator (T25) */

.rht .rht-llsec {
	display: grid;
	gap: 10px;
	margin-top: 14px;
	padding: 14px;
	border-radius: 10px;
	background: var(--rht-surface);
}

.rht .rht-llsec.is-optional {
	border: 1px dashed #c6cdd8;
	background: #fff;
}

.rht .rht-llsec__head {
	display: flex;
	align-items: center;
	gap: 12px;
}

.rht .rht-llsec__title {
	flex: 1;
	min-width: 0;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 16px;
	font-weight: 800;
	box-shadow: none !important;
}

.rht .rht-linkrow {
	display: flex;
	gap: 8px;
	align-items: start;
}

.rht .rht-linkrow__main {
	flex: 1;
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: 6px;
	min-width: 0;
}

.rht .rht-linkrow__main input {
	min-width: 0;
	min-height: 40px;
	padding: 7px 10px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 14px;
	box-shadow: none !important;
}

.rht .rht-linkrow__main input:focus,
.rht .rht-llsec__title:focus {
	border-color: var(--rht-action) !important;
	outline: 3px solid color-mix(in srgb, var(--rht-action) 22%, transparent);
}

.rht .rht-linkrow + .rht-linkrow {
	padding-top: 10px;
	border-top: 1px solid #dfe4ea;
}

.rht .rht-linkrow__desc {
	grid-column: 1 / -1;
}

.rht .rht-linkrow .rht-iconbtn {
	height: 40px;
}

.rht .rht-code--md {
	max-height: 560px;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

/* WhatsApp link generator (T35) */

.rht .rht-wa-block {
	display: grid;
	gap: 10px;
	padding-top: 16px;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-wa-link {
	padding: 12px 14px;
	border-radius: 8px;
	background: var(--rht-surface);
	overflow-wrap: anywhere;
}

.rht .rht-wa-link code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 14px;
	color: var(--rht-ink);
	background: none;
}

.rht a.rht-copy {
	display: inline-flex;
	align-items: center;
	text-decoration: none !important;
}

.rht .rht-wa-qr {
	display: grid;
	grid-template-columns: 160px 1fr;
	gap: 18px;
	align-items: center;
}

.rht .rht-wa-qr__img {
	padding: 8px;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	background: #fff;
}

.rht .rht-wa-qr__img svg {
	display: block;
	width: 100%;
	height: auto;
}

.rht .rht-wa-qr__text {
	display: grid;
	gap: 12px;
}

.rht .rht-wa-preview {
	padding: 18px;
	border-radius: 10px;
	background: var(--rht-surface);
	text-align: center;
}

.rht .rht-wa-preview a {
	color: #fff !important;
}

.rht .rht-wa-mini {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #25d366;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}

/* UTM builder (T31) */

.rht .rht-req {
	margin-left: 4px;
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 500;
}

.rht .rht-utm-channel {
	margin-top: 4px;
	padding: 10px 14px;
	border-radius: 8px;
	background: color-mix(in srgb, var(--rht-action) 8%, #fff);
	font-size: 15px;
}

.rht .rht-recent {
	display: grid;
	gap: 8px;
}

.rht .rht-recent li {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 2px 12px;
	padding: 8px 0;
	border-bottom: 1px solid var(--rht-line);
}

.rht .rht-recent__meta {
	grid-column: 1 / -1;
	color: var(--rht-muted);
	font-size: 12px;
}

.rht .rht-recent code {
	min-width: 0;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	color: var(--rht-ink);
	background: none;
	overflow-wrap: anywhere;
}

/* Website cost calculator (T36) */

.rht .rht-admin-notice {
	margin: 20px 0 0;
}

.rht .rht-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 10px;
}

.rht .rht-tile {
	position: relative;
	display: grid;
	gap: 3px;
	align-content: start;
	padding: 14px 16px;
	border: 2px solid var(--rht-line);
	border-radius: 12px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.rht .rht-tile:hover {
	border-color: color-mix(in srgb, var(--rht-action) 50%, var(--rht-line));
}

.rht .rht-tile strong {
	font-size: 15px;
}

.rht .rht-tile span {
	color: var(--rht-muted);
	font-size: 13px;
	line-height: 1.4;
}

.rht .rht-tile.is-on {
	border-color: var(--rht-action);
	background: color-mix(in srgb, var(--rht-action) 6%, #fff) !important;
}

.rht .rht-tile.is-on::after {
	content: "";
	position: absolute;
	top: 12px;
	right: 12px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--rht-action);
}

.rht .rht-tile:focus-visible,
.rht .rht-tile--check:focus-within {
	outline: 3px solid var(--rht-action);
	outline-offset: 2px;
}

.rht .rht-tile--check input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.rht .rht-range {
	display: flex;
	align-items: center;
	gap: 14px;
}

.rht .rht-range input[type="range"] {
	flex: 1;
	accent-color: var(--rht-action);
}

.rht .rht-range__num {
	width: 84px;
	min-height: 42px;
	padding: 6px 10px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 8px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	box-shadow: none !important;
}

.rht .rht-cost {
	background: linear-gradient(180deg, color-mix(in srgb, var(--rht-action) 7%, #fff) 0%, #fff 55%);
}

.rht .rht-cost__label {
	color: var(--rht-muted);
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-cost__price {
	font-size: clamp(30px, 3.6vw, 40px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	font-variant-numeric: tabular-nums;
}

.rht .rht-cost__sub {
	color: var(--rht-muted);
}

.rht .rht-cost__time {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	padding: 12px 14px;
	border-radius: 10px;
	background: #fff;
	border: 1px solid var(--rht-line);
}

.rht .rht-cost__time span {
	color: var(--rht-muted);
	font-size: 14px;
}

.rht .rht-cost__break > summary {
	color: var(--rht-action);
	font-weight: 700;
	font-size: 15px;
}

.rht .rht-cost__break table {
	margin-top: 10px;
}

.rht .rht-cost__break td {
	text-align: right;
	white-space: nowrap;
}

.rht .rht-cost__total th,
.rht .rht-cost__total td {
	color: var(--rht-ink);
	font-weight: 800;
}

.rht .rht-btn.rht-cost__cta {
	width: 100%;
	min-height: 54px;
	border-radius: 12px;
	font-size: 17px;
}

.rht .rht-cost__copy {
	justify-self: center;
}

.rht .rht-cost-bar {
	display: none;
}

/* Lead value calculator (T40) */

.rht .rht-affix {
	display: flex;
	align-items: stretch;
	border: 1px solid #c6cdd8;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}

.rht .rht-affix:focus-within {
	border-color: var(--rht-action);
	outline: 3px solid color-mix(in srgb, var(--rht-action) 22%, transparent);
}

.rht .rht-affix span {
	display: grid;
	place-items: center;
	padding: 0 10px;
	background: var(--rht-surface);
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 700;
}

.rht .rht-field .rht-affix input {
	flex: 1;
	min-width: 0;
	border: 0 !important;
	border-radius: 0;
	outline: none;
}

.rht .rht-lv__big {
	font-size: clamp(30px, 3.6vw, 40px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--rht-pass);
	font-variant-numeric: tabular-nums;
}

.rht .rht-lv__big small {
	color: var(--rht-muted);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
}

.rht .rht-lv__sub {
	color: var(--rht-ink);
}

.rht .rht-funnel {
	display: grid;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-funnel__row {
	display: grid;
	grid-template-columns: 1.1fr 1fr 18px 1fr 0.9fr;
	gap: 8px;
	align-items: baseline;
	padding: 9px 0;
	border-bottom: 1px solid var(--rht-line);
	font-variant-numeric: tabular-nums;
}

.rht .rht-funnel__row--head {
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 700;
}

.rht .rht-funnel__label {
	font-weight: 700;
}

.rht .rht-funnel__now {
	color: var(--rht-muted);
}

.rht .rht-funnel__arrow {
	color: var(--rht-muted);
}

.rht .rht-funnel__next {
	font-weight: 700;
}

.rht .rht-funnel__delta {
	color: var(--rht-pass);
	font-size: 14px;
	font-weight: 700;
	text-align: right;
}

.rht .rht-lv__unit {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.rht .rht-lv__unit div {
	display: grid;
	gap: 2px;
	padding: 10px 12px;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	background: #fff;
}

.rht .rht-lv__unit span {
	color: var(--rht-muted);
	font-size: 12px;
	line-height: 1.3;
}

.rht .rht-lv__unit strong {
	font-size: 18px;
	font-variant-numeric: tabular-nums;
}

.rht .rht-lv__roi {
	display: grid;
	gap: 6px;
	padding: 12px 14px;
	border-left: 4px solid var(--rht-pass);
	border-radius: 0 10px 10px 0;
	background: #e9f6ef;
	font-size: 15px;
}

.rht .rht-lv__roi--low {
	border-left-color: var(--rht-warn);
	background: #fdf5e6;
}

/* Redirect checker (T17) */

.rht .rht-heroopt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.rht .rht-heroopt[hidden] {
	display: none;
}

.rht .rht-heroopt input {
	width: 18px;
	height: 18px;
	accent-color: #fff;
}

.rht .rht-code-badge {
	display: inline-block;
	min-width: 44px;
	padding: 3px 8px;
	border-radius: 6px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
}

.rht .rht-code-badge--ok { background: #e5f4ec; color: var(--rht-pass); }
.rht .rht-code-badge--perm { background: #e8eefc; color: #1d3fa8; }
.rht .rht-code-badge--temp { background: #fdf5e6; color: var(--rht-warn); }
.rht .rht-code-badge--bad { background: #fdf1f0; color: var(--rht-fail); }

.rht .rht-hops {
	display: grid;
	gap: 0;
}

.rht .rht-hop {
	position: relative;
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: 12px;
	padding-bottom: 18px;
}

.rht .rht-hop:not(:last-child)::before {
	content: "";
	position: absolute;
	left: 29px;
	top: 28px;
	bottom: 0;
	width: 2px;
	background: var(--rht-line);
}

.rht .rht-hop__marker {
	position: relative;
	z-index: 1;
}

.rht .rht-hop__url {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 14px;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.rht .rht-hop__meta {
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-final {
	margin-top: 14px;
	overflow-wrap: anywhere;
}

.rht .rht-final a {
	color: var(--rht-action) !important;
	font-weight: 700;
}

.rht .rht-table--variants code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	background: none;
}

.rht .rht-table--bulk td {
	font-weight: 500;
}

.rht .rht-bulk__url {
	font-weight: 700 !important;
	overflow-wrap: anywhere;
}

.rht .rht-verdict {
	display: inline-block;
	white-space: nowrap;
}

.rht .rht-verdict--yes { background: #e5f4ec; color: var(--rht-pass); }
.rht .rht-verdict--warn { background: #fdf5e6; color: var(--rht-warn); }
.rht .rht-verdict--no { background: #fdf1f0; color: var(--rht-fail); }

.rht .rht-bulk__issues {
	display: grid;
	gap: 4px;
	margin-top: 6px;
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-bulk details summary {
	color: var(--rht-action);
	font-weight: 700;
}

.rht .rht-report--bulk {
	grid-template-columns: 1fr;
}

/* Image alt text checker (T05) */

.rht .rht-imggrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 12px;
}

.rht .rht-imgcard {
	display: grid;
	grid-template-columns: 96px 1fr;
	gap: 12px;
	padding: 12px;
	border: 1px solid var(--rht-line);
	border-left: 4px solid var(--rht-line);
	border-radius: 10px;
	background: #fff;
}

.rht .rht-imgcard[hidden] {
	display: none;
}

.rht .rht-imgcard--no { border-left-color: var(--rht-fail); }
.rht .rht-imgcard--warn { border-left-color: var(--rht-warn); }
.rht .rht-imgcard--yes { border-left-color: var(--rht-pass); }

.rht .rht-imgcard__thumb {
	display: grid;
	place-items: center;
	width: 96px;
	height: 96px;
	border-radius: 8px;
	background: repeating-conic-gradient(#f1f3f6 0% 25%, #fff 0% 50%) 50% / 16px 16px;
	overflow: hidden;
}

.rht .rht-imgcard__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.rht .rht-imgcard__thumb span {
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 800;
}

.rht .rht-imgcard__thumb.is-broken::after {
	content: "Not loading";
	color: var(--rht-fail);
	font-size: 12px;
	font-weight: 700;
}

.rht .rht-imgcard__body {
	display: grid;
	align-content: start;
	gap: 6px;
	min-width: 0;
}

.rht .rht-imgcard__top {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.rht .rht-imgcard__alt {
	font-size: 14px;
	font-weight: 600;
	overflow-wrap: anywhere;
}

.rht .rht-imgcard__alt em {
	color: var(--rht-fail);
	font-weight: 600;
}

.rht .rht-imgcard--neutral .rht-imgcard__alt em {
	color: var(--rht-muted);
}

.rht .rht-imgcard__issues {
	display: grid;
	gap: 2px;
	color: var(--rht-ink);
	font-size: 13px;
}

.rht .rht-imgcard__issues li::before {
	content: "\2022  ";
	color: var(--rht-warn);
}

.rht .rht-imgcard__file {
	color: var(--rht-muted);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	overflow-wrap: anywhere;
}

.rht .rht-imgcard__file span {
	font-family: inherit;
}

/* Schema checker (T08) */

.rht .rht-sitem {
	border-left: 4px solid var(--rht-line);
}

.rht .rht-sitem--yes { border-left-color: var(--rht-pass); }
.rht .rht-sitem--warn { border-left-color: var(--rht-warn); }
.rht .rht-sitem--no { border-left-color: var(--rht-fail); }

.rht .rht-sitem__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 12px;
}

.rht .rht-sitem__name {
	margin-top: 2px;
	color: var(--rht-muted);
	font-size: 14px;
}

.rht .rht-sitem__rich {
	font-weight: 700;
	font-size: 15px;
}

.rht .rht-sitem__rich--yes { color: var(--rht-pass); }
.rht .rht-sitem__rich--no { color: var(--rht-fail); }
.rht .rht-sitem__rich--neutral { color: var(--rht-muted); }

.rht .rht-sitem code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	background: none;
	color: var(--rht-ink);
	overflow-wrap: anywhere;
}

.rht .rht-sitem__issues {
	display: grid;
	gap: 6px;
}

.rht .rht-sitem__issues li {
	padding: 8px 12px;
	border-radius: 8px;
	background: #fdf1f0;
	color: var(--rht-ink);
	font-size: 14px;
	overflow-wrap: anywhere;
}

.rht .rht-sblock {
	border-top: 1px solid var(--rht-line);
	padding: 10px 0;
}

.rht .rht-sblock > summary {
	font-weight: 700;
	color: var(--rht-ink);
}

.rht .rht-sblock pre {
	margin-top: 10px !important;
}

/* Robots.txt tester (T15) */

.rht .rht-table--matrix code,
.rht .rht-robotsview code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
	background: none;
	color: var(--rht-ink);
}

.rht .rht-table--matrix td {
	font-weight: 500;
}

.rht .rht-robotsview {
	max-height: 520px;
	overflow: auto;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	background: #fbfcfd;
}

.rht .rht-rline {
	display: grid;
	grid-template-columns: 44px 1fr;
	align-items: baseline;
	border-left: 4px solid transparent;
}

.rht .rht-rline__n {
	padding: 2px 8px 2px 0;
	color: var(--rht-muted);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 12px;
	text-align: right;
	user-select: none;
}

.rht .rht-rline code {
	padding: 2px 10px 2px 0;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.rht .rht-rline--error { background: #fdf1f0; border-left-color: var(--rht-fail); }
.rht .rht-rline--warn { background: #fdf5e6; border-left-color: var(--rht-warn); }
.rht .rht-rline--info { background: var(--rht-surface); border-left-color: #b9c2cf; }

.rht .rht-rline.is-hit {
	outline: 2px solid var(--rht-action);
	outline-offset: -2px;
}

.rht .rht-rline__msg {
	padding: 4px 12px 8px 48px;
	font-size: 13px;
}

.rht .rht-rline__msg--error { background: #fdf1f0; color: var(--rht-fail); }
.rht .rht-rline__msg--warn { background: #fdf5e6; color: #7a4a00; }
.rht .rht-rline__msg--info { background: var(--rht-surface); color: var(--rht-muted); }

.rht .rht-rt-txt {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
	font-size: 13px !important;
}

/* Sitemap checker (T16) */

.rht .rht-table--sitemaps td {
	font-weight: 500;
}

.rht .rht-table--sitemaps a {
	color: var(--rht-ink) !important;
	text-decoration: none;
}

.rht .rht-table--sitemaps a:hover {
	text-decoration: underline;
}

.rht .rht-table__sub--bad {
	color: var(--rht-fail);
}

/* AI readiness (T26) */

.rht .rht-quote {
	margin: 0;
	padding: 18px 20px;
	border-left: 4px solid var(--rht-action);
	border-radius: 0 12px 12px 0;
	background: color-mix(in srgb, var(--rht-action) 6%, #fff);
}

.rht .rht-quote figcaption {
	margin-bottom: 8px;
	color: var(--rht-muted);
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-quote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--rht-ink);
	font-size: 17px;
	line-height: 1.6;
	font-style: normal;
}

.rht .rht-table--sections td {
	font-weight: 500;
	vertical-align: top;
}

.rht .rht-table--sections td:last-child,
.rht .rht-table--sections td:first-child {
	white-space: nowrap;
}

.rht .rht-aiready__note {
	margin-top: 18px;
}

/* Google review link (T29) */

.rht .rht-wa-block--first {
	padding-top: 0;
	border-top: 0;
}

.rht .rht-rules {
	display: grid;
	gap: 10px;
	font-size: 15px;
}

.rht .rht-rules li {
	padding-left: 16px;
	border-left: 3px solid var(--rht-line);
}

.rht .rht-rl-msg {
	display: grid;
	gap: 8px;
	padding: 12px 14px;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
}

.rht .rht-rl-msg__text {
	font-size: 14px;
	white-space: normal;
	overflow-wrap: anywhere;
}

.rht .rht-rl-results {
	grid-column: 1 / -1;
}

.rht .rht-rl-places {
	display: grid;
	gap: 8px;
}

.rht .rht-rl-place {
	display: grid;
	gap: 2px;
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.rht .rht-rl-place:hover,
.rht .rht-rl-place:focus-visible {
	border-color: var(--rht-action);
	outline: none;
}

.rht .rht-rl-place span {
	color: var(--rht-muted);
	font-size: 13px;
}

/* Local SEO checklist (T30) */

.rht .rht-ls-top {
	margin-bottom: 16px;
}

.rht .rht-ls-top > * {
	min-width: 0;
	max-width: 100%;
}

.rht .rht-ls-sum {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 22px;
	align-items: center;
}

.rht .rht-ls-sum .rht-score {
	width: 120px;
	height: 120px;
}

.rht .rht-ls-sum__text {
	display: grid;
	gap: 8px;
	min-width: 0;
}

.rht .rht-ls-bars {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 24px;
	margin-top: 4px;
}

.rht .rht-ls-bar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 90px 40px;
	gap: 10px;
	align-items: center;
	font-size: 14px;
}

.rht .rht-ls-bar a {
	color: var(--rht-ink) !important;
	font-weight: 600;
	text-decoration: none;
}

.rht .rht-ls-bar a:hover {
	text-decoration: underline;
}

.rht .rht-ls-bar__track {
	display: block;
	height: 8px;
	border-radius: 8px;
	background: var(--rht-surface);
	overflow: hidden;
}

.rht .rht-ls-bar__track i {
	display: block;
	height: 100%;
	border-radius: 8px;
	background: currentColor;
}

.rht .rht-ls-bar--good .rht-ls-bar__track { color: var(--rht-pass); }
.rht .rht-ls-bar--mid .rht-ls-bar__track { color: var(--rht-warn); }
.rht .rht-ls-bar--low .rht-ls-bar__track { color: var(--rht-fail); }

.rht .rht-ls-bar__pct {
	color: var(--rht-muted);
	font-size: 13px;
	font-variant-numeric: tabular-nums;
	text-align: right;
}

.rht .rht-ls-next ol {
	display: grid;
	gap: 6px;
	padding-left: 22px;
	list-style: decimal;
	font-size: 15px;
}

.rht .rht-ls-next a {
	color: var(--rht-action) !important;
	font-weight: 600;
}

.rht .rht-ls-pri {
	display: inline-block;
	padding: 1px 7px;
	border-radius: 5px;
	font-size: 11px;
	font-weight: 800;
	vertical-align: 1px;
	white-space: nowrap;
}

.rht .rht-ls-pri--high { background: #fdf1f0; color: var(--rht-fail); }
.rht .rht-ls-pri--medium { background: #fdf5e6; color: var(--rht-warn); }
.rht .rht-ls-pri--low { background: var(--rht-surface); color: var(--rht-muted); }

.rht .rht-ls-list {
	display: grid;
	border-top: 1px solid var(--rht-line);
}

.rht .rht-ls-item {
	display: grid;
	grid-template-columns: 26px 1fr;
	gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid var(--rht-line);
	scroll-margin-top: 20px;
}

.rht .rht-ls-item input[type="checkbox"] {
	width: 22px;
	height: 22px;
	margin: 2px 0 0;
	accent-color: var(--rht-pass);
	cursor: pointer;
}

.rht .rht-ls-item__title {
	font-weight: 700;
	cursor: pointer;
}

.rht .rht-ls-item.is-done .rht-ls-item__title {
	color: var(--rht-muted);
	text-decoration: line-through;
	text-decoration-color: rgba(0, 0, 0, 0.3);
}

.rht .rht-ls-item.is-na {
	opacity: 0.55;
}

.rht .rht-ls-item details {
	margin-top: 4px;
	font-size: 14px;
}

.rht .rht-ls-item details summary {
	color: var(--rht-action);
	font-weight: 600;
}

.rht .rht-ls-item details p {
	margin: 6px 0;
	color: var(--rht-ink);
}

.rht .rht-ls-tool {
	color: var(--rht-action) !important;
	font-weight: 700;
	text-decoration: none;
}

.rht .rht-ls-na {
	margin-top: 4px;
	font-size: 12px;
	color: var(--rht-muted) !important;
}

/* ROAS calculator (T32) */

.rht .rht-lv__big.is-loss {
	color: var(--rht-fail);
}

.rht .rht-be {
	display: grid;
	gap: 8px;
}

.rht .rht-be__track {
	position: relative;
	height: 14px;
	border-radius: 14px;
	background: var(--rht-surface);
}

.rht .rht-be__fill {
	position: absolute;
	inset: 0 auto 0 0;
	border-radius: 14px;
}

.rht .rht-be__fill--good { background: var(--rht-pass); }
.rht .rht-be__fill--low { background: var(--rht-fail); }

.rht .rht-be__line {
	position: absolute;
	top: -6px;
	bottom: -6px;
	width: 3px;
	margin-left: -1px;
	border-radius: 2px;
	background: var(--rht-ink);
}

.rht .rht-be__labels {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 13px;
	color: var(--rht-muted);
}

.rht .rht-be__labels strong {
	color: var(--rht-ink);
}

.rht .rht-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.rht .rht-metric {
	display: grid;
	gap: 2px;
	padding: 10px 12px;
	border: 1px solid var(--rht-line);
	border-top: 3px solid var(--rht-line);
	border-radius: 10px;
	background: #fff;
}

.rht .rht-metric--good { border-top-color: var(--rht-pass); }
.rht .rht-metric--low { border-top-color: var(--rht-fail); }

.rht .rht-metric span {
	color: var(--rht-muted);
	font-size: 12px;
	font-weight: 600;
}

.rht .rht-metric strong {
	font-size: 19px;
	font-variant-numeric: tabular-nums;
}

.rht .rht-metric em {
	color: var(--rht-muted);
	font-size: 11px;
	font-style: normal;
}

.rht .rht-roas-insights {
	display: grid;
	gap: 8px;
}

.rht .rht-roas-insights li {
	padding: 10px 12px;
	border-left: 3px solid var(--rht-action);
	border-radius: 0 8px 8px 0;
	background: color-mix(in srgb, var(--rht-action) 6%, #fff);
	font-size: 14px;
}

.rht .rht-roas-compare {
	margin-top: 16px;
}

.rht .rht-table--compare input {
	width: 100%;
	min-width: 80px;
	min-height: 38px;
	padding: 6px 8px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 6px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 14px;
	box-shadow: none !important;
}

.rht .rht-table--compare td {
	font-weight: 600;
	vertical-align: middle;
}

.rht .rht-cmp {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.rht .rht-cmp.is-best {
	color: var(--rht-pass);
}

.rht .rht-cmp.is-best::after {
	content: " Best";
	font-size: 11px;
	font-weight: 800;
}

.rht .rht-roas-compare .rht-addrow {
	margin-top: 10px;
}

/* Ad budget calculator (T33) */

.rht .rht-funnel__row--plain {
	grid-template-columns: 1fr auto;
}

.rht .rht-table--scen td {
	font-weight: 600;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.rht .rht-table--scen tr.is-expected td {
	background: color-mix(in srgb, var(--rht-action) 6%, #fff);
}

.rht .rht-table--scen .is-pos { color: var(--rht-pass); }
.rht .rht-table--scen .is-neg { color: var(--rht-fail); }

/* SEO ROI calculator (T37) */

.rht .rht-table--kwplan input,
.rht .rht-table--kwplan select {
	width: 100%;
	min-width: 54px;
	min-height: 38px;
	padding: 6px 8px;
	border: 1px solid #c6cdd8 !important;
	border-radius: 6px;
	background: #fff !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 14px;
	box-shadow: none !important;
}

.rht .rht-table--kwplan td:first-child input {
	min-width: 130px;
}

.rht .rht-table--kwplan th {
	font-size: 12px;
}

.rht .rht-table--kwplan select {
	min-width: 74px;
	padding-right: 4px;
}

.rht .rht-table--kwplan .rht-iconbtn {
	width: 34px;
	height: 38px;
}

.rht .rht-table--kwplan td {
	padding: 6px 4px;
	vertical-align: middle;
}

.rht .rht-sr-chart {
	margin: 0;
}

.rht .rht-sr-chart svg {
	display: block;
	width: 100%;
	height: auto;
}

.rht .rht-sr-axis { stroke: var(--rht-line); stroke-width: 1; }
.rht .rht-sr-area { fill: color-mix(in srgb, var(--rht-pass) 12%, transparent); }
.rht .rht-sr-profit { fill: none; stroke: var(--rht-pass); stroke-width: 3; stroke-linejoin: round; }
.rht .rht-sr-cost { fill: none; stroke: var(--rht-ink); stroke-width: 2; stroke-dasharray: 6 5; }
.rht .rht-sr-be { stroke: var(--rht-action); stroke-width: 1.5; stroke-dasharray: 3 3; }
.rht .rht-sr-be-label { fill: var(--rht-action); font-size: 11px; font-weight: 700; }
.rht .rht-sr-tick { fill: var(--rht-muted); font-size: 11px; }

.rht .rht-sr-chart figcaption {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
	margin-top: 6px;
	color: var(--rht-muted);
	font-size: 12px;
}

.rht .rht-sr-key::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 0;
	margin-right: 6px;
	vertical-align: middle;
	border-top: 3px solid var(--rht-pass);
}

.rht .rht-sr-key--cost::before {
	border-top: 2px dashed var(--rht-ink);
}

/* Duplicate content checker */

.rht .rht-dupe-pair {
	grid-template-columns: 1fr 1fr auto;
	align-items: center;
}

.rht .rht-dupe-pair input {
	min-width: 0;
	min-height: 48px;
	padding: 0 14px;
	border: 0 !important;
	border-radius: 10px;
	background: var(--rht-surface) !important;
	color: var(--rht-ink) !important;
	font: inherit;
	font-size: 16px;
	box-shadow: none !important;
}

.rht .rht-dupe-texts {
	grid-template-columns: 1fr 1fr;
}

.rht .rht-dupe-texts .rht-btn {
	grid-column: 1 / -1;
}

.rht .rht-dupe-texts .rht-textinput {
	min-height: 140px;
	border-radius: 10px !important;
	background: var(--rht-surface) !important;
}

.rht .rht-bar--no i { background: var(--rht-fail); }
.rht .rht-bar--warn i { background: var(--rht-warn); }
.rht .rht-bar--neutral i { background: #9aa5b5; }

.rht .rht-dupe-sim {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.rht .rht-dupe-tags {
	display: grid;
	gap: 10px;
}

.rht .rht-dupe-tags > li {
	padding: 10px 12px;
	border-left: 3px solid var(--rht-warn);
	border-radius: 0 8px 8px 0;
	background: #fdf8ee;
}

.rht .rht-dupe-tags > li > p {
	font-weight: 700;
	overflow-wrap: anywhere;
}

.rht .rht-dupe-tags ul {
	margin-top: 4px;
	color: var(--rht-muted);
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 13px;
}

.rht .rht-dupe-head {
	align-items: center;
}

.rht .rht-dupe-big {
	display: grid;
	place-items: center;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	border: 10px solid currentColor;
	font-size: 34px;
	font-weight: 800;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.rht .rht-dupe-big span {
	display: block;
	margin-top: -30px;
	color: var(--rht-muted);
	font-size: 13px;
	font-weight: 600;
}

.rht .rht-dupe-big--no { color: var(--rht-fail); }
.rht .rht-dupe-big--warn { color: var(--rht-warn); }
.rht .rht-dupe-big--neutral { color: var(--rht-pass); }

.rht .rht-dupe-cols {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 16px;
}

.rht .rht-dupe-col {
	display: grid;
	align-content: start;
	gap: 4px;
	min-width: 0;
}

.rht .rht-dupe-col .rht-table__sub {
	overflow-wrap: anywhere;
}

.rht .rht-dupe-text {
	max-height: 520px;
	margin-top: 6px;
	padding: 14px;
	overflow: auto;
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	font-size: 15px;
	line-height: 1.7;
}

.rht .rht-dupe-text mark,
.rht .rht-dupe-legend mark {
	padding: 1px 2px;
	border-radius: 3px;
	background: #fde68a;
	color: inherit;
}

.rht .rht-dupe-text mark.is-near,
.rht .rht-dupe-legend mark.is-near {
	background: #fff3c4;
	box-shadow: inset 0 -2px 0 #f0b429;
}

.rht .rht-dupe-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 13px;
}

/* Broken link checker (T04) */

.rht .rht-tablewrap {
	overflow-x: auto;
}

.rht .rht-table--links {
	min-width: 640px;
}

.rht .rht-table--links td {
	font-weight: 500;
}

.rht .rht-table--links td:first-child,
.rht .rht-table--links td:last-child {
	white-space: nowrap;
}

.rht .rht-table--links a {
	color: var(--rht-ink) !important;
	text-decoration: none;
}

.rht .rht-table--links a:hover {
	text-decoration: underline;
}

.rht .rht-table--links tr[hidden] {
	display: none;
}

.rht .rht-code-badge--neutral { background: var(--rht-surface); color: var(--rht-muted); }
.rht .rht-verdict--neutral { background: var(--rht-surface); color: var(--rht-muted); }

.rht .rht-links .rht-snippet__head {
	flex-wrap: wrap;
	align-items: flex-start;
}

/* Page speed (T06) */

.rht .rht-rings {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 18px 0;
}

.rht .rht-ring {
	position: relative;
	display: grid;
	justify-items: center;
	gap: 6px;
	padding: 16px 8px;
	border: 1px solid var(--rht-line);
	border-radius: var(--rht-radius);
	background: #fff;
}

.rht .rht-ring svg {
	width: 84px;
	height: 84px;
	transform: rotate(-90deg);
}

.rht .rht-ring__num {
	position: absolute;
	top: 16px;
	width: 84px;
	height: 84px;
	display: grid;
	place-items: center;
	font-size: 26px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.rht .rht-ring__label {
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}

.rht .rht-ring--good { color: var(--rht-pass); }
.rht .rht-ring--mid { color: var(--rht-warn); }
.rht .rht-ring--low { color: var(--rht-fail); }
.rht .rht-ring .rht-ring__label { color: var(--rht-ink); }

.rht .rht-cwvs {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 10px;
}

.rht .rht-cwv {
	display: grid;
	gap: 8px;
	padding: 14px;
	border: 1px solid var(--rht-line);
	border-left: 4px solid currentColor;
	border-radius: 10px;
	background: #fff;
}

.rht .rht-cwv--good { color: var(--rht-pass); }
.rht .rht-cwv--mid { color: var(--rht-warn); }
.rht .rht-cwv--low { color: var(--rht-fail); }

.rht .rht-cwv__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 10px;
}

.rht .rht-cwv__label {
	color: var(--rht-ink);
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-cwv__value {
	font-size: 22px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.rht .rht-cwv__rating {
	font-size: 13px;
	font-weight: 700;
}

.rht .rht-cwv .rht-tag {
	margin-left: 4px;
	vertical-align: 1px;
}

.rht .rht-dist {
	display: flex;
	height: 8px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--rht-surface);
}

.rht .rht-dist i { display: block; height: 100%; }
.rht .rht-dist .g { background: #34a853; }
.rht .rht-dist .m { background: #f9ab00; }
.rht .rht-dist .p { background: #ea4335; }

.rht .rht-labwrap {
	display: grid;
	grid-template-columns: 1fr 180px;
	gap: 18px;
	align-items: start;
}

.rht .rht-labs {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 10px;
}

.rht .rht-lab {
	display: grid;
	gap: 4px;
	padding: 12px 14px;
	border-radius: 10px;
	background: var(--rht-surface);
	border-top: 3px solid currentColor;
}

.rht .rht-lab span {
	color: var(--rht-muted);
	font-size: 13px;
}

.rht .rht-lab strong {
	font-size: 22px;
	font-variant-numeric: tabular-nums;
}

.rht .rht-lab--good { color: var(--rht-pass); }
.rht .rht-lab--mid { color: var(--rht-warn); }
.rht .rht-lab--low { color: var(--rht-fail); }

.rht .rht-shot {
	margin: 0;
	padding: 6px;
	border: 1px solid var(--rht-line);
	border-radius: 12px;
	background: #fff;
}

.rht .rht-shot img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 8px;
}

.rht .rht-device {
	margin-top: 4px;
}

.rht .rht-device[hidden] {
	display: none;
}

/* Google preview */

.rht .rht-serp {
	padding: 16px 18px;
	border: 1px solid var(--rht-line);
	border-radius: 8px;
	font-family: Arial, Helvetica, sans-serif;
}

.rht .rht-serp__url {
	color: #202124;
	font-size: 14px;
	overflow-wrap: anywhere;
}

.rht .rht-serp__title {
	margin-top: 4px;
	color: #1a0dab;
	font-size: 20px;
	line-height: 1.3;
}

.rht .rht-serp__desc {
	margin-top: 4px;
	color: #4d5156;
	font-size: 14px;
	line-height: 1.58;
}

/* Social share preview */

.rht .rht-share {
	border: 1px solid var(--rht-line);
	border-radius: 10px;
	overflow: hidden;
	font-family: Arial, Helvetica, sans-serif;
}

.rht .rht-share__img {
	aspect-ratio: 1.91 / 1;
	background: var(--rht-surface);
}

.rht .rht-share__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rht .rht-share__img--none {
	display: grid;
	place-items: center;
	color: var(--rht-muted);
	font-size: 14px;
	font-weight: 700;
}

.rht .rht-share__text {
	display: grid;
	gap: 2px;
	padding: 10px 14px 12px;
	background: #f0f2f5;
}

.rht .rht-share__site {
	color: #65676b;
	font-size: 12px;
}

.rht .rht-share__title {
	color: #050505;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

.rht .rht-share__desc {
	color: #65676b;
	font-size: 14px;
}

/* ============================================================ CTA */

.rht .rht-cta-wrap {
	margin-top: 36px;
}

.rht .rht-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 18px 28px;
	padding: 30px 32px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--rht-c1) 0%, var(--rht-c2) 100%);
	color: #fff;
}

.rht .rht-cta__body {
	flex: 1 1 360px;
	display: grid;
	gap: 6px;
}

.rht .rht-cta__heading {
	color: #fff;
	font-size: 22px;
	font-weight: 800;
}

.rht .rht-cta__text {
	color: rgba(255, 255, 255, 0.86);
}

.rht .rht-btn--light {
	min-height: 52px;
	background: #fff !important;
	color: var(--rht-c2) !important;
}

/* ============================================================ Small screens */

@media (max-width: 820px) {
	.rht .rht-panels {
		grid-template-columns: 1fr;
	}

	.rht .rht-schema-grid,
	.rht .rht-split,
	.rht .rht-split--robots {
		grid-template-columns: minmax(0, 1fr);
	}

	.rht .rht-split__out {
		position: static;
	}

	.rht .rht-schema-out {
		position: static;
	}
}

@media (max-width: 600px) {
	.rht .rht-hero {
		border-radius: 14px;
	}

	.rht .rht-inputrow {
		flex-direction: column;
		gap: 6px;
	}

	.rht .rht-input {
		flex: none;
		width: 100%;
	}

	.rht .rht-btn {
		width: 100%;
	}

	.rht .rht-kwrow {
		flex-direction: column;
		align-items: stretch;
		text-align: left;
		gap: 6px;
	}

	.rht .rht-kwinput {
		width: 100%;
	}

	.rht .rht-report {
		grid-template-columns: 1fr;
		justify-items: start;
		gap: 16px;
	}

	.rht .rht-score {
		width: 120px;
		height: 120px;
	}

	.rht .rht-score__num {
		font-size: 38px;
	}

	.rht .rht-check {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.rht .rht-check__status {
		justify-self: start;
	}

	.rht .rht-check__cat {
		display: block;
		margin-left: 0;
	}

	.rht .rht-panel {
		padding: 18px 16px;
	}

	.rht .rht-hcounts {
		grid-template-columns: repeat(3, 1fr);
	}

	.rht .rht-cats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.rht .rht-cat {
		padding: 12px;
	}

	.rht .rht-cat__label {
		font-size: 14px;
	}

	.rht .rht-places--grid {
		grid-template-columns: 1fr;
	}

	.rht .rht-tree__item {
		grid-template-columns: auto 1fr;
		padding-left: calc(var(--lvl, 0) * 12px);
	}

	.rht .rht-tree__words {
		grid-column: 2;
	}

	.rht .rht-fields {
		grid-template-columns: 1fr;
	}

	.rht .rht-kwhead {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.rht .rht-linkrow__main {
		grid-template-columns: 1fr;
	}

	.rht .rht-wa-qr {
		grid-template-columns: 1fr;
		justify-items: start;
	}

	.rht .rht-tiles {
		grid-template-columns: 1fr;
	}

	.rht .rht-ls-sum {
		grid-template-columns: minmax(0, 1fr);
		justify-items: start;
	}

	.rht .rht-ls-sum__text,
	.rht .rht-ls-bars {
		width: 100%;
	}

	.rht .rht-ls-bars {
		grid-template-columns: minmax(0, 1fr);
	}

	.rht .rht-ls-item {
		scroll-margin-top: 20px;
	}

	.rht .rht-lv__unit {
		grid-template-columns: 1fr;
	}

	.rht .rht-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rht .rht-rings {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rht .rht-imggrid {
		grid-template-columns: 1fr;
	}

	.rht .rht-dupe-pair,
	.rht .rht-dupe-texts,
	.rht .rht-dupe-cols {
		grid-template-columns: 1fr;
	}

	.rht .rht-dupe-big {
		width: 110px;
		height: 110px;
		font-size: 28px;
	}

	.rht .rht-imgcard {
		grid-template-columns: 72px 1fr;
	}

	.rht .rht-imgcard__thumb {
		width: 72px;
		height: 72px;
	}

	.rht .rht-labwrap {
		grid-template-columns: 1fr;
	}

	.rht .rht-shot {
		max-width: 200px;
	}

	.rht .rht-funnel__row {
		grid-template-columns: 1fr 1fr 14px 1fr;
		font-size: 14px;
	}

	.rht .rht-funnel__delta {
		grid-column: 2 / -1;
		text-align: left;
	}

	.rht .rht-funnel__row--plain {
		grid-template-columns: 1fr auto;
	}

	.rht .rht-cost-bar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 9990;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
		background: #fff;
		box-shadow: 0 -4px 16px rgba(6, 14, 40, 0.15);
	}

	.rht .rht-cost-bar small {
		display: block;
		color: var(--rht-muted);
		font-size: 12px;
	}

	.rht .rht-cost-bar strong {
		font-size: 18px;
		font-variant-numeric: tabular-nums;
	}

	.rht .rht-cost-bar .rht-btn {
		width: auto;
		min-height: 42px;
	}

	.rht-cost .rht-cost__copy {
		margin-bottom: 70px;
	}

	.rht .rht-wa-qr__img {
		width: 180px;
	}

	.rht .rht-bar {
		display: none;
	}

	.rht .rht-textmode .rht-btn {
		justify-self: stretch;
	}

	.rht .rht-bot {
		grid-template-columns: 1fr auto;
		gap: 4px 12px;
	}

	.rht .rht-bot--head {
		display: none;
	}

	.rht .rht-bot__use,
	.rht .rht-bot__robots,
	.rht .rht-bot__live {
		grid-column: 1 / -1;
	}

	.rht .rht-bot__state {
		grid-row: 1;
		grid-column: 2;
	}

	.rht .rht-cta {
		padding: 24px 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.rht .rht-spinner {
		animation-duration: 2.4s;
	}
}
