/* ============================================================
   Delaware Digital University — Student Detail
   Colors: Navy #1e2a78 | Gold #c9a052 | BG #f0f2f5
   Font: Inter
============================================================ */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --navy:      #303088; 
  --navy-dk:   #303088;
  --gold:      #C9A757;
  --gold-lt:   #d4af6a;
  --bg:        #F3F4F4;
  --white:     #ffffff;
  --text:      #2d2d2d;
  --muted:     #9a9a9a;
  --border:    #e4e7eb;
  --pass:      #28a745;
  --fail:      #dc3545;
  --hdr:       70px;
  --sbw:       82px;
}

html, body {
  height: 100%;
  overflow: hidden;
}

body {
  font-family: 'Inter', sans-serif;
  background: var(--white);
  color: var(--text);
  font-size: 14px;
}

p{
  margin-bottom: 0px;
}

/* ============================================================
   ROOT FLEX SHELL
   .divallMainOne  → flex column, full viewport height
   .app-body       → flex row, fills remaining height
============================================================ */
.divallMainOne {
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  padding: 20px;
  @media (max-width: 768px) {
  padding: 10px;
  }
}

/* ============================================================
   HEADER — sticky top of main-content flex column
   No position:fixed — flex-shrink:0 keeps it pinned at top
============================================================ */


/* Dark navy slab — same width as sidebar */
.header-nav-side {
  width: var(--sbw);
  min-width: var(--sbw);
  background: var(--navy);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 0px;
}

/* White panel — rest of the header */
.header-main {
  flex: 1;
  background: var(--bg);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 32px;
}

/* Hamburger inside navy slab */
.hamburger {
  width: 46px; height: 46px;
  display: flex; align-items: center; justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 20px;
  color: var(--gold);
  border-radius: 8px;
  transition: background .2s, color .2s;
  letter-spacing: -1px;
  padding: 6px;
}
.hamburger:hover {
  background: var(--white);
  color: var(--gold-lt);
}

/* User info */
.header-user {
  display: flex;
  align-items: center;
  gap: 16px;
}

.header-avatar {
  width: 80px; height: 80px;
  border-radius: 50%;
  object-fit: cover;

}

.header-user-text {
  display: flex;
  flex-direction: column;
  line-height: 1.3;
}
.header-name {
  font-size: 20px;
  font-weight: 600;
  color: var(--navy);
  letter-spacing: .2px;
}
.header-role {
  font-size: 13px;
  font-weight: 400;
  color: var(--navy);
}

/* University branding (right side) */
.header-right {
  display: flex;
  align-items: center;
  gap: 10px;
}

.university-seal img { display: block; width: 220px;  }

.university-name {
  display: flex;
  flex-direction: column;
  line-height: 1.3;
}
.uni-line1 {
  font-size: 16px;
  font-weight: 800;
  color: var(--navy);
  letter-spacing: .5px;
}
.uni-line2 {
  font-size: 11px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: 2px;
  text-align: center;
}
.uni-line3 {
  font-size: 9px;
  color: var(--muted);
  letter-spacing: .8px;
  text-align: center;
}

/* ============================================================
   APP BODY — flex row: sidebar left, main content right
   No position:fixed — fills remaining height from .divallMainOne
============================================================ */
.app-body {
  display: flex;
  flex: 1;
  overflow: hidden;
  position: relative;
}

/* ============================================================
   SIDEBAR — flex child, no position:fixed
============================================================ */

.flexMainGapall{
  display: flex;
  gap: 10px;
  flex-direction: column;

  justify-content: flex-start;
    @media (max-width: 767px) {
  gap: 15px;
    }
}
.sidebar {
  width: 90px;
  flex-shrink: 0;
  background: var(--navy);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  scrollbar-width: none;
  border-radius: 18px 0px 0px 18px;
  padding: 20px;
  justify-content: space-between;
  transition: width .28s ease, min-width .28s ease, padding .28s ease;
}
.sidebar::-webkit-scrollbar { display: none; }

/* Desktop-only: sidebar collapses to zero width */
@media (min-width: 769px) {
  .sidebar.collapsed {
    width: 0;
    min-width: 0;
    padding: 0;
    overflow: hidden;
  }
}

.sidebar-nav {
 display: flex;
  flex-direction: column;
  align-items: center;

  gap: 12px;
  height: 100%;
  justify-content: space-between;
}

.nav-item {


  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 38px;
  text-decoration: none;
  transition: background .18s, color .18s;
  flex-shrink: 0; width: 89px;
  img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    transition: filter .18s;
  }
  position: relative;
padding: 19px 4px;
  flex-direction: column;
  gap: 12px;
  @media (max-width: 767px) {
width: 100%;
padding: 11px 1px;
border-radius: 20px;
  }
    &:hover  .nav-lbl,
    &:hover svg{
      stroke: var(--navy);
  }

   &:hover img{
    /* recolor white SVG icon to navy (#303088) on hover */
    filter: brightness(0) saturate(100%) invert(13%) sepia(67%)
      saturate(3194%) hue-rotate(237deg) brightness(96%) contrast(96%);
   }

  .nav-lbl{
    color: #fff;
  font-size: 13px;
  font-weight: 400;

  text-align: center;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  line-height: 1.2;
  white-space: nowrap;

  }

}
  .nav-item.active .nav-lbl,
  .nav-item.active .nav-chevron-sm {
  color: var(--navy);
}
.nav-item.active img {
  /* navy icon on the white active card */
  filter: brightness(0) saturate(100%) invert(13%) sepia(67%)
    saturate(3194%) hue-rotate(237deg) brightness(96%) contrast(96%);
}
.nav-item:hover {
  background: var(--white);
  color: var(--navy);
}
/* recolor white SVG nav icons (incl. LOCATIONS dropdown) to navy on hover */
.nav-item:hover img {
  filter: brightness(0) saturate(100%) invert(13%) sepia(67%)
    saturate(3194%) hue-rotate(237deg) brightness(96%) contrast(96%);
}
.nav-item:hover .nav-lbl,
.nav-item:hover .nav-chevron-sm {
  color: var(--navy);
}

/* ============================================================
   SIDEBAR DROPDOWN (LOCATIONS)
============================================================ */
.nav-dropdown {
  width: 100%;
}
/* trigger is a <button> — strip native styling so it matches the nav links */
.nav-dropdown-trigger {
  width: 100%;
  background: transparent;
  border: 0;
  cursor: pointer;
  font: inherit;
}
/* inline chevron svg inherits text color (white → navy on hover/open) */

/* rotate arrow when open */
.nav-dropdown.open .nav-chevron-svg {
  transform: rotate(180deg);
}
.nav-dropdown.open .nav-dropdown-trigger .nav-chevron-svg {
  color: var(--navy);
}

/* collapsible submenu */
.nav-submenu {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
  max-height: 0;
  overflow: hidden;
  transition: max-height .25s ease;
}
.nav-dropdown.open .nav-submenu {
  max-height: 240px;
}
.nav-subitem {
  display: block;
  padding: 8px 10px;
  margin-top: 4px;
  color: rgba(255, 255, 255, .85);
  text-decoration: none;
  font-size: 12px;
  text-align: center;
  border-radius: 12px;
  transition: background .15s, color .15s;
}
.nav-subitem:first-child {
  margin-top: 8px;
}
.nav-subitem:hover,
.nav-subitem.active {
  background: var(--white);
  color: var(--navy);
  font-weight: 600;
}

/* Active: white card with navy icon */
.nav-item.active {
  background: var(--white);

  color: var(--navy);
 box-shadow: 0px 10px 30px -8px #000000E5;
}
.nav-item.active:hover {
  background: var(--white);
  color: var(--navy);
}

.nav-add {
  color: var(--gold);
  font-size: 16px;
}

.nav-sep {
  width: 32px; height: 1px;
  background: rgba(255,255,255,.12);
  margin: 4px 0;
}

.nav-push { flex: 1; }

.nav-logout {
  color: rgba(255,255,255,.4);
  font-size: 16px;
}
.nav-logout:hover {
  color: #ff6b6b;
  background: rgba(220,53,69,.12);
}

/* Overlay — absolute within .app-body */
.sidebar-overlay {
  display: none;
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.38);
  z-index: 80;
}
.sidebar-overlay.active { display: block; }

/* ============================================================
   MAIN CONTENT — flex column: header pinned, body scrolls
============================================================ */
.main-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-width: 0;

  border-radius: 0px 24px 24px 0px;
  @media (max-width: 768px) {
  border-radius: 14px;
  }
}

/* Scrollable region — everything below the header */
.main-scroll-area {
  flex: 1;
  overflow-y: auto;

  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}
.main-scroll-area::-webkit-scrollbar { width: 5px; }
.main-scroll-area::-webkit-scrollbar-track { background: transparent; }
.main-scroll-area::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }

/* ============================================================
   BREADCRUMB BANNER
============================================================ */
.breadcrumb-banner {
  background: var(--gold);
padding: 20px 30px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  @media (max-width: 768px) {
  border-radius: 8px;
  }
}

.breadcrumb-title {
  font-size: 20px;
  font-weight: 400;
  color: var(--navy);
  letter-spacing: .2px;
}

.breadcrumb-nav {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 13px;
  color: var(--navy);
   @media (max-width: 768px) {
  font-size: 10px;
   }
}
.breadcrumb-nav a {
  color: var(--navy);
  text-decoration: none;
  opacity: .9;
}
.breadcrumb-nav a:hover { opacity: 1; text-decoration: underline; }
.breadcrumb-nav i { font-size: 9px; opacity: .75; }
.breadcrumb-nav span { opacity: .9; }

/* ============================================================
   PAGE BODY
============================================================ */
.page-body {
  padding: 0px 0 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* ============================================================
   PROFILE SECTION
============================================================ */
.profile-section {
  background: var(--bg);
  padding: 20px 20px 0px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  @media (max-width: 768px) {
padding: 0px;
  }
}

/* Avatar: navy ring → white gap → photo */
.profile-avatar-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 3px solid var(--navy);
  padding: 0px;
  background: var(--white);
  margin-bottom: 10px;
}

.profile-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

/* Name row */
.profile-name {
  font-size: 16px;
  font-weight: 600;
  color: var(--text);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 8px;
  line-height: 1.3;
}

/* Green verified badge */
.verified-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

/* Contact / DOB / Email row */
.profile-meta {
  font-size: 13px;
  color: var(--muted);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  line-height: 1.5;
  margin-bottom: 0px;
}
.profile-meta span { white-space: nowrap; }
.pipe { color: var(--border); }

/* ============================================================
   BASIC DETAILS
============================================================ */
.basic-details {
 background: var(--bg);

  overflow: hidden;
}

.bd-header {
  background: var(--navy);
  color: var(--white);
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  padding: 13px 24px;
  letter-spacing: .3px;
    border-radius: 10px;
}

.bd-body{
  padding-top: 20px;
  @media (max-width: 768px) {
padding-top: 10px;
  }
}

.bd-row {
  display: flex;
  align-items: center;
  padding: 11px 20px;

  gap: 20px;
}
.bd-row:last-child { border-bottom: none; }

.bd-label {
  width: 160px;
  min-width: 160px;
  font-size: 13px;
  color: var(--muted);
}
.bd-value {
  font-size: 14px;
  color: var(--text);
}
.pipe-em {
  font-style: normal;
  color: var(--muted);
}

/* ============================================================
   TABLE SECTION
   .table-wrap  → transparent flex column (gap between 3 parts)
     .search-box → standalone pill input above the card
     .tbl-card   → white box card (only header + rows)
     .pagination → standalone row below the card
============================================================ */
.table-wrap {
  display: flex;
  flex-direction: column;
  gap: 2px;

}

/* ── 1. Search bar ── */
.search-box {
  position: relative;
  max-width: 380px;
}
.search-box i {
  position: absolute;
  left: 16px; top: 50%;
  transform: translateY(-50%);
  font-size: 13px;
  color: var(--muted);
  pointer-events: none;
}
.search-box input {
  width: 100%;
  padding: 11px 20px 11px 42px;
  border: 1.5px solid var(--border);
  border-radius: 12px;
  background: var(--white);
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: var(--text);
  outline: none;
  box-shadow: 0 1px 4px rgba(0,0,0,.05);
  transition: border-color .2s, box-shadow .2s;
}
.search-box input::placeholder { color: var(--muted); }
.search-box input:focus {
  border-color: var(--navy);
  box-shadow: 0 0 0 3px rgba(33,35,106,.08);
}

/* ── 2. Table card — transparent container, rows are the cards ── */
.tbl-card {
  background: transparent;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
    @media (max-width: 1199px) {
display: none;
    }
}



.exam-tbl {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 6px;
  white-space: nowrap;
}

/* Header — standalone navy bar with rounded corners */
.exam-tbl thead tr { background: transparent; }
.exam-tbl thead th {
  padding: 11px 20px;
  font-size: 13px;
  font-weight: 500;
  color: var(--white);
  text-align: left;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  background: var(--navy);
  border-right: 1px var(--white) solid;
}
.exam-tbl thead th:first-child { border-radius: 12px 0 0 12px; }
.exam-tbl thead th:last-child  { border-radius: 0 12px 12px 0; }
.exam-tbl thead th i { font-size: 9px; opacity: .55; margin-left: 5px; }

/* Each body row = its own white card */
.exam-tbl tbody td {
padding: 5px 15px;
  font-size: 13px;
  color: var(--text);
  vertical-align: middle;
  background: var(--white);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  transition: background .12s;
    border-right: 1px var(--border) solid;
}
.exam-tbl tbody td:first-child {
  border-left: 1px solid var(--border);
  border-radius: 12px 0 0 12px;
}
.exam-tbl tbody td:last-child {
  border-right: 1px solid var(--border);
  border-radius: 0 12px 12px 0;
}
.exam-tbl tbody tr:hover td { background: #f5f6fb; }

.tbl-title { font-size: 13px; font-weight: 400; color: #2C2D30;
   margin-bottom: 0px; white-space: normal; line-height: 1.4; 
  
   @media (max-width: 767px) {
font-size: 10px;
   }
  }
.tbl-course { font-size: 12px; color: var(--muted); white-space: normal; }

/* Score box */
.score-box {
  display: inline-block;
  border: 1.5px solid var(--border);
  border-radius: 4px;
  padding: 4px 7px;
  font-size: 11px;
  background:#EEEEEE;
  color: var(--text);
  font-weight: 500;
}

/* Badges */
.badge { display: inline-block; padding: 2px 10px; border-radius: 4px; font-size: 12px; font-weight: 400; line-height: 1.5; }
.badge-pass { background: #e6f4ea; color: #1d8a35; }
.badge-fail { background: #fdecea; color: #c0392b;}

.apply-link { color: #D10032; font-weight: 400; font-size: 13px; text-decoration: none; }
.apply-link:hover { text-decoration: underline; }
.cert-text { font-size: 13px; color: var(--text); }

/* ============================================================
   CENTERS LIST TABLE — single white card, solid header,
   striped rows (matches design screenshot)
============================================================ */
.ctr-card {
  background: var(--white);
  border: 1px solid #e6e7ee;
  border-radius: 32px;

  overflow: hidden;
  margin-top: 0px;
  margin-bottom: 15px;
  @media (max-width: 767px) {
  border-radius: 16px;
  margin-bottom: 10px;
  }

}
.ctr-tbl-scroll { overflow-x: auto; }
@media (max-width: 1199px) {
  .ctr-tbl-scroll { display: none; }
}

/* Page header (title + add button) — mobile only, sits above the card.
   On desktop the title/add live inside the card (see .ctr-head). */
.ctr-page-head {
  display: none;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 4px 4px 0;
  @media (max-width: 767px) {
padding: 0px;
gap:14px;
margin-bottom: 17px;
  }
}

/* Card header — search row */
.ctr-head {
 padding: 32px 24px 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Exam-table toolbar (search + date range + status filter) */
.ctr-exam-toolbar { display: flex; align-items: center; gap: 12px;  }
.ctr-exam-toolbar .acad-search-wrap { flex: 0 1 320px; min-width: none; }
@media (max-width: 767px) {
  /* Keep all three controls on a single line */
  .ctr-exam-toolbar { flex-wrap: nowrap; gap: 8px; }
  .ctr-exam-toolbar .acad-search-wrap { flex: 1 1 auto; min-width: 0; }
  .ctr-exam-toolbar .acad-membership-wrap { flex: 0 1 auto; min-width: 0; }
  .ctr-exam-toolbar .acad-membership-select {
    width: 100%;
    min-width: 0;
    padding: 8px 24px 8px 10px;
    text-overflow: ellipsis;
  }
}
.ctr-head-title { font-size: 20px; font-weight: 600; color:#000; margin-bottom: 2px; }
.ctr-head-sub { font-size: 14px;
  color: #676A72;
  margin: 3px 0 0;
  font-weight: 400; }
.ctr-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  @media (max-width: 1199px) {
flex-direction: column;
align-items: start;
  }
    @media (max-width: 767px) {
flex-direction: column-reverse;
 gap: 8px;
    }
 
}
.ctr-search-group { display: flex; align-items: center; gap: 10px; }
.ctr-search { position: relative; }
.ctr-search svg {
  position: absolute;
  left: 13px; top: 50%;
  transform: translateY(-50%);
 
  pointer-events: none;
}
.ctr-search input {
width: 200px;
  max-width: 100%;
  padding: 7px 16px 7px 38px;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius: 10px;
  font-size: 13px;
  color: #8E9198;
  background: var(--white);
  outline: none;
  font-weight: 400;
  transition: border-color .2s, box-shadow .2s;
  box-shadow: 0px 1px 2px 0px #00000014;

}
.ctr-search input::placeholder { color: var(--muted); }
.ctr-search input:focus {
  border-color: var(--navy);
  box-shadow: 0 0 0 3px rgba(33, 35, 106, .08);
}
.ctr-search-btn {
padding: 8px 14px;
  border: 1.5px solid var(--border);
  border-radius: 8px;
  background: var(--white);
  color: #2C2D30;
box-shadow: 0px 1px 2px 0px #00000014;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: border-color .15s, color .15s;
}
.ctr-search-btn:hover { border-color: var(--navy); color: var(--navy); }
.ctr-add-btn {
display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: none;
  border-radius: 8px;
  background: var(--navy);
  color: var(--white);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s;
}
.ctr-add-btn:hover { background: #2a2a78; }
.ctr-add-btn i { font-size: 12px; }

@media (max-width: 767px) {
  .ctr-head { padding: 15px 14px; }
  .ctr-search-group { flex: 1; width: 100%; }
 
  .ctr-search input { width: 100%; }
  /* Show the page header above the card; hide the in-card title/add */
  .ctr-page-head { display: flex; }
  .ctr-head-desktop-only { display: none; }
  .ctr-add-btn-desktop { display: none; }
  /* Title takes the full row; Add button wraps below, aligned right */
  .ctr-page-head .ctr-head-titles { flex: 1 1 100%; }
  .ctr-page-head .ctr-add-btn { margin-left: auto; width: auto; font-size: 10px; }
}

.ctr-tbl {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
}

/* Header — solid navy bar */
.ctr-tbl thead tr { background: var(--navy); }
.ctr-tbl thead th {
padding: 11px 22px;
  font-size: 13px;
  font-weight: 400;
  color: var(--white);
  text-align: left;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  border-right: 1px solid #eee;
}
.ctr-tbl thead th:last-child { text-align: center; border-right: none; }
.ctr-tbl thead th .ctr-sort {
  margin-left: 6px;
  font-size: 11px;
  opacity: .55;
  vertical-align: middle;
}

/* Body — striped rows with subtle grid lines */
.ctr-tbl tbody td {
padding: 10px 14px;
  font-size: 13px;
  color: #2C2D30;
  vertical-align: middle;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
}
.ctr-tbl tbody td:last-child { text-align: center; border-right: none; }
.ctr-tbl tbody tr:last-child td { border-bottom: none; }
.ctr-tbl tbody tr:nth-child(even) { background: #E9E9F1; }
.ctr-tbl tbody tr:hover { background: #E9E9F1; }
.ctr-name { font-weight: 500; color: var(--text); }

/* Action buttons (light lavender rounded squares, navy icons) */
.ctr-act-btns { display: inline-flex; align-items: center; gap: 8px; justify-content: center; }
.ctr-act-btn {
 width: 28px;
  height: 28px;
  border-radius: 8px;
  border: none;
  background: #d6d7e4;
  color: var(--navy);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  transition: background .15s, color .15s, border-color .15s;
  /* SVG loaded via <img> can't inherit color — this filter renders it white */
  @media (max-width: 767px) {
width: 16px;
  height: 16px;
   border-radius: 4px;
  }
  
  &:hover img{
    filter: brightness(0) invert(1);
  }
  img{
      @media (max-width: 767px) {
width: 11px;

      }
  }
}
.ctr-act-btn:hover { background: var(--navy); }
.ctr-act-btn i {
  color: #21236a;
  transition: color .15s;
}
.ctr-act-btn:hover i {
  color: #fff !important;
}

/* Pagination inside the card */
.ctr-foot {
  display: flex; align-items: center; justify-content: space-between;
padding: 30px 27px;  gap: 12px;
 @media (max-width: 767px) {
padding: 8px 11px;
 }
}
.ctr-foot .pag-btn.active {
  background: var(--navy);
  color: var(--white);
  border-color: var(--navy);
}

/* ============================================================
   CENTERS — mobile accordion (matches design screenshot)
============================================================ */
#centersAccordion { gap: 0; padding: 10px 12px 4px; 
@media (max-width: 767px) {
margin: 0px!important;
}
}

/* Header bar: "#  Name" */
#centersAccordion .dataCssHdr { gap: 0; border-radius: 10px; margin: 0 0 6px; }
#centersAccordion .dataCssHdr .dch-num { min-width: 48px; }


/* Collapsed rows — simple divider, no inner vertical borders */
#centersAccordion .dataCssCollapsed {
  border-radius: 0;

  padding: 0;
  border-left: none; border-right: none;
   
}
#centersAccordion .dataCssRowId { border-left: none; border-right: none; }


/* Hide the heading row of the currently expanded item */
#centersAccordion .dataCssCollapsed[aria-expanded="true"] { display: none; }
.leftBorderDiv{
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px #eee solid;
}
/* Navy circular expand button with white chevron */
#centersAccordion .dataCssExpandBtn {
  width: 16px; height: 16px;
  background: var(--navy);
  border: none;
  border-radius: 50%;
  flex-shrink: 0;
  
}
#centersAccordion .dataCssExpandBtn i { color: #fff; font-size: 8px; }

.accordion-item{
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  &:last-child{
   border-bottom: 1px solid #eee;
  }
   &:first-child{
    border-bottom: none;
  }
}
/* Wallet balance pill */
.wallet-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
padding: 5px 10px;
  border-radius: 6px;
  background: var(--white);
border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  font-size: 11px;
  font-weight: 500;
  color: var(--text);
box-shadow: 0px 1px 2px 0px #00000014;

  white-space: nowrap;
  @media (max-width: 767px) {
padding: 5px 5px;
  font-size: 9px;
  }
}
.wallet-badge i { color: #D10032; font-size: 13px; }

/* Action buttons */
.act-btns { display: flex; align-items: center; gap: 6px; justify-content: center; 

@media (max-width: 1199px) {
justify-content: start;
}
}
.act-btn {
  width: 30px; height: 30px;
  border-radius: 50%;
  border: 1.5px solid var(--gold-lt);
background: #C9A75733;
  cursor: pointer;
  color: var(--navy);
  font-size: 12px;
  display: flex; align-items: center; justify-content: center;
  transition: background .18s, border-color .18s, color .18s;
  flex-shrink: 0;
  @media (max-width: 1199px) {
 width: 20px; height: 20px;
 border-radius: 6px;
  }
}
.act-btn:hover { border-color: var(--navy); color: var(--white); }

/* Action dropdown */
.act-dropdown-wrap { position: relative; display: inline-flex; }
.act-dropdown {
  display: none;
  position: absolute;
  right: 0; top: calc(100% + 6px);
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 10px;
  box-shadow: 0 6px 24px rgba(0,0,0,.13);
  min-width: 160px;
  z-index: 999;
  overflow: hidden;
  animation: dropFade .15s ease;
}
.act-dropdown.open { display: block; }
@keyframes dropFade {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}
.act-dropdown-item {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 16px;
  font-size: 13px; color: var(--text);
  cursor: pointer; border: none; background: none;
  width: 100%; text-align: left;
  transition: background .12s;
  font-family: 'Inter', sans-serif;
}
.act-dropdown-item:hover { background: #f5f6fa; color: var(--navy); }
.act-dropdown-item.danger { color: #c0392b; }
.act-dropdown-item.danger:hover { background: #fde8e8; }
.act-dropdown-item i { width: 14px; text-align: center; font-size: 13px; }
.act-dropdown-divider { height: 1px; background: var(--border); margin: 4px 0; }

/* ── 3. Pagination — standalone below card ── */
.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
 
  gap: 10px;
  padding: 14px;
  background: var(--white);
  border-radius: 18px;
    @media (max-width: 570px) {
gap: 8px;
  padding: 10px;
  border-radius: 12px;
    }
}

.pag-left { display: flex; align-items: center; gap: 10px;font-size: 13px;
  color: #8E9198;
  font-weight: 500;
    @media (max-width: 570px) {
font-size: 10px; 
    }
}
.pag-left select {
border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius:6px;
  padding: 6px 6px 6px 10px;

  font-size: 11px;
  color: #393B40;
  font-weight: 400;
  background: #FAFAFA;
  cursor: pointer;
  outline: none;
  appearance: auto;
  min-width: 59px;

    @media (max-width: 570px) {

  border-radius: 6px;
  padding: 4px 6px 4px 8px;
  font-size: 10px;  min-width: auto;
    }
}

.pag-right { display: flex; align-items: center; gap: 10px;
  @media (max-width: 570px) {
gap: 4px;
  }
}
.pag-info { font-size: 13px;
  color: #8E9198;
  font-weight: 500; white-space: nowrap;
  @media (max-width: 570px) {
font-size: 10px;
  }
}
.pag-btns { display: flex; align-items: center; gap: 4px; }
.pag-btn {
  min-width: 26px; height: 26px;
  border: none;
  border-radius: 6px;
  background: var(--white);
  cursor: pointer;
  font-size: 14px;
  font-weight: 400;
  color: var(--text);
  display: flex; align-items: center; justify-content: center;
  padding: 0 6px;

  transition: background .18s, color .18s, border-color .18s;
    @media (max-width: 570px) {
min-width: 17px;
  height: 17px;
  border-radius: 4px;
  font-size: 9px;
    }
}
.pag-btn:hover:not(:disabled) {background: var(--navy); border-color: var(--navy); color: #fff; }
.pag-btn.active { background: #C9A75733;
  border-color: var(--gold);
  color: #21236A;
  font-weight: 400;}

.pag-btn svg path {
  fill: #676A72;
  transition: fill 0.18s;
}
.pag-btn:disabled svg path {
  fill: #BCBFC5;
}
.pag-btn:hover:not(:disabled) svg path {
  fill: #fff;
}


/* Breadcrumb student avatar — hidden on desktop, shown on mobile */
.breadcrumb-student-avatar {
  display: none;
}

/* Header toggle button — hidden on desktop */
.mobile-menu-btn {
  display: none;
}

/* User's toggle button — hidden on desktop */
.mobileToogleMenumain {
  display: none;
}

/* ============================================================
   RESPONSIVE — MOBILE (≤ 768px)
============================================================ */
@media (max-width: 768px) {
  /* Sidebar: pull out of flex flow, slide in as absolute overlay */
  .sidebar {
    position: absolute;
    top: 0; left: 0;
    height: 100%;
width: 76px;
    transform: translateX(-100%);
    transition: transform .28s ease;
    z-index: 90;
  }
  .sidebar.open { transform: translateX(0); width: 76px;}



  /* Toggle button: dark navy rounded square */
  .mobile-menu-btn,
  .mobileToogleMenumain {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    min-width: 46px;
    background: var(--navy);
    border: none;
    border-radius: 12px;
    cursor: pointer;
    flex-shrink: 0;
    padding: 8px;
    transition: opacity .18s;
    order: 0;
  }
  .mobile-menu-btn:active,
  .mobileToogleMenumain:active { opacity: .75; }

  /* Logo centered, avatar right */
  .header-right {
    order: 1;
    flex: 1;
    display: flex;
    justify-content: center;
  }
  .header-user {
    order: 2;
    gap: 0;
  }

  /* Hide the navy slab that was part of the desktop sidebar */
  .header-nav-side { display: none; }

  /* header-main: no extra padding, logo centered, avatar right */
  .header-main {
    flex: 1;
    padding: 0;
    background: transparent;
    justify-content: space-between;
  }
  .header-right {
    order: 1;
    flex: 1;
    display: flex;
    justify-content: center;
  }
  .header-user {
    order: 2;
    gap: 0;
  }
  .header-user-text { display: none; }
  .header-avatar { width: 40px; height: 40px; border-radius: 50%; }

  /* University seal smaller on mobile */
  .university-seal img { width: 189px; }
  .uni-line1 { font-size: 13px; }
  .uni-line2 { font-size: 9px; letter-spacing: 1px; }
  .uni-line3 { font-size: 7.5px; }

  /* Breadcrumb banner: relative container for student avatar overlap */
  .breadcrumb-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 14px 16px;
    position: relative;
    padding-right: 90px;
  }

  /* Student avatar overlapping right side of breadcrumb banner */
  .breadcrumb-student-avatar {
    display: block;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 68px;
    height: 68px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.18);
    @media (max-width: 768px) {
width: 35px;
    height: 35px;
        border: 3px solid var(--navy);
    }
  }

  /* Mobile scroll area padding */
  .main-scroll-area { padding: 12px; }
  .breadcrumb-title { font-size: 15px; font-weight: 700; }

  /* Page body */
  .page-body { padding: 14px 0 0; gap:0px;  }

  /* Profile meta stacked */
  .profile-meta { gap: 3px;  font-size: 10px;}
  .pipe { display: none; }

  /* Basic details rows stacked */
  .bd-row { flex-direction: column; align-items: start;  gap: 3px; padding: 10px 10px; border-bottom: 1px #eee solid; }
  .bd-label { width: 100%; }

}

/* ============================================================
   TABLE — Accordion card layout on tablet + mobile (≤ 1024px)
============================================================ */
@media (max-width: 1024px) {
  .table-wrap { padding: 0px; }
  .search-box { width: 100%; max-width: 100%; }


  .mobile-tbl-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .m-card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 1px 6px rgba(0,0,0,.07);
  }

  .m-card-collapsed {
    display: flex;
    align-items: center;
    padding: 14px 16px;
    gap: 14px;
  }
  .m-card-row-num {
    color: var(--navy);
    font-weight: 700;
    font-size: 14px;
    min-width: 18px;
  }
  .m-card-id {
    flex: 1;
    font-size: 14px;
    color: var(--text);
    font-weight: 500;
  }
  .m-card-expand-btn {
    width: 30px; height: 30px;
    background: #f0f2f5;
    border: none;
    border-radius: 7px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0;
  }
  .m-card-expand-btn:active { opacity: .65; }

  .m-card-expanded { display: none; }

  .m-card-hdr {
    background: var(--navy);
    color: #fff;
    padding: 15px 18px;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .m-card-hdr i { color: var(--gold); font-size: 11px; }

  .m-card-field {
    display: flex;
    align-items: flex-start;
    padding: 12px 16px;
    border-bottom: 1px solid #f0f2f5;
    gap: 10px;
    min-height: 44px;
  }
  .m-card-field:last-of-type { border-bottom: none; }

  .m-card-lbl {
    color: #aaa;
    font-size: 13px;
    font-weight: 400;
    width: 140px;
    min-width: 140px;
    padding-top: 2px;
  }
  .m-card-val {
    flex: 1;
    font-size: 13px;
    color: var(--text);
    line-height: 1.45;
  }
  .m-card-val .score-box  { display: inline-block; }
  .m-card-val .badge      { display: inline-block; }
  .m-card-val .act-btns   { justify-content: flex-start; }

  .m-card-collapse {
    display: block;
    color: #e8453c;
    font-size: 13px;
    font-weight: 600;
    padding: 13px 16px;
    cursor: pointer;
    border-top: 1px solid #f0f2f5;
  }

  .pagination { align-items:center; margin-top: 0px; }
}

@media (max-width: 480px) {
  .university-name { display: none; }


}

.searchDivMainall{
  background: var(--white);
  padding: 14px;
  border-radius: 18px;
  @media (max-width: 767px) {
  border-radius: 12px;
  }
}

.mobileToogleMenumain{
  background: var(--navy);
  padding: 8px;
  border-radius: 12px;
  border: none;
  height: 40px;
  width: 40px;
  min-width: 40px;
}

/* ============================================================
   dataCss — Accordion Card Section
============================================================ */
.dataCssSection {
  display: none;
  flex-direction: column;
  gap: 7px;
  margin-top: 7px; 
  margin-bottom: 10px;
    @media (max-width: 1199px) {
display: flex;
padding: 0px!important;
    }
}

/* Card wrapper */


/* ── Expanded state — animated slide ── */
.dataCssExpanded {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.38s cubic-bezier(0.4, 0, 0.2, 1);
}
.accordion-body{
  margin-top: 0px!important;
}

/* Navy header bar */
.dataCssHdr {
  background: var(--navy);
  color: #fff;
  padding: 13px 18px;
  font-size: 14px;
  font-weight: 400;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 14px;
  margin: 10px 0px 0px;
   @media (max-width: 1199px) {
border-radius: 0px!important;
margin: 0px!important;
  padding: 0px!important;
   }
   span{
  padding: 10px 14px;
  border-right: 1px #ddd solid;
     @media (max-width: 767px) {
  font-size: 10px;
 
     }
  &:last-child{
    border-right: none;
  
}
   }

  }


/* Label-value row */
.dataCssField {
 display: flex;
  align-items: flex-start;
  padding: 10px 16px;
  border-bottom: 1px solid #f0f2f5;
  gap: 0px;
}
.dataCssField:last-of-type {
  border-bottom: none;
}

.dataCssLbl {
  color: #aaa;
  font-size: 13px;
  font-weight: 400;
  width: 110px;
  min-width: 110px;
  padding-top: 2px;
    @media (max-width: 767px) {
 color: #8E9198;
  font-size: 10px;
  font-weight: 400;
    }
}

.dataCssVal {
  flex: 1;
  font-size: 13px;
  color: var(--text);
  line-height: 1.45;
   @media (max-width: 767px) {
  font-size: 10px;
  color: #2C2D30;
   }
}

/* Exam title inside val */
.dataCssTitle {
  font-weight: 600;
  font-size: 13px;
  color: var(--text);
  margin: 0 0 2px;
}
.dataCssCourse {
  font-size: 12px;
  color: #888;
  margin: 0;
}

/* Score box */
.dataCssScore {
  display: inline-block;
  background: #f3f4f8;
  border: 1px solid #e4e6ec;
  border-radius: 4px;
  padding: 3px 10px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
}

/* Status badge */
.dataCssBadge {
  display: inline-block;
  padding: 3px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
}
.dataCssBadgeFail {
  background: #fde8e8;
  color: #e8453c;
}
.dataCssBadgePass {
  background: #e6f9ee;
  color: #1a9e4a;
}

/* Action buttons */
.dataCssActBtns {
  display: flex;
  align-items: center;
  gap: 8px;
}
.dataCssActBtn {
  width: 20px;
  height: 20px;
background: #C9A75733;
border: 1px solid #21236A33 !important;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: background .15s;
}
.dataCssActBtn:hover { background: #e4e6ec; }

/* Collapse link */
.dataCssCollapse {
  display: block;
  color: #950323;
  font-size: 13px;
  font-weight: 500;
  padding: 13px 16px;
  cursor: pointer;
  border-top: 1px solid #f0f2f5;
     @media (max-width: 767px) {
  font-size: 10px;
     }
}

/* ── Collapsed state ── */
.dataCssCollapsed {
  display: flex;
  align-items: center;

  gap: 14px;
  background: var(--white);
  border-radius: 12px;
  padding: 0 12px;
}
.dataCssRowNum {
color: #2C2D30;
  font-weight: 400;
  font-size: 14px;
  min-width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px #eee solid;
    @media (max-width: 767px) {
 font-size: 10px;
    }
   
}
.dataCssRowId {
flex: 1;
  font-size: 14px;
  color: var(--text);
  font-weight: 500;
  border-right: 1px var(--border) solid;
  border-left: 1px var(--border) solid;

}
.dataCssExpandBtn {
width: 20px;
  height: 20px;
  background: #C9A75733;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0;
  border: 1px solid #21236A33
}
.dataCssExpandBtn:active { opacity: .65; }

.bgSecMobileTabilmain{
  background: var(--white);
  border-radius: 12px;
}


  /* ── Full-page background ── */
    .login-page {
      height: 100vh;
      width: 100vw;
      display: flex;
      align-items: stretch;
      justify-content: stretch;
      background: #fff;
      padding: 20px;
      overflow: hidden;
       @media (max-width: 767px) {
  padding: 12px;
       }
    }

    /* ── Split card ── */
    .login-split-card {
      width: 100%;
      height: 100%;
      display: flex;
      border-radius: 32px;
      overflow: hidden;
      box-shadow: none;
    }

    /* ── Left panel (navy) ── */
    .login-left {
      width: 50%;
      flex-shrink: 0;
      background: #303088;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 40px;
    }

    .login-logo-img {
      width: 140px;
      height: 140px;
      object-fit: contain;
    }

    /* ── Right panel (lavender) ── */
    .login-right {
      flex: 1;
    background: #30308840;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 48px;
    }

    /* ── Form panel ── */
    .login-form-wrap {
      width: 100%;
      max-width: 400px;
      display: flex;
      flex-direction: column;
      @media (max-width: 767px) {
        max-width: 100%;

      }
   
    }

    .login-heading {
      font-size: 24px;
      font-weight: 500;
      color: var(--navy);
      text-align: center;
      margin-bottom: 20px;
         @media (max-width: 767px) {
 font-size: 18px;
         }
    }
    

    /* Field group */
    .field-group {
      display: flex;
      flex-direction: column;
      margin-bottom: 32px;
      &:last-child{
        margin-bottom: 16px;
      }
    
    }

    .field-label-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .field-label {
      font-size: 13px;
      font-weight: 400;
      color: #2C2D30;
      margin-bottom: 12px;
    }

    .forgot-link {
      font-size: 13px;
      font-weight: 400;
      color: #1379F0 !important;
      text-decoration: none;
      margin-bottom: 12px;
    }
    .forgot-link:hover { text-decoration: underline; }

    /* Input with icon */
    .input-wrap {
      position: relative;
      display: flex;
      align-items: center;
    }

    .input-icon {
      position: absolute;
      left: 25px;
      display: flex;
      align-items: center;
      color: var(--muted);
      pointer-events: none;
    }

    .field-input {
      width: 100%;
      padding: 10px 16px 10px 56px;
      border: 1.5px solid #fff;
      border-radius: 8px;
      font-size: 13px;
      color: var(--text);
      background: #fff;
      outline: none;
      transition: border-color .2s, box-shadow .2s;
      font-weight: 400;
      border: 1px solid #21236A;
    }

    .field-input::placeholder { color: #b0b5bf; }

    .field-input:focus {
      border-color: var(--navy);
      box-shadow: 0 0 0 3px rgba(33,35,106,.09);
    }

    /* Remember me */
    .remember-row {
      display: flex;
      align-items: center;
      gap: 6px;
      margin-bottom: 32px;
    }

    .remember-row input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  background: #fff;
  border: 1.5px solid #c5c7e8;
  border-radius: 4px;
  cursor: pointer;
  transition: border-color .2s, background .2s, box-shadow .2s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 1px 4px rgba(48,48,136,.08);
    }
    .remember-row input[type="checkbox"]:checked {
  background: var(--navy);
  border-color: var(--navy);
    }
    .remember-row input[type="checkbox"]:checked::after {
  content: '';
  display: block;
  width: 5px;
  height: 9px;
  border: 2px solid #fff;
  border-top: none;
  border-left: none;
  transform: rotate(45deg) translate(-1px, -1px);
    }
    .remember-row input[type="checkbox"]:focus-visible {
  box-shadow: 0 0 0 3px rgba(48,48,136,.18);
    }

    .remember-row label {
   font-size: 13px;
  color: #393B40;
  cursor: pointer;
  user-select: none;
  font-weight: 500;
    }

    /* Login button */
    .btn-signin {
   display: block;
  padding: 10px 30px;
  background: var(--navy);
  color: #fff;
  border: none;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  letter-spacing: .3px;
  transition: background .2s, transform .1s;
  margin: 0 auto;
    }

    .btn-signin:hover  { background: var(--gold); }
    .btn-signin:active { transform: scale(.98); }

    /* ── Responsive ── */
    @media (max-width: 767px) {
      .login-split-card { flex-direction: column; min-height: unset; }
      .login-left { width: 100%;  padding: 50px 30px; }
      .login-right { padding: 35px 40px; }
    }


       .verify-page {
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #dde4ef url('../images/login-bg-img1.jpg') center  / cover no-repeat;
      padding: 24px 16px;
    }

    .verify-card {
      width: 100%;
      max-width: 380px;

      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 0;
    }

    /* ── Logo block ── */
    .verify-logo {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 6px;
      margin-bottom: 60px;
    }



    .verify-logo-name {
      font-size: 15px;
      font-weight: 800;
      color: var(--navy);
      letter-spacing: .6px;
      text-align: center;
      line-height: 1.2;
    }

    .verify-logo-sub {
      font-size: 10px;
      font-weight: 600;
      color: var(--navy);
      letter-spacing: 2.5px;
      text-align: center;
    }

    .verify-logo-country {
      font-size: 8px;
      color: var(--muted);
      letter-spacing: 1.5px;
      text-align: center;
    }

    /* ── Heading ── */
    .verify-heading {
font-size: 18px;
  font-weight: 500;
  color: var(--text);
  text-align: center;
      margin-bottom: 4px;
    }

    .verify-sub {
font-size: 13px;
  color: var(--muted);
  text-align: center;
  margin-bottom: 20px;
   @media (max-width: 570px) {
font-size: 11px;
   }
    }

    /* ── Form ── */
    .verify-form {
      width: 100%;
      display: flex;
      flex-direction: column;
      gap: 0;
    }

    .v-field {
      display: flex;
      flex-direction: column;
      gap: 5px;
      margin-bottom: 10px;
    }

    .v-label {
      font-size: 12px;
      font-weight: 400;
      color: var(--text);
    }

    .v-input {

   
      width: 100%;
    padding: 9px 14px;
  border: 1px solid var(--navy);
  border-radius: 12px;
  font-size: 13px;
  font-family: 'Inter', sans-serif;
  color: var(--text);
  background: #fff;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  font-weight: 400;
  
    }

    .v-input::placeholder { color: #b5bac6; }
    .v-input:focus {
      border-color: var(--navy);
      box-shadow: 0 0 0 3px rgba(33,35,106,.08);
    }

    /* Phone row: two columns */
    .v-phone-row {
      display: grid;
      grid-template-columns: 1fr 4fr;
      gap: 10px;
      margin-bottom: 13px;
    }

    .v-select {
   
      width: 100%;
    padding: 10px 8px;
  border: 1px solid var(--navy);
  border-radius: 12px;
  font-size: 13px;
  color: var(--text);
  background: #fff;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
  font-weight: 400;
    }

    .v-select:focus { border-color: var(--navy); }
    .v-select.selected { color: var(--text); }

    /* Terms checkbox */
    .v-terms {
      display: flex;
      align-items: center;
      gap: 8px;
      justify-content: center;
      margin-bottom: 35px;
      margin-top:10px;
    }

    .v-terms input[type="checkbox"] {
 width: 18px;
  height: 18px;
  accent-color: var(--navy);
  cursor: pointer;
  border-radius: 4px;
    }

    .v-terms label {
   font-size: 14px;
  color: var(--muted);
  cursor: pointer;
  user-select: none;
  font-weight: 400;
    }

    /* Verify button */
    .v-btn {
      display: block;
      margin: 0 auto;
      padding: 9px 36px;
      background: var(--navy);
      color: #fff;
      border: none;
      border-radius: 10px;
      font-size: 13px;
      font-weight: 500;
      font-family: 'Inter', sans-serif;
      cursor: pointer;
      letter-spacing: .3px;
      transition: background .2s, transform .1s;
    }

    .v-btn:hover  { background: var(--gold); }
    .v-btn:active { transform: scale(.97); }

    .profileImageWrapperMain{
display: flex;
  align-items: center;
  justify-content: center;
  width: 250px;
  height: 250px;
  border-radius: 50%;
  border: 2px solid var(--navy);
  padding: 0px;
  background: var(--white);

  margin: 0 auto 30px;
  img{
    width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  }
    }


     /* ============ DASHBOARD ============ */
    .db-wrap { display:flex; flex-direction:column; gap:14px; }

    /* Row 1 — big stat cards */
    .db-stats { display:grid; grid-template-columns:repeat(4,1fr);
       gap:12px; background: var(--white); padding: 32px; }
    .db-stat-card {border-radius:12px; overflow:hidden; background:#fff; }
    .db-stat-top { padding:16px 18px 14px; background:#fff;
     @media (max-width:570px) {
padding:13px 15px 13px;
     }
    }
    .db-stat-value { font-size:40px; font-weight:400; color:var(--gold); line-height:1; }
    .db-stat-bottom { background: var(--navy-dk);
  display: grid;
  align-items: center;
  justify-content: space-between;
  grid-template-columns: 2fr 1fr; }
    .db-stat-label { text-align: center; font-size:14px; font-weight:400; color:#fff; 
      padding:11px 14px;
      @media (max-width:570px) {
  color: #fff;
  padding: 10px 3px;
  font-size: 10px;
      }
    }
    .db-stat-icon { padding:11px 14px; 
       background:var(--gold);  display:flex; align-items:center; 
       justify-content:center; color:#C9A757; font-size:14px; flex-shrink:0;
      img{
        width: 30px;
          @media (max-width:570px) {
 width: 20px;
          }
      }
      }

    /* Row 2 — mini cards */
    .db-minis { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; padding: 32px; }
    .db-mini-card { background:var(--white); border-radius:12px;  text-align:center; box-shadow:0 1px 6px rgba(0,0,0,.06); }
    .db-mini-card.navy { background:var(--navy); }
    .db-mini-ico {padding: 20px 20px;
     @media (max-width:767px) {
padding: 9px 14px;
     }
     img{
        @media (max-width:767px) {
width: 21px;
     }
     }
    }
    .db-mini-val { font-size: 40px;
  font-weight: 400;
  color: var(--white);
  line-height: 1;
  margin-bottom: 0px;
  background: #C9A757;
  padding: 29px 20px;
     @media (max-width:767px) {
padding: 19px 20px;
font-size: 30px;
     }

}

  .colorBg1{
    background: #E0C185!important;
  }
    .colorBg2{
    background: #F4DFBA!important;
  }
  .colorBg3{
    background: var(--navy)!important;
  }

  


    .db-mini-card.navy .db-mini-val { color:#C9A757; }
    .db-mini-lbl { font-size: 14px;
  color: #000000BF;
  font-weight: 500;
  padding: 8px 10px; 
  @media (max-width:767px) {
font-size: 10px;
  }
}
    .db-mini-card.navy .db-mini-lbl { color:rgba(255,255,255,.7); }

    /* Row 3 */
    .db-mid { padding: 0px 32px 32px; display:grid; grid-template-columns: 1.2fr 3fr; gap:12px; align-items:stretch; }


    /* Questions panel — flex column so donut grid fills height */
    .db-mid .db-card:first-child { display:flex; flex-direction:column; }
    .db-mid .db-card:first-child .db-ques-grid { flex:1; align-content:center; }

    /* Questions panel */
    .db-ques-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:16px;
     @media (max-width:1199px) {
grid-template-columns:1fr 1fr 1fr 1fr;
 padding:10px 5px; gap:5px;
     }
    }
    .db-donut-item { display:flex; flex-direction:column; align-items:center; gap:8px; }
    .db-donut-wrap { position:relative; width:110px; height:110px; flex-shrink:0;
     @media (max-width:570px) {
  width:60px!important; height:60px!important; 
        }
    }
    .db-donut-wrap canvas { position:absolute; inset:0;
       width:110px!important; height:110px!important; 
        @media (max-width:570px) {
  width:60px!important; height:60px!important; 
        }
      }
    .db-donut-inner { position:absolute; inset:0; display:flex; align-items:center; 
      justify-content:center; text-align:center; font-size:11.5px;
       font-weight:600; color:var(--navy); line-height:1.35;
        padding:0 10px; 
       @media (max-width:570px) {
padding:0 0px; font-size: 8px;
       }
      
      }
    .db-donut-count { font-size:11.5px; 
      color:#676A72; font-weight:500; text-align:center;
      @media (max-width:767px) {
font-size:9px; 
      }
    }

    /* Bar chart + Live exams combined panel */
    .db-mid .db-card:last-child { display:flex; flex-direction:column; }
    .db-bar-live-wrap { flex:1; display:flex; align-items:stretch; 
     @media (max-width:767px) {
flex-direction: column;
     }
    }
    .db-bar-body { flex:1; padding:12px 12px 14px; position:relative; min-width:0; min-height:200px; }
    .db-live-body { width:160px; flex-shrink:0; padding:20px 16px; text-align:center;
       border-left:1px solid #f0f2f5; display:flex; flex-direction:column; 
       align-items:center; justify-content:center; gap:0; 
         @media (max-width:767px) {
width: 100%;
         }
      }
    .db-live-num { font-size:40px; font-weight:700; color:#C9A757; line-height:1; }
    .db-live-lbl { font-size:17px; color:#676A72; margin:6px 0 20px; font-weight:600;
       @media (max-width:767px) {
margin:6px 0 0px;
       }
    }
    .db-live-btns { display:flex; flex-direction:column;
       gap:17px; align-items:center; width:100%;
        @media (max-width:767px) {
flex-direction:initial; justify-content:center;
        }
      
      }
    .db-live-btn { width: 139px;
  padding: 9px;
  border-radius: 15px;
  border: none;
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  background: rgba(201,167,87,.18);
  color: var(--gold);
  @media (max-width:767px) {
width: 60px;
font-size: 10px;
  padding: 5px;
  }

}
    .db-live-btn.active { background:var(--navy); color:#fff; }

    /* Row 4 */
    .db-bot { display:grid; grid-template-columns:2.75fr 1fr; gap:12px; align-items:start; padding: 0px 32px 30px; }

    /* Navy card header */
    .db-card-nav { background: var(--navy);
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
justify-content: center;
 min-height: 72px;
  @media (max-width:767px) {
min-height: auto;
  }
.txtWrapper{
  font-size:14px; font-weight:400;  color:var(--gold); text-decoration:none;
   @media (max-width:767px) {
font-size:11px;
   }
}
 }
    .db-card-nav-title { font-size:17px; font-weight:400;  color:var(--gold); 
    
     @media (max-width:767px) {
 font-size:14px;
     }
    }
    .db-nav-link { font-size:12px; color:var(--gold); text-decoration:none; }

    /* Exam table */
    .db-exam-tbl { width:100%; border-collapse:collapse; }
    .db-exam-tbl thead tr { background:var(--navy); }
    .db-exam-tbl thead th { padding:13px 16px; font-size:12.5px; font-weight:500; color:#fff; text-align:left; white-space:nowrap; }
    .db-exam-tbl thead th i { font-size:10px; margin-left:5px; opacity:.75; }
    .db-exam-tbl tbody td { padding:12px 16px; border-bottom:1px solid var(--border); vertical-align:middle; font-size:12px; }
    .db-exam-tbl tbody tr:last-child td { border-bottom:none; }
    .db-exam-tbl tbody tr:hover { background:#fafbff; }
    .td-date { font-weight:600; color:var(--text); font-size:12px; }
    .td-time { font-size:11px; color:var(--muted); margin-top:3px; }
    .td-name { color:var(--text); font-size:12px; font-weight:500; }
    .td-code { font-size:11px; color:var(--muted); margin-top:3px; }
    .db-badge-sch { background:#d4f0dd; color:#1a7a3a; padding:5px 14px; border-radius:6px; font-size:11.5px; font-weight:600; white-space:nowrap; display:inline-block; }
    .db-badge-live { background:#fde8e8; color:#c0392b; padding:5px 14px; border-radius:6px; font-size:11.5px; font-weight:600; display:inline-block; }
    .db-act-btns { display:flex; gap:7px; align-items:center; }
    .db-act-btn { width:32px; height:32px; border:1.5px solid #dde0e8; 
      background:#fff; border-radius:50%; cursor:pointer; font-size:12px;
       color:#888; display:inline-flex; align-items:center; justify-content:center;
        transition:border-color .15s, color .15s;
        @media (max-width:767px) {
 width:26px; height:26px;
        }
      }
    .db-act-btn:hover { border-color:var(--navy); color:var(--navy); }

    /* Pagination */
    .db-pag { display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-top:1px solid var(--border); font-size:12px; color:var(--muted); flex-wrap:wrap; gap:8px; }
    .db-pag-left { display:flex; align-items:center; gap:7px; }
    .db-pag-sel { border:1px solid var(--border); border-radius:7px; padding:5px 10px; font-size:12px; font-family:'Inter',sans-serif; outline:none; color:var(--text); cursor:pointer; }
    .db-pag-right { display:flex; align-items:center; gap:8px; }
    .db-pag-info { font-size:12px; color:var(--muted); }
    .db-pag-btns { display:flex; gap:4px; align-items:center; }
    .db-pag-btn { min-width:30px; height:30px; border:1px solid var(--border); border-radius:7px; background:#fff; font-size:12px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; padding:0 6px; font-family:'Inter',sans-serif; color:var(--text); transition:all .15s; }
    .db-pag-btn:hover { border-color:var(--navy); color:var(--navy); }
    .db-pag-btn.active { background:var(--navy); color:#fff; border-color:var(--navy); }
    .db-pag-arrow { width:30px; height:30px; border:1px solid var(--border); border-radius:50%; background:#fff; font-size:11px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; color:var(--text); transition:all .15s; }
    .db-pag-arrow:hover { border-color:var(--navy); color:var(--navy); }

    /* Top Academies */
    .db-acad-hdr { background:var(--navy); color:var(--gold); text-align:center; font-size:15px; font-weight:600; padding:13px 24px; letter-spacing:.3px; border-radius:10px; margin:12px 12px 4px; }
    .db-acad-list { margin-top: 8px;
  background: #fff;
  border-radius: 12px 12px 0px 0px;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
  overflow: hidden; padding: 20px;  }
    .db-acad-item { display:flex; align-items:center; gap:12px; 
      margin-bottom: 20px; 
      &:last-child{
        margin-bottom: 0px;
      }
   }
   .db-card{
background: var(--white);
  border-radius: 12px;

  overflow: hidden;
  box-shadow: 0 1px 6px rgba(0,0,0,.06);
   }
    .db-acad-item:last-child { border-bottom:none; }
    .db-acad-avatar { width:38px; height:38px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; border:1px solid var(--gold); box-shadow:0 1px 4px rgba(0,0,0,.07); }
    .db-acad-avatar.navy-border { border-color: var(--navy);
  background: #EEE;}
    .db-acad-info { flex:1; min-width:0; }
    .db-acad-name { font-size:13px; font-weight:600; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .db-acad-count { font-size:11.5px; color:var(--muted); margin-top:2px; }
    .db-acad-more { color:#bbb; font-size:14px; flex-shrink:0; cursor:pointer; }
    .db-acad-footer { background: var(--white); padding:11px 16px; 
      border-top:1px solid var(--border); text-align:center; border-radius: 0px 0px 12px 12px; }
    .db-view-btn { background:none; border:none; color:var(--navy); font-size:13px; font-weight:600; cursor:pointer; font-family:'Inter',sans-serif; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:4px; letter-spacing:.2px; }

    /* Academy list filter bar */
    .acad-filter-card { background:#fff; border-radius:14px; padding:18px 20px;
       box-shadow:0 1px 6px rgba(0,0,0,.07); margin-top:10px;
       @media (max-width:570px) {
padding: 13px;
       }
        }
    .acad-filter-top { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:14px; gap:12px; flex-wrap:wrap; }
    .acad-filter-title { font-size:20px; font-weight:400; color:var(--text); margin-bottom:3px; }
    .acad-filter-sub { font-size:12.5px; color:var(--muted); font-weight: 400; }
    .acad-filter-actions { display:flex; align-items:center; gap:10px; flex-shrink:0;
    justify-content: end; }
    .acad-export-btn { display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 18px;
  border: 1.5px solid var(--navy);
  background: #fff;
  color: var(--navy);
  font-size: 13px;
  font-weight: 400;
  border-radius: 12px;
  cursor: pointer;
  transition: background .15s; 
 @media (max-width:570px) {
 padding: 8px 10px;
 font-size: 9px;
 }
}
    .acad-export-btn:hover { background:#f0f1f8; }
    .acad-add-btn { display:inline-flex; align-items:center; gap:6px;  border: 1.5px solid var(--navy);
       padding:8px 18px; background:var(--navy); color:#fff; font-size:13px; 
       font-weight:400; transition: 0.4s; border-radius:12px;  cursor:pointer; 
       @media (max-width:570px) {
  padding: 8px 10px;
 font-size: 9px;
 } }
    .acad-add-btn:hover { background: var(--gold); border: 1.5px solid var(--gold); }
    .acad-filter-bot {display: grid;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  grid-template-columns: 1fr 1fr;
  justify-content: space-between;
    @media (max-width:992px) {
  grid-template-columns: 1fr;
  gap:20px;
    }
.filterFlexMain{
  display: flex;
  gap:10px;
  max-width: 511px;
        @media (max-width:992px) {
order: 2;
max-width: 100%;
        }
}

}
    .acad-search-wrap { padding: 7px 16px 7px 13px;
 flex:1; min-width:160px; display:flex; align-items:center; gap:8px; border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius: 6px;
  font-size: 13px;
  color: #8E9198;
  background: var(--white);
  outline: none;
  font-weight: 400;
  transition: border-color .2s, box-shadow .2s;
  box-shadow: 0px 1px 2px 0px #00000014;

  }
    .acad-search-input { border:none; background:none; outline:none; font-size:13px; 
      color:var(--text); width:100%; 
     @media (max-width:570px) {
font-size: 10px;

     }
    }
    .acad-search-input::placeholder { color:var(--muted); }
    .acad-membership-wrap { position:relative; display:inline-flex; align-items:center; }
    .acad-membership-select {appearance: none;
  -webkit-appearance: none;
  border-radius: 8px;
  padding: 7px 36px 7px 14px;
  font-size: 13px;
  color: #393B40;
  background: #fff;
  cursor: pointer;
  outline: none;
  font-weight: 400;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  box-shadow: 0px 1px 2px 0px #00000014;
     @media (max-width:570px) {
font-size: 10px;
padding: 8px 29px 8px 11px;
     }}
    .acad-sel-arrow { position:absolute; right:12px; pointer-events:none; }

    /* Academy list table — name cell & exam count badge */
    .acad-tbl-name-cell { display:flex; align-items:center; gap:10px; }
    .acad-tbl-avatar { width:38px; height:38px; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; border:1.5px solid var(--gold); box-shadow:0 1px 4px rgba(0,0,0,.08); }
    .acad-tbl-avatar.navy-border { border-color:var(--navy); background:#eef0f8; }
    .acad-exam-badge {display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 17px;
  height: 24px;
  border-radius: 4px;
  background: var(--navy);
  color: var(--navy);
  font-size: 11px;
  font-weight: 500;
  padding: 0 2px;
  background: #C9A75733; }

    /* Mobile exam cards — shown at ≤768px instead of the table */
    .db-exam-cards { display:none; flex-direction:column; gap:0px; margin-top:8px; }
    .db-exam-card { background:#fff; border-radius:0px;
       padding:14px 16px; box-shadow:0 1px 8px rgba(0,0,0,.06); 
       border-left:3px solid var(--gold); }
    .db-exam-card.navy-accent { border-left-color:var(--navy); }
    .db-ec-row1 { display:flex; align-items:center; justify-content:space-between;
       margin-bottom:0px; gap: 10px; }
    .db-ec-date { font-size:11.5px; color: #64748B; }
    .db-ec-title { font-size:13.5px; font-weight:600; color:var(--text); margin-bottom:0px; }
    .db-ec-row2 { display:flex; align-items:center; justify-content:space-between; }
    .db-ec-code { font-size:11.5px; color:var(--muted); }

    /* Responsive */
    @media (max-width:1200px) {
      .db-stats,.db-minis { grid-template-columns:repeat(2,1fr); }
      .db-mid { grid-template-columns:1fr; }
      .db-bot { grid-template-columns:1fr; }
        .db-exam-cards { display: flex;
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 12px; }
    }
    @media (max-width:768px) {
      .db-stats,.db-minis { grid-template-columns:1fr 1fr; gap:8px; padding: 10px 10px 10px; }
      .db-bot { grid-template-columns:1fr; padding: 10px 10px 10px; }
      .db-mid { padding: 10px 10px 10px; }
      .db-stat-value { font-size:30px; }
      .tbl-card { display:none; }
    
      .db-bot .dataCssSection { display:none !important; }
 
    }
    .noPadding{
      padding: 0px!important;
    }

    .yellowLeftSide{
      font-size: 17px;
  font-weight: 400;
  color: var(--gold);
  text-align: left;
    }

/* ============================================================
   ACADEMY DETAIL PAGE
============================================================ */
.ad-header-card { background:#fff; border-radius:14px; padding:16px 20px;
   box-shadow:0 1px 6px rgba(0,0,0,.07); display:flex; align-items:flex-start; 
   justify-content:space-between; margin-bottom:0px; margin-top: 10px; gap:16px; 
    @media (max-width:768px) {
      flex-direction: column;
      padding: 14px; margin-top: 0px;
    }
  
  }
.ad-header-info { flex:1; }
.ad-academy-name { font-size:20px; font-weight:600; 
  color:var(--text); display:flex; align-items:center; gap:10px; margin-bottom:6px;
  @media (max-width:768px) {
    font-size:15px;
    margin-bottom: 14px;
  }

}
.ad-membership-badge { font-size: 11px;
  font-weight: 400;
  color: #4921EA;
  border-radius: 20px;
  padding: 2px 10px;
  border: 1px solid var(--Color-Info-Info-Transparent, #4921EA33);
  background: #F0ECFF;
  @media (max-width:768px) {
font-size: 9px;
  }
}
.ad-academy-meta { font-size:12.5px; color:var(--muted); font-weight: 400;
  @media (max-width:768px) {
font-size: 9px;
  }
}
.ad-academy-meta b { color:var(--text); font-weight:600; }
.ad-header-actions { display:flex; gap:8px; flex-shrink:0;

  @media (max-width:768px) {
     width: 100%; justify-content: end;
    }
}
.ad-hdr-btn { padding:7px 18px; border-radius:12px; border:1.5px solid var(--border);
   background:#fff; font-size:13px; font-weight:500; 
   color:var(--text); cursor:pointer; transition:all .15s;
    @media (max-width:768px) {
padding: 3px 12px;
font-size: 11px;
    }
  
  }
.ad-hdr-btn:hover { border-color:var(--navy); color:var(--navy); }


.ad-tbl-top {overflow:visible; margin-bottom:5px; margin-top: 0px;
   padding:14px 18px 12px; background:#fff; border-radius:14px; 
   box-shadow:0 1px 6px rgba(0,0,0,.07); 
      @media (max-width:768px) {
margin-top: 0px;
margin-bottom: 10px;
      }
  
  }
.ad-tbl-inner { overflow-x:auto; }
.ad-section-title { font-size:14px; font-weight:700; color:var(--text); margin-bottom:0; }
.ad-section-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.ad-add-new { font-size:13px; font-weight:600; color:var(--gold); cursor:pointer; background:none; border:none; font-family:'Inter',sans-serif; }

.ad-filter-row { display: grid;
  align-items: center;
  gap: 10px;
  grid-template-columns: 1fr 3fr;
   @media (max-width:570px) {
grid-template-columns: 1fr;
   }

}
.ad-filter-row .acad-search-wrap { min-width:100%; flex:1; }
.ad-date-btn { appearance: none;
  -webkit-appearance: none;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 8px 36px 8px 14px;
  font-size: 13px;
  color: #8E9198;
  background: #fff;
  cursor: pointer;
  outline: none;
  box-shadow: 0px 1px 2px 0px #00000014;
  font-weight: 400; position: relative;}
.ad-status-btn { appearance: none;
  -webkit-appearance: none;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 8px 36px 8px 14px;
  font-size: 13px;
  color: #8E9198;
  background: #fff;
  cursor: pointer;
  outline: none;
  box-shadow: 0px 1px 2px 0px #00000014;
  font-weight: 400; position: relative;}

.ad-empty-state { padding:30px; text-align:center; font-size:14px; color:#2C2D30; font-weight:400; }
.ad-pagination-row { display:flex; align-items:center; justify-content:space-between; padding:11px 18px; border-top:1px solid var(--border); flex-wrap:wrap; gap:8px; }
.ad-per-page { display:flex; align-items:center; gap:8px; font-size:12.5px; color:var(--muted); }
.ad-per-page select { border:1.5px solid var(--border); border-radius:6px; padding:3px 8px; font-size:12.5px; color:var(--text); outline:none; font-family:'Inter',sans-serif; cursor:pointer; }
.ad-page-nav { display:flex; align-items:center; gap:5px; }
.ad-page-count { font-size:12px; color:var(--muted); margin-right:6px; }
.ad-page-btn { width:28px; height:28px; border-radius:50%; border:1.5px solid var(--border); background:#fff; font-size:12px; color:var(--text); cursor:pointer; font-family:'Inter',sans-serif; display:flex; align-items:center; justify-content:center; transition:all .15s; }
.ad-page-btn.active { background:var(--navy); border-color:var(--navy); color:#fff; font-weight:600; }
.ad-page-btn:hover:not(.active) { border-color:var(--navy); color:var(--navy); }

.ad-badge { display:inline-block; padding:4px 12px; border-radius:6px; font-size:11.5px; font-weight:600; white-space:nowrap; }
.ad-badge-scheduled {background: #F0ECFF;
  color: #271086; }
.ad-badge-live {background: #FFEAEE;
  color: #991930; }
.ad-badge-completed { background:#E1FCE9; color:#0B5C22; }
.ad-badge-draft { background:#EEEEEE; color:#393B40; }
.ad-badge-pending { background:#fdf3dc; color:#c9850a; }

.ad-stu-cell { display:flex; align-items:center; gap:10px; }
.ad-stu-avatar { width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px var(--navy) solid;
 @media (max-width:1199px) {
 width: 30px;
  height: 30px;
 }
}
.ad-cert-apply { color:#D10032; font-size:14px; font-weight:400; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:3px; cursor:pointer; background:none; border:none; font-family:'Inter',sans-serif; }
.ad-cert-na { font-size:13px; color:var(--muted); }
.db-act-btn.danger { color:#c0392b; }
.db-act-btn.danger:hover { background:#fde8e8; }

.ad-schedule-cell { font-size:12.5px; }
.ad-schedule-date { font-weight:600; color:var(--text); }
.ad-schedule-time { color:var(--muted); margin-top:2px; }

.ad-kpi-section { margin-top: 0px; background:#fff; border-radius:10px; border:1px solid #ebebeb; overflow:hidden; }
.ad-kpi-title { font-size: 13px;
  font-weight: 500;
  color: var(--text);
  padding: 10px 15px;
  border-bottom: 1px solid #f0f0f0;
  margin: 0;
  background: #F9F9F9; }
.ad-kpi-grid { display:flex; padding:16px 18px 18px; gap:0; }
.ad-kpi-card { flex:1; background:transparent; padding:0; }
.ad-kpi-lbl { display:block; font-size:13px; font-weight: 400; color:var(--muted);
   margin-bottom:10px; }
.ad-kpi-val { display:block; font-size:13px; font-weight:500; color:var(--text); }
@media (max-width:768px) { .ad-kpi-grid { flex-wrap:wrap; } .ad-kpi-card { flex:0 0 50%; padding-bottom:14px; } }

/* ============================================================
   EXAM DETAIL QUESTION PAGE
============================================================ */

.cardDesignSideByside{
display: grid;
  justify-content: space-between;
  gap: 57px;
  margin-bottom: 47px;
  grid-template-columns: 2.8fr 1fr;
  align-items: center;
  @media (max-width:1199px) {
  grid-template-columns: 1fr;
  margin-bottom: 20px;
  gap: 20px;
  }
}
.gridSideBarSideBySide{
   display: flex;
  justify-content: space-between;
  gap:57px;
    @media (max-width:1199px) {
 flex-direction:column-reverse;
 gap:20px
  }
 
}
.eq-breadcrumb { display:flex; align-items:center; justify-content:space-between;
   flex-wrap:wrap; gap:8px; 
  @media (max-width:768px) { 
align-items: start;
  }
  
  }
.eq-bc-left { display:flex; align-items:center; gap:10px; }
.eq-bc-id { font-size:16px; font-weight:400; color:var(--navy);
@media (max-width:768px) { 
font-size:10px; 
} }
.eq-bc-sep { opacity:.5; }
.eq-bc-exam { font-size:16px; color:var(--navy); font-weight:400; 
@media (max-width:768px) { 
font-size:10px; 
}

}
.eq-bc-time { font-size:14px; font-weight:400; color:var(--navy); letter-spacing:.2px; 
@media (max-width:768px) { 
font-size:10px; 
}}

.eq-body {  margin-top:14px; }
.eq-left { flex:1; min-width:0; display:flex; flex-direction:column; gap:30px;

@media (max-width:1199px) { 
gap:20px;
}
}
.eq-right { width: 353px; flex-shrink:0; display:flex; flex-direction:column; gap:12px;


@media (max-width:1199px) { 
width: 100%;
}
}

/* Student card */
.eq-student-card {
  background: #fff;
  border-radius: 14px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
  border: 2px solid #D9D9D9;
  max-height: 100px;
  @media (max-width:1199px) {
    order: 2;
    flex-direction: column;
    align-items: stretch;
    max-height: none;
    padding: 16px;
    gap: 0;
  }
}
.eq-student-header {
  display: flex;
  align-items: center;
  gap: 12px;
  @media (max-width:1199px) {
    margin-bottom: 10px;
  }
}
.eq-student-avatar { width:60px; height:60px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.eq-student-name { font-size:20px; font-weight:600; color:var(--text); margin-bottom:0; }
.eq-student-meta { font-size:11.5px; color:var(--muted); line-height:1.6; }
.eq-student-meta span { color:var(--text); font-weight:500; }

/* Exam info card */

.eq-exam-hdr { display:flex; align-items:center; gap:10px; margin-bottom:6px; 
.eq-status-badgeBlue {font-size: 11px;
  font-weight: 500;
  color: #271086!important;
  border-radius: 6px;
  padding: 4px 6px;
  background: #F0ECFF!important;}
}
.eq-exam-id { font-size:18px; font-weight:600; color:var(--text); }
.eq-status-badge {font-size: 13px;
  font-weight: 500;
  color: #991930;
  border-radius: 6px;
  padding: 4px 6px;
  background: #FFEAEE;}
.eq-exam-meta { font-size:12px; color:var(--muted); margin-bottom:14px; }
.eq-exam-meta b { color:var(--text); font-weight:500; }
.eq-stats-row {display: flex;
  align-items: stretch;
  border: 1px solid var(--navy);
  border-radius: 12px;
  overflow: hidden;
  max-width: 677px;
  background: #fff; margin-top: 15px; 
@media (max-width:1199px) { 
max-width: 100%;
}

}
.eq-stat {border-right: 1px solid var(--Color-Grey-Grey-100, #F4F4F4); flex:1;
   display:flex; flex-direction:column; align-items:flex-start; padding:18px 16px;
    @media (max-width:767px) {
padding: 12px 9px;
    }
  }
.eq-stat-val { font-size:22px; font-weight:600; 
  color:var(--text); line-height:1; margin-bottom:4px;
    @media (max-width:767px) {
font-size:20px; 
    }
}
.eq-stat-lbl { font-size: 12px;
  color: var(--muted);
  font-weight: 400; 
  @media (max-width:767px) {
 font-size: 10px;
  }
}


/* Question cards */
.eq-questions { display:flex; flex-direction:column; gap:12px; }
.eq-q-card { background:#fff; margin-bottom: 20px; border-radius:14px; 
   box-shadow:0 1px 6px rgba(0,0,0,.07);
   @media (max-width:1199px) { 
margin-bottom: 10px;
   }
.paddingQnsWrapper{
  padding: 10px 30px 30px;
  h5{
    color: #2C2D30;
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 0px;
  }
     @media (max-width:570px) { 
padding: 10px 20px;
     }
}

}

/* ===== Create Exam – Page wrapper ===== */
.ce-page-body {
  padding: 0 !important;
  background: var(--bg);
    @media (max-width:570px) { 
gap:0px!important;
    }
}
.ce-page-body .ce-qm-section {
  padding: 24px;
     @media (max-width:570px) { 
padding: 20px;
     }
}

/* ===== Create Exam – Steps Bar ===== */
.ce-steps-bar {

padding: 25px 0px 16px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 0;
   @media (max-width:992px) { 
flex-direction: column;
align-items: start;
   }
   @media (max-width:570px) { 
padding: 20px;
   }

}
.ce-steps-list {
  display: flex;
  align-items: stretch;
  flex: 1;
  gap: 12px;
  max-width: 680px;
   @media (max-width:992px) { 
max-width: 100%;
width: 100%;
   }
    @media (max-width:570px) { 
gap:8px
    }
}
.ce-step {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ce-step-track {
  height: 6px;
border-radius: 44px;
  background: #eee;
  width: 100%;
}
.ce-step-track-done { background: #06B838; }
.ce-step-track-half{
  position: relative;
  &::before{
    position: absolute;
    left: 0;
    width: 50%;
     background: #06B838;
     content: "";
     height: 6px;
     border-radius: 44px;
  }
 }
.ce-step-content {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ce-step-done .ce-step-label {color: #676A72;
  font-size: 13px;
  font-weight: 500; 
   @media (max-width:570px) { 
 font-size: 10px;
   }
}
.ce-step-pending .ce-step-label { color: #9a9a9a; font-size: 13px; font-weight: 400;
  @media (max-width:570px) { 
 font-size: 10px;
   } }



/* Steps action buttons */
.ce-steps-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
   @media (max-width:992px) { 
display: flex;
  align-items: end;
  gap: 10px;
  flex-shrink: 0;
  margin-top: 7px;
  justify-content: end;
  width: 100%;
   }
}
.ce-btn-cancel {
  background: none; border: none;
  font-size: 12px; font-weight: 500; color: #2C2D30;
  cursor: pointer; width: 64px;
height: 34px;
  
}
.ce-btn-cancel:hover { color: #21236A; }
.ce-btn-back {
  background: #fff;
 border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius: 12px;
  font-size: 12px; font-weight: 500; color: #374151;
  cursor: pointer;
width: 53px;
height: 34px;
  transition: border-color .15s;
}
.ce-btn-back:hover { border-color: #21236A; color: #21236A; }
.ce-btn-next {
  background: #21236A;
  border: none;
  border-radius: 12px;
  font-size: 12px; font-weight: 500; color: #fff;
  cursor: pointer; 
  transition: 0.4s;
  width: 104px; 
height: 34px;
}
.ce-btn-next:hover { background: var(--gold); }

/* ===== Create Exam – Question Manager ===== */
.ce-qm-section {
  background: transparent;
  padding: 24px 0 0;
}
.ce-qm-title {
  font-size: 18px; font-weight: 500; color: #2C2D30;
  margin-bottom: 6px;
}
.ce-qm-sub {
 font-size: 13px;
  color: #676A72;
  margin-bottom: 70px;
  font-weight: 400;
   @media (max-width:570px) { 
 margin-bottom: 40px;
   }
}

/* ===== Create Exam – Empty State ===== */
.ce-empty-state {
display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px 20px 30px;
  gap: 6px;
  border: 1px solid #EEE;
  @media (max-width:570px) { 
padding: 20px;
  }
}

.ce-empty-title {
font-size: 13px;
  font-weight: 400;
  color: #000;
  margin-top: 10px;
}
.ce-empty-desc {
  font-size: 13px; color: #6B7280;
  text-align: center;  margin-bottom: 10px;
  font-weight: 400;
}
.ce-add-question-btn {
background: #21236A;
  border: none;
  border-radius: 12px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;

  cursor: pointer;

  transition: 0.4s;
  width: 104px;
  height: 34px;
}
.ce-add-question-btn:hover {background: var(--gold); }

/* ===== Add Question Section ===== */
.aq-section { padding: 20px 24px 32px;
@media (max-width:570px) { 
padding: 0px 15px 20px;
}
}
.aq-layout { display: grid; gap: 59px; align-items: flex-start;
   grid-template-columns: 2fr 1fr; 
    @media (max-width:992px) { 
   grid-template-columns:  1fr; 

    }
  
  }

/* Form card */
.aq-form-card {


 display: flex;
  flex-direction: column;
  gap: 0px;
  border: 1px solid #EEE;
  border-radius: 25px;
  padding: 30px;
    @media (max-width:570px) { 
padding: 0px;
border: none;
    }
}

/* Question header */
.aq-q-header {
  display: flex;
  align-items: center;
  gap: 12px;
margin-bottom: 19px;
  @media (max-width:570px) { 
flex-direction: column;
align-items: start;
  }
}
.aq-q-num {
font-size: 18px;
  font-weight: 500;
  color: #2C2D30;
    @media (max-width:570px) { 
font-size: 16px;
    }
}
.aq-q-tags { display: flex; align-items: center; gap: 7px;
  @media (max-width:570px) { 
width: 100%;
  justify-content: end;
  }
}
.aq-type-tag {
display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 400;
  color: #374151;
  border: 1.5px solid #D1D5DB;
  border-radius: 8px;
  padding: 6px 10px;
  cursor: pointer;
  background: #fff;
  box-shadow: 0px 1px 2px 0px #00000014;
    @media (max-width:570px) { 
 font-size: 9px;
    }
}
.aq-score-tag {
display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 400;
  color: #374151;
  border: 1.5px solid #D1D5DB;
  border-radius: 8px;
  padding: 6px 10px;
  cursor: pointer;
  background: #fff;
  box-shadow: 0px 1px 2px 0px #00000014;
    @media (max-width:570px) { 
 font-size: 9px;
    }
}

/* Question textarea */
.aq-field-lbl {
  font-size: 12px;
  font-weight: 500;
  color: #000;
  margin-bottom: 10px;
  
}
.aq-question-textarea {
  width: 100%;

  border: 1.5px solid #E5E7EB;
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 13.5px;
  color: #393B40;
font-weight: 400;
  outline: none;
  transition: border-color .2s;
  resize: none!important;
  margin-bottom: 50px;
      @media (max-width:570px) { 
 margin-bottom: 20px;
      }
}
.aq-question-textarea::placeholder { color: #9CA3AF; }
.aq-question-textarea:focus { border-color: #21236A; }

/* Options header */
.aq-options-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}
.aq-options-lbl {
  font-size: 18px;
  font-weight: 500;
  color: #2C2D30;
   @media (max-width:570px) { 
  font-size: 16px;
   }
}
.aq-count-tag {
display: flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 400;
  color: #374151;
  border: 1.5px solid #D1D5DB;
  border-radius: 8px;
  padding: 6px 10px;
  cursor: pointer;
  background: #fff;
  box-shadow: 0px 1px 2px 0px #00000014;
  @media (max-width:570px) { 
  font-size: 10px;
  }
}
.aq-options-hint {
  font-size: 13px;
  color: #000000;
font-weight: 400;
  margin-bottom: 40px;
    @media (max-width:570px) { 
  margin-bottom: 30px;
  font-size: 10px;
    }
}

/* Option rows */
.aq-options-list { display: flex; flex-direction: column; gap: 10px; 
  margin-bottom: 40px; 
    @media (max-width:570px) { 
 margin-bottom: 20px; 
    }
}
.aq-option-row {
  display: flex;
  align-items: center;
  gap: 14px;
   @media (max-width:570px) { 
  gap: 7px;
   }

}
.aq-radio-btn {
width: 22px;
  height: 22px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 4px solid #8E9198;
  background: #fff;
}
.aq-radio-checked {
  border-color: #16A34A;
  background: #16A34A;
}
.aq-opt-input {
  flex: 1;
  border: 1.5px solid #E5E7EB;
  border-radius: 12px;
  padding: 7px 14px;
  font-size: 13px;
font-weight: 400;
  color: #8E9198;
  outline: none;
  transition: border-color .2s;
   @media (max-width:570px) { 
  padding: 7px 10px;
   }
}
.aq-opt-input::placeholder { color: #9CA3AF; }
.aq-opt-input:focus { border-color: #21236A; }
.aq-opt-selected {
  border-color: #16A34A !important;
  background: rgba(22,163,74,.04);
}
.aq-opt-del {
width: 34px;
  height: 34px;
  border-radius: 6px;
  background: #FFD6D6;
  color: #EF4444;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  cursor: pointer;
  transition: background .15s;
  border: 1px solid #D10032;
}
.aq-opt-del:hover { background: #FECACA; }

/* Footer */
.aq-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #F3F4F6;
  padding-top: 16px;
  margin-top: 4px;
      @media (max-width:570px) { 
  padding-top: 0px;
  margin-top: 0px;
      }
}
.aq-footer-left { display: flex; align-items: center; gap: 8px;
 @media (max-width:570px) {
gap: 5px;
 }
}
.aq-btn-back {
background: #fff;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  color: #374151;
  cursor: pointer;
  width: 53px;
  height: 34px;
  transition: border-color .15s;
    @media (max-width:570px) { 
  font-size: 9px;
   height: 31px;
   }
}
.aq-btn-back:hover { border-color: #21236A; color: #21236A; }
.aq-btn-preview {

  padding: 8px 18px;
background: #fff;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  color: #374151;
  cursor: pointer;
  transition: border-color .15s;
   @media (max-width:570px) { 
  font-size: 9px;
   }
}
.aq-btn-preview:hover { border-color: #21236A; color: #21236A; }
.aq-btn-save {
background: #21236A;
  border: none;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  cursor: pointer;
  transition: 0.4s;
  width: 104px;
  height: 34px;
    @media (max-width:570px) { 
  font-size: 9px;
width: 62px;
  height: 31px;
   }
}
.aq-btn-save:hover { background: var(--gold); }

/* Right navigator card */
.aq-nav-card {
  width: 210px;
  flex-shrink: 0;
  background: #fff;
  border-radius: 14px;
  padding: 30px 20px;
  border: 1px solid #EBEBEB;
  box-shadow: 0 1px 4px rgba(0,0,0,.05);
  height: 100%;
   @media (max-width:992px) { 
display: none;
   }
}
.aq-nav-pills {
display: grid;

  gap: 10px;
  grid-template-columns: repeat(3, 1fr);

}
.aq-nav-pill {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #F9F9F9;
border: 2px solid #D9D9D9;
  background: #fff;
  font-size: 12px;
  font-weight: 500;
  color: #000;
  cursor: pointer;

  transition: border-color .15s, background .15s, color .15s;

}
.aq-nav-pill:hover { border-color: #21236A; color: #21236A; }
.aq-nav-active {
  background: #21236A !important;
  border-color: #21236A !important;
  color: #fff !important;
}

/* Dropdown wrapper & menu */
.aq-dd-wrap { position: relative; display: inline-flex; }
.aq-dd-trigger { cursor: pointer; user-select: none; }
.aq-dd-trigger.aq-dd-open { border-color: #21236A; color: #21236A; }
.aq-dd-menu {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  min-width: 160px;
  background: #fff;
  border: 1.5px solid #E5E7EB;
  border-radius: 10px;
  box-shadow: 0 6px 20px rgba(0,0,0,.10);
  z-index: 999;
  overflow: hidden;
  padding: 4px 0;
}
.aq-dd-menu.aq-dd-menu-open { display: block; }
.aq-dd-item {
  padding: 9px 14px;
  font-size: 13px;
  color: #374151;
  cursor: pointer;
  transition: background .12s;
}
.aq-dd-item:hover { background: #F3F4F6; }
.aq-dd-item-active { color: #21236A; font-weight: 600; background: rgba(33,35,106,.05); }

.eq-q-hdr { font-size: 14px;
  font-weight:600;
  color: #000;
  margin-bottom: 0px;
  padding: 20px 30px;
  border-bottom: 1px #ddd solid;
@media (max-width:767px) { 
padding: 15px 20px;
font-size: 13px;
}
}
.eq-q-label { font-size:15px; font-weight:600; color:#2C2D30; margin-bottom:6px; }
.eq-q-text { font-size:14px; color:#393B40; line-height:1.65; font-weight: 400; margin-bottom:25px; }
.eq-q-opts-label { font-size:14px; font-weight:600; color:#2C2D30; margin-bottom:20px; }
.eq-options { display:flex; flex-wrap:wrap; gap:8px; }
.eq-opt { padding: 4px 13px; border-radius:12px; border:1.5px solid var(--border); 
  background:#eee; font-size:13px; color:var(--text); cursor:pointer; font-weight: 500; transition:all .15s; }
.eq-opt:hover { border-color:var(--gold); color:var(--gold); }
.eq-opt.eq-opt-sel { border-color:var(--gold); color:var(--gold); background:#fffbf0; }
.eq-fill-lbl { font-size:13px; font-weight:600; color:var(--text); margin-bottom:10px; }
.eq-fill-answer { resize: none!important; width:100%; border:1.5px solid var(--border); border-radius:10px; padding:12px 14px; font-size:13px; font-family:'Inter',sans-serif; color:var(--text); resize:vertical; min-height:80px; outline:none; transition:border-color .15s; }
.eq-fill-answer:focus { border-color:var(--gold); }
.eq-fill-answer::placeholder { color:var(--muted); }

/* Timer card */
.eq-timer-card { background: #fff;
  border-radius: 20px;
  padding: 15px 20px;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
  display: flex;
  align-items: center;
  gap: 31px;
  border: 2px solid var(--navy);
  max-width: 353px; 
@media (max-width:1199px) { 
max-width: 100%;
 gap: 16px;
 padding: 16px;
}
}
.eq-timer-svg { width:108px; height:108px; flex-shrink:0; 
@media (max-width:1199px) { 
width:78px; height:78px;
}
}
.eq-timer-title { font-size:20px; font-weight:300; color:#000; margin-bottom:4px; 
@media (max-width:1199px) { 
font-size:16px; font-weight:700; color: #0F172A;  margin-bottom:2px; 
}
}
.eq-timer-time { font-size:14px; color:#000; font-weight:500; }

/* Question navigator */
.eq-nav-card { background: #F9F9F9;
  border-radius: 20px;
  padding: 18px;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
  max-width: 221px;
@media (max-width:1199px) { 
max-width: 100%;
box-shadow: none;
padding: 0px;
background: transparent;
}
}
.eq-nav-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:0px;
@media (max-width:1199px) { 
grid-template-columns:repeat(6,1fr);

}

}
.eq-nav-btn { width: 50px; height: 50px;  border-radius:50%;
   border:1.5px solid var(--border); background:#fff;
    font-size:11.5px; font-weight:500; color:var(--text);
     cursor:pointer; font-family:'Inter',sans-serif; text-align:center;
     
    transition:all .15s; 
  
  @media (max-width:767px) { 
font-size: 9.5px;
width: 40px;
  height: 40px;
  }
  }
.eq-nav-btn:hover { border-color:var(--gold); }
.eq-nav-btn.eq-nav-current { background:var(--gold); border-color:var(--gold); color:#fff; font-weight:600; }
.eq-nav-btn.eq-nav-attended { border-color:var(--gold); color:var(--gold); }
.eq-nav-legend { display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 3px;}
.eq-legend-radio { display: none; }
.eq-legend-item { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--text); cursor:pointer; user-select:none; }
.eq-legend-dot {
  width: 16px; height: 16px;
  border-radius: 50%;
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: #fff;
  transition: border-color .15s;
}
.eq-legend-current { border: 2px solid var(--gold); }
.eq-legend-attended { border: 2px solid var(--gold); }
.eq-legend-unat { border: 2px solid var(--border); }
.eq-legend-radio:checked + .eq-legend-dot::after {
  content: '';
  display: block;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--gold);
}
.eq-legend-radio:checked + .eq-legend-unat::after {
  background: var(--border);
}
.eq-submit-btn { width:221px; padding:12px;
   background:var(--navy); color:#fff; border:none; border-radius:10px; font-size:14px;
    font-weight:600; cursor:pointer; font-family:'Inter',sans-serif; 
    transition:opacity .15s; letter-spacing:.2px;
  
   @media (max-width:570px) {
   width: 100%;
}
  }
.eq-submit-btn:hover { opacity:.88; }

@media (max-width:900px) {
  .eq-body { flex-direction:column-reverse; }

  .eq-timer-card, .eq-nav-card { flex:1; min-width:240px; }
}

.noBorder{
  border: none!important;
}

.bd-headerWhite{
  background: var(--white);
  text-align: left;
  font-size: 13px;
  color: #000!important;

}
.filterBtnmainall1{
  display: flex;
  gap:10px;
}

.headerTxtMain{
  color: #000000;
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 0px;
}
.noMargin{
  margin-bottom: 0px;
}

.noDatmainAll{
  min-height: 40px;
  display: flex;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  background: #fff;
  margin-top: 10px;
}

.filterFlexMain{
  display: flex;
  gap:10px;
}




.page-wrap {
  width: 100%;
  max-width: 1050px;
  padding: 20px;
}

.datepicker-wrapper {
 display: flex;
  gap: 19px;
  background: #fff;
  border: 1px solid #DCDDDE;
  border-radius: 14px;
  padding: 17px;
  box-shadow: 0 8px 28px rgba(33,35,106,0.13);
@media (max-width:1199px) {
flex-direction: column;
gap: 8px;
}
@media (max-width:570px) {
 padding: 10px;
}
}

.calendar-box {
  flex: 1;
min-width: 309px;
  display: flex;
  flex-direction: column;
  justify-content: center;

  @media (max-width:767px) {
min-width: 250px;
  }
}

.divider {
  width: 1px;
  background: #DCDDDE;
}

.calendar-header {
display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 7px;
  border-bottom: 1px solid #EAEBF4;
  background: #303088;
  padding: 9px;
  border-radius: 6px 6px 0px 0px;
}

.top-header .month-title {
  font-size: 13px;
  font-weight: 500;
  color: #fff;
}

.dp-title-group {
  display: flex;
  align-items: center;
  gap: 6px;
}

.dp-month-select,
.dp-year-select {
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 6px;
  padding: 3px 6px;
  cursor: pointer;
  outline: none;
}

.dp-month-select option,
.dp-year-select option {
  color: #21236A;
  background: #fff;
}

.nav-btn {
  width: 25px;
  height: 25px;
  border: 1px solid #fff;
  background: transparent;
  border-radius: 8px;
  cursor: pointer;
  color: #fff;
  font-size: 14px;
  transition: 0.2s ease;
}

.nav-btn:hover {
  background: rgba(33,35,106,0.08);
}

.weekdays {
 display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
  margin-bottom: 0px;
background: #21236A1A;

  padding: 7px;
  border-radius: 6px;
   @media (max-width:570px) {
  gap: 3px;
   }
}

.weekdays span {
  text-align: center;
  font-size: 13px;
  font-weight: 400;
  color: #676A72;
display: flex;
align-items: center;
justify-content: center;
  background: #fff;
  border-radius: 8px;
  width: 38px;
  height: 32px;
    @media (max-width:767px) {

font-size: 13px;
  font-weight: 400;
    }
     @media (max-width:570px) {
font-size: 10px;
      width: 100%;
      height: 25px;
      border-radius: 6px;
     }
}

.days-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
  min-height: 276px;
  align-content: start;

  padding: 7px;
  border-radius: 6px;
  @media (max-width:1199px) {
min-height: auto;
  }
    @media (max-width:767px) {
 gap: 5px;
    }
  

}

.day {
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
background: #30308833;

  border-radius: 10px;
  font-size: 13px;
color: #676A72;
  cursor: pointer;
  transition: all 0.2s ease;
  border: 1px solid transparent;
  font-weight: 400;
    @media (max-width:767px) {
  height: 30px;
    }
       @media (max-width:570px) {
font-size: 10px;
width: 100%;
  height: 25px;
  border-radius: 6px;
    }
}

.day:hover {
 background: #303088;
 color: #fff;
}

.day.muted {
  color: transparent;
  background: transparent;
  border-color: transparent;
  cursor: default;
  pointer-events: none;
  visibility: hidden;
}

.day.selected {
background: #303088;
  color: #fff;
  font-weight: 400;
  border: 3px solid #21236A40;
}

.day.today {
  border: 1px solid #C9A757;
}

.time-picker {

  display: flex;
  align-items: center;
  gap: 10px;
background: var(--Color-Grey-Grey-100, #F4F4F4);

  border-radius: 12px;
  padding: 10px 12px;
  width: fit-content;
  margin: 20px auto 0px;
  @media (max-width:1199px) {
  margin: 0px auto 0px;
  }
    @media (max-width:767px) {
padding: 7px 13px;
gap: 7px;
margin-top: 10px;
    }
}

.time-select {
  border: none;
  background: transparent;
  font-size: 13px;
  color: #676A72;
  outline: none;
  cursor: pointer;

  font-weight:500;
}

.time-separator {
  font-weight: 600;
  color: #21236A;
}

.dropdown-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dropdown-group {
display: flex;
  gap: 10px;
  align-items: center;
  background: #ffffff59;
  padding: 7px;
  border-radius: 6px;
}

.month-dropdown,
.year-dropdown {
  border: none;
  background: transparent;
  font-size: 12px;
  font-weight: 400;
color: #fff;
  outline: none;
  cursor: pointer;
  padding:0px;
}








/* ---- Small mobile: compact cell sizes ---- */



.date-range-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.date-trigger {
appearance: none;
  -webkit-appearance: none;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 7px 36px 7px 14px;
  font-size: 13px;
  color: #393B40;
  background: #fff;
  cursor: pointer;
  outline: none;
  box-shadow: 0px 1px 2px 0px #00000014;
  font-weight: 400;
   @media (max-width: 570px) {
font-size: 10px;
      padding: 8px 29px 8px 11px;
   }
}
.date-trigger .arrow { font-size: 10px; color: #8E9198; }
.date-trigger:hover { background: #f9f9f9; }

.datepicker-popup {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 9999;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
   @media (max-width: 570px) {
width:100%;
   }
 
}
.datepicker-popup.show {
  display: block;
  animation: dpSlideDown 0.18s ease forwards;

 
}
@keyframes dpSlideDown {
  from { opacity: 0; transform: translateY(-8px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes dpSlideUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

.eq-student-metaNav{
  margin: 0;
  padding: 0;
  list-style:none;
  display: flex;
  gap:10px;
  flex-wrap: wrap;

  li{
    color: #676A72;
    font-size: 13px;
    font-weight: 400;
    position: relative;
    padding-left: 11px;
    @media (max-width:1199px) {
color: #94A3B8;
    }
    &:first-child:before{ background: none; }
    &:first-child{ padding-left: 0px; }
    &::before{
      position: absolute;
      content: "";
      width: 4px;
      height: 4px;
      background: #CBCED3;
      border-radius: 50%;
      top: 9px;
      left: 0;
    }
    a{
      color: #0088FF;
    }
    span{ font-weight: 500; color: #000; }
  }
}

.eq-student-card .eq-student-metaNav {
  @media (max-width:1199px) {
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0;
    width: 100%;
    margin-top: 4px;

    li{
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-left: 0 !important;
      padding-top: 8px;
      padding-bottom: 8px;
      border-bottom: 1px solid #f0f1f3;
        @media (max-width:1199px) {
 border-bottom:none;
 padding-bottom: 0px;
        }
      &:last-child{ border-bottom: none; }
      &::before{ display: none; }
      span{ text-align: right; color: #1a1d23; font-weight: 500; }
    }
  }
}



/* Inline question navigator row (below textarea) */
.aq-nav-row {
  display: none;
  flex-wrap: wrap;
  gap: 10px;
  padding: 4px 0;
    @media (max-width:992px) {
display: flex;
  gap: 8px;
    }
}

.aq-nav-pill {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1.5px solid #D1D5DB;
  background: #fff;
  font-size: 12px;
  font-weight: 500;
  color: #374151;
  cursor: pointer;

  transition: border-color .15s, background .15s, color .15s;
  @media (max-width:992px) { 
margin-bottom: 15px;
  }
    @media (max-width:570px) { 
width: 45px;
  height: 45px;font-size: 10px; 
  }
}
.aq-nav-pill:hover { border-color: #21236A; color: #21236A; }
.aq-nav-active {
  background: #21236A !important;
  border-color: #21236A !important;
  color: #fff !important;
}

/* ===== Question Preview Section ===== */
.qp-section { padding: 0px; border: none!important; }
.qp-header { display:flex; align-items:end; max-width: 698px; 
   justify-content:space-between; margin-bottom:30px; flex-wrap:wrap; gap:8px;
   @media (max-width:570px) { 
gap:5px;
margin-bottom: 14px;
   }
  
  }
.qp-title { font-size: 17px;
  font-weight: 500;
  color: #2C2D30;
  margin-bottom: 6px; }
.qp-meta { font-size:13px; font-weight: 400; color:#676A72; margin:0;
 @media (max-width:570px) { 
 font-size:11px; 
 }
}
.qp-meta span { color:#374151; font-weight:400;  }
.qp-score { font-size:13px; font-weight:400; color:#676A72;  @media (max-width:570px) { 
 font-size:11px; 
 } }
.qp-list { display:flex; flex-direction:column; }
.qp-item {
  position: relative;
  display:flex;
  
  width: 100%;
  gap:16px; align-items: start;
}
.qp-item-body { display:block; padding: 7px 12px 7px 12px;
  background: #fff;
  border-radius: 12px;
  border: 1px solid #EBEBEB;
  box-shadow: 0 1px 4px rgba(0,0,0,.05);
  box-sizing: border-box; width: 100%; margin-bottom: 16px;
 @media (max-width:570px) { 
margin-bottom: 10px;
 }

}
.qp-q-text { font-size:13px; color:#374151; margin:0 0 6px; line-height:1.5; }
.qp-q-num { font-weight:600; color:#374151; margin-right:4px; }
.qp-q-answer { font-size:12px; color:#6B7280; margin:0; }
.qp-q-answer span { color:#374151; font-weight:400; }
.qp-options { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-top:4px; }
.qp-opt { font-size:12.5px; color:#374151; }
.qp-opt-sep { font-size:12px; color:#D1D5DB; }
.qp-opt-correct { color:#0EA935; font-weight:400; }
.qp-del-btn { width: 34px;
  height: 34px;
  border-radius: 6px;
  background: #FFD6D6;
  color: #EF4444;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  cursor: pointer;
  transition: background .15s;
  border: 1px solid #D10032; }
.qp-del-btn:hover { background:#FECACA; }
.qp-footer { margin-top:18px; 
 @media (max-width:570px) { 
margin-top: 10px;
 }
}
.qp-add-btn { background:#fff; border:1.5px solid var(--navy); border-radius:12px;
   font-size:12px; font-weight:500; color:#21236A; padding:7px 22px; 
   cursor:pointer; font-family:'Inter',sans-serif; transition:border-color .15s,color .15s;
    @media (max-width:570px) { 
margin: 0 auto;
display: block;
    }
  }
.qp-add-btn:hover { border-color:#21236A; color:#21236A; }

.mobileNumberNone{
   @media (max-width:570px) { 
display: none;
   }
}

.mobilMainGraphall{
  display: none!important;
     @media (max-width:767px) { 
display: flex!important;
justify-content: end!important;
padding:20px 20px 0px;
     }
}
.deskTopGraph{
     @media (max-width:767px) {
display: none!important;
     }
}

/* ── Exam Details Page ── */
.ed-tab-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: transparent;
  border-radius: 10px;
  padding: 6px 10px;
  margin-bottom: 0px;
  border: none;
  margin-top: 10px;

  gap: 6px;
   @media (max-width:992px) {
flex-direction: column;
align-items:end;
gap:20px;
margin-bottom: 10px;
   }
}
.ed-tabs { display: flex; gap: 2px; flex-wrap: wrap; align-items: center;
background: #fff; padding: 4px; border-radius: 6px;
   @media (max-width:992px) {
width: 100%; 
   }
}
.ed-tab {
padding: 7px 54px;
  border-radius: 6px;
  border: none;
  background: transparent;
  font-size: 13px;
  font-weight: 400;
  color: #393B40;
  cursor: pointer;
  transition: background .15s, color .15s;
  white-space: nowrap;
     @media (max-width:1199px) {
padding: 7px 40px;
     }
   @media (max-width:992px) {
font-size: 13px; padding: 4px 13px;

   }
}
.ed-tab:hover { color: #21236A; }
.ed-tab.active {
  background: #21236A;
  color: #fff;
  font-weight: 500;
  border-radius: 8px;
}
.ed-edit-btn {
width: 119px;
height: 34px;
  border-radius: 12px;
  border: 1.5px solid #C9A757;
  background: #fff;
  font-size: 12px;
  font-weight: 500;
  color: #C9A757;
  cursor: pointer;
  transition: background .15s, color .15s;
  white-space: nowrap;
}
.ed-edit-btn:hover {color: #fff; background: var(--navy);  border: 1.5px solid var(--navy);  }

.ed-exam-hdr { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.ed-exam-id { font-size: 20px; font-weight: 700; color: #1a1d23; }
.ed-status-badge {
  padding: 3px 14px;
  border-radius: 20px;
  background: rgba(33,35,106,.08);
  color: #21236A;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid rgba(33,35,106,.2);
}

.ed-meta-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 14px;
  margin-bottom: 18px;
  font-size: 13px;
  color: #6B7280;
}
.ed-meta-val { color: #374151; font-weight: 500; }
.ed-meta-link { color: #21236A; text-decoration: underline; font-weight: 500; }
.ed-meta-sep { color: #D1D5DB; }

.ed-stats-card {
  display: flex;
  align-items: stretch;
  background: #fff;
  border-radius: 12px;
  border: 1.5px solid #E5E7EB;
  margin-bottom: 20px;
  overflow: hidden;
}
.ed-stat-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 18px 24px;
}
.ed-stat-num { font-size: 26px; font-weight: 700; color: #1a1d23; line-height: 1; }
.ed-stat-lbl { font-size: 12.5px; color: #6B7280; }
.ed-stat-divider { width: 1px; background: #E5E7EB; flex-shrink: 0; }


.ed-info-section .bd-header {
  border-radius: 0;
  text-align: left;
  padding: 14px 24px;
  font-size: 13px;
  border-radius: 12px;
  font-weight: 500;
    @media (max-width: 992px) {
padding: 8px 21px;
    }

}
.ed-info-body {
  padding: 15px 24px 15px;

  display: flex;
  flex-direction: column;
  gap: 0;
  @media (max-width: 992px) {
padding: 10px 0px 20px;
  }
}

/* each field row inside the body */
.ed-field {
  display: flex;
  align-items: flex-start;
gap: 14px;
  padding: 0px 0 20px;
  @media (max-width: 992px) {
  padding: 0px 0 10px;
  }
}
/* top border on 2-col grids to act as section separator */
.ed-field-grid-border {
  border-top: 1px solid #F0F1F3;
}
.ed-field-grid {
display: flex; justify-content: space-between;
  gap: 0;
  border-bottom: 1px solid #F0F1F3;
    @media (max-width: 570px) {
 grid-template-columns: 1fr ; display: grid;
    }
}
.ed-field-grid .ed-field {
  padding: 16px 0;
    @media (max-width: 992px) {
 padding: 10px 0 0px;
    }
}
.ed-field-grid .ed-field:nth-child(2) {
 
  border-left: 1px solid #F0F1F3;
}
.ed-field-grid-3 { display: flex; justify-content: space-between; gap: 20px;
  @media (max-width: 992px) {
gap:10px; 

  }
    @media (max-width: 570px) {
grid-template-columns: 1fr ; display: grid;
    }
}
.ed-field-grid-3 .ed-field { padding: 16px 0; 
  @media (max-width: 992px) {
padding: 10px 0 0px; 
  }
}


.ed-field-icon {
width: 30px;
  height: 30px;
  border-radius: 10px;
  background: #F4F4F4;
  border: 1px solid #E5E7EB;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE);
}
.ed-field-content { display: flex; flex-direction: column; gap: 4px; }
.ed-field-lbl { font-size: 12.5px; color: #21236A; font-weight: 500;
 @media (max-width: 992px) {
font-size: 12px;
 }
}
.ed-field-val { font-size: 13px; color: #000; font-weight: 500;
 @media (max-width: 992px) {
font-size: 12px;
 } }

.ed-desc-block { padding: 16px 0; 
  border-top: 1px solid #F0F1F3; border-bottom: 1px solid #F0F1F3;
 @media (max-width: 992px) {
 padding: 10px 0; 
 }
}
.ed-desc-lbl {font-size: 13px;
  color: #21236A;
  font-weight: 400;
  margin: 0 0 5px;}
.ed-desc-text { font-size: 13px;
  color: #000;
  line-height: 1.65;
  margin: 0;
  font-weight: 500; }

.ed-panel { display: block; }

/* AI Generate Questions Modal */
.ai-modal-overlay { display: none; position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,0.38); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); align-items: center; justify-content: center; }
.ai-modal-overlay.open { display: flex; }
.ai-modal {background: #F3F4F4;
  border-radius: 18px;
  padding: 40px;
  width: 100%;
  border: 2px solid #00144540;
  max-width: 500px;
  position: relative;
  box-shadow: 0 12px 48px rgba(0,0,0,0.18);
  text-align: center;
  margin: 16px;
   @media (max-width: 570px) {
padding: 30px 20px;
   }

}
.ai-modal-close {position: absolute;
  top: 14px;
  right: 14px;
  background: #fff;
 border: 1px solid var(--Color-Grey-Grey-200, #EEEEEE);  border-radius: 6px;
  width: 34px;
  height: 34px;
  font-size: 20px;
  color: #6B7280;
  cursor: pointer;
  display: flex;
  align-items: center; 
  justify-content: center; transition: 0.4s;
  line-height: 1; box-shadow: 0px 4px 5px 0px #00000008;

 }
.ai-modal-close:hover { background: #E5E7EB; }
.ai-modal-icon { 
  margin: 0 auto 30px; }
.ai-modal-icon svg { width: 80px; height: 80px; }
.ai-modal-title { font-size: 18px; font-weight: 500; color: #2C2D30; margin: 0 0 10px; }
.ai-modal-sub { font-size: 13px; color: #676A72; margin: 0 0 30px; line-height: 1.5; }
.ai-modal-field { margin-bottom: 16px; text-align: left; }
.ai-modal-label { display: block;
  font-size: 12px;
  color: #000;
  font-weight: 500; 
  margin-bottom: 10px;}
.ai-modal-input { width: 100%;border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE); 
  border-radius: 18px; padding: 7px 14px; font-size: 13px; 
  color: #393B40; outline: none; background: #fff; box-sizing: border-box; 
font-weight: 400;}
.ai-modal-input::placeholder { color: #9CA3AF; }
.ai-modal-input:focus { border-color: #21236A; }
.ai-modal-tags { display: flex; gap: 10px; margin: 14px 0 22px; }
.ai-modal-tag { flex: 1; display: flex; align-items: center; gap: 8px;
border: 1px solid #DCDDDE; border-radius: 18px; padding:7px 14px; font-size: 13px;
 color: #393B40; cursor: pointer; background: #fff; font-weight: 400; user-select: none; }
.ai-modal-tag input[type="checkbox"] { accent-color: #21236A; width: 15px; height: 15px; margin: 0; flex-shrink: 0; cursor: pointer; }
.ai-modal-generate-btn { margin-top: 10px;
  width: 100%;
  background: #21236A;
  color: #fff;
  border: none;
  border-radius: 10px;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: background .15s;}
.ai-modal-generate-btn:hover { background: var(--gold); }

/* Question Bank Modal */
.qb-modal-overlay { display: none; position: fixed; inset: 0; z-index: 9999; background: rgba(0,0,0,0.38); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); align-items: center; justify-content: center; }
.qb-modal-overlay.open { display: flex; }
.qb-modal { background: #F3F4F4;
  border-radius: 18px;
  padding: 40px 40px 3px;
  max-width: 1123px;
  position: relative;
  box-shadow: 0 12px 48px rgba(0,0,0,0.18);
  margin: 16px;
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 100%; 

  @media (max-width: 570px) {
padding: 40px 15px 10px;
  }

}
.qb-modal-header { padding: 0px; border-bottom: 1px solid #F0F1F3; flex-shrink: 0; }
.qb-modal-close {position: absolute;
  top: 14px;
  right: 14px;
  background: #fff;
 border: 1px solid var(--Color-Grey-Grey-200, #EEEEEE);  border-radius: 6px;
  width: 34px;
  height: 34px;
  font-size: 20px;
  color: #6B7280;
  cursor: pointer;
  display: flex;
  align-items: center; 
  justify-content: center; transition: 0.4s;
  line-height: 1; box-shadow: 0px 4px 5px 0px #00000008; }
.qb-modal-close:hover { background: #F3F4F6; }
.qb-modal-title { font-size: 18px;
  font-weight: 500;
  color: #2C2D30;
  margin: 0 0 10px;
  text-align: center;
 @media (max-width: 570px) {
font-size: 15px;
margin-top: 10px;
 }
}
.qb-modal-sub { font-size: 13px;
  color: #676A72;
  margin: 0 0 30px;
  text-align: center;
  font-weight: 400;
 @media (max-width: 570px) {
  margin: 0 0 15px; font-size: 12px;
 }
}
.qb-modal-search-row {display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 0px;

  max-width: 825px;
  margin: 0 auto 16px;
 @media (max-width: 992px) {
flex-direction: column;
 }
} 
.qb-modal-search { flex: 1; min-width:530px; display: flex; align-items: center; gap: 6px;
   border: 1px solid #E5E7EB; border-radius: 12px; padding: 7px 14px; background: #fff;
    @media (max-width: 992px) {
min-width: 100%;
    }
    @media (max-width: 570px) {
min-width: 100%;
  }
  }
.qb-modal-search input { border: none; outline: none; font-size: 13px; font-weight: 400; color: #8E9198; flex: 1; font-family: inherit; background: transparent; }
.qb-modal-search input::placeholder { color: #9CA3AF; }
.qb-modal-filter {border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE); border-radius: 12px;
  padding: 7px 36px 7px 16px; font-weight: 400; 
  font-size: 13px; color: #393B40;
   background: #F9FAFB url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4L6 8L10 4' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center; cursor: pointer; 
    outline: none; appearance: none; -webkit-appearance: none;
     @media (max-width: 992px) {
width: 100%;
     }
   @media (max-width: 767px) {
width: 100%;
   }
      @media (max-width: 767px) {
  padding: 7px 30px 7px 10px; 
      }
  
  }
.qb-modal-info-row { display: flex; align-items: center; flex-direction: column;
   justify-content: space-between;  flex-wrap: wrap; margin-bottom: 20px; }
.qb-modal-count {font-size: 13px;
  color: #676A72;
  margin: 0 0 15px;
  font-weight: 400;
strong{
font-weight: 400;
}
}
.qb-modal-selected-txt { color: #21236A; font-weight: 400; font-size: 13px; }
.qb-modal-add-btn { background: #21236A; color: #fff; border: none; border-radius: 12px;
   padding: 9px 20px; transition: 0.4s; font-size: 12px; font-weight: 500; cursor: pointer;  white-space: nowrap; }
.qb-modal-add-btn:hover { background: var(--gold); }
.qb-modal-list { overflow-y: auto;   display: flex; 
  flex-direction: column;  }
.qb-q-item {margin-bottom: 16px; position: relative; border: 1.5px solid #D1D5DB;
   background: #fff; border-radius: 10px; padding: 7px 12px 7px 12px;
   cursor: pointer; transition: border-color .15s; 
   @media (max-width: 767px) {
background: #F9F9F9;
 padding: 7px 80px 7px 12px;
   }
  }
.qb-q-item:hover { border-color: #D1D5DB; }
.qb-q-item.qb-q-selected { border-color: #21236A; }
.qb-q-check { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; background: #21236A; border-radius: 50%; display: none; align-items: center; justify-content: center; flex-shrink: 0; }
.qb-q-selected .qb-q-check { display: flex; }
.qb-q-text { font-size: 13px;
  color: #393B40;
  font-weight: 400;
  margin: 0 0 5px;
  line-height: 1.5; }
.qb-q-num { color: #1a1d23; }
.qb-q-meta { font-size: 12.5px; color: #9CA3AF; margin: 0; }
.qb-q-opts { display: flex; align-items: center; gap: 7px; flex-wrap: wrap;
   font-size: 13px; color: #676A72; margin: 0;font-weight: 400; }
.qb-q-opt-sep { color: #D1D5DB; }
.qb-q-opt-correct { color: #0EA935;
  font-weight: 400; font-size: 13px;}
.qb-modal-footer { padding: 12px 26px 18px; text-align: center; border-top: 1px solid #F0F1F3; flex-shrink: 0; }
.qb-modal-view-more { transition: 0.4s; font-size: 13px; color: #21236A; font-weight: 400; cursor: pointer; background: none; border: none;  }
.qb-modal-view-more:hover { color: var(--gold); text-decoration: underline; }

.screenShotDivMain { background: #fff;
  border-radius: 20px;
  border: 1.5px solid #D9D9D9;
  padding: 11px 20px;

  min-width: 0;
  max-width: 193px;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
   @media (max-width: 1199px) {
order: 2;
max-width: 100%;
   }
     @media (max-width: 570px) {
box-shadow: none;
border-radius: 6px;
border: none;

   }
}
.ss-title {font-size: 13px;
  font-weight: 500;
  color: #000;
  margin: 0 0 5px;
  text-align: center;}
.ss-list { display: flex; align-items: center; justify-content: center; gap: 10px; }
.ss-item { width: 45px; height: 45px; border-radius: 50%; overflow: hidden;
box-shadow: 0 0 0 2px var(--navy); flex-shrink: 0; }
.ss-avatar { width: 100%; height: 100%; object-fit: cover; display: block; }

.ed-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 25px 0 0px;
   @media (max-width: 992px) {
  padding: 13px 0 0px;

   }
}
.ed-checks { display: flex; align-items: center; gap: 18px; flex-wrap: wrap;
   @media (max-width: 570px) {
margin-bottom: 15px;
   }
}
.ed-check {
display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  color: #393B40;
  cursor: pointer;
  font-weight: 500;
}
.ed-check input[type="checkbox"] {
width: 18px;
  height: 18px;
  accent-color: #21236A;
  cursor: pointer;
  border-radius: 4px;
}
.ed-view-btn {
padding: 7px 13px;
  border-radius: 22px;
  border: 1.5px solid #D1D5DB;
  background: #fff;
  font-size: 12px;
  font-weight: 500;
  color: #21236A;
  cursor: pointer;
  transition: border-color .15s, color .15s;
  @media (max-width: 570px) {
width: 100%;
  }
}
.ed-view-btn:hover { border-color: #21236A; color: #21236A; }
@media (max-width: 768px) {

  .ed-field-grid .ed-field:nth-child(2) { padding-left: 0; border-left: none; border-top: 1px solid #F0F1F3; }

  .ed-field-grid-3 .ed-field:nth-child(2) { border-left: none; padding-left: 0; border-top: 1px solid #F0F1F3; }
  .ed-stats-card { flex-direction: column; }
  .ed-stat-divider { width: 100%; height: 1px; }
  .ed-tab-bar { padding:0; }
  .ed-tab { padding: 8px 11px; font-size: 11px; }
  .ed-edit-btn { padding: 7px 18px; font-size: 12px; }
}

.marginBottomMain{
  margin-bottom: 23px;
  @media (max-width: 992px) {
margin-bottom: 10px;
gap:3px;
  }
}

.gridTabMainallSec{
  display: grid;
 grid-template-columns: 2fr 1fr;
 padding: 0 25px;
 gap:67px;
  @media (max-width: 992px) {
 grid-template-columns:  1fr;
 padding: 0 0px;
 gap: 0;
  }
}
.gridTabMainallSec1{
  display: grid;
 grid-template-columns: 2fr 0fr;
 padding: 0 25px;
 gap:67px;
  @media (max-width: 992px) {
 grid-template-columns:  1fr;
 padding: 0 0px;
 gap: 0;
  }
}
.marginBottomMain1{
  margin-bottom: 0px!important;
}

.questionMainallWrapper{
  gap: 0px!important;
  .eq-q-card{
    margin-bottom: 0px!important;
    margin-top: 32px!important;
      @media (max-width: 992px) {
  margin-top: 15px!important;
      }
  }
}

.onlinactiveDiv{
  background: #DFF8E5!important;
  color:#06B838 !important;
  border: 1px solid #06B838!important;
  border-radius: 6px!important;
 
}
.deafultDiv{
  border-radius: 6px!important;
  &:hover{
      color:#06B838 !important;
  border: 1px solid #06B838!important;
  }
}
.questionflexMain{
 display: grid;
  align-items: center;
  width: 100%;
  padding: 20px 30px;
  border-bottom: 1px #ddd solid;
  justify-content: space-between;
  grid-template-columns: 1fr 1fr;
      @media (max-width: 570px) {
  padding: 10px 20px;
      }
      .flexTxtAll1Sec{
        display: flex;
  justify-content: space-between;
  align-items: center;
    @media (max-width: 570px) {
align-items: end;
flex-direction: column;
    }
      }
  p{
font-size: 14px;
  font-weight: 600;
  color: #000;
    margin-bottom: 0px;
  }
  label{
    font-weight: 400;
    font-size: 13px;
    color: #DF001B;
    text-align: right;
  }
  span{
      font-weight: 400;
    font-size: 13px;
    color: #0B5C22;
  }
  h4{
    font-size: 12px;
  font-weight: 400;
  color: #323133;
    margin-bottom: 0px;
  }
  h5{
    font-weight: 400;
    font-size: 12px;
    color: #676A72;
      label{
    font-weight: 400;
    font-size: 13px;
    color: #DF001B;
  }
  }
}

.heightMaxall{
  height:initial!important;
  background: #F9F9F9!important;
  border: 1px solid #D9D9D9!important;max-height: 486px;
  overflow: auto;

}

.questionRoMain{
  margin-top: 20px;
  .aq-nav-pill{
    margin-bottom: 0px;
  }
}

.edPanelValuation{
  .eq-stat-sep{
     @media (max-width: 570px) {
display: none;
     }
  }
  .eq-stat{
     @media (max-width: 570px) {
border-bottom: 1px var(--Color-Grey-Grey-100, #F4F4F4) solid;
padding: 12px 15px 11px;
     }
  }
.cardDesignSideByside{
  gap:27px!important;
  grid-template-columns: 3.2fr 1fr!important;

   @media (max-width: 1199px) {
  flex-direction: row-reverse!important;
  grid-template-columns: 1fr!important;
  gap:10px!important;
   }
}
.eq-student-card{
   @media (max-width: 570px) {
box-shadow: none;
border-radius: 6px;
border: none;

   }
}
.eq-status-badge{
  background: #FFFAE9!important;
  color: #B88800!important;
  border: 1px solid var(--Color-Warning-Warning-Transparent, #FEC52433)!important;
}
.deafaultOption{
  border-radius: 6px!important;
  &:hover{
     background: #DF001B33!important;
  color: #DF001B!important;
  border: 1px solid #DF001B!important;
  }
}
.greenOptionDefault{
   border-radius: 6px!important;
  &:hover{
    background: #E6F8DF!important;
  color: #0B5C22!important;
border: 1px solid var(--Accents-Green, #34C759)!important;
   border-radius: 6px!important;
  }
}
.redOption{
  background: #DF001B33!important;
  color: #DF001B!important;
  border: 1px solid #DF001B!important;
   border-radius: 6px!important;
}
.greenOption{
  background: #E6F8DF!important;
  color: #0B5C22!important;
border: 1px solid var(--Accents-Green, #34C759)!important;
   border-radius: 6px!important;
}

.eq-nav-card{
  .eq-nav-btn.eq-nav-current {
  background: #0B5C22!important;
border: 1px solid var(--Accents-Green, #34C759)!important;
  color: #fff;
  font-weight: 600;
}
.eq-nav-btn.eq-nav-attended{
  color: #D10032!important;
  border: 1px solid #D10032


}
}
.eq-legend-current{
  border: 1px solid #0B5C22;
}
.eq-legend-attended{
   border: 1px solid #D10032
}
.eq-legend-unat{
     border: 1px solid #8E9198
}
.eq-legend-dot::after{
  background: #0B5C22!important
}
.eq-stats-row {
    @media (max-width: 570px) {
display: grid!important;
grid-template-columns: 1fr 1fr!important;
    }
}

}

.mobileMenuMainQns{
  display: none!important;
      @media (max-width: 1199px) {
display: block!important;
margin-top: 20px;
      }
       .eq-nav-grid{
    margin-bottom: 20px!important;
   }
   .eq-nav-legend{
        margin-bottom: 20px!important;
   }
}
.deskTopMainQns{
   @media (max-width: 1199px) {
  display: none!important;
   }
  
}
.desktopDeatiltxtmain{
  @media (max-width: 1199px) {
display: none;
     }
}

.mobileDeatiltxtmain{
  display: none;
     @media (max-width: 1199px) {
display: block;
     }
}
.nameWrapperDivMain{
  display: flex;
  flex-direction: column;
}

.addNewOptionMain{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
  a{
    color: #C9A757;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: 0.4s;
         @media (max-width: 570px) {
color: #DF001B;
         }
    &:hover{
      color: var(--navy);
    }
  }
}

.flexModalMainAll{
  display: flex;
  gap:10px;
  width: 100%;
}

  /* ---- Add Center Modal (matches site modal pattern) ---- */
    /* Blur layer — covers only the content; sidebar + header sit above it */
    .ac-modal-backdrop { display: none; position: fixed; inset: 0; z-index: 1200; background: rgba(0,0,0,0.30); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }
    /* Centering layer — transparent, holds the modal above everything */
    .ac-modal-overlay { display: none; position: fixed; inset: 0; z-index: 1400; align-items: center; justify-content: center; padding: 16px; }
    .app-body.modal-open .ac-modal-backdrop { display: block; }
    .app-body.modal-open .ac-modal-overlay { display: flex; }
    /* Keep the sidebar crisp above the blur layer */
    .app-body.modal-open .db-sidebar-fixed { z-index: 1300; }
    /* Shift the modal into the content area (right of the fixed sidebar) */
    @media (min-width: 1200px) { .ac-modal-overlay { padding-left: 200px; } }
    .ac-modal {background: #fff;
  border-radius: 18px;
  padding: 0;
  width: 100%;
  max-width: 59vw;
  max-height: 90vh;
  position: relative;
  display: flex;
  flex-direction: column;
  box-shadow: 0 12px 48px rgba(0,0,0,0.18);
}

/* ============================================================
   DASHBOARD — Fixed Sidebar + Fixed Header
============================================================ */

/* ── Fixed Sidebar ── */
.db-sidebar-fixed {
  position: fixed !important;
  top: 20px;
  left: 20px;
  bottom: 20px;
  width: 180px !important;
  z-index: 200;
  border-radius: 32px !important;
  overflow: hidden;            /* container itself doesn't scroll */
  display: flex;
  flex-direction: column;
  padding: 25px 25px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}

/* Fixed top (logo) + scrolling middle (nav list) + fixed bottom (logout) */
.db-sidebar-fixed .db-sidebar-logo,
.db-sidebar-fixed .db-sidebar-bottom {
  flex-shrink: 0;
}
.db-sidebar-fixed .sidebar-nav {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
}
.db-sidebar-fixed .flexMainGapall {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  align-items: center;
}
.db-sidebar-fixed .flexMainGapall::-webkit-scrollbar {
  display: none;
}

/* Push main content to the right of fixed sidebar */
.db-sidebar-fixed ~ .sidebar-overlay ~ .main-content,
.db-sidebar-fixed ~ .main-content {
 margin-left: 200px;
}

/* ── Sidebar logo ── */
.db-sidebar-logo {
  display: flex;
  justify-content: center;
  flex-shrink: 0;
  padding: 6px 0 0;
  margin-bottom: 20px;
    @media (max-width: 767px) {
  margin-bottom: 8px;
    }
  a {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  img{
    width: 117px;
     @media (max-width: 767px) {
       width: 88px;
     }
  }
}


/* ── Sidebar separator ── */
.db-side-sep {
 border: none;
  height: 2px;
  min-height: 2px;
  flex-shrink: 0;
  background: #fff;
  margin: 10px 0;
  border-radius: 50%;
  opacity: 1;
  width: 65%;
}

/* ── Hidden hamburger (stays in DOM for JS) ── */
.db-hamburger-hidden {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
  overflow: hidden;
}

/* ── Mobile close (✕) button — hidden on desktop ── */
.sidebar-close-btn {
  display: none;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  cursor: pointer;
  z-index: 5;
  transition: background 0.18s;
}
.sidebar-close-btn:hover {
  background: rgba(255, 255, 255, 0.25);
}
@media (max-width: 768px) {
  .sidebar-close-btn {
    display: flex;
     top: 2px;
  right: 7px;
  }
}



.nav-chevron-sm {
  font-size: 7px !important;
  margin-left: 2px;
  opacity: 0.6;
}

/* ── Sidebar bottom + logout pill ── */
.db-sidebar-bottom {
display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  padding-top: 10px;
  padding-bottom: 0px;
  margin-bottom: 0;
  width: 100%;
  @media (max-width: 767px) {
 padding-top: 0px;
  }
}
.nav-logout-pill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0px;
  width: 100%;
padding: 16px 6px;
  border-radius: 200px;
  border: 1.5px solid #fff;
  background: transparent;
  color: #fff;
  text-decoration: none;
  transition: background 0.18s, color 0.18s;
  flex-shrink: 0;
  @media (max-width: 767px) {
  border-radius:20px;
  padding: 13px 6px;
  }
}
.nav-logout-pill img,
.nav-logout-pill svg {
  width: 20px;
  height: 20px;
}
.nav-logout-pill span {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3px;
  color: inherit;
}
.nav-logout-pill:hover {
  background: #fff;
  color: var(--navy);
}
/* recolor white logout icon to navy on hover (matches nav items) */
.nav-logout-pill:hover img {
  filter: brightness(0) saturate(100%) invert(13%) sepia(67%)
    saturate(3194%) hue-rotate(237deg) brightness(96%) contrast(96%);
}

/* ============================================================
   DASHBOARD — Wave Header (uses header-frame.png)
============================================================ */
.db-header-wave {
  position: sticky !important;
  top: 0;
  z-index: 150;

  border-radius: 0 !important;
  min-height: auto;
  flex-shrink: 0;
  margin-bottom: 20px;
  @media (max-width: 767px) {
padding-top: 12px;
margin-bottom: 20px;
  }

}

/* Wave background image — fills header, shape is in the PNG */
.hdr-wave-bg {
position: absolute;
  top: 0px;
  right: 0;
  z-index: 10;


}

.db-header-wave .hdr-wave-content {
 position: relative;
  z-index: 1;
padding: 30px 22px 29px 44px;
  background: url(../images/header-frame.svg) right no-repeat;
    background-size: auto;
  background-size: cover;
  border-radius: 32px;
  
  @media (max-width: 992px) {
  /* stretch the frame to fill the header box exactly (no crop, full width) */
  background: url(../images/mobile-header-frame.svg) no-repeat;
  background-size: 100% 100%;
  height: auto;
 min-height: 76px;
   padding: 10px 20px 10px 32px !important;
   border-radius: 0px;
  }
  @media (max-width: 570px) {
 min-height: 55px;
  border-radius: 0px;
  }

}
.profilDivWrapperMain{
  display: flex;
align-items: center;
  gap: 14px;
  .hdr-avatar {
width: 75px;
  height: 75px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid #fff;
  flex-shrink: 0;
  padding: 6px;
    @media (max-width: 1199px) {
border:none;
padding: 0px;
width: 45px;
  height: 45px;
    }

  
}

  .textWrapper{
    display: flex;
    gap:0px;
    flex-direction: column;
    max-width: 200px;
    min-width: 0;
    @media (max-width: 767px) {
      max-width: 120px;
    }
   .hdr-name {
  display: block;
  color: #fff;
  font-size: 24px;
  font-weight: 500;
margin-bottom: 0px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
@media (max-width: 1199px) {
 font-size: 16px;
}
@media (max-width: 767px) {
 font-size: 13px;
}
}
.hdr-role {
  display: block;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  @media (max-width: 1199px) {
  font-size: 10px;
  }
  @media (max-width: 767px) {
  font-size: 8px;
  }
}
  }

}

/* Tablet Responsive Overrides (1199px and below) */
@media (max-width: 1199px) {
  .db-header-wave .hdr-wave-content {
    background-size: 100% 100% !important;
    height: 90px !important;
  }
  .profilDivWrapperMain .hdr-avatar {
    width: 45px !important;
    height: 45px !important;
    border: none !important;
    padding: 0px !important;
  }
  .profilDivWrapperMain .textWrapper .hdr-name {
    font-size: 16px !important;
  }
  .profilDivWrapperMain .textWrapper .hdr-role {
    font-size: 10px !important;
  }
}

/* Remove top border radius from main-content when wave header is used */
.db-header-wave ~ .db-scroll-with-fixed-hdr {
  border-radius: 0;
}

.hdr-wave-content {
  display: flex;
  align-items: center;
  gap: 14px;

  width: 100%;
}

.hdr-mob-btn {
  display: none;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: #E4E5F4;       /* light lavender square */
  border: none;
  cursor: pointer;
  border-radius: 13px;
  flex-shrink: 0;
  padding: 10px;
}
/* navy menu lines (overrides the inline gold stroke) */
.hdr-mob-btn svg path {
  stroke: var(--navy);
}
.hdr-mob-btn:hover {
  background: #d4d6ee;
}





/* ── Scroll area adjustment for fixed header ── */
.db-scroll-with-fixed-hdr {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;

  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}
.db-scroll-with-fixed-hdr::-webkit-scrollbar { width: 5px; }
.db-scroll-with-fixed-hdr::-webkit-scrollbar-track { background: transparent; }
.db-scroll-with-fixed-hdr::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }

/* ============================================================
   DASHBOARD — Mobile responsive overrides
============================================================ */
@media (max-width: 768px) {
  .db-sidebar-fixed {
    position: fixed !important;
    top: 0;
    left: 0;
    bottom: 0;
width: 134px !important;
    border-radius: 0 !important;
    transform: translateX(-100%);
    transition: transform 0.28s ease;
    padding-bottom: 15px;
  }
  .db-sidebar-fixed.open {
    transform: translateX(0);
  }
  .db-sidebar-fixed ~ .sidebar-overlay ~ .main-content,
  .db-sidebar-fixed ~ .main-content {
    margin-left: 0;
  }

  .divallMainOne {
    padding: 20px;
  }

  .hdr-mob-btn {
    display: flex;
  }



  .db-scroll-with-fixed-hdr {
    padding: 0px;
  }
}

    .ac-modal {
  margin: 16px;
  overflow: hidden;
 @media (max-width: 570px) {max-width: 100%;}

    }
    .ac-modal-topbar { display: flex; align-items: center; justify-content: space-between; 
      padding: 9px 20px;background: #303088; border-bottom: none; flex-shrink: 0; }
    .ac-modal-create-label { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: #fff; }
    .ac-modal-create-label svg { color: #fff; }
    .ac-modal-close { background: transparent; border: none; }
    .ac-modal-close:hover { background: transparent; }
    .ac-modal-body { overflow-y: auto; flex: 1; padding: 24px 32px 16px;
    @media (max-width: 570px) {
padding: 20px;
    }
    }
    .ac-modal-title { font-size: 18px;
  font-weight: 600;
  color: #2C2D30;
  margin: 0 0 16px; }
    #addCenterModal .ac-modal-title {
      background: #F4F4F4;
      color: #000000;
      padding: 12px 16px;
      border-radius: 8px;
      font-size: 14px;
      font-weight: 400;
      margin-bottom: 20px;
      text-align: left;
    }
    .ac-modal-sm {
      max-width: 570px !important;
    }
    .ac-modal-sm .ac-form-grid,
    .ac-modal-sm .ac-form-grid1 {
      grid-template-columns: 1fr !important;
    }
    .ac-alert-danger {
      background-color: #FDF2F2;
      border: 1px solid #F8B4B4;
      color: #9B1C1C;
      padding: 12px 16px;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 500;
      margin-bottom: 16px;
    }
    .ac-alert-danger p {
      margin: 0 0 4px;
    }
    .ac-alert-danger p:last-child {
      margin-bottom: 0;
    }
    .ac-section-header { background: #21236a; color: #fff; font-size: 13px; font-weight: 600; padding: 8px 14px; border-radius: 8px; margin-bottom: 14px; }
    .ac-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0px 20px; 
      margin-bottom: 0px; }
    .ac-form-grid-3 { grid-template-columns: 1fr 1fr 1fr; }
    .ac-grid-email-code-phone { grid-template-columns: 2fr 1.2fr 2fr; }
    .ac-form-group { display: flex; flex-direction: column; gap: 6px;
       margin-bottom: 20px; position: relative; }
    .ac-label { font-size: 12px; font-weight: 500; color: #000; font-weight: 500; }
    .ac-form-group:has(input[required], select[required], textarea[required]) .ac-label::after,
    .form-group:has(input[required], select[required], textarea[required]) label::after {
      content: " *";
      color: #e8453c;
      font-weight: bold;
    }
    .ac-input {border: 1px solid var(--Color-Grey-Grey-500, #BCBFC5);border-radius: 6px;
       padding: 7px 12px; font-size: 13px; color: #393B40; background: #fff; outline: none;
        width: 100%; box-sizing: border-box; font-weight: 400; box-shadow: 0px 1px 2px 0px #00000014;
 }
    .ac-input::placeholder { color: #393B40}
    .ac-input:focus { border-color: #303088;   }
    .ac-textarea {  border: 1px solid var(--Color-Grey-Grey-500, #BCBFC5);border-radius: 12px;
      padding: 7px 12px; font-size: 13px; color: #393B40; background: #fff; 
      outline: none; width: 100%; resize:none!important; box-sizing: border-box; 
       font-weight: 400; }
    .ac-textarea::placeholder { color: #303088; }
    .ac-textarea:focus {  border-color: #303088;  }
    .ac-select-wrap { position: relative; display: flex; align-items: center; }
    .ac-select { appearance: none; -webkit-appearance: none; border: 1px solid var(--Color-Grey-Grey-500, #BCBFC5);
      border-radius: 6px; padding: 7px 32px 7px 14px; font-size: 13px; color: #393B40; background: #fff; outline: none; width: 100%; cursor: pointer; box-sizing: border-box; font-weight: 400; font-family: inherit; }
    .ac-select:focus { border-color: #303088; }
    .ac-sel-arrow { position: absolute; right: 12px; pointer-events: none; }
    .ac-phone-row { display: flex; gap: 8px; }
    .ac-code-wrap { position: relative; width: 88px; flex-shrink: 0; }
    .ac-code-select { padding-right: 24px !important; }
    .ac-phone-input { flex: 1; }
    .ac-multiselect-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; border: 1px solid #DCDDDE; border-radius: 18px; padding: 5px 10px; min-height: 38px; background: #fff; }
    .ac-tags { display: flex; flex-wrap: wrap; gap: 5px; }
    .ac-tag {display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #E8EAF4;
  color: #000;
  font-size: 13px;
  font-weight: 400;
  border-radius: 6px;
  padding: 0px 9px;
  box-shadow: 0px 1px 2px 0px #00000014;
  border: 1px solid var(--Color-Grey-Grey-300, #DCDDDE); }
    .ac-tag-remove { background: none; border: none; cursor: pointer; color: #21236a; font-size: 14px; padding: 0; line-height: 1; }
    .ac-multiselect-wrap .ac-select { border: none; padding: 2px 24px 2px 4px; min-width: 60px; border-radius: 0; box-shadow: none; }
    .ac-modal-footer {display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 7px 26px 15px;
  flex-shrink: 0;
  position: sticky;
  bottom: 0;
  background: #fff;
  z-index: 2; }
    .ac-btn-cancel {background: transparent;
  color: #DF001B;
  border: 1px #DF001B solid;
  border-radius: 8px;
  padding: 9px 32px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s; }
    .ac-btn-cancel:hover { background: #DF001B; color: #fff; }
    .ac-btn-save {background: #303088;
  color: #fff;
  border: 1px #303088 solid;
  border-radius: 8px;
  padding: 9px 32px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background .15s; }
    .ac-btn-save:hover { background: #2e3080; }
    @media (max-width: 640px) { .ac-form-grid { grid-template-columns: 1fr; } .ac-form-grid-3 { grid-template-columns: 1fr; gap:0 } .ac-grid-email-code-phone { grid-template-columns: 1fr; } }

    /* Custom searchable dropdown */
    .ac-dropdown { position: relative; }
    .ac-dropdown-trigger { width: 100%; display: flex; align-items: center; gap: 8px;
      justify-content: space-between; background: #fff; border: 1px solid var(--Color-Grey-Grey-500, #BCBFC5);
       border-radius: 6px; padding: 7px 14px; font-size: 13px; color: #393B40;
       cursor: pointer;font-weight: 400; transition: border-color 0.2s; text-align: left; box-shadow: 0px 1px 2px 0px #00000014;
 }
    .ac-dropdown-trigger:focus, .ac-dropdown.open .ac-dropdown-trigger { border-color: #21236A; outline: none; }
    .ac-dropdown-value { flex: 1; color: #9CA3AF; min-width: 0; white-space: normal; overflow-wrap: break-word; word-break: break-word; }
    .ac-dropdown-value.selected { color: #393B40; }

    /* Multi-select field — holds tag chips */
    .ac-multiselect .ac-dropdown-trigger { min-height: 38px; align-items: center; }
    .ac-ms-field { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; flex: 1; min-width: 0; }
    .ac-ms-field .ac-dropdown-value { flex: 0 1 auto; }
    .ac-dropdown-panel { display: none; position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: #fff; border: 1px solid #E5E7EB; border-radius: 12px; box-shadow: 0 8px 24px rgba(0,0,0,0.12); z-index: 200; overflow: hidden; }
    .ac-dropdown.open .ac-dropdown-panel { display: block; }
    .ac-dropdown-search-wrap { padding: 10px 10px 6px; }
    .ac-dropdown-search { width: 100%; border: 1px solid #E5E7EB; border-radius: 8px; padding: 7px 12px; font-size: 13px; color: #393B40; outline: none; font-family: inherit; box-sizing: border-box; background: #FAFAFA; }
    .ac-dropdown-search:focus { border-color: #21236A; background: #fff; }
    .ac-dropdown-search::placeholder { color: #9CA3AF; }
    .ac-dropdown-list { list-style: none; margin: 0; padding: 4px 0 8px; max-height: 180px; overflow-y: auto; }
    .ac-dropdown-item { padding: 8px 14px; font-size: 13px; color: #393B40; cursor: pointer; transition: background 0.15s; white-space: normal; overflow-wrap: break-word; word-break: break-word; }
    .ac-dropdown-item:hover { background: #F3F4F4; }
    .ac-dropdown-item.active { color: #21236A; font-weight: 600; background: #EEF0FA; }
    .ac-dropdown-item.hidden { display: none; }
    .ac-dropdown-panel { min-width: 180px; }
    /* Multi-select trigger: show tags inline, clip overflow */
    .ac-dropdown-multi .ac-dropdown-trigger { overflow: hidden; }
    .ac-dropdown-multi .ac-dropdown-value.ac-tags { flex: 1; display: flex; flex-wrap: nowrap; overflow: hidden; gap: 4px; min-height: 20px; }

    /* Visually hidden select for HTML5 required validation */
    .ac-select-hidden {
      position: absolute !important;
      bottom: 20px !important;
      left: 50% !important;
      opacity: 0 !important;
      pointer-events: none !important;
      width: 1px !important;
      height: 1px !important;
      padding: 0 !important;
      margin: 0 !important;
      border: 0 !important;
      z-index: -1 !important;
    }

/* ============================================================
   NEW DASHBOARD REDESIGN
   Reference: 3-col layout — left (navy stat), center (charts), right (status)
============================================================ */



/* Logout with label */
.nav-logout-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  cursor: pointer;
}
.nav-logout-label {
  font-size: 9px;
  color: rgba(255,255,255,0.35);
  font-weight: 600;
  letter-spacing: 0.6px;
}

/* New pill header */
.db-new-hdr {
  background: var(--navy) !important;
  border-radius: 16px !important;
  margin: 10px 10px 0 !important;
  padding: 10px 18px !important;
  justify-content: space-between !important;
  flex-shrink: 0;
  border-bottom: none !important;
  min-height: auto !important;
}
.db-new-hdr-user {
  display: flex;
  align-items: center;
  gap: 12px;
}
.db-new-hdr-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(255,255,255,0.25);
  flex-shrink: 0;
}
.db-new-hdr-name {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 1px;
}
.db-new-hdr-role {
  color: rgba(255,255,255,0.55);
  font-size: 11px;
  font-weight: 400;
}
.db-new-hdr-cap {
  background: rgba(0,0,0,0.22);
  border-radius: 14px;
  width: 200px;
  height: 48px;
  flex-shrink: 0;
}

/* 3-column content grid */
.db-new-grid {
  display: grid;
grid-template-columns: 240px 1fr 172px;
  gap: 20px;
padding: 0px 0px;
  flex: 1;
  overflow: hidden;
  min-height: 0;
    @media (max-width: 1199px) {
grid-template-columns: 1fr;
padding-top: 0px;
overflow-y: auto;
    }
}
.db-new-left {
  display: flex;
  flex-direction: column;
  gap: 29px;
  overflow: hidden;
      @media (max-width: 1199px) {
  display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    overflow: visible;
      }
}
  .db-new-left .db-new-stat:last-child {
       @media (max-width: 1199px) {
 grid-column: 1 / -1;
       }
   
  }
.db-new-right{
display: flex;
  flex-direction: column;
  gap: 14px;
  overflow: hidden;
  /* status cards: 2×2 grid on tablet/mobile */
  @media (max-width: 1199px) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    overflow: visible;
  }
}
.db-new-center {
  display: flex;
  flex-direction: column;
  gap: 20px;
  overflow: hidden;
  min-height: 0;
    @media (max-width: 1199px) {
  gap: 20px;
    }
}

/* Navy stat cards */
.db-new-stat {
 
background: var(--navy);
  border-radius: 22px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
  width: 240px;
  height: 267px;
  align-items: center;
  gap:9px;
    @media (max-width: 1199px) {
width: 100%;
height: 100%;
    }
}
.db-new-stat-label {
 font-size: 18px;
  font-weight: 400;
  color: #fff;
      @media (max-width: 767px) {
 font-size: 12px;
      }
}
.db-new-stat-num {
  font-size: 70px;
  font-weight: 400;
  color: #fff;
  line-height: 1;
  letter-spacing: -2px;
   @media (max-width: 767px) {
font-size: 47px;
   }
}

/* Lavender status cards */
.db-new-status {

  background: rgba(100,102,190,0.40);
  border-radius: 14px;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
width: 170px;
  height: 205px;
  align-items: center;
      @media (max-width: 1199px) {
width: 100%;
  height: 100%;

      }
}
.db-new-status-label {
 font-size: 12px;
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  margin-bottom: 9px;
    @media (max-width: 1199px) {
 font-size: 14px;
    }
}
.db-new-status-num {
  font-size: 40px;
  font-weight: 400;
  color: #fff;
  line-height: 1;
  letter-spacing: -1px;
     @media (max-width: 1199px) {
 font-size: 44px;
    }
}

/* White chart cards */
.db-new-chart-card {
background: #fff;
  border-radius: 50px;
  padding: 22px 30px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 0;
  border: 2px solid #303088;
      @media (max-width: 1199px) {
  padding: 20px;
      }
}
.db-new-chart-card.chart-bar { flex: 1.5; }
.db-new-chart-card.chart-status { flex: 1; }

.db-new-chart-hdr {
  display: flex;
  align-items:center;
  justify-content: space-between;
  margin-bottom: 8px;
  flex-shrink: 0;
}
.db-new-chart-title {
font-size: 22px;
  font-weight: 500;
        @media (max-width: 1199px) {
font-size: 15px;
        }
          @media (max-width: 570px) {
font-size: 10px;
        }

}
.db-new-chart-sub {
font-size: 17px;
  color: #6B7280;
  font-weight: 400;
    @media (max-width: 1199px) {
display: none;
    }
}

/* Filter pills */
.db-new-pills { display: flex; gap: 10px; flex-shrink: 0; }
.db-new-pill {
 padding: 5px 23px;
  border-radius: 15px;
  border: 1px solid var(--navy);
  font-size: 15px;
  cursor: pointer;
  background: #fff;
  color:#303088;

  transition: background .15s, color .15s;
    @media (max-width: 767px) {
padding: 4px 10px;font-size: 10px;
border-radius: 15px;

    }
}
.db-new-pill.active {background: var(--navy);
  color: #fff;
  box-shadow: 7.57px 7.57px 15.15px 0px #C5C9CF;
  border: 1px solid var(--navy);
}

/* Bar chart canvas wrapper */
.db-new-bar-wrap { flex: 1; position: relative; min-height: 250px; }

/* Student Status bars */

.db-sts-bars {
flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 25px;
   @media (max-width: 767px) {
  gap: 15px;
   }
}
.db-sts-row { display: grid;

  justify-content: space-between;
  gap: 100px;
  grid-template-columns: 1fr 148px;
 @media (max-width: 767px) {
 grid-template-columns: 1fr;
   gap: 10px;
 }
}
.db-sts-count { font-size: 16px;
  color: #323133;
  text-align: right;
  font-weight: 500;
  margin-bottom: 7px; }
.db-sts-track { width: 100%; background: #e7e8f2; border-radius: 13px; height: 18px; overflow: hidden; }
.db-sts-fill { height: 100%; border-radius: 29px; }
.db-sts-legend {
  display: flex;
  flex-direction: column;
  justify-content:space-between;
  flex-shrink: 0;
  gap: 6px;
  min-width: 90px;
}
.db-sts-legend-item { display: flex; align-items: center; gap: 17px;
   font-size: 18px; color: #303088; font-weight: 400; white-space: nowrap;
   @media (max-width: 767px) {
 font-size: 14px;
   }
  }
.db-sts-dot { width: 25px;
  height: 25px;
  border-radius: 5px;
  flex-shrink: 0; }

/* Wrapper for new content + table scroll */
.db-new-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 0;
}
.db-lower-section {
  overflow-y: auto;
  flex-shrink: 0;
  padding: 0 10px 10px;
  scrollbar-width: thin;
  scrollbar-color: var(--border) transparent;
}

/* Responsive: hide 3-col on mobile */
@media (max-width: 768px) {
  .db-new-grid {
    grid-template-columns: 1fr;
    overflow-y: auto;
    flex: none;
  }
  /* Stat cards: 2 on top, 3rd (Total Centers) full-width below */


  .db-new-right { flex-direction: row; flex-wrap: wrap; }
  .db-new-stat, .db-new-status { flex: 1; min-width: 100%; min-height: 134px;  }
  .db-new-hdr-cap { display: none; }
  .sidebar { width: 90px; }

  .nav-label { display: none; }

  .db-new-chart-card.chart-bar {
    flex: none;
    height: 250px;
  }

  .db-new-chart-card.chart-bar .db-new-bar-wrap {
    min-height: auto;
  }
}
    .ac-dropdown-multi .ac-tag { white-space: nowrap; background: #fff;
       border: 1px solid #DCDDDE; color: #393B40; 
       border-radius: 8px; font-size: 12px; font-weight: 400; padding: 0px 8px; gap: 4px; }
    .ac-dropdown-multi .ac-tag-remove { color: #6B7280; font-size: 13px; }

    /* Date picker calendar */
    .ac-datepicker { position: relative; }
    .ac-datepicker-trigger { gap: 8px; }
    .ac-datepicker-panel { min-width: 260px; padding: 0; right: auto; left: 0; }
    .ac-datepicker.open .ac-datepicker-panel { display: block; }
    .ac-datepicker.open .ac-datepicker-trigger { border-color: #21236A; outline: none; }
    .acdp-header { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px 8px; }
    .acdp-month-year { font-size: 13px; font-weight: 600; color: #21236a; }
    .acdp-nav { background: none; border: 1px solid #E5E7EB; border-radius: 6px; width: 26px; height: 26px; font-size: 18px; line-height: 1; cursor: pointer; color: #6B7280; display: flex; align-items: center; justify-content: center; padding: 0; }
    .acdp-nav:hover { background: #F3F4F4; }
    .acdp-grid { display: grid; grid-template-columns: repeat(7, 1fr); padding: 0 10px 12px; gap: 2px; }
    .acdp-dow { font-size: 11px; font-weight: 600; color: #9CA3AF; text-align: center; padding: 4px 0; }
    .acdp-day { background: none; border: none; border-radius: 6px; width: 100%; aspect-ratio: 1; font-size: 13px; color: #393B40; cursor: pointer; display: flex; align-items: center; justify-content: center; font-family: inherit; }
    .acdp-day:hover { background: #EEF0FA; color: #21236a; }
    .acdp-today { font-weight: 700; color: #21236a; }
    .acdp-sel { background: #21236a !important; color: #fff !important; font-weight: 600; }

    .ed-fieldTwo{
max-width: 154px;
  width: 100%;
  justify-content: start;
    }

    .ed-info-section{
      max-width: 800px;
    }
    .ed-footer1{
  max-width: 700px;
    }

.studentStausDiv{
  display: flex;
  width:100%;
  flex-direction: column;
}

.fillNumberBg1{
  background: #303088;
 width: 80%;

}
.dotNumberBg1{
    background: #303088;
}
   
.fillNumberBg2{
  background: #6464A6;
   width: 30%;

}
.dotNumberBg2{
    background: #6464A6;
}


.fillNumberBg3{
  background: #3636BC;
     width: 30%;

}
.dotNumberBg3{
    background: #3636BC;
}

.fillNumberBg4{
  background: #7D7DCA;
 width: 70%;
}
.dotNumberBg4{
    background: #7D7DCA;
}
.dotNumberTxtMain1{
  color: #303088
}
.dotNumberTxtMain2{
  color: #6464A6
}
.dotNumberTxtMain3{
  color: #3636BC
}
.dotNumberTxtMain4{
  color: #7D7DCA
}
.statusBgSec1{
  background: #9097D7;
}
.statusBgSec2{
  background: #5759B3;
}
.statusBgSec3{
  background: #3B3C94;
}
.statusBgSec4{
  background: #303088;
}
.ac-form-grid1{ 

  grid-template-columns: 2fr 1fr;


}
  
    
    /* Selected chips area pinned to the bottom of the popup (multi-select) */
    .ac-ms-selected { display: none; flex-wrap: wrap; gap: 6px; padding: 10px 12px; border-top: 1px solid #EEF0F2; }
    .ac-ms-selected.has-items { display: flex; }
    .ac-ms-selected .ac-tag { display: inline-flex; align-items: center; gap: 6px; background: #E8EAF4; color: #21236A; font-size: 13px; font-weight: 500; border-radius: 8px; padding: 4px 10px; line-height: 1.2; }
    .ac-ms-selected .ac-tag-remove { background: none; border: none; cursor: pointer; color: #6B7280; font-size: 14px; padding: 0; line-height: 1; display: inline-flex; }
    .ac-ms-selected .ac-tag-remove:hover { color: #21236A; }

/* ============================================================
   CENTER VERIFICATION RESULT  (.cvr-*)
============================================================ */
.cvr-card {
  display: flex;
  background: #fff;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(46, 46, 143, 0.08);
 
}
/* Left navy panel with centered emblem */
.cvr-left {
  flex: 1 1 50%;
  background: #2E2E8F;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
}
.cvr-emblem {
  width: 150px;
  height: 150px;
  object-fit: contain;
}
/* Right content panel */
.cvr-right {
  flex: 1 1 50%;
 background: #CBCBE1;
  padding: 34px 44px 48px;
  display: flex;
  flex-direction: column;
}
/* Search box */
.cvr-search {
  align-self: flex-end;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 359px;
  background: #fff;
  border: 1px solid #E1E2EE;
  border-radius: 10px;
 padding: 3px 20px 3px 40px;
  margin-bottom: 76px;
  @media (max-width: 1199px) {
  margin-bottom:69px;
    max-width: 259px;
      margin-bottom: 60px;
  }
}
.cvr-search input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-family: inherit;
  font-size: 16px;
  color: #8E9198;
  min-width: 0;
  font-weight: 500;
    @media (max-width: 767px) {
  font-size: 10px;
    }
}
.cvr-search input::placeholder { color: #9CA3AF; }
.cvr-search-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 6px;
  display: inline-flex;
  align-items: center;
}
/* Section titles */
.cvr-title {
color: #303088;
  font-size: 22px;
  font-weight: 600;
  margin: 0 0 18px;
    @media (max-width: 767px) {
  font-size: 18px;
    }
}
.cvr-title-courses { margin-top: 23px;
  border-top: 1px #fff solid;
  padding-top: 19px; }
/* Details table */
.cvr-table { display: flex; flex-direction: column; gap: 5px; }
.cvr-row {
display: grid;
  grid-template-columns: 130px 18px 1fr;
  align-items: center;
  padding: 10px 7px;
  font-size: 14px;
  border-bottom: 1px solid #00000040;
   @media (max-width: 767px) {
  font-size: 10px;
   }
  &:first-child{  padding-top: 0px;}
&:last-child{ border-bottom: none; padding-bottom: 0px;}
}

.cvr-lbl { color: #000; font-size: 16px; font-weight:400; 
@media (max-width: 767px) {
  font-size: 10px;
}
}
.cvr-sep { color: #44464F; text-align: center; }
.cvr-val { color: #1F2024; font-weight: 500; }
/* Courses list */
.cvr-courses {
  list-style: none;
  margin: 0;
  padding: 0;
}
.cvr-courses li {
  padding: 10px 7px;
  font-size: 14px;
  color: #000;
  font-weight: 400;
border-bottom: 1px solid #00000040;
   @media (max-width: 767px) {
  font-size: 10px;
   }
&:first-child{  padding-top: 0px;}
&:last-child{ border-bottom: none; padding-bottom: 0px;}
}
.cvr-viewmore {
  display: inline-block;
  margin-top: 20px;
  padding-left: 7px;
  color: #2E2E8F;
  font-size: 13px;
  font-weight: 400;
  text-decoration: none;
}
.cvr-viewmore:hover { text-decoration: underline; }

/* Responsive: stack on small screens */
@media (max-width: 860px) {
  .cvr-card { flex-direction: column; min-height: 0; }
  .cvr-left { padding: 32px; }
  .cvr-emblem { width: 110px; height: 110px; }
  .cvr-right { padding: 26px 22px 34px; }
  .cvr-search { align-self: stretch; width: 100%; }
  .cvr-row { grid-template-columns: 110px 16px 1fr; }
}

/* Full-page wrapper for the standalone verification result */
.cvr-page {
  min-height: 100vh;
  background: #EEF0F8;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
  font-family: "Inter", sans-serif;
}
.cvr-page .cvr-card {
  width: 100%;

}

/* ── Verification result arranged like the login split card (full page) ── */
.cvr-page {
  height: 100vh;
  width: 100vw;
  padding: 20px;
  background: #fff;
  overflow: hidden;
  align-items: stretch;
  justify-content: stretch;
}
.cvr-page .cvr-card {
  width: 100%;
  height: 100%;
  max-width: none;
  border-radius: 32px;
  box-shadow: none;
  min-height: 0;
}
.cvr-page .cvr-left {
  width: 50%;
  flex: 0 0 50%;
  background: #303088;
    @media (max-width: 992px) {
width: 100%;
    }
}
.cvr-page .cvr-right {
  flex: 1;
 background: #CBCBE1;
padding: 69px 89px;
  overflow-y: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  @media (max-width: 1199px) {
padding:40px;

  }
}
.cvr-content {
  width: 100%;
max-width: 100%;
  display: flex;
  flex-direction: column;
}
@media (max-width: 767px) {
  .cvr-page { height: auto; min-height: 100vh; padding: 12px; overflow: auto; }
  .cvr-page .cvr-card { flex-direction: column; height: auto; }
  .cvr-page .cvr-left { width: 100%; flex: none; padding: 100px 30px; }
  .cvr-page .cvr-right { padding: 30px 24px; }
}

/* ── Fixed search (top) + fixed View More (bottom) + scrolling middle ── */
.cvr-page .cvr-right {
  align-items: stretch;
  justify-content: center;
  overflow: hidden;
}
.cvr-page .cvr-content {
  height: 100%;
  min-height: 0;
}
.cvr-content .cvr-search { flex-shrink: 0; }
.cvr-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
}
.cvr-content .cvr-viewmore {
  flex-shrink: 0;
  margin-top: 0;
  padding-top: 16px;
}

/* ============================================================
   ODC OVERALL KPI CARD  (.odc-*)
============================================================ */
.odc-card {
  background: #fff;
  border: 1px solid #EEF0F6;
  border-radius: 16px;
  box-shadow: 0 4px 18px rgba(46, 46, 143, 0.06);
  padding: 20px 24px 26px;
  margin-bottom: 20px;
}
.odc-hdr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}
.odc-title {
  margin: 0;
  color: #2E2E8F;
  font-size: 20px;
  font-weight: 700;
}
.odc-hdr-tools { display: flex; align-items: center; gap: 12px; }
.odc-style-label { color: #9CA3AF; font-size: 13px; }
.odc-select-wrap { position: relative; display: inline-flex; align-items: center; }
.odc-select {
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid #E1E2EE;
  border-radius: 8px;
  background: #fff;
  padding: 7px 32px 7px 14px;
  font-size: 13px;
  font-family: inherit;
  color: #393B40;
  cursor: pointer;
}
.odc-select-arrow { position: absolute; right: 12px; pointer-events: none; }
.odc-expand-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 6px;
  display: inline-flex;
  align-items: center;
}
.odc-body {
  display: flex;
  align-items: center;
  gap: 36px;
  flex-wrap: wrap;
}
.odc-chart-wrap {
  position: relative;
  width: 280px;
  height: 260px;
  flex-shrink: 0;
}
.odc-menu-btn {
  position: absolute;
  top: 6px;
  right: -24px;
  width: 34px;
  height: 30px;
  background: #1F2024;
  border: none;
  border-radius: 7px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
/* KPI stat cards */
.odc-kpis {
  flex: 1 1 300px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 240px;
  max-width: 420px;
}
.odc-kpi {
  background: #fff;
  border: 1px solid #ECEDF2;
  border-top-width: 3px;
  border-radius: 8px;
  padding: 14px 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.odc-kpi-blue { border-top-color: #2D6CDF; }
.odc-kpi-green { border-top-color: #19A463; }
.odc-kpi-label {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: #8E9198;
}
.odc-kpi-num { margin: 0; font-size: 30px; font-weight: 700; line-height: 1.1; }
.odc-kpi-blue .odc-kpi-num { color: #1F6FEB; }
.odc-kpi-green .odc-kpi-num { color: #16A34A; }

@media (max-width: 640px) {
  .odc-body { gap: 20px; justify-content: center; }
  .odc-chart-wrap { width: 220px; height: 220px; }
  .odc-menu-btn { right: 6px; }
  .odc-kpis { max-width: 100%; }
}

/* ── Mobile: no inner content scroll, let the whole page scroll ── */
@media (max-width: 767px) {
  .cvr-page .cvr-right { overflow: visible; }
  .cvr-scroll { overflow: visible; flex: none; min-height: 0; padding-right: 0; }
}



/* ── Mobile fix: drop all flex-height/overflow trickery, use normal page scroll ── */
@media (max-width: 767px) {
  .cvr-page {
    display: block;
    height: auto;
    min-height: 100vh;
    width: 100%;
    overflow: visible;
    padding: 12px;
  }
  .cvr-page .cvr-card {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
  }
  .cvr-page .cvr-left { width: 100%; flex: none; }
  .cvr-page .cvr-right {
    display: block;
    height: auto;
    overflow: visible;
    padding:70px 24px;
  }
  .cvr-page .cvr-content {
    display: block;
    height: auto;
    min-height: 0;
  }
  .cvr-scroll {
    display: block;
    height: auto;
    overflow: visible;
    flex: none;
    min-height: 0;
    padding-right: 0;
  }
}

/* ── Tablet+mobile scroll fix: body has global overflow:hidden, so make
   .cvr-page itself the scroll container (fixed viewport height, scrolls inside) ── */
@media (max-width: 1024px) {
  .cvr-page {
    display: block;
    height: 100vh;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .cvr-page .cvr-card {
    display: flex;
    height: auto;
    min-height: 100%;
  }
  .cvr-page .cvr-right {
    display: block;
    height: auto;
    overflow: visible;
  }
  .cvr-page .cvr-content {
    display: block;
    height: auto;
    min-height: 0;
  }
  .cvr-scroll {
    display: block;
    height: auto;
    overflow: visible;
    flex: none;
    min-height: 0;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .cvr-page .cvr-card { flex-direction: column; }
}

/* ============================================================
   CERTIFICATE VERIFICATION RESULT  (.cvr-cert)
============================================================ */

/* Photo + search top row */
.cert-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.cert-head .cvr-search {
  margin-bottom: 0;
  align-self: flex-end;
  flex: 0 1 230px;
}
.cert-photo { flex: 0 0 auto; }
.cert-photo img {
width: 130px;
  height: 180px;
  object-fit: cover;
  border-radius: 12px;

  display: block;
  @media (max-width: 767px) {
width: 91px;
  height: 126px;
  border-radius: 12px;
  }
}
/* Details table: wider label column + odd-row striping to match design */
.cert-table .cvr-row {
  grid-template-columns: 180px 30px 1fr !important;
 border: none!important; border-radius: 6px; align-items: center;
 padding: 10px 12px !important;
}
.cert-table .cvr-row:nth-child(even) { background: transparent; }
.cert-table .cvr-row:nth-child(odd) { background: #fff; }

@media (max-width: 767px) {
  .cert-table .cvr-row {
    padding: 10px 12px !important;
    grid-template-columns: 130px 20px 1fr !important;
  }
}

@media (max-width: 767px) {
  .cvr-cert .cvr-content { max-width: 100%; }

  .cert-head .cvr-search { flex: none; width: 100%; }
}
.cvr-content{
  .cvr-search{
    @media (max-width: 767px) {
max-width: 153px;
  padding: 3px 12px 3px 17px;
    }
  }
}

@media (max-width: 767px) {
  #verify-center-second {
    max-width: 250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 30px !important;
  }
}

/* ============================================================
   CENTER VERIFICATION — enter code form  (.cvr-verify)
============================================================ */
.cvr-verify .cvr-right {
  display: flex;
  align-items: center;
  justify-content: center;
}
.cvr-verify-form {
  width: 100%;
  max-width: 360px;
  display: flex;
  flex-direction: column;
}
.cvr-verify-title {
text-align: center;
  color: #2C317F;
  font-size: 24px;
  font-weight: 500;
  margin: 0 0 24px;
      @media (max-width: 767px) {
  font-size: 18px;
      }
}
.cvr-field { display: flex; flex-direction: column; margin-bottom: 32px; }
.cvr-field-label { font-size: 13px;
  color: #2C2D30;
  margin-bottom: 12px;
  font-weight: 400;}
.cvr-field-input {
width: 100%;
  border: 1px solid var(--Color-Grey-Grey-500, #BCBFC5);
  border-radius: 8px;
  background: #fff;
padding: 10px 25px;
  font-size: 16px;
  letter-spacing: 4px;
  color: #595959;
  outline: none;
  box-sizing: border-box;
}
.cvr-field-input::placeholder { letter-spacing: 2px; color: #9CA3AF; }
.cvr-field-input:focus { border-color: #2E2E8F; }
.cvr-verify-btn {
align-self: center;
  background: #2E2E8F;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 13px 30px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: background 0.15s;
}
.cvr-verify-btn:hover { background: #3a3aa6; }

/* Date-range picker: use fixed positioning so .ctr-card overflow:hidden cannot clip it.
   Coordinates are set inline by JS (positionPopup). */
.datepicker-popup {
  position: fixed;
  top: auto;
  left: auto;
}

/* Date-range picker as a centered modal popup (same calendar design inside) */
.datepicker-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(17, 17, 40, 0.38);
  z-index: 9998;
}
.datepicker-backdrop.show { display: block; }

.datepicker-popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  z-index: 9999;
}
.datepicker-popup.show {
  display: block;
  animation: dpFadeCenter 0.18s ease forwards;
}
@keyframes dpFadeCenter {
  from { opacity: 0; transform: translate(-50%, -46%); }
  to   { opacity: 1; transform: translate(-50%, -50%); }
}
/* Keep it within the viewport on small screens */
@media (max-width: 820px) {
  .datepicker-popup { max-width: calc(100vw - 24px); max-height: 88vh; overflow: auto; }
}

/* Calendar month/year selects: trigger text is white (on navy header), but the
   open option list must be dark-on-white or the items are invisible. */
.month-dropdown option,
.year-dropdown option {
  color: #21236A;
  background: #fff;
}

/* Keep the Date Range trigger label on one line */
.date-trigger { white-space: nowrap; }

/* Tablet: let the status filter size to its full label (like the Date Range trigger),
   instead of shrinking to "Filter : St..." */
@media (max-width: 1199px) {
  .ctr-exam-toolbar .acad-membership-wrap { flex: 0 0 auto; min-width: 0; }
  .ctr-exam-toolbar .acad-membership-select {
    width: auto;
    min-width: max-content;
    white-space: nowrap;
    text-overflow: clip;
    padding: 8px 30px 8px 12px;
  }
}

/* Students list toolbar: date range + type + apply + add (right cluster) */
.ctr-filter-group {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ctr-apply-btn {
  padding: 7px 18px;
  border: 1.5px solid #303088;
  border-radius: 8px;
  background: var(--white);
  color: #303088;
  box-shadow: 0px 1px 2px 0px #00000014;
  font-size: 13px;
  font-weight: 400;
  cursor: pointer;
  font-family: inherit;
  transition: border-color .15s, color .15s;
}
.ctr-apply-btn:hover { border-color: #303088; color: #fff; background: #303088; }
@media (max-width: 767px) {
  .ctr-filter-group { width: 100%; justify-content: flex-start; }
}

.flexPickerAdMain{
  display: flex;
  gap:10px;
}
@media (max-width: 767px) {
  .flexPickerAdMain { width: 100%; align-items: center; gap: 8px; flex-wrap: wrap; }
  .flexPickerAdMain .date-filter-btn { flex: 1 1 calc(50% - 4px); justify-content: center; }
  .flexPickerAdMain .acad-membership-wrap { flex: 1 1 calc(50% - 4px); min-width: 0; }
  .flexPickerAdMain .acad-membership-select { width: 100%; min-width: 0; }
  .flexPickerAdMain .export-btn { flex: 1 1 calc(50% - 4px); justify-content: center; }
  .flexPickerAdMain .reset-filter-btn { flex: 1 1 calc(50% - 4px); text-align: center; justify-content: center; width: auto; }
}
/* Table status label (e.g. green "Completed") */
.tbl-status { font-size: 12px; font-weight: 500; }
.status-completed { color: #1A9E5C; }
.status-pending { color: #E8862B; }
.status-failed { color: #E0413C; }

/* Status as a rounded pill/tag (light tinted background + colored text) */
.tbl-status {
display: inline-flex;
  align-items: center;
padding: 6px 6px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  svg{
    margin-right: 5px;
  }
}
.status-completed { color: #0B5C22;
  background: #E1FCE9; }
.status-pending   { color: #B5791A; background: #FBF1DC; }
.status-failed    { color: #C5322D; background: #FBE4E3; }
.status-onhold    { color: #C5322D; background: #FBE4E3; }
.status-applied   { color: #1F6FEB; background: #E8F0FE; }

/* ===== Add Students modal extras ===== */
.ac-textarea { resize: vertical; min-height: 84px; font-family: inherit; padding-top: 10px; }

/* Code + Phone pair (sits in one grid cell) */
.ac-codephone-wrap { display: flex; gap: 10px; }
.ac-code-group { flex: 0 0 92px; }
.ac-phone-group { flex: 1; min-width: 0; }
.ac-code-select { appearance: none; -webkit-appearance: none; cursor: pointer; }

/* Upload row: dropzone + uploaded file card */
.ac-upload-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: stretch;
  margin-bottom: 40px;
}
.ac-dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
border: 1px solid #303088;
  border-radius: 6px;
  background: transparent;
  padding: 22px 16px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}
.ac-dropzone:hover { border-color: #21236A; background: #F7F8FE; }
.ac-dz-icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #E5E7EB;
  background: #fff;
  box-shadow: 0px 1px 2px 0px #00000014;
  margin-bottom: 6px;
}
.ac-dz-icon { margin-bottom: 2px; }
.ac-dz-title { font-size: 13px;
  color: #2C2D30;
  font-weight: 600;}
.ac-dz-sub { font-size: 12px;
  color: #676A72;
  font-weight: 400; display: block; margin-bottom: 0px;}
.ac-dz-btn {
display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 8px;
  background: #1F2024;
  color: #fff;
  font-size: 12px;
  font-weight: 400;
  padding: 10px 22px;
  border-radius: 11px;
}
/* Uploaded file card */
.ac-file-card {
border: 1px solid #303088;
  border-radius: 6px;
  padding: 12px 14px;
  background: #fff;
  align-self:flex-start;
  display: flex;
  gap:10px;
  justify-content: space-between;
}
.ac-file-top { width: 100%; display: flex; align-items: center; 
   flex-direction: column; }
.ac-file-thumb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  border-radius: 6px;
border: 1px solid var(--Color-Grey-Grey-200, #EEEEEE);
  background: transparent;
}
.ac-file-name { font-size: 12px; color: #111B37; font-weight: 500; flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ac-file-size {font-size: 13px;
  color: #4B5675;
  font-weight: 400; }
.ac-file-remove {

  background: none!important;
  border: none!important;

}
.ac-file-remove:hover { color: #21236A; border-color: #21236A; }
.ac-file-progress { width: 100%;
  margin-top: 7px;
  height: 4px;
  border-radius: 4px;
  background: #ECEDF2;
  overflow: hidden; }
.ac-file-progress > span { display: block;
  height: 100%;
  width: 58%;
  background: #1F2024;
  border-radius: 6px;}

@media (max-width: 640px) {
  .ac-upload-row { grid-template-columns: 1fr; margin-bottom: 20px; }
  .ac-codephone-wrap { gap: 8px; }
}

/* Single-calendar date picker popup for modal date fields */
.ac-datepicker-pop {
  display: none;
  position: fixed;
  z-index: 100000;
}
.ac-datepicker-pop.show { display: block; }
.ac-datepicker-pop .calendar-box { min-width: 300px; }
.ac-date-input { cursor: pointer; background: #fff; }
.headerBgGrey{
  background: #E9E9F1;
  font-size: 13px;
  color: #151516;
  margin-bottom: 20px!important;
}

.browerFlexDiv1{
  display: flex;
  justify-content: space-between;
  width: 100%;
  .removeTxtmain{
    display: flex;
    gap:10px;
  }
}

/* ============================================================
   PREMIUM DATERANGEPICKER STYLE OVERRIDES (.daterangepicker)
   ============================================================ */
.daterangepicker {
  font-family: 'Inter', sans-serif !important;
  border: 1px solid #EEF0F6 !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 30px rgba(46, 46, 143, 0.08) !important;
  padding: 8px !important;
  background-color: #fff !important;
  z-index: 999999 !important;
}
/* Hide default arrows */
.daterangepicker:before, .daterangepicker:after {
  display: none !important;
}
.daterangepicker .drp-calendar {
  max-width: none !important;
  padding: 8px !important;
}
.daterangepicker .drp-calendar.left {
  padding-right: 16px !important;
}
.daterangepicker .drp-calendar.right {
  padding-left: 16px !important;
  border-left: 1px solid #ECEDF2 !important;
}
/* Headers and month titles */
.daterangepicker .calendar-table th {
  font-family: 'Inter', sans-serif !important;
  color: #303088 !important;
}
.daterangepicker .calendar-table th.month {
  color: #303088 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: capitalize !important;
}
/* Dropdowns inside calendar header */
.daterangepicker .calendar-table select.monthselect,
.daterangepicker .calendar-table select.yearselect {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #303088 !important;
  border: 1px solid #E1E2EE !important;
  border-radius: 6px !important;
  padding: 2px 4px !important;
  outline: none !important;
  background: #fff !important;
}
/* Day names header */
.daterangepicker thead tr:last-child th {
  color: #8E9198 !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  padding-bottom: 8px !important;
}
/* Day Cells */
.daterangepicker td.day {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #1F2024 !important;
  border-radius: 6px !important;
  width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
}
.daterangepicker td.day.off, 
.daterangepicker td.day.muted {
  color: #BCBFC5 !important;
}
.daterangepicker td.day:hover {
  background-color: #E8F0FE !important;
  color: #303088 !important;
}
/* Selected Active / In-range days */
.daterangepicker td.active,
.daterangepicker td.active:hover {
  background-color: #303088 !important;
  color: #fff !important;
  font-weight: 700 !important;
}
.daterangepicker td.in-range {
  background-color: #E8F0FE !important;
  color: #303088 !important;
  border-radius: 0 !important;
}
.daterangepicker td.start-date {
  border-top-left-radius: 6px !important;
  border-bottom-left-radius: 6px !important;
}
.daterangepicker td.end-date {
  border-top-right-radius: 6px !important;
  border-bottom-right-radius: 6px !important;
}
/* Left side ranges menu */
.daterangepicker .ranges {
  border-right: 1px solid #ECEDF2 !important;
  padding-right: 8px !important;
  margin: 0 !important;
}
.daterangepicker .ranges ul {
  width: 140px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
.daterangepicker .ranges li {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #676A72 !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  margin-bottom: 4px !important;
  transition: all 0.15s ease !important;
}
.daterangepicker .ranges li:hover {
  background-color: #F3F4F6 !important;
  color: #1F2024 !important;
}
.daterangepicker .ranges li.active {
  background-color: #E8F0FE !important;
  color: #303088 !important;
  font-weight: 600 !important;
}
/* Bottom buttons */
.daterangepicker .drp-buttons {
  border-top: 1px solid #ECEDF2 !important;
  padding: 8px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}
.daterangepicker .drp-selected {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #676A72 !important;
  margin-right: auto !important;
  padding: 0 !important;
}
.daterangepicker .drp-buttons .btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 6px 16px !important;
  border-radius: 8px !important;
  border: none !important;
  cursor: pointer !important;
  transition: background-color 0.15s ease !important;
  box-shadow: none !important;
  margin: 0 !important;
}
.daterangepicker .drp-buttons .cancelBtn {
  background-color: transparent !important;
  color: #676A72 !important;
  border: 1.5px solid #BCBFC5 !important;
}
.daterangepicker .drp-buttons .cancelBtn:hover {
  background-color: #F3F4F6 !important;
  border-color: #9CA3AF !important;
}
.daterangepicker .drp-buttons .applyBtn {
  background-color: #303088 !important;
  color: #fff !important;
}
.daterangepicker .drp-buttons .applyBtn:hover {
  background-color: #21236A !important;
}

/* Custom toolbar buttons styling */
.ac-toolbar-btn {
  height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff !important;
  color: #393B40 !important;
  border: 1px solid #DCDDDE !important;
  box-shadow: 0px 1px 2px 0px #00000014 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  cursor: pointer !important;
  transition: all 0.15s ease !important;
  font-family: inherit !important;
}
.ac-toolbar-btn:hover {
  border-color: #BCBFC5 !important;
  background-color: #F8F9FA !important;
  color: #1F2024 !important;
}
.ac-toolbar-btn i {
  color: #676A72 !important;
}

@media (max-width: 767px) {
  .daterangepicker {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    max-height: 85vh !important;
    overflow-y: auto !important;
    width: 90% !important;
    max-width: 340px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2) !important;
  }
  .daterangepicker .drp-calendar.left {
    padding-right: 8px !important;
  }
  .daterangepicker .drp-calendar.right {
    padding-left: 8px !important;
    border-left: none !important;
    border-top: 1px solid #ECEDF2 !important;
  }
}

/* Modern Next-Gen Loader styles */
.modern-loader {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 12px;
  background: rgba(48, 48, 136, 0.05);
  border-radius: 6px;
  animation: fadeIn 0.3s ease-in;
}

.loader-spinner {
  width: 18px;
  height: 18px;
  position: relative;
  display: inline-block;
}

.loader-spinner::before,
.loader-spinner::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid transparent;
  animation: spinPulse 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.loader-spinner::before {
  border-top-color: #303088;
  border-right-color: #303088;
  animation: spinPulse 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.loader-spinner::after {
  border-bottom-color: #C9A757;
  border-left-color: #C9A757;
  animation: spinPulse 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite 0.6s;
}

.loader-text {
  font-size: 13px;
  color: #303088;
  font-weight: 500;
  letter-spacing: 0.5px;
}

.loader-text::after {
  content: ".";
  animation: loaderDots 1.4s steps(4, end) infinite;
}

@keyframes spinPulse {
  0% {
    transform: rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: rotate(360deg);
    opacity: 1;
  }
}

@keyframes loaderDots {
  0%, 20% {
    content: ".";
  }
  40% {
    content: "..";
  }
  60% {
    content: "...";
  }
  80%, 100% {
    content: "";
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* ============================================================
   Global Full-Page Loader Overlay
   ============================================================ */
#spin:not([style*="display: none"]):not([style*="display:none"]) {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: rgba(33, 35, 106, 0.25) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  z-index: 99999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
}

#spin:not([style*="display: none"]):not([style*="display:none"]) .modern-loader {
  background: #ffffff !important;
  padding: 24px 36px !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 30px rgba(33, 35, 106, 0.15) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-direction: row !important;
  animation: fadeIn 0.3s ease-out !important;
}

#spin:not([style*="display: none"]):not([style*="display:none"]) .loader-spinner {
  width: 24px !important;
  height: 24px !important;
}

#spin:not([style*="display: none"]):not([style*="display:none"]) .loader-text {
  font-size: 15px !important;
  color: #303088 !important;
  font-weight: 600 !important;
}

/* ============================================================
   PREVENT IOS SAFARI AUTO-ZOOM ON FORM INPUT / SELECT / SEARCH FOCUS
   ============================================================ */
@media (max-width: 767px) {
  input,
  textarea,
  input[type="text"],
  input[type="search"],
  input[type="number"],
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="url"],
  input[type="date"],
  .search-box input,
  .ctr-search input,
  .ctr-search-btn,
  .acad-search-input,
  .acad-search-wrap input,
  .dataTables_filter input,
  .table-1 input,
  .searchDivMainall input,
  .v-input,
  .field-input,
  .cvr-field-input,
  .cvr-search input,
  .cvr-search-btn,
  .qb-modal-search input,
  .ac-dropdown-search {
    font-size: 16px !important;
  }
}