/* FSC Campus Table – giao diện bảng ngoài website (cũng dùng cho xem trước trong trang quản trị).
   Mọi selector đều nằm dưới .fsct để không ảnh hưởng theme, và có phần đặt lại kiểu
   để theme (Flatsome...) không chèn viền, chữ in hoa, margin vào bảng. */

.fsct{
	--ac:#f37021;--ac-ink:#c4520c;--ac-soft:rgba(243,112,33,.08);
	/* Nền phụ (tiêu đề cột, kẻ sọc, đường kẻ, khối nền) lấy tông theo màu nhấn, không dùng xám */
	--fg:#1d1d1f;--mut:#6e6e73;--card:#fff;--lk:#0b5fae;
	--head:#fdeee4;--headfg:#b5490b;--zebra:#fffaf6;--line:#f5e6dc;--tint:#fff4ec;--cardline:rgba(243,112,33,.18);
	--fsct-max:1000px;
	container-type:inline-size;
	font-family:var(--fsct-font,inherit);
	color:var(--fg);
	-webkit-font-smoothing:antialiased;
	width:100%;
	max-width:var(--fsct-max);
	margin:0 auto 2em;
	text-align:left;
}
/* Độ rộng tối đa, căn giữa trong khung trang */
.fsct.w-narrow{--fsct-max:760px}
.fsct.w-normal{--fsct-max:1000px}
.fsct.w-wide{--fsct-max:1200px}
.fsct.w-full{--fsct-max:none}
.fsct *,.fsct *::before,.fsct *::after{box-sizing:border-box}
.fsct [hidden]{display:none!important}
.fsct.ac-blue{--ac:#0b5fae;--ac-ink:#0b5fae;--ac-soft:rgba(11,95,174,.07);--head:#e8f1fa;--headfg:#0b5fae;--zebra:#f7fafd;--line:#e3ecf5;--tint:#f1f6fc;--cardline:rgba(11,95,174,.16)}
.fsct.ac-green{--ac:#2eaa4a;--ac-ink:#1d7f35;--ac-soft:rgba(46,170,74,.08);--head:#e6f5ea;--headfg:#1d7f35;--zebra:#f6fbf7;--line:#e0efe4;--tint:#f1f9f3;--cardline:rgba(46,170,74,.18)}
.fsct.th-dark{--fg:#f5f5f7;--mut:#a1a1a6;--line:#3a3a3c;--head:#2f2f31;--headfg:#d2d2d7;--card:#272729;--cardline:transparent;--zebra:#2c2c2e;--tint:#1d1d1f;--lk:#2997ff;--ac-soft:rgba(243,112,33,.14);--ac-ink:#ff9a5c}
.fsct.th-dark.ac-blue{--ac:#2997ff;--ac-ink:#2997ff;--ac-soft:rgba(41,151,255,.14)}
.fsct.th-dark.ac-green{--ac:#4cd964;--ac-ink:#4cd964;--ac-soft:rgba(76,217,100,.12)}

.fsct .fsct-wrap{color:var(--fg)}
.fsct.th-parch .fsct-wrap,.fsct.th-dark .fsct-wrap{border-radius:24px;padding:40px 32px}
.fsct.th-parch .fsct-wrap{background:var(--tint)}
.fsct.th-dark .fsct-wrap{background:#1d1d1f}

.fsct .fsct-hd{text-align:center;max-width:720px;margin:0 auto 28px}
/* Nhãn trên tiêu đề: dạng viên thuốc cam giống nút "Quy chế tuyển sinh" của website */
.fsct .fsct-eyebrow{display:inline-block;font-size:15px;font-weight:700;line-height:1.3;color:var(--ac-ink);background:var(--ac-soft);border-radius:9999px;padding:7px 18px;letter-spacing:.4px;margin:0 0 14px;text-transform:uppercase}
.fsct.ac-orange .fsct-eyebrow{background:#fde3d1}
.fsct.th-dark .fsct-eyebrow{background:rgba(255,255,255,.08)}
.fsct .fsct-title{font-family:var(--fsct-font-d,inherit);font-size:34px;line-height:1.12;font-weight:600;letter-spacing:-.6px;margin:0;padding:0;color:var(--fg);text-transform:none}
.fsct .fsct-sub{color:var(--mut);font-size:17px;margin:10px 0 0;padding:0;line-height:1.47}

.fsct .fsct-tools{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;margin:0 0 18px}
.fsct .fsct-chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.fsct .fsct-chip{
	-webkit-appearance:none;appearance:none;margin:0;min-height:0;height:auto;line-height:1.3;
	text-transform:none;letter-spacing:normal;box-shadow:none;text-shadow:none;
	font:inherit;font-size:13px;font-weight:400;
	border:1px solid var(--cardline);background:var(--card);color:var(--fg);
	border-radius:9999px;padding:7px 14px;cursor:pointer;transition:transform .12s
}
.fsct.th-dark .fsct-chip{border-color:#3a3a3c}
.fsct .fsct-chip:hover{border-color:rgba(0,0,0,.2)}
.fsct .fsct-chip:active{transform:scale(.95)}
.fsct .fsct-chip:focus-visible,.fsct .fsct-scroll:focus-visible,.fsct .fsct-link:focus-visible{outline:2px solid #0071e3;outline-offset:2px}
.fsct .fsct-chip.on{background:var(--fg);color:var(--card);border-color:var(--fg)}
.fsct .fsct-search{display:flex;align-items:center;gap:8px;height:38px;margin:0;border-radius:9999px;border:1px solid var(--cardline);background:var(--card);padding:0 14px;color:var(--mut);min-width:220px;font-size:14px;font-weight:400}
.fsct.th-dark .fsct-search{border-color:#3a3a3c}
.fsct .fsct-search svg{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round}
.fsct .fsct-search input{
	-webkit-appearance:none;appearance:none;border:0;outline:0;box-shadow:none;background:transparent;
	color:var(--fg);font:inherit;font-size:14px;flex:1;min-width:0;height:auto;min-height:0;margin:0;padding:0;line-height:1.4
}

.fsct .fsct-card{position:relative;background:var(--card);border:1px solid var(--cardline);border-radius:18px;overflow:hidden}
.fsct .fsct-card::after{content:"";position:absolute;top:0;right:0;bottom:0;width:44px;pointer-events:none;opacity:0;transition:opacity .2s;background:linear-gradient(90deg,transparent,var(--card))}
.fsct .fsct-card.more::after{opacity:1}
.fsct .fsct-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.fsct table{border-collapse:separate;border-spacing:0;width:100%;margin:0;font-size:15px;border:0;background:transparent;table-layout:auto}
.fsct thead th{
	background:var(--head);text-align:left;font-size:13px;font-weight:600;color:var(--headfg);
	padding:14px 20px;white-space:nowrap;letter-spacing:-.1px;text-transform:none;line-height:1.3;border:0;vertical-align:middle
}
.fsct.hd-accent thead th{background:var(--ac);color:#fff}
.fsct tbody td,.fsct tbody th{
	padding:18px 20px;border:0;border-top:1px solid var(--line);vertical-align:middle;
	font-size:15px;line-height:1.45;color:var(--fg);text-align:left;text-transform:none;letter-spacing:normal;background:var(--card)
}
.fsct tbody th{font-weight:600}
.fsct.dn-compact tbody td,.fsct.dn-compact tbody th{padding:11px 16px}
.fsct.dn-compact thead th{padding:10px 16px}
.fsct.zebra tbody tr:nth-child(even) td,.fsct.zebra tbody tr:nth-child(even) th{background:var(--zebra)}
.fsct .r{text-align:right!important}
.fsct .num{font-variant-numeric:tabular-nums;white-space:nowrap}
.fsct .first,.fsct .nw{white-space:nowrap}
.fsct tbody tr.hl td,.fsct tbody tr.hl th{background:linear-gradient(var(--ac-soft),var(--ac-soft)),var(--card)}
.fsct .fsct-hl{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:9999px;background:var(--card);color:var(--ac-ink);font-size:11px;font-weight:600;line-height:1.4;vertical-align:2px;white-space:nowrap}
/* cột đầu ghim khi cuộn ngang: nền luôn đặc */
.fsct.sticky thead th:first-child,.fsct.sticky tbody th{position:sticky;left:0;z-index:2;transition:box-shadow .2s}
.fsct.sticky .fsct-card.sc thead th:first-child,.fsct.sticky .fsct-card.sc tbody th{box-shadow:10px 0 12px -10px rgba(0,0,0,.28)}

.fsct .fsct-badge{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:9999px;background:var(--ac-soft);color:var(--ac-ink);white-space:nowrap;line-height:1.3}
.fsct .fsct-badge.g{background:rgba(46,170,74,.12);color:#1d7f35}
.fsct .fsct-badge.n{background:rgba(120,120,128,.14);color:var(--mut)}
.fsct.th-dark .fsct-badge.g{color:#4cd964}
.fsct a.fsct-link{color:var(--lk);white-space:nowrap;font-weight:400;text-decoration:none;border:0;box-shadow:none}
.fsct a.fsct-link:hover{text-decoration:underline}
.fsct a.fsct-link::after{content:" \203A"}
.fsct .fsct-check{font-weight:600;color:var(--ac-ink)}
.fsct .fsct-dash{color:var(--mut)}
.fsct .fsct-note{color:var(--mut);font-size:13px;margin:14px 4px 0;padding:0;text-align:center;line-height:1.5}
.fsct .fsct-hint{display:none;font-size:12px;color:var(--mut);text-align:right;margin:8px 4px 0}
.fsct .fsct-hint.show{display:block}
.fsct .fsct-none{text-align:center;color:var(--mut);padding:24px;margin:0;font-size:14px}

.fsct .fsct-cards{display:none;flex-direction:column;gap:12px}
.fsct .fsct-c{background:var(--card);border:1px solid var(--cardline);border-radius:18px;padding:18px}
.fsct .fsct-c.hl{box-shadow:inset 0 0 0 2px var(--ac)}
.fsct .fsct-c-t{font-family:var(--fsct-font-d,inherit);font-size:19px;font-weight:600;letter-spacing:-.3px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--fg)}
.fsct .fsct-c-t em{font-style:normal;font-size:11px;color:var(--ac-ink);font-weight:600;font-family:var(--fsct-font,inherit)}
.fsct .fsct-c-r{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.4}
.fsct .fsct-c-r>span:first-child{color:var(--mut)}
.fsct .fsct-c-r>span:last-child{text-align:right}

@container (max-width: 620px){
	.fsct .fsct-title{font-size:26px}
	.fsct .fsct-sub{font-size:15px}
	.fsct.th-parch .fsct-wrap,.fsct.th-dark .fsct-wrap{padding:28px 16px;border-radius:20px}
	.fsct.m-cards .fsct-card,.fsct.m-cards .fsct-hint{display:none!important}
	.fsct.m-cards .fsct-cards{display:flex}
	.fsct .fsct-search{min-width:0;flex:1}
	.fsct thead th{padding:12px 14px}
	.fsct tbody td,.fsct tbody th{padding:14px}
}
/* Trình duyệt chưa hỗ trợ container query */
@supports not (container-type:inline-size){
	@media (max-width:640px){
		.fsct .fsct-title{font-size:26px}
		.fsct.m-cards .fsct-card,.fsct.m-cards .fsct-hint{display:none!important}
		.fsct.m-cards .fsct-cards{display:flex}
	}
}
@media (prefers-reduced-motion:reduce){
	.fsct *{transition:none!important}
}

/* ---------- căn lề cột, kẻ ô, dòng nhóm, ô nhiều dòng ---------- */
.fsct .al-left{text-align:left!important}
.fsct .al-center{text-align:center!important}
.fsct .al-right{text-align:right!important}
.fsct thead th{font-size:13.5px;font-weight:700}
.fsct.gl-all thead th+th,.fsct.gl-all tbody td,.fsct.gl-all tbody th+td,.fsct.gl-all tbody td+td{border-left:1px solid var(--line)}
.fsct.gl-all tbody tr>:first-child{border-left:0}
.fsct.gl-all thead th+th{border-left-color:rgba(0,0,0,.06)}
.fsct.hd-accent.gl-all thead th+th{border-left-color:rgba(255,255,255,.25)}
/* Dòng nhóm: tô cả dòng, vạch màu nhấn bên trái. Nền nhạt (mặc định) hoặc nền đậm. */
.fsct table tbody tr.fsct-grp>th,.fsct table tbody tr.fsct-grp>td{background:var(--head)!important;color:var(--headfg);font-weight:700;font-size:15.5px;padding-top:15px;padding-bottom:15px;border-top:1px solid var(--cardline)}
.fsct table tbody tr.fsct-grp>:first-child{box-shadow:inset 4px 0 0 var(--ac)}
.fsct.gs-solid table tbody tr.fsct-grp>th,.fsct.gs-solid table tbody tr.fsct-grp>td{background:var(--ac)!important;color:#fff;border-top-color:transparent}
.fsct.gs-solid table tbody tr.fsct-grp>:first-child{box-shadow:none}
.fsct.gs-solid.gl-all table tbody tr.fsct-grp>td{border-left-color:rgba(255,255,255,.3)}
.fsct.th-dark table tbody tr.fsct-grp>th,.fsct.th-dark table tbody tr.fsct-grp>td{background:#2f2f31!important;color:#fff}
.fsct table tbody tr.fsct-grp .gcell{text-align:left;white-space:normal}
.fsct.gs-solid .fsct-g{background:var(--ac);color:#fff;border-radius:12px;padding:12px 14px;margin-top:6px}
.fsct.gs-solid .fsct-g span{color:#fff}
.fsct.gs-soft .fsct-g{background:var(--head);border-radius:12px;padding:12px 14px;margin-top:6px;box-shadow:inset 4px 0 0 var(--ac)}
.fsct tbody td:not(.nw),.fsct tbody th:not(.nw){white-space:normal}
.fsct .fsct-g{font-weight:700;font-size:15px;color:var(--headfg);padding:14px 4px 4px;line-height:1.4}
.fsct .fsct-g span{display:inline-block;min-width:20px;margin-right:8px;color:var(--ac-ink)}
.fsct .fsct-c-t i{font-style:normal;font-weight:600;color:var(--mut);margin-right:8px;font-size:15px}
.fsct .fsct-c-r.long{flex-direction:column;gap:4px}
.fsct .fsct-c-r.long>span:last-child{text-align:left}
.fsct.gl-all .fsct-dash{visibility:hidden}
