.rtc-legal {
	max-width: 760px;
	margin: 0 auto;
}

.rtc-policy-cta {
	text-align: center;
	margin-top: 2em;
}

.rtc-policy-cta a.button {
	display: inline-block;
	font-size: 1.1em;
	padding: 0.5em 1.4em;
	font-weight: 500;
}

.rtc-report-form {
	margin-top: 1.5em;
}

.rtc-section {
	margin: 1.6em 0 0.6em;
	padding-bottom: 0.3em;
	border-bottom: 1px solid var(--rt-border);
	font-size: 1.05em;
}

.rtc-field {
	margin-bottom: 1em;
}

.rtc-field label {
	display: block;
	margin-bottom: 0.35em;
	font-weight: 500;
}

.rtc-field input[type="text"],
.rtc-field input[type="email"],
.rtc-field input[type="url"],
.rtc-field input[type="tel"],
.rtc-field textarea,
.rtc-field select {
	width: 100%;
	background-color: var(--rt-surface);
	border: 1px solid var(--rt-border);
	border-radius: var(--rt-radius-sm);
	color: var(--rt-foreground);
	padding: 0.6em 0.8em;
}

.rtc-field--check label {
	font-weight: 400;
	display: flex;
	gap: 0.5em;
	align-items: flex-start;
}

.rtc-field--check input {
	margin-top: 0.25em;
}

.rtc-help {
	display: block;
	margin-top: 0.3em;
	color: var(--rt-muted-fg, #a3a3a3);
	font-size: 0.85em;
}

.rtc-req {
	color: var(--rt-accent);
}

.rtc-hp {
	position: absolute;
	left: -9999px;
}

.rtc-submit {
	margin-top: 1em;
	font-size: 1.05em;
}

.rtc-submit:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.rtc-form-notice {
	padding: 0.9em 1.1em;
	border-radius: var(--rt-radius-sm);
	margin-bottom: 1.2em;
}

.rtc-form-notice--ok {
	background: rgba(40, 167, 69, 0.15);
	border: 1px solid #28a745;
}

.rtc-form-notice--error {
	background: rgba(176, 0, 32, 0.15);
	border: 1px solid var(--rt-primary);
}

.rtc-status-check {
	margin-top: 2.5em;
	padding-top: 1.5em;
	border-top: 1px solid var(--rt-border);
}

.rtc-status-form {
	display: flex;
	gap: 0.6em;
	flex-wrap: wrap;
	align-items: center;
}

.rtc-status-form input[type="text"] {
	flex: 1;
	min-width: 220px;
	background-color: var(--rt-surface);
	border: 1px solid var(--rt-border);
	border-radius: var(--rt-radius-sm);
	color: var(--rt-foreground);
	padding: 0.6em 0.8em;
}

.rtc-status-form button {
	flex: 0 0 auto;
	padding: 0.6em 1.1em;
	font-size: 1em;
	line-height: 1.5;
	border-radius: var(--rt-radius-sm);
}

.rtc-status-count {
	font-size: 0.85em;
	color: var(--rt-muted-fg, #a3a3a3);
}

.rtc-status-table {
	width: 100%;
	font-size: 0.8em;
}

.rtc-status-table th {
	text-align: left;
	width: 130px;
	padding: 0.25em 0.7em 0.25em 0;
	font-weight: 500;
}

.rtc-status-table td {
	padding: 0.25em 0;
}

.rtc-status-card {
	padding: 0.8em 1em;
	border-radius: var(--rt-radius-sm);
	margin-bottom: 0.8em;
	border: 1px solid var(--rt-border);
}

.rtc-status-card--resolved {
	background: rgba(40, 167, 69, 0.12);
	border-color: #28a745;
}

.rtc-status-card--rejected {
	background: rgba(176, 0, 32, 0.12);
	border-color: var(--rt-primary);
}

.rtc-status-card--reviewing {
	background: rgba(240, 173, 16, 0.12);
	border-color: #f0ad10;
}

.rtc-status-badge {
	display: inline-block;
	padding: 0.15em 0.6em;
	border-radius: 999px;
	font-size: 0.92em;
	font-weight: 600;
	line-height: 1.6;
	color: #fff;
}

.rtc-status-badge--pending {
	background: #6c757d;
}

.rtc-status-badge--reviewing {
	background: #f0ad10;
	color: #1a1a1a;
}

.rtc-status-badge--resolved {
	background: #28a745;
}

.rtc-status-badge--rejected {
	background: var(--rt-primary, #b00020);
}

@media only screen and (max-width: 767.98px) {
	.rtc-legal {
		padding: 0 4px;
	}

	.rtc-section {
		font-size: 1em;
		margin-top: 1.3em;
	}

	.rtc-field input[type="text"],
	.rtc-field input[type="email"],
	.rtc-field input[type="url"],
	.rtc-field input[type="tel"],
	.rtc-field textarea,
	.rtc-field select {
		padding: 0.7em 0.8em;
		font-size: 16px;
	}

	.rtc-submit {
		width: 100%;
	}

	.rtc-status-form input[type="text"] {
		flex: 1 1 100%;
		min-width: 0;
		font-size: 16px;
	}

	.rtc-status-form button {
		flex: 1 1 100%;
	}

	.rtc-status-table,
	.rtc-status-table tbody,
	.rtc-status-table tr,
	.rtc-status-table th,
	.rtc-status-table td {
		display: block;
		width: auto;
	}

	.rtc-status-table th {
		padding: 0.5em 0 0;
		color: var(--rt-muted-fg, #a3a3a3);
	}

	.rtc-status-table td {
		padding: 0 0 0.4em;
	}
}
