/* EDUHUNT V2.2.27 - Academic Coordinator Dashboard compact desktop layout (requested 2nd-image style).
   No effect on other roles or Coordinator modules. */
@media (min-width:1081px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .content:has(> .eh-ac-dashboard-fit){
    padding:14px 18px 10px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit{
    width:100%;
    min-height:calc(100dvh - var(--topbar-height) - 24px);
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .page-head{
    margin-bottom:10px;
    align-items:center;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .page-head h2{
    font-size:clamp(25px,2.25vw,30px);
    line-height:1.08;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .page-head p{
    margin-top:3px;
    line-height:1.25;
  }

  /* Six dashboard KPI buttons in one compact row on normal desktop widths. */
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card{
    min-height:102px;
    padding:10px 12px;
    border-radius:11px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-icon{
    width:32px;
    height:32px;
    border-radius:9px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-icon svg{
    width:17px;
    height:17px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-trend{
    padding:2px 6px;
    font-size:10px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card b{
    margin-top:5px;
    font-size:24px;
    line-height:1;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card > span{
    margin-top:3px;
    font-size:12px;
    line-height:1.15;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .dashboard-main-grid{
    margin-top:10px!important;
    gap:12px;
    align-items:stretch!important;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .dashboard-main-grid > .card{
    padding:13px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .card-head{
    margin-bottom:9px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .card-head h3{
    font-size:16px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .card-head p{
    margin-top:2px;
    font-size:12px;
    line-height:1.2;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-grid{
    gap:8px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-card{
    min-height:64px;
    padding:9px 10px;
    gap:9px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-card .kpi-icon{
    width:31px;
    height:31px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-card strong{
    font-size:12px;
    line-height:1.2;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-card small{
    margin-top:2px;
    font-size:11px;
    line-height:1.2;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-grid{
    gap:8px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-card{
    padding:9px 10px;
    border-radius:9px;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-card strong{
    font-size:12px;
    line-height:1.2;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-card span{
    margin-top:3px;
    font-size:11px;
    line-height:1.15;
  }

  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-card b{
    font-size:13px;
  }

  /* The dashboard is intentionally sized to the viewport, so its footer is not needed here. */
  body[data-portal-role="ACADEMIC_COORDINATOR"] .portal-main:has(.eh-ac-dashboard-fit) .portal-footer{
    display:none;
  }
}

/* Mid-size desktop: keep the same compact cards but use 3 columns for readability. */
@media (min-width:1081px) and (max-width:1279px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card{
    min-height:84px;
    padding:8px 10px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card b{
    font-size:22px;
  }
}

/* Short-height desktop windows get a second compact pass so the page still fits. */
@media (min-width:1280px) and (max-height:800px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .content:has(> .eh-ac-dashboard-fit){
    padding-top:9px;
    padding-bottom:6px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .page-head{
    margin-bottom:7px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card{
    min-height:88px;
    padding:8px 10px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit > .kpi-grid .kpi-card b{
    margin-top:3px;
    font-size:22px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .dashboard-main-grid{
    margin-top:8px!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .quick-card{
    min-height:56px;
    padding:7px 9px;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .eh-ac-dashboard-fit .programme-card{
    padding:7px 9px;
  }
}

/* =========================================================
   EDUHUNT V2.2.154 — COORDINATOR MOBILE DARK + COMPACT ACTIONS
   Coordinator only. No backend routes, permissions or module links changed.
========================================================= */
@media (max-width:1024px){
  body[data-portal-role="ACADEMIC_COORDINATOR"]{
    color-scheme:dark!important;
    --eh-ac-mobile-bg:#020914;
    --eh-ac-mobile-surface:#07192c;
    --eh-ac-mobile-surface-2:#0a223a;
    --eh-ac-mobile-line:#284966;
    --eh-ac-mobile-text:#f3f8ff;
    --eh-ac-mobile-muted:#a7bdd1;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .portal-view,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .portal-main,
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .content{
    background:#020914!important;
    color:var(--eh-ac-mobile-text)!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .topbar,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .sidebar{
    background:#04111f!important;
    border-color:#1f3d58!important;
    color:var(--eh-ac-mobile-text)!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content :is(h1,h2,h3,h4,h5,h6,strong,b,label,.section-title,.cell-primary,.page-head h2,.card-head h3),
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog :is(h1,h2,h3,h4,h5,h6,strong,b,label){
    color:var(--eh-ac-mobile-text)!important;
    -webkit-text-fill-color:var(--eh-ac-mobile-text)!important;
    text-shadow:none!important;
    opacity:1!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content :is(p,small,.cell-secondary,.page-head p,.card-head p,.help-text,.hint),
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog :is(p,small,.help-text,.hint){
    color:var(--eh-ac-mobile-muted)!important;
    -webkit-text-fill-color:var(--eh-ac-mobile-muted)!important;
    opacity:1!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content :is(.card,.kpi-card,.quick-card,.programme-card,.filter-bar,.table-card,.empty-state,.metric,.metric-strip,.form-panel,.schedule-card,.resource-card,.doc-card,.subject-card),
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-shell,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-body,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-footer{
    background:var(--eh-ac-mobile-surface)!important;
    color:var(--eh-ac-mobile-text)!important;
    border-color:var(--eh-ac-mobile-line)!important;
    box-shadow:none!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-shell>header,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog>header{
    background:#081f36!important;
    border-color:var(--eh-ac-mobile-line)!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content :is(input,select,textarea),
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog :is(input,select,textarea){
    color-scheme:dark!important;
    background:#031321!important;
    color:#f7fbff!important;
    -webkit-text-fill-color:#f7fbff!important;
    border-color:#365b78!important;
    box-shadow:none!important;
    opacity:1!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content :is(input,select,textarea)::placeholder,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog :is(input,select,textarea)::placeholder{color:#758ca2!important;-webkit-text-fill-color:#758ca2!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content option,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog option{background:#031321!important;color:#f7fbff!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content table th{background:#0b385d!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#315a79!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content table td{background:#06182a!important;color:#eaf4ff!important;-webkit-text-fill-color:#eaf4ff!important;border-color:#223f58!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content tbody tr:nth-child(even) td{background:#081d31!important}

  /* Keep ordinary Coordinator buttons compact on phone/tablet. */
  body[data-portal-role="ACADEMIC_COORDINATOR"] .button{
    min-height:38px!important;
    padding:7px 10px!important;
    border-radius:9px!important;
    font-size:11px!important;
    line-height:1.15!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .button svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;flex:0 0 16px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .button--secondary,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .row-action{
    background:#0a223a!important;
    color:#eef7ff!important;
    border-color:#365d7d!important;
    box-shadow:none!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .button--secondary:hover,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .row-action:hover{background:#10304f!important;border-color:#5589ae!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .button--whatsapp{background:#168c4b!important;border-color:#168c4b!important;color:#fff!important}

  /* Dispatch dialog: compact tiles instead of oversized touch blocks. */
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form{gap:9px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin:3px 0!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker label{min-width:0!important;margin:0!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker span{
    box-sizing:border-box!important;
    min-height:46px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:1px!important;
    padding:6px 8px!important;
    border-radius:8px!important;
    background:#0a223a!important;
    border-color:#315775!important;
    color:#f5fbff!important;
    box-shadow:none!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker input:checked+span{background:#103d61!important;border-color:#61b7ed!important;box-shadow:inset 0 0 0 1px rgba(97,183,237,.35)!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker b{font-size:11px!important;line-height:1.15!important;white-space:normal!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker small{font-size:9px!important;line-height:1.2!important;color:#afc8dc!important;-webkit-text-fill-color:#afc8dc!important;white-space:normal!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-material-picker>button{min-height:46px!important;padding:6px 8px!important;font-size:11px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-upload-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-upload-actions .button{width:100%!important;min-width:0!important;min-height:38px!important;padding:7px 8px!important;font-size:10px!important;justify-content:center!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-file-name,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-message-preview,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-action-context,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-next,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-filterbar,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-history-list article,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-test-card{
    background:#071b2f!important;
    color:#eef7ff!important;
    border-color:#2c506c!important;
    box-shadow:none!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-file-name{padding:6px 8px!important;font-size:9px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-message-preview{max-height:240px!important;padding:9px!important;font-size:10px!important;line-height:1.4!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-footer{gap:6px!important;padding:8px 10px!important;flex-wrap:wrap!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-footer .button{min-height:38px!important;margin:0!important}

  /* Academic Library / Books surfaces must remain dark even though this CSS loads before some library rules. */
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-card,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-programme-card,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-chapter-group,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-chapter-row,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-recent-filters,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-history-filters{
    background:#07192c!important;
    color:#eef7ff!important;
    border-color:#2b4c67!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-card-copy h3,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-chapter-copy strong,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-quick-head h3{color:#f5faff!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-card-copy p,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-card-copy small,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-chapter-copy small,
  body[data-portal-role="ACADEMIC_COORDINATOR"][data-desktop-theme="dark"] .eduhunt-library-quick-head p{color:#a9bfd3!important}
}
@media (max-width:520px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .content{padding-left:10px!important;padding-right:10px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-upload-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .dialog-footer .button{flex:1 1 120px!important;width:auto!important}
}
@media (max-width:340px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-dialog-form .exam-v3-test-picker,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .exam-v3-upload-actions{grid-template-columns:1fr!important}
}

/* V2.2.154 compact Coordinator dashboard cards on phone/tablet. */
@media (max-width:1024px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .kpi-card{min-height:76px!important;padding:9px 10px!important;border-radius:11px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .kpi-card b{font-size:22px!important;line-height:1!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .quick-card{min-height:64px!important;padding:8px 9px!important;border-radius:10px!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .programme-card{min-height:0!important;padding:8px 9px!important;border-radius:10px!important}
}

@media (max-width:1024px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .topbar :is(.topbar-button,.icon-button,.notification-button,.account-button){
    background:#081b31!important;
    color:#eef7ff!important;
    border-color:#294a65!important;
    box-shadow:none!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .topbar :is(.topbar-button,.icon-button,.notification-button,.account-button):hover{background:#0c2844!important;border-color:#46779b!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .topbar-title h1,
  body[data-portal-role="ACADEMIC_COORDINATOR"] .account-copy strong{color:#f5f9ff!important;-webkit-text-fill-color:#f5f9ff!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] .account-copy small{color:#9fb8cd!important;-webkit-text-fill-color:#9fb8cd!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #roleBottomNav{background:#04111f!important;border-color:#274861!important;box-shadow:0 -8px 24px rgba(0,0,0,.34)!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #roleBottomNav button{background:transparent!important;color:#a9bfd2!important;border:0!important;box-shadow:none!important}
  body[data-portal-role="ACADEMIC_COORDINATOR"] #roleBottomNav button.active{color:#fff!important;background:#0b2b47!important}
}

@media (max-width:1024px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .coordinator-dashboard-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    overflow-x:visible!important;
    padding-bottom:0!important;
  }
}
@media (max-width:620px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] #content .coordinator-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* =====================================================================
   EDUHUNT V2.2.291 R62 - COORDINATOR QUESTION PAPER DISPATCH UI REPAIR
   2026-08-30

   Root cause repaired:
   The Coordinator mobile dark-theme rule forced opacity:1!important on every
   input inside .app-dialog. That overrode the Exam Operations tile control
   rule which intentionally hides native checkbox inputs. Android therefore
   rendered each checkbox as a full-width 44px+ dark block over the dialog.

   Scope: UI only. No API, Exam Operations data, permissions, status logic,
   dispatch save logic, WhatsApp logic or database behaviour is changed.
   ===================================================================== */

/* Keep native checkbox controls accessible to the label, but never let the
   global form-input theme paint them as full-width text fields. This selector
   intentionally has greater specificity than the Coordinator dialog input
   theme and uses !important only for properties that were previously forced. */
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]{
  position:absolute!important;
  width:1px!important;
  min-width:1px!important;
  max-width:1px!important;
  height:1px!important;
  min-height:1px!important;
  max-height:1px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  opacity:0!important;
  pointer-events:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}

/* Stable card geometry on phone, tablet and desktop. */
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker label{
  position:relative!important;
  display:block!important;
  min-width:0!important;
  margin:0!important;
  cursor:pointer!important;
  overflow:visible!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker label>span{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

/* Selected tiles get a small, predictable badge instead of a native Android
   checkbox. This is visual only; the real checkbox remains the state source. */
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:checked + span{
  padding-right:38px!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:checked + span::after{
  content:"✓"!important;
  position:absolute!important;
  top:7px!important;
  right:7px!important;
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:7px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  background:#79b8ff!important;
  color:#04111f!important;
  -webkit-text-fill-color:#04111f!important;
  font-size:16px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:none!important;
}

/* Keyboard focus remains visible even though the native control is hidden. */
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:focus-visible + span{
  outline:2px solid #79b8ff!important;
  outline-offset:2px!important;
}

/* Mobile dialog fit. The footer remains outside the scrolling body, so Save
   and Cancel stay usable while the test/material list scrolls naturally. */
@media (max-width:1024px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog{
    width:min(720px,calc(100vw - 12px))!important;
    max-height:94vh!important;
    max-height:94dvh!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .dialog-shell{
    max-height:94vh!important;
    max-height:94dvh!important;
    overflow:hidden!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .dialog-body{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .dialog-footer{
    flex:0 0 auto!important;
    position:relative!important;
    z-index:3!important;
  }
}

@media (max-width:520px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker label>span{
    min-height:58px!important;
    padding:8px 9px!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:checked + span{
    padding-right:36px!important;
  }
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .dialog-footer .button{
    min-height:46px!important;
    font-size:12px!important;
  }
}

@media (max-width:340px){
  body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog .exam-v3-dialog-form .exam-v3-test-picker{
    grid-template-columns:1fr!important;
  }
}

/* =====================================================================
   EDUHUNT V2.2.293 R64 - EXAM OPERATIONS CLICK / TAP INTERACTION REPAIR
   2026-08-30

   R62 hid the native checkbox by shrinking it to 1px and disabling pointer
   events. Most browsers forward a label click correctly, but some Android/
   desktop combinations can leave those visual tiles looking selectable while
   the clipped checkbox never receives a reliable tap. R64 keeps the checkbox
   invisible but stretches the REAL control across its own tile. The browser
   therefore toggles the real state directly on mouse, touch and stylus.
   ===================================================================== */
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker label{
  position:relative!important;
  isolation:isolate!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:rgba(121,184,255,.16)!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  clip:auto!important;
  clip-path:none!important;
  overflow:visible!important;
  white-space:normal!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:disabled{
  pointer-events:none!important;
  cursor:not-allowed!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker label>span{
  position:relative!important;
  z-index:1!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker>button,
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-upload-actions .button,
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .dialog-footer .button{
  position:relative!important;
  z-index:8!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
}
body[data-portal-role="ACADEMIC_COORDINATOR"] .app-dialog.exam-ops-dialog .exam-v3-dialog-form .exam-v3-test-picker input[type="checkbox"]:checked+span{
  border-color:#61b7ed!important;
  background:#103d61!important;
  box-shadow:inset 0 0 0 1px rgba(97,183,237,.45)!important;
}
