@charset "UTF-8";

/* src/styles.scss */
:root {
  --iqra-primary: #7254F5;
  --iqra-primary-dark: #6936CD;
  --iqra-primary-light: #9178FF;
  --iqra-primary-lighter: #9460FB;
  --iqra-primary-soft: #ECE7FF;
  --iqra-bg: #FFFFFF;
  --iqra-surface: #FFFFFF;
  --iqra-surface-alt: #F2F2F7;
  --iqra-surface-muted: #F3F3F3;
  --iqra-border: #E5E5EA;
  --iqra-text-primary: #1C1C1E;
  --iqra-text-secondary: #6E6E73;
  --iqra-text-muted: #9999A1;
  --iqra-text-on-primary: #FFFFFF;
  --iqra-status-active: #34C759;
  --iqra-status-frozen: #FF3B30;
  --iqra-status-warning: #FF9500;
  --iqra-status-info: #007AFF;
  --iqra-status-frozen-soft: #FFEDED;
  --iqra-status-frozen-border: #FFC9C9;
  --iqra-success: #1E7A4C;
  --iqra-success-soft: #E4F2EA;
  --iqra-success-border: #B9DFCB;
  --iqra-warning: #8A5B00;
  --iqra-warning-soft: #FBF0DB;
  --iqra-warning-border: #F0D9A8;
  --iqra-danger: #B3261E;
  --iqra-danger-soft: #FCE8E6;
  --iqra-danger-border: #F2C1BD;
  --iqra-info: #1C5BB8;
  --iqra-info-soft: #E4EDFB;
  --iqra-info-border: #BDD2F2;
  --iqra-neutral: #6E6E73;
  --iqra-neutral-soft: #F0F0F3;
  --iqra-neutral-border: #DEDEE3;
  --iqra-radius-sm: 8px;
  --iqra-radius-md: 12px;
  --iqra-radius-lg: 20px;
  --iqra-radius-pill: 999px;
  --iqra-gap-xs: 4px;
  --iqra-gap-sm: 8px;
  --iqra-gap-md: 16px;
  --iqra-gap-lg: 24px;
  --iqra-gap-xl: 32px;
  --iqra-sidebar-width: 290px;
  --iqra-rightbar-width: 260px;
  --iqra-topbar-height: 64px;
  --iqra-font-family:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    "Inter",
    "Helvetica Neue",
    sans-serif;
  --iqra-font-size-base: 14px;
  --iqra-font-size-sm: 13px;
  --iqra-font-size-xs: 12px;
  --iqra-font-size-lg: 16px;
  --iqra-elevation-1: 0 1px 2px rgba(28, 28, 30, 0.04), 0 1px 3px rgba(28, 28, 30, 0.06);
  --iqra-elevation-2: 0 2px 6px rgba(28, 28, 30, 0.05), 0 8px 20px rgba(28, 28, 30, 0.07);
  --iqra-elevation-3: 0 6px 16px rgba(114, 84, 245, 0.14), 0 2px 6px rgba(114, 84, 245, 0.10);
  --iqra-elevation-4: 0 12px 28px rgba(28, 28, 30, 0.12), 0 28px 64px rgba(28, 28, 30, 0.14);
  --iqra-shadow-primary: 0 6px 16px rgba(114, 84, 245, 0.28);
  --iqra-shadow-sm: var(--iqra-elevation-1);
  --iqra-shadow-md: var(--iqra-elevation-2);
  --iqra-shadow-lg: var(--iqra-elevation-4);
  --iqra-focus-ring: 0 0 0 3px rgba(114, 84, 245, 0.35);
  --iqra-transition-fast: 0.15s;
  --iqra-transition-base: 0.2s;
  --iqra-transition-slow: 0.3s;
  --iqra-ease: cubic-bezier(0.4, 0, 0.2, 1);
}
html,
body {
  height: 100%;
}
body {
  margin: 0;
  font-family: var(--iqra-font-family);
  font-size: var(--iqra-font-size-base);
  background: var(--iqra-bg);
  color: var(--iqra-text-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 767.98px) {
  input,
  select,
  textarea {
    font-size: 16px !important;
  }
}
@keyframes spinner {
  to {
    transform: rotate(360deg);
  }
}
.spinner {
  background-color: #000 !important;
  opacity: 0.2;
  position: relative;
}
.spinner:before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  border-radius: 50%;
  border: 2px solid #fff;
  border-top-color: #000;
  animation: spinner 0.8s linear infinite;
}
.full-width-field {
  width: 100%;
}
.text-center {
  text-align: center !important;
}
.mv-1 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
.mat-sidenav[style] {
  visibility: visible !important;
}
.mat-drawer {
  transform: none !important;
}
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: none;
  box-shadow: var(--iqra-focus-ring);
  border-radius: 8px;
}
button,
.btn,
.metric,
.iqra-metric,
.stat-card,
.gcard,
.tcard,
.item,
.chip,
.card,
.tag {
  transition:
    transform var(--iqra-transition-base) var(--iqra-ease),
    box-shadow var(--iqra-transition-base) var(--iqra-ease),
    background var(--iqra-transition-fast) var(--iqra-ease),
    border-color var(--iqra-transition-fast) var(--iqra-ease);
}
.metric,
.iqra-metric,
.stat-card {
  box-shadow: var(--iqra-elevation-1);
}
.metric:hover,
.stat-card:hover,
.gcard:hover,
.tcard:hover {
  transform: translateY(-2px);
  box-shadow: var(--iqra-elevation-3);
}
.card:hover,
.item:hover,
.group:hover,
.student:hover {
  box-shadow: var(--iqra-elevation-2);
}
.btn:active,
button.btn:active {
  transform: translateY(1px);
}
@keyframes iqra-fade-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.page,
.dashboard {
  animation: iqra-fade-up var(--iqra-transition-slow) var(--iqra-ease) both;
}
.view-enter {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-lg);
  animation: iqra-fade-up var(--iqra-transition-slow) var(--iqra-ease) both;
}
html {
  scroll-behavior: smooth;
}
.role-avatar {
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.role-avatar--student {
  background-image: url(/assets/avatars/student.png) !important;
}
.role-avatar--teacher {
  background-image: url(/assets/avatars/teacher.png) !important;
}
.role-avatar--curator {
  background-image: url(/assets/avatars/curator.png) !important;
}
.dlg__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: var(--iqra-gap-md);
}
.dlg__head .dlg__title {
  margin: 0 !important;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.02em;
}
.dlg__close {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border: none;
  border-radius: 10px;
  background: var(--iqra-surface-muted);
  color: var(--iqra-text-secondary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background var(--iqra-transition-fast), color var(--iqra-transition-fast);
}
.dlg__close:hover {
  background: var(--iqra-surface-alt);
  color: var(--iqra-text-primary);
}
.dlg__close svg {
  width: 18px;
  height: 18px;
}
.dlg__actions {
  border-top: 1px solid var(--iqra-border);
  padding-top: var(--iqra-gap-md) !important;
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .metric:hover,
  .stat-card:hover,
  .gcard:hover,
  .tcard:hover {
    transform: none;
  }
}
.iqra-page {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-lg);
  padding-bottom: var(--iqra-gap-xl);
}
.iqra-page__title,
.iqra-page-header__title {
  font-size: 18px;
  font-weight: 700;
  margin: 0;
  color: var(--iqra-text-primary);
}
@media (min-width: 480px) {
  .iqra-page__title,
  .iqra-page-header__title {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .iqra-page__title,
  .iqra-page-header__title {
    font-size: 28px;
  }
}
.iqra-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--iqra-gap-md);
  flex-wrap: wrap;
}
.iqra-page-header__breadcrumbs {
  font-size: var(--iqra-font-size-sm);
  color: var(--iqra-text-secondary);
  margin-bottom: 4px;
}
.iqra-page-header__breadcrumbs a {
  color: var(--iqra-primary);
  text-decoration: none;
  cursor: pointer;
}
.iqra-page-header__breadcrumbs a:hover {
  text-decoration: underline;
}
.iqra-page-header__actions {
  display: flex;
  gap: var(--iqra-gap-sm);
  flex-wrap: wrap;
}
.iqra-section {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-sm);
}
.iqra-section__title {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 var(--iqra-gap-sm);
  color: var(--iqra-text-primary);
}
@media (min-width: 768px) {
  .iqra-section__title {
    font-size: 18px;
  }
}
.iqra-toolbar,
.iqra-page-toolbar {
  display: flex;
  gap: var(--iqra-gap-sm);
  align-items: center;
  flex-wrap: wrap;
}
@media (max-width: 767.98px) {
  .iqra-toolbar,
  .iqra-page-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  .iqra-toolbar .iqra-btn,
  .iqra-page-toolbar .iqra-btn {
    width: 100%;
  }
}
.iqra-page-toolbar .mat-mdc-form-field {
  width: auto;
  min-width: 160px;
  max-width: 220px;
}
.iqra-page-toolbar .mat-mdc-form-field .mat-mdc-form-field-subscript-wrapper {
  display: none;
}
.iqra-page-toolbar .mat-mdc-form-field .mat-mdc-text-field-wrapper {
  padding: 0;
}
.iqra-page-toolbar .mat-mdc-form-field .mat-mdc-floating-label,
.iqra-page-toolbar .mat-mdc-form-field .mdc-floating-label,
.iqra-page-toolbar .mat-mdc-form-field .mdc-notched-outline__notch {
  display: none !important;
}
.iqra-page-toolbar .mat-mdc-form-field .mat-mdc-form-field-infix {
  min-height: 40px !important;
  padding: 9px 14px !important;
  border-top: 0 !important;
}
.iqra-page-toolbar .mat-mdc-form-field .mdc-notched-outline__leading {
  border-radius: var(--iqra-radius-pill) 0 0 var(--iqra-radius-pill) !important;
  border-right: none !important;
  width: 14px;
}
.iqra-page-toolbar .mat-mdc-form-field .mdc-notched-outline__trailing {
  border-radius: 0 var(--iqra-radius-pill) var(--iqra-radius-pill) 0 !important;
}
.iqra-page-toolbar .mat-mdc-form-field .mat-mdc-select-arrow-wrapper {
  padding-right: 8px;
}
.iqra-page-toolbar .mat-mdc-select-trigger {
  font-size: var(--iqra-font-size-base);
}
.iqra-page-toolbar .mat-mdc-select-placeholder {
  color: var(--iqra-text-muted) !important;
}
@media (max-width: 767.98px) {
  .iqra-page-toolbar .mat-mdc-form-field {
    max-width: 100%;
  }
}
.iqra-page-body {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-lg);
}
.iqra-page-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--iqra-gap-lg);
  align-items: start;
}
@media (min-width: 1280px) {
  .iqra-page-layout {
    grid-template-columns: 1fr var(--iqra-rightbar-width);
  }
}
.iqra-page-aside {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-md);
  flex-direction: row;
  flex-wrap: wrap;
}
.iqra-page-aside > * {
  flex: 1;
  min-width: 200px;
}
@media (min-width: 1280px) {
  .iqra-page-aside {
    position: sticky;
    top: var(--iqra-gap-lg);
    flex-direction: column;
  }
  .iqra-page-aside > * {
    flex: initial;
    min-width: 0;
  }
}
.iqra-detail-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--iqra-gap-lg);
  align-items: start;
}
@media (min-width: 1024px) {
  .iqra-detail-grid {
    grid-template-columns: 1fr auto;
  }
}
.iqra-stack {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-sm);
}
@media (max-width: 767.98px) {
  .iqra-card.no-pad {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .iqra-card.no-pad table {
    min-width: 600px;
  }
}
.iqra-btn {
  border: none;
  cursor: pointer;
  font-size: var(--iqra-font-size-base);
  font-weight: 600;
  letter-spacing: -0.01em;
  padding: 0 20px;
  height: 40px;
  border-radius: var(--iqra-radius-pill);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: inherit;
  white-space: nowrap;
  transition:
    background var(--iqra-transition-fast) var(--iqra-ease),
    color var(--iqra-transition-fast) var(--iqra-ease),
    border-color var(--iqra-transition-fast) var(--iqra-ease),
    box-shadow var(--iqra-transition-base) var(--iqra-ease),
    transform var(--iqra-transition-fast) var(--iqra-ease),
    opacity var(--iqra-transition-fast);
}
.iqra-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}
.iqra-btn:active:not(:disabled) {
  transform: translateY(1px);
}
.iqra-btn--filled {
  background: var(--iqra-primary);
  color: var(--iqra-text-on-primary);
  box-shadow: var(--iqra-shadow-primary);
}
.iqra-btn--filled:hover:not(:disabled) {
  background: var(--iqra-primary-dark);
  box-shadow: 0 8px 20px rgba(114, 84, 245, 0.34);
  transform: translateY(-1px);
}
.iqra-btn--outline {
  background: var(--iqra-surface);
  color: var(--iqra-primary);
  border: 1px solid var(--iqra-primary);
}
.iqra-btn--outline:hover:not(:disabled) {
  background: var(--iqra-primary-soft);
}
.iqra-btn--ghost {
  background: transparent;
  color: var(--iqra-text-primary);
}
.iqra-btn--ghost:hover:not(:disabled) {
  background: var(--iqra-surface-alt);
}
.iqra-btn--soft {
  background: var(--iqra-primary-soft);
  color: var(--iqra-primary);
}
.iqra-btn--soft:hover:not(:disabled) {
  filter: brightness(0.95);
}
.iqra-btn--danger {
  background: var(--iqra-surface);
  color: var(--iqra-status-frozen);
  border: 1px solid var(--iqra-status-frozen);
}
.iqra-btn--danger:hover:not(:disabled) {
  background: var(--iqra-status-frozen-soft);
}
.iqra-btn--block {
  width: 100%;
}
.iqra-btn--sm {
  height: 32px;
  font-size: var(--iqra-font-size-sm);
  padding: 0 14px;
}
@media (max-width: 767.98px) {
  .iqra-btn {
    height: 44px;
    font-size: var(--iqra-font-size-base);
    padding: 0 20px;
  }
  .iqra-btn--sm {
    height: 36px;
    font-size: var(--iqra-font-size-sm);
    padding: 0 14px;
  }
}
.metric__icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: var(--iqra-primary-soft);
  color: var(--iqra-primary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.metric__icon svg {
  width: 23px;
  height: 23px;
  display: block;
}
.iqra-card {
  background: var(--iqra-surface);
  border: 1px solid var(--iqra-border);
  border-radius: var(--iqra-radius-lg);
  padding: var(--iqra-gap-lg);
  box-shadow: var(--iqra-elevation-1);
}
.iqra-metric {
  background: var(--iqra-surface);
  border: 1px solid var(--iqra-border);
  box-shadow: var(--iqra-elevation-1);
  border-radius: var(--iqra-radius-lg);
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.iqra-metric__label {
  font-size: var(--iqra-font-size-xs);
  color: var(--iqra-text-secondary);
  line-height: 1.3;
}
.iqra-metric__value {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--iqra-text-primary);
}
.iqra-chip {
  display: inline-flex;
  align-items: center;
  font-size: var(--iqra-font-size-sm);
  font-weight: 500;
  color: var(--iqra-text-secondary);
  padding: 4px 12px;
  background: var(--iqra-surface-alt);
  border-radius: var(--iqra-radius-pill);
}
.iqra-chip--primary {
  background: var(--iqra-primary);
  color: var(--iqra-text-on-primary);
}
.iqra-chip--soft {
  background: var(--iqra-primary-soft);
  color: var(--iqra-primary);
}
.iqra-empty {
  color: var(--iqra-text-muted);
  font-size: var(--iqra-font-size-sm);
  font-style: italic;
}
.iqra-empty--block {
  font-style: normal;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--iqra-gap-xs);
  padding: var(--iqra-gap-xl) var(--iqra-gap-lg);
  text-align: center;
  background: var(--iqra-surface-alt);
  border: 1px dashed var(--iqra-border);
  border-radius: var(--iqra-radius-md);
  color: var(--iqra-text-secondary);
}
.iqra-empty__title {
  font-weight: 600;
  color: var(--iqra-text-primary);
}
.iqra-empty__hint {
  font-size: var(--iqra-font-size-xs);
  color: var(--iqra-text-muted);
  max-width: 44ch;
}
.iqra-error {
  background: var(--iqra-danger-soft);
  color: var(--iqra-danger);
  border: 1px solid var(--iqra-danger-border);
  border-radius: var(--iqra-radius-md);
  padding: 12px 16px;
  font-size: var(--iqra-font-size-sm);
  display: flex;
  align-items: center;
  gap: var(--iqra-gap-md);
  flex-wrap: wrap;
}
.iqra-input,
input.iqra-input,
.dlg .fld,
input.fld {
  display: block;
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  border: 1px solid var(--iqra-border);
  border-radius: var(--iqra-radius-md);
  padding: 0 14px;
  font-size: var(--iqra-font-size-base);
  font-family: inherit;
  background: var(--iqra-surface);
  color: var(--iqra-text-primary);
  outline: none;
  transition: border-color var(--iqra-transition-fast), box-shadow var(--iqra-transition-fast);
}
.iqra-input::placeholder,
input.iqra-input::placeholder,
.dlg .fld::placeholder,
input.fld::placeholder {
  color: var(--iqra-text-muted);
}
.iqra-input:hover:not(:disabled):not(:focus),
input.iqra-input:hover:not(:disabled):not(:focus),
.dlg .fld:hover:not(:disabled):not(:focus),
input.fld:hover:not(:disabled):not(:focus) {
  border-color: var(--iqra-text-muted);
}
.iqra-input:focus,
input.iqra-input:focus,
.dlg .fld:focus,
input.fld:focus {
  border-color: var(--iqra-primary);
  box-shadow: 0 0 0 3px var(--iqra-primary-soft);
}
.iqra-input:disabled,
input.iqra-input:disabled,
.dlg .fld:disabled,
input.fld:disabled {
  background: var(--iqra-surface-alt);
  color: var(--iqra-text-muted);
  cursor: not-allowed;
}
@media (max-width: 767.98px) {
  .iqra-input,
  input.iqra-input,
  .dlg .fld,
  input.fld {
    height: 44px;
    font-size: 16px;
    padding: 0 16px;
  }
}
.iqra-input.fld--area,
.dlg .fld--area,
.dlg textarea.fld,
textarea.iqra-input {
  height: auto;
  min-height: 64px;
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 1.4;
  resize: vertical;
}
input.iqra-search,
.iqra-search,
input.search,
.toolbar .search {
  flex: 1;
  width: 100%;
  height: 40px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--iqra-border);
  border-radius: var(--iqra-radius-pill);
  padding-block: 0 !important;
  padding-inline: 16px !important;
  font-size: var(--iqra-font-size-base);
  outline: none;
  background: var(--iqra-surface);
  font-family: inherit;
  transition: border-color var(--iqra-transition-fast), box-shadow var(--iqra-transition-fast);
  -webkit-appearance: none !important;
  appearance: none !important;
}
input.iqra-search:hover:not(:focus),
.iqra-search:hover:not(:focus),
input.search:hover:not(:focus),
.toolbar .search:hover:not(:focus) {
  border-color: var(--iqra-text-muted);
}
input.iqra-search:focus,
.iqra-search:focus,
input.search:focus,
.toolbar .search:focus {
  border-color: var(--iqra-primary);
  box-shadow: 0 0 0 3px var(--iqra-primary-soft);
}
@media (max-width: 767.98px) {
  input.iqra-search,
  .iqra-search,
  input.search,
  .toolbar .search {
    font-size: 16px !important;
    height: 48px !important;
    min-height: 48px !important;
    padding-inline: 20px !important;
  }
}
.iqra-form {
  display: flex;
  flex-direction: column;
  gap: var(--iqra-gap-md);
  max-width: 640px;
}
.iqra-form-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--iqra-gap-md);
}
@media (min-width: 768px) {
  .iqra-form-row {
    grid-template-columns: 1fr 1fr;
  }
}
.iqra-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--iqra-gap-sm);
  margin-top: var(--iqra-gap-md);
  padding-top: var(--iqra-gap-md);
  border-top: 1px solid var(--iqra-border);
}
.dlg input.dlg__name,
.dlg textarea.dlg__name {
  height: 48px !important;
  border-radius: 12px !important;
  padding: 0 16px !important;
}
.dlg button.add-students {
  height: 48px !important;
  border-radius: 12px !important;
}
.dlg .combo__input,
.dlg .combo__chosen {
  border-radius: 12px !important;
}
.dlg .slot-row .fld {
  height: 48px !important;
  border-radius: 12px !important;
}
.iqra-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: var(--iqra-radius-pill);
  border: 1px solid transparent;
  font-size: var(--iqra-font-size-xs);
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
  background: var(--iqra-neutral-soft);
  border-color: var(--iqra-neutral-border);
  color: var(--iqra-neutral);
}
.iqra-badge--ok {
  background: var(--iqra-success-soft);
  border-color: var(--iqra-success-border);
  color: var(--iqra-success);
}
.iqra-badge--warn {
  background: var(--iqra-warning-soft);
  border-color: var(--iqra-warning-border);
  color: var(--iqra-warning);
}
.iqra-badge--danger {
  background: var(--iqra-danger-soft);
  border-color: var(--iqra-danger-border);
  color: var(--iqra-danger);
}
.iqra-badge--info {
  background: var(--iqra-info-soft);
  border-color: var(--iqra-info-border);
  color: var(--iqra-info);
}
.iqra-badge--accent {
  background: var(--iqra-primary-soft);
  border-color: color-mix(in srgb, var(--iqra-primary) 28%, transparent);
  color: var(--iqra-primary-dark);
}
.iqra-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.iqra-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--iqra-border);
  border-radius: var(--iqra-radius-md);
  background: var(--iqra-surface);
}
.iqra-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--iqra-font-size-sm);
}
.iqra-table th {
  text-align: left;
  padding: 10px 14px;
  font-size: var(--iqra-font-size-xs);
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--iqra-text-secondary);
  background: var(--iqra-surface-alt);
  border-bottom: 1px solid var(--iqra-border);
  white-space: nowrap;
  position: sticky;
  top: 0;
  z-index: 1;
}
.iqra-table td {
  padding: 11px 14px;
  border-bottom: 1px solid var(--iqra-border);
  color: var(--iqra-text-primary);
  vertical-align: middle;
}
.iqra-table tbody tr:last-child td {
  border-bottom: none;
}
.iqra-table tbody tr:hover td {
  background: var(--iqra-surface-alt);
}
.iqra-table tbody tr.is-clickable {
  cursor: pointer;
}
.iqra-table tbody tr.is-clickable:focus-visible {
  outline: none;
  box-shadow: inset var(--iqra-focus-ring);
}
.iqra-table tbody tr.is-selected td {
  background: var(--iqra-primary-soft);
}
.iqra-table .num,
.iqra-table th.num,
.iqra-table td.num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.iqra-table th.actions,
.iqra-table td.actions {
  position: sticky;
  right: 0;
  background: var(--iqra-surface);
  box-shadow: -8px 0 8px -8px rgba(28, 28, 30, 0.18);
  white-space: nowrap;
  width: 1px;
  min-width: max-content;
}
.iqra-table__actions {
  display: flex;
  align-items: center;
  gap: var(--iqra-gap-sm);
}
.iqra-table th.actions {
  background: var(--iqra-surface-alt);
}
.iqra-table tbody tr:hover td.actions {
  background: var(--iqra-surface-alt);
}
.iqra-table tbody tr.is-selected td.actions {
  background: var(--iqra-primary-soft);
}
.iqra-table__sub {
  display: block;
  font-size: var(--iqra-font-size-xs);
  color: var(--iqra-text-secondary);
  margin-top: 2px;
}
.iqra-table td.key {
  font-weight: 600;
  color: var(--iqra-text-primary);
}
.iqra-filter-note {
  display: flex;
  align-items: center;
  gap: var(--iqra-gap-sm);
  flex-wrap: wrap;
  padding: var(--iqra-gap-sm) var(--iqra-gap-md);
  border: 1px solid var(--iqra-info-border);
  border-radius: var(--iqra-radius-md);
  background: var(--iqra-info-soft);
  color: var(--iqra-info);
  font-size: var(--iqra-font-size-sm);
}
.iqra-filter-note b {
  font-weight: 700;
}
.iqra-filter-note .iqra-btn {
  flex-shrink: 0;
}
.iqra-chart {
  display: block;
  width: 100%;
}
.iqra-chart__axis {
  stroke: var(--iqra-border);
  stroke-width: 1;
}
.iqra-chart__grid {
  stroke: var(--iqra-border);
  stroke-width: 1;
  stroke-dasharray: 3 4;
}
.iqra-chart__ylabel,
.iqra-chart__xlabel {
  font-size: 10px;
  fill: var(--iqra-text-muted);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}
.iqra-chart__value {
  font-size: 10px;
  font-weight: 700;
  fill: var(--iqra-text-secondary);
  font-variant-numeric: tabular-nums;
  pointer-events: none;
}
.iqra-chart__unit {
  font-size: 10px;
  fill: var(--iqra-text-muted);
  pointer-events: none;
}
.iqra-chart__hit {
  fill: transparent;
}
.iqra-chart__hit:hover {
  fill: var(--iqra-surface-alt);
}
.iqra-metric__value.is-ok {
  color: var(--iqra-success);
}
.iqra-metric__value.is-warn {
  color: var(--iqra-warning);
}
.iqra-metric__value.is-bad {
  color: var(--iqra-danger);
}
.iqra-why {
  font-size: var(--iqra-font-size-xs);
  color: var(--iqra-text-muted);
  line-height: 1.35;
}
@media print {
  @page {
    size: A4;
    margin: 10mm;
  }
  .topbar,
  .sidebar,
  .overlay,
  .footer,
  .no-print {
    display: none !important;
  }
  .system-shell,
  .content-frame,
  .content {
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }
  body {
    background: #fff !important;
  }
  .print-avoid-break {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  .print-page-break {
    break-before: page;
    page-break-before: always;
  }
  * {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}
.mat-mdc-card {
  border-radius: var(--iqra-radius-lg) !important;
  box-shadow: var(--iqra-elevation-1) !important;
  border: 1px solid var(--iqra-border) !important;
  background: var(--iqra-surface) !important;
}
.mat-mdc-card-title {
  font-size: 18px !important;
  font-weight: 600 !important;
}
.mat-mdc-card-subtitle {
  color: var(--iqra-text-secondary) !important;
}
.mat-mdc-button,
.mat-mdc-raised-button,
.mat-mdc-stroked-button,
.mat-mdc-flat-button,
.mat-mdc-outlined-button {
  border-radius: var(--iqra-radius-pill) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 500 !important;
  font-family: inherit !important;
}
.mat-mdc-raised-button.mat-primary,
.mat-mdc-flat-button.mat-primary {
  background: var(--iqra-primary) !important;
  color: var(--iqra-text-on-primary) !important;
}
.mat-mdc-raised-button.mat-primary:hover,
.mat-mdc-flat-button.mat-primary:hover {
  background: var(--iqra-primary-dark) !important;
}
.mat-mdc-stroked-button.mat-primary,
.mat-mdc-outlined-button.mat-primary {
  color: var(--iqra-primary) !important;
  border-color: var(--iqra-primary) !important;
}
.mat-mdc-stroked-button.mat-primary:hover,
.mat-mdc-outlined-button.mat-primary:hover {
  background: var(--iqra-primary-soft) !important;
}
.mat-mdc-button.mat-primary {
  color: var(--iqra-primary) !important;
}
.mat-mdc-form-field {
  font-family: inherit !important;
  width: 100%;
}
.mat-mdc-form-field.mat-focused .mdc-notched-outline > * {
  border-color: var(--iqra-primary) !important;
}
.mat-mdc-form-field-focus-overlay {
  background: var(--iqra-primary-soft) !important;
}
.mdc-text-field--filled:not(.mdc-text-field--disabled) {
  background-color: var(--iqra-surface-alt) !important;
}
@media (max-width: 767.98px) {
  .mat-mdc-input-element {
    font-size: 16px !important;
  }
}
.mat-mdc-table {
  background: transparent !important;
  box-shadow: none !important;
}
.mat-mdc-header-row {
  background: var(--iqra-surface-alt) !important;
}
.mat-mdc-header-cell {
  color: var(--iqra-text-secondary) !important;
  font-weight: 500 !important;
  font-size: var(--iqra-font-size-sm) !important;
}
.mat-mdc-row {
  background: var(--iqra-surface) !important;
}
.mat-mdc-row:hover {
  background: var(--iqra-primary-soft) !important;
}
.mat-mdc-cell {
  font-size: var(--iqra-font-size-sm) !important;
  border-bottom-color: var(--iqra-border) !important;
}
.mat-toolbar {
  background: var(--iqra-surface) !important;
  color: var(--iqra-text-primary) !important;
  border-bottom: 1px solid var(--iqra-border);
}
.mat-mdc-chip {
  border-radius: var(--iqra-radius-pill) !important;
  font-size: var(--iqra-font-size-sm) !important;
}
.mat-mdc-chip.mat-mdc-standard-chip {
  background: var(--iqra-surface-alt) !important;
  color: var(--iqra-text-primary) !important;
}
.mat-mdc-dialog-container .mdc-dialog__surface {
  border-radius: var(--iqra-radius-lg) !important;
  box-shadow: var(--iqra-elevation-4) !important;
}
.mdc-tab--active .mdc-tab__text-label {
  color: var(--iqra-primary) !important;
}
.mdc-tab-indicator__content--underline {
  border-color: var(--iqra-primary) !important;
}
.mat-mdc-paginator {
  background: transparent !important;
  font-family: inherit !important;
}
.mat-mdc-progress-spinner circle {
  stroke: var(--iqra-primary) !important;
}
.mat-mdc-icon-button:hover .mat-mdc-button-persistent-ripple::before {
  background: var(--iqra-primary-soft) !important;
}
.mat-mdc-snack-bar-container .mdc-snackbar__surface {
  border-radius: 14px !important;
  box-shadow: var(--iqra-elevation-4) !important;
  padding-right: 8px !important;
  min-height: 48px;
}
.mat-mdc-snack-bar-container .mat-mdc-snack-bar-label,
.mat-mdc-snack-bar-container .mdc-snackbar__label {
  font-family: var(--iqra-font-family) !important;
  font-size: 14px !important;
  letter-spacing: -0.01em;
}
.mat-mdc-snack-bar-container .mat-mdc-snack-bar-action {
  border-radius: var(--iqra-radius-pill) !important;
  font-weight: 600 !important;
}
.mat-mdc-snack-bar-container.success-snackbar .mdc-snackbar__surface {
  background: var(--iqra-status-active) !important;
}
.mat-mdc-snack-bar-container.error-snackbar .mdc-snackbar__surface {
  background: var(--iqra-status-frozen) !important;
}
.mat-mdc-snack-bar-container.warning-snackbar .mdc-snackbar__surface {
  background: var(--iqra-status-warning) !important;
}
.mat-mdc-snack-bar-container.success-snackbar .mdc-snackbar__label,
.mat-mdc-snack-bar-container.error-snackbar .mdc-snackbar__label,
.mat-mdc-snack-bar-container.warning-snackbar .mdc-snackbar__label {
  color: var(--iqra-text-on-primary) !important;
  font-weight: 500;
}
.mat-mdc-snack-bar-container.success-snackbar .mat-mdc-snack-bar-action,
.mat-mdc-snack-bar-container.error-snackbar .mat-mdc-snack-bar-action,
.mat-mdc-snack-bar-container.warning-snackbar .mat-mdc-snack-bar-action {
  color: var(--iqra-text-on-primary) !important;
}
@media (max-width: 767.98px) {
  .mat-mdc-snack-bar-container {
    margin-top: 70px !important;
    max-width: 95vw !important;
    min-width: 0 !important;
  }
}
html {
  --mat-sys-background: #fef8fc;
  --mat-sys-error: #ba1a1a;
  --mat-sys-error-container: #ffdad6;
  --mat-sys-inverse-on-surface: #f5eff4;
  --mat-sys-inverse-primary: #d5baff;
  --mat-sys-inverse-surface: #323033;
  --mat-sys-on-background: #1d1b1e;
  --mat-sys-on-error: #ffffff;
  --mat-sys-on-error-container: #93000a;
  --mat-sys-on-primary: #ffffff;
  --mat-sys-on-primary-container: #5f00c0;
  --mat-sys-on-primary-fixed: #270057;
  --mat-sys-on-primary-fixed-variant: #5f00c0;
  --mat-sys-on-secondary: #ffffff;
  --mat-sys-on-secondary-container: #4b4357;
  --mat-sys-on-secondary-fixed: #1f182a;
  --mat-sys-on-secondary-fixed-variant: #4b4357;
  --mat-sys-on-surface: #1d1b1e;
  --mat-sys-on-surface-variant: #49454e;
  --mat-sys-on-tertiary: #ffffff;
  --mat-sys-on-tertiary-container: #5f00c0;
  --mat-sys-on-tertiary-fixed: #270057;
  --mat-sys-on-tertiary-fixed-variant: #5f00c0;
  --mat-sys-outline: #7b757f;
  --mat-sys-outline-variant: #cbc4cf;
  --mat-sys-primary: #7d00fa;
  --mat-sys-primary-container: #ecdcff;
  --mat-sys-primary-fixed: #ecdcff;
  --mat-sys-primary-fixed-dim: #d5baff;
  --mat-sys-scrim: #000000;
  --mat-sys-secondary: #645b70;
  --mat-sys-secondary-container: #eadef7;
  --mat-sys-secondary-fixed: #eadef7;
  --mat-sys-secondary-fixed-dim: #cec2db;
  --mat-sys-shadow: #000000;
  --mat-sys-surface: #fef8fc;
  --mat-sys-surface-bright: #fef8fc;
  --mat-sys-surface-container: #f2ecf1;
  --mat-sys-surface-container-high: #ede6eb;
  --mat-sys-surface-container-highest: #e6e1e6;
  --mat-sys-surface-container-low: #f8f2f6;
  --mat-sys-surface-container-lowest: #ffffff;
  --mat-sys-surface-dim: #ded8dd;
  --mat-sys-surface-tint: #7d00fa;
  --mat-sys-surface-variant: #e8e0eb;
  --mat-sys-tertiary: #7d00fa;
  --mat-sys-tertiary-container: #ecdcff;
  --mat-sys-tertiary-fixed: #ecdcff;
  --mat-sys-tertiary-fixed-dim: #d5baff;
  --mat-sys-neutral-variant20: #332f37;
  --mat-sys-neutral10: #1d1b1e;
}
html {
  --mat-sys-level0:
    0px 0px 0px 0px rgba(0, 0, 0, 0.2),
    0px 0px 0px 0px rgba(0, 0, 0, 0.14),
    0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-level1:
    0px 2px 1px -1px rgba(0, 0, 0, 0.2),
    0px 1px 1px 0px rgba(0, 0, 0, 0.14),
    0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-level2:
    0px 3px 3px -2px rgba(0, 0, 0, 0.2),
    0px 3px 4px 0px rgba(0, 0, 0, 0.14),
    0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-level3:
    0px 3px 5px -1px rgba(0, 0, 0, 0.2),
    0px 6px 10px 0px rgba(0, 0, 0, 0.14),
    0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-level4:
    0px 5px 5px -3px rgba(0, 0, 0, 0.2),
    0px 8px 10px 1px rgba(0, 0, 0, 0.14),
    0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-level5:
    0px 7px 8px -4px rgba(0, 0, 0, 0.2),
    0px 12px 17px 2px rgba(0, 0, 0, 0.14),
    0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}
html {
  --mat-sys-body-large:
    400 1rem / 1.5rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-large-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-large-line-height: 1.5rem;
  --mat-sys-body-large-size: 1rem;
  --mat-sys-body-large-tracking: 0.031rem;
  --mat-sys-body-large-weight: 400;
  --mat-sys-body-medium:
    400 0.875rem / 1.25rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-medium-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-medium-line-height: 1.25rem;
  --mat-sys-body-medium-size: 0.875rem;
  --mat-sys-body-medium-tracking: 0.016rem;
  --mat-sys-body-medium-weight: 400;
  --mat-sys-body-small:
    400 0.75rem / 1rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-small-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-body-small-line-height: 1rem;
  --mat-sys-body-small-size: 0.75rem;
  --mat-sys-body-small-tracking: 0.025rem;
  --mat-sys-body-small-weight: 400;
  --mat-sys-display-large:
    400 3.562rem / 4rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-large-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-large-line-height: 4rem;
  --mat-sys-display-large-size: 3.562rem;
  --mat-sys-display-large-tracking: -0.016rem;
  --mat-sys-display-large-weight: 400;
  --mat-sys-display-medium:
    400 2.812rem / 3.25rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-medium-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-medium-line-height: 3.25rem;
  --mat-sys-display-medium-size: 2.812rem;
  --mat-sys-display-medium-tracking: 0;
  --mat-sys-display-medium-weight: 400;
  --mat-sys-display-small:
    400 2.25rem / 2.75rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-small-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-display-small-line-height: 2.75rem;
  --mat-sys-display-small-size: 2.25rem;
  --mat-sys-display-small-tracking: 0;
  --mat-sys-display-small-weight: 400;
  --mat-sys-headline-large:
    400 2rem / 2.5rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-large-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-large-line-height: 2.5rem;
  --mat-sys-headline-large-size: 2rem;
  --mat-sys-headline-large-tracking: 0;
  --mat-sys-headline-large-weight: 400;
  --mat-sys-headline-medium:
    400 1.75rem / 2.25rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-medium-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-medium-line-height: 2.25rem;
  --mat-sys-headline-medium-size: 1.75rem;
  --mat-sys-headline-medium-tracking: 0;
  --mat-sys-headline-medium-weight: 400;
  --mat-sys-headline-small:
    400 1.5rem / 2rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-small-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-headline-small-line-height: 2rem;
  --mat-sys-headline-small-size: 1.5rem;
  --mat-sys-headline-small-tracking: 0;
  --mat-sys-headline-small-weight: 400;
  --mat-sys-label-large:
    500 0.875rem / 1.25rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-large-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-large-line-height: 1.25rem;
  --mat-sys-label-large-size: 0.875rem;
  --mat-sys-label-large-tracking: 0.006rem;
  --mat-sys-label-large-weight: 500;
  --mat-sys-label-large-weight-prominent: 700;
  --mat-sys-label-medium:
    500 0.75rem / 1rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-medium-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-medium-line-height: 1rem;
  --mat-sys-label-medium-size: 0.75rem;
  --mat-sys-label-medium-tracking: 0.031rem;
  --mat-sys-label-medium-weight: 500;
  --mat-sys-label-medium-weight-prominent: 700;
  --mat-sys-label-small:
    500 0.688rem / 1rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-small-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-label-small-line-height: 1rem;
  --mat-sys-label-small-size: 0.688rem;
  --mat-sys-label-small-tracking: 0.031rem;
  --mat-sys-label-small-weight: 500;
  --mat-sys-title-large:
    400 1.375rem / 1.75rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-large-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-large-line-height: 1.75rem;
  --mat-sys-title-large-size: 1.375rem;
  --mat-sys-title-large-tracking: 0;
  --mat-sys-title-large-weight: 400;
  --mat-sys-title-medium:
    500 1rem / 1.5rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-medium-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-medium-line-height: 1.5rem;
  --mat-sys-title-medium-size: 1rem;
  --mat-sys-title-medium-tracking: 0.009rem;
  --mat-sys-title-medium-weight: 500;
  --mat-sys-title-small:
    500 0.875rem / 1.25rem "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-small-font:
    "SF Pro Display",
    "SF Pro Text",
    -apple-system,
    BlinkMacSystemFont,
    Inter,
    sans-serif;
  --mat-sys-title-small-line-height: 1.25rem;
  --mat-sys-title-small-size: 0.875rem;
  --mat-sys-title-small-tracking: 0.006rem;
  --mat-sys-title-small-weight: 500;
}
html {
  --mat-sys-corner-extra-large: 28px;
  --mat-sys-corner-extra-large-top: 28px 28px 0 0;
  --mat-sys-corner-extra-small: 4px;
  --mat-sys-corner-extra-small-top: 4px 4px 0 0;
  --mat-sys-corner-full: 9999px;
  --mat-sys-corner-large: 16px;
  --mat-sys-corner-large-end: 0 16px 16px 0;
  --mat-sys-corner-large-start: 16px 0 0 16px;
  --mat-sys-corner-large-top: 16px 16px 0 0;
  --mat-sys-corner-medium: 12px;
  --mat-sys-corner-none: 0;
  --mat-sys-corner-small: 8px;
}
html {
  --mat-sys-dragged-state-layer-opacity: 0.16;
  --mat-sys-focus-state-layer-opacity: 0.12;
  --mat-sys-hover-state-layer-opacity: 0.08;
  --mat-sys-pressed-state-layer-opacity: 0.12;
}
.mat-elevation-z0,
.mat-mdc-elevation-specific.mat-elevation-z0 {
  box-shadow: var(--mat-app-elevation-shadow-level-0, none);
}
.mat-elevation-z1,
.mat-mdc-elevation-specific.mat-elevation-z1 {
  box-shadow: var(--mat-app-elevation-shadow-level-1, none);
}
.mat-elevation-z2,
.mat-mdc-elevation-specific.mat-elevation-z2 {
  box-shadow: var(--mat-app-elevation-shadow-level-2, none);
}
.mat-elevation-z3,
.mat-mdc-elevation-specific.mat-elevation-z3 {
  box-shadow: var(--mat-app-elevation-shadow-level-3, none);
}
.mat-elevation-z4,
.mat-mdc-elevation-specific.mat-elevation-z4 {
  box-shadow: var(--mat-app-elevation-shadow-level-4, none);
}
.mat-elevation-z5,
.mat-mdc-elevation-specific.mat-elevation-z5 {
  box-shadow: var(--mat-app-elevation-shadow-level-5, none);
}
.mat-elevation-z6,
.mat-mdc-elevation-specific.mat-elevation-z6 {
  box-shadow: var(--mat-app-elevation-shadow-level-6, none);
}
.mat-elevation-z7,
.mat-mdc-elevation-specific.mat-elevation-z7 {
  box-shadow: var(--mat-app-elevation-shadow-level-7, none);
}
.mat-elevation-z8,
.mat-mdc-elevation-specific.mat-elevation-z8 {
  box-shadow: var(--mat-app-elevation-shadow-level-8, none);
}
.mat-elevation-z9,
.mat-mdc-elevation-specific.mat-elevation-z9 {
  box-shadow: var(--mat-app-elevation-shadow-level-9, none);
}
.mat-elevation-z10,
.mat-mdc-elevation-specific.mat-elevation-z10 {
  box-shadow: var(--mat-app-elevation-shadow-level-10, none);
}
.mat-elevation-z11,
.mat-mdc-elevation-specific.mat-elevation-z11 {
  box-shadow: var(--mat-app-elevation-shadow-level-11, none);
}
.mat-elevation-z12,
.mat-mdc-elevation-specific.mat-elevation-z12 {
  box-shadow: var(--mat-app-elevation-shadow-level-12, none);
}
.mat-elevation-z13,
.mat-mdc-elevation-specific.mat-elevation-z13 {
  box-shadow: var(--mat-app-elevation-shadow-level-13, none);
}
.mat-elevation-z14,
.mat-mdc-elevation-specific.mat-elevation-z14 {
  box-shadow: var(--mat-app-elevation-shadow-level-14, none);
}
.mat-elevation-z15,
.mat-mdc-elevation-specific.mat-elevation-z15 {
  box-shadow: var(--mat-app-elevation-shadow-level-15, none);
}
.mat-elevation-z16,
.mat-mdc-elevation-specific.mat-elevation-z16 {
  box-shadow: var(--mat-app-elevation-shadow-level-16, none);
}
.mat-elevation-z17,
.mat-mdc-elevation-specific.mat-elevation-z17 {
  box-shadow: var(--mat-app-elevation-shadow-level-17, none);
}
.mat-elevation-z18,
.mat-mdc-elevation-specific.mat-elevation-z18 {
  box-shadow: var(--mat-app-elevation-shadow-level-18, none);
}
.mat-elevation-z19,
.mat-mdc-elevation-specific.mat-elevation-z19 {
  box-shadow: var(--mat-app-elevation-shadow-level-19, none);
}
.mat-elevation-z20,
.mat-mdc-elevation-specific.mat-elevation-z20 {
  box-shadow: var(--mat-app-elevation-shadow-level-20, none);
}
.mat-elevation-z21,
.mat-mdc-elevation-specific.mat-elevation-z21 {
  box-shadow: var(--mat-app-elevation-shadow-level-21, none);
}
.mat-elevation-z22,
.mat-mdc-elevation-specific.mat-elevation-z22 {
  box-shadow: var(--mat-app-elevation-shadow-level-22, none);
}
.mat-elevation-z23,
.mat-mdc-elevation-specific.mat-elevation-z23 {
  box-shadow: var(--mat-app-elevation-shadow-level-23, none);
}
.mat-elevation-z24,
.mat-mdc-elevation-specific.mat-elevation-z24 {
  box-shadow: var(--mat-app-elevation-shadow-level-24, none);
}
html {
  --mat-sys-on-surface: initial;
}
.mat-app-background {
  background-color: var(--mat-app-background-color, var(--mat-sys-background, transparent));
  color: var(--mat-app-text-color, var(--mat-sys-on-background, inherit));
}
a.stu-link {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
a.stu-link:hover {
  color: var(--iqra-primary, #6941c6);
  text-decoration: underline;
}

/* angular:styles/global:styles */
/*# sourceMappingURL=styles-3PRPVHBC.css.map */
