.rntc-public-card {
	--rntc-public-border: var(--rntc-color-border, #e6e9ef);
	--rntc-public-text: var(--rntc-color-text, #1f2430);
	--rntc-public-muted: var(--rntc-color-muted, #687280);
	--rntc-public-accent: var(--rntc-color-brand, #d72638);
	--rntc-public-asset-empty: url("../img/empty-state.svg");
	--rntc-public-asset-success: url("../img/status-success.svg");
	--rntc-public-asset-error: url("../img/status-error.svg");
	--rntc-public-asset-course: url("../img/course-network.svg");
	--rntc-public-asset-course-alt: url("../img/course-security.svg");
	--rntc-public-asset-certificate: url("../img/certificate-seal.svg");
	--rntc-public-asset-chart: url("../img/status-chart.svg");
	background: var(--rntc-color-surface, #ffffff);
	border: 1px solid var(--rntc-public-border);
	border-radius: var(--rntc-radius-lg, 18px);
	box-sizing: border-box;
	box-shadow: var(--rntc-shadow-card, 0 16px 38px rgba(31, 36, 48, 0.09));
	color: var(--rntc-public-text);
	font-family: var(--rntc-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	margin: 18px 0;
	max-width: 980px;
	overflow-wrap: anywhere;
	padding: 22px;
	width: 100%;
}

.rntc-public-card *,
.rntc-public-card *::before,
.rntc-public-card *::after {
	box-sizing: border-box;
}

.rntc-public-card__top {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: space-between;
	margin-bottom: 8px;
}

.rntc-public-brand {
	align-items: center;
	color: var(--rntc-public-text);
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	gap: 8px;
	min-width: 0;
}

.rntc-public-brand__mark {
	align-items: center;
	background: var(--rntc-public-accent);
	border-radius: 10px;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	height: 32px;
	justify-content: center;
	width: 32px;
}

.rntc-public-badge {
	align-items: center;
	background: #fff1f3;
	border: 1px solid #ffd2d8;
	border-radius: 999px;
	color: var(--rntc-public-accent);
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	min-height: 28px;
	padding: 0 10px;
}

.rntc-public-card h2 {
	color: #111827;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.3;
	margin: 0 0 10px;
}

.rntc-public-card h3 {
	color: #111827;
	font-size: 17px;
	line-height: 1.35;
	margin: 0;
}

.rntc-public-card p {
	color: var(--rntc-public-muted);
	font-size: 16px;
	line-height: 1.55;
	margin: 0;
}

.rntc-public-card [aria-disabled="true"],
.rntc-public-button:disabled {
	cursor: default;
}

.rntc-public-state {
	align-items: center;
	border-radius: 12px;
	display: grid;
	font-size: 15px;
	gap: 12px;
	grid-template-columns: 48px minmax(0, 1fr);
	line-height: 1.45;
	margin-top: 14px;
	padding: 12px;
}

.rntc-public-state::before {
	background: var(--rntc-public-asset-empty) center / contain no-repeat;
	content: "";
	display: block;
	height: 48px;
	width: 48px;
}

.rntc-public-state--empty {
	background: #f4f4f5;
	border: 1px solid var(--rntc-public-border);
	color: var(--rntc-public-muted);
}

.rntc-public-state--success {
	background: #edf7ed;
	border: 1px solid #8bc58b;
	color: #1f6b2a;
}

.rntc-public-state--success::before {
	background-image: var(--rntc-public-asset-success);
}

.rntc-public-state--error {
	background: #fcf0f1;
	border: 1px solid #e99ba3;
	color: #8a2424;
}

.rntc-public-state--error::before {
	background-image: var(--rntc-public-asset-error);
}

.rntc-public-button {
	align-items: center;
	background: linear-gradient(180deg, #ef3346, var(--rntc-public-accent));
	border: 0;
	border-radius: 10px;
	box-shadow: 0 10px 20px rgba(215, 38, 56, 0.18);
	color: #ffffff;
	display: inline-flex;
	font-weight: 700;
	justify-content: center;
	line-height: 1.2;
	margin-top: 14px;
	min-height: 44px;
	padding: 10px 14px;
	text-decoration: none;
}

.rntc-public-button:focus-visible,
.rntc-public-field input:focus,
.rntc-public-field select:focus,
.rntc-public-field textarea:focus,
.rntc-answer-option input:focus-visible {
	box-shadow: 0 0 0 3px rgba(215, 38, 56, 0.16);
	outline: 2px solid transparent;
}

.rntc-public-field {
	display: grid;
	gap: 6px;
	margin-top: 14px;
}

.rntc-public-field label {
	font-weight: 700;
}

.rntc-public-field input,
.rntc-public-field select,
.rntc-public-field textarea {
	border: 1px solid var(--rntc-public-border);
	border-radius: 10px;
	min-height: 44px;
	padding: 8px 10px;
	width: 100%;
}

.rntc-public-field textarea {
	resize: vertical;
}

.rntc-public-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 16px;
}

.rntc-public-grid > *,
.rntc-course-card > * {
	min-width: 0;
}

.rntc-catalog-card,
.rntc-course-card,
.rntc-certificate-card,
.rntc-test-shell,
.rntc-result-card {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 16px;
	padding: 16px;
}

.rntc-catalog-card {
	display: grid;
	gap: 10px;
}

.rntc-course-card {
	display: grid;
	gap: 14px;
	grid-template-columns: 170px minmax(0, 1fr);
}

.rntc-course-card__media {
	background: var(--rntc-public-asset-course) center / cover no-repeat, #1f2430;
	border-radius: 14px;
	min-height: 112px;
}

.rntc-course-shell {
	display: grid;
	gap: 14px;
}

.rntc-course-workspace {
	align-items: start;
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(210px, 260px) minmax(0, 1fr);
}

.rntc-course-description {
	color: var(--rntc-public-muted);
	font-size: 14px;
	line-height: 1.55;
	margin: 8px 0 12px;
}

.rntc-course-module-list,
.rntc-course-list {
	display: grid;
	gap: 12px;
}

.rntc-course-module-card,
.rntc-course-list__item {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 12px;
	padding: 14px;
}

.rntc-course-list__item {
	align-items: center;
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) auto;
	justify-content: stretch;
}

.rntc-course-list__item::before {
	background: var(--rntc-public-asset-course-alt) center / cover no-repeat, #1f2430;
	border-radius: 12px;
	content: "";
	display: block;
	height: 68px;
	width: 92px;
}

.rntc-course-module-card {
	scroll-margin-top: 24px;
}

.rntc-course-module-card.is-complete {
	background: #f7fbf9;
	border-color: #bddfca;
}

.rntc-course-module-card__head {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.rntc-course-module-card h3,
.rntc-course-list__item h3 {
	color: var(--rntc-public-text);
	font-size: 18px;
	line-height: 1.35;
	margin: 0;
	overflow-wrap: anywhere;
}

.rntc-course-module-card__content {
	color: var(--rntc-public-muted);
	font-size: 14px;
	line-height: 1.6;
	overflow-wrap: anywhere;
}

.rntc-progress-row {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 8px;
}

.rntc-progress {
	background: #e9edf3;
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
	width: 100%;
}

.rntc-progress span {
	background: var(--rntc-public-accent);
	display: block;
	height: 100%;
	transition: width 0.2s ease;
}

.rntc-public-list-tools {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(180px, 1fr) minmax(0, auto) auto;
	margin-top: 14px;
	padding: 12px;
}

.rntc-public-search input {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 10px;
	min-height: 44px;
	padding: 8px 10px;
	width: 100%;
}

.rntc-public-filter-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.rntc-public-chip,
.rntc-public-reset {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 999px;
	color: var(--rntc-public-muted);
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
	min-height: 38px;
	min-width: 44px;
	padding: 0 12px;
}

.rntc-public-chip.is-active {
	background: var(--rntc-public-accent);
	border-color: var(--rntc-public-accent);
	color: #ffffff;
}

.rntc-public-reset:disabled {
	cursor: default;
	opacity: 0.56;
}

.rntc-public-list-meta {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

.rntc-public-list-meta span {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.rntc-answer-stack {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.rntc-answer-stack span {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 12px;
	padding: 12px;
}

.rntc-answer-stack .is-selected {
	background: #fff1f3;
	border-color: var(--rntc-public-accent);
	color: var(--rntc-public-accent);
	font-weight: 700;
}

.rntc-test-form {
	margin: 0;
}

.rntc-test-summary {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.rntc-test-summary h3 {
	margin-top: 8px;
}

.rntc-test-summary__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-end;
}

.rntc-test-summary__meta span {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 999px;
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
	min-height: 30px;
	padding: 5px 10px;
}

.rntc-question-list {
	display: grid;
	gap: 14px;
	margin-top: 16px;
}

.rntc-test-workspace {
	align-items: start;
	display: grid;
	gap: 16px;
	grid-template-columns: minmax(210px, 260px) minmax(0, 1fr);
}

.rntc-test-workspace__nav,
.rntc-course-outline {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	padding: 14px;
	position: sticky;
	top: 24px;
}

.rntc-test-workspace__body {
	min-width: 0;
}

.rntc-public-nav-title {
	display: grid;
	gap: 4px;
	margin-bottom: 12px;
}

.rntc-public-nav-title strong {
	color: var(--rntc-public-text);
	font-size: 15px;
	line-height: 1.35;
}

.rntc-public-nav-title span {
	color: var(--rntc-public-muted);
	font-size: 13px;
	line-height: 1.45;
}

.rntc-public-question-nav,
.rntc-course-outline__list {
	display: grid;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rntc-public-question-nav li,
.rntc-course-outline__list li {
	margin: 0;
}

.rntc-public-question-nav a,
.rntc-course-outline__list a {
	align-items: center;
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 12px;
	color: var(--rntc-public-text);
	display: grid;
	gap: 9px;
	grid-template-columns: 30px minmax(0, 1fr);
	min-height: 48px;
	padding: 8px;
	text-decoration: none;
}

.rntc-public-question-nav a:hover,
.rntc-public-question-nav a:focus-visible,
.rntc-course-outline__list a:hover,
.rntc-course-outline__list a:focus-visible {
	border-color: #ffd2d8;
	box-shadow: 0 0 0 3px rgba(215, 38, 56, 0.1);
	outline: none;
}

.rntc-public-question-nav a.is-answered,
.rntc-course-outline__list a.is-complete {
	background: #f7fbf9;
	border-color: #bddfca;
}

.rntc-public-question-nav span,
.rntc-course-outline__list span {
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 999px;
	color: var(--rntc-public-accent);
	display: inline-flex;
	font-weight: 800;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.rntc-public-question-nav strong,
.rntc-course-outline__list strong {
	font-size: 13px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.rntc-question-card {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	margin: 0;
	padding: 16px;
	scroll-margin-top: 24px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.rntc-question-card.is-answered {
	border-color: #bddfca;
	box-shadow: 0 10px 24px rgba(34, 197, 94, 0.07);
}

.rntc-question-card legend {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 999px;
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 800;
	padding: 5px 10px;
}

.rntc-answer-options {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.rntc-answer-option {
	align-items: flex-start;
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 12px;
	cursor: pointer;
	display: grid;
	gap: 10px;
	grid-template-columns: 24px minmax(0, 1fr);
	min-height: 48px;
	padding: 12px;
}

.rntc-answer-option input {
	accent-color: var(--rntc-public-accent);
	height: 20px;
	margin: 2px 0 0;
	width: 20px;
}

.rntc-answer-option span {
	color: var(--rntc-public-text);
	font-size: 15px;
	line-height: 1.45;
}

.rntc-answer-option:has(input:checked) {
	background: #fff1f3;
	border-color: var(--rntc-public-accent);
}

.rntc-public-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}

.rntc-public-actions span {
	color: var(--rntc-public-muted);
	font-size: 14px;
	line-height: 1.4;
}

.rntc-result-card {
	align-items: center;
	display: grid;
	justify-items: center;
	text-align: center;
}

.rntc-result-card__cup {
	align-items: center;
	background: #fff7e8;
	border-radius: 18px;
	color: #f59e0b;
	display: inline-flex;
	font-size: 42px;
	height: 82px;
	justify-content: center;
	width: 82px;
}

.rntc-result-card strong {
	color: #22c55e;
	font-size: 44px;
	line-height: 1.1;
	margin-top: 10px;
}

.rntc-public-results {
	display: grid;
	gap: 12px;
	margin-top: 16px;
}

.rntc-results-summary {
	background:
		linear-gradient(90deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.84)),
		var(--rntc-public-asset-chart) right 14px center / 180px auto no-repeat;
	border: 1px solid var(--rntc-public-border);
	border-radius: 16px;
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 16px;
	padding: 12px;
}

.rntc-results-summary div {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 6px;
	padding: 14px;
}

.rntc-results-summary span {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
}

.rntc-results-summary strong {
	color: var(--rntc-public-text);
	font-size: 28px;
	line-height: 1;
}

.rntc-public-result-row {
	align-items: center;
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 14px;
}

.rntc-public-result-row h3 {
	margin-top: 8px;
}

.rntc-public-result-row strong {
	font-size: 32px;
	line-height: 1;
}

.rntc-public-result-row--success strong {
	color: #14833d;
}

.rntc-public-result-row--warning strong {
	color: #9a5a00;
}

.rntc-public-result-row--error strong {
	color: #8a2424;
}

.rntc-certificate-card {
	display: grid;
	gap: 10px;
}

.rntc-certificate-lookup-form {
	align-items: end;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.rntc-certificate-lookup-form .rntc-public-button {
	margin-top: 0;
}

.rntc-certificate-summary {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-left: 4px solid #94a3b8;
	border-radius: 14px;
	display: grid;
	gap: 12px;
	margin-top: 14px;
	padding: 14px;
}

.rntc-certificate-summary--success {
	border-left-color: #22c55e;
}

.rntc-certificate-summary--warning {
	border-left-color: #f59e0b;
}

.rntc-certificate-summary--error {
	border-left-color: #d72638;
}

.rntc-certificate-summary__head {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: space-between;
}

.rntc-certificate-summary__head strong {
	color: var(--rntc-public-text);
	font-size: 18px;
	letter-spacing: 0;
}

.rntc-certificate-summary dl {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
}

.rntc-certificate-summary dl > div {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 12px;
	display: grid;
	gap: 4px;
	padding: 10px;
}

.rntc-certificate-summary dt {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
}

.rntc-certificate-summary dd {
	color: var(--rntc-public-text);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0;
}

.rntc-certificate-document {
	background:
		linear-gradient(135deg, rgba(215, 38, 56, 0.07), rgba(59, 130, 246, 0.05)),
		#ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 16px;
	display: grid;
	gap: 12px;
	overflow: hidden;
	padding: 16px;
	position: relative;
}

.rntc-certificate-document::after {
	background: var(--rntc-public-asset-certificate) center / contain no-repeat;
	content: "";
	height: 160px;
	opacity: 0.14;
	position: absolute;
	right: -22px;
	top: -28px;
	width: 160px;
}

.rntc-certificate-document__text {
	color: var(--rntc-public-text);
	font-size: 16px;
	line-height: 1.6;
	position: relative;
	z-index: 1;
}

.rntc-certificate-document__text p {
	color: var(--rntc-public-text);
}

.rntc-certificate-list {
	display: grid;
	gap: 12px;
}

.rntc-certificate-list__item {
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-left: 4px solid #94a3b8;
	border-radius: 14px;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) auto;
	padding: 14px;
}

.rntc-certificate-list__item h3 {
	margin-top: 8px;
}

.rntc-certificate-list__item strong {
	color: var(--rntc-public-text);
	font-size: 15px;
	line-height: 1.35;
}

.rntc-portal-panel {
	display: grid;
	gap: 16px;
}

.rntc-portal-row {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 16px;
	display: grid;
	gap: 8px;
	padding: 16px;
}

.rntc-portal-row strong {
	color: var(--rntc-public-text);
	font-size: 18px;
}

.rntc-assignment-toolbar,
.rntc-portal-summary,
.rntc-portal-section {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 16px;
	padding: 16px;
}

.rntc-assignment-toolbar {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: space-between;
	margin-top: 14px;
}

.rntc-assignment-toolbar div,
.rntc-portal-section__head {
	display: grid;
	gap: 4px;
	min-width: 0;
}

.rntc-assignment-toolbar strong,
.rntc-portal-section__head h3 {
	color: var(--rntc-public-text);
	font-size: 18px;
	line-height: 1.3;
	margin: 0;
}

.rntc-assignment-toolbar span:not(.rntc-public-badge),
.rntc-portal-section__head span {
	color: var(--rntc-public-muted);
	font-size: 14px;
	line-height: 1.4;
}

.rntc-assignment-list {
	display: grid;
	gap: 12px;
	margin-top: 14px;
}

.rntc-assignment-card {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-left: 4px solid #94a3b8;
	border-radius: 14px;
	display: grid;
	gap: 10px;
	min-width: 0;
	padding: 14px;
}

.rntc-assignment-card--active {
	border-left-color: var(--rntc-public-accent);
}

.rntc-assignment-card--warning {
	border-left-color: #f59e0b;
}

.rntc-assignment-card--success {
	border-left-color: #22c55e;
}

.rntc-assignment-card__head {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: space-between;
}

.rntc-assignment-card__head > span:not(.rntc-public-badge) {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
}

.rntc-assignment-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.rntc-assignment-card__meta span,
.rntc-assignment-note {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 999px;
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	min-height: 30px;
	padding: 5px 10px;
}

.rntc-assignment-card__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.rntc-assignment-card__actions .rntc-public-button {
	margin-top: 2px;
}

.rntc-portal-summary {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(0, 1fr) auto;
}

.rntc-portal-summary h3 {
	font-size: 22px;
	margin-top: 8px;
}

.rntc-portal-summary__status {
	align-items: center;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.94)),
		var(--rntc-public-asset-chart) center / cover no-repeat,
		#ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	justify-items: center;
	min-width: 132px;
	padding: 14px;
	text-align: center;
}

.rntc-portal-summary__status strong {
	color: var(--rntc-public-accent);
	font-size: 34px;
	line-height: 1;
}

.rntc-portal-summary__status span {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
}

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

.rntc-portal-metric {
	background: #ffffff;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 6px;
	padding: 14px;
}

.rntc-portal-metric span,
.rntc-portal-metric small {
	color: var(--rntc-public-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
}

.rntc-portal-metric strong {
	color: var(--rntc-public-text);
	font-size: 30px;
	line-height: 1;
}

.rntc-portal-section {
	display: grid;
	gap: 12px;
}

.rntc-public-field input:disabled,
.rntc-public-field select:disabled {
	background: #f6f8fb;
	color: var(--rntc-public-muted);
	opacity: 1;
}

.rntc-public-footer {
	border-top: 1px solid var(--rntc-public-border);
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 16px;
	padding-top: 16px;
}

.rntc-public-footnote {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 4px;
	min-width: 0;
	padding: 12px;
}

.rntc-public-footnote strong {
	color: var(--rntc-public-text);
	font-size: 13px;
	line-height: 1.35;
}

.rntc-public-footnote small {
	color: var(--rntc-public-muted);
	font-size: 13px;
	line-height: 1.45;
}

.rntc-public-card form.is-submitting {
	opacity: 0.82;
}

.rntc-public-card form.is-submitting button[aria-busy="true"] {
	position: relative;
}

.rntc-open-participant {
	background: #f8fafc;
	border: 1px solid var(--rntc-public-border);
	border-radius: 14px;
	display: grid;
	gap: 14px;
	padding: 16px;
}

.rntc-open-participant h3 {
	font-size: 18px;
	line-height: 1.25;
	margin: 8px 0 0;
}

.rntc-open-participant__grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rntc-open-result-card {
	margin-bottom: 16px;
}

@media (max-width: 430px) {
	.rntc-public-card {
		margin-left: 0;
		margin-right: 0;
		padding: 16px;
	}

	.rntc-public-card h2 {
		font-size: 24px;
	}

	.rntc-public-button {
		width: 100%;
	}

	.rntc-public-list-tools,
	.rntc-test-workspace,
	.rntc-course-workspace,
	.rntc-results-summary {
		grid-template-columns: 1fr;
	}

	.rntc-test-workspace__nav,
	.rntc-course-outline {
		position: static;
	}

	.rntc-public-filter-chips,
	.rntc-public-list-meta {
		display: grid;
		grid-template-columns: 1fr;
		justify-content: stretch;
	}

	.rntc-public-chip,
	.rntc-public-reset,
	.rntc-public-list-meta span {
		border-radius: 10px;
		text-align: center;
		width: 100%;
	}

	.rntc-test-summary,
	.rntc-test-summary__meta,
	.rntc-public-actions {
		display: grid;
		justify-content: stretch;
	}

	.rntc-public-grid,
	.rntc-open-participant__grid,
	.rntc-course-card,
	.rntc-course-list__item,
	.rntc-public-footer,
	.rntc-portal-summary,
	.rntc-portal-metrics {
		grid-template-columns: 1fr;
	}

	.rntc-course-list__item::before {
		height: 112px;
		width: 100%;
	}

	.rntc-public-result-row {
		grid-template-columns: 1fr;
	}

	.rntc-certificate-list__item {
		grid-template-columns: 1fr;
	}

	.rntc-public-card__top {
		display: grid;
	}

	.rntc-public-badge {
		justify-content: center;
		width: 100%;
	}

	.rntc-assignment-toolbar,
	.rntc-assignment-card__head,
	.rntc-assignment-card__actions,
	.rntc-certificate-lookup-form,
	.rntc-certificate-summary__head {
		display: grid;
		justify-content: stretch;
	}

	.rntc-certificate-summary dl {
		grid-template-columns: 1fr;
	}

	.rntc-assignment-card__meta {
		display: grid;
	}

	.rntc-assignment-card__meta span,
	.rntc-assignment-note {
		border-radius: 10px;
		width: 100%;
	}
}
