/* admin: exam management screen */
.admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 20px}
.admin-status{font-size:14px;color:var(--mute);margin:0}
.admin-status.bad{color:var(--bad)}

/* family list */
.admin-family{margin-bottom:16px;padding:0;overflow:hidden}
.admin-family-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:18px 22px;background:none;border:0;font:inherit;color:var(--ink);text-align:left;cursor:pointer}
.admin-family-head:hover{background:var(--soft)}
.admin-family-name{font-size:22px;font-weight:700;letter-spacing:-.01em}
.admin-caret{width:14px;color:var(--mute);flex:none}
.admin-count{margin-left:auto;font-size:13px;color:var(--mute);font-weight:500}
.admin-family-head .admin-count{margin-left:auto}

.admin-subexams{border-top:1px solid var(--line);padding:6px 22px 18px}
.admin-subexam{display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%;margin-top:10px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--bg);font:inherit;color:var(--ink);text-align:left;cursor:pointer}
.admin-subexam:hover{border-color:var(--accent)}
.admin-subname{font-weight:700;font-size:17px}
.admin-subexams .admin-actions{margin-top:14px}

/* pop-up */
.admin-modal{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto;background:rgba(14,19,32,.45)}
.admin-modal[hidden]{display:none}
.admin-modal-box{width:100%;max-width:900px;padding:24px;border-radius:20px;background:var(--bg);box-shadow:var(--shadow)}
.admin-modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.admin-modal-head h2{font-size:26px;margin:0;letter-spacing:-.01em}
.admin-modal .admin-status{margin-bottom:12px;min-height:1em}
.admin-section{margin-top:22px}

/* subjects, collapsed by default */
.admin-subject{border:1px solid var(--line);border-radius:14px;margin-top:10px;overflow:hidden}
.admin-subject-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:13px 16px;background:var(--soft);border:0;font:inherit;font-weight:700;color:var(--ink);text-align:left;cursor:pointer}
.admin-subject-head:hover{background:var(--accent-soft)}
.admin-subject-body{padding:14px 16px 16px}
.admin-subject-body .admin-count{font-weight:500}

/* fields and rows (shared by pop-up forms and chapter lists) */
.admin-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;align-items:end;margin-bottom:12px}
.admin-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--mute);min-width:0}
.admin-field input{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--ink);min-width:0;width:100%;box-sizing:border-box}
.admin-field input:focus{outline:2px solid var(--accent);outline-offset:1px}
.admin-check{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);padding-bottom:10px}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:4px}

.admin-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr)) auto;gap:12px;align-items:end;padding:10px 0;border-bottom:1px solid var(--line)}
.admin-row:last-child{border-bottom:0}
.admin-row .admin-actions{margin-top:0;padding-bottom:2px}

.admin-add{border-top:1px dashed var(--line);margin-top:14px;padding-top:12px}
.admin-add h4{margin:0 0 10px}
