.admin-wrap{min-height:100vh;background:#f5f6f8;padding:25px}.admin-card{max-width:1100px;margin:0 auto 22px;background:#fff;border-radius:14px;padding:25px;box-shadow:var(--shadow)}#login .admin-card{max-width:420px;margin:10vh auto}.admin-card h1,.admin-card h2{color:var(--primary)}.admin-card form{display:grid;gap:12px}.admin-head{max-width:1100px;margin:0 auto 20px;display:flex;justify-content:space-between;align-items:center}.admin-main{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.row{display:flex;justify-content:space-between;align-items:center}.post-row{border:1px solid var(--border);padding:14px;border-radius:12px;margin:10px 0;background:#fff;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.post-row:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.07);border-color:#d7d7d7}.post-row-main{min-width:0}.post-row-title-wrap{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.post-row-title-wrap b{font-size:1.02rem}.post-row small{color:var(--muted);display:block;margin-top:5px}.post-actions{display:flex;gap:7px;margin:10px 0 0;border:0;padding:0;flex-wrap:wrap}.post-actions button{padding:6px 10px}.status{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;padding:3px 9px;border-radius:20px;background:#eee}.status-published{background:#e8f7ee;color:#147a3d}.status-draft{background:#fff4d6;color:#8a6100}.status-other{background:#eee;color:#555}.image-preview-card{margin-top:10px;border:1px solid var(--border);border-radius:12px;padding:8px;background:#fafafa;max-width:420px}.image-preview-card img{display:block;width:100%;max-height:240px;object-fit:cover;border-radius:8px}.image-preview-info{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 3px 1px;flex-wrap:wrap}.image-preview-info small{color:var(--muted);word-break:break-word}.image-remove-btn{padding:6px 10px!important;white-space:nowrap}@media(max-width:850px){.admin-main{grid-template-columns:1fr}.admin-wrap{padding:10px}}/* =========================
   TAG INPUT
========================= */

.tag-box{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;

  min-height:44px;

  padding:6px 8px;

  border:1px solid #ccc;

  border-radius:6px;

  background:#fff;

  box-sizing:border-box;
}

.tag-box:focus-within{
  border-color:#2563eb;
}

.tag-box input{
  flex:1;

  min-width:140px;

  border:0;

  outline:none;

  padding:7px;

  background:transparent;

  font-size:15px;
}

.tag-item{
  display:inline-flex;

  align-items:center;

  gap:5px;

  padding:5px 9px;

  border-radius:15px;

  background:#e8f0fe;

  font-size:14px;

  line-height:1.2;
}

.tag-item button{
  border:0;

  background:transparent;

  cursor:pointer;

  font-size:17px;

  line-height:1;

  padding:0 2px;
}

.tag-item button:hover{
  opacity:.7;
}

/* Main Admin Question Bank */
#mainQuestionBank{margin:22px 0}
.exam-bank-note{margin:4px 0 0;color:var(--muted,#666)}
.exam-bank-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 2fr;gap:10px;margin:16px 0}
.exam-bank-filters input,.exam-bank-filters select{width:100%;box-sizing:border-box}
.exam-qform{margin:14px 0;padding:18px;border:1px solid var(--border,#ddd);border-radius:14px;background:var(--surface,#fff)}
.exam-qform label{display:block;margin:10px 0;font-weight:650}
.exam-qform input,.exam-qform textarea,.exam-qform select{display:block;width:100%;box-sizing:border-box;margin-top:6px}
.exam-qform select[multiple]{min-height:92px}
.exam-qform small{display:block;margin-top:5px;font-weight:400;opacity:.75}
.exam-qform .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.exam-admin-toast{position:fixed;right:18px;bottom:18px;padding:11px 15px;border-radius:10px;background:#222;color:#fff;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s;z-index:9999}
.exam-admin-toast.show{opacity:1;transform:none}
@media(max-width:900px){.exam-bank-filters{grid-template-columns:1fr 1fr}.exam-qform .two{grid-template-columns:1fr}}
@media(max-width:600px){.exam-bank-filters{grid-template-columns:1fr}.exam-bank-filters input,.exam-bank-filters select{min-height:42px}}

#onlineExamManagementCard{margin:22px 0}
#onlineExamManagementCard .exam-bank-note{margin:4px 0 0;color:var(--muted,#666)}
