@charset "UTF-8";
/* Theme for the ripple elements.*/
/* stylelint-disable material/no-prefixes */
/* stylelint-enable */
.mat-badge-content {
  font-weight: 600;
  font-size: 12px;
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-badge-small .mat-badge-content {
  font-size: 9px;
}
.mat-badge-large .mat-badge-content {
  font-size: 24px;
}
.mat-h1, .mat-headline, .mat-typography h1 {
  font: 400 24px/32px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 16px;
}
.mat-h2, .mat-title, .mat-typography h2 {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 16px;
}
.mat-h3, .mat-subheading-2, .mat-typography h3 {
  font: 400 16px/28px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 16px;
}
.mat-h4, .mat-subheading-1, .mat-typography h4 {
  font: 400 15px/24px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 16px;
}
.mat-h5, .mat-typography h5 {
  font: 400 calc(14px * 0.83)/20px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 12px;
}
.mat-h6, .mat-typography h6 {
  font: 400 calc(14px * 0.67)/20px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 12px;
}
.mat-body-strong, .mat-body-2 {
  font: 500 14px/24px Roboto, "Helvetica Neue", sans-serif;
}
.mat-body, .mat-body-1, .mat-typography {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
}
.mat-body p, .mat-body-1 p, .mat-typography p {
  margin: 0 0 12px;
}
.mat-small, .mat-caption {
  font: 400 12px/20px Roboto, "Helvetica Neue", sans-serif;
}
.mat-display-4, .mat-typography .mat-display-4 {
  font: 300 112px/112px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.05em;
  margin: 0 0 56px;
}
.mat-display-3, .mat-typography .mat-display-3 {
  font: 400 56px/56px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.02em;
  margin: 0 0 64px;
}
.mat-display-2, .mat-typography .mat-display-2 {
  font: 400 45px/48px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.005em;
  margin: 0 0 64px;
}
.mat-display-1, .mat-typography .mat-display-1 {
  font: 400 34px/40px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 64px;
}
.mat-bottom-sheet-container {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
}
.mat-button, .mat-raised-button, .mat-icon-button, .mat-stroked-button,
.mat-flat-button, .mat-fab, .mat-mini-fab {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-button-toggle {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-card {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-card-title {
  font-size: 24px;
  font-weight: 500;
}
.mat-card-header .mat-card-title {
  font-size: 20px;
}
.mat-card-subtitle,
.mat-card-content {
  font-size: 14px;
}
.mat-checkbox {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-checkbox-layout .mat-checkbox-label {
  line-height: 24px;
}
.mat-chip {
  font-size: 14px;
  font-weight: 500;
}
.mat-chip .mat-chip-trailing-icon.mat-icon,
.mat-chip .mat-chip-remove.mat-icon {
  font-size: 18px;
}
.mat-table {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-header-cell {
  font-size: 12px;
  font-weight: 500;
}
.mat-cell, .mat-footer-cell {
  font-size: 14px;
}
.mat-calendar {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-calendar-body {
  font-size: 13px;
}
.mat-calendar-body-label,
.mat-calendar-period-button {
  font-size: 14px;
  font-weight: 500;
}
.mat-calendar-table-header th {
  font-size: 11px;
  font-weight: 400;
}
.mat-dialog-title {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
}
.mat-expansion-panel-header {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 15px;
  font-weight: 400;
}
.mat-expansion-panel-content {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
}
.mat-form-field {
  font-size: inherit;
  font-weight: 400;
  line-height: 1.125;
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-form-field-wrapper {
  padding-bottom: 1.34375em;
}
.mat-form-field-prefix .mat-icon,
.mat-form-field-suffix .mat-icon {
  font-size: 150%;
  line-height: 1.125;
}
.mat-form-field-prefix .mat-icon-button,
.mat-form-field-suffix .mat-icon-button {
  height: 1.5em;
  width: 1.5em;
}
.mat-form-field-prefix .mat-icon-button .mat-icon,
.mat-form-field-suffix .mat-icon-button .mat-icon {
  height: 1.125em;
  line-height: 1.125;
}
.mat-form-field-infix {
  padding: 0.5em 0;
  border-top: 0.84375em solid transparent;
}
.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.34375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.34374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-label-wrapper {
  top: -0.84375em;
  padding-top: 0.84375em;
}
.mat-form-field-label {
  top: 1.34375em;
}
.mat-form-field-underline {
  bottom: 1.34375em;
}
.mat-form-field-subscript-wrapper {
  font-size: 75%;
  margin-top: 0.6666666667em;
  top: calc(100% - 1.7916666667em);
}
.mat-form-field-appearance-legacy .mat-form-field-wrapper {
  padding-bottom: 1.25em;
}
.mat-form-field-appearance-legacy .mat-form-field-infix {
  padding: 0.4375em 0;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px);
  -ms-transform: translateY(-1.28125em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00101px);
  -ms-transform: translateY(-1.28124em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00102px);
  -ms-transform: translateY(-1.28123em) scale(0.75);
  width: 133.3333533333%;
}
.mat-form-field-appearance-legacy .mat-form-field-label {
  top: 1.28125em;
}
.mat-form-field-appearance-legacy .mat-form-field-underline {
  bottom: 1.25em;
}
.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper {
  margin-top: 0.5416666667em;
  top: calc(100% - 1.6666666667em);
}
@media print {
  .mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.28122em) scale(0.75);
  }
  .mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.28121em) scale(0.75);
  }
  .mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.2812em) scale(0.75);
  }
}
.mat-form-field-appearance-fill .mat-form-field-infix {
  padding: 0.25em 0 0.75em 0;
}
.mat-form-field-appearance-fill .mat-form-field-label {
  top: 1.09375em;
  margin-top: -0.5em;
}
.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-0.59375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-0.59374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-appearance-outline .mat-form-field-infix {
  padding: 1em 0 1em 0;
}
.mat-form-field-appearance-outline .mat-form-field-label {
  top: 1.84375em;
  margin-top: -0.25em;
}
.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.59375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.59374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-grid-tile-header,
.mat-grid-tile-footer {
  font-size: 14px;
}
.mat-grid-tile-header .mat-line,
.mat-grid-tile-footer .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-grid-tile-header .mat-line:nth-child(n+2),
.mat-grid-tile-footer .mat-line:nth-child(n+2) {
  font-size: 12px;
}
input.mat-input-element {
  margin-top: -0.0625em;
}
.mat-menu-item {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 400;
}
.mat-paginator,
.mat-paginator-page-size .mat-select-trigger {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
}
.mat-radio-button {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-select {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-select-trigger {
  height: 1.125em;
}
.mat-slide-toggle-content {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-slider-thumb-label-text {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.mat-stepper-vertical, .mat-stepper-horizontal {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-step-label {
  font-size: 14px;
  font-weight: 400;
}
.mat-step-sub-label-error {
  font-weight: normal;
}
.mat-step-label-error {
  font-size: 14px;
}
.mat-step-label-selected {
  font-size: 14px;
  font-weight: 500;
}
.mat-tab-group {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-tab-label, .mat-tab-link {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-toolbar,
.mat-toolbar h1,
.mat-toolbar h2,
.mat-toolbar h3,
.mat-toolbar h4,
.mat-toolbar h5,
.mat-toolbar h6 {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
  margin: 0;
}
.mat-tooltip {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 10px;
  padding-top: 6px;
  padding-bottom: 6px;
}
.mat-tooltip-handset {
  font-size: 14px;
  padding-top: 8px;
  padding-bottom: 8px;
}
.mat-list-item {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-list-option {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-list-base .mat-list-item {
  font-size: 16px;
}
.mat-list-base .mat-list-item .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base .mat-list-item .mat-line:nth-child(n+2) {
  font-size: 14px;
}
.mat-list-base .mat-list-option {
  font-size: 16px;
}
.mat-list-base .mat-list-option .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base .mat-list-option .mat-line:nth-child(n+2) {
  font-size: 14px;
}
.mat-list-base .mat-subheader {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-list-base[dense] .mat-list-item {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-item .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2) {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-option {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-option .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2) {
  font-size: 12px;
}
.mat-list-base[dense] .mat-subheader {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.mat-option {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 16px;
}
.mat-optgroup-label {
  font: 500 14px/24px Roboto, "Helvetica Neue", sans-serif;
}
.mat-simple-snackbar {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
}
.mat-simple-snackbar-action {
  line-height: 1;
  font-family: inherit;
  font-size: inherit;
  font-weight: 500;
}
.mat-tree {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-tree-node,
.mat-nested-tree-node {
  font-weight: 400;
  font-size: 14px;
}
.mat-ripple {
  overflow: hidden;
  position: relative;
}
.mat-ripple.mat-ripple-unbounded {
  overflow: visible;
}
.mat-ripple-element {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);
  transform: scale(0);
}
@media (-ms-high-contrast: active) {
  .mat-ripple-element {
    display: none;
  }
}
.cdk-visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.cdk-overlay-container, .cdk-global-overlay-wrapper {
  pointer-events: none;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.cdk-overlay-container {
  position: fixed;
  z-index: 1000;
}
.cdk-overlay-container:empty {
  display: none;
}
.cdk-global-overlay-wrapper {
  display: flex;
  position: absolute;
  z-index: 1000;
}
.cdk-overlay-pane {
  position: absolute;
  pointer-events: auto;
  box-sizing: border-box;
  z-index: 1000;
  display: flex;
  max-width: 100%;
  max-height: 100%;
}
.cdk-overlay-backdrop {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
  opacity: 0;
}
.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
  opacity: 1;
}
@media screen and (-ms-high-contrast: active) {
  .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
    opacity: 0.6;
  }
}
.cdk-overlay-dark-backdrop {
  background: rgba(0, 0, 0, 0.32);
}
.cdk-overlay-transparent-backdrop, .cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {
  opacity: 0;
}
.cdk-overlay-connected-position-bounding-box {
  position: absolute;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  min-width: 1px;
  min-height: 1px;
}
.cdk-global-scrollblock {
  position: fixed;
  width: 100%;
  overflow-y: scroll;
}
@-webkit-keyframes cdk-text-field-autofill-start {
  /*!*/
}
@keyframes cdk-text-field-autofill-start {
  /*!*/
}
@-webkit-keyframes cdk-text-field-autofill-end {
  /*!*/
}
@keyframes cdk-text-field-autofill-end {
  /*!*/
}
.cdk-text-field-autofill-monitored:-webkit-autofill {
  -webkit-animation-name: cdk-text-field-autofill-start;
          animation-name: cdk-text-field-autofill-start;
}
.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {
  -webkit-animation-name: cdk-text-field-autofill-end;
          animation-name: cdk-text-field-autofill-end;
}
textarea.cdk-textarea-autosize {
  resize: none;
}
textarea.cdk-textarea-autosize-measuring {
  height: auto !important;
  overflow: hidden !important;
  padding: 2px 0 !important;
  box-sizing: content-box !important;
}
/* You can add global variables to this file, and also import other style files */
:root {
  --app-font-poppins: "Poppins", "Helvetica Neue", sans-serif;
  --app-font-sans: var(--app-font-poppins);
}
/**
 * School UI shell:
 * - Wizard: vertical stepper rail + content (add-staff, add-student-from-admission, …).
 * - List toolbar: shared search + filter bar (staff-list, new-admission, admin-approval, …).
 */
.staff-wizard-shell {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
  border: 1px solid #e5e9f0;
  box-sizing: border-box;
  width: 100%;
}
.staff-stepper-layout {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0;
  min-height: 400px;
  width: 100%;
}
.staff-stepper-rail {
  display: flex;
  flex-direction: row;
  flex-shrink: 0;
  align-items: stretch;
  position: -webkit-sticky;
  position: sticky;
  justify-content: center;
  align-items: anchor-center;
  z-index: 2;
}
.staff-stepper-ticket-line {
  flex: 0 0 0;
  width: 0;
  margin-right: 0;
  border-left: 2px dashed #c5cad3;
  align-self: stretch;
  min-height: 280px;
}
.staff-stepper-left {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  width: 44px;
  flex-shrink: 0;
  padding: 0 20px;
  height: auto;
}
.stepper-spine {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  top: 15px;
  bottom: 15px;
  background: #d2d6de;
  z-index: 0;
  border-radius: 1px;
}
.stepper-item {
  z-index: 1;
  width: 100%;
  display: flex;
  justify-content: center;
}
.stepper-item.disabled .stepper-dot {
  opacity: 0.45;
  cursor: not-allowed;
}
.stepper-dot {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #d2d6de;
  background: #e8eaef;
  color: #5c6473;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
  line-height: 1;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.stepper-item.active .stepper-dot,
.stepper-item.completed .stepper-dot {
  background: #1a2b4b;
  color: #fff;
  border-color: #1a2b4b;
}
.staff-stepper-content {
  flex: 1;
  min-width: 0;
  background: transparent;
  border-radius: 0;
  padding: 20px 40px;
  overflow: visible;
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-height: 500px;
}
.staff-step-card {
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  border: none;
  padding: 0;
  margin: 0;
}
/* Admission wizard: fill step column so personal-details / academic actions sit at the bottom */
.student-admission-wizard .staff-step-card {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  align-self: stretch;
  width: 100%;
}
.student-admission-wizard .staff-step-card > app-documentation {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
}
/* Let the step content column grow inside the shell (pins footer actions with margin-top: auto on children) */
.staff-stepper-content.student-admission-wizard {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}
::ng-deep mat-label.form-label {
  font-family: var(--app-font-poppins) !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  line-height: 21px !important;
  color: #1a3a6e !important;
  margin-bottom: 8px;
}
.academic-field {
  min-width: 0;
}
.academic-field--full {
  grid-column: 1/-1;
}
.academic-field--span-1 {
  min-width: 0;
}
.three-coloum {
  gap: 15px;
  align-items: baseline;
  margin-bottom: 24px;
}
.step-card-title {
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-size: 19.5px;
  line-height: 1.2;
  letter-spacing: 0;
  color: #0A1A4F;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0 !important;
  margin-bottom: 18px !important;
}
@media (max-width: 991px) {
  .staff-wizard-shell {
    padding: 20px 16px 24px;
  }

  .staff-stepper-layout {
    flex-direction: column;
  }

  .staff-stepper-rail {
    position: relative;
    top: 0;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 12px 0 20px;
    width: 100%;
    box-sizing: border-box;
  }

  .staff-stepper-ticket-line {
    display: none;
  }

  .staff-stepper-content {
    padding-left: 0;
    padding-top: 8px;
  }

  .staff-stepper-left {
    flex-direction: row;
    width: auto;
    gap: 10px;
    height: auto;
  }

  .stepper-spine {
    display: none;
  }
}
/* =============================================================================
 * LIST SEARCH & FILTER TOOLBAR (global, shared)
 * -----------------------------------------------------------------------------
 * Typical markup (see staff-list.component.html ~204–237):
 *   .Search-Div (optional row wrapper)
 *     .sl-search-card.bgcolor-white     → white pill; holds one row
 *       .sl-search-row                  → flex row (often with fxLayout)
 *         .sl-search-select.filter-dropdown   → FILTER: app-multiselect + .app-multiselect--embedded
 *         .sl-search-select.sl-search-select--static → FILTER: static label (e.g. "Contact")
 *         .sl-search-input-wrap              → SEARCH: .sl-input-icon + input.sl-search-input
 *         .sl-search-actions                 → ACTIONS: .sl-clear-icon (clear text), etc.
 *   Sibling buttons: .sl-filter-btn, .sl-add-btn, .sl-clear-filter-btn (outside the pill)
 * Note: `app-multiselect--embedded` appearance is in multiselect.component.scss (:host).
 * ============================================================================= */
/* Optional flex wrapper around the pill + side buttons */
.Search-Div {
  padding: 0;
}
/* --- TOOLBAR SHELL: rounded pill that contains filter + search + trailing icons --- */
.sl-search-card {
  min-height: 40px;
  height: 40px;
  border-radius: 6px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  align-content: center;
  box-shadow: none;
  padding: 0 6px;
  transition: box-shadow 160ms ease, border-color 160ms ease;
  flex: 0 0 409px !important;
  max-width: 409px;
}
.sl-search-card:focus-within {
  border-color: #d0d0d0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
}
.sl-search-row {
  width: 100%;
  align-items: center;
  display: flex;
  justify-content: space-between;
}
/* --- FILTER: left segment — multiselect column (.sl-search-select, .filter-dropdown) --- */
.sl-search-select {
  display: flex;
  align-items: center;
  min-width: 0;
}
.sl-search-select app-multiselect {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  min-width: 0;
}
.sl-search-select .dropdown-btn {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  min-height: 40px !important;
  border-radius: 999px !important;
}
/* Static filter label (same column role as multiselect); e.g. "Contact" + chevron */
.sl-search-select.sl-search-select--static {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
  padding: 0 10px 0 8px;
  margin-right: 2px;
  border-right: 1px solid #e5e7eb;
  font-size: 14px;
  font-weight: 600;
  font-family: var(--app-font-poppins);
  color: #1d2b4f;
  white-space: nowrap;
  min-height: 40px;
}
.sl-search-select--static .sl-search-select-chevron {
  font-size: 18px !important;
  width: 18px;
  height: 18px;
  color: #6b7280 !important;
}
/* Wider / fluid pill (submission tab, narrow columns) */
.sl-search-card.sl-search-card--grow {
  flex: 1 1 auto !important;
  max-width: min(560px, 100%);
  width: 100%;
  min-width: 0;
}
.sl-search-card.sl-search-card--fill {
  flex: 1 1 auto !important;
  max-width: 100% !important;
  width: 100%;
  min-width: 0;
}
/* --- SEARCH: middle segment — search icon + text field --- */
.sl-search-input-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  width: 90%;
}
.sl-input-icon {
  color: #757575;
  font-size: 22px;
  width: 22px;
  height: 22px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  line-height: 1;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.sl-search-input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 14px;
  font-weight: 400;
  padding: 0;
  color: #1a1a1a;
  line-height: 1.25;
}
.sl-search-input::-webkit-input-placeholder {
  color: #9ca3af;
}
.sl-search-input::-moz-placeholder {
  color: #9ca3af;
}
.sl-search-input::-ms-input-placeholder {
  color: #9ca3af;
}
.sl-search-input::placeholder {
  color: #9ca3af;
}
/* --- ACTIONS: right segment inside pill — clear typed search, spacing --- */
.sl-search-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
  left: -9px;
}
.sl-clear-icon {
  color: #6b7280;
  font-size: 20px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.sl-clear-icon:hover {
  color: #111827;
}
/* --- Optional controls beside the pill (not inside .sl-search-card) --- */
.sl-filter-btn {
  width: 40px;
  height: 38px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5e7eb;
  background: #ffffff;
  box-shadow: none;
  color: #6b7280 !important;
  font-size: 22px;
  cursor: pointer;
  padding: 0;
  transition: background-color 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}
.sl-filter-btn:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}
.sl-filter-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(234, 179, 8, 0.35), 0 1px 3px rgba(15, 23, 42, 0.08);
}
.sl-filter-btn--active {
  color: #1f2937 !important;
  border-color: #cbd5e1;
  background: #f3f4f6;
}
.sl-add-btn {
  height: 40px;
  border-radius: 6px;
  border: none;
  background: #1fc3b4;
  color: #000;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: background-color 160ms ease, box-shadow 160ms ease, transform 140ms ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  white-space: nowrap;
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-size: 14px;
  line-height: 14px;
  letter-spacing: 0;
}
.sl-add-btn-secondary {
  height: 48px;
  border-radius: 6px;
  border: 1px solid #CBD2DE;
  background: #fff;
  color: #000;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: background-color 160ms ease, box-shadow 160ms ease, transform 140ms ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  white-space: nowrap;
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-size: 14px;
  line-height: 14px;
  letter-spacing: 0;
}
.sl-add-btn:hover {
  background: #0d9488;
  box-shadow: 0 10px 24px rgba(13, 148, 136, 0.3);
}
.sl-add-btn:active {
  transform: translateY(1px);
}
.sl-add-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15), 0 12px 28px rgba(255, 178, 69, 0.3);
}
.sl-right-group {
  display: inline-flex;
  align-items: center;
}
.sl-topbar-right {
  margin-left: auto;
  flex-shrink: 0;
  flex: 0 0 auto;
}
.sl-add-icon {
  font-size: 20px;
  line-height: 1;
}
.sl-add-label {
  font-size: 14px;
}
.sl-clear-filter-btn {
  height: 44px;
  border-radius: 6px;
  border: 1px solid #dbe2ee;
  background: #ffffff;
  color: #2563eb;
  font-weight: 600;
  padding: 0 16px;
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 140ms ease;
  white-space: nowrap;
}
.sl-clear-filter-btn:hover {
  background: #f5f9ff;
  border-color: #cbd5e1;
  box-shadow: 0 6px 16px rgba(17, 24, 39, 0.06);
}
.sl-clear-filter-btn:active {
  transform: translateY(1px);
}
.sl-clear-filter-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
}
.sl-outline-btn {
  height: 48px;
  border-radius: 14px;
  border: 1px solid #dbe2ee;
  background: #ffffff;
  color: #1f2937;
  font-weight: 600;
  font-size: 14px;
  padding: 0 16px;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 140ms ease;
}
.sl-outline-btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
  box-shadow: 0 6px 16px rgba(17, 24, 39, 0.06);
}
.sl-outline-btn:active {
  transform: translateY(1px);
}
.sl-outline-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.15);
}
@media (max-width: 640px) {
  .Search-Div {
    flex-wrap: wrap;
    gap: 10px;
  }

  .sl-search-card {
    flex: 1 1 100% !important;
    max-width: 100%;
  }

  .sl-add-btn,
.sl-clear-filter-btn,
.sl-outline-btn {
    flex: 1 1 auto;
  }
}
.add-more-link {
  font-family: var(--app-font-poppins);
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
  letter-spacing: 0;
  color: #155A57 !important;
  text-decoration: none;
  cursor: pointer;
  margin-top: 16px;
  border: none;
  background: none;
  font-style: normal;
}
.margin-top-20 {
  margin-top: 20px !important;
}
.header-title {
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0;
  color: #0A1A4F;
}
.header-description {
  font-family: var(--app-font-poppins);
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0;
  color: #0A1A4F;
}
.padding-bottom-11 {
  padding-bottom: 11px !important;
}
.margin-top-11 {
  margin-top: 11px !important;
}
/* -----------------------------------------------------------------------------
 * Teacher CMS list toolbars (Test / Homework / Quiz): matches staff-list pattern
 * -------------------------------------------------------------------------- */
.tcm-toolbar-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  width: 100%;
}
.tcm-toolbar-row .tcm-toolbar-left {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  flex: 1 1 auto;
  min-width: 0;
}
.tcm-toolbar-row .tcm-toolbar-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
  margin-left: auto;
}
/* Recently Added / Completed — active pill #FFB703 (assessment mockup) */
.tcm-segment-group {
  display: inline-flex;
  align-items: center;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 4px;
  gap: 4px;
}
.tcm-segment-btn {
  border: none;
  background: transparent;
  border-radius: 6px;
  padding: 8px 14px;
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-size: 14px;
  color: #000;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 140ms ease;
}
.tcm-segment-btn.is-active {
  background: #ffb703;
  color: #000;
}
/* Module switcher (same markup/classes as staff-list staff-type-dropdown) */
.staff-type-dropdown {
  width: auto;
  min-width: 160px;
  position: relative;
}
.staff-type-trigger {
  width: 100%;
  height: 40px;
  border-radius: 6px;
  border: 1px solid #e5e7eb;
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  cursor: pointer;
  transition: border-color 140ms ease, box-shadow 140ms ease;
}
.staff-type-trigger:hover {
  border-color: #d1d5db;
}
.staff-type-trigger:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.14);
}
.staff-type-text {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-style: semibold;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0px;
  color: #000;
  line-height: 1;
}
.staff-type-arrow {
  width: 8px;
  height: 8px;
  border-right: 1.8px solid #6b7280;
  border-bottom: 1.8px solid #6b7280;
  transform: rotate(45deg) translateY(-1px);
  transition: transform 140ms ease;
  margin-left: 8px;
}
.staff-type-arrow.open {
  transform: rotate(-135deg) translateY(-1px);
}
.staff-type-menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.13);
  padding: 6px;
  z-index: 1100;
}
.staff-type-item {
  width: 100%;
  border: none;
  background: transparent;
  text-align: left;
  border-radius: 10px;
  padding: 9px 10px;
  color: #334155;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}
.staff-type-item:hover {
  background: #f8fafc;
}
.staff-type-item.active {
  background: #f0fdfa;
  color: #0f766e;
}
.status-updating {
  opacity: 0.7;
  pointer-events: none;
}
.tcm-manage-cell {
  display: flex;
  gap: 12px;
}
.font-size-10 {
  font-size: 10px !important;
}
.tcm-manage-chevron {
  cursor: pointer;
}
/**
 * Shared composite file-upload row (school wizards: staff bank docs, student documentation, etc.)
 */
.doc-upload-row.three-coloum {
  align-items: flex-start;
}
.doc-upload-col {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.doc-upload-label {
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 600;
  color: #1a3a6e;
  margin: 12px 0 8px;
}
.doc-upload-label__hint {
  font-weight: 400;
  color: #64748b;
}
.doc-upload-field {
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: 44px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.doc-upload-text {
  flex: 1;
  min-width: 0;
  padding: 10px 12px;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.3;
  color: #1a3a6e;
  display: flex;
  align-items: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.doc-upload-text--empty {
  color: #94a3b8;
}
.doc-upload-icon-slot {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
}
.doc-upload-icon {
  width: 20px;
  height: 20px;
}
.doc-upload-native {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  font-size: 0;
}
.doc-upload-preview {
  align-self: flex-start;
  margin-top: 10px;
  padding: 0;
  border: none;
  background: none;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: #1b6f5c;
  cursor: pointer;
  text-align: left;
}
.doc-upload-preview:hover {
  text-decoration: underline;
}
.doc-upload-err {
  color: #e53935;
  margin-top: 8px;
  font-size: 13px;
}
/* Section header: title + subtitle left, “+ Add …” action right */
.doc-upload-section-header {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
.doc-upload-section-headings {
  flex: 1 1 240px;
  min-width: 0;
}
.doc-upload-section-title {
  font-family: var(--app-font-poppins);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  color: #0a1a4f;
  margin: 0;
  padding: 0;
}
.doc-upload-section-sub {
  display: block;
  font-family: var(--app-font-poppins);
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  color: #64748b;
  margin-top: 6px;
}
.doc-upload-add-link {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  padding: 0;
  margin: 0;
  border: none;
  background: none;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  color: #1b6f5c;
  cursor: pointer;
  flex-shrink: 0;
}
.doc-upload-add-link:hover {
  text-decoration: underline;
}
.doc-upload-add-link .mat-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: #1b6f5c;
}
.doc-upload-actions {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  width: 100%;
  margin-top: 32px;
  padding-top: 8px;
  box-sizing: border-box;
}
.req-star {
  color: #e53935;
}
.doc-upload-section-optional {
  font-weight: 500;
  color: #64748b;
}
/* You can add global variables to this file, and also import other style files */
/**
 * Reusable form typography (school admission & shared forms).
 * Apply .form-heading to section titles; .form-label on mat-label or native labels.
 */
.form-heading {
  font-family: var(--app-font-poppins);
  font-weight: 600;
  font-size: 16px;
  line-height: 16px;
  color: #0a1a4f;
  margin: 0;
  padding: 0;
}
.form-label {
  font-family: var(--app-font-poppins);
  font-weight: 500;
  font-size: 14px;
  line-height: 21px;
  color: #0a1a4f;
}
.mat-ripple-element {
  background-color: rgba(0, 0, 0, 0.1);
}
.mat-option {
  color: rgba(0, 0, 0, 0.87);
}
.mat-option:hover:not(.mat-option-disabled), .mat-option:focus:not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-option.mat-active {
  background: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}
.mat-option.mat-option-disabled {
  color: rgba(0, 0, 0, 0.38);
}
.mat-primary .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #236fed;
}
.mat-accent .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #5ab864;
}
.mat-warn .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #ef5350;
}
.mat-optgroup-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-optgroup-disabled .mat-optgroup-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-pseudo-checkbox {
  color: rgba(0, 0, 0, 0.54);
}
.mat-pseudo-checkbox::after {
  color: #fafafa;
}
.mat-pseudo-checkbox-disabled {
  color: #b0b0b0;
}
.mat-primary .mat-pseudo-checkbox-checked,
.mat-primary .mat-pseudo-checkbox-indeterminate {
  background: #236fed;
}
.mat-pseudo-checkbox-checked,
.mat-pseudo-checkbox-indeterminate,
.mat-accent .mat-pseudo-checkbox-checked,
.mat-accent .mat-pseudo-checkbox-indeterminate {
  background: #5ab864;
}
.mat-warn .mat-pseudo-checkbox-checked,
.mat-warn .mat-pseudo-checkbox-indeterminate {
  background: #ef5350;
}
.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,
.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled {
  background: #b0b0b0;
}
.mat-elevation-z0 {
  box-shadow: 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);
}
.mat-elevation-z1 {
  box-shadow: 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);
}
.mat-elevation-z2 {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z3 {
  box-shadow: 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);
}
.mat-elevation-z4 {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z5 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z6 {
  box-shadow: 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);
}
.mat-elevation-z7 {
  box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z8 {
  box-shadow: 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);
}
.mat-elevation-z9 {
  box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z10 {
  box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z11 {
  box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z12 {
  box-shadow: 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);
}
.mat-elevation-z13 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z14 {
  box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z15 {
  box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z16 {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z17 {
  box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z18 {
  box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z19 {
  box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z20 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z21 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z22 {
  box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z23 {
  box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z24 {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
}
.mat-app-background {
  background-color: #fafafa;
  color: rgba(0, 0, 0, 0.87);
}
.mat-theme-loaded-marker {
  display: none;
}
.mat-autocomplete-panel {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-autocomplete-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover) {
  background: white;
}
.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled) {
  color: rgba(0, 0, 0, 0.87);
}
.mat-badge-content {
  color: #236fed;
  background: #236fed;
}
@media (-ms-high-contrast: active) {
  .mat-badge-content {
    outline: solid 1px;
    border-radius: 0;
  }
}
.mat-badge-accent .mat-badge-content {
  background: #5ab864;
  color: #5ab864;
}
.mat-badge-warn .mat-badge-content {
  color: #ef5350;
  background: #ef5350;
}
.mat-badge {
  position: relative;
}
.mat-badge-hidden .mat-badge-content {
  display: none;
}
.mat-badge-disabled .mat-badge-content {
  background: #b9b9b9;
  color: rgba(0, 0, 0, 0.38);
}
.mat-badge-content {
  position: absolute;
  text-align: center;
  display: inline-block;
  border-radius: 50%;
  transition: transform 200ms ease-in-out;
  transform: scale(0.6);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  pointer-events: none;
}
.ng-animate-disabled .mat-badge-content,
.mat-badge-content._mat-animation-noopable {
  transition: none;
}
.mat-badge-content.mat-badge-active {
  transform: none;
}
.mat-badge-small .mat-badge-content {
  width: 16px;
  height: 16px;
  line-height: 16px;
}
.mat-badge-small.mat-badge-above .mat-badge-content {
  top: -8px;
}
.mat-badge-small.mat-badge-below .mat-badge-content {
  bottom: -8px;
}
.mat-badge-small.mat-badge-before .mat-badge-content {
  left: -16px;
}
[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content {
  left: auto;
  right: -16px;
}
.mat-badge-small.mat-badge-after .mat-badge-content {
  right: -16px;
}
[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content {
  right: auto;
  left: -16px;
}
.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -8px;
}
[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -8px;
}
.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -8px;
}
[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -8px;
}
.mat-badge-medium .mat-badge-content {
  width: 22px;
  height: 22px;
  line-height: 22px;
}
.mat-badge-medium.mat-badge-above .mat-badge-content {
  top: -11px;
}
.mat-badge-medium.mat-badge-below .mat-badge-content {
  bottom: -11px;
}
.mat-badge-medium.mat-badge-before .mat-badge-content {
  left: -22px;
}
[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content {
  left: auto;
  right: -22px;
}
.mat-badge-medium.mat-badge-after .mat-badge-content {
  right: -22px;
}
[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content {
  right: auto;
  left: -22px;
}
.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -11px;
}
[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -11px;
}
.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -11px;
}
[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -11px;
}
.mat-badge-large .mat-badge-content {
  width: 28px;
  height: 28px;
  line-height: 28px;
}
.mat-badge-large.mat-badge-above .mat-badge-content {
  top: -14px;
}
.mat-badge-large.mat-badge-below .mat-badge-content {
  bottom: -14px;
}
.mat-badge-large.mat-badge-before .mat-badge-content {
  left: -28px;
}
[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content {
  left: auto;
  right: -28px;
}
.mat-badge-large.mat-badge-after .mat-badge-content {
  right: -28px;
}
[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content {
  right: auto;
  left: -28px;
}
.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -14px;
}
[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -14px;
}
.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -14px;
}
[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -14px;
}
.mat-bottom-sheet-container {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-button, .mat-icon-button, .mat-stroked-button {
  color: inherit;
  background: transparent;
}
.mat-button.mat-primary, .mat-icon-button.mat-primary, .mat-stroked-button.mat-primary {
  color: #236fed;
}
.mat-button.mat-accent, .mat-icon-button.mat-accent, .mat-stroked-button.mat-accent {
  color: #5ab864;
}
.mat-button.mat-warn, .mat-icon-button.mat-warn, .mat-stroked-button.mat-warn {
  color: #ef5350;
}
.mat-button.mat-primary[disabled], .mat-button.mat-accent[disabled], .mat-button.mat-warn[disabled], .mat-button[disabled][disabled], .mat-icon-button.mat-primary[disabled], .mat-icon-button.mat-accent[disabled], .mat-icon-button.mat-warn[disabled], .mat-icon-button[disabled][disabled], .mat-stroked-button.mat-primary[disabled], .mat-stroked-button.mat-accent[disabled], .mat-stroked-button.mat-warn[disabled], .mat-stroked-button[disabled][disabled] {
  color: rgba(0, 0, 0, 0.26);
}
.mat-button.mat-primary .mat-button-focus-overlay, .mat-icon-button.mat-primary .mat-button-focus-overlay, .mat-stroked-button.mat-primary .mat-button-focus-overlay {
  background-color: #236fed;
}
.mat-button.mat-accent .mat-button-focus-overlay, .mat-icon-button.mat-accent .mat-button-focus-overlay, .mat-stroked-button.mat-accent .mat-button-focus-overlay {
  background-color: #5ab864;
}
.mat-button.mat-warn .mat-button-focus-overlay, .mat-icon-button.mat-warn .mat-button-focus-overlay, .mat-stroked-button.mat-warn .mat-button-focus-overlay {
  background-color: #ef5350;
}
.mat-button[disabled] .mat-button-focus-overlay, .mat-icon-button[disabled] .mat-button-focus-overlay, .mat-stroked-button[disabled] .mat-button-focus-overlay {
  background-color: transparent;
}
.mat-button .mat-ripple-element, .mat-icon-button .mat-ripple-element, .mat-stroked-button .mat-ripple-element {
  opacity: 0.1;
  background-color: currentColor;
}
.mat-button-focus-overlay {
  background: black;
}
.mat-stroked-button:not([disabled]) {
  border-color: rgba(0, 0, 0, 0.12);
}
.mat-flat-button, .mat-raised-button, .mat-fab, .mat-mini-fab {
  color: rgba(0, 0, 0, 0.87);
  background-color: white;
}
.mat-flat-button.mat-primary, .mat-raised-button.mat-primary, .mat-fab.mat-primary, .mat-mini-fab.mat-primary {
  color: #236fed;
}
.mat-flat-button.mat-accent, .mat-raised-button.mat-accent, .mat-fab.mat-accent, .mat-mini-fab.mat-accent {
  color: #5ab864;
}
.mat-flat-button.mat-warn, .mat-raised-button.mat-warn, .mat-fab.mat-warn, .mat-mini-fab.mat-warn {
  color: #ef5350;
}
.mat-flat-button.mat-primary[disabled], .mat-flat-button.mat-accent[disabled], .mat-flat-button.mat-warn[disabled], .mat-flat-button[disabled][disabled], .mat-raised-button.mat-primary[disabled], .mat-raised-button.mat-accent[disabled], .mat-raised-button.mat-warn[disabled], .mat-raised-button[disabled][disabled], .mat-fab.mat-primary[disabled], .mat-fab.mat-accent[disabled], .mat-fab.mat-warn[disabled], .mat-fab[disabled][disabled], .mat-mini-fab.mat-primary[disabled], .mat-mini-fab.mat-accent[disabled], .mat-mini-fab.mat-warn[disabled], .mat-mini-fab[disabled][disabled] {
  color: rgba(0, 0, 0, 0.26);
}
.mat-flat-button.mat-primary, .mat-raised-button.mat-primary, .mat-fab.mat-primary, .mat-mini-fab.mat-primary {
  background-color: #236fed;
}
.mat-flat-button.mat-accent, .mat-raised-button.mat-accent, .mat-fab.mat-accent, .mat-mini-fab.mat-accent {
  background-color: #5ab864;
}
.mat-flat-button.mat-warn, .mat-raised-button.mat-warn, .mat-fab.mat-warn, .mat-mini-fab.mat-warn {
  background-color: #ef5350;
}
.mat-flat-button.mat-primary[disabled], .mat-flat-button.mat-accent[disabled], .mat-flat-button.mat-warn[disabled], .mat-flat-button[disabled][disabled], .mat-raised-button.mat-primary[disabled], .mat-raised-button.mat-accent[disabled], .mat-raised-button.mat-warn[disabled], .mat-raised-button[disabled][disabled], .mat-fab.mat-primary[disabled], .mat-fab.mat-accent[disabled], .mat-fab.mat-warn[disabled], .mat-fab[disabled][disabled], .mat-mini-fab.mat-primary[disabled], .mat-mini-fab.mat-accent[disabled], .mat-mini-fab.mat-warn[disabled], .mat-mini-fab[disabled][disabled] {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-flat-button.mat-primary .mat-ripple-element, .mat-raised-button.mat-primary .mat-ripple-element, .mat-fab.mat-primary .mat-ripple-element, .mat-mini-fab.mat-primary .mat-ripple-element {
  background-color: rgba(35, 111, 237, 0.1);
}
.mat-flat-button.mat-accent .mat-ripple-element, .mat-raised-button.mat-accent .mat-ripple-element, .mat-fab.mat-accent .mat-ripple-element, .mat-mini-fab.mat-accent .mat-ripple-element {
  background-color: rgba(90, 184, 100, 0.1);
}
.mat-flat-button.mat-warn .mat-ripple-element, .mat-raised-button.mat-warn .mat-ripple-element, .mat-fab.mat-warn .mat-ripple-element, .mat-mini-fab.mat-warn .mat-ripple-element {
  background-color: rgba(239, 83, 80, 0.1);
}
.mat-stroked-button:not([class*=mat-elevation-z]), .mat-flat-button:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-raised-button:not([class*=mat-elevation-z]) {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-raised-button:not([disabled]):active:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-raised-button[disabled]:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-fab:not([class*=mat-elevation-z]), .mat-mini-fab:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]), .mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-fab[disabled]:not([class*=mat-elevation-z]), .mat-mini-fab[disabled]:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-button-toggle-standalone,
.mat-button-toggle-group {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,
.mat-button-toggle-group-appearance-standard {
  box-shadow: none;
}
.mat-button-toggle {
  color: rgba(0, 0, 0, 0.38);
}
.mat-button-toggle .mat-button-toggle-focus-overlay {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-appearance-standard {
  color: rgba(0, 0, 0, 0.87);
  background: white;
}
.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay {
  background-color: black;
}
.mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
}
[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle {
  border-left: none;
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle + .mat-button-toggle {
  border-left: none;
  border-right: none;
  border-top: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-checked {
  background-color: #e0e0e0;
  color: rgba(0, 0, 0, 0.54);
}
.mat-button-toggle-checked.mat-button-toggle-appearance-standard {
  color: rgba(0, 0, 0, 0.87);
}
.mat-button-toggle-disabled {
  color: rgba(0, 0, 0, 0.26);
  background-color: #eeeeee;
}
.mat-button-toggle-disabled.mat-button-toggle-appearance-standard {
  background: white;
}
.mat-button-toggle-disabled.mat-button-toggle-checked {
  background-color: #bdbdbd;
}
.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,
.mat-button-toggle-group-appearance-standard {
  border: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-card {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-card:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-card.mat-card-flat:not([class*=mat-elevation-z]) {
  box-shadow: 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);
}
.mat-card-subtitle {
  color: rgba(0, 0, 0, 0.54);
}
.mat-checkbox-frame {
  border-color: rgba(0, 0, 0, 0.54);
}
.mat-checkbox-checkmark {
  fill: #fafafa;
}
.mat-checkbox-checkmark-path {
  stroke: #fafafa !important;
}
@media (-ms-high-contrast: black-on-white) {
  .mat-checkbox-checkmark-path {
    stroke: #000 !important;
  }
}
.mat-checkbox-mixedmark {
  background-color: #fafafa;
}
.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background, .mat-checkbox-checked.mat-primary .mat-checkbox-background {
  background-color: #236fed;
}
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .mat-checkbox-checked.mat-accent .mat-checkbox-background {
  background-color: #5ab864;
}
.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background, .mat-checkbox-checked.mat-warn .mat-checkbox-background {
  background-color: #ef5350;
}
.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background, .mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background {
  background-color: #b0b0b0;
}
.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame {
  border-color: #b0b0b0;
}
.mat-checkbox-disabled .mat-checkbox-label {
  color: rgba(0, 0, 0, 0.54);
}
@media (-ms-high-contrast: active) {
  .mat-checkbox-disabled {
    opacity: 0.5;
  }
}
@media (-ms-high-contrast: active) {
  .mat-checkbox-background {
    background: none;
  }
}
.mat-checkbox .mat-ripple-element {
  background-color: black;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element {
  background: #236fed;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element {
  background: #5ab864;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element {
  background: #ef5350;
}
.mat-chip.mat-standard-chip {
  background-color: #e0e0e0;
  color: rgba(0, 0, 0, 0.87);
}
.mat-chip.mat-standard-chip .mat-chip-remove {
  color: rgba(0, 0, 0, 0.87);
  opacity: 0.4;
}
.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active {
  box-shadow: 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);
}
.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover {
  opacity: 0.54;
}
.mat-chip.mat-standard-chip.mat-chip-disabled {
  opacity: 0.4;
}
.mat-chip.mat-standard-chip::after {
  background: black;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary {
  background-color: #236fed;
  color: #236fed;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove {
  color: #236fed;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element {
  background: rgba(35, 111, 237, 0.1);
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn {
  background-color: #ef5350;
  color: #ef5350;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove {
  color: #ef5350;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element {
  background: rgba(239, 83, 80, 0.1);
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent {
  background-color: #5ab864;
  color: #5ab864;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove {
  color: #5ab864;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element {
  background: rgba(90, 184, 100, 0.1);
}
.mat-table {
  background: white;
}
.mat-table thead, .mat-table tbody, .mat-table tfoot,
mat-header-row, mat-row, mat-footer-row,
[mat-header-row], [mat-row], [mat-footer-row],
.mat-table-sticky {
  background: inherit;
}
mat-row, mat-header-row, mat-footer-row,
th.mat-header-cell, td.mat-cell, td.mat-footer-cell {
  border-bottom-color: rgba(0, 0, 0, 0.12);
}
.mat-header-cell {
  color: rgba(0, 0, 0, 0.54);
}
.mat-cell, .mat-footer-cell {
  color: rgba(0, 0, 0, 0.87);
}
.mat-calendar-arrow {
  border-top-color: rgba(0, 0, 0, 0.54);
}
.mat-datepicker-toggle,
.mat-datepicker-content .mat-calendar-next-button,
.mat-datepicker-content .mat-calendar-previous-button {
  color: rgba(0, 0, 0, 0.54);
}
.mat-calendar-table-header {
  color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-table-header-divider::after {
  background: rgba(0, 0, 0, 0.12);
}
.mat-calendar-body-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-calendar-body-cell-content {
  color: rgba(0, 0, 0, 0.87);
  border-color: transparent;
}
.mat-calendar-body-disabled > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected) {
  color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected),
.cdk-keyboard-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected),
.cdk-program-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected) {
  background-color: rgba(0, 0, 0, 0.04);
}
.mat-calendar-body-today:not(.mat-calendar-body-selected) {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-body-disabled > .mat-calendar-body-today:not(.mat-calendar-body-selected) {
  border-color: rgba(0, 0, 0, 0.18);
}
.mat-calendar-body-selected {
  background-color: #236fed;
  color: #236fed;
}
.mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(35, 111, 237, 0.4);
}
.mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px #236fed;
}
.mat-datepicker-content {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-selected {
  background-color: #5ab864;
  color: #5ab864;
}
.mat-datepicker-content.mat-accent .mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(90, 184, 100, 0.4);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px #5ab864;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-selected {
  background-color: #ef5350;
  color: #ef5350;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(239, 83, 80, 0.4);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px #ef5350;
}
.mat-datepicker-content-touch {
  box-shadow: 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);
}
.mat-datepicker-toggle-active {
  color: #236fed;
}
.mat-datepicker-toggle-active.mat-accent {
  color: #5ab864;
}
.mat-datepicker-toggle-active.mat-warn {
  color: #ef5350;
}
.mat-dialog-container {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-divider {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-divider-vertical {
  border-right-color: rgba(0, 0, 0, 0.12);
}
.mat-expansion-panel {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-expansion-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-action-row {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]), .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]), .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]) {
  background: rgba(0, 0, 0, 0.04);
}
@media (hover: none) {
  .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover {
    background: white;
  }
}
.mat-expansion-panel-header-title {
  color: rgba(0, 0, 0, 0.87);
}
.mat-expansion-panel-header-description,
.mat-expansion-indicator::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-expansion-panel-header[aria-disabled=true] {
  color: rgba(0, 0, 0, 0.26);
}
.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,
.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description {
  color: inherit;
}
.mat-form-field-label {
  color: rgba(0, 0, 0, 0.6);
}
.mat-hint {
  color: rgba(0, 0, 0, 0.6);
}
.mat-form-field.mat-focused .mat-form-field-label {
  color: #236fed;
}
.mat-form-field.mat-focused .mat-form-field-label.mat-accent {
  color: #5ab864;
}
.mat-form-field.mat-focused .mat-form-field-label.mat-warn {
  color: #ef5350;
}
.mat-focused .mat-form-field-required-marker {
  color: #5ab864;
}
.mat-form-field-ripple {
  background-color: rgba(0, 0, 0, 0.87);
}
.mat-form-field.mat-focused .mat-form-field-ripple {
  background-color: #236fed;
}
.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent {
  background-color: #5ab864;
}
.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn {
  background-color: #ef5350;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix::after {
  color: #236fed;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix::after {
  color: #5ab864;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix::after {
  color: #ef5350;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-label {
  color: #ef5350;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,
.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker {
  color: #ef5350;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,
.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent {
  background-color: #ef5350;
}
.mat-error {
  color: #ef5350;
}
.mat-form-field-appearance-legacy .mat-form-field-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-form-field-appearance-legacy .mat-hint {
  color: rgba(0, 0, 0, 0.54);
}
.mat-form-field-appearance-legacy .mat-form-field-underline {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.42) 33%, transparent 0%);
  background-size: 4px 100%;
  background-repeat: repeat-x;
}
.mat-form-field-appearance-standard .mat-form-field-underline {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.42) 33%, transparent 0%);
  background-size: 4px 100%;
  background-repeat: repeat-x;
}
.mat-form-field-appearance-fill .mat-form-field-flex {
  background-color: rgba(0, 0, 0, 0.04);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex {
  background-color: rgba(0, 0, 0, 0.02);
}
.mat-form-field-appearance-fill .mat-form-field-underline::before {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline::before {
  background-color: transparent;
}
.mat-form-field-appearance-outline .mat-form-field-outline {
  color: rgba(0, 0, 0, 0.12);
}
.mat-form-field-appearance-outline .mat-form-field-outline-thick {
  color: rgba(0, 0, 0, 0.87);
}
.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick {
  color: #236fed;
}
.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick {
  color: #5ab864;
}
.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick {
  color: #ef5350;
}
.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick {
  color: #ef5350;
}
.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline {
  color: rgba(0, 0, 0, 0.06);
}
.mat-icon.mat-primary {
  color: #236fed;
}
.mat-icon.mat-accent {
  color: #5ab864;
}
.mat-icon.mat-warn {
  color: #ef5350;
}
.mat-form-field-type-mat-native-select .mat-form-field-infix::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-input-element:disabled,
.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix::after {
  color: rgba(0, 0, 0, 0.38);
}
.mat-input-element {
  caret-color: #236fed;
}
.mat-input-element::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-moz-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-moz-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-accent .mat-input-element {
  caret-color: #5ab864;
}
.mat-warn .mat-input-element,
.mat-form-field-invalid .mat-input-element {
  caret-color: #ef5350;
}
.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix::after {
  color: #ef5350;
}
.mat-list-base .mat-list-item {
  color: rgba(0, 0, 0, 0.87);
}
.mat-list-base .mat-list-option {
  color: rgba(0, 0, 0, 0.87);
}
.mat-list-base .mat-subheader {
  color: rgba(0, 0, 0, 0.54);
}
.mat-list-item-disabled {
  background-color: #eeeeee;
}
.mat-list-option:hover, .mat-list-option:focus,
.mat-nav-list .mat-list-item:hover,
.mat-nav-list .mat-list-item:focus,
.mat-action-list .mat-list-item:hover,
.mat-action-list .mat-list-item:focus {
  background: rgba(0, 0, 0, 0.04);
}
.mat-menu-panel {
  background: white;
}
.mat-menu-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-menu-item {
  background: transparent;
  color: rgba(0, 0, 0, 0.87);
}
.mat-menu-item[disabled], .mat-menu-item[disabled]::after {
  color: rgba(0, 0, 0, 0.38);
}
.mat-menu-item .mat-icon-no-color,
.mat-menu-item-submenu-trigger::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-menu-item:hover:not([disabled]),
.mat-menu-item.cdk-program-focused:not([disabled]),
.mat-menu-item.cdk-keyboard-focused:not([disabled]),
.mat-menu-item-highlighted:not([disabled]) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-paginator {
  background: white;
}
.mat-paginator,
.mat-paginator-page-size .mat-select-trigger {
  color: rgba(0, 0, 0, 0.54);
}
.mat-paginator-decrement,
.mat-paginator-increment {
  border-top: 2px solid rgba(0, 0, 0, 0.54);
  border-right: 2px solid rgba(0, 0, 0, 0.54);
}
.mat-paginator-first,
.mat-paginator-last {
  border-top: 2px solid rgba(0, 0, 0, 0.54);
}
.mat-icon-button[disabled] .mat-paginator-decrement,
.mat-icon-button[disabled] .mat-paginator-increment,
.mat-icon-button[disabled] .mat-paginator-first,
.mat-icon-button[disabled] .mat-paginator-last {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-progress-bar-background {
  fill: #236fed;
}
.mat-progress-bar-buffer {
  background-color: #236fed;
}
.mat-progress-bar-fill::after {
  background-color: #236fed;
}
.mat-progress-bar.mat-accent .mat-progress-bar-background {
  fill: #5ab864;
}
.mat-progress-bar.mat-accent .mat-progress-bar-buffer {
  background-color: #5ab864;
}
.mat-progress-bar.mat-accent .mat-progress-bar-fill::after {
  background-color: #5ab864;
}
.mat-progress-bar.mat-warn .mat-progress-bar-background {
  fill: #ef5350;
}
.mat-progress-bar.mat-warn .mat-progress-bar-buffer {
  background-color: #ef5350;
}
.mat-progress-bar.mat-warn .mat-progress-bar-fill::after {
  background-color: #ef5350;
}
.mat-progress-spinner circle, .mat-spinner circle {
  stroke: #236fed;
}
.mat-progress-spinner.mat-accent circle, .mat-spinner.mat-accent circle {
  stroke: #5ab864;
}
.mat-progress-spinner.mat-warn circle, .mat-spinner.mat-warn circle {
  stroke: #ef5350;
}
.mat-radio-outer-circle {
  border-color: rgba(0, 0, 0, 0.54);
}
.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle {
  border-color: #236fed;
}
.mat-radio-button.mat-primary .mat-radio-inner-circle,
.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-primary:active .mat-radio-persistent-ripple {
  background-color: #236fed;
}
.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle {
  border-color: #5ab864;
}
.mat-radio-button.mat-accent .mat-radio-inner-circle,
.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-accent:active .mat-radio-persistent-ripple {
  background-color: #5ab864;
}
.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle {
  border-color: #ef5350;
}
.mat-radio-button.mat-warn .mat-radio-inner-circle,
.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-warn:active .mat-radio-persistent-ripple {
  background-color: #ef5350;
}
.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,
.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,
.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button.mat-radio-disabled .mat-radio-label-content {
  color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button .mat-ripple-element {
  background-color: black;
}
.mat-select-value {
  color: rgba(0, 0, 0, 0.87);
}
.mat-select-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-select-disabled .mat-select-value {
  color: rgba(0, 0, 0, 0.38);
}
.mat-select-arrow {
  color: rgba(0, 0, 0, 0.54);
}
.mat-select-panel {
  background: white;
}
.mat-select-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple) {
  background: rgba(0, 0, 0, 0.12);
}
.mat-form-field.mat-focused.mat-primary .mat-select-arrow {
  color: #236fed;
}
.mat-form-field.mat-focused.mat-accent .mat-select-arrow {
  color: #5ab864;
}
.mat-form-field.mat-focused.mat-warn .mat-select-arrow {
  color: #ef5350;
}
.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow {
  color: #ef5350;
}
.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow {
  color: rgba(0, 0, 0, 0.38);
}
.mat-drawer-container {
  background-color: #fafafa;
  color: rgba(0, 0, 0, 0.87);
}
.mat-drawer {
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-drawer.mat-drawer-push {
  background-color: white;
}
.mat-drawer:not(.mat-drawer-side) {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}
.mat-drawer-side {
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-drawer-side.mat-drawer-end {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
  border-right: none;
}
[dir=rtl] .mat-drawer-side {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
  border-right: none;
}
[dir=rtl] .mat-drawer-side.mat-drawer-end {
  border-left: none;
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-drawer-backdrop.mat-drawer-shown {
  background-color: rgba(0, 0, 0, 0.6);
}
.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb {
  background-color: #5ab864;
}
.mat-slide-toggle.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(90, 184, 100, 0.54);
}
.mat-slide-toggle.mat-checked .mat-ripple-element {
  background-color: #5ab864;
}
.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb {
  background-color: #236fed;
}
.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(35, 111, 237, 0.54);
}
.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element {
  background-color: #236fed;
}
.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb {
  background-color: #ef5350;
}
.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(239, 83, 80, 0.54);
}
.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element {
  background-color: #ef5350;
}
.mat-slide-toggle:not(.mat-checked) .mat-ripple-element {
  background-color: black;
}
.mat-slide-toggle-thumb {
  box-shadow: 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);
  background-color: #fafafa;
}
.mat-slide-toggle-bar {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-primary .mat-slider-track-fill,
.mat-primary .mat-slider-thumb,
.mat-primary .mat-slider-thumb-label {
  background-color: #236fed;
}
.mat-primary .mat-slider-thumb-label-text {
  color: #236fed;
}
.mat-accent .mat-slider-track-fill,
.mat-accent .mat-slider-thumb,
.mat-accent .mat-slider-thumb-label {
  background-color: #5ab864;
}
.mat-accent .mat-slider-thumb-label-text {
  color: #5ab864;
}
.mat-warn .mat-slider-track-fill,
.mat-warn .mat-slider-thumb,
.mat-warn .mat-slider-thumb-label {
  background-color: #ef5350;
}
.mat-warn .mat-slider-thumb-label-text {
  color: #ef5350;
}
.mat-slider-focus-ring {
  background-color: rgba(90, 184, 100, 0.2);
}
.mat-slider:hover .mat-slider-track-background,
.cdk-focused .mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-disabled .mat-slider-track-background,
.mat-slider-disabled .mat-slider-track-fill,
.mat-slider-disabled .mat-slider-thumb {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-disabled:hover .mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-min-value .mat-slider-focus-ring {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,
.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label {
  background-color: rgba(0, 0, 0, 0.87);
}
.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,
.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: transparent;
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb, .mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb, .mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-has-ticks .mat-slider-wrapper::after {
  border-color: rgba(0, 0, 0, 0.7);
}
.mat-slider-horizontal .mat-slider-ticks {
  background-image: repeating-linear-gradient(to right, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
  background-image: -moz-repeating-linear-gradient(0.0001deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
}
.mat-slider-vertical .mat-slider-ticks {
  background-image: repeating-linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
}
.mat-step-header.cdk-keyboard-focused, .mat-step-header.cdk-program-focused, .mat-step-header:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
@media (hover: none) {
  .mat-step-header:hover {
    background: none;
  }
}
.mat-step-header .mat-step-label,
.mat-step-header .mat-step-optional {
  color: rgba(0, 0, 0, 0.54);
}
.mat-step-header .mat-step-icon {
  background-color: rgba(0, 0, 0, 0.54);
  color: #236fed;
}
.mat-step-header .mat-step-icon-selected,
.mat-step-header .mat-step-icon-state-done,
.mat-step-header .mat-step-icon-state-edit {
  background-color: #236fed;
  color: #236fed;
}
.mat-step-header .mat-step-icon-state-error {
  background-color: transparent;
  color: #ef5350;
}
.mat-step-header .mat-step-label.mat-step-label-active {
  color: rgba(0, 0, 0, 0.87);
}
.mat-step-header .mat-step-label.mat-step-label-error {
  color: #ef5350;
}
.mat-stepper-horizontal, .mat-stepper-vertical {
  background-color: white;
}
.mat-stepper-vertical-line::before {
  border-left-color: rgba(0, 0, 0, 0.12);
}
.mat-horizontal-stepper-header::before,
.mat-horizontal-stepper-header::after,
.mat-stepper-horizontal-line {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-sort-header-arrow {
  color: #757575;
}
.mat-tab-nav-bar,
.mat-tab-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.mat-tab-group-inverted-header .mat-tab-nav-bar,
.mat-tab-group-inverted-header .mat-tab-header {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  border-bottom: none;
}
.mat-tab-label, .mat-tab-link {
  color: rgba(0, 0, 0, 0.87);
}
.mat-tab-label.mat-tab-disabled, .mat-tab-link.mat-tab-disabled {
  color: rgba(0, 0, 0, 0.38);
}
.mat-tab-header-pagination-chevron {
  border-color: rgba(0, 0, 0, 0.87);
}
.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-tab-group[class*=mat-background-] .mat-tab-header,
.mat-tab-nav-bar[class*=mat-background-] {
  border-bottom: none;
  border-top: none;
}
.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(35, 111, 237, 0.3);
}
.mat-tab-group.mat-primary .mat-ink-bar, .mat-tab-nav-bar.mat-primary .mat-ink-bar {
  background-color: #236fed;
}
.mat-tab-group.mat-primary.mat-background-primary .mat-ink-bar, .mat-tab-nav-bar.mat-primary.mat-background-primary .mat-ink-bar {
  background-color: #236fed;
}
.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(90, 184, 100, 0.3);
}
.mat-tab-group.mat-accent .mat-ink-bar, .mat-tab-nav-bar.mat-accent .mat-ink-bar {
  background-color: #5ab864;
}
.mat-tab-group.mat-accent.mat-background-accent .mat-ink-bar, .mat-tab-nav-bar.mat-accent.mat-background-accent .mat-ink-bar {
  background-color: #5ab864;
}
.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(239, 83, 80, 0.3);
}
.mat-tab-group.mat-warn .mat-ink-bar, .mat-tab-nav-bar.mat-warn .mat-ink-bar {
  background-color: #ef5350;
}
.mat-tab-group.mat-warn.mat-background-warn .mat-ink-bar, .mat-tab-nav-bar.mat-warn.mat-background-warn .mat-ink-bar {
  background-color: #ef5350;
}
.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(35, 111, 237, 0.3);
}
.mat-tab-group.mat-background-primary .mat-tab-header, .mat-tab-group.mat-background-primary .mat-tab-links, .mat-tab-group.mat-background-primary .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-primary .mat-tab-header, .mat-tab-nav-bar.mat-background-primary .mat-tab-links, .mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination {
  background-color: #236fed;
}
.mat-tab-group.mat-background-primary .mat-tab-label, .mat-tab-group.mat-background-primary .mat-tab-link, .mat-tab-nav-bar.mat-background-primary .mat-tab-label, .mat-tab-nav-bar.mat-background-primary .mat-tab-link {
  color: #236fed;
}
.mat-tab-group.mat-background-primary .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-primary .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-primary .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-primary .mat-tab-link.mat-tab-disabled {
  color: rgba(35, 111, 237, 0.4);
}
.mat-tab-group.mat-background-primary .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-chevron {
  border-color: #236fed;
}
.mat-tab-group.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(35, 111, 237, 0.4);
}
.mat-tab-group.mat-background-primary .mat-ripple-element, .mat-tab-nav-bar.mat-background-primary .mat-ripple-element {
  background-color: rgba(35, 111, 237, 0.12);
}
.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(90, 184, 100, 0.3);
}
.mat-tab-group.mat-background-accent .mat-tab-header, .mat-tab-group.mat-background-accent .mat-tab-links, .mat-tab-group.mat-background-accent .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-accent .mat-tab-header, .mat-tab-nav-bar.mat-background-accent .mat-tab-links, .mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination {
  background-color: #5ab864;
}
.mat-tab-group.mat-background-accent .mat-tab-label, .mat-tab-group.mat-background-accent .mat-tab-link, .mat-tab-nav-bar.mat-background-accent .mat-tab-label, .mat-tab-nav-bar.mat-background-accent .mat-tab-link {
  color: #5ab864;
}
.mat-tab-group.mat-background-accent .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-accent .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-accent .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-accent .mat-tab-link.mat-tab-disabled {
  color: rgba(90, 184, 100, 0.4);
}
.mat-tab-group.mat-background-accent .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-chevron {
  border-color: #5ab864;
}
.mat-tab-group.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(90, 184, 100, 0.4);
}
.mat-tab-group.mat-background-accent .mat-ripple-element, .mat-tab-nav-bar.mat-background-accent .mat-ripple-element {
  background-color: rgba(90, 184, 100, 0.12);
}
.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(239, 83, 80, 0.3);
}
.mat-tab-group.mat-background-warn .mat-tab-header, .mat-tab-group.mat-background-warn .mat-tab-links, .mat-tab-group.mat-background-warn .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-warn .mat-tab-header, .mat-tab-nav-bar.mat-background-warn .mat-tab-links, .mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination {
  background-color: #ef5350;
}
.mat-tab-group.mat-background-warn .mat-tab-label, .mat-tab-group.mat-background-warn .mat-tab-link, .mat-tab-nav-bar.mat-background-warn .mat-tab-label, .mat-tab-nav-bar.mat-background-warn .mat-tab-link {
  color: #ef5350;
}
.mat-tab-group.mat-background-warn .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-warn .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-warn .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-warn .mat-tab-link.mat-tab-disabled {
  color: rgba(239, 83, 80, 0.4);
}
.mat-tab-group.mat-background-warn .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-chevron {
  border-color: #ef5350;
}
.mat-tab-group.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(239, 83, 80, 0.4);
}
.mat-tab-group.mat-background-warn .mat-ripple-element, .mat-tab-nav-bar.mat-background-warn .mat-ripple-element {
  background-color: rgba(239, 83, 80, 0.12);
}
.mat-toolbar {
  background: whitesmoke;
  color: rgba(0, 0, 0, 0.87);
}
.mat-toolbar.mat-primary {
  background: #236fed;
  color: #236fed;
}
.mat-toolbar.mat-accent {
  background: #5ab864;
  color: #5ab864;
}
.mat-toolbar.mat-warn {
  background: #ef5350;
  color: #ef5350;
}
.mat-toolbar .mat-form-field-underline,
.mat-toolbar .mat-form-field-ripple,
.mat-toolbar .mat-focused .mat-form-field-ripple {
  background-color: currentColor;
}
.mat-toolbar .mat-form-field-label,
.mat-toolbar .mat-focused .mat-form-field-label,
.mat-toolbar .mat-select-value,
.mat-toolbar .mat-select-arrow,
.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow {
  color: inherit;
}
.mat-toolbar .mat-input-element {
  caret-color: currentColor;
}
.mat-tooltip {
  background: rgba(97, 97, 97, 0.9);
}
.mat-tree {
  background: white;
}
.mat-tree-node,
.mat-nested-tree-node {
  color: rgba(0, 0, 0, 0.87);
}
.mat-snack-bar-container {
  color: rgba(255, 255, 255, 0.7);
  background: #323232;
  box-shadow: 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);
}
.mat-simple-snackbar-action {
  color: #5ab864;
}
/* ---------------------------------------------------------------------------

   Global CSS variables (design tokens)

   --------------------------------------------------------------------------- */
:root {
  /* Font tokens: see fonts.scss (--app-font-poppins, --app-font-sans) */
  --app-color-heading: #1a2550;
  --app-color-body: #7d859c;
  --app-color-teal: #57b8a6;
  --app-color-teal-hover: #4fae9d;
  --app-color-white: #ffffff;
  --app-radius-8: 8px;
  --app-radius-12: 12px;
}
body {
  margin: 0;
  font-family: var(--app-font-sans);
  background: #f5f7fb;
  color: var(--app-color-body);
}
/* Typography baseline: enforce Poppins across app UI.
   Exclude icon glyph classes so Material Icons keep rendering correctly. */
body,
body *:not(.material-icons):not(.mat-icon) {
  font-family: var(--app-font-poppins);
}
/* ---------------------------------------------------------------------------
   Empty state (No data) - center image only
--------------------------------------------------------------------------- */
.cmd-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 200px;
}
.cmd-empty .DataNotFind {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
}
.data_not_founttext,
.no-data-add {
  display: none !important;
}
.data_not_fountimg,
.no-data-img {
  display: flex;
  align-items: center;
  justify-content: center;
}
.data_not_fountimg img,
.no-data-img img {
  width: min(180px, 60vw);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.app-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  min-height: 220px;
}
.app-empty-state img {
  width: min(180px, 60vw);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
/* ---------------------------------------------------------------------------
   MatSnackBar redesign (top-center, glassmorphism)
   Applied via MatSnackBar `panelClass`: ['app-snackbar', 'app-snackbar--<type>']
--------------------------------------------------------------------------- */
.mat-snack-bar-container {
  box-shadow: none;
}
.mat-snack-bar-container.app-snackbar {
  padding: 0 !important;
  min-width: 600px !important;
  max-width: min(900px, calc(100vw - 32px)) !important;
  border-radius: 16px !important;
  border: 1px solid #c5c5c5;
  border-radius: 16px;
}
.mat-snack-bar-container.app-snackbar.app-snackbar--success {
  color: #ffffff;
  backdrop-filter: blur(8.5px) !important;
  -webkit-backdrop-filter: blur(8.5px) !important;
  background: radial-gradient(50% 50% at 50% 50%, rgba(47, 143, 135, 0.88) 0%, rgba(23, 111, 107, 0.88) 100%), rgba(255, 255, 255, 0.88) !important;
}
.mat-snack-bar-container.app-snackbar.app-snackbar--error,
.mat-snack-bar-container.app-snackbar.app-snackbar--fail,
.mat-snack-bar-container.app-snackbar.app-snackbar--rejected {
  color: #000000;
  backdrop-filter: blur(8.5px) !important;
  -webkit-backdrop-filter: blur(8.5px) !important;
  background: radial-gradient(50% 50% at 50% 50%, rgba(255, 103, 103, 0.88) 0%, rgba(250, 81, 81, 0.88) 100%), rgba(255, 255, 255, 0.88) !important;
}
.mat-snack-bar-container.app-snackbar.app-snackbar--notification {
  color: #000000;
  backdrop-filter: blur(8.5px) !important;
  -webkit-backdrop-filter: blur(8.5px) !important;
  background: radial-gradient(50% 50% at 50% 50%, rgba(198, 161, 92, 0.88) 0%, rgba(204, 162, 84, 0.88) 100%), rgba(255, 255, 255, 0.88) !important;
}
/* Hide scrollbar but keep scrolling (cross-browser) */
.app-hide-scrollbar {
  -ms-overflow-style: none;
  /* IE/old Edge */
  scrollbar-width: none;
  /* Firefox */
}
.app-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.app-hide-scrollbar::-webkit-scrollbar-thumb {
  background: transparent;
}
/* Apply hidden-scrollbar to common scroll containers (Windows-friendly).
   Keeps scrolling behavior, only hides the scrollbar UI. */
.scroll,
.scroll-height,
.scroll-height-content-package,
.res-metrics-scroll,
.cp-panel__body--list,
.cp-panel__legend--radial,
.bulk-upload-dialog-panel .mat-dialog-container {
  -ms-overflow-style: none;
  /* IE/old Edge */
  scrollbar-width: none;
  /* Firefox */
}
.scroll::-webkit-scrollbar,
.scroll-height::-webkit-scrollbar,
.scroll-height-content-package::-webkit-scrollbar,
.res-metrics-scroll::-webkit-scrollbar,
.cp-panel__body--list::-webkit-scrollbar,
.cp-panel__legend--radial::-webkit-scrollbar,
.bulk-upload-dialog-panel .mat-dialog-container::-webkit-scrollbar {
  width: 0;
  height: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--app-font-sans);
  color: var(--app-color-heading);
}
/* Secondary concept badge (yellow) */
.concept-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 8px;
  background: #fdf2d9;
  color: #a68a64;
  font-family: var(--app-font-sans);
  font-size: 12px;
  font-weight: 700;
}
.my-select-panel-class input {
  width: 100%;
  padding: 8px;
  box-sizing: border-box;
}
html,
body {
  height: 100%;
}
body {
  margin: 0;
  font-family: var(--app-font-sans);
  background: #f5f7fb;
  color: #2b2f38;
}
p {
  margin: 0;
}
.display-none {
  display: none;
}
.width100 {
  width: 100%;
}
.height100 {
  height: 100%;
}
.pointer {
  cursor: pointer;
}
.padding10 {
  padding: 10px;
}
.padding-block-20 {
  padding-block: 20px;
}
.margin-block-18 {
  margin-block: 18px;
}
.searchPadding {
  padding: 10px !important;
}
.padding15 {
  padding: 15px;
}
.next-button {
  position: fixed;
  bottom: 20px;
  right: 50px;
}
.search-box {
  padding: 10px 15px;
  border-radius: 18px;
}
.search-box .mat-form-field-underline {
  display: none !important;
}
.search-box .mat-input-container.app-input-no-underline .mat-input-underline {
  display: none;
}
.search-box input {
  border: none !important;
  background: transparent !important;
}
.search-box input:focus {
  outline: none;
}
.otp-input {
  width: 30px !important;
  height: 30px !important;
  font-size: 20px !important;
}
.margin-b-30 {
  margin-bottom: 30px;
}
.margin-b-20 {
  margin-bottom: 20px;
}
.margin-top-40 {
  margin-top: 40px;
}
.padding20 {
  padding: 20px !important;
}
.footer {
  padding: 13px 24px;
  position: fixed;
  bottom: 0px;
  z-index: 99;
  width: 80%;
  box-shadow: 8px 6px 3px 7px #cecece;
}
textarea {
  width: 98%;
  border: 1px solid rgba(51, 51, 51, 0.1);
  border-radius: 5px;
  padding: 10px;
  font-size: 15px;
  font-family: var(--app-font-poppins);
}
textarea:focus {
  outline: none;
}
textarea::-webkit-input-placeholder {
  font-family: var(--app-font-poppins);
}
textarea::-moz-placeholder {
  font-family: var(--app-font-poppins);
}
textarea::-ms-input-placeholder {
  font-family: var(--app-font-poppins);
}
textarea::placeholder {
  font-family: var(--app-font-poppins);
}
.text-decoration {
  text-decoration: none;
}
.rectangle {
  border-radius: 15px;
  background-color: #efefef;
  margin: 5px;
  padding: 10px;
  font-size: 12px;
}
.move {
  cursor: move;
}
.disable-pointer-event {
  pointer-events: none;
}
.enable-pointer-event {
  pointer-events: all;
}
/**
* New css added @Aboli
*/
.header-separator {
  border-bottom: 1px solid #bfc7d6;
}
.ck-editor__editable_inline {
  min-height: 200px;
}
.padding50 {
  padding: 50px;
}
.padding-bottom10 {
  padding: 20px 0px 20px 0px;
}
.Search-Div {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  margin-bottom: 6px !important;
}
.search {
  min-height: 48px;
  height: 48px;
  padding: 0 10px;
  border-radius: 9px;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  box-sizing: border-box;
  transition: box-shadow 160ms ease, border-color 160ms ease;
  /* Staff-like structure for legacy toolbars:
     [filter dropdown] [search input] [icons/actions] */
}
.search > div:first-child {
  flex: 0 0 150px !important;
  min-width: 120px;
  max-width: 220px;
}
.search > div:nth-child(2) {
  flex: 1 1 auto !important;
  min-width: 0;
}
.search > div:last-child {
  flex: 0 0 auto !important;
  display: flex;
  align-items: center;
  gap: 10px;
}
.search input {
  border: none !important;
  outline: none !important;
  background: transparent !important;
  color: #1a1a1a;
  font-size: 14px;
  line-height: 1.25;
}
.search input::-webkit-input-placeholder {
  color: #b0b0b0;
}
.search input::-moz-placeholder {
  color: #b0b0b0;
}
.search input::-ms-input-placeholder {
  color: #b0b0b0;
}
.search input::placeholder {
  color: #b0b0b0;
}
.search .material-icons {
  color: #757575;
  font-size: 22px;
  width: 22px;
  height: 22px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.search .mat-form-field-underline {
  display: none !important;
}
.search .mat-form-field-infix {
  border: 0;
}
.search .mat-form-field-wrapper {
  padding-bottom: 0;
}
.search:focus-within {
  border-color: #d0d0d0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
}
.preview-dialog .mat-dialog-container {
  padding: 0px;
}
.assign-section-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.student-details-view-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
  max-height: 92vh;
  display: flex;
  flex-direction: column;
  min-height: 0;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.manage-grades-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
  max-height: 79vh;
  display: flex;
  flex-direction: column;
  min-height: 0;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.add-subject-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.schedule-lectures-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.edit-grade-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.copy-timetable-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.school-rbac-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.14);
}
.table-side-separator-blue {
  border-right: none !important;
}
.claimp {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  /* number of lines to show */
  -webkit-box-orient: vertical;
  margin: 10px;
}
.text {
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.add-dialog-container .mat-dialog-container {
  overflow-y: hidden;
}
.scroll {
  height: 500px;
  overflow-y: scroll;
}
.view-plan .mat-dialog-container {
  padding: 0px;
}
.paddingLeft10 {
  padding-left: 10px;
}
.edit-dialog .mat-dialog-container {
  overflow: hidden;
}
.align-left {
  justify-content: left;
}
.scroll-height {
  height: 30vh;
  overflow-y: auto;
}
.scroll-height-content-package {
  height: 30vh;
  overflow-y: auto;
}
.capitalize {
  text-transform: capitalize;
}
.mockTestClaimp {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  /* number of lines to show */
  -webkit-box-orient: vertical;
}
.tox .tox-notification--warn,
.tox .tox-notification--warning {
  display: none !important;
}
.home-body,
.routerOutlet {
  background: transparent;
}
.home-body {
  padding: 20px;
  box-sizing: border-box;
}
.mat-card {
  background: transparent !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  overflow: hidden !important;
  border: none !important;
  padding: 0 !important;
}
.table-wrapper {
  background: transparent !important;
  border-radius: 16px;
  overflow: hidden;
}
.table-container {
  border-radius: 16px;
  overflow: hidden;
}
table,
.mat-table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
table.mat-table,
.mat-table {
  border-radius: 16px;
  background: transparent !important;
}
table,
th,
td {
  border: none !important;
}
.table-side-separator-blue {
  border-right: none !important;
}
table.mat-table thead,
.mat-table thead {
  background: linear-gradient(180deg, #0b1b50 -46.27%, #1d3175 30.95%, #0b1b51 100%);
}
table.mat-table thead tr,
.mat-table thead tr {
  border: none;
}
.mat-header-row,
thead.mat-header-row,
.mat-header-row {
  background: linear-gradient(90deg, #1e2f6f, #1a3d8f) !important;
  margin: 0 !important;
  border-radius: 16px 16px 0 0 !important;
  overflow: hidden;
  border-bottom: none !important;
  position: relative;
  top: 14px !important;
}
.mat-header-cell {
  border-right: none !important;
  border-left: none !important;
}
table.mat-table thead th,
.mat-table thead th,
.mat-header-cell,
th.mat-header-cell {
  color: #ffffff !important;
  font-weight: 500 !important;
  padding: 14px 9px 26px !important;
  font-size: 15px !important;
  text-align: left;
  border: none !important;
  background: transparent !important;
}
table.mat-table thead th:not(:last-child),
.mat-table thead th:not(:last-child) {
  border-right: none !important;
}
.mat-header-cell {
  border-right: none !important;
}
table.mat-table thead th:first-child,
.mat-table thead th:first-child {
  border-top-left-radius: 16px;
}
table.mat-table thead th:last-child,
.mat-table thead th:last-child {
  border-top-right-radius: 16px;
}
tbody tr,
.mat-row {
  background: #ffffff;
  border-bottom: none;
  transition: background 0.2s;
  margin: 0 !important;
}
table.mat-table .mat-row:not(.mat-header-row) .mat-cell {
  box-shadow: inset 0 -1px 0 #e4e4e4;
}
.mat-row.mat-row:not(.mat-header-row):first-of-type {
  background: #fcfdff;
  border-radius: 10px 10px 0 0;
  position: relative;
}
tbody tr:last-child,
.mat-row:last-child {
  border-bottom: none;
}
tbody tr:first-child td:first-child,
.mat-row.mat-row:not(.mat-header-row):first-of-type .mat-cell:first-of-type {
  border-top-left-radius: 16px;
}
tbody tr:first-child td:last-child,
.mat-row.mat-row:not(.mat-header-row):first-of-type .mat-cell:last-of-type {
  border-top-right-radius: 16px;
}
td,
.mat-cell {
  padding: 0 10px !important;
  font-size: 16px !important;
  color: #3d3d3d !important;
  background: #ffffff !important;
  border: none !important;
  font-weight: 500 !important;
  font-family: var(--app-font-poppins) !important;
}
tr.mat-footer-row,
tr.mat-row {
  height: 55px !important;
}
table.mat-table tbody tr.mat-row:last-of-type .mat-cell {
  box-shadow: inset 0 -1px 0 #e4e4e4 !important;
}
table.mat-table .mat-header-row + .mat-row .mat-cell {
  border-top: none !important;
}
table.mat-table .mat-header-row + .mat-row .mat-cell:first-of-type {
  border-top-left-radius: 16px;
}
table.mat-table .mat-header-row + .mat-row .mat-cell:last-of-type {
  border-top-right-radius: 16px;
}
tbody tr:hover,
.mat-row:hover {
  background: #f9fbff;
}
tbody tr:last-child td:first-child,
.mat-row.mat-row:last-of-type .mat-cell:first-of-type {
  border-bottom-left-radius: 16px;
}
tbody tr:last-child td:last-child,
.mat-row.mat-row:last-of-type .mat-cell:last-of-type {
  border-bottom-right-radius: 16px;
}
.mat-column-sr_no,
.mat-column-srNo,
.mat-column-Sr_no,
.mat-column-srno,
table:not(.mat-table) td:first-child {
  /* Fit to data width (1, 2, 10...) instead of fixed column size */
  width: 1%;
  min-width: 0;
  max-width: none;
  white-space: nowrap;
  padding-right: 8px !important;
}
.status-badge {
  border-radius: 20px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
}
.status-badge.active {
  background: #35ccbc;
  color: #14716c;
  border: 0.5px solid #35ccbc;
}
.status-badge.inactive {
  background: #f1f3f5;
  color: #14716c;
}
.action-menu {
  position: relative;
}
.menu-backdrop {
  position: fixed;
  inset: 0;
  background: transparent;
  z-index: 9998;
}
.action-menu span {
  cursor: pointer;
  font-size: 18px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.menu {
  position: absolute;
  right: 0;
  top: 28px;
  background: #eef2f7;
  border-radius: 12px;
  padding: 6px 0;
  width: 140px;
  overflow: hidden;
  /* Must sit above .menu-backdrop (9998) so Edit / Delete / View receive clicks */
  z-index: 10000;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.item {
  padding: 10px 14px;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.2;
}
.item.edit {
  color: #1e2f6f;
}
.item.delete {
  color: #e53935;
}
.item:hover {
  background: #e4e9f2;
}
.mat-paginator {
  background: transparent !important;
  display: flex;
  justify-content: flex-end;
}
.mat-paginator-container {
  justify-content: flex-end !important;
  font-size: 13px;
  min-height: 52px !important;
  gap: 10px;
}
.mat-paginator-navigation-first,
.mat-paginator-navigation-last {
  display: none !important;
}
.cdk-global-overlay-wrapper {
  justify-content: center !important;
}
/* Staff subject tooltip (global: tooltip renders in overlay container) */
.cdk-overlay-pane .mat-tooltip.subject-tooltip,
.mat-tooltip-panel.subject-tooltip .mat-tooltip,
.mat-tooltip.subject-tooltip {
  background: #ffffff !important;
  color: #3d3d3d !important;
  border: 0.5px solid #4f9be2 !important;
  border-radius: 18px !important;
  padding: 14px 18px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.38 !important;
  letter-spacing: 0.1px !important;
  max-width: 980px !important;
  white-space: normal !important;
  text-align: left !important;
}
.cdk-overlay-pane .subject-tooltip .mat-mdc-tooltip-arrow,
.cdk-overlay-pane .subject-tooltip .mat-tooltip-arrow,
.mat-tooltip-panel.subject-tooltip .mat-mdc-tooltip-arrow,
.mat-tooltip-panel.subject-tooltip .mat-tooltip-arrow {
  display: none !important;
}
/* Angular Material MDC tooltip support */
.mat-mdc-tooltip-panel.subject-tooltip .mdc-tooltip__surface,
.mat-mdc-tooltip .mdc-tooltip__surface.subject-tooltip {
  background: #ffffff !important;
  color: #3d3d3d !important;
  border: 0.5px solid #4f9be2 !important;
  border-radius: 18px !important;
  padding: 14px 18px !important;
  font-family: var(--app-font-poppins);
  font-style: Medium;
  line-height: 24px;
  letter-spacing: 0%;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.38 !important;
  letter-spacing: 0.1px !important;
  max-width: 980px !important;
  white-space: normal !important;
  text-align: left !important;
}
.mat-mdc-tooltip-panel.subject-tooltip .mat-mdc-tooltip-arrow {
  display: none !important;
}
/* =====================================================================
   CMS form fields — match design reference (Angular Material 8 outline)

   Problem: default outline uses a floating label in the top “notch”.
   Design: static label above the box, full rounded border, tall input,
   placeholder grey, error line under the box.

   This targets legacy mat-form-field only (this project uses @angular/material ~8).
   ===================================================================== */
/* Beat theme .mat-primary / .mat-accent label color on form fields */
mat-form-field.mat-form-field-appearance-outline.mat-primary .mat-form-field-label,
mat-form-field.mat-form-field-appearance-outline.mat-accent .mat-form-field-label,
mat-form-field.mat-form-field-appearance-outline.mat-warn .mat-form-field-label {
  color: #1a3a6e !important;
}
mat-form-field.mat-form-field-appearance-outline {
  display: block;
  width: 100%;
  overflow: visible;
  font-family: var(--app-font-poppins);
  /* Outline border color + continuous rounded corners (no visible notch gap) */
  /* Remove the top “notch” gap so the outline reads as one rounded box */
  /* Label sits above the outline (not in the notch) */
  /* Required asterisk (Material injects .mat-form-field-required-marker) */
  /* Placeholder + value */
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper {
  padding-bottom: 0;
  overflow: visible;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-flex {
  align-items: stretch;
  padding: 0 !important;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-outline {
  color: #c5cad3;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-outline-thick {
  color: #1a3a6e;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-outline-gap {
  flex: 0 0 0 !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  border: none !important;
  padding: 0 !important;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-outline-start {
  border-radius: 10px 0 0 10px;
  border-width: 1px;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-outline-end {
  border-radius: 0 10px 10px 0;
  border-width: 1px;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-infix {
  display: flex !important;
  padding: 14px 16px;
  border-top: 0;
  min-height: 50px;
  box-sizing: border-box;
  align-items: center;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-label-wrapper {
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: none;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-label {
  position: static !important;
  display: block;
  transform: none !important;
  width: auto !important;
  max-width: 100%;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
  font-style: normal;
  line-height: 21px;
  letter-spacing: 0;
  /* Theme + focus/invalid states set label color — force CMS navy */
  color: #1a3a6e !important;
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
}
mat-form-field.mat-form-field-appearance-outline.mat-focused .mat-form-field-label, mat-form-field.mat-form-field-appearance-outline.mat-form-field-should-float .mat-form-field-label,
mat-form-field.mat-form-field-appearance-outline .mat-form-field-label:not(.mat-empty) {
  transform: none !important;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
  line-height: 21px;
  letter-spacing: 0;
  color: #1a3a6e !important;
}
mat-form-field.mat-form-field-appearance-outline.mat-form-field-invalid .mat-form-field-label, mat-form-field.mat-form-field-appearance-outline.mat-focused.mat-form-field-invalid .mat-form-field-label {
  color: #1a3a6e !important;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-required-marker {
  color: #e53935 !important;
  font-weight: 500;
  font-family: var(--app-font-poppins);
}
mat-form-field.mat-form-field-appearance-outline input.mat-input-element::-webkit-input-placeholder,
mat-form-field.mat-form-field-appearance-outline textarea.mat-input-element::-webkit-input-placeholder {
  color: #9aa3b8;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--app-font-poppins);
  opacity: 1;
}
mat-form-field.mat-form-field-appearance-outline input.mat-input-element::-moz-placeholder,
mat-form-field.mat-form-field-appearance-outline textarea.mat-input-element::-moz-placeholder {
  color: #9aa3b8;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--app-font-poppins);
  opacity: 1;
}
mat-form-field.mat-form-field-appearance-outline input.mat-input-element::-ms-input-placeholder,
mat-form-field.mat-form-field-appearance-outline textarea.mat-input-element::-ms-input-placeholder {
  color: #9aa3b8;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--app-font-poppins);
  opacity: 1;
}
mat-form-field.mat-form-field-appearance-outline input.mat-input-element::placeholder,
mat-form-field.mat-form-field-appearance-outline textarea.mat-input-element::placeholder {
  color: #9aa3b8;
  font-size: 14px;
  font-weight: 400;
  font-family: var(--app-font-poppins);
  opacity: 1;
}
mat-form-field.mat-form-field-appearance-outline input.mat-input-element,
mat-form-field.mat-form-field-appearance-outline textarea.mat-input-element {
  font-size: 14px;
  font-family: var(--app-font-poppins);
  color: #1f2937;
  position: relative !important;
  top: 2.5px;
}
mat-form-field.mat-form-field-appearance-outline .mat-select-value,
mat-form-field.mat-form-field-appearance-outline .mat-select-placeholder {
  font-family: var(--app-font-poppins);
  font-size: 14px;
  color: #1f2937;
  position: relative !important;
  top: 0.5px;
}
mat-form-field.mat-form-field-appearance-outline .mat-select-placeholder {
  color: #9aa3b8;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-suffix,
mat-form-field.mat-form-field-appearance-outline .mat-form-field-prefix {
  align-self: center;
}
mat-form-field.mat-form-field-appearance-outline .mat-form-field-subscript-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 20px;
  padding: 0 2px;
}
mat-form-field.mat-form-field-appearance-outline mat-error {
  display: flex;
  white-space: normal;
  margin-top: 0;
  font-family: var(--app-font-poppins);
  font-size: 12px;
  line-height: 1.3;
  color: #e53935;
}
/* Same label + required-marker typography for standard / fill fields */
mat-form-field:not(.mat-form-field-appearance-outline) .mat-form-field-label {
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
  font-style: normal;
  line-height: 21px;
  letter-spacing: 0;
  color: #1a3a6e !important;
}
mat-form-field:not(.mat-form-field-appearance-outline) .mat-form-field-required-marker {
  color: #e53935 !important;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 500;
}
.btn {
  border-radius: 6px;
  padding: 10px 16px;
  font-family: var(--app-font-poppins);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  border: 1px solid transparent;
  min-height: 40px;
  white-space: nowrap;
  width: auto;
}
.btn-primary {
  background: #1fc3b4 !important;
  color: #000000 !important;
  border-radius: 6px !important;
  font-family: var(--app-font-poppins) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border: 1px solid #1fc3b4 !important;
}
.btn-tertiary {
  background: #feba00 !important;
  color: #000000 !important;
  border-radius: 6px !important;
  font-family: var(--app-font-poppins) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border: 1px solid #feba00 !important;
}
.btn-outline-secondary {
  background: #ffffff !important;
  color: #111827 !important;
  border-color: #cbd2de !important;
  border: 1px solid #cbd2de !important;
  box-shadow: none;
}
/* Global styles: do not use ::ng-deep here — it is for component SCSS only and can drop / weaken selectors. */
.mat-form-field-appearance-outline .mat-form-field-flex {
  padding: 0 !important;
}
.mat-form-field-flex {
  padding: 0 !important;
}
.app-report-toolbar-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 12px;
}
button.app-icon-circle-btn {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111827;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}
button.app-icon-circle-btn .material-icons {
  font-size: 22px;
  width: 22px;
  height: 22px;
  line-height: 22px;
  color: currentColor;
}
button.app-icon-circle-btn:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.1);
}
button.app-icon-circle-btn:focus-visible {
  outline: 2px solid #1a47de;
  outline-offset: 2px;
}
button.app-icon-circle-btn.app-icon-circle-btn--active {
  background: linear-gradient(272.57deg, #0eaf92 23.22%, #1fc3b4 98.9%);
  border-color: transparent;
  color: #ffffff;
  box-shadow: 0 4px 14px rgba(14, 175, 146, 0.35);
}
button.app-icon-circle-btn.app-icon-circle-btn--active:hover {
  background: linear-gradient(272.57deg, #0c9d82 23.22%, #1ab3a5 98.9%);
  color: #ffffff;
}
/* mat-select chevron vertical alignment (outline + plain select) */
.mat-form-field-appearance-outline .mat-select-arrow-wrapper {
  transform: translateY(10%) !important;
}
.mat-select-arrow-wrapper {
  transform: translateY(10%) !important;
}
/* app-multiselect uses a custom ::after chevron; keep wrapper untransformed */
.app-multiselect-field .mat-select-arrow-wrapper {
  transform: none !important;
}
/* Download sample Excel dialog (school bulk upload) */
.download-sample-excel-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 18px;
  box-shadow: 0 16px 48px rgba(15, 23, 42, 0.12);
  /* visible: outline labels sit above the field (same as add-staff CMS fields) */
  overflow: visible;
  background: #ffffff;
}
/* Single outline select: spacing + wrapper like payment-link / add-staff rows */
.download-sample-excel-dialog-panel .dsx-content {
  overflow: visible;
}
.download-sample-excel-dialog-panel .dsx-type-field.mat-form-field {
  width: 100%;
  margin-top: 28px;
}
.download-sample-excel-dialog-panel .dsx-type-field .mat-form-field-wrapper {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
/* Bulk upload popup (school) — height follows content, capped on small viewports */
.bulk-upload-dialog-panel .mat-dialog-container {
  padding: 0;
  border-radius: 18px;
  box-shadow: 0 16px 48px rgba(15, 23, 42, 0.12);
  overflow: auto;
  background: #ffffff;
  height: auto;
  max-height: 90vh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
.bulk-upload-dialog-panel .mat-dialog-container > * {
  flex: 0 1 auto;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
.bulk-upload-dialog-panel app-bulk-upload .bulk-upload-popup {
  padding: 28px;
}
::ng-deep .mat-calendar-table .mat-calendar-table th,
::ng-deep .mat-calendar-table .mat-calendar-table .mat-header-cell,
::ng-deep .mat-calendar-table .mat-calendar-table th.mat-header-cell {
  padding: 14px 3px 0px !important;
}
::ng-deep .mat-calendar-table-header {
  background: transparent !important;
}
::ng-deep .mat-calendar-table-header th,
::ng-deep .mat-calendar-table-header .mat-calendar-table-header-divider {
  background: transparent !important;
}
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header tr,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header th,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header td,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider::after {
  background: transparent !important;
  background-color: transparent !important;
}
/* Angular 8 datepicker fix: override global thead gradient for calendar header */
::ng-deep .mat-calendar-table thead,
::ng-deep .mat-calendar-table thead tr,
::ng-deep .mat-calendar-table thead th,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table thead,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table thead tr,
::ng-deep .cdk-overlay-container .mat-datepicker-content .mat-calendar-table thead th {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}
.border-radius-16 {
  border-radius: 16px !important;
}
.loader-background {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 99999;
}
.loader-position {
  position: relative;
  left: calc(50% - 50px);
  top: calc(50% - 50px);
}
.mat-spinner::ng-deep circle {
  stroke: #a6d2f9;
}
.paddingBottom20 {
  padding-bottom: 20px;
}
.paddingBottom40 {
  padding-bottom: 40px;
}
.paddingTop20 {
  padding-top: 20px;
}
/* App-wide: hide scrollbars but keep scrolling (home.component .home_body_content_left pattern).
   More specific rules (e.g. .tableHeight::-webkit-scrollbar-thumb) still override where needed. */
* {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
*::-webkit-scrollbar {
  display: none;
}
@charset "UTF-8";
.color-royal-blue {
  color: #236FED;
}
.color-malachite {
  color: #14B93E;
}
.color-persian-blue {
  color: #1D41B0;
}
.color-white {
  color: #FFFFFF;
}
.color-grey {
  color: rgba(0, 0, 0, 0.89);
}
.color-sidebar-grey {
  color: #000000;
}
.color-dark-grey {
  color: #8c8c88;
}
.color-green-leaf {
  color: #417505;
}
.color-web-orange {
  color: #FFA300;
}
.color-tundora {
  color: #4A4A4A;
}
.color-scorpion {
  color: black;
}
.color-green-leaf {
  color: #417505;
}
.color-scorpion {
  color: black;
}
.color-grey1 {
  color: black !important;
}
.color-stratos {
  color: #16184e;
}
.color-dusty-gray {
  color: #9C9C9C;
}
.color-mine-shaft {
  color: #323232;
}
.color-monza {
  color: #D0021B;
}
.color-sushi {
  color: #54AD45;
}
.color-cornflower-blue {
  color: #4184F3;
}
.color-radical-red {
  color: #FF3951;
}
.color-yellow-orange {
  color: #FFB245;
}
.bgcolor-white {
  background-color: #FFFFFF;
}
.bgcolor-royal-blue {
  background-color: #236FED;
}
.bgcolor-stratos {
  background-color: #16184e;
}
.bgcolor-catskill-white {
  /* Solid page surface — transparent was letting parent/layout artwork show through (reports looked washed out). */
  background-color: url(/assets/newCmsDegine/CMS_background.png);
}
.mat-drawer-container {
  background-color: transparent !important;
}
.bgcolor-grey {
  background-color: #c5c5bf;
}
.bgcolor-green-leaf {
  background-color: #417505;
}
.bgcolor-anti-flash-white {
  background-color: #F2F4F8;
}
.bgcolor-alto {
  background-color: #D6D6D6;
}
.bgcolor-radical-red {
  background-color: #FF3951;
}
.font--weight-light {
  font-weight: 300;
}
.font-weight-500 {
  font-weight: 500;
}
.font-weight-normal {
  font-weight: normal;
}
.bold {
  font-weight: bold;
}
.font-size-l {
  font-size: 25px;
}
.font-size-m {
  font-size: 18px;
}
.font-size-15 {
  font-size: 15px;
}
.font-size-10 {
  font-size: 10px;
}
.font-size-12 {
  font-size: 12px;
}
.font-size-13 {
  font-size: 13px;
}
.font-size-20 {
  font-size: 20px;
}
.opacity051 {
  opacity: 0.51;
}
.border-radius4 {
  border-radius: 4px;
}
.border-radius8 {
  border-radius: 8px;
}
.border-50p {
  border-radius: 50%;
}
/**
* New css added @Aboli
*/
.font-size-14 {
  font-size: 14px;
}
.font-family-regular {
  font-family: RobotoRegular, sans-serif !important;
  font-size: inherit !important;
}
.font-family-light {
  font-family: RobotoLight, sans-serif;
}
.bgcolor-light-green {
  background-color: #ecefec;
}
/* Shift Angular Material table body slightly upward */
.home-page-logo {
  background: url('home-page-logo.da1dc991d5ae9246e88c.png') no-repeat center;
  background-size: contain;
  width: 50%;
  height: 50%;
}

.teacher-login-logo {
  background: url('teacher_login.cba321cbe58e66cd3949.png') no-repeat center;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.toppscholars-logo {
  background: url('toppscholars-logo.d432906262602f47df3f.png') no-repeat center;
  background-size: contain;
  height: 88px;
  width: 50%;
}

.tops-jaro-logo {
  background: url('tops_jaro.7a45ab9ba8cdff17c8eb.png') no-repeat center;
  background-size: contain;
  height: 56px;
  width: 100%;
}

.toppscholars-logo-sidebar {
  background: url('toppscholars-logo.d432906262602f47df3f.png') no-repeat center;
  background-size: contain;
  height: 27px;
  width: 50%;
}

.close-icon {
  background: url('delete.9f5250fa42cf2afe6519.png') no-repeat center;
  height: 19px;
  width: 19px;
}

.search-icon {
  background: url('Search.0240495229ce0180a065.png') no-repeat center;
  height: 20px;
  width: 20px;
  background-size: 20px;
}

.loan-managment-active-icon {
  background: url('Loan Management Active.6d222f1a7c382b219579.png') no-repeat center;
  height: 24px;
  width: 24px;
}

.loan-managment-inactive-icon {
  background: url('Loan Management Inactive.b68747147fcf826ee5c2.png') no-repeat center;
  height: 24px;
  width: 24px;
}

.sidebar-logo {
  background: url('toppscholars-logo.d432906262602f47df3f.png') no-repeat center;
  height: 64px;
  width: 135px;
  background-size: contain;
}

.pancard-img {
  background: url('Upload PAN card image.ab655a00dee3d77e325e.png') no-repeat center;
  height: 118px;
  width: 149px;
}

.selfie-img {
  background: url('Upload Selfie.49f6e214854314cf3684.png') no-repeat center;
  height: 118px;
  width: 149px;
}

.upload-doc-cong {
  background: url('Upload Doc.8c4c2ec8f4da2b989a57.png') no-repeat center;
  height: 100px;
  width: 100px;
}

.selected-icon {
  background: url('selected.503de265d129d36ca926.png') no-repeat center;
  height: 33px;
  width: 33px;
  background-size: contain;
}

.error-icon {
  background: url('error.dff1178c3061c5b81e91.png') no-repeat center;
  height: 30px;
  width: 30px;
  background-size: contain;
}

.nutral-icon {
  background: url('Vector.89a40b9cdf227749ad55.svg') no-repeat center;
  height: 30px;
  width: 30px;
  background-size: contain;
}

.security-icon {
  background: url('Security.881654de4f3409fcb86f.png') no-repeat center;
  height: 30px;
  width: 30px;
}

.menu-icon {
  background: url('menu-icon.44a2adbccea66595ffc2.png') no-repeat center;
  height: 80px;
  width: 80px;
  border-radius: 50%;
  background-color: #f2f4f9;
}

.edit-icon {
  background: url('Edit.32793789a7dbcba35ede.png') no-repeat center;
  height: 40px;
  width: 40px;
  background-size: 40px;
}

.edit-icon_new {
  background: url('Edit.32793789a7dbcba35ede.png') no-repeat center;
  height: 31px;
  width: 84px;
  background-size: 34px;
}

.view-submission {
  background: url('showPass.31e3e4da95ef34690214.png') no-repeat center;
  height: 40px;
  width: 40px;
  background-size: 24px;
}

.copy_test {
  background: url('copy _test.87f520d4cf9f10f90901.png') no-repeat center;
  height: 40px;
  width: 40px;
  background-size: 22px;
}

.sequencing-icon {
  background: url('bar.e2fa4d7005ac28be34ae.png') no-repeat center;
  height: 39px;
  width: 32px;
  background-size: 45%;
}

.sequencing-test {
  background: url('test_sequence.edc82cb730f35f200d57.png') no-repeat center;
  height: 56px;
  width: 32px;
  background-size: 89%;
}

.sequencing-test1 {
  background: url('test_sequence.edc82cb730f35f200d57.png') no-repeat center;
  height: 50px;
  width: 38px;
  background-size: 93%;
  margin-top: 1.1rem;
}

.sequencing-test2 {
  background: url('sequenceIcon.613ddf43326c64a2114d.svg') no-repeat center;
  height: 50px;
  width: 38px;
  background-size: 93%;
}

.remove-icon {
  background: url('remove.452c01dfd7d8b0778028.png') no-repeat center;
  height: 37px;
  width: 20px;
  background-size: 121%;
}

.remove-icon1 {
  background: url('remove.452c01dfd7d8b0778028.png') no-repeat center;
  height: 44px;
  width: 27px;
  background-size: 113%;
  margin-top: 1.5rem;
}

.test-type-sequecnce {
  background: url('sequenc.d69f061ebe12f270e485.png') no-repeat center;
  height: 44px;
  width: 51px;
  background-size: 57%;
}

.verified-icon {
  background: url('verified.b9c6f4a5d81c795012af.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.wrong-answer-icon {
  background: url('Subtract.46c37c82fab63a7b89b1.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.black-cross-icon {
  background: url('black-cross-icon.21a2c5acf9e118dc4aa4.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.view-file {
  background: url('view-file.927e1621d489633c1ef9.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.file-icon {
  background: url('file-icon.1d9080a12d5057de1d72.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.not-attempted {
  background: url('red-x-icon.705b4da54b5f0113181b.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.left-arrow-icon {
  background: url('left-arrow.1acdf6419d0a4a6adbaa.svg') no-repeat center;
  height: 5px;
  width: 55px;
  background-size: 63%;
}

.left-arrow-icon1 {
  background: url('left-arrow.1acdf6419d0a4a6adbaa.svg') no-repeat center;
  height: 60px;
  width: 55px;
  background-size: 63%;
}

.score-icon {
  background: url('watch.23bfbd2cbfe67ad7628a.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.download {
  background: url('download.7754ebe64c10947e6507.png') no-repeat center;
  height: 24px;
  width: 24px;
  background-size: cover;
}

.submission-icon {
  background: url('submission.8f7125d2848379adc131.png') no-repeat center;
  height: 14px;
  width: 14px;
}

.delete-test {
  background: url('delete-test.d5e50b11100ffbbcab34.png') no-repeat center;
  height: 20px;
  width: 20px;
}

.close1-icon {
  background: url('close-icon.7aab9b309dc71aae960f.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.selected-icon {
  background: url('selected.503de265d129d36ca926.png') no-repeat center;
  height: 25px;
  width: 25px;
}

/**
* New css added @Aboli
*/

.question-status-active {
  background: url('status_active.4458b21f8b65bca71597.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.question-status-inactive {
  background: url('status_deactive.d6ff950363c3ab3b8df9.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.question-status-done {
  background: url('status_done.3a6e640b8218bcdea8a2.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.video {
  background: url('video.a6372485318244c18a49.svg') no-repeat center;
  height: 25px;
  width: 25px;
}

.view {
  background: url('view.4f4adf83a0a96a3af0f7.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.open-preview {
  background: url('open_preview.1a78567583c95add885d.png') no-repeat center;
  height: 25px;
  width: 60px;
}

.next-icon {
  background: url('next.e3ba54819ccc9dc56f12.svg') no-repeat center;
  height: 24px;
  width: 24px;
}

.wrong-icon {
  background: url('error.dff1178c3061c5b81e91.png') no-repeat center;
  background-size: contain;
}

.trash-icon {
  background: url('trash.c52cebf84ebc1d34a513.png') no-repeat center;
  width: 30px;
}

.schedule-icon {
  background: url('shedule.39f3700e9393e1f28c5b.png') no-repeat center;
  width: 18px;
  height: 18px;
  background-size: 23px;
}

.view-test {
  background: url('right-arrow.b1263deaa0178d0d34d8.png') no-repeat center;
  width: 18px;
  height: 18px;
  background-size: 33px;
}

.defaultytimg {
  background: url('nodataImage.2a7a19426acea286aeb8.png') no-repeat center;
  width: 212px;
  height: 110px;
  background-size: 169px;
  border-radius: 10%;
}

.vector-load {
  background: url('load_vector.4a7fb9ec70afc6694323.png') no-repeat center;
  width: 18px;
  height: 18px;
  background-size: 17px;
}

.download-icon {
  background: url('Vector.9d45d49eead9d7498996.png') no-repeat center;
  width: 18px;
  height: 18px;
  background-size: 16px;
}

.ready-to-share {
  background: url('redytoshare.c476f0ece5606a11109b.png') no-repeat center;
  width: 91px;
  height: 33px;
  background-size: 102px;
}

.isassigned {
  background: url('assigned.497d1929605d505a2244.png') no-repeat center;
  width: 0px;
  height: 33px;
  background-size: 18px;
}

.draft-icon {
  background: url('Frame.efd0f93f2cad8e444a25.png') no-repeat center;
  width: 0px;
  height: 33px;
  background-size: 18px;
}

.draft-text {
  background: url('draft-text.7c0eff652d9eee29aaa0.png') no-repeat center;
  width: 15px;
  height: 33px;
  background-size: 26px;
}

.filter-icon {
  background: url('filter.f8d66bbacbf7645eb8de.png') no-repeat center;
  background-size: contain;
  width: 18px;
  height: 18px;
  cursor: pointer;
}

.profile-icon {
  background: url('my-profile.90ad0f154fa1f9a44537.png') no-repeat center;
  background-size: contain;
  height: 35px;
  width: 35px;
  border-radius: 50%;
}

.notification-icon {
  background: url('notifications.c84e8a9d28007d71ebf4.png') no-repeat center;
  height: 25px;
  width: 25px;
}

.plus-icon {
  background: url('plus-icon.5fbc77dc65a6d6e808bc.png') no-repeat center;
  background-size: contain;
  width: 40px;
  height: 40px;
}

.down-arrow-icon {
  background: url('down_arrow.9459cc3c6f66a0f737a6.png') no-repeat center;
  background-size: contain;
  width: 30px;
  height: 30px;
}

.double-tick {
  background: url('double-tick.bc863628e64e3a8731c9.png') no-repeat center;
  background-size: contain;
  height: 15px;
  width: 15px;
}

.attach-icon {
  background: url('attach.f25aff12ed95552c7ce7.png') no-repeat center;
  background-size: contain;
  height: 25px;
  width: 25px;
}

.send-icon {
  background: url('send.74ab1a718d59a1c30264.png') no-repeat center;
  background-size: contain;
  height: 25px;
  width: 25px;
}

.excelIcon {
  background: url('excelIcon.eaea2d8a28ca4d3f2ac9.webp') no-repeat center;
  height: 50px;
  width: 50px;
  background-size: contain;
  margin: 0 auto;
}

.schoolIcon {
  background: url('Radio 1.b2e1c15ec1fc68cf8343.png') no-repeat center;
  height: 50px;
  width: 50px;
  background-size: contain;
  margin: 0 auto;
}

.more-icon {
  background: url('more.ebc2904119d585b387eb.png') no-repeat center;
  background-size: contain;
  height: 20px;
  width: 20px;
}

.app-background-texture {
  background-image: url('Banner Bg Pattern.6f1e69fd0f3f7d6cb61b.png');
  background-color: #280098;
  height: 100%;
  width: 100%;
}

.math-icon {
  background-image: url('math.e221d29ea542ed323150.png') no-repeat center;
  height: 50px;
  width: 50px;
  background-size: contain;
}

.defaultPdfImage {
  background: url('revision-notes.23c368642a6dfab76a91.png') no-repeat center;
  width: 162px;
  height: 111px;
  background-size: 167px;
  border-radius: 10%;
}
@charset "UTF-8";
.mat-horizontal-content-container {
  padding: 0 !important;
}
.mat-step-icon {
  border-radius: 2px !important;
}
::-webkit-input-placeholder {
  color: #7c7c7c;
  font-size: 14px;
}
::-moz-placeholder {
  color: #7c7c7c;
  font-size: 14px;
}
::-ms-input-placeholder {
  color: #7c7c7c;
  font-size: 14px;
}
::placeholder {
  color: #7c7c7c;
  font-size: 14px;
}
/**
* New css added @Aboli
*/
.ck-content .image-style-side {
  max-width: 50%;
  float: right;
  margin-left: var(--ck-image-style-spacing);
}
.ck-content .image.image_resized {
  max-width: 100%;
}
.ck-content .image.image_resized {
  display: block;
  box-sizing: border-box;
}
.ck-content .image.image_resized img {
  width: 100%;
}
.ck-content .image.image_resized > figcaption {
  display: block;
}
.ckeditortable table,
.ckeditortable th,
.ckeditortable td {
  border: 1px solid black;
  border-collapse: collapse;
}
.ckeditortable th,
.ckeditortable td {
  padding: 15px;
  text-align: left;
}
.mathml span {
  font-family: initial !important;
}
.mathml .mjx-block {
  display: block;
  font-size: 20px !important;
}
.mathml .mjx-math {
  display: inline-block;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 20px !important;
}
.mathml figure {
  display: block;
  -webkit-margin-before: 0em;
          margin-block-start: 0em;
  -webkit-margin-after: 0em;
          margin-block-end: 0em;
  -webkit-margin-start: 0px;
          margin-inline-start: 0px;
  -webkit-margin-end: 0px;
          margin-inline-end: 0px;
}
.mathml figure.image {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
}
.mathml figure.image-style-align-right {
  float: right !important;
}
.mathml figure.image-style-align-left {
  float: left !important;
}
.mat-tab-list .mat-tab-label-active .mat-tab-label-content {
  color: #000000;
}
.mat-button-focus-overlay {
  background-color: transparent !important;
}
.mat-header-row {
  margin: 0 !important;
}
.mat-row {
  margin: 0 !important;
}
.student-details .mat-tab-label-container {
  border-top-right-radius: 6px;
  border-top-left-radius: 6px;
}
.preview-container .mat-dialog-container {
  padding: 0px;
}
.mat-calendar-body-selected {
  color: white;
}
/* Injected MathML / legacy HTML may add <input type="number"> inside options — not matched by Angular emulated encapsulation */
app-question-card input[type=number]::-webkit-outer-spin-button,
app-question-card input[type=number]::-webkit-inner-spin-button,
app-question-card .ChoiceAns input[type=number]::-webkit-outer-spin-button,
app-question-card .ChoiceAns input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  appearance: none !important;
  margin: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
}
app-question-card input[type=number],
app-question-card .ChoiceAns input[type=number] {
  -moz-appearance: textfield !important;
  appearance: textfield !important;
  -webkit-appearance: textfield !important;
}
