/* =========================================================
   e-IQA Cluster dashboard — Modern theme (โหลดต่อจาก eiqa-theme.css)
   ขอบเขต: body.eiqa-cluster.cluster-v2  (ลบคลาส cluster-v2 เพื่อย้อนกลับแบบเดิม)
   ========================================================= */
body.eiqa-cluster.cluster-v2 {
    --c-bg: #f4f6fb;
    --c-surface: #fff;
    --c-border: #e5e8ef;
    --c-border-strong: #d4d9e3;
    --c-text: #111827;
    --c-muted: #6b7280;
    --c-subtle: #9ca3af;
    --c-brand: #4f46e5;
    --c-brand-50: #eef2ff;
    --c-early: #ea580c; --c-early-50: #fff7ed;
    --c-basic: #2563eb; --c-basic-50: #eff6ff;
    --c-radius: 14px;
    --c-shadow: 0 1px 2px rgba(16,24,40,.04), 0 1px 3px rgba(16,24,40,.06);
    --c-shadow-lg: 0 12px 32px -12px rgba(16,24,40,.18);
    background: var(--c-bg) !important;
    color: var(--c-text);
    -webkit-font-smoothing: antialiased;
}

/* ---------- Topbar: ทึบ ติดด้านบน ไม่ลอยทับเนื้อหา ---------- */
body.eiqa-cluster.cluster-v2 .topbar {
    position: sticky; top: 0; z-index: 50;
    margin: 0 !important; width: auto !important; left: auto !important; right: auto !important;
    border-radius: 0 !important;
    padding: 12px max(4%, 20px);
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: saturate(180%) blur(10px);
    border: 0 !important; border-bottom: 1px solid var(--c-border) !important;
    box-shadow: none !important;
    color: var(--c-text) !important;
}
body.eiqa-cluster.cluster-v2 .brand { color: var(--c-text) !important; font-size: 1rem; font-weight: 600; gap: 10px; }
body.eiqa-cluster.cluster-v2 .brand i {
    width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px;
    background: linear-gradient(135deg,#6366f1,#8b5cf6) !important; color: #fff !important; font-size: .9rem;
}
body.eiqa-cluster.cluster-v2 .top-btn {
    padding: 7px 12px; border-radius: 9px; font-size: .85rem; font-weight: 500;
    background: #fff !important; color: #374151 !important;
    border: 1px solid var(--c-border-strong) !important; box-shadow: none !important;
}
body.eiqa-cluster.cluster-v2 .top-btn:hover { background: #f9fafb !important; }
body.eiqa-cluster.cluster-v2 .top-btn.user-name { border-color: transparent !important; color: var(--c-muted) !important; }

body.eiqa-cluster.cluster-v2 .page { margin-top: 24px; }

/* ---------- Hero ---------- */
body.eiqa-cluster.cluster-v2 .hero {
    padding: 24px 28px; border-radius: 18px;
    background: linear-gradient(120deg,#312e81 0%,#4338ca 55%,#4f46e5 100%) !important;
    box-shadow: var(--c-shadow-lg) !important;
}
body.eiqa-cluster.cluster-v2 .hero h1 { font-size: 1.6rem; font-weight: 700; margin: 0 0 6px; }
body.eiqa-cluster.cluster-v2 .hero p { opacity: .85; font-size: .92rem; margin: 0; }

/* ---------- Toolbar ---------- */
body.eiqa-cluster.cluster-v2 .toolbar {
    padding: 14px; gap: 12px;
    background: var(--c-surface) !important; border: 1px solid var(--c-border) !important;
    border-radius: var(--c-radius) !important; box-shadow: var(--c-shadow) !important;
}
body.eiqa-cluster.cluster-v2 .filter-field label { font-size: .76rem; font-weight: 500; color: var(--c-muted); }
body.eiqa-cluster.cluster-v2 .control {
    padding: 9px 12px; border-radius: 10px; font-size: .9rem;
    border: 1px solid var(--c-border-strong) !important; background: #fff !important; box-shadow: none !important;
}
body.eiqa-cluster.cluster-v2 .control:focus { border-color: var(--c-brand) !important; box-shadow: 0 0 0 3px rgba(79,70,229,.15) !important; outline: none; }
body.eiqa-cluster.cluster-v2 .board-jump {
    border-radius: 10px; font-weight: 500; font-size: .88rem;
    background: var(--c-brand-50) !important; color: var(--c-brand) !important; border: 1px solid #c7d2fe !important; box-shadow: none !important;
}

/* legend: เหลือบรรทัดเดียวเล็ก ๆ */
body.eiqa-cluster.cluster-v2 .level-legend {
    padding: 8px 4px; background: transparent !important; border: 0 !important; box-shadow: none !important;
    font-size: .82rem;
}
body.eiqa-cluster.cluster-v2 .level-key { padding: 3px 10px; border-radius: 999px; font-size: .78rem; font-weight: 500; }

/* ---------- Cluster cards ---------- */
body.eiqa-cluster.cluster-v2 .cluster-grid { gap: 14px; }
body.eiqa-cluster.cluster-v2 .cluster-card {
    padding: 18px; border-radius: var(--c-radius) !important;
    background: var(--c-surface) !important; border: 1px solid var(--c-border) !important;
    box-shadow: var(--c-shadow) !important;
}
body.eiqa-cluster.cluster-v2 .cluster-card::before, body.eiqa-cluster.cluster-v2 .cluster-card::after { display: none !important; }
body.eiqa-cluster.cluster-v2 .cluster-card:hover { transform: translateY(-2px); box-shadow: var(--c-shadow-lg) !important; border-color: #c7d2fe !important; }
body.eiqa-cluster.cluster-v2 .cluster-card.active { border-color: var(--c-brand) !important; box-shadow: 0 0 0 3px rgba(79,70,229,.15), var(--c-shadow) !important; }
body.eiqa-cluster.cluster-v2 .cluster-no { border-radius: 10px !important; background: var(--c-brand-50) !important; color: var(--c-brand) !important; font-weight: 700; box-shadow: none !important; }
body.eiqa-cluster.cluster-v2 .cluster-head h3 { font-size: 1rem; font-weight: 600; }
body.eiqa-cluster.cluster-v2 .cluster-head p { font-size: .8rem; color: var(--c-muted); }
body.eiqa-cluster.cluster-v2 .cluster-kpi { border-radius: 10px; background: #f8fafc !important; border: 0 !important; }
body.eiqa-cluster.cluster-v2 .cluster-kpi strong { font-variant-numeric: tabular-nums; }
body.eiqa-cluster.cluster-v2 .bar { height: 6px; border-radius: 999px; background: #eef0f4 !important; }
body.eiqa-cluster.cluster-v2 .bar > div { border-radius: 999px; background: var(--c-brand) !important; }

/* ---------- Section head ---------- */
body.eiqa-cluster.cluster-v2 .section-head h2 { font-size: 1.15rem; font-weight: 600; }

/* ---------- Sidebar (รายชื่อโรงเรียน) : ไม่เลื่อนซ้อน ---------- */
body.eiqa-cluster.cluster-v2 .school-sidebar {
    border-radius: var(--c-radius) !important; border: 1px solid var(--c-border) !important;
    box-shadow: var(--c-shadow) !important; background: var(--c-surface) !important;
    overflow: visible !important;
}
body.eiqa-cluster.cluster-v2 .school-sidebar-head,
body.eiqa-cluster.cluster-v2 .sidebar-search-wrap,
body.eiqa-cluster.cluster-v2 .public-status-legend { background: #fff !important; }
body.eiqa-cluster.cluster-v2 .school-sidebar-head { border-radius: var(--c-radius) var(--c-radius) 0 0; }
body.eiqa-cluster.cluster-v2 .sidebar-search-wrap {
    position: sticky; top: 59px; z-index: 5;
    padding: 10px 14px; border-bottom: 1px solid var(--c-border);
}
body.eiqa-cluster.cluster-v2 .sidebar-search { border-radius: 10px !important; border: 1px solid var(--c-border-strong) !important; padding: 9px 12px !important; }
body.eiqa-cluster.cluster-v2 .public-status-legend { padding: 10px 14px; gap: 6px; font-size: .76rem; border-bottom: 1px solid var(--c-border); }
body.eiqa-cluster.cluster-v2 .public-status-legend strong { font-weight: 500; color: var(--c-muted); }
body.eiqa-cluster.cluster-v2 .public-legend-item { padding: 2px 9px; border-radius: 999px; font-size: .74rem; font-weight: 500; }

body.eiqa-cluster.cluster-v2 .school-list {
    max-height: none !important; overflow: visible !important;
    gap: 0 !important; padding: 0 !important;
}

/* ---------- แถวโรงเรียนแบบกระชับ ---------- */
body.eiqa-cluster.cluster-v2 .public-school-row {
    grid-template-columns: minmax(220px,.8fr) repeat(2,minmax(260px,1fr)) !important;
    gap: 14px !important; align-items: center !important;
    padding: 12px 14px !important;
    border: 0 !important; border-bottom: 1px solid #f0f2f6 !important; border-radius: 0 !important;
    background: #fff !important; box-shadow: none !important;
}
body.eiqa-cluster.cluster-v2 .public-school-row:hover { background: #fafbff !important; }
body.eiqa-cluster.cluster-v2 .public-school-row:last-child { border-bottom: 0 !important; border-radius: 0 0 var(--c-radius) var(--c-radius) !important; }
body.eiqa-cluster.cluster-v2 .public-school-row.selected { background: var(--c-brand-50) !important; box-shadow: inset 3px 0 0 var(--c-brand) !important; }
body.eiqa-cluster.cluster-v2 .public-school-row.own-school { box-shadow: inset 3px 0 0 #10b981 !important; }

body.eiqa-cluster.cluster-v2 .public-school-identity {
    padding: 0 !important; border: 0 !important; background: none !important; border-radius: 0 !important;
    align-items: center !important; gap: 12px;
}
body.eiqa-cluster.cluster-v2 .public-school-identity::before,
body.eiqa-cluster.cluster-v2 .public-school-identity::after { display: none !important; }
body.eiqa-cluster.cluster-v2 .school-nav-number {
    width: 28px; height: 28px; flex: 0 0 28px; border-radius: 8px !important;
    background: #f3f4f6 !important; color: var(--c-muted) !important;
    font-size: .76rem; font-weight: 600; box-shadow: none !important;
}
body.eiqa-cluster.cluster-v2 .public-school-row.selected .school-nav-number { background: var(--c-brand) !important; color: #fff !important; }
body.eiqa-cluster.cluster-v2 .public-school-label,
body.eiqa-cluster.cluster-v2 .public-school-hint { display: none !important; }
body.eiqa-cluster.cluster-v2 .public-school-link strong { display: block; font-size: .93rem; font-weight: 600; color: var(--c-text) !important; line-height: 1.35; }
body.eiqa-cluster.cluster-v2 .public-school-link:hover strong { color: var(--c-brand) !important; }
body.eiqa-cluster.cluster-v2 .public-school-location { display: block; margin-top: 2px; font-size: .76rem; color: var(--c-muted) !important; }

/* การ์ดระดับ: แถวเดียว ไม่มีกรอบหนา */
body.eiqa-cluster.cluster-v2 .public-level-card {
    padding: 0 !important; border: 0 !important; border-radius: 0 !important;
    background: none !important; box-shadow: none !important; overflow: visible !important;
}
body.eiqa-cluster.cluster-v2 .public-level-card::before { display: none !important; }
body.eiqa-cluster.cluster-v2 .public-level-head {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 6px; font-size: .78rem; font-weight: 600;
}
body.eiqa-cluster.cluster-v2 .public-level-card.early .public-level-head { color: var(--c-early); }
body.eiqa-cluster.cluster-v2 .public-level-card.basic .public-level-head { color: var(--c-basic); }
body.eiqa-cluster.cluster-v2 .public-level-head strong { font-variant-numeric: tabular-nums; color: var(--c-text); }
body.eiqa-cluster.cluster-v2 .public-level-meta { display: none !important; }

/* ชิปขั้น 1–6: ตัวเลข + ไอคอน ชื่อสถานะดูได้จาก tooltip/คำอธิบายสี */
body.eiqa-cluster.cluster-v2 .public-step-flow { gap: 4px !important; }
body.eiqa-cluster.cluster-v2 .public-step-chip {
    display: flex !important; align-items: center; justify-content: center; gap: 5px !important;
    height: 30px; padding: 0 4px !important;
    border-radius: 8px !important; font-size: .78rem;
    box-shadow: none !important;
}
body.eiqa-cluster.cluster-v2 .public-step-chip small { display: none !important; }
body.eiqa-cluster.cluster-v2 .public-step-chip b { font-weight: 700; }
body.eiqa-cluster.cluster-v2 .public-step-chip i { font-size: .7rem; }
body.eiqa-cluster.cluster-v2 .public-step-chip:hover { transform: translateY(-1px); box-shadow: 0 4px 10px -4px rgba(16,24,40,.25) !important; }

/* ---------- รายละเอียดโรงเรียน ---------- */
body.eiqa-cluster.cluster-v2 .school-detail {
    border-radius: var(--c-radius) !important; border: 1px solid var(--c-border) !important;
    box-shadow: var(--c-shadow) !important; background: var(--c-surface) !important;
}
body.eiqa-cluster.cluster-v2 .school-detail > .empty { padding: 22px 20px !important; font-size: .9rem; color: var(--c-muted); }
body.eiqa-cluster.cluster-v2 .school-detail > .empty i { font-size: 1.4rem !important; margin-bottom: 6px !important; }
body.eiqa-cluster.cluster-v2 .school-detail > .empty br + span { display: none; }

/* ---------- Mobile ---------- */
@media (max-width: 1180px) {
    body.eiqa-cluster.cluster-v2 .public-school-row { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    body.eiqa-cluster.cluster-v2 .public-school-identity { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    body.eiqa-cluster.cluster-v2 .public-school-row { grid-template-columns: 1fr !important; gap: 10px !important; }
    body.eiqa-cluster.cluster-v2 .sidebar-search-wrap { top: 55px; }
    body.eiqa-cluster.cluster-v2 .hero { padding: 18px; }
    body.eiqa-cluster.cluster-v2 .hero h1 { font-size: 1.3rem; }
}

/* ---------- fixes ---------- */
body.eiqa-cluster.cluster-v2 .hero p,
body.eiqa-cluster.cluster-v2 .hero-meta span { color: rgba(255,255,255,.82) !important; }
@media (max-width: 760px) {
    body.eiqa-cluster.cluster-v2 .sidebar-search-wrap { top: 66px; }
}
@media (max-width: 480px) {
    body.eiqa-cluster.cluster-v2 .top-btn { font-size: 0 !important; gap: 0 !important; width: 38px; height: 38px; padding: 0 !important; justify-content: center; }
    body.eiqa-cluster.cluster-v2 .top-btn i { font-size: .9rem; }
    body.eiqa-cluster.cluster-v2 .brand { font-size: .9rem; }
}
body.eiqa-cluster.cluster-v2 .hero h1 { color: #fff !important; -webkit-text-fill-color: #fff !important; background: none !important; }
