/* لوحة الاشتراكات — تصميم مسطّح، خصائص منطقية للـRTL. */

.tn-console {
	--tn-border: #d8dde3;
	--tn-ok: #1a7f5a;
	--tn-warn: #8a6100;
	--tn-fail: #b32d2e;
	max-inline-size: 1100px;
	padding-block: 1rem;
}

.tn-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 0.75rem;
	margin-block-end: 1.25rem;
}

.tn-card {
	background: #fff;
	border: 1px solid var(--tn-border);
	border-inline-start: 4px solid var(--tn-ok);
	border-radius: 8px;
	padding: 0.85rem 1rem;
	display: grid;
	gap: 0.15rem;
}

.tn-card strong {
	font-size: 1.6rem;
	line-height: 1;
}

.tn-card span {
	color: #5a6472;
	font-size: 0.85rem;
}

.tn-card--warn {
	border-inline-start-color: var(--tn-warn);
}

.tn-card--fail {
	border-inline-start-color: var(--tn-fail);
}

.tn-panel {
	background: #fff;
	border: 1px solid var(--tn-border);
	border-radius: 8px;
	padding: 1rem 1.25rem;
	margin-block-end: 1rem;
}

.tn-panel h2 {
	margin-block-start: 0;
	font-size: 1.05rem;
}

.tn-table {
	inline-size: 100%;
	border-collapse: collapse;
	background: #fff;
}

.tn-table th,
.tn-table td {
	padding: 0.55rem 0.75rem;
	text-align: start;
	border-block-end: 1px solid var(--tn-border);
	vertical-align: middle;
}

.tn-table th {
	background: #f4f6f8;
	font-weight: 600;
}

.tn-badge {
	display: inline-block;
	padding-block: 0.15rem;
	padding-inline: 0.5rem;
	border-radius: 999px;
	font-size: 0.82em;
	white-space: nowrap;
}

.tn-badge--ok {
	background: #e3f5ec;
	color: var(--tn-ok);
}

.tn-badge--warn {
	background: #fff3d6;
	color: var(--tn-warn);
}

.tn-badge--fail {
	background: #fdeaea;
	color: var(--tn-fail);
}

.tn-notice {
	border-radius: 8px;
	padding: 0.7rem 1rem;
	margin-block-end: 1rem;
	border-inline-start: 4px solid var(--tn-border);
	background: #f4f6f8;
}

.tn-notice--ok {
	border-inline-start-color: var(--tn-ok);
	background: #e9f7f0;
}

.tn-notice--fail {
	border-inline-start-color: var(--tn-fail);
	background: #fdeaea;
}

.tn-list {
	margin: 0;
	padding-inline-start: 1.1rem;
}

.tn-list li {
	margin-block-end: 0.3rem;
}

.tn-form {
	margin-block-start: 0.75rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.tn-form label {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.tn-form input[type="date"],
.tn-table select {
	/* 16px يمنع تكبير iOS التلقائي — اللوحة تُفتح من الجوال أحياناً. */
	font-size: 16px;
	padding: 0.35rem 0.5rem;
	border: 1px solid var(--tn-border);
	border-radius: 6px;
}

.tn-inline {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	margin-inline-end: 0.5rem;
}

.tn-muted {
	color: #5a6472;
	font-size: 0.85rem;
	inline-size: 100%;
	margin-block: 0.35rem 0;
}

.tn-danger {
	color: var(--tn-fail);
}

@media (max-width: 600px) {
	.tn-table thead {
		display: none;
	}

	.tn-table tr {
		display: grid;
		gap: 0.2rem;
		padding-block: 0.5rem;
		border-block-end: 1px solid var(--tn-border);
	}

	.tn-table td {
		border: 0;
		padding: 0.2rem 0.75rem;
	}
}

/* نموذج التصحيح يُميَّز بصرياً عن التمديد — عمليتان مختلفتان. */

.tn-form--correct {
	border-block-start: 1px dashed var(--tn-border);
	padding-block-start: 0.75rem;
	margin-block-start: 0.75rem;
}

/* أزرار الأدوار — الدور الحالي معلَّم ومعطَّل. */

.tn-roles {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.25rem;
}

.tn-roles .button[disabled] {
	opacity: 1;
	cursor: default;
}
