/* ============================================================
   ATLEARN LMS Redesign — Alpha Theme Specific Selectors
   Targets the actual alpha theme CSS classes
   ============================================================ */

/* ── Sidebar / Nav Drawer ── */
#nav-drawer,
#nav-drawer .nav-drawer-container {
  background: var(--al-side-bg) !important;
  color: var(--al-side-tx) !important;
}

/* Sidebar nav items */
#nav-drawer .rui-flatnavigation .rui-sidebar-nav-item-link,
#nav-drawer .rui-flatnavigation li a,
#nav-drawer .rui-flatnavigation a,
#nav-drawer a,
#nav-drawer .list-group-item-action,
#nav-drawer span,
#nav-drawer .rui-sidebar-nav-text {
  color: var(--al-side-tx2) !important;
  border-radius: 10px !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  transition: background .15s, color .15s !important;
}
#nav-drawer .rui-flatnavigation .rui-sidebar-nav-item-link:hover,
#nav-drawer .rui-flatnavigation li a:hover,
#nav-drawer .rui-flatnavigation a:hover,
#nav-drawer a:hover {
  background: rgba(255,255,255,.08) !important;
  color: var(--al-side-tx) !important;
}
#nav-drawer .rui-flatnavigation .rui-sidebar-nav-item-link.active,
#nav-drawer .rui-flatnavigation .rui-sidebar-nav-item-link[aria-current="true"],
#nav-drawer .rui-flatnavigation li.active a,
#nav-drawer .list-group-item-action.active {
  background: var(--al-pri) !important;
  color: #fff !important;
  font-weight: 700 !important;
}

/* Sidebar section labels (OVERVIEW, WORKSPACE) */
#nav-drawer .rui-flatnavigation .rui-nav-label,
#nav-drawer .list-group-item[data-key*="section"] {
  font-size: 10px !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--al-side-tx2) !important;
  font-weight: 700 !important;
  padding: 14px 10px 6px !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* Sidebar badges */
#nav-drawer .badge,
#nav-drawer .rui-sidebar-nav-badge {
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  border-radius: 99px !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  padding: 2px 7px !important;
  margin-left: auto !important;
}

/* Sidebar logo area */
#nav-drawer .rui-drawer-logo {
  border-bottom: 1px solid var(--al-side-line) !important;
  padding: 0 18px !important;
  height: 66px !important;
  display: flex !important;
  align-items: center !important;
}

/* ── Topbar / Navbar ── */
.navbar.rui-navbar-top,
.rui-topbar,
#page-header .navbar {
  background: var(--al-surface) !important;
  border-bottom: 1px solid var(--al-line) !important;
  box-shadow: none !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* Navbar brand */
.navbar .rui-site-name,
.navbar-brand {
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  color: var(--al-tx) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* Navbar icon buttons */
.rui-navbar-btn,
.navbar .nav-link,
.navbar .rui-popover-toggle,
.popover-region-toggle {
  border: 1px solid var(--al-line) !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--al-tx2) !important;
  transition: background .15s, color .15s, border-color .15s !important;
}
.rui-navbar-btn:hover,
.navbar .nav-link:hover,
.popover-region-toggle:hover {
  background: var(--al-priw) !important;
  color: var(--al-pri) !important;
  border-color: var(--al-priw) !important;
}

/* User menu area */
.rui-user-name {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: var(--al-tx) !important;
}
.rui-user-role {
  font-size: 11px !important;
  color: var(--al-tx3) !important;
}

/* Notification badge count */
.rui-badge-count,
.navbar .count-container {
  background: var(--al-pri) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  border-radius: 99px !important;
  min-width: 17px !important;
  height: 17px !important;
}

/* ── Main content wrapper ── */
#page,
.rui-main-content-wrap,
.rui-page-content {
  background: var(--al-bg) !important;
}

/* ── Alpha Dashboard blocks ── */
.rui-block,
.rui-card,
.block.card {
  border: 1px solid var(--al-line) !important;
  border-radius: 14px !important;
  background: var(--al-surface) !important;
  box-shadow: var(--al-shadow) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* ── Alpha course cards ── */
.rui-course-card,
.rui-course-item,
.rui-coursebox {
  border: 1px solid var(--al-line) !important;
  border-radius: 14px !important;
  background: var(--al-surface) !important;
  box-shadow: var(--al-shadow) !important;
  overflow: hidden !important;
  transition: box-shadow .2s, transform .2s !important;
}
.rui-course-card:hover,
.rui-course-item:hover,
.rui-coursebox:hover {
  box-shadow: var(--al-shadow2) !important;
  transform: translateY(-2px) !important;
}
.rui-course-title,
.rui-course-card .rui-course-name {
  font-size: 14.5px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
  color: var(--al-tx) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* ── Alpha summary stats (SUMMARY box) ── */
.rui-summary-box,
.rui-overview-stats,
.rui-dashboard-stats {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 14px !important;
}
.rui-stat-item,
.rui-summary-item {
  border: 1px solid var(--al-line) !important;
  border-radius: 14px !important;
  background: var(--al-surface) !important;
  box-shadow: var(--al-shadow) !important;
  padding: 16px 18px !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}
.rui-stat-value,
.rui-summary-value {
  font-size: 28px !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  color: var(--al-tx) !important;
}
.rui-stat-label,
.rui-summary-label {
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  color: var(--al-tx3) !important;
}
.rui-stat-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  background: var(--al-priw) !important;
  color: var(--al-pri) !important;
  display: grid !important;
  place-items: center !important;
}

/* ── Alpha page headings ── */
.rui-page-title,
.rui-page-title h1,
.rui-page-header h1 {
  font-size: 28px !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  color: var(--al-tx) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}
.rui-page-subtitle {
  font-size: 14px !important;
  color: var(--al-tx2) !important;
  margin-top: 6px !important;
}

/* ── Alpha tables ── */
.rui-table,
.rui-table table {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}
.rui-table thead th,
.rui-table th {
  background: var(--al-surface2) !important;
  color: var(--al-tx3) !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  padding: 10px 8px !important;
  border-bottom: 1px solid var(--al-line2) !important;
}
.rui-table tbody tr:hover { background: var(--al-surface2) !important; }
.rui-table tbody td {
  padding: var(--al-rowpad) 8px !important;
  border-top: 1px solid var(--al-line2) !important;
  font-size: 13px !important;
  color: var(--al-tx2) !important;
}

/* ── Alpha status badges ── */
.rui-status-active  { background: var(--al-okw)   !important; color: var(--al-ok)   !important; border-radius: 99px !important; }
.rui-status-warning { background: var(--al-warnw) !important; color: var(--al-warn) !important; border-radius: 99px !important; }
.rui-status-danger  { background: var(--al-dangw) !important; color: var(--al-dang) !important; border-radius: 99px !important; }
.rui-status-primary { background: var(--al-priw)  !important; color: var(--al-pri)  !important; border-radius: 99px !important; }

/* ── Alpha progress bar ── */
.rui-progress,
.rui-course-progress .progress {
  height: 5px !important;
  border-radius: 99px !important;
  background: var(--al-line2) !important;
  overflow: hidden !important;
}
.rui-progress-bar,
.rui-course-progress .progress-bar {
  background: var(--al-pri) !important;
  border-radius: 99px !important;
}

/* ── Alpha buttons ── */
.rui-btn-primary,
.btn-primary {
  background: var(--al-pri) !important;
  border-color: var(--al-pri) !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  box-shadow: 0 6px 16px rgba(79,70,229,.28) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  transition: filter .15s !important;
}
.rui-btn-primary:hover,
.btn-primary:hover {
  filter: brightness(1.08) !important;
  background: var(--al-pri) !important;
  border-color: var(--al-pri) !important;
  color: #fff !important;
}

.rui-btn-secondary,
.btn-outline-secondary,
.btn-secondary {
  background: transparent !important;
  border: 1px solid var(--al-line) !important;
  color: var(--al-tx) !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  transition: border-color .15s, color .15s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
}
.rui-btn-secondary:hover,
.btn-outline-secondary:hover {
  border-color: var(--al-pri) !important;
  color: var(--al-pri) !important;
  background: transparent !important;
}

/* ── Alpha input fields ── */
.rui-form-control,
.form-control,
input[type="text"],
input[type="search"],
input[type="email"],
input[type="password"],
select, textarea {
  background: var(--al-surface2) !important;
  border: 1px solid var(--al-line) !important;
  border-radius: 9px !important;
  color: var(--al-tx) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  font-size: 12.5px !important;
  transition: border-color .15s, box-shadow .15s !important;
}
.rui-form-control:focus,
.form-control:focus,
input:focus {
  border-color: var(--al-pri) !important;
  box-shadow: 0 0 0 3px rgba(79,70,229,.12) !important;
  outline: none !important;
  background: var(--al-surface) !important;
}

/* ── Alpha tabs ── */
.rui-tabs .nav-link,
.rui-tab-filter .nav-link {
  border-radius: 9px !important;
  padding: 7px 13px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: var(--al-tx2) !important;
  background: var(--al-surface) !important;
  border: 1px solid var(--al-line) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  transition: background .15s, color .15s !important;
}
.rui-tabs .nav-link.active,
.rui-tab-filter .nav-link.active {
  background: var(--al-pri) !important;
  color: #fff !important;
  border-color: var(--al-pri) !important;
  font-weight: 700 !important;
}

/* ── Alpha alerts ── */
.rui-alert { border-radius: 12px !important; border: none !important; font-size: 13px !important; padding: 14px 16px !important; }
.rui-alert-success { background: var(--al-okw) !important; color: var(--al-ok) !important; }
.rui-alert-warning { background: var(--al-warnw) !important; color: var(--al-warn) !important; }
.rui-alert-danger  { background: var(--al-dangw) !important; color: var(--al-dang) !important; }

/* ── Alpha modals ── */
.rui-modal .modal-content,
.modal-content {
  border-radius: 16px !important;
  border: 1px solid var(--al-line) !important;
  box-shadow: var(--al-shadow2) !important;
  background: var(--al-surface) !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* ── Alpha footer ── */
.rui-footer,
#page-footer {
  background: var(--al-bg) !important;
  border-top: 1px solid var(--al-line) !important;
  color: var(--al-tx3) !important;
  font-size: 12px !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}

/* ── Body font override ── */
body,
.rui-body,
#page-wrapper {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
  background: var(--al-bg) !important;
  color: var(--al-tx) !important;
  -webkit-font-smoothing: antialiased !important;
}

/* ── Alpha user initials ── */
.rui-user-initials,
.rui-user-avatar-initials {
  border-radius: 10px !important;
  background: var(--al-priw) !important;
  color: var(--al-pri) !important;
  font-weight: 800 !important;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif !important;
}
