@charset "UTF-8";
@import "https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";

/* node_modules/@ionic/angular/css/core.css */
html.ios {
  --ion-default-font:
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    "Roboto",
    sans-serif;
}
html.md {
  --ion-default-font:
    "Roboto",
    "Helvetica Neue",
    sans-serif;
}
html {
  --ion-default-dynamic-font: -apple-system-body;
  --ion-font-family: var(--ion-default-font);
}
body {
  background: var(--ion-background-color);
}
body.backdrop-no-scroll {
  overflow: hidden;
}
html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,
html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,
html.ios ion-modal ion-footer ion-toolbar:first-of-type {
  padding-top: 6px;
}
html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,
html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type {
  padding-bottom: 6px;
}
html.ios ion-modal ion-toolbar {
  padding-right: calc(var(--ion-safe-area-right) + 8px);
  padding-left: calc(var(--ion-safe-area-left) + 8px);
}
@media screen and (min-width: 768px) {
  html.ios ion-modal.modal-card:first-of-type {
    --backdrop-opacity: 0.18;
  }
}
ion-modal.modal-default.show-modal ~ ion-modal.modal-default {
  --backdrop-opacity: 0;
  --box-shadow: none;
}
html.ios ion-modal.modal-card .ion-page {
  border-top-left-radius: var(--border-radius);
}
.ion-color-primary {
  --ion-color-base: var(--ion-color-primary, #3880ff) !important;
  --ion-color-base-rgb: var(--ion-color-primary-rgb, 56, 128, 255) !important;
  --ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-primary-shade, #3171e0) !important;
  --ion-color-tint: var(--ion-color-primary-tint, #4c8dff) !important;
}
.ion-color-secondary {
  --ion-color-base: var(--ion-color-secondary, #3dc2ff) !important;
  --ion-color-base-rgb: var(--ion-color-secondary-rgb, 61, 194, 255) !important;
  --ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-secondary-shade, #36abe0) !important;
  --ion-color-tint: var(--ion-color-secondary-tint, #50c8ff) !important;
}
.ion-color-tertiary {
  --ion-color-base: var(--ion-color-tertiary, #5260ff) !important;
  --ion-color-base-rgb: var(--ion-color-tertiary-rgb, 82, 96, 255) !important;
  --ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-tertiary-shade, #4854e0) !important;
  --ion-color-tint: var(--ion-color-tertiary-tint, #6370ff) !important;
}
.ion-color-success {
  --ion-color-base: var(--ion-color-success, #2dd36f) !important;
  --ion-color-base-rgb: var(--ion-color-success-rgb, 45, 211, 111) !important;
  --ion-color-contrast: var(--ion-color-success-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-success-shade, #28ba62) !important;
  --ion-color-tint: var(--ion-color-success-tint, #42d77d) !important;
}
.ion-color-warning {
  --ion-color-base: var(--ion-color-warning, #ffc409) !important;
  --ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;
  --ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;
  --ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;
  --ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;
  --ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important;
}
.ion-color-danger {
  --ion-color-base: var(--ion-color-danger, #eb445a) !important;
  --ion-color-base-rgb: var(--ion-color-danger-rgb, 235, 68, 90) !important;
  --ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-danger-shade, #cf3c4f) !important;
  --ion-color-tint: var(--ion-color-danger-tint, #ed576b) !important;
}
.ion-color-light {
  --ion-color-base: var(--ion-color-light, #f4f5f8) !important;
  --ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;
  --ion-color-contrast: var(--ion-color-light-contrast, #000) !important;
  --ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;
  --ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;
  --ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important;
}
.ion-color-medium {
  --ion-color-base: var(--ion-color-medium, #92949c) !important;
  --ion-color-base-rgb: var(--ion-color-medium-rgb, 146, 148, 156) !important;
  --ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-medium-shade, #808289) !important;
  --ion-color-tint: var(--ion-color-medium-tint, #9d9fa6) !important;
}
.ion-color-dark {
  --ion-color-base: var(--ion-color-dark, #222428) !important;
  --ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;
  --ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;
  --ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;
  --ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;
  --ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important;
}
.ion-page {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  position: absolute;
  flex-direction: column;
  justify-content: space-between;
  contain: layout size style;
  z-index: 0;
}
ion-modal > .ion-page {
  position: relative;
  contain: layout style;
  height: 100%;
}
.split-pane-visible > .ion-page.split-pane-main {
  position: relative;
}
ion-route,
ion-route-redirect,
ion-router,
ion-select-option,
ion-nav-controller,
ion-menu-controller,
ion-action-sheet-controller,
ion-alert-controller,
ion-loading-controller,
ion-modal-controller,
ion-picker-controller,
ion-popover-controller,
ion-toast-controller,
.ion-page-hidden {
  display: none !important;
}
.ion-page-invisible {
  opacity: 0;
}
.can-go-back > ion-header ion-back-button {
  display: block;
}
html.plt-ios.plt-hybrid,
html.plt-ios.plt-pwa {
  --ion-statusbar-padding: 20px;
}
@supports (padding-top: 20px) {
  html {
    --ion-safe-area-top: var(--ion-statusbar-padding);
  }
}
@supports (padding-top: constant(safe-area-inset-top)) {
  html {
    --ion-safe-area-top: constant(safe-area-inset-top);
    --ion-safe-area-bottom: constant(safe-area-inset-bottom);
    --ion-safe-area-left: constant(safe-area-inset-left);
    --ion-safe-area-right: constant(safe-area-inset-right);
  }
}
@supports (padding-top: env(safe-area-inset-top)) {
  html {
    --ion-safe-area-top: env(safe-area-inset-top);
    --ion-safe-area-bottom: env(safe-area-inset-bottom);
    --ion-safe-area-left: env(safe-area-inset-left);
    --ion-safe-area-right: env(safe-area-inset-right);
  }
}
ion-card.ion-color .ion-inherit-color,
ion-card-header.ion-color .ion-inherit-color {
  color: inherit;
}
.menu-content {
  transform: translate3d(0, 0, 0);
}
.menu-content-open {
  cursor: pointer;
  touch-action: manipulation;
  pointer-events: none;
}
.ios .menu-content-reveal {
  box-shadow: -8px 0 42px rgba(0, 0, 0, 0.08);
}
[dir=rtl].ios .menu-content-reveal {
  box-shadow: 8px 0 42px rgba(0, 0, 0, 0.08);
}
.md .menu-content-reveal {
  box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);
}
.md .menu-content-push {
  box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);
}
ion-accordion-group.accordion-group-expand-inset > ion-accordion:first-of-type {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
ion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
ion-accordion-group > ion-accordion:last-of-type ion-item[slot=header] {
  --border-width: 0px;
}
ion-accordion.accordion-animated > [slot=header] .ion-accordion-toggle-icon {
  transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);
}
@media (prefers-reduced-motion: reduce) {
  ion-accordion .ion-accordion-toggle-icon {
    transition: none !important;
  }
}
ion-accordion.accordion-expanding > [slot=header] .ion-accordion-toggle-icon,
ion-accordion.accordion-expanded > [slot=header] .ion-accordion-toggle-icon {
  transform: rotate(180deg);
}
ion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-previous ion-item[slot=header] {
  --border-width: 0px;
  --inner-border-width: 0px;
}
ion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding:first-of-type,
ion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanded:first-of-type {
  margin-top: 0;
}
ion-input input::-webkit-date-and-time-value {
  text-align: start;
}
.ion-datetime-button-overlay {
  --width: fit-content;
  --height: fit-content;
}
.ion-datetime-button-overlay ion-datetime.datetime-grid {
  width: 320px;
  min-height: 320px;
}

/* node_modules/@ionic/angular/css/normalize.css */
audio,
canvas,
progress,
video {
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
b,
strong {
  font-weight: bold;
}
img {
  max-width: 100%;
}
hr {
  height: 1px;
  border-width: 0;
  box-sizing: content-box;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
label,
input,
select,
textarea {
  font-family: inherit;
  line-height: normal;
}
textarea {
  overflow: auto;
  height: auto;
  font: inherit;
  color: inherit;
}
textarea::placeholder {
  padding-left: 2px;
}
form,
input,
optgroup,
select {
  margin: 0;
  font: inherit;
  color: inherit;
}
html input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}
a,
a div,
a span,
a ion-icon,
a ion-label,
button,
button div,
button span,
button ion-icon,
button ion-label,
.ion-tappable,
[tappable],
[tappable] div,
[tappable] span,
[tappable] ion-icon,
[tappable] ion-label,
input,
textarea {
  touch-action: manipulation;
}
a ion-label,
button ion-label {
  pointer-events: none;
}
button {
  padding: 0;
  border: 0;
  border-radius: 0;
  font-family: inherit;
  font-style: inherit;
  font-variant: inherit;
  line-height: 1;
  text-transform: none;
  cursor: pointer;
  -webkit-appearance: button;
}
[tappable] {
  cursor: pointer;
}
a[disabled],
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}

/* node_modules/@ionic/angular/css/structure.css */
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}
html {
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html:not(.hydrated) body {
  display: none;
}
html.ion-ce body {
  display: block;
}
html.plt-pwa {
  height: 100vh;
}
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  position: fixed;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  transform: translateZ(0);
  text-rendering: optimizeLegibility;
  overflow: hidden;
  touch-action: manipulation;
  -webkit-user-drag: none;
  -ms-content-zooming: none;
  word-wrap: break-word;
  overscroll-behavior-y: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* node_modules/@ionic/angular/css/typography.css */
html {
  font-family: var(--ion-font-family);
}
@supports (-webkit-touch-callout: none) {
  html {
    font: var(--ion-dynamic-font, 16px var(--ion-font-family));
  }
}
a {
  background-color: transparent;
  color: var(--ion-color-primary, #3880ff);
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 16px;
  margin-bottom: 10px;
  font-weight: 500;
  line-height: 1.2;
}
h1 {
  margin-top: 20px;
  font-size: 1.625rem;
}
h2 {
  margin-top: 18px;
  font-size: 1.5rem;
}
h3 {
  font-size: 1.375rem;
}
h4 {
  font-size: 1.25rem;
}
h5 {
  font-size: 1.125rem;
}
h6 {
  font-size: 1rem;
}
small {
  font-size: 75%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}

/* node_modules/@ionic/angular/css/display.css */
.ion-hide {
  display: none !important;
}
.ion-hide-up {
  display: none !important;
}
.ion-hide-down {
  display: none !important;
}
@media (min-width: 576px) {
  .ion-hide-sm-up {
    display: none !important;
  }
}
@media (max-width: 575.98px) {
  .ion-hide-sm-down {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .ion-hide-md-up {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  .ion-hide-md-down {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .ion-hide-lg-up {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  .ion-hide-lg-down {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .ion-hide-xl-up {
    display: none !important;
  }
}
@media (max-width: 1199.98px) {
  .ion-hide-xl-down {
    display: none !important;
  }
}

/* node_modules/@ionic/angular/css/padding.css */
.ion-no-padding {
  --padding-start: 0;
  --padding-end: 0;
  --padding-top: 0;
  --padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.ion-padding {
  --padding-start: var(--ion-padding, 16px);
  --padding-end: var(--ion-padding, 16px);
  --padding-top: var(--ion-padding, 16px);
  --padding-bottom: var(--ion-padding, 16px);
  -webkit-padding-start: var(--ion-padding, 16px);
  padding-inline-start: var(--ion-padding, 16px);
  -webkit-padding-end: var(--ion-padding, 16px);
  padding-inline-end: var(--ion-padding, 16px);
  padding-top: var(--ion-padding, 16px);
  padding-bottom: var(--ion-padding, 16px);
}
.ion-padding-top {
  --padding-top: var(--ion-padding, 16px);
  padding-top: var(--ion-padding, 16px);
}
.ion-padding-start {
  --padding-start: var(--ion-padding, 16px);
  -webkit-padding-start: var(--ion-padding, 16px);
  padding-inline-start: var(--ion-padding, 16px);
}
.ion-padding-end {
  --padding-end: var(--ion-padding, 16px);
  -webkit-padding-end: var(--ion-padding, 16px);
  padding-inline-end: var(--ion-padding, 16px);
}
.ion-padding-bottom {
  --padding-bottom: var(--ion-padding, 16px);
  padding-bottom: var(--ion-padding, 16px);
}
.ion-padding-vertical {
  --padding-top: var(--ion-padding, 16px);
  --padding-bottom: var(--ion-padding, 16px);
  padding-top: var(--ion-padding, 16px);
  padding-bottom: var(--ion-padding, 16px);
}
.ion-padding-horizontal {
  --padding-start: var(--ion-padding, 16px);
  --padding-end: var(--ion-padding, 16px);
  -webkit-padding-start: var(--ion-padding, 16px);
  padding-inline-start: var(--ion-padding, 16px);
  -webkit-padding-end: var(--ion-padding, 16px);
  padding-inline-end: var(--ion-padding, 16px);
}
.ion-no-margin {
  --margin-start: 0;
  --margin-end: 0;
  --margin-top: 0;
  --margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.ion-margin {
  --margin-start: var(--ion-margin, 16px);
  --margin-end: var(--ion-margin, 16px);
  --margin-top: var(--ion-margin, 16px);
  --margin-bottom: var(--ion-margin, 16px);
  -webkit-margin-start: var(--ion-margin, 16px);
  margin-inline-start: var(--ion-margin, 16px);
  -webkit-margin-end: var(--ion-margin, 16px);
  margin-inline-end: var(--ion-margin, 16px);
  margin-top: var(--ion-margin, 16px);
  margin-bottom: var(--ion-margin, 16px);
}
.ion-margin-top {
  --margin-top: var(--ion-margin, 16px);
  margin-top: var(--ion-margin, 16px);
}
.ion-margin-start {
  --margin-start: var(--ion-margin, 16px);
  -webkit-margin-start: var(--ion-margin, 16px);
  margin-inline-start: var(--ion-margin, 16px);
}
.ion-margin-end {
  --margin-end: var(--ion-margin, 16px);
  -webkit-margin-end: var(--ion-margin, 16px);
  margin-inline-end: var(--ion-margin, 16px);
}
.ion-margin-bottom {
  --margin-bottom: var(--ion-margin, 16px);
  margin-bottom: var(--ion-margin, 16px);
}
.ion-margin-vertical {
  --margin-top: var(--ion-margin, 16px);
  --margin-bottom: var(--ion-margin, 16px);
  margin-top: var(--ion-margin, 16px);
  margin-bottom: var(--ion-margin, 16px);
}
.ion-margin-horizontal {
  --margin-start: var(--ion-margin, 16px);
  --margin-end: var(--ion-margin, 16px);
  -webkit-margin-start: var(--ion-margin, 16px);
  margin-inline-start: var(--ion-margin, 16px);
  -webkit-margin-end: var(--ion-margin, 16px);
  margin-inline-end: var(--ion-margin, 16px);
}

/* node_modules/@ionic/angular/css/float-elements.css */
.ion-float-left {
  float: left !important;
}
.ion-float-right {
  float: right !important;
}
.ion-float-start {
  float: left !important;
}
:host-context([dir=rtl]) .ion-float-start {
  float: right !important;
}
[dir=rtl] .ion-float-start {
  float: right !important;
}
@supports selector(:dir(rtl)) {
  .ion-float-start:dir(rtl) {
    float: right !important;
  }
}
.ion-float-end {
  float: right !important;
}
:host-context([dir=rtl]) .ion-float-end {
  float: left !important;
}
[dir=rtl] .ion-float-end {
  float: left !important;
}
@supports selector(:dir(rtl)) {
  .ion-float-end:dir(rtl) {
    float: left !important;
  }
}
@media (min-width: 576px) {
  .ion-float-sm-left {
    float: left !important;
  }
  .ion-float-sm-right {
    float: right !important;
  }
  .ion-float-sm-start {
    float: left !important;
  }
  :host-context([dir=rtl]) .ion-float-sm-start {
    float: right !important;
  }
  [dir=rtl] .ion-float-sm-start {
    float: right !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-sm-start:dir(rtl) {
      float: right !important;
    }
  }
  .ion-float-sm-end {
    float: right !important;
  }
  :host-context([dir=rtl]) .ion-float-sm-end {
    float: left !important;
  }
  [dir=rtl] .ion-float-sm-end {
    float: left !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-sm-end:dir(rtl) {
      float: left !important;
    }
  }
}
@media (min-width: 768px) {
  .ion-float-md-left {
    float: left !important;
  }
  .ion-float-md-right {
    float: right !important;
  }
  .ion-float-md-start {
    float: left !important;
  }
  :host-context([dir=rtl]) .ion-float-md-start {
    float: right !important;
  }
  [dir=rtl] .ion-float-md-start {
    float: right !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-md-start:dir(rtl) {
      float: right !important;
    }
  }
  .ion-float-md-end {
    float: right !important;
  }
  :host-context([dir=rtl]) .ion-float-md-end {
    float: left !important;
  }
  [dir=rtl] .ion-float-md-end {
    float: left !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-md-end:dir(rtl) {
      float: left !important;
    }
  }
}
@media (min-width: 992px) {
  .ion-float-lg-left {
    float: left !important;
  }
  .ion-float-lg-right {
    float: right !important;
  }
  .ion-float-lg-start {
    float: left !important;
  }
  :host-context([dir=rtl]) .ion-float-lg-start {
    float: right !important;
  }
  [dir=rtl] .ion-float-lg-start {
    float: right !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-lg-start:dir(rtl) {
      float: right !important;
    }
  }
  .ion-float-lg-end {
    float: right !important;
  }
  :host-context([dir=rtl]) .ion-float-lg-end {
    float: left !important;
  }
  [dir=rtl] .ion-float-lg-end {
    float: left !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-lg-end:dir(rtl) {
      float: left !important;
    }
  }
}
@media (min-width: 1200px) {
  .ion-float-xl-left {
    float: left !important;
  }
  .ion-float-xl-right {
    float: right !important;
  }
  .ion-float-xl-start {
    float: left !important;
  }
  :host-context([dir=rtl]) .ion-float-xl-start {
    float: right !important;
  }
  [dir=rtl] .ion-float-xl-start {
    float: right !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-xl-start:dir(rtl) {
      float: right !important;
    }
  }
  .ion-float-xl-end {
    float: right !important;
  }
  :host-context([dir=rtl]) .ion-float-xl-end {
    float: left !important;
  }
  [dir=rtl] .ion-float-xl-end {
    float: left !important;
  }
  @supports selector(:dir(rtl)) {
    .ion-float-xl-end:dir(rtl) {
      float: left !important;
    }
  }
}

/* node_modules/@ionic/angular/css/text-alignment.css */
.ion-text-center {
  text-align: center !important;
}
.ion-text-justify {
  text-align: justify !important;
}
.ion-text-start {
  text-align: start !important;
}
.ion-text-end {
  text-align: end !important;
}
.ion-text-left {
  text-align: left !important;
}
.ion-text-right {
  text-align: right !important;
}
.ion-text-nowrap {
  white-space: nowrap !important;
}
.ion-text-wrap {
  white-space: normal !important;
}
@media (min-width: 576px) {
  .ion-text-sm-center {
    text-align: center !important;
  }
  .ion-text-sm-justify {
    text-align: justify !important;
  }
  .ion-text-sm-start {
    text-align: start !important;
  }
  .ion-text-sm-end {
    text-align: end !important;
  }
  .ion-text-sm-left {
    text-align: left !important;
  }
  .ion-text-sm-right {
    text-align: right !important;
  }
  .ion-text-sm-nowrap {
    white-space: nowrap !important;
  }
  .ion-text-sm-wrap {
    white-space: normal !important;
  }
}
@media (min-width: 768px) {
  .ion-text-md-center {
    text-align: center !important;
  }
  .ion-text-md-justify {
    text-align: justify !important;
  }
  .ion-text-md-start {
    text-align: start !important;
  }
  .ion-text-md-end {
    text-align: end !important;
  }
  .ion-text-md-left {
    text-align: left !important;
  }
  .ion-text-md-right {
    text-align: right !important;
  }
  .ion-text-md-nowrap {
    white-space: nowrap !important;
  }
  .ion-text-md-wrap {
    white-space: normal !important;
  }
}
@media (min-width: 992px) {
  .ion-text-lg-center {
    text-align: center !important;
  }
  .ion-text-lg-justify {
    text-align: justify !important;
  }
  .ion-text-lg-start {
    text-align: start !important;
  }
  .ion-text-lg-end {
    text-align: end !important;
  }
  .ion-text-lg-left {
    text-align: left !important;
  }
  .ion-text-lg-right {
    text-align: right !important;
  }
  .ion-text-lg-nowrap {
    white-space: nowrap !important;
  }
  .ion-text-lg-wrap {
    white-space: normal !important;
  }
}
@media (min-width: 1200px) {
  .ion-text-xl-center {
    text-align: center !important;
  }
  .ion-text-xl-justify {
    text-align: justify !important;
  }
  .ion-text-xl-start {
    text-align: start !important;
  }
  .ion-text-xl-end {
    text-align: end !important;
  }
  .ion-text-xl-left {
    text-align: left !important;
  }
  .ion-text-xl-right {
    text-align: right !important;
  }
  .ion-text-xl-nowrap {
    white-space: nowrap !important;
  }
  .ion-text-xl-wrap {
    white-space: normal !important;
  }
}

/* node_modules/@ionic/angular/css/text-transformation.css */
.ion-text-uppercase {
  text-transform: uppercase !important;
}
.ion-text-lowercase {
  text-transform: lowercase !important;
}
.ion-text-capitalize {
  text-transform: capitalize !important;
}
@media (min-width: 576px) {
  .ion-text-sm-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-sm-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-sm-capitalize {
    text-transform: capitalize !important;
  }
}
@media (min-width: 768px) {
  .ion-text-md-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-md-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-md-capitalize {
    text-transform: capitalize !important;
  }
}
@media (min-width: 992px) {
  .ion-text-lg-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-lg-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-lg-capitalize {
    text-transform: capitalize !important;
  }
}
@media (min-width: 1200px) {
  .ion-text-xl-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-xl-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-xl-capitalize {
    text-transform: capitalize !important;
  }
}

/* node_modules/@ionic/angular/css/flex-utils.css */
.ion-align-self-start {
  align-self: flex-start !important;
}
.ion-align-self-end {
  align-self: flex-end !important;
}
.ion-align-self-center {
  align-self: center !important;
}
.ion-align-self-stretch {
  align-self: stretch !important;
}
.ion-align-self-baseline {
  align-self: baseline !important;
}
.ion-align-self-auto {
  align-self: auto !important;
}
.ion-wrap {
  flex-wrap: wrap !important;
}
.ion-nowrap {
  flex-wrap: nowrap !important;
}
.ion-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.ion-justify-content-start {
  justify-content: flex-start !important;
}
.ion-justify-content-center {
  justify-content: center !important;
}
.ion-justify-content-end {
  justify-content: flex-end !important;
}
.ion-justify-content-around {
  justify-content: space-around !important;
}
.ion-justify-content-between {
  justify-content: space-between !important;
}
.ion-justify-content-evenly {
  justify-content: space-evenly !important;
}
.ion-align-items-start {
  align-items: flex-start !important;
}
.ion-align-items-center {
  align-items: center !important;
}
.ion-align-items-end {
  align-items: flex-end !important;
}
.ion-align-items-stretch {
  align-items: stretch !important;
}
.ion-align-items-baseline {
  align-items: baseline !important;
}

/* src/global.scss */
.md body,
.ios body {
  --ion-background-color: none;
}
.alert-white-background .alert-wrapper .alert-head h2 {
  color: black;
}
.popover-wide .alert-wrapper {
  width: 100%;
}
ion-select-popover {
  background-color: white;
}
.alert-white-background .alert-wrapper {
  --color: blue !important;
  --background: white;
  color: blue !important;
  --border-radius: 30px;
  border-radius: 30px;
}
button.alert-button.alert-button {
  background-color: #32A64F;
  color: white;
  border-radius: 30px;
  width: 100%;
  margin-bottom: 10px;
}
.alert-button-inner.sc-ion-alert-md {
  justify-content: center;
}
.alert-button-group.sc-ion-alert-md {
  justify-content: center;
  padding-inline-end: 0px;
}
ion-loading.custom-loading {
  --background: none;
  --spinner-color: white;
  --box-shadow: none !important;
  box-shadow: none !important;
  color: none;
}
.nfa_header-menu_logo {
  padding-right: 10px;
  height: 50px;
}
.nfa-default-text-color {
  --color: #A8A8A8 !important;
  color: #A8A8A8 !important;
  font-family: "Poppins";
}
.nfa-default-background {
  --background: #0D1220;
  background: #0D1220;
}
.nfa-default-background-footer {
  --background: #0D1220;
  background: #0D1220;
}
.nfa-lighter-background {
  --background: #19233D;
  background: #19233D;
}
.nfa-default-background-text-color {
  --background: #0D1220;
  background: #0D1220;
  --color: #A8A8A8 !important;
  color: #A8A8A8 !important;
  font-family: "Poppins";
}
.nfa-big-font-size {
  font-size: x-large;
  font-family: "Poppins";
}
.nfa-normal-font-size {
  font-size: medium;
  font-family: "Poppins";
}
.nfa-small-font-size {
  font-size: small;
  font-family: "Poppins";
}
.nfa-smaller-font-size {
  font-size: x-small;
  font-family: "Poppins";
}
.nfa-green-text-color {
  --color: #32A64F !important;
  color: #32A64F !important;
  font-family: "Poppins";
}
.nfa-highlight-text-color {
  --color: #32A64F !important;
  color: #32A64F !important;
  font-family: "Poppins";
}
.nfa-online-input {
  text-align: left;
  --background: white;
  --color: #777777;
  color: #777777;
  font-family: "Poppins";
  min-height: none;
}
.nfa-online-input-color {
  --color: #777777;
  color: #777777;
}
.input-fill-outline.sc-ion-input-md-h {
  min-height: 45px;
}
.select-fill-outline {
  min-height: 45px;
}
.list-md {
  padding: 0px;
}
.btn-nfa-online-success {
  font-family: "Poppins";
  --background: #32A64F;
  --border-radius: 40px;
  --color: white;
  width: 100%;
  min-height: 45px;
  text-transform: none;
}
.btn-nfa-online-success.no-width,
.btn-nfa-online-info.no-width,
.btn-nfa-online-warning.no-width,
.btn-nfa-online-danger.no-width {
  width: unset;
}
.btn-nfa-online-info {
  font-family: "Poppins";
  --background: white;
  --border-radius: 40px;
  --color: #32A64F;
  width: 100%;
  min-height: 45px;
  text-transform: none;
}
.card-nfa-online-info {
  font-family: "Poppins";
  --background: #A8A8A8;
  --border-radius: 40px;
  --color: white;
  width: 100%;
  min-height: 45px;
  text-transform: none;
}
.card-nfa-online-info .right-align {
  text-align: right;
}
.btn-nfa-online-warning {
  font-family: "Poppins";
  --background: #d3722d;
  --border-radius: 40px;
  --color: white;
  width: 100%;
  min-height: 45px;
  text-transform: none;
}
.btn-nfa-online-warning.no-min-height,
.btn-nfa-online-success.no-min-height {
  min-height: unset;
}
.ion-valid.sc-ion-input-md-h {
  --highlight-color: #32A64F;
}
.ion-valid {
  --highlight-color: #32A64F;
}
.btn-nfa-online-danger {
  font-family: "Poppins";
  --background: red;
  --border-radius: 40px;
  --color: white;
  width: 100%;
  min-height: 45px;
  text-transform: none;
}
.label-padding {
  padding-left: 32px;
}
ion-input.readonly {
  --background: #AAAAAA;
  --color: #626262;
}
ion-textarea.readonly {
  --background: #AAAAAA;
  --color: #626262;
}
.ion-icon-no-padding {
  padding: 0px;
  margin-right: 10px;
}
ion-checkbox {
  --checkbox-background-checked: #32A64F;
  --border-color-checked: #32A64F;
}
ion-icon.selectDropdown {
  font-size: 30px;
  position: absolute;
  top: 8px;
  right: 4%;
  z-index: 1000;
}

/* src/theme/variables.scss */

/* src/theme/desktop.scss */
:root {
  --nfa-d-bg: #070B14;
  --nfa-d-bg-sidebar: #0A0F1B;
  --nfa-d-bg-topbar: #080D18;
  --nfa-d-surface: #0F1626;
  --nfa-d-surface-sunk: #0B1120;
  --nfa-d-surface-raised: #17233B;
  --nfa-d-border: #1B2740;
  --nfa-d-border-strong: #1E2A42;
  --nfa-d-border-soft: #162034;
  --nfa-d-border-focus: #2C3E5E;
  --nfa-d-rule: #141B2A;
  --nfa-d-text: #E9EDF5;
  --nfa-d-text-2: #B9C2D0;
  --nfa-d-text-muted: #8D99AE;
  --nfa-d-text-dim: #7C889D;
  --nfa-d-green: #32A64F;
  --nfa-d-green-bright: #3FBF60;
  --nfa-d-green-wash: rgba(50, 166, 79, .13);
  --nfa-d-red: #E5484D;
  --nfa-d-amber: #D3722D;
  --nfa-d-font:
    "Poppins",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --nfa-d-mono:
    "JetBrains Mono",
    ui-monospace,
    SFMono-Regular,
    Menlo,
    monospace;
  --nfa-d-radius: 8px;
  --nfa-d-radius-lg: 10px;
  --nfa-d-control-h: 46px;
  --nfa-d-modal-max-h: 84vh;
}
.nfa-desktop {
  background: var(--nfa-d-bg);
  color: var(--nfa-d-text);
  font-family: var(--nfa-d-font);
  color-scheme: dark;
}
.nfa-desktop .nfa-d-page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}
.nfa-d-eyebrow {
  font-family: var(--nfa-d-mono);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--nfa-d-text-muted);
}
.nfa-d-title {
  font-size: 24px;
  font-weight: 600;
  color: var(--nfa-d-text);
}
.nfa-d-sub {
  font-size: 13px;
  line-height: 1.6;
  color: var(--nfa-d-text-muted);
}
.nfa-d-mono {
  font-family: var(--nfa-d-mono);
}
.nfa-d-field {
  display: flex;
  flex-direction: column;
}
.nfa-d-label {
  font-size: 11px;
  color: var(--nfa-d-text-muted);
  margin-bottom: 6px;
}
.nfa-d-input {
  width: 100%;
  height: var(--nfa-d-control-h);
  padding: 0 14px;
  background: var(--nfa-d-surface);
  border: 1px solid var(--nfa-d-border-strong);
  border-radius: var(--nfa-d-radius);
  color: var(--nfa-d-text);
  font-family: inherit;
  font-size: 14px;
  outline: none;
  transition: border-color 0.15s ease;
}
.nfa-d-input::placeholder {
  color: var(--nfa-d-text-dim);
}
.nfa-d-input:hover:not(:disabled) {
  border-color: var(--nfa-d-border-focus);
}
.nfa-d-input:focus-visible {
  border-color: var(--nfa-d-green-bright);
  box-shadow: 0 0 0 3px var(--nfa-d-green-wash);
}
.nfa-field-invalid,
.nfa-field-invalid.nfa-d-input {
  border-color: var(--nfa-d-red);
  box-shadow: 0 0 0 3px rgba(229, 72, 77, 0.15);
}
.nfa-d-input--sunk {
  height: 42px;
  padding: 0 12px;
  font-size: 13px;
  background: var(--nfa-d-surface-sunk);
}
.nfa-d-input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.nfa-d-input-wrap .nfa-d-input {
  padding-right: 44px;
}
.nfa-d-reveal {
  position: absolute;
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 4px;
  color: var(--nfa-d-text-muted);
  cursor: pointer;
}
.nfa-d-reveal:hover {
  color: var(--nfa-d-text-2);
}
.nfa-d-reveal ion-icon {
  font-size: 17px;
}
.nfa-d-error {
  margin-top: 6px;
  font-size: 12px;
  color: var(--nfa-d-red);
}
.nfa-d-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: var(--nfa-d-control-h);
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: var(--nfa-d-radius);
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.nfa-d-btn:focus-visible {
  outline: 2px solid var(--nfa-d-green-bright);
  outline-offset: 2px;
}
.nfa-d-btn--primary {
  background: var(--nfa-d-green);
  color: #fff;
}
.nfa-d-btn--primary:hover {
  background: var(--nfa-d-green-bright);
}
.nfa-d-btn--ghost {
  background: transparent;
  border-color: var(--nfa-d-border-strong);
  color: var(--nfa-d-text-2);
}
.nfa-d-btn--ghost:hover {
  border-color: var(--nfa-d-border-focus);
  color: var(--nfa-d-text);
}
.nfa-d-btn--sm {
  height: 38px;
  font-size: 13px;
}
.nfa-d-btn--block {
  width: 100%;
}
.nfa-d-link {
  padding: 0;
  background: none;
  border: 0;
  color: var(--nfa-d-green-bright);
  font-family: inherit;
  font-size: 13px;
  cursor: pointer;
}
.nfa-d-link:hover {
  text-decoration: underline;
}
.nfa-d-link--danger {
  color: var(--nfa-d-red);
}
.nfa-d-card {
  background: var(--nfa-d-surface);
  border: 1px solid var(--nfa-d-border);
  border-radius: var(--nfa-d-radius-lg);
  padding: 18px 20px;
}
.nfa-d-divider {
  height: 1px;
  background: var(--nfa-d-border);
}
.nfa-d-or {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 11px;
  color: var(--nfa-d-text-muted);
}
.nfa-d-or::before,
.nfa-d-or::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--nfa-d-border);
}
.nfa-desktop .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.nfa-d-topbar {
  display: flex;
  align-items: center;
  gap: 20px;
  height: 64px;
  flex-shrink: 0;
  padding: 0 24px;
  background: var(--nfa-d-bg-topbar);
  border-bottom: 1px solid var(--nfa-d-border-soft);
}
.nfa-d-topbar-title {
  font-size: 16px;
  font-weight: 600;
}
.nfa-d-topbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: auto;
}
.nfa-d-search {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 340px;
  height: 36px;
  padding: 0 12px;
  background: var(--nfa-d-surface);
  border: 1px solid var(--nfa-d-border-strong);
  border-radius: var(--nfa-d-radius);
  color: var(--nfa-d-text-muted);
}
.nfa-d-search ion-icon {
  flex-shrink: 0;
  font-size: 16px;
}
.nfa-d-search input {
  width: 100%;
  background: none;
  border: 0;
  outline: none;
  color: var(--nfa-d-text);
  font-family: inherit;
  font-size: 13px;
}
.nfa-d-search:focus-within {
  border-color: var(--nfa-d-green-bright);
}
.nfa-d-suggest-host {
  position: relative;
}
.nfa-d-suggest {
  position: absolute;
  z-index: 5;
  top: 100%;
  left: 0;
  right: 0;
  max-height: 220px;
  margin: 4px 0 0;
  padding: 4px;
  list-style: none;
  overflow-y: auto;
  background: var(--nfa-d-surface);
  border: 1px solid var(--nfa-d-border-focus);
  border-radius: var(--nfa-d-radius);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
}
.nfa-d-suggest button {
  display: block;
  width: 100%;
  padding: 8px 10px;
  background: none;
  border: 0;
  border-radius: 6px;
  color: var(--nfa-d-text-2);
  font-family: inherit;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
}
.nfa-d-suggest button:hover {
  background: var(--nfa-d-green-wash);
  color: var(--nfa-d-text);
}
.nfa-d-check {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--nfa-d-text-2);
  cursor: pointer;
}
.nfa-d-check input {
  width: 18px;
  height: 18px;
  accent-color: var(--nfa-d-green);
  cursor: pointer;
}
.nfa-d-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.nfa-d-thumb {
  position: relative;
  width: 116px;
  height: 116px;
  margin: 0;
  background: var(--nfa-d-surface-raised);
  border: 1px solid var(--nfa-d-border-strong);
  border-radius: var(--nfa-d-radius);
  overflow: hidden;
}
.nfa-d-thumb-open {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: none;
  cursor: zoom-in;
}
.nfa-d-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.18s ease, opacity 0.18s ease;
}
.nfa-d-thumb img.is-document {
  object-fit: contain;
  background: var(--nfa-d-surface-raised);
}
.nfa-d-thumb-open:hover img {
  transform: scale(1.05);
  opacity: 0.88;
}
.nfa-d-thumb-del {
  position: absolute;
  top: 5px;
  right: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  background: rgba(7, 11, 20, 0.82);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 6px;
  color: var(--nfa-d-red);
  cursor: pointer;
}
.nfa-d-thumb-del:hover {
  background: var(--nfa-d-red);
  color: #fff;
}
.nfa-d-thumbs-hint {
  margin: 10px 0 0;
  font-size: 12px;
  color: var(--nfa-d-text-muted);
}
.nfa-d-thumb--add {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-style: dashed;
  border-color: #253451;
  color: var(--nfa-d-text-muted);
  font-family: inherit;
  font-size: 12px;
  cursor: pointer;
}
.nfa-d-thumb--add:hover {
  border-color: var(--nfa-d-green-bright);
  color: var(--nfa-d-text-2);
}
.nfa-d-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--nfa-d-text-2);
  font-size: 12px;
  white-space: nowrap;
}
.nfa-d-chip--amber {
  background: rgba(211, 114, 45, 0.14);
  color: var(--nfa-d-amber);
}
.nfa-d-chip--green {
  background: var(--nfa-d-green-wash);
  color: var(--nfa-d-green-bright);
}
.nfa-d-chip--red {
  background: rgba(229, 72, 77, 0.14);
  color: var(--nfa-d-red);
}
.nfa-d-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  background: none;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--nfa-d-text-muted);
  cursor: pointer;
}
.nfa-d-icon-btn ion-icon {
  font-size: 16px;
}
.nfa-d-icon-btn:hover {
  border-color: var(--nfa-d-border-strong);
  color: var(--nfa-d-text);
}
.nfa-d-icon-btn:focus-visible {
  outline: 2px solid var(--nfa-d-green-bright);
  outline-offset: 1px;
}
.nfa-d-icon-btn--amber {
  color: var(--nfa-d-amber);
}
.nfa-d-kpi {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px 16px;
  background: var(--nfa-d-surface);
  border: 1px solid var(--nfa-d-border);
  border-radius: var(--nfa-d-radius-lg);
}
.nfa-d-kpi-label {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--nfa-d-text-muted);
}
.nfa-d-kpi-value {
  font-size: 26px;
  font-weight: 600;
  line-height: 1;
  color: var(--nfa-d-text);
}
.nfa-d-kpi-value.amber {
  color: var(--nfa-d-amber);
}
.nfa-d-kpi-value.green {
  color: var(--nfa-d-green-bright);
}
.nfa-d-nav-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  background: none;
  border: 0;
  border-radius: var(--nfa-d-radius);
  color: var(--nfa-d-text-muted);
  font-family: inherit;
  font-size: 14px;
  text-align: left;
  cursor: pointer;
}
.nfa-d-nav-item ion-icon {
  flex-shrink: 0;
  font-size: 18px;
}
.nfa-d-nav-item:hover {
  background: rgba(255, 255, 255, 0.03);
  color: var(--nfa-d-text-2);
}
.nfa-d-nav-item:focus-visible {
  outline: 2px solid var(--nfa-d-green-bright);
  outline-offset: -2px;
}
.nfa-d-nav-item--active {
  background: var(--nfa-d-green-wash);
  color: #fff;
  font-weight: 500;
}
.nfa-d-nav-item--active ion-icon {
  color: var(--nfa-d-green-bright);
}
.nfa-d-nav-item--active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  bottom: 9px;
  width: 2px;
  border-radius: 2px;
  background: var(--nfa-d-green-bright);
}
.nfa-d-auth {
  display: grid;
  grid-template-columns: minmax(0, 620px) minmax(0, 1fr);
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  background: var(--nfa-d-bg);
}
.nfa-d-auth-brand {
  position: relative;
  background: var(--nfa-d-bg-sidebar) url(/assets/images/home-background-image.png) center/cover no-repeat;
  border-right: 1px solid var(--nfa-d-border-soft);
}
.nfa-d-auth-scrim {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      180deg,
      rgba(10, 15, 27, 0.72),
      rgba(10, 15, 27, 0.35) 45%,
      rgba(10, 15, 27, 0.9));
}
.nfa-d-auth-brandbody {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: 48px;
}
.nfa-d-auth-brandbody img {
  align-self: flex-start;
  height: 30px;
  width: auto;
}
.nfa-d-auth-copy {
  margin-top: auto;
}
.nfa-d-auth-copy h1 {
  max-width: 420px;
  margin: 0 0 14px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--nfa-d-text);
}
.nfa-d-auth-copy p {
  max-width: 420px;
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--nfa-d-text-2);
}
.nfa-d-auth-form {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px;
}
@media (max-width: 1023px) {
  .nfa-d-auth {
    grid-template-columns: minmax(0, 1fr);
  }
  .nfa-d-auth-brand {
    display: none;
  }
  .nfa-d-auth-form {
    padding: 32px 24px;
  }
}
body.nfa-desktop ion-modal {
  --background: var(--nfa-d-surface) !important;
  --border-radius: var(--nfa-d-radius-lg) !important;
  --box-shadow: 0 24px 64px rgba(0, 0, 0, .55) !important;
  --backdrop-opacity: .68 !important;
  --width: min(560px, 92vw) !important;
  --min-width: 0 !important;
  --height: auto !important;
  --max-height: var(--nfa-d-modal-max-h) !important;
  color: var(--nfa-d-text);
  font-family: var(--nfa-d-font);
}
body.nfa-desktop ion-modal::part(content) {
  border: 1px solid var(--nfa-d-border);
  overflow: hidden;
}
body.nfa-desktop ion-modal .wrapper {
  height: auto !important;
  max-height: 84vh;
  display: flex;
  flex-direction: column;
  background: var(--nfa-d-surface) !important;
  border: 0 !important;
  border-radius: 0 !important;
}
body.nfa-desktop ion-modal ion-content {
  contain: style;
  flex: 0 0 auto;
  --background: var(--nfa-d-surface);
  --color: var(--nfa-d-text-2);
  background: var(--nfa-d-surface);
}
body.nfa-desktop ion-modal ion-content::part(scroll) {
  position: relative;
  max-height: 72vh;
  overflow-y: auto;
  padding: 4px 0 8px;
}
body.nfa-desktop ion-modal ion-header::after,
body.nfa-desktop ion-modal ion-toolbar {
  --background: transparent !important;
  --border-width: 0;
  --border-color: transparent;
  background: transparent !important;
  box-shadow: none;
}
body.nfa-desktop ion-modal ion-header {
  border-bottom: 1px solid var(--nfa-d-rule);
}
body.nfa-desktop ion-modal ion-title {
  --color: var(--nfa-d-text);
  color: var(--nfa-d-text) !important;
  font-family: var(--nfa-d-font);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
}
body.nfa-desktop ion-modal ion-item {
  background: transparent !important;
  --background: transparent !important;
  --background-hover: var(--nfa-d-surface-raised);
  --color: var(--nfa-d-text);
  --border-color: var(--nfa-d-rule);
  --min-height: 44px;
  font-family: var(--nfa-d-font);
  font-size: 14px;
}
body.nfa-desktop ion-modal ion-label,
body.nfa-desktop ion-modal ion-checkbox {
  --color: var(--nfa-d-text);
  color: var(--nfa-d-text) !important;
  font-family: var(--nfa-d-font);
  font-size: 14px;
}
body.nfa-desktop ion-modal ion-checkbox {
  --checkbox-background-checked: var(--nfa-d-green);
  --border-color: var(--nfa-d-border-focus);
  --border-color-checked: var(--nfa-d-green);
  --border-radius: 4px;
  --size: 18px;
}
body.nfa-desktop ion-modal ion-searchbar {
  --background: var(--nfa-d-surface-sunk);
  --color: var(--nfa-d-text);
  --placeholder-color: var(--nfa-d-text-muted);
  --icon-color: var(--nfa-d-text-muted);
  --border-radius: var(--nfa-d-radius);
  --box-shadow: none;
  padding: 8px 12px 12px;
}
body.nfa-desktop ion-modal ion-icon {
  width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
  margin-right: 0 !important;
  font-size: 18px;
}
body.nfa-desktop ion-modal ion-textarea,
body.nfa-desktop ion-modal ion-input {
  --background: var(--nfa-d-surface-sunk);
  --color: var(--nfa-d-text);
  --placeholder-color: var(--nfa-d-text-muted);
  --border-radius: var(--nfa-d-radius);
  --border-color: var(--nfa-d-border-strong);
  --highlight-color-focused: var(--nfa-d-green-bright);
  font-family: var(--nfa-d-font);
  font-size: 14px;
}
body.nfa-desktop ion-modal .textarea-outline-start,
body.nfa-desktop ion-modal .input-outline-start {
  border-radius: var(--nfa-d-radius) 0 0 var(--nfa-d-radius) !important;
}
body.nfa-desktop ion-modal .textarea-outline-end,
body.nfa-desktop ion-modal .input-outline-end {
  border-radius: 0 var(--nfa-d-radius) var(--nfa-d-radius) 0 !important;
}
body.nfa-desktop ion-modal .textarea-wrapper,
body.nfa-desktop ion-modal .input-wrapper {
  border-radius: var(--nfa-d-radius) !important;
}
body.nfa-desktop ion-modal .btn-nfa-online-success,
body.nfa-desktop ion-modal .btn-nfa-online-info,
body.nfa-desktop ion-modal .btn-nfa-online-warning,
body.nfa-desktop ion-modal .btn-nfa-online-danger {
  --border-radius: var(--nfa-d-radius);
  --box-shadow: none;
  width: auto;
  min-width: 168px;
  min-height: 38px;
  margin: 0;
  font-family: var(--nfa-d-font);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}
body.nfa-desktop ion-modal .btn-nfa-online-success {
  --background: var(--nfa-d-green);
  --background-hover: var(--nfa-d-green-bright);
}
body.nfa-desktop ion-modal .btn-nfa-online-info {
  --background: var(--nfa-d-surface-raised);
  --color: var(--nfa-d-text);
}
body.nfa-desktop ion-modal .btn-nfa-online-danger {
  --background: transparent;
  --color: var(--nfa-d-red);
  --border-width: 1px;
  --border-style: solid;
  --border-color: var(--nfa-d-red);
}
body.nfa-desktop ion-modal ion-content > .ion-text-center {
  text-align: left !important;
}
body.nfa-desktop ion-modal ion-datetime {
  --background: var(--nfa-d-surface);
  --wheel-highlight-background: var(--nfa-d-surface-raised);
  color: var(--nfa-d-text);
}
body.nfa-desktop ion-alert .alert-wrapper {
  --background: var(--nfa-d-surface) !important;
  background: var(--nfa-d-surface) !important;
  --color: var(--nfa-d-text) !important;
  color: var(--nfa-d-text) !important;
  --border-radius: var(--nfa-d-radius-lg);
  border-radius: var(--nfa-d-radius-lg);
  border: 1px solid var(--nfa-d-border);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
  font-family: var(--nfa-d-font);
  max-width: 420px;
}
body.nfa-desktop ion-alert .alert-wrapper .alert-head h2 {
  color: var(--nfa-d-text) !important;
  font-size: 15px;
  font-weight: 500;
}
body.nfa-desktop ion-alert .alert-wrapper .alert-message {
  color: var(--nfa-d-text-2) !important;
  font-size: 13px;
  line-height: 1.55;
}
body.nfa-desktop ion-alert button.alert-button.alert-button {
  width: auto;
  min-width: 92px;
  margin: 0 0 0 8px;
  padding: 0 18px;
  border-radius: var(--nfa-d-radius);
  min-height: 38px;
  font-family: var(--nfa-d-font);
  font-size: 13px;
  font-weight: 500;
  text-transform: none;
}
body.nfa-desktop ion-alert .alert-button-inner {
  justify-content: center;
}
body.nfa-desktop ion-alert .alert-button-group {
  justify-content: flex-end;
  padding: 4px 16px 16px;
}
body.nfa-desktop ion-alert .alert-head {
  padding: 18px 16px 4px;
}
body.nfa-desktop ion-alert .alert-message {
  padding: 0 16px 16px;
}
body.nfa-desktop ion-loading.custom-loading {
  --backdrop-opacity: .5;
  --spinner-color: var(--nfa-d-green-bright);
}
body.nfa-desktop ion-popover {
  --background: var(--nfa-d-surface);
  --color: var(--nfa-d-text);
  --box-shadow: 0 18px 48px rgba(0, 0, 0, .5);
  --border-radius: var(--nfa-d-radius);
  font-family: var(--nfa-d-font);
}
body.nfa-desktop ion-popover ion-select-popover,
body.nfa-desktop ion-popover ion-content,
body.nfa-desktop ion-popover ion-list {
  background-color: var(--nfa-d-surface);
  --background: var(--nfa-d-surface);
  --color: var(--nfa-d-text);
}
body.nfa-desktop ion-popover ion-item {
  --background: transparent;
  --background-hover: var(--nfa-d-surface-raised);
  --color: var(--nfa-d-text);
  --border-color: var(--nfa-d-rule);
  font-size: 14px;
}
.nfa-d-shellfill {
  flex: 1 1 auto;
  min-height: 0;
}
.nfa-d-screen {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.nfa-d-body {
  padding: 24px 28px 32px;
}
.nfa-d-body--narrow {
  max-width: 720px;
}
.nfa-d-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.nfa-d-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.nfa-d-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.nfa-desktop select.nfa-d-input {
  appearance: none;
  padding-right: 36px;
  background-image:
    linear-gradient(
      45deg,
      transparent 50%,
      var(--nfa-d-text-muted) 50%),
    linear-gradient(
      135deg,
      var(--nfa-d-text-muted) 50%,
      transparent 50%);
  background-position: calc(100% - 19px) calc(50% + 2px), calc(100% - 14px) calc(50% + 2px);
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}
.nfa-desktop select.nfa-d-input option {
  background: var(--nfa-d-surface);
  color: var(--nfa-d-text);
}
.nfa-desktop .nfa-d-input[readonly] {
  color: var(--nfa-d-text-2);
  cursor: default;
}
.nfa-d-switch {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 40px;
  height: 22px;
  flex-shrink: 0;
  cursor: pointer;
}
.nfa-d-switch input {
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  cursor: pointer;
}
.nfa-d-switch span {
  width: 40px;
  height: 22px;
  background: var(--nfa-d-surface-raised);
  border: 1px solid var(--nfa-d-border-strong);
  border-radius: 999px;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.nfa-d-switch span::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 14px;
  height: 14px;
  background: var(--nfa-d-text-muted);
  border-radius: 50%;
  transition: transform 0.15s ease, background-color 0.15s ease;
}
.nfa-d-switch input:checked + span {
  background: var(--nfa-d-green-wash);
  border-color: var(--nfa-d-green);
}
.nfa-d-switch input:checked + span::after {
  transform: translateX(18px);
  background: var(--nfa-d-green-bright);
}
.nfa-d-switch input:focus-visible + span {
  outline: 2px solid var(--nfa-d-green-bright);
  outline-offset: 2px;
}
@media (max-width: 1180px) {
  .nfa-d-pair {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* src/theme/mobile.scss */
:root {
  --nfa-m-bg: #070B14;
  --nfa-m-bg-bar: #0A0F1A;
  --nfa-m-surface: #0F1626;
  --nfa-m-surface-sunk: #0B1120;
  --nfa-m-rule: #141B2A;
  --nfa-m-border: #1B2740;
  --nfa-m-border-strong: #1E2A42;
  --nfa-m-border-soft: #162034;
  --nfa-m-border-focus: #2C3E5E;
  --nfa-m-border-dash: #253451;
  --nfa-m-text: #E9EDF5;
  --nfa-m-text-2: #B9C2D0;
  --nfa-m-text-muted: #8D99AE;
  --nfa-m-green: #32A64F;
  --nfa-m-green-bright: #3FBF60;
  --nfa-m-green-wash: rgba(50, 166, 79, .14);
  --nfa-m-red: #E5484D;
  --nfa-m-red-soft: #FF9093;
  --nfa-m-red-wash: rgba(229, 72, 77, .08);
  --nfa-m-amber: #D3722D;
  --nfa-m-amber-wash: rgba(211, 114, 45, .16);
  --nfa-m-font:
    "Poppins",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --nfa-m-mono:
    "JetBrains Mono",
    ui-monospace,
    SFMono-Regular,
    Menlo,
    monospace;
  --nfa-m-radius: 10px;
  --nfa-m-radius-lg: 12px;
  --nfa-m-control-h: 52px;
}
body:not(.nfa-desktop) {
  --ion-color-primary: #32A64F;
  --ion-color-primary-rgb:
    50,
    166,
    79;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: #2c9246;
  --ion-color-primary-tint: #47af61;
}
.nfa-m {
  --background: var(--nfa-m-bg);
  --color: var(--nfa-m-text);
  --padding-start: 0;
  --padding-end: 0;
  --padding-top: 0;
  --padding-bottom: 0;
  background: var(--nfa-m-bg);
  color: var(--nfa-m-text);
  font-family: var(--nfa-m-font);
  color-scheme: dark;
}
.nfa-m::part(scroll) {
  padding-top: var(--offset-top, 0px);
  padding-bottom: var(--offset-bottom, 0px);
}
.nfa-m-wrap {
  padding: 16px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.nfa-m-wrap--tight {
  gap: 14px;
}
.nfa-m-wrap--footer {
  padding-bottom: 12px;
}
.nfa-m-h1 {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.015em;
  color: var(--nfa-m-text);
  text-wrap: pretty;
}
.nfa-m-h2 {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--nfa-m-text);
}
.nfa-m-h3 {
  font-size: 17px;
  font-weight: 600;
  color: var(--nfa-m-text);
}
.nfa-m-sub {
  font-size: 13px;
  line-height: 1.6;
  color: var(--nfa-m-text-muted);
  text-wrap: pretty;
}
.nfa-m-eyebrow {
  font-family: var(--nfa-m-mono);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--nfa-m-text-muted);
}
.nfa-m-section > .nfa-m-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--nfa-m-text-2);
}
.nfa-m-section > .nfa-m-eyebrow::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--nfa-m-rule);
}
.nfa-m-mono {
  font-family: var(--nfa-m-mono);
}
.nfa-m-muted {
  color: var(--nfa-m-text-muted);
}
.nfa-m-link {
  color: var(--nfa-m-green-bright);
  font-size: 12px;
  background: none;
  border: 0;
  padding: 0;
  font-family: inherit;
}
.nfa-m-topbar {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  border-bottom: 1px solid var(--nfa-m-border-soft);
}
.nfa-m-topbar__title {
  font-size: 17px;
  font-weight: 600;
  color: var(--nfa-m-text);
}
.nfa-m-topbar__sub {
  font-size: 12px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-topbar__main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.nfa-m-iconbtn {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: var(--nfa-m-radius);
  border: 1px solid var(--nfa-m-border-strong);
  background: none;
  color: var(--nfa-m-text-2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.nfa-m-card {
  background: var(--nfa-m-surface);
  border: 1px solid var(--nfa-m-border);
  border-radius: var(--nfa-m-radius-lg);
  overflow: hidden;
}
.nfa-m-card--pad {
  padding: 16px;
}
.nfa-m-card__hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--nfa-m-rule);
}
.nfa-m-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.nfa-m-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--nfa-m-rule);
  color: var(--nfa-m-text);
}
.nfa-m-row:last-child {
  border-bottom: 0;
}
.nfa-m-row--tap {
  cursor: pointer;
}
button.nfa-m-row {
  width: 100%;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-bottom-style: solid;
  background: none;
  font-family: inherit;
  font-size: inherit;
  text-align: left;
}
.nfa-m-row__main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.nfa-m-row__title {
  display: block;
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.nfa-m-row__meta {
  display: block;
  font-size: 11px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-row__right {
  flex-shrink: 0;
  text-align: right;
}
.nfa-m-row__icon {
  flex-shrink: 0;
  font-size: 19px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-row__chev {
  flex-shrink: 0;
  font-size: 16px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-list > .nfa-m-row {
  padding-left: 20px;
  padding-right: 20px;
}
.nfa-m-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border-radius: 5px;
  font-size: 11px;
  white-space: nowrap;
  background: rgba(255, 255, 255, 0.06);
  color: var(--nfa-m-text-2);
}
.nfa-m-chip--green {
  background: var(--nfa-m-green-wash);
  color: var(--nfa-m-green-bright);
}
.nfa-m-chip--amber {
  background: var(--nfa-m-amber-wash);
  color: var(--nfa-m-amber);
}
.nfa-m-chip--red {
  background: rgba(229, 72, 77, 0.16);
  color: var(--nfa-m-red-soft);
}
.nfa-m-chip__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
}
.nfa-m-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  background: var(--nfa-m-text-muted);
}
.nfa-m-dot--green {
  background: var(--nfa-m-green-bright);
}
.nfa-m-dot--amber {
  background: var(--nfa-m-amber);
}
.nfa-m-dot--red {
  background: var(--nfa-m-red);
}
.nfa-m-filters {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.nfa-m-filters::-webkit-scrollbar {
  display: none;
}
.nfa-m-filter {
  height: 34px;
  padding: 0 12px;
  border-radius: 8px;
  border: 1px solid var(--nfa-m-border-strong);
  background: none;
  color: var(--nfa-m-text-muted);
  font-family: inherit;
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.nfa-m-filter--on {
  border-color: transparent;
  background: var(--nfa-m-green-wash);
  color: var(--nfa-m-green-bright);
  font-weight: 500;
}
.nfa-m-filter__n {
  font-family: var(--nfa-m-mono);
}
.nfa-m-tl {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.nfa-m-tl__item {
  display: flex;
  gap: 12px;
}
.nfa-m-tl__rail {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 10px;
  flex-shrink: 0;
}
.nfa-m-tl__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--nfa-m-green-bright);
}
.nfa-m-tl__dot--open {
  background: none;
  border: 1.5px solid var(--nfa-m-border-focus);
  box-sizing: border-box;
}
.nfa-m-tl__line {
  flex: 1;
  width: 1.5px;
  background: var(--nfa-m-border-strong);
}
.nfa-m-tl__body {
  padding-bottom: 14px;
}
.nfa-m-tl__title {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: var(--nfa-m-text);
}
.nfa-m-tl__time {
  display: block;
  font-family: var(--nfa-m-mono);
  font-size: 11px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-facts {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.nfa-m-fact {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  font-size: 13px;
}
.nfa-m-fact__k {
  color: var(--nfa-m-text-muted);
  flex-shrink: 0;
}
.nfa-m-fact__v {
  text-align: right;
  color: var(--nfa-m-text);
  min-width: 0;
  overflow-wrap: anywhere;
}
.nfa-m-note {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px 14px;
  border-radius: var(--nfa-m-radius-lg);
  background: var(--nfa-m-surface);
  border: 1px solid var(--nfa-m-border);
  font-size: 12px;
  line-height: 1.5;
  color: var(--nfa-m-text-2);
}
.nfa-m-note__icon {
  flex-shrink: 0;
  font-size: 17px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-note--danger {
  background: var(--nfa-m-red-wash);
  border-color: rgba(229, 72, 77, 0.22);
}
.nfa-m-note--danger .nfa-m-note__icon {
  color: var(--nfa-m-red);
}
.nfa-m-note--warn .nfa-m-note__icon {
  color: var(--nfa-m-amber);
}
.nfa-m-note--ok {
  background: rgba(50, 166, 79, 0.09);
  border-color: rgba(63, 191, 96, 0.24);
}
.nfa-m-note--ok .nfa-m-note__icon {
  color: var(--nfa-m-green-bright);
}
.nfa-m-empty {
  padding: 18px 20px;
  font-size: 13px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-btn {
  height: var(--nfa-m-control-h);
  border-radius: var(--nfa-m-radius-lg);
  border: 1px solid transparent;
  background: none;
  color: var(--nfa-m-text-2);
  font-family: var(--nfa-m-font);
  font-size: 15px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 16px;
  width: 100%;
  text-align: center;
}
.nfa-m-btn ion-icon {
  font-size: 18px;
}
.nfa-m-btn--primary {
  background: var(--nfa-m-green);
  color: #fff;
}
.nfa-m-btn--ghost {
  border-color: var(--nfa-m-border-strong);
  color: var(--nfa-m-text-2);
}
.nfa-m-btn--danger {
  border-color: rgba(229, 72, 77, 0.4);
  color: var(--nfa-m-red-soft);
}
.nfa-m-btn--sm {
  height: 44px;
  font-size: 14px;
}
.nfa-m-btn--auto {
  width: auto;
}
.nfa-m-btn:disabled {
  opacity: 0.45;
}
.nfa-m-btns {
  display: flex;
  gap: 10px;
}
.nfa-m-btns > .nfa-m-btn {
  flex: 1;
}
.nfa-m-actions {
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  padding: 12px 20px;
  background: var(--nfa-m-bg-bar);
  border-top: 1px solid var(--nfa-m-border-soft);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.nfa-m-actions__hint {
  font-size: 12px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-actions--last {
  padding-bottom: calc(12px + env(safe-area-inset-bottom));
}
.nfa-m-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}
.nfa-m-fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.nfa-m-fields--row {
  flex-direction: row;
  gap: 12px;
}
.nfa-m-fields--row > .nfa-m-field {
  flex: 1;
  min-width: 0;
}
.nfa-m-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--nfa-m-text-muted);
}
.nfa-m-label__req {
  font-size: 9px;
  letter-spacing: 0.06em;
  color: var(--nfa-m-amber);
}
.nfa-m-hint {
  font-size: 11px;
  line-height: 1.45;
  color: var(--nfa-m-text-muted);
}
.nfa-m-error {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  line-height: 1.4;
  color: var(--nfa-m-red-soft);
}
.nfa-m-error ion-icon {
  font-size: 13px;
  flex-shrink: 0;
}
.nfa-m-input.nfa-m-input.nfa-m-input {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --placeholder-color: var(--nfa-m-text-muted);
  --placeholder-opacity: 1;
  --border-color: var(--nfa-m-border-strong);
  --border-width: 1px;
  --border-radius: var(--nfa-m-radius);
  --highlight-color-focused: var(--nfa-m-green-bright);
  --highlight-color-valid: var(--nfa-m-green-bright);
  --highlight-color-invalid: var(--nfa-m-red);
  --padding-start: 14px;
  --padding-end: 14px;
  --padding-top: 13px;
  --padding-bottom: 13px;
}
.nfa-m-input.nfa-m-input.nfa-m-input {
  display: block;
  min-height: var(--nfa-m-control-h);
}
.nfa-m-input {
  font-family: var(--nfa-m-font);
  font-size: 15px;
  color: var(--nfa-m-text);
  width: 100%;
  border-radius: var(--nfa-m-radius);
  transition: box-shadow 0.16s ease, background-color 0.16s ease;
}
.nfa-m-selectbox {
  min-height: var(--nfa-m-control-h);
}
.nfa-m-input.nfa-m-input.nfa-m-input.has-focus,
.nfa-m-input.nfa-m-input.nfa-m-input.select-expanded {
  --border-color: var(--nfa-m-green-bright);
}
.nfa-m-input.has-focus,
.nfa-m-input.select-expanded {
  box-shadow: 0 0 0 3px var(--nfa-m-green-wash);
}
.nfa-m-input.nfa-m-input.nfa-m-input.ion-invalid.ion-touched {
  --border-color: var(--nfa-m-red);
}
.nfa-m-input.ion-invalid.ion-touched.has-focus {
  box-shadow: 0 0 0 3px var(--nfa-m-red-wash);
}
.nfa-m-input.nfa-m-input.nfa-m-input.nfa-field-invalid {
  --border-color: var(--nfa-m-red);
}
.nfa-m-input.nfa-field-invalid {
  box-shadow: 0 0 0 3px var(--nfa-m-red-wash);
}
.nfa-m-input.nfa-m-input--mono {
  font-family: var(--nfa-m-mono);
}
.nfa-m-input.nfa-m-input--area {
  min-height: 96px;
}
.nfa-m-input.nfa-m-input.nfa-m-input.nfa-m-input--ro {
  --background: var(--nfa-m-surface-sunk);
  --color: var(--nfa-m-text-2);
  --border-color: var(--nfa-m-rule);
}
.nfa-m-input .select-icon,
.nfa-m-input::part(icon) {
  color: var(--nfa-m-text-muted);
  margin-left: auto;
}
body:not(.nfa-desktop) input:-webkit-autofill,
body:not(.nfa-desktop) input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--nfa-m-text);
  -webkit-box-shadow: 0 0 0 1000px var(--nfa-m-surface) inset;
  caret-color: var(--nfa-m-text);
}
.nfa-m-caret {
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  z-index: 2;
  font-size: 16px;
  color: var(--nfa-m-text-muted);
  pointer-events: none;
  transition: transform 0.16s ease, color 0.16s ease;
}
.nfa-m-selectbox {
  position: relative;
  min-width: 0;
}
.nfa-m-field--select {
  position: relative;
}
.nfa-m-suggest {
  background: var(--nfa-m-surface);
  border: 1px solid var(--nfa-m-border-focus);
  border-radius: var(--nfa-m-radius);
  overflow: hidden auto;
  max-height: 232px;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.5);
}
.nfa-m-suggest__item {
  display: block;
  width: 100%;
  padding: 13px 14px;
  font-family: inherit;
  font-size: 14px;
  text-align: left;
  color: var(--nfa-m-text-2);
  background: none;
  border: 0;
  border-bottom: 1px solid var(--nfa-m-rule);
}
.nfa-m-suggest__item:last-child {
  border-bottom: 0;
}
.nfa-m-suggest__item:active {
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-check {
  --checkbox-background: var(--nfa-m-surface-sunk);
  --checkbox-background-checked: var(--nfa-m-green);
  --border-color: var(--nfa-m-border-focus);
  --border-color-checked: var(--nfa-m-green);
  --border-radius: 6px;
  --size: 21px;
  font-size: 14px;
  color: var(--nfa-m-text-2);
}
.nfa-m-toggle {
  --background: var(--nfa-m-border-strong);
  --background-checked: var(--nfa-m-green);
  --handle-background: #fff;
  --handle-background-checked: #fff;
}
.nfa-m-optrow {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 11px 14px;
  border: 1px solid var(--nfa-m-border-strong);
  border-radius: var(--nfa-m-radius);
  background: var(--nfa-m-surface);
}
.nfa-m-optrow > .nfa-m-check {
  flex: 1;
  min-width: 0;
}
.nfa-m-optrow__main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.nfa-m-optrow__title {
  font-size: 14px;
  color: var(--nfa-m-text);
}
.nfa-m-optrow__meta {
  font-size: 11px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-datebtn {
  --ion-color-base: transparent;
  display: block;
}
.nfa-m-datebtn::part(native) {
  min-height: var(--nfa-m-control-h);
  width: 100%;
  padding: 0 14px;
  border: 1px solid var(--nfa-m-border-strong);
  border-radius: var(--nfa-m-radius);
  background: var(--nfa-m-surface);
  color: var(--nfa-m-text);
  font-family: var(--nfa-m-font);
  font-size: 15px;
}
.nfa-m-datebtn::part(native active) {
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-search {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --placeholder-color: var(--nfa-m-text-muted);
  --icon-color: var(--nfa-m-text-muted);
  --clear-button-color: var(--nfa-m-text-muted);
  --border-radius: var(--nfa-m-radius);
  --box-shadow: none;
  padding: 0 20px 12px;
  font-family: var(--nfa-m-font);
}
body:not(.nfa-desktop) ion-select-popover {
  background-color: var(--nfa-m-surface);
  color: var(--nfa-m-text);
  font-family: var(--nfa-m-font);
}
body:not(.nfa-desktop) ion-select-popover ion-item {
  --background: var(--nfa-m-surface);
  --background-focused: var(--nfa-m-surface-sunk);
  --background-hover: var(--nfa-m-surface-sunk);
  --color: var(--nfa-m-text);
  --border-color: var(--nfa-m-rule);
  --min-height: 50px;
  font-size: 15px;
}
body:not(.nfa-desktop) ion-select-popover ion-radio {
  --color: var(--nfa-m-text-muted);
  --color-checked: var(--nfa-m-green-bright);
}
body:not(.nfa-desktop) ion-popover {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --border-radius: var(--nfa-m-radius-lg);
  --box-shadow: 0 18px 44px rgba(0, 0, 0, .58);
  --backdrop-opacity: .45;
}
.nfa-m-datetime,
body:not(.nfa-desktop) ion-datetime {
  --background: var(--nfa-m-surface);
  --background-rgb:
    15,
    22,
    38;
  --wheel-fade-background-rgb:
    15,
    22,
    38;
  --wheel-highlight-background: var(--nfa-m-surface-sunk);
  --ion-color-base: var(--nfa-m-green-bright);
  --ion-color-primary: var(--nfa-m-green-bright);
  --title-color: var(--nfa-m-text-2);
  color: var(--nfa-m-text);
  width: 100%;
}
.nfa-m-datetime {
  border: 1px solid var(--nfa-m-border);
  border-radius: var(--nfa-m-radius-lg);
}
.nfa-m-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
  gap: 10px;
}
.nfa-m-thumb {
  position: relative;
  aspect-ratio: 1/1;
  margin: 0;
  border-radius: var(--nfa-m-radius-lg);
  border: 1px solid var(--nfa-m-border-strong);
  background: var(--nfa-m-surface-sunk);
  overflow: hidden;
}
.nfa-m-thumb__open {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: none;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.16s ease;
}
.nfa-m-thumb__open:active {
  transform: scale(0.955);
}
.nfa-m-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.nfa-m-thumb img.is-document {
  object-fit: contain;
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-thumb__del {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 26px;
  height: 26px;
  border-radius: 13px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(7, 11, 20, 0.74);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  color: var(--nfa-m-red-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  -webkit-tap-highlight-color: transparent;
}
.nfa-m-thumb__del:active {
  background: rgba(229, 72, 77, 0.9);
  color: #fff;
}
.nfa-m-thumb--add {
  border: 1px dashed var(--nfa-m-border-dash);
  background: none;
  color: var(--nfa-m-text-muted);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-family: inherit;
  font-size: 11px;
}
.nfa-m-thumb--add ion-icon {
  font-size: 19px;
}
.nfa-m-thumbs-hint {
  margin: 9px 0 0;
  font-size: 11px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-segment {
  display: flex;
  padding: 3px;
  background: var(--nfa-m-surface);
  border: 1px solid var(--nfa-m-border-strong);
  border-radius: 11px;
}
.nfa-m-segment__opt {
  flex: 1;
  height: 40px;
  border: 0;
  background: none;
  border-radius: 8px;
  color: var(--nfa-m-text-muted);
  font-family: inherit;
  font-size: 13px;
}
.nfa-m-segment__opt--on {
  background: rgba(229, 72, 77, 0.16);
  color: var(--nfa-m-red-soft);
  font-weight: 500;
}
.nfa-m-segment__opt--on-test {
  background: var(--nfa-m-green-wash);
  color: var(--nfa-m-green-bright);
  font-weight: 500;
}
.nfa-m-map {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.nfa-m-map capacitor-google-map,
.nfa-m-map #map {
  display: block;
  width: 100%;
  height: 100%;
}
.nfa-m-map__top {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
  padding: calc(12px + var(--offset-top, 0px)) 20px 44px;
  display: flex;
  align-items: center;
  gap: 14px;
  background:
    linear-gradient(
      rgba(7, 11, 20, 0.97) 0%,
      rgba(7, 11, 20, 0.93) 58%,
      rgba(7, 11, 20, 0.45) 80%,
      rgba(7, 11, 20, 0) 100%);
  pointer-events: none;
}
.nfa-m-map__top > * {
  pointer-events: auto;
}
.nfa-m-map__bottom {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  padding: 40px 14px calc(14px + var(--offset-bottom, 0px));
  display: flex;
  flex-direction: column;
  gap: 12px;
  background:
    linear-gradient(
      rgba(7, 11, 20, 0),
      rgba(7, 11, 20, 0.78) 34%,
      rgba(7, 11, 20, 0.95));
  pointer-events: none;
}
.nfa-m-map__bottom > * {
  pointer-events: auto;
}
.nfa-m-map__panel {
  background: rgba(11, 17, 32, 0.93);
  border: 1px solid var(--nfa-m-border-strong);
  border-radius: 20px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.nfa-m-map-native,
.nfa-m-map-native body,
.nfa-m-map-native ion-app,
.nfa-m-map-native ion-router-outlet,
.nfa-m-map-native .ion-page,
.nfa-m-map-native ion-content.panic-content {
  background: transparent;
  --background: transparent;
  --ion-background-color: transparent;
}
.nfa-m-map-live:not(.nfa-m-map-native) .nfa-m-map {
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-map__pill {
  height: 34px;
  padding: 0 12px;
  border-radius: 8px;
  background: rgba(15, 22, 38, 0.9);
  border: 1px solid var(--nfa-m-border-strong);
  color: var(--nfa-m-text-2);
  font-family: inherit;
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 7px;
  flex-shrink: 0;
}
.nfa-m-map__pill ion-icon {
  color: var(--nfa-m-green-bright);
  font-size: 14px;
}
.nfa-m-hold {
  position: relative;
  overflow: hidden;
  height: 68px;
  border-radius: var(--nfa-m-radius-lg);
  border: 0;
  background: var(--nfa-m-red);
  box-shadow: 0 10px 28px rgba(229, 72, 77, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-family: inherit;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
.nfa-m-hold--test {
  background: var(--nfa-m-green);
  box-shadow: 0 10px 28px rgba(50, 166, 79, 0.28);
}
.nfa-m-hold--wait {
  background: var(--nfa-m-surface);
  border: 1px dashed var(--nfa-m-border-dash);
  box-shadow: none;
}
.nfa-m-hold--wait .nfa-m-hold__label {
  color: var(--nfa-m-text-muted);
}
.nfa-m-hold__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0;
  background: rgba(255, 255, 255, 0.24);
  transition: width 1.5s linear;
}
.nfa-m-hold--on .nfa-m-hold__fill {
  width: 100%;
}
.nfa-m-hold--on {
  transform: scale(0.99);
}
.nfa-m-hold {
  transition: transform 0.12s ease, background-color 0.18s ease;
}
.nfa-m-hold__label {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  pointer-events: none;
  color: #fff;
}
.nfa-m-hold__label b {
  font-family: var(--nfa-m-mono);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.12em;
}
.nfa-m-hold__label span {
  font-size: 12px;
}
.nfa-m-tabbar {
  display: flex;
  align-items: flex-start;
  padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
  background: var(--nfa-m-bg-bar);
  border-top: 1px solid var(--nfa-m-border-soft);
}
.nfa-m-tab {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 2px;
  border: 0;
  background: none;
  font-family: inherit;
  font-size: 10px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-tab ion-icon {
  font-size: 22px;
}
.nfa-m-tab--on {
  color: var(--nfa-m-green-bright);
}
.nfa-m-tab__badge {
  position: absolute;
  top: -4px;
  right: -7px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 8px;
  background: var(--nfa-m-amber);
  color: var(--nfa-m-bg-bar);
  font-family: var(--nfa-m-mono);
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.nfa-m-tab__iconwrap {
  position: relative;
}
.nfa-m-tab--panic {
  width: 84px;
  flex: none;
  padding: 0;
  gap: 4px;
  color: var(--nfa-m-red-soft);
}
.nfa-m-tab__fab {
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background: var(--nfa-m-red);
  border: 4px solid var(--nfa-m-bg-bar);
  margin-top: -26px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 8px 22px rgba(229, 72, 77, 0.34);
}
.nfa-m-tab--panic.nfa-m-tab--on {
  color: #fff;
}
.nfa-m-tab--panic.nfa-m-tab--on .nfa-m-tab__fab {
  box-shadow: 0 8px 22px rgba(229, 72, 77, 0.34), 0 0 0 3px rgba(229, 72, 77, 0.34);
}
.nfa-m-tab__fab ion-icon {
  font-size: 26px;
}
.nfa-m-header ion-toolbar {
  --background: var(--nfa-m-bg-bar);
  --color: var(--nfa-m-text);
  --border-color: var(--nfa-m-border-soft);
  --border-width: 0 0 1px 0;
  --border-style: solid;
  --min-height: 56px;
}
.nfa-m-header ion-icon {
  color: var(--nfa-m-text-2);
}
.nfa-m-header--overlay ion-toolbar {
  --background: transparent;
  --border-width: 0;
}
.nfa-m-menu ion-content {
  --background: var(--nfa-m-bg);
  --color: var(--nfa-m-text);
}
.nfa-m-menu-list {
  padding: 12px 20px calc(24px + env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.nfa-m-menu-group {
  font-family: var(--nfa-m-mono);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--nfa-m-text-muted);
  padding: 10px 4px 0;
}
.nfa-m-menu-item {
  display: flex;
  align-items: center;
  gap: 13px;
  width: 100%;
  padding: 15px 16px;
  border-radius: var(--nfa-m-radius-lg);
  border: 1px solid var(--nfa-m-border);
  background: var(--nfa-m-surface);
  color: var(--nfa-m-text);
  font-family: inherit;
  font-size: 14px;
  text-align: left;
}
.nfa-m-menu-item ion-icon {
  font-size: 19px;
  color: var(--nfa-m-text-muted);
}
.nfa-m-menu-item--danger {
  color: var(--nfa-m-red-soft);
}
.nfa-m-menu-item--danger ion-icon {
  color: var(--nfa-m-red-soft);
}
body:not(.nfa-desktop) .nfa-m-modal {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --border-radius: 22px;
  --backdrop-opacity: .62;
  --box-shadow: 0 -14px 48px rgba(0, 0, 0, .55);
  --width: 100%;
  --max-width: 560px;
}
body:not(.nfa-desktop) .nfa-m-modal ion-content {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --padding-top: 0;
  --padding-bottom: 0;
  color-scheme: dark;
}
body:not(.nfa-desktop) .nfa-m-modal::part(handle) {
  background: var(--nfa-m-border-focus);
  width: 38px;
}
body:not(.nfa-desktop) .nfa-m-modal--auto {
  --height: auto;
  --border-radius: var(--nfa-m-radius-lg);
  --max-width: 340px;
}
body:not(.nfa-desktop) .nfa-m-modal--auto::part(content),
body:not(.nfa-desktop) .nfa-m-modal--auto .ion-page {
  position: relative;
  display: block;
  contain: content;
}
body:not(.nfa-desktop) .nfa-m-modal--full {
  --border-radius: 0;
  --height: 100%;
  --width: 100%;
  --max-width: 100%;
}
body:not(.nfa-desktop) .nfa-m-modal--full ion-content {
  --background: var(--nfa-m-bg);
}
.nfa-m-sheet {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 14px 20px calc(20px + env(safe-area-inset-bottom));
  font-family: var(--nfa-m-font);
  color: var(--nfa-m-text);
}
.nfa-m-sheet__hd {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.nfa-m-sheet__hd > .nfa-m-topbar__main {
  flex: 1;
  min-width: 0;
}
body:not(.nfa-desktop) ion-alert {
  --backdrop-opacity: .62;
  font-family: var(--nfa-m-font);
}
body:not(.nfa-desktop) ion-alert .alert-wrapper,
body:not(.nfa-desktop) ion-alert.alert-white-background .alert-wrapper {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  color: var(--nfa-m-text) !important;
  --border-radius: 18px;
  border-radius: 18px;
  border: 1px solid var(--nfa-m-border);
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.6);
  max-width: 340px;
}
body:not(.nfa-desktop) ion-alert .alert-head h2,
body:not(.nfa-desktop) ion-alert.alert-white-background .alert-wrapper .alert-head h2 {
  color: var(--nfa-m-text);
  font-family: var(--nfa-m-font);
  font-size: 17px;
  font-weight: 600;
}
body:not(.nfa-desktop) ion-alert .alert-message {
  color: var(--nfa-m-text-2);
  font-size: 14px;
  line-height: 1.5;
}
body:not(.nfa-desktop) ion-alert .alert-input {
  background: var(--nfa-m-surface-sunk);
  border: 1px solid var(--nfa-m-border-strong);
  border-radius: var(--nfa-m-radius);
  color: var(--nfa-m-text);
  padding: 10px 12px;
}
body:not(.nfa-desktop) ion-alert button.alert-button.alert-button {
  border-radius: var(--nfa-m-radius);
  min-height: 44px;
  font-family: var(--nfa-m-font);
  font-size: 15px;
  text-transform: none;
  width: auto;
  min-width: 96px;
  margin: 0 0 0 8px;
  padding: 0 18px;
}
body:not(.nfa-desktop) ion-alert .alert-button-group {
  justify-content: flex-end;
  padding: 4px 14px 14px;
}
body:not(.nfa-desktop) ion-alert button.alert-button.alert-button-role-cancel {
  background-color: transparent;
  border: 1px solid var(--nfa-m-border-strong);
  color: var(--nfa-m-text-2);
}
body:not(.nfa-desktop) ion-action-sheet {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --button-background: var(--nfa-m-surface);
  --button-background-selected: var(--nfa-m-surface-sunk);
  --button-color: var(--nfa-m-text);
  --backdrop-opacity: .62;
  font-family: var(--nfa-m-font);
}
body:not(.nfa-desktop) ion-loading {
  --backdrop-opacity: .5;
}
body:not(.nfa-desktop) ion-toast {
  --background: var(--nfa-m-surface);
  --color: var(--nfa-m-text);
  --border-color: var(--nfa-m-border);
  --border-width: 1px;
  --border-style: solid;
  --border-radius: var(--nfa-m-radius);
  font-family: var(--nfa-m-font);
}
body:not(.nfa-desktop) {
  -webkit-tap-highlight-color: transparent;
}
.nfa-m-row--tap,
.nfa-m-btn,
.nfa-m-filter,
.nfa-m-menu-item,
.nfa-m-tab,
.nfa-m-map__pill,
.nfa-m-segment__opt,
.nfa-m-iconbtn,
.nfa-m-thumb--add,
.nfa-m-datebtn::part(native) {
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease,
    transform 0.12s ease,
    opacity 0.15s ease;
  -webkit-tap-highlight-color: transparent;
}
.nfa-m-row--tap:active {
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-btn:active:not(:disabled) {
  transform: scale(0.975);
  opacity: 0.9;
}
.nfa-m-filter:active,
.nfa-m-segment__opt:active,
.nfa-m-map__pill:active,
.nfa-m-iconbtn:active,
.nfa-m-thumb--add:active {
  background: var(--nfa-m-surface-sunk);
}
.nfa-m-menu-item:active {
  background: var(--nfa-m-surface-sunk);
  transform: scale(0.985);
}
.nfa-m-tab__iconwrap,
.nfa-m-tab > ion-icon {
  border-radius: 10px;
  transition: background-color 0.18s ease, transform 0.18s ease;
}
.nfa-m-tab--on > ion-icon,
.nfa-m-tab--on .nfa-m-tab__iconwrap {
  transform: translateY(-1px);
}
.nfa-m-tab:active:not(.nfa-m-tab--panic) {
  color: var(--nfa-m-text-2);
}
.nfa-m-tab:active > ion-icon,
.nfa-m-tab:active .nfa-m-tab__iconwrap {
  transform: scale(0.9);
}
.nfa-m-tab--panic:active .nfa-m-tab__fab {
  transform: scale(0.94);
}
.nfa-m-tab__fab {
  transition: transform 0.12s ease, box-shadow 0.18s ease;
}
@keyframes nfa-m-enter {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.nfa-m-wrap,
.nfa-m-list,
.nfa-m-sheet {
  animation: nfa-m-enter 0.22s ease-out both;
}
@media (prefers-reduced-motion: reduce) {
  body:not(.nfa-desktop) *,
  body:not(.nfa-desktop) *::before,
  body:not(.nfa-desktop) *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
body:not(.nfa-desktop) button:focus-visible,
body:not(.nfa-desktop) a:focus-visible {
  outline: 2px solid var(--nfa-m-green-bright);
  outline-offset: 2px;
}

/* angular:styles/global:styles */
