/* GIỚI HẠN GIỜ HỌC (ui/gioi-han-lop.js): nhãn đếm ngược nhỏ nổi ở trên cùng giữa màn + màn NGHỈ phủ toàn app.
   Luật cứng như app.css: không viền, hex chỉ ở :root, rgba(var(--x-rgb), a), chữ ≥ 20px, không đỏ, Chromium 83. */
.gh-nhan { position: fixed; left: 50%; top: .35rem; z-index: 30; display: flex; align-items: center; padding: .2rem .8rem .2rem .55rem; border-radius: var(--bo-vien); background: var(--the); box-shadow: var(--bong); color: var(--nhan); font-family: var(--ff-nut); font-weight: 700; font-size: var(--cs-20); line-height: 1.2; pointer-events: none; margin-left: -3.2rem; transition: opacity .25s; }
.gh-nhan.an { opacity: 0; visibility: hidden; }
.gh-nhan-bt { display: flex; margin-right: .35rem; }
.gh-nhan.dung { opacity: .55; }             /* bé đang không tương tác: đếm ngược tạm dừng */
.gh-nhan.sap-het { background: var(--vang); color: var(--chu); }
.gh-nghi { position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 40; display: flex; align-items: center; justify-content: center; background: rgba(var(--nhan-dam-rgb, 60, 40, 120), .86); padding: 1rem; }
.gh-nghi.an { display: none; }
.gh-nghi-the { width: min(34rem, 100%); max-height: 100%; overflow: auto; padding: 1.6rem 1.8rem 1.4rem; border-radius: var(--bo-the); background: var(--the); text-align: center; box-shadow: var(--bong-hop); animation: nay .5s var(--ease-nay); }
.gh-nghi-bt { display: flex; justify-content: center; color: var(--nhan); }
.gh-nghi-tieu { margin-top: .4rem; font-family: var(--ff-nut); font-weight: 800; font-size: var(--cs-40); line-height: 1.15; color: var(--chu); }
.gh-nghi-so { margin-top: .5rem; font-family: var(--ff-nut); font-weight: 800; font-size: max(72px, 5.2rem); line-height: 1; color: var(--nhan); font-variant-numeric: tabular-nums; }
.gh-nghi-phu { margin-top: .6rem; font-size: var(--cs-24); line-height: 1.35; color: var(--chu-phu); }
.gh-cong { display: flex; align-items: center; justify-content: center; margin-top: 1rem; }
.gh-cong .tt-nut { flex: none; }
.gh-cong-chu { margin-left: .7rem; font-size: var(--cs-20); color: var(--chu-phu); text-align: left; }
html[data-san-khau="ngang"] .gh-nghi-so { font-size: max(48px, 3.4rem); }
html[data-san-khau="ngang"] .gh-nghi-the { padding: 1rem 1.2rem .9rem; }
html[data-san-khau="ngang"] .gh-nhan { top: .2rem; }
.ph-ghi-chu { margin: .2rem 0 .8rem; padding: 0 .4rem; font-size: var(--cs-20); line-height: 1.35; color: var(--chu-phu); }
body.gh-dang-nghi #lop-lv { visibility: hidden; }
