/* Tech Codi responsive and visual refinements. Loaded after the feature styles. */
.tcts-course-grid,
.tcts-course-detail,
.tcts-dashboard,
.tcts-result,
.tcts-leaderboard,
.tcts-exam-app { width: 100%; min-width: 0; }

.tcts-btn {
	min-height: 44px;
	line-height: 1.2;
	-webkit-tap-highlight-color: transparent;
	touch-action: manipulation;
}

.tcts-course-card { display: flex; min-width: 0; flex-direction: column; }
.tcts-course-card-head {
	position: relative;
	z-index: 1;
	padding: 18px 20px 16px;
	border-bottom: 1px solid #e2e8f0;
	background: linear-gradient(135deg, #fff, #f5f7ff);
}
.tcts-course-card-head > span {
	display: block;
	margin-bottom: 5px;
	color: #5b70d6;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .12em;
}
.tcts-course-card-head h3 { margin: 0; color: #0f172a; font-size: 21px; line-height: 1.3; }
.tcts-course-card-head h3 a { color: inherit; text-decoration: none; }
.tcts-course-card-head h3 a::after { position: absolute; inset: 0; content: ""; }
.tcts-course-body { display: flex; flex: 1; flex-direction: column; }
.tcts-course-body > p { flex: 1; }
.tcts-course-footer { margin-top: auto; }

.tcts-course-about {
	margin-bottom: 22px;
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	padding: clamp(22px, 4vw, 38px);
	background: #fff;
	box-shadow: 0 12px 34px rgba(15, 23, 42, .07);
}
.tcts-course-about h2 { margin: 7px 0 20px; color: #0f172a; font-size: clamp(25px, 4vw, 36px); line-height: 1.2; }
.tcts-course-description { color: #334155; line-height: 1.75; }
.tcts-course-description > :first-child { margin-top: 0; }
.tcts-course-description > :last-child { margin-bottom: 0; }
.tcts-course-description h2,
.tcts-course-description h3,
.tcts-course-description h4 { margin-top: 1.4em; color: #0f172a; line-height: 1.3; }
.tcts-course-description ul,
.tcts-course-description ol { padding-left: 1.25rem; }
.tcts-course-description li { margin-bottom: 7px; }
.tcts-course-description img { height: auto; border-radius: 13px; }
.tcts-course-description table { display: block; width: 100%; overflow-x: auto; border-collapse: collapse; }
.tcts-course-description th,
.tcts-course-description td { border: 1px solid #e2e8f0; padding: 10px; }
.tcts-test-list { scroll-margin-top: 110px; }
.tcts-test-list-head { margin-bottom: 16px; }
.tcts-test-list-head h2 { margin: 5px 0 0; }
.tcts-login-actions { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-top: 18px; }

.tcts-course-detail-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
	gap: 28px;
	align-items: stretch;
	margin-bottom: 22px;
	padding: 34px;
	overflow: hidden;
	border-radius: 22px;
	background: radial-gradient(circle at 85% 8%, rgba(124, 58, 237, .48), transparent 31%), linear-gradient(135deg, #0b1538, #2447dc);
	color: #fff;
	box-shadow: 0 20px 52px rgba(15, 23, 42, .16);
}
.tcts-course-detail-copy { align-self: center; min-width: 0; }
.tcts-course-detail-copy h1 { max-width: 760px; margin: 12px 0; color: #fff; font-size: clamp(32px, 5vw, 52px); line-height: 1.08; letter-spacing: -.035em; }
.tcts-course-detail-copy > p { max-width: 720px; margin: 0; color: #dbe4ff; font-size: 16px; line-height: 1.65; }
.tcts-badge-inline { display: inline-flex; border: 1px solid rgba(255, 255, 255, .22); border-radius: 999px; padding: 7px 11px; background: rgba(255, 255, 255, .11); color: #fde68a; font-size: 11px; font-weight: 900; letter-spacing: .11em; }
.tcts-course-facts { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 22px; }
.tcts-course-facts span { border-radius: 9px; padding: 8px 11px; background: rgba(255, 255, 255, .1); color: #eef2ff; font-size: 13px; font-weight: 650; }
.tcts-course-detail-media { position: relative; min-height: 235px; overflow: hidden; border: 1px solid rgba(255, 255, 255, .2); border-radius: 18px; background: linear-gradient(145deg, rgba(255, 255, 255, .2), rgba(255, 255, 255, .06)); background-position: center; background-size: cover; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .05); }
.tcts-course-detail-media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, transparent 32%, rgba(6, 15, 48, .76)); }
.tcts-course-detail-media > span { position: absolute; z-index: 1; right: 16px; bottom: 16px; border-radius: 12px; padding: 9px 14px; background: #fff; color: #172eaa; font-size: 24px; font-weight: 900; box-shadow: 0 8px 24px rgba(15, 23, 42, .18); }
.tcts-free-test-label { display: inline-flex; vertical-align: middle; margin-left: 7px; border-radius: 999px; padding: 3px 7px; background: #dcfce7; color: #166534; font-size: 10px; font-weight: 900; letter-spacing: .07em; }

.tcts-results-table { -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
.tcts-results-table table { min-width: 680px; }
.tcts-dashboard > h2 { margin-top: 34px; }
.tcts-question-text > div,
.tcts-option > span,
.tcts-review-option > span,
.tcts-solution { min-width: 0; overflow-x: auto; }

@media (max-width: 760px) {
	.tcts-home-courses { margin-block: 34px; }
	.tcts-course-grid { grid-template-columns: 1fr !important; gap: 16px; }
	.tcts-course-card { border-radius: 16px; box-shadow: 0 8px 24px rgba(15, 23, 42, .07); }
	.tcts-course-card:hover { transform: none; }
	.tcts-course-card-head { padding: 16px 17px 14px; }
	.tcts-course-card-head h3 { font-size: 19px; }
	.tcts-course-image { height: 170px; }
	.tcts-course-body { padding: 17px; }
	.tcts-course-footer { align-items: center; }
	.tcts-course-footer .tcts-btn { max-width: 64%; text-align: center; }

	.tcts-course-detail-hero { grid-template-columns: 1fr; gap: 20px; margin-inline: 0; padding: 23px 20px; border-radius: 17px; }
	.tcts-course-detail-copy h1 { font-size: clamp(30px, 10vw, 40px); }
	.tcts-course-detail-copy > p { font-size: 15px; }
	.tcts-course-detail-media { min-height: 175px; }
	.tcts-course-facts { gap: 7px; }
	.tcts-course-facts span { padding: 7px 9px; font-size: 12px; }
	.tcts-course-about { border-radius: 16px; padding: 22px 18px; }
	.tcts-course-description { font-size: 15px; }

	.tcts-access-card,
	.tcts-dashboard-head,
	.tcts-result-hero,
	.tcts-leader-head { margin-bottom: 20px; border-radius: 16px; padding: 22px 18px; }
	.tcts-access-card .tcts-btn,
	.tcts-dashboard-actions { width: 100%; }
	.tcts-dashboard-actions .tcts-btn { flex: 1 1 130px; }

	.tcts-test-row { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; padding: 15px; }
	.tcts-test-row .tcts-btn,
	.tcts-test-row .tcts-locked { grid-column: 1 / -1; width: 100%; margin: 0; }
	.tcts-test-row .tcts-locked { border-radius: 9px; padding: 10px; background: #f8fafc; text-align: center; }
	.tcts-test-info h3 { font-size: 16px; }

	.tcts-profile-strip { padding: 13px; }
	.tcts-profile-strip div { min-width: 0; }
	.tcts-profile-strip strong,
	.tcts-profile-strip small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.tcts-account-active { flex: 0 0 auto; }

	.tcts-exam-top { position: sticky; margin-inline: 0; border-radius: 0; padding: 0; background: transparent; box-shadow: none; justify-content: flex-end; }
	.tcts-exam-top > div:first-child { display: none; }
	.tcts-exam-layout { margin-inline: 0; }
	.tcts-palette-panel { order: 2; padding: 15px; }
	.tcts-palette { grid-template-columns: repeat(6, minmax(38px, 1fr)); overflow-x: auto; }
	.tcts-question-panel { min-height: calc(100vh - 170px); }
	.tcts-question-card { padding: 18px 14px; }
	.tcts-question-text { align-items: flex-start; min-height: 0; }
	.tcts-exam-nav { position: sticky; bottom: var(--tcts-footer-offset, 0px); z-index: 2147483000; gap: 9px; padding: 12px; background: rgba(255, 255, 255, .97); backdrop-filter: blur(10px); }
	.tcts-exam-nav .tcts-btn { flex: 1; padding-inline: 10px; }

	.tcts-result-stats > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.tcts-result-actions { display: grid; grid-template-columns: 1fr; }
	.tcts-review-card { border-radius: 13px; }
	.tcts-review-question { display: grid; grid-template-columns: auto minmax(0, 1fr); font-size: 15px; }
	.tcts-review-option { display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: start; }
	.tcts-review-option em { display: inline-flex !important; grid-column: 2; width: max-content; max-width: 100%; border-radius: 999px; padding: 3px 7px; background: rgba(255, 255, 255, .75); }

	.tcts-checkout-shell,
	.tcts-auth-shell,
	.tcts-payment-state,
	.tcts-manual-payment { margin-inline: 0; }
	.tcts-checkout-summary,
	.tcts-checkout-methods { padding: 24px 19px; }
	.tcts-auth-card { padding: 26px 19px; }
	.tcts-auth-side { padding: 27px 20px; }
	.tcts-auth-notice { margin-inline: 0; }
	.tcts-login-actions { display: grid; grid-template-columns: 1fr; }
	.tcts-login-actions .tcts-btn { width: 100%; }
}

@media (max-width: 420px) {
	.tcts-course-footer { align-items: stretch; flex-direction: column; }
	.tcts-course-footer .tcts-btn { width: 100%; max-width: none; }
	.tcts-course-detail-hero { padding-inline: 17px; }
	.tcts-course-detail-media { min-height: 145px; }
	.tcts-profile-strip { display: grid; grid-template-columns: 46px minmax(0, 1fr); }
	.tcts-account-active { grid-column: 1 / -1; width: 100%; text-align: center; }
	.tcts-question-progress { flex-direction: column; }
	.tcts-question-progress > div { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
	.tcts-link-btn { min-height: 40px; text-align: center; }
	.tcts-palette { grid-template-columns: repeat(5, minmax(38px, 1fr)); }
}

/* 1.9.3: compact, responsive desktop cards + polished leaderboard */
@media (min-width: 1200px) {
	.tcts-home-courses { max-width: 1180px; padding-inline: 12px; }
	.tcts-course-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
	.tcts-course-card { border-radius: 14px; box-shadow: 0 6px 20px rgba(15, 23, 42, .06); }
	.tcts-course-card:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(15, 23, 42, .09); }
	.tcts-course-image { min-height: 0; height: 132px; }
	.tcts-course-image img { width: 100%; height: 100% !important; object-fit: contain; object-position: center; }
	.tcts-course-card-head { padding: 13px 15px 12px; }
	.tcts-course-card-head h3,
	.tcts-course-body h3 { font-size: 17px; line-height: 1.28; }
	.tcts-course-body { padding: 14px; }
	.tcts-course-meta { font-size: 12px; }
	.tcts-course-footer { padding-top: 12px; margin-top: 12px; }
	.tcts-course-footer strong { font-size: 18px; }
	.tcts-course-footer .tcts-btn { min-height: 40px; padding: 9px 13px; font-size: 13px; }

	.tcts-leaderboard { max-width: 1080px; margin-inline: auto; }
	.tcts-leader-head { margin-bottom: 16px; padding: 20px 24px; border-radius: 14px; }
	.tcts-leader-head h2 { font-size: 25px; line-height: 1.25; }
	.tcts-leader-head p { font-size: 13px; }
	.tcts-results-table { border-radius: 12px; box-shadow: 0 6px 20px rgba(15, 23, 42, .05); }
	.tcts-results-table th,
	.tcts-results-table td { padding: 11px 14px; }
	.tcts-results-table th { font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
	.tcts-results-table td { font-size: 14px; }
	.tcts-results-table tbody tr:hover { background: #f8fafc; }
	.tcts-rank { width: 30px; height: 30px; font-size: 12px; }

	/* Keep common content cards compact without changing the exam question cards. */
	.tcts-access-card,
	.tcts-dashboard-head,
	.tcts-result-hero { padding: 20px 24px; border-radius: 14px; }
	.tcts-test-row { padding: 14px 16px; border-radius: 12px; }
}

@media (min-width: 761px) and (max-width: 1199px) {
	.tcts-home-courses { max-width: 1050px; }
	.tcts-course-grid { gap: 16px; }
	.tcts-course-image { min-height: 0; height: 145px; }
	.tcts-course-image img { width: 100%; height: 100% !important; object-fit: contain; }
	.tcts-course-body { padding: 16px; }
	.tcts-course-card-head { padding: 15px 17px 13px; }
	.tcts-course-card-head h3,
	.tcts-course-body h3 { font-size: 18px; }
	.tcts-leaderboard { max-width: 100%; }
	.tcts-leader-head { padding: 22px; border-radius: 16px; }
}

/* 1.13.0: consistent Inter typography and clearer result review hierarchy. */
.tcts-home-courses,.tcts-course-grid,.tcts-course-detail,.tcts-dashboard,.tcts-result,.tcts-leaderboard,.tcts-exam-app,.tcts-auth-shell,.tcts-auth-notice,.tcts-checkout-shell,.tcts-payment-state,.tcts-manual-payment,.tcts-alert,.tcts-empty{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.tcts-home-courses button,.tcts-home-courses input,.tcts-course-grid button,.tcts-course-grid input,.tcts-course-detail button,.tcts-course-detail input,.tcts-dashboard button,.tcts-dashboard input,.tcts-result button,.tcts-result input,.tcts-leaderboard button,.tcts-leaderboard input,.tcts-exam-app button,.tcts-exam-app input,.tcts-auth-shell button,.tcts-auth-shell input,.tcts-checkout-shell button,.tcts-checkout-shell input,.tcts-checkout-shell select{font-family:inherit}
.tcts-result .tcts-review-question{font-size:clamp(19px,2vw,23px);font-weight:750;line-height:1.62;letter-spacing:-.01em}.tcts-result .tcts-review-question .tcts-math-content{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:inherit;font-weight:inherit;line-height:inherit}.tcts-result .tcts-review-option>span{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(16px,1.45vw,18px);font-weight:650;line-height:1.55}.tcts-result .tcts-review-option>strong{font-size:15px;font-weight:800}.tcts-result .tcts-solution{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}
@media(max-width:760px){.tcts-result .tcts-review-card{padding:18px 15px}.tcts-result .tcts-review-question{font-size:18px;font-weight:750;line-height:1.58}.tcts-result .tcts-review-options{margin:14px 0}.tcts-result .tcts-review-option{padding:10px}.tcts-result .tcts-review-option>span{font-size:16px;font-weight:650;line-height:1.5}.tcts-result .tcts-solution{font-size:15px}}

@media (max-width: 760px) {
	.tcts-home-courses { width: 100%; }
	.tcts-course-card { width: 100%; }
	.tcts-course-image { height: auto; min-height: 0; aspect-ratio: 16 / 8; }
	.tcts-course-image img { width: 100%; height: 100% !important; object-fit: contain; }
	.tcts-leaderboard { width: 100%; }
	.tcts-leader-head { padding: 18px 16px; }
	.tcts-leader-head h2 { font-size: 21px; }
	.tcts-leader-head p { font-size: 13px; }
	.tcts-results-table { border-radius: 11px; }
	.tcts-results-table table { min-width: 620px; }
	.tcts-results-table th,
	.tcts-results-table td { padding: 10px 11px; }
	.tcts-results-table th { font-size: 11px; }
	.tcts-results-table td { font-size: 13px; }
}

/* 1.9.8: compact Course Details layout, protected from Astra heading rules. */
.tcts-course-detail {
	max-width: 1080px !important;
	margin: 28px auto !important;
}
.tcts-course-detail .tcts-course-detail-hero {
	grid-template-columns: minmax(0, 1.4fr) minmax(230px, .6fr) !important;
	gap: 22px !important;
	padding: 26px !important;
	border-radius: 18px !important;
}
.tcts-course-detail .tcts-course-detail-copy h1 {
	max-width: 680px !important;
	margin: 9px 0 !important;
	font-size: clamp(25px, 3.4vw, 38px) !important;
	line-height: 1.16 !important;
	letter-spacing: -.02em !important;
}

/* 1.10.0: responsive leaderboard cards, scoped against theme heading/table rules. */
.tcts-leaderboard {
	max-width: 1080px !important;
	margin: 28px auto !important;
	color: #172554;
}
.tcts-leaderboard .tcts-leader-head {
	position: relative;
	overflow: hidden;
	min-height: 150px;
	margin: 0 !important;
	padding: 28px 30px 58px !important;
	border: 0 !important;
	border-radius: 22px !important;
	background: linear-gradient(135deg, #111a3a 0%, #2447dc 62%, #4f46e5 100%) !important;
	box-shadow: 0 18px 42px rgba(30, 64, 175, .18);
}
.tcts-leaderboard .tcts-leader-head:after {
	content: "";
	position: absolute;
	right: -80px;
	top: -110px;
	width: 280px;
	height: 280px;
	border-radius: 50%;
	background: rgba(255,255,255,.08);
}
.tcts-leaderboard .tcts-leader-head > div { position: relative; z-index: 1; min-width: 0; }
.tcts-leaderboard .tcts-leader-head h2 {
	margin: 6px 0 !important;
	color: #fff !important;
	font-size: clamp(24px, 3.2vw, 34px) !important;
	line-height: 1.2 !important;
	font-weight: 850 !important;
}
.tcts-leaderboard .tcts-leader-head p { margin: 0 !important; color: rgba(255,255,255,.78) !important; }
.tcts-leaderboard .tcts-leader-head .tcts-eyebrow { color: #c7d2fe !important; }
.tcts-leader-trophy {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: 66px;
	height: 66px;
	flex: 0 0 66px;
	border: 1px solid rgba(255,255,255,.24);
	border-radius: 20px;
	background: rgba(255,255,255,.14);
	color: #fde68a;
	font-size: 31px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
}
.tcts-leader-summary {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: -34px 22px 22px;
}
.tcts-leader-summary > div {
	min-width: 0;
	padding: 15px 18px;
	border: 1px solid #dbe4f0;
	border-radius: 15px;
	background: rgba(255,255,255,.98);
	box-shadow: 0 10px 28px rgba(15,23,42,.09);
}
.tcts-leader-summary span,
.tcts-leader-metrics span { display: block; color: #64748b; font-size: 11px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.tcts-leader-summary strong { display: block; margin-top: 3px; color: #172554; font-size: 22px; line-height: 1.2; }
.tcts-leader-cards { display: grid; gap: 11px; }
.tcts-leader-card {
	display: grid;
	grid-template-columns: 54px minmax(180px, 1fr) minmax(330px, .95fr);
	align-items: center;
	gap: 15px;
	min-width: 0;
	padding: 15px 18px;
	border: 1px solid #dbe4f0;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 5px 18px rgba(15,23,42,.05);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tcts-leader-card:hover { transform: translateY(-2px); border-color: #bfcbdf; box-shadow: 0 10px 24px rgba(15,23,42,.08); }
.tcts-leader-card.rank-1 { border-color: #f5d66d; background: linear-gradient(90deg,#fffdf4,#fff); }
.tcts-leader-card.rank-2 { border-color: #cbd5e1; background: linear-gradient(90deg,#f8fafc,#fff); }
.tcts-leader-card.rank-3 { border-color: #f1b98d; background: linear-gradient(90deg,#fff8f3,#fff); }
.tcts-leader-card.is-current { border: 2px solid #4f46e5; box-shadow: 0 8px 24px rgba(79,70,229,.13); }
.tcts-leader-rank span {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 13px;
	background: #eef2ff;
	color: #3730a3;
	font-size: 14px;
	font-weight: 900;
}
.tcts-leader-card.rank-1 .tcts-leader-rank span { background: #fef3c7; color: #92400e; }
.tcts-leader-card.rank-2 .tcts-leader-rank span { background: #e2e8f0; color: #334155; }
.tcts-leader-card.rank-3 .tcts-leader-rank span { background: #ffedd5; color: #9a3412; }
.tcts-leader-person { display: flex; align-items: center; gap: 12px; min-width: 0; }
.tcts-leader-avatar {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	border-radius: 50%;
	background: linear-gradient(135deg,#dbeafe,#e0e7ff);
	color: #1d4ed8;
	font-size: 17px;
	font-weight: 900;
}
.tcts-leader-person > div { min-width: 0; }
.tcts-leader-person h3 {
	overflow: hidden;
	margin: 0 !important;
	color: #172554 !important;
	font-size: 15px !important;
	line-height: 1.35 !important;
	font-weight: 800 !important;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.tcts-leader-person small { color: #64748b; font-size: 11px; }
.tcts-leader-card.is-current .tcts-leader-person small { color: #4f46e5; font-weight: 850; }
.tcts-leader-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.tcts-leader-metrics > div { min-width: 0; padding: 8px 10px; border-radius: 10px; background: rgba(248,250,252,.9); }
.tcts-leader-metrics strong { display: block; overflow: hidden; margin-top: 2px; color: #172554; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.tcts-leader-empty { padding: 42px 20px; border: 1px dashed #cbd5e1; border-radius: 16px; background: #fff; text-align: center; }
.tcts-leader-empty > span { display: block; color: #4f46e5; font-size: 38px; }
.tcts-leader-empty h3 { margin: 8px 0 4px !important; color: #172554 !important; font-size: 20px !important; }
.tcts-leader-empty p { margin: 0 !important; color: #64748b !important; }

@media (max-width: 820px) {
	.tcts-leaderboard { margin: 16px auto !important; }
	.tcts-leaderboard .tcts-leader-head { min-height: 132px; padding: 22px 18px 52px !important; border-radius: 16px !important; }
	.tcts-leaderboard .tcts-leader-head h2 { font-size: 22px !important; }
	.tcts-leader-trophy { width: 52px; height: 52px; flex-basis: 52px; border-radius: 15px; font-size: 24px; }
	.tcts-leader-summary { gap: 7px; margin: -29px 9px 17px; }
	.tcts-leader-summary > div { padding: 11px 9px; border-radius: 12px; text-align: center; }
	.tcts-leader-summary span { font-size: 9px; }
	.tcts-leader-summary strong { font-size: 17px; }
	.tcts-leader-card { grid-template-columns: 46px minmax(0,1fr); gap: 10px; padding: 13px 12px; border-radius: 13px; }
	.tcts-leader-rank span { width: 39px; height: 39px; border-radius: 11px; }
	.tcts-leader-avatar { width: 38px; height: 38px; flex-basis: 38px; }
	.tcts-leader-person h3 { font-size: 14px !important; }
	.tcts-leader-metrics { grid-column: 1 / -1; gap: 6px; }
	.tcts-leader-metrics > div { padding: 7px 8px; text-align: center; }
	.tcts-leader-metrics span { font-size: 9px; }
	.tcts-leader-metrics strong { font-size: 12px; }
}
.tcts-course-detail .tcts-course-detail-copy > p {
	font-size: 14px !important;
	line-height: 1.55 !important;
}
.tcts-course-detail .tcts-course-facts { margin-top: 16px !important; }
.tcts-course-detail .tcts-course-detail-media {
	min-height: 188px !important;
	border-radius: 15px !important;
}
.tcts-course-detail .tcts-course-detail-media > span { font-size: 20px !important; }
.tcts-course-detail .tcts-course-about {
	padding: 24px 26px !important;
	border-radius: 16px !important;
}
.tcts-course-detail .tcts-course-about > h2 {
	margin-bottom: 15px !important;
	font-size: clamp(22px, 3vw, 29px) !important;
}
.tcts-course-card .tcts-course-card-head h3,
.tcts-course-card .tcts-course-body h3 { font-size: 16px !important; }

@media (max-width: 760px) {
	.tcts-course-detail { margin: 18px auto !important; }
	.tcts-course-detail .tcts-course-detail-hero {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
		padding: 18px 16px !important;
		border-radius: 14px !important;
	}
	.tcts-course-detail .tcts-course-detail-copy h1 {
		font-size: clamp(23px, 7.5vw, 30px) !important;
		line-height: 1.2 !important;
	}
	.tcts-course-detail .tcts-course-detail-media { min-height: 145px !important; }
	.tcts-course-detail .tcts-course-about { padding: 19px 16px !important; }
	.tcts-course-detail .tcts-course-about > h2 { font-size: 22px !important; }
	.tcts-course-card .tcts-course-card-head h3,
	.tcts-course-card .tcts-course-body h3 { font-size: 17px !important; }
}

/* 1.13.1: keep rich purchased-course cards readable on desktop/Astra layouts. */
.tcts-dashboard-course-grid,
.tcts-dashboard-course-grid .tcts-dashboard-course-card,
.tcts-dashboard-course-grid .tcts-dashboard-tests,
.tcts-dashboard-course-grid .tcts-course-curriculum,
.tcts-dashboard-course-grid .tcts-subject-card,
.tcts-dashboard-course-grid .tcts-subject-content,
.tcts-dashboard-course-grid .tcts-chapter-card,
.tcts-dashboard-course-grid .tcts-dashboard-test-main,
.tcts-dashboard-course-grid .tcts-dashboard-test-main > div {
	min-width: 0;
	width: 100%;
	box-sizing: border-box;
}
.tcts-dashboard-course-grid .tcts-dashboard-course-card {
	max-width: none;
	overflow: hidden;
	transform: none;
}
.tcts-dashboard-course-grid .tcts-dashboard-course-card:hover { transform: none; }
.tcts-dashboard-course-grid .tcts-dashboard-course-head > div { min-width: 0; }
.tcts-dashboard-course-grid .tcts-dashboard-course-title,
.tcts-dashboard-course-grid .tcts-dashboard-course-title a,
.tcts-dashboard-course-grid .tcts-dashboard-test-main h4 {
	overflow-wrap: anywhere;
	word-break: normal;
}
.tcts-dashboard-course-grid .tcts-dashboard-test-main { width: auto; }

@media (min-width: 761px) {
	.tcts-dashboard .tcts-dashboard-course-grid {
		display: grid;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 18px;
		width: 100%;
		max-width: 1180px;
		margin-inline: auto;
	}
	.tcts-dashboard-course-grid .tcts-dashboard-course-card { grid-column: 1 / -1; }
	.tcts-dashboard-course-grid .tcts-dashboard-course-head {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}
	.tcts-dashboard-course-grid .tcts-dashboard-test-row {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
	}
}

/* 1.14.0: Premium exam-tech dashboard layer — responsive and theme-safe. */
.tcts-dashboard {
	--tcts-grad: linear-gradient(135deg,#10183b 0%,#2447dc 52%,#7c3aed 100%);
	--tcts-accent: #315cf5;
	max-width: 1180px !important;
	margin-inline: auto !important;
	font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.tcts-dashboard-head {
	position: relative;
	overflow: hidden;
	background: var(--tcts-grad) !important;
	border: 1px solid rgba(255,255,255,.12);
	box-shadow: 0 18px 45px rgba(36,71,220,.22);
}
.tcts-dashboard-head::after {
	content:""; position:absolute; width:210px; height:210px; right:-70px; top:-90px;
	border-radius:50%; background:rgba(255,255,255,.10); pointer-events:none;
}
.tcts-dashboard-head > div:first-child { min-width:0; position:relative; z-index:1; }
.tcts-dashboard-head h2 { font-size:clamp(24px,3vw,34px) !important; letter-spacing:-.025em; }
.tcts-dashboard-actions { position:relative; z-index:2; }
.tcts-dashboard-actions .tcts-btn {
	border:1px solid rgba(255,255,255,.2) !important;
	background:rgba(255,255,255,.13) !important;
	backdrop-filter:blur(8px);
	box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.tcts-dashboard-actions .tcts-btn-light {
	background:#fff !important; color:#2143c5 !important; border-color:#fff !important;
}
.tcts-dashboard-stats {
	display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 28px;
}
.tcts-dashboard-stats > div {
	min-width:0; padding:16px 18px; border:1px solid #e2e8f0; border-radius:15px;
	background:linear-gradient(145deg,#fff,#f8faff); box-shadow:0 8px 24px rgba(15,23,42,.055);
}
.tcts-dashboard-stats span { display:block; color:#64748b; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.tcts-dashboard-stats strong { display:block; margin-top:6px; color:#172554; font-size:25px; line-height:1; }
.tcts-dashboard-stats strong.is-live { color:#16a34a; font-size:16px; padding-top:5px; }
.tcts-dashboard > h2 {
	display:flex; align-items:center; gap:10px; font-size:21px !important; letter-spacing:-.015em;
}
.tcts-dashboard > h2::before {
	content:""; width:5px; height:22px; border-radius:8px; background:linear-gradient(180deg,#315cf5,#7c3aed);
}
.tcts-dashboard-course-card {
	border:1px solid #dbe4f0 !important; border-radius:18px !important;
	box-shadow:0 12px 35px rgba(15,23,42,.07) !important;
	background:#fff !important;
}
.tcts-dashboard-course-head {
	background:linear-gradient(135deg,#f8faff,#eef3ff) !important;
	border-bottom:1px solid #e2e8f0 !important;
}
.tcts-dashboard-course-title a { transition:color .2s ease; }
.tcts-dashboard-course-title a:hover { color:#315cf5 !important; }
.tcts-dashboard-test-row { transition:background .18s ease,transform .18s ease; }
.tcts-dashboard-test-row:hover { background:#f8fbff !important; }
.tcts-dashboard-test-start {
	min-width:116px; text-align:center; justify-content:center;
	background:linear-gradient(135deg,#315cf5,#6d5dfc) !important;
	box-shadow:0 7px 16px rgba(49,92,245,.18) !important;
}
.tcts-dashboard-test-start.tcts-btn-outline { background:#fff !important; box-shadow:none !important; }
.tcts-dashboard-test-start span { font-size:11px; }
.tcts-results-table {
	border:1px solid #e2e8f0; border-radius:15px; box-shadow:0 8px 25px rgba(15,23,42,.05);
}
.tcts-results-table table { margin:0; }
.tcts-results-table th { background:#f6f8ff; color:#475569; font-size:11px; text-transform:uppercase; letter-spacing:.05em; }
.tcts-results-table a { color:#315cf5; font-weight:800; text-decoration:none; }
@media (max-width:760px) {
	.tcts-dashboard { padding-inline:0 !important; }
	.tcts-dashboard-head { flex-direction:column; align-items:stretch !important; padding:20px 17px !important; }
	.tcts-dashboard-actions { display:grid; grid-template-columns:1fr 1fr; width:100%; }
	.tcts-dashboard-actions .tcts-btn { width:100%; }
	.tcts-dashboard-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-bottom:20px; }
	.tcts-dashboard-stats > div { padding:13px 14px; border-radius:13px; }
	.tcts-dashboard-stats strong { font-size:21px; }
	.tcts-dashboard-course-card { border-radius:15px !important; }
	.tcts-dashboard-test-start { min-width:0; width:100%; }
}
@media (max-width:420px) {
	.tcts-dashboard-actions { grid-template-columns:1fr; }
	.tcts-dashboard-stats > div { padding:12px; }
	.tcts-dashboard-stats span { font-size:9px; }
}

/* 1.14.1: dashboard mobile hardening — prevents theme overflow and keeps every dashboard block usable. */
html, body { max-width:100%; overflow-x:hidden; }
.tcts-dashboard, .tcts-dashboard * { box-sizing:border-box; }
.tcts-dashboard { width:100%; max-width:1180px !important; margin:24px auto !important; padding:0 12px !important; overflow:visible; }
.tcts-dashboard-head { width:100%; min-width:0; display:flex; gap:18px; align-items:center; justify-content:space-between; }
.tcts-dashboard-head p { margin-bottom:0; }
.tcts-profile-strip { width:100%; min-width:0; }
.tcts-dashboard-stats { width:100%; }
.tcts-dashboard-course-grid { width:100% !important; min-width:0 !important; }
.tcts-dashboard-course-card { width:100% !important; min-width:0 !important; }
.tcts-dashboard-course-head { width:100%; min-width:0; }
.tcts-dashboard-tests { width:100%; min-width:0; overflow:hidden; }
.tcts-dashboard-test-row { min-width:0; width:100%; }
.tcts-dashboard-test-main { min-width:0 !important; flex:1 1 auto; }
.tcts-dashboard-test-main > div { min-width:0 !important; }
.tcts-dashboard-test-main h4 { min-width:0; overflow-wrap:anywhere; word-break:break-word; }
.tcts-dashboard-test-start { flex:0 0 auto; max-width:100%; }
.tcts-results-table { width:100%; max-width:100%; overflow-x:auto !important; overflow-y:hidden; -webkit-overflow-scrolling:touch; }
.tcts-results-table table { width:100%; min-width:680px; }

@media (max-width:760px) {
  .tcts-dashboard { margin:16px auto !important; padding:0 10px !important; }
  .tcts-dashboard-head { display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:16px !important; padding:20px 16px !important; border-radius:16px !important; }
  .tcts-dashboard-head h2 { margin:6px 0 5px !important; font-size:25px !important; line-height:1.2 !important; }
  .tcts-dashboard-head p { font-size:13px !important; line-height:1.55 !important; }
  .tcts-dashboard-actions { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; gap:8px !important; width:100% !important; }
  .tcts-dashboard-actions .tcts-btn { width:100% !important; min-width:0 !important; padding:11px 10px !important; white-space:nowrap; }

  .tcts-profile-strip { display:grid !important; grid-template-columns:42px minmax(0,1fr) auto !important; align-items:center !important; gap:10px !important; margin:14px 0 20px !important; padding:11px 12px !important; }
  .tcts-profile-avatar { width:42px !important; height:42px !important; }
  .tcts-profile-strip div { min-width:0 !important; }
  .tcts-profile-strip strong, .tcts-profile-strip small { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .tcts-account-active { margin-left:0 !important; white-space:nowrap; font-size:10px !important; padding:5px 7px !important; }

  .tcts-dashboard-stats { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; margin-bottom:22px !important; }
  .tcts-dashboard-stats > div { min-width:0 !important; padding:13px 12px !important; border-radius:13px !important; }
  .tcts-dashboard-stats span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px !important; }
  .tcts-dashboard-stats strong { font-size:21px !important; }

  .tcts-dashboard > h2 { margin:24px 0 12px !important; font-size:20px !important; }
  .tcts-dashboard-course-card { border-radius:15px !important; }
  .tcts-dashboard-course-head { display:flex !important; flex-direction:column !important; align-items:stretch !important; gap:7px !important; padding:15px !important; }
  .tcts-dashboard-course-head > div { min-width:0 !important; width:100%; }
  .tcts-dashboard-course-title, .tcts-dashboard-course-title a { font-size:18px !important; line-height:1.3 !important; overflow-wrap:anywhere !important; }
  .tcts-dashboard-test-count { align-self:flex-start; }

  .tcts-dashboard-course-grid .tcts-course-curriculum { width:100% !important; min-width:0 !important; }
  .tcts-course-curriculum.is-dashboard .tcts-subject-card > summary { grid-template-columns:32px minmax(0,1fr) 16px !important; gap:9px !important; padding:10px !important; }
  .tcts-course-curriculum.is-dashboard .tcts-subject-title strong { font-size:14px !important; white-space:normal !important; overflow-wrap:anywhere !important; }
  .tcts-course-curriculum.is-dashboard .tcts-subject-meta { grid-column:2 !important; min-width:0 !important; }
  .tcts-course-curriculum.is-dashboard .tcts-subject-content { padding:7px !important; min-width:0 !important; }
  .tcts-course-curriculum.is-dashboard .tcts-chapter-card { min-width:0 !important; }
  .tcts-course-curriculum.is-dashboard .tcts-chapter-card > header { align-items:flex-start !important; padding:9px 10px !important; }
  .tcts-course-curriculum.is-dashboard .tcts-chapter-card > header strong { font-size:13px !important; overflow-wrap:anywhere; }

  .tcts-dashboard-test-row { display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:10px !important; padding:12px 10px !important; align-items:stretch !important; }
  .tcts-dashboard-test-main { display:grid !important; grid-template-columns:36px minmax(0,1fr) !important; gap:9px !important; width:100% !important; }
  .tcts-dashboard-test-main > div { min-width:0 !important; }
  .tcts-dashboard-test-main h4 { font-size:14px !important; line-height:1.35 !important; margin:0 !important; }
  .tcts-dashboard-test-main p { font-size:11px !important; margin:4px 0 0 !important; }
  .tcts-dashboard-test-start, .tcts-dashboard-test-row .tcts-locked { width:100% !important; min-width:0 !important; max-width:none !important; min-height:42px !important; }

  .tcts-results-table { border-radius:12px !important; margin-bottom:8px; }
  .tcts-results-table table { min-width:650px !important; }
}

@media (max-width:420px) {
  .tcts-dashboard { padding:0 8px !important; }
  .tcts-dashboard-actions { grid-template-columns:1fr !important; }
  .tcts-profile-strip { grid-template-columns:40px minmax(0,1fr) !important; }
  .tcts-account-active { grid-column:1 / -1; width:100%; text-align:center; }
  .tcts-dashboard-stats > div { padding:12px 10px !important; }
  .tcts-dashboard-stats strong { font-size:20px !important; }
  .tcts-dashboard-course-title, .tcts-dashboard-course-title a { font-size:17px !important; }
}


/* 1.14.2 — completed test state on the student dashboard */
.tcts-dashboard-test-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;min-width:0}
.tcts-dashboard-test-row.is-completed{background:linear-gradient(90deg,#f7fff9 0%,#ffffff 58%)}
.tcts-dashboard-test-row.is-completed .tcts-dashboard-test-number{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d}
.tcts-completed-badge{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid #bbf7d0;border-radius:999px;background:#ecfdf3;color:#15803d;font-size:11px;font-weight:800;white-space:nowrap}
.tcts-completed-badge span{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#22c55e;color:#fff;font-size:10px}
.tcts-dashboard-test-retry{padding:8px 12px!important;min-height:34px!important;font-size:11px!important;border-radius:9px!important;white-space:nowrap!important}
.tcts-attempt-limit-badge{padding:7px 10px;border-radius:999px;background:#fff7ed;color:#c2410c;font-size:10px;font-weight:800;white-space:nowrap}
@media(max-width:640px){
 .tcts-dashboard-test-actions{width:auto;gap:6px}
 .tcts-dashboard-test-start{width:auto!important;min-width:0!important;max-width:none!important;min-height:36px!important;padding:8px 10px!important}
 .tcts-completed-badge{padding:6px 8px;font-size:10px}
 .tcts-completed-badge span{width:14px;height:14px}
 .tcts-dashboard-test-retry{padding:8px 9px!important;font-size:10px!important}
 .tcts-attempt-limit-badge{font-size:9px;padding:6px 7px}
}
@media(max-width:430px){
 .tcts-dashboard-test-row{gap:7px!important}
 .tcts-dashboard-test-main{flex:1 1 auto;min-width:0}
 .tcts-dashboard-test-actions{flex:0 0 auto}
 .tcts-dashboard-test-main h4{font-size:13px!important}
 .tcts-dashboard-test-main p{font-size:10px!important}
 .tcts-dashboard-test-retry{font-size:9px!important;padding:7px 8px!important}
 .tcts-completed-badge{font-size:9px;padding:5px 6px}
}


/* 1.14.3 — exam navigation must stay above the site's fixed mobile footer. */
.tcts-exam-app{--tcts-footer-offset:0px;--tcts-footer-safe-gap:8px;}
.tcts-exam-nav{z-index:2147483646 !important;}
@media (max-width:760px){
  .tcts-exam-app{padding-bottom:var(--tcts-footer-safe-gap);}
  .tcts-question-panel{padding-bottom:calc(74px + var(--tcts-footer-safe-gap)) !important;}
  .tcts-exam-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:var(--tcts-footer-offset) !important;
    width:100% !important;
    margin:0 !important;
    box-sizing:border-box !important;
    z-index:2147483646 !important;
    border-radius:0 !important;
    padding:10px 12px !important;
    min-height:58px;
  }
  .tcts-exam-nav .tcts-btn{min-height:40px;}
}
@media (min-width:761px){
  .tcts-exam-nav{bottom:var(--tcts-footer-offset) !important;}
}

/* 1.14.4 — modern full-width cards, catalog price overlay and dashboard colour hierarchy. */
.tcts-catalog-course-card {
	position: relative;
	isolation: isolate;
	border: 1px solid rgba(99, 102, 241, .16) !important;
	background: #fff;
	box-shadow: 0 14px 38px rgba(30, 41, 59, .11) !important;
}
.tcts-catalog-course-card .tcts-course-image {
	position: relative;
	background: linear-gradient(145deg, #eef2ff, #f8fafc);
}
.tcts-catalog-course-card .tcts-course-image::after {
	background: linear-gradient(180deg, rgba(15, 23, 42, 0) 42%, rgba(15, 23, 42, .35));
}
.tcts-course-price {
	position: absolute;
	z-index: 3;
	top: 14px;
	right: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 70px;
	min-height: 40px;
	padding: 8px 13px;
	border: 1px solid rgba(255, 255, 255, .72);
	border-radius: 12px;
	background: rgba(255, 255, 255, .94);
	color: #172554;
	font-size: 18px;
	font-weight: 900;
	line-height: 1;
	box-shadow: 0 9px 24px rgba(15, 23, 42, .2);
	backdrop-filter: blur(8px);
}
.tcts-catalog-course-card .tcts-course-body { padding: 0 !important; }
.tcts-course-action-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	min-height: 78px;
	padding: 16px 17px;
	background: linear-gradient(135deg, #172554 0%, #2447dc 56%, #7c3aed 100%);
	color: #fff;
}
.tcts-catalog-course-card .tcts-course-action-row h3 {
	min-width: 0;
	margin: 0 !important;
	font-size: 18px !important;
	line-height: 1.35;
}
.tcts-catalog-course-card .tcts-course-action-row h3 a {
	display: -webkit-box;
	overflow: hidden;
	color: #fff !important;
	text-decoration: none !important;
	overflow-wrap: anywhere;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.tcts-course-details-link {
	position: relative;
	z-index: 4;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 42px;
	padding: 9px 12px;
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 11px;
	background: rgba(255, 255, 255, .14);
	color: #fff !important;
	font-size: 12px;
	font-weight: 850;
	line-height: 1;
	text-decoration: none !important;
	white-space: nowrap;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
}
.tcts-course-details-link:hover { background: #fff; color: #2447dc !important; transform: translateY(-1px); }
.tcts-course-details-link i { font-style: normal; font-size: 18px; line-height: .8; }

.tcts-dashboard-course-grid .tcts-dashboard-course-card {
	border: 1px solid rgba(99, 102, 241, .23) !important;
	background: linear-gradient(145deg, #ffffff 0%, #f6f8ff 100%) !important;
	box-shadow: 0 16px 42px rgba(36, 71, 220, .13) !important;
}
.tcts-dashboard-course-grid .tcts-dashboard-course-head {
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #111a3a 0%, #2447dc 55%, #7c3aed 100%) !important;
	color: #fff;
	border-bottom: 0 !important;
}
.tcts-dashboard-course-grid .tcts-dashboard-course-head::after {
	position: absolute;
	top: -62px;
	right: -38px;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .1);
	content: "";
	pointer-events: none;
}
.tcts-dashboard-course-grid .tcts-dashboard-course-head > * { position: relative; z-index: 1; }
.tcts-dashboard-course-grid .tcts-dashboard-course-head .tcts-eyebrow { color: #c7d2fe; }
.tcts-dashboard-course-grid .tcts-dashboard-course-title a,
.tcts-dashboard-course-grid .tcts-dashboard-course-title a:hover { color: #fff !important; }
.tcts-dashboard-course-grid .tcts-dashboard-test-count {
	padding: 7px 11px;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 999px;
	background: rgba(255, 255, 255, .13);
	color: #fff;
}

.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject > summary {
	grid-template-columns: 58px minmax(0, 1fr) auto 18px;
	min-height: 84px;
	padding: 13px 18px;
	background: linear-gradient(135deg, #0f3aa8 0%, #2563eb 58%, #3b82f6 100%) !important;
	color: #fff;
}
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-index {
	width: 54px;
	height: 54px;
	border: 1px solid rgba(255, 255, 255, .42);
	border-radius: 16px;
	background: rgba(255, 255, 255, .18);
	color: #fff;
	font-size: 18px;
	box-shadow: 0 9px 22px rgba(15, 23, 42, .2);
}
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-title small { color: #bfdbfe; }
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-title strong { color: #fff; font-size: 18px; }
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-meta b {
	border-color: rgba(255, 255, 255, .24);
	background: rgba(255, 255, 255, .13);
	color: #fff;
}
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject > summary > i::before,
.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject > summary > i::after { background: #fff; }

@media (max-width: 760px) {
	.tcts-home-courses,
	.tcts-course-grid,
	.tcts-dashboard-course-grid,
	.tcts-test-list,
	.tcts-course-curriculum,
	.tcts-subject-card,
	.tcts-chapter-card,
	.tcts-chapter-tests,
	.tcts-test-row,
	.tcts-dashboard-course-card,
	.tcts-dashboard-test-row { width: 100% !important; max-width: none !important; min-width: 0 !important; box-sizing: border-box; }
	.tcts-course-grid,
	.tcts-dashboard-course-grid { grid-template-columns: minmax(0, 1fr) !important; }
	.tcts-course-grid > .tcts-course-card,
	.tcts-dashboard-course-grid > .tcts-dashboard-course-card { grid-column: 1 / -1; width: 100% !important; }
	.tcts-test-list .tcts-test-row,
	.tcts-chapter-tests .tcts-curriculum-test { margin-inline: 0 !important; }
	.tcts-course-action-row { grid-template-columns: minmax(0, 1fr) auto; min-height: 72px; gap: 9px; padding: 13px 12px; }
	.tcts-catalog-course-card .tcts-course-action-row h3 { font-size: 16px !important; }
	.tcts-course-details-link { min-height: 39px; padding: 8px 10px; font-size: 11px; }
	.tcts-course-price { top: 10px; right: 10px; min-width: 62px; min-height: 36px; padding: 7px 10px; font-size: 16px; }
	.tcts-catalog-course-card .tcts-badge { top: 10px; left: 10px; }
	.tcts-dashboard-course-grid .tcts-dashboard-course-head { padding: 17px 15px !important; }
	.tcts-dashboard-course-grid .tcts-dashboard-test-count { align-self: flex-start; }
	.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject > summary {
		grid-template-columns: 50px minmax(0, 1fr) 16px !important;
		gap: 10px !important;
		min-height: 76px;
		padding: 11px 12px !important;
	}
	.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-index {
		width: 48px !important;
		height: 48px !important;
		font-size: 16px;
	}
	.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-title strong { font-size: 16px !important; }
	.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject .tcts-subject-meta { grid-column: 2 !important; }
	.tcts-course-curriculum.is-dashboard .tcts-subject-card.is-general-subject > summary > i { grid-column: 3; grid-row: 1 / 3; }
	.tcts-dashboard-test-row { border-radius: 0 !important; }
}
