/* Trang Mạng lưới trường sau sắp xếp (mang-luoi.php) — dùng biến màu chung của assets/style.css (sáng / tối). */
.ml{display:grid;gap:1rem}
.ml-dau h1{margin:.1rem 0 .35rem;text-wrap:balance}
.ml-dau p{margin:0;max-width:72ch}
.ml-nhan{font:600 .74rem "Bricolage Grotesque",sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-ink)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Tổng quan: con số trường nổi bật, các số còn lại xếp hàng */
.ml-so{display:grid;grid-template-columns:minmax(0,2.2fr) repeat(5,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r);background:var(--card);overflow:hidden}
.ml-so > div{display:grid;align-content:center;gap:.1rem;padding:.8rem 1rem;border-left:1px solid var(--line);min-width:0}
.ml-so > div:first-child{border-left:0}
.ml-so b{font:700 1.45rem/1.1 "Bricolage Grotesque",sans-serif;font-variant-numeric:tabular-nums;color:var(--ink)}
.ml-so span{font-size:.82rem;color:var(--muted)}
.ml-so-chinh{background:var(--accent-soft)}
.ml-so-chinh b{font-size:2.6rem;color:var(--accent-ink)}
.ml-so-chinh span{font-size:.92rem;color:var(--ink);font-weight:600}
.ml-so-chinh small{font-size:.78rem;color:var(--muted);line-height:1.35}
@media (max-width:860px){.ml-so{grid-template-columns:repeat(3,minmax(0,1fr))}.ml-so-chinh{grid-column:1/-1}.ml-so > div:nth-child(2),.ml-so > div:nth-child(5){border-left:0}
  .ml-so > div:nth-child(n+2){border-top:1px solid var(--line)}}

/* Theo cấp học: bấm để lọc */
.ml-cap{display:flex;flex-wrap:wrap;gap:.4rem}
.ml-cap button{display:inline-flex;align-items:baseline;gap:.45rem;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--r-nho);background:var(--card);color:var(--ink);cursor:pointer;font:500 .86rem "Source Sans 3",sans-serif}
.ml-cap button b{font:700 .95rem "Bricolage Grotesque",sans-serif;font-variant-numeric:tabular-nums}
.ml-cap button:hover{border-color:var(--accent)}
.ml-cap button.chon{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}

/* Bộ lọc */
.ml-loc{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.7rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card);position:sticky;top:0;z-index:5}
.ml-tim{flex:1 1 16rem;display:flex}
.ml-loc input,.ml-loc select{font:inherit;font-size:.9rem;padding:.42rem .6rem;border:1px solid var(--line);border-radius:var(--r-nho);background:var(--bg);color:var(--ink);min-width:0}
.ml-tim input{width:100%}
.ml-loc select{flex:0 1 12rem}
.ml-loc input:focus,.ml-loc select:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}
.ml-tt{display:flex;flex-wrap:wrap;gap:.3rem}
.ml-tt button{font:500 .82rem "Source Sans 3",sans-serif;padding:.3rem .65rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer}
.ml-tt button b{font-variant-numeric:tabular-nums;color:var(--muted);margin-left:.15rem}
.ml-tt button.chon{background:var(--accent-nut);border-color:var(--accent-nut);color:#fff}
.ml-tt button.chon b{color:#fff}
.ml-xuat{margin-left:auto;white-space:nowrap}
@media (max-width:640px){.ml-loc{position:static}.ml-loc select{flex:1 1 45%}.ml-xuat{margin-left:0;width:100%;text-align:center}}

/* Bảng: nhóm theo xã, dòng nhóm có cộng; tên trường kèm các trường cũ gộp vào */
.ml-bang{width:100%;border-collapse:collapse;font-size:.9rem}
.ml-bang th,.ml-bang td{padding:.45rem .6rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.ml-bang thead th{font:600 .76rem "Source Sans 3",sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--card);white-space:nowrap}
.ml-bang thead th small{text-transform:none;letter-spacing:0;font-weight:400}
.ml-bang .so{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ml-xa th,.ml-xa td{background:var(--chim);font-weight:700;border-top:2px solid var(--line)}
.ml-xa th{font:700 .92rem "Bricolage Grotesque",sans-serif;color:var(--ink)}
.ml-xa th span{font:500 .8rem "Source Sans 3",sans-serif;color:var(--muted)}
.ml-ten b{font-weight:600}
.ml-ten small{display:block;color:var(--muted);font-size:.8rem;line-height:1.35;margin-top:.1rem}
.ml-so-ql{font:600 .66rem "Source Sans 3",sans-serif;padding:.05rem .35rem;border-radius:4px;background:var(--info-soft);color:var(--info);vertical-align:1px}
.ml-ma{font:500 .78rem "IBM Plex Mono",monospace;color:var(--muted);white-space:nowrap}
.ml-tt-nhan{display:inline-block;font-size:.76rem;font-weight:600;padding:.1rem .5rem;border-radius:999px;white-space:nowrap;background:var(--code-bg);color:var(--muted)}
.ml-tt-nhap{background:var(--accent-soft);color:var(--accent-ink)}
.ml-tt-moi{background:var(--ok-soft);color:var(--ok)}
.ml-tt-cho{background:var(--warn-soft);color:var(--warn)}
.ml-bang tfoot th,.ml-bang tfoot td{font-weight:700;border-top:2px solid var(--ink);border-bottom:0;background:var(--card)}
.ml-bang tbody[hidden],.ml-bang tr[hidden]{display:none}
.ml-chu{margin:0;max-width:90ch}

/* Đối chiếu Phương án 158 */
.ml-pa{display:grid;gap:.6rem;padding:.8rem 1rem;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.ml-pa-dau{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem}
.ml-pa-dau h2{margin:0;font-size:1.05rem}
.ml-cap button{flex-direction:column;align-items:flex-start;gap:0;line-height:1.2}
.ml-cap button span{font-size:.78rem;color:var(--muted)}
.ml-cap button small{font-size:.72rem;font-weight:600}
.ml-cap button small.khop{color:var(--ok)}
.ml-cap button small.lech{color:var(--warn)}
.ml-dc{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.ml-dc button,.ml-dc a{font:500 .8rem "Source Sans 3",sans-serif;padding:.28rem .6rem;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;text-decoration:none}
.ml-dc button b,.ml-dc a b{font-variant-numeric:tabular-nums;margin-left:.15rem}
.ml-dc button.chon{background:var(--accent-nut);border-color:var(--accent-nut);color:#fff}
.ml-dc-cho b,.ml-dc-ra b{color:var(--warn)} .ml-dc-lech b,.ml-dc-thieu b,.ml-dc-ngoai b{color:var(--bad)} .ml-dc-so_giu b{color:var(--info)}
.ml-dc button.chon b{color:#fff}
.ml-pa-o{min-width:12rem}
.ml-pa-o small{display:block;color:var(--muted);font-size:.76rem;line-height:1.35;margin-top:.15rem}
.ml-dc-nhan{display:inline-block;font-size:.74rem;font-weight:600;padding:.08rem .45rem;border-radius:999px;white-space:nowrap;background:var(--ok-soft);color:var(--ok)}
.ml-dc-nhan.ml-dc-cho{background:var(--warn-soft);color:var(--warn)}
.ml-dc-nhan.ml-dc-lech{background:var(--bad-soft);color:var(--bad)}
.ml-dc-nhan.ml-dc-ngoai{background:var(--bad-soft);color:var(--bad)}
.ml-dc-nhan.ml-dc-so_giu{background:var(--info-soft);color:var(--info)}
.ml-ra{display:inline-grid;place-items:center;width:1.05rem;height:1.05rem;margin-left:.25rem;border-radius:50%;background:var(--warn-soft);color:var(--warn);font:700 .7rem "Source Sans 3",sans-serif;cursor:help;vertical-align:1px}
.ml-thieu h2{margin:.1rem 0 .3rem;font-size:1.05rem}
.ml-thieu .ml-bang{font-size:.86rem}

