@charset "UTF-8";

/* node_modules/@ionic/angular/css/core.css */
:root {
  --ion-color-primary: #0054e9;
  --ion-color-primary-rgb:
    0,
    84,
    233;
  --ion-color-primary-contrast: #fff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: #004acd;
  --ion-color-primary-tint: #1a65eb;
  --ion-color-secondary: #0163aa;
  --ion-color-secondary-rgb:
    1,
    99,
    170;
  --ion-color-secondary-contrast: #fff;
  --ion-color-secondary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-secondary-shade: #015796;
  --ion-color-secondary-tint: #1a73b3;
  --ion-color-tertiary: #6030ff;
  --ion-color-tertiary-rgb:
    96,
    48,
    255;
  --ion-color-tertiary-contrast: #fff;
  --ion-color-tertiary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-tertiary-shade: #542ae0;
  --ion-color-tertiary-tint: #7045ff;
  --ion-color-success: #2dd55b;
  --ion-color-success-rgb:
    45,
    213,
    91;
  --ion-color-success-contrast: #000;
  --ion-color-success-contrast-rgb:
    0,
    0,
    0;
  --ion-color-success-shade: #28bb50;
  --ion-color-success-tint: #42d96b;
  --ion-color-warning: #ffc409;
  --ion-color-warning-rgb:
    255,
    196,
    9;
  --ion-color-warning-contrast: #000;
  --ion-color-warning-contrast-rgb:
    0,
    0,
    0;
  --ion-color-warning-shade: #e0ac08;
  --ion-color-warning-tint: #ffca22;
  --ion-color-danger: #c5000f;
  --ion-color-danger-rgb:
    197,
    0,
    15;
  --ion-color-danger-contrast: #fff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: #ad000d;
  --ion-color-danger-tint: #cb1a27;
  --ion-color-light: #f4f5f8;
  --ion-color-light-rgb:
    244,
    245,
    248;
  --ion-color-light-contrast: #000;
  --ion-color-light-contrast-rgb:
    0,
    0,
    0;
  --ion-color-light-shade: #d7d8da;
  --ion-color-light-tint: #f5f6f9;
  --ion-color-medium: #636469;
  --ion-color-medium-rgb:
    99,
    100,
    105;
  --ion-color-medium-contrast: #fff;
  --ion-color-medium-contrast-rgb:
    255,
    255,
    255;
  --ion-color-medium-shade: #57585c;
  --ion-color-medium-tint: #737478;
  --ion-color-dark: #222428;
  --ion-color-dark-rgb:
    34,
    36,
    40;
  --ion-color-dark-contrast: #fff;
  --ion-color-dark-contrast-rgb:
    255,
    255,
    255;
  --ion-color-dark-shade: #1e2023;
  --ion-color-dark-tint: #383a3e;
}
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-dynamic-font: -apple-system-body;
  --ion-font-family: var(--ion-default-font);
}
body {
  background: var(--ion-background-color);
  color: var(--ion-text-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,
html.ios ion-footer.modal-footer-moving 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,
html.ios .modal-footer-moving 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, #0054e9) !important;
  --ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !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, #004acd) !important;
  --ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important;
}
.ion-color-secondary {
  --ion-color-base: var(--ion-color-secondary, #0163aa) !important;
  --ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !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, #015796) !important;
  --ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important;
}
.ion-color-tertiary {
  --ion-color-base: var(--ion-color-tertiary, #6030ff) !important;
  --ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 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, #542ae0) !important;
  --ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important;
}
.ion-color-success {
  --ion-color-base: var(--ion-color-success, #2dd55b) !important;
  --ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;
  --ion-color-contrast: var(--ion-color-success-contrast, #000) !important;
  --ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;
  --ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;
  --ion-color-tint: var(--ion-color-success-tint, #42d96b) !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, #c5000f) !important;
  --ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !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, #ad000d) !important;
  --ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !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, #636469) !important;
  --ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !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, #57585c) !important;
  --ion-color-tint: var(--ion-color-medium-tint, #737478) !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: 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;
  overflow-y: hidden;
}
.menu-content-open ion-content {
  --overflow: hidden;
}
.menu-content-open .ion-content-scroll-host {
  overflow: hidden;
}
.ios .menu-content-reveal {
  box-shadow: -8px 0 42px rgba(0, 0, 0, .08);
}
[dir=rtl].ios .menu-content-reveal {
  box-shadow: 8px 0 42px rgba(0, 0, 0, .08);
}
.md .menu-content-reveal {
  box-shadow: 4px 0px 16px rgba(0, 0, 0, .18);
}
.md .menu-content-push {
  box-shadow: 4px 0px 16px rgba(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;
}
[ion-last-focus],
header[tabindex="-1"]:focus,
[role=banner][tabindex="-1"]:focus,
main[tabindex="-1"]:focus,
[role=main][tabindex="-1"]:focus,
h1[tabindex="-1"]:focus,
[role=heading][aria-level="1"][tabindex="-1"]:focus {
  outline: none;
}
.popover-viewport:has(> ion-content) {
  overflow: hidden;
}
@supports not selector(:has(> ion-content)) {
  .popover-viewport {
    overflow: hidden;
  }
}

/* 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.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, #0054e9);
}
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;
  }
}
.ion-display-none {
  display: none !important;
}
@media (min-width: 576px) {
  .ion-display-sm-none {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-none {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-none {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-none {
    display: none !important;
  }
}
.ion-display-inline {
  display: inline !important;
}
@media (min-width: 576px) {
  .ion-display-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-inline {
    display: inline !important;
  }
}
.ion-display-inline-block {
  display: inline-block !important;
}
@media (min-width: 576px) {
  .ion-display-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-inline-block {
    display: inline-block !important;
  }
}
.ion-display-block {
  display: block !important;
}
@media (min-width: 576px) {
  .ion-display-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-block {
    display: block !important;
  }
}
.ion-display-flex {
  display: flex !important;
}
@media (min-width: 576px) {
  .ion-display-sm-flex {
    display: flex !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-flex {
    display: flex !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-flex {
    display: flex !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-flex {
    display: flex !important;
  }
}
.ion-display-inline-flex {
  display: inline-flex !important;
}
@media (min-width: 576px) {
  .ion-display-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-inline-flex {
    display: inline-flex !important;
  }
}
.ion-display-grid {
  display: grid !important;
}
@media (min-width: 576px) {
  .ion-display-sm-grid {
    display: grid !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-grid {
    display: grid !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-grid {
    display: grid !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-grid {
    display: grid !important;
  }
}
.ion-display-inline-grid {
  display: inline-grid !important;
}
@media (min-width: 576px) {
  .ion-display-sm-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-inline-grid {
    display: inline-grid !important;
  }
}
.ion-display-table {
  display: table !important;
}
@media (min-width: 576px) {
  .ion-display-sm-table {
    display: table !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-table {
    display: table !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-table {
    display: table !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-table {
    display: table !important;
  }
}
.ion-display-table-cell {
  display: table-cell !important;
}
@media (min-width: 576px) {
  .ion-display-sm-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-table-cell {
    display: table-cell !important;
  }
}
.ion-display-table-row {
  display: table-row !important;
}
@media (min-width: 576px) {
  .ion-display-sm-table-row {
    display: table-row !important;
  }
}
@media (min-width: 768px) {
  .ion-display-md-table-row {
    display: table-row !important;
  }
}
@media (min-width: 992px) {
  .ion-display-lg-table-row {
    display: table-row !important;
  }
}
@media (min-width: 1200px) {
  .ion-display-xl-table-row {
    display: table-row !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-content-start {
  align-content: flex-start !important;
}
.ion-align-content-end {
  align-content: flex-end !important;
}
.ion-align-content-center {
  align-content: center !important;
}
.ion-align-content-between {
  align-content: space-between !important;
}
.ion-align-content-around {
  align-content: space-around !important;
}
.ion-align-content-stretch {
  align-content: stretch !important;
}
@media (min-width: 576px) {
  .ion-align-content-sm-start {
    align-content: flex-start !important;
  }
  .ion-align-content-sm-end {
    align-content: flex-end !important;
  }
  .ion-align-content-sm-center {
    align-content: center !important;
  }
  .ion-align-content-sm-between {
    align-content: space-between !important;
  }
  .ion-align-content-sm-around {
    align-content: space-around !important;
  }
  .ion-align-content-sm-stretch {
    align-content: stretch !important;
  }
}
@media (min-width: 768px) {
  .ion-align-content-md-start {
    align-content: flex-start !important;
  }
  .ion-align-content-md-end {
    align-content: flex-end !important;
  }
  .ion-align-content-md-center {
    align-content: center !important;
  }
  .ion-align-content-md-between {
    align-content: space-between !important;
  }
  .ion-align-content-md-around {
    align-content: space-around !important;
  }
  .ion-align-content-md-stretch {
    align-content: stretch !important;
  }
}
@media (min-width: 992px) {
  .ion-align-content-lg-start {
    align-content: flex-start !important;
  }
  .ion-align-content-lg-end {
    align-content: flex-end !important;
  }
  .ion-align-content-lg-center {
    align-content: center !important;
  }
  .ion-align-content-lg-between {
    align-content: space-between !important;
  }
  .ion-align-content-lg-around {
    align-content: space-around !important;
  }
  .ion-align-content-lg-stretch {
    align-content: stretch !important;
  }
}
@media (min-width: 1200px) {
  .ion-align-content-xl-start {
    align-content: flex-start !important;
  }
  .ion-align-content-xl-end {
    align-content: flex-end !important;
  }
  .ion-align-content-xl-center {
    align-content: center !important;
  }
  .ion-align-content-xl-between {
    align-content: space-between !important;
  }
  .ion-align-content-xl-around {
    align-content: space-around !important;
  }
  .ion-align-content-xl-stretch {
    align-content: stretch !important;
  }
}
.ion-align-items-start {
  align-items: start !important;
}
.ion-align-items-end {
  align-items: end !important;
}
.ion-align-items-center {
  align-items: center !important;
}
.ion-align-items-stretch {
  align-items: stretch !important;
}
.ion-align-items-baseline {
  align-items: baseline !important;
}
@media (min-width: 576px) {
  .ion-align-items-sm-start {
    align-items: start !important;
  }
  .ion-align-items-sm-end {
    align-items: end !important;
  }
  .ion-align-items-sm-center {
    align-items: center !important;
  }
  .ion-align-items-sm-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-sm-baseline {
    align-items: baseline !important;
  }
}
@media (min-width: 768px) {
  .ion-align-items-md-start {
    align-items: start !important;
  }
  .ion-align-items-md-end {
    align-items: end !important;
  }
  .ion-align-items-md-center {
    align-items: center !important;
  }
  .ion-align-items-md-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-md-baseline {
    align-items: baseline !important;
  }
}
@media (min-width: 992px) {
  .ion-align-items-lg-start {
    align-items: start !important;
  }
  .ion-align-items-lg-end {
    align-items: end !important;
  }
  .ion-align-items-lg-center {
    align-items: center !important;
  }
  .ion-align-items-lg-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-lg-baseline {
    align-items: baseline !important;
  }
}
@media (min-width: 1200px) {
  .ion-align-items-xl-start {
    align-items: start !important;
  }
  .ion-align-items-xl-end {
    align-items: end !important;
  }
  .ion-align-items-xl-center {
    align-items: center !important;
  }
  .ion-align-items-xl-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-xl-baseline {
    align-items: baseline !important;
  }
}
.ion-align-self-start {
  align-self: start !important;
}
.ion-align-self-end {
  align-self: 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;
}
@media (min-width: 576px) {
  .ion-align-self-sm-start {
    align-self: start !important;
  }
  .ion-align-self-sm-end {
    align-self: end !important;
  }
  .ion-align-self-sm-center {
    align-self: center !important;
  }
  .ion-align-self-sm-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-sm-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-sm-auto {
    align-self: auto !important;
  }
}
@media (min-width: 768px) {
  .ion-align-self-md-start {
    align-self: start !important;
  }
  .ion-align-self-md-end {
    align-self: end !important;
  }
  .ion-align-self-md-center {
    align-self: center !important;
  }
  .ion-align-self-md-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-md-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-md-auto {
    align-self: auto !important;
  }
}
@media (min-width: 992px) {
  .ion-align-self-lg-start {
    align-self: start !important;
  }
  .ion-align-self-lg-end {
    align-self: end !important;
  }
  .ion-align-self-lg-center {
    align-self: center !important;
  }
  .ion-align-self-lg-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-lg-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-lg-auto {
    align-self: auto !important;
  }
}
@media (min-width: 1200px) {
  .ion-align-self-xl-start {
    align-self: start !important;
  }
  .ion-align-self-xl-end {
    align-self: end !important;
  }
  .ion-align-self-xl-center {
    align-self: center !important;
  }
  .ion-align-self-xl-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-xl-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-xl-auto {
    align-self: auto !important;
  }
}
.ion-justify-content-start {
  justify-content: flex-start !important;
}
.ion-justify-content-end {
  justify-content: flex-end !important;
}
.ion-justify-content-center {
  justify-content: center !important;
}
.ion-justify-content-between {
  justify-content: space-between !important;
}
.ion-justify-content-around {
  justify-content: space-around !important;
}
.ion-justify-content-evenly {
  justify-content: space-evenly !important;
}
@media (min-width: 576px) {
  .ion-justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-sm-center {
    justify-content: center !important;
  }
  .ion-justify-content-sm-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-sm-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width: 768px) {
  .ion-justify-content-md-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-md-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-md-center {
    justify-content: center !important;
  }
  .ion-justify-content-md-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-md-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width: 992px) {
  .ion-justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-lg-center {
    justify-content: center !important;
  }
  .ion-justify-content-lg-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-lg-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width: 1200px) {
  .ion-justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-xl-center {
    justify-content: center !important;
  }
  .ion-justify-content-xl-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-xl-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
}
.ion-flex-row {
  flex-direction: row !important;
}
.ion-flex-row-reverse {
  flex-direction: row-reverse !important;
}
.ion-flex-column {
  flex-direction: column !important;
}
.ion-flex-column-reverse {
  flex-direction: column-reverse !important;
}
@media (min-width: 576px) {
  .ion-flex-sm-row {
    flex-direction: row !important;
  }
  .ion-flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-sm-column {
    flex-direction: column !important;
  }
  .ion-flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 768px) {
  .ion-flex-md-row {
    flex-direction: row !important;
  }
  .ion-flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-md-column {
    flex-direction: column !important;
  }
  .ion-flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 992px) {
  .ion-flex-lg-row {
    flex-direction: row !important;
  }
  .ion-flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-lg-column {
    flex-direction: column !important;
  }
  .ion-flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 1200px) {
  .ion-flex-xl-row {
    flex-direction: row !important;
  }
  .ion-flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-xl-column {
    flex-direction: column !important;
  }
  .ion-flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
}
.ion-wrap {
  flex-wrap: wrap !important;
}
.ion-nowrap {
  flex-wrap: nowrap !important;
}
.ion-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.ion-flex-wrap {
  flex-wrap: wrap !important;
}
.ion-flex-nowrap {
  flex-wrap: nowrap !important;
}
.ion-flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
@media (min-width: 576px) {
  .ion-flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 768px) {
  .ion-flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 992px) {
  .ion-flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width: 1200px) {
  .ion-flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
.ion-flex-1 {
  flex: 1 !important;
}
.ion-flex-auto {
  flex: auto !important;
}
.ion-flex-initial {
  flex: initial !important;
}
.ion-flex-none {
  flex: none !important;
}
@media (min-width: 576px) {
  .ion-flex-sm-1 {
    flex: 1 !important;
  }
  .ion-flex-sm-auto {
    flex: auto !important;
  }
  .ion-flex-sm-initial {
    flex: initial !important;
  }
  .ion-flex-sm-none {
    flex: none !important;
  }
}
@media (min-width: 768px) {
  .ion-flex-md-1 {
    flex: 1 !important;
  }
  .ion-flex-md-auto {
    flex: auto !important;
  }
  .ion-flex-md-initial {
    flex: initial !important;
  }
  .ion-flex-md-none {
    flex: none !important;
  }
}
@media (min-width: 992px) {
  .ion-flex-lg-1 {
    flex: 1 !important;
  }
  .ion-flex-lg-auto {
    flex: auto !important;
  }
  .ion-flex-lg-initial {
    flex: initial !important;
  }
  .ion-flex-lg-none {
    flex: none !important;
  }
}
@media (min-width: 1200px) {
  .ion-flex-xl-1 {
    flex: 1 !important;
  }
  .ion-flex-xl-auto {
    flex: auto !important;
  }
  .ion-flex-xl-initial {
    flex: initial !important;
  }
  .ion-flex-xl-none {
    flex: none !important;
  }
}
.ion-flex-grow-0 {
  flex-grow: 0 !important;
}
.ion-flex-grow-1 {
  flex-grow: 1 !important;
}
.ion-flex-shrink-0 {
  flex-shrink: 0 !important;
}
.ion-flex-shrink-1 {
  flex-shrink: 1 !important;
}
@media (min-width: 576px) {
  .ion-flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
}
@media (min-width: 768px) {
  .ion-flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
}
@media (min-width: 992px) {
  .ion-flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
}
@media (min-width: 1200px) {
  .ion-flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
}
.ion-order-first {
  order: -1 !important;
}
.ion-order-0 {
  order: 0 !important;
}
.ion-order-1 {
  order: 1 !important;
}
.ion-order-2 {
  order: 2 !important;
}
.ion-order-3 {
  order: 3 !important;
}
.ion-order-4 {
  order: 4 !important;
}
.ion-order-5 {
  order: 5 !important;
}
.ion-order-6 {
  order: 6 !important;
}
.ion-order-7 {
  order: 7 !important;
}
.ion-order-8 {
  order: 8 !important;
}
.ion-order-9 {
  order: 9 !important;
}
.ion-order-10 {
  order: 10 !important;
}
.ion-order-11 {
  order: 11 !important;
}
.ion-order-12 {
  order: 12 !important;
}
.ion-order-last {
  order: 13 !important;
}
@media (min-width: 576px) {
  .ion-order-sm-first {
    order: -1 !important;
  }
  .ion-order-sm-0 {
    order: 0 !important;
  }
  .ion-order-sm-1 {
    order: 1 !important;
  }
  .ion-order-sm-2 {
    order: 2 !important;
  }
  .ion-order-sm-3 {
    order: 3 !important;
  }
  .ion-order-sm-4 {
    order: 4 !important;
  }
  .ion-order-sm-5 {
    order: 5 !important;
  }
  .ion-order-sm-6 {
    order: 6 !important;
  }
  .ion-order-sm-7 {
    order: 7 !important;
  }
  .ion-order-sm-8 {
    order: 8 !important;
  }
  .ion-order-sm-9 {
    order: 9 !important;
  }
  .ion-order-sm-10 {
    order: 10 !important;
  }
  .ion-order-sm-11 {
    order: 11 !important;
  }
  .ion-order-sm-12 {
    order: 12 !important;
  }
  .ion-order-sm-last {
    order: 13 !important;
  }
}
@media (min-width: 768px) {
  .ion-order-md-first {
    order: -1 !important;
  }
  .ion-order-md-0 {
    order: 0 !important;
  }
  .ion-order-md-1 {
    order: 1 !important;
  }
  .ion-order-md-2 {
    order: 2 !important;
  }
  .ion-order-md-3 {
    order: 3 !important;
  }
  .ion-order-md-4 {
    order: 4 !important;
  }
  .ion-order-md-5 {
    order: 5 !important;
  }
  .ion-order-md-6 {
    order: 6 !important;
  }
  .ion-order-md-7 {
    order: 7 !important;
  }
  .ion-order-md-8 {
    order: 8 !important;
  }
  .ion-order-md-9 {
    order: 9 !important;
  }
  .ion-order-md-10 {
    order: 10 !important;
  }
  .ion-order-md-11 {
    order: 11 !important;
  }
  .ion-order-md-12 {
    order: 12 !important;
  }
  .ion-order-md-last {
    order: 13 !important;
  }
}
@media (min-width: 992px) {
  .ion-order-lg-first {
    order: -1 !important;
  }
  .ion-order-lg-0 {
    order: 0 !important;
  }
  .ion-order-lg-1 {
    order: 1 !important;
  }
  .ion-order-lg-2 {
    order: 2 !important;
  }
  .ion-order-lg-3 {
    order: 3 !important;
  }
  .ion-order-lg-4 {
    order: 4 !important;
  }
  .ion-order-lg-5 {
    order: 5 !important;
  }
  .ion-order-lg-6 {
    order: 6 !important;
  }
  .ion-order-lg-7 {
    order: 7 !important;
  }
  .ion-order-lg-8 {
    order: 8 !important;
  }
  .ion-order-lg-9 {
    order: 9 !important;
  }
  .ion-order-lg-10 {
    order: 10 !important;
  }
  .ion-order-lg-11 {
    order: 11 !important;
  }
  .ion-order-lg-12 {
    order: 12 !important;
  }
  .ion-order-lg-last {
    order: 13 !important;
  }
}
@media (min-width: 1200px) {
  .ion-order-xl-first {
    order: -1 !important;
  }
  .ion-order-xl-0 {
    order: 0 !important;
  }
  .ion-order-xl-1 {
    order: 1 !important;
  }
  .ion-order-xl-2 {
    order: 2 !important;
  }
  .ion-order-xl-3 {
    order: 3 !important;
  }
  .ion-order-xl-4 {
    order: 4 !important;
  }
  .ion-order-xl-5 {
    order: 5 !important;
  }
  .ion-order-xl-6 {
    order: 6 !important;
  }
  .ion-order-xl-7 {
    order: 7 !important;
  }
  .ion-order-xl-8 {
    order: 8 !important;
  }
  .ion-order-xl-9 {
    order: 9 !important;
  }
  .ion-order-xl-10 {
    order: 10 !important;
  }
  .ion-order-xl-11 {
    order: 11 !important;
  }
  .ion-order-xl-12 {
    order: 12 !important;
  }
  .ion-order-xl-last {
    order: 13 !important;
  }
}

/* node_modules/@ionic/angular/css/palettes/dark.system.css */
@media (prefers-color-scheme: dark) {
  :root {
    --ion-color-primary: #4d8dff;
    --ion-color-primary-rgb:
      77,
      141,
      255;
    --ion-color-primary-contrast: #000;
    --ion-color-primary-contrast-rgb:
      0,
      0,
      0;
    --ion-color-primary-shade: #447ce0;
    --ion-color-primary-tint: #5f98ff;
    --ion-color-secondary: #46b1ff;
    --ion-color-secondary-rgb:
      70,
      177,
      255;
    --ion-color-secondary-contrast: #000;
    --ion-color-secondary-contrast-rgb:
      0,
      0,
      0;
    --ion-color-secondary-shade: #3e9ce0;
    --ion-color-secondary-tint: #59b9ff;
    --ion-color-tertiary: #8482fb;
    --ion-color-tertiary-rgb:
      132,
      130,
      251;
    --ion-color-tertiary-contrast: #000;
    --ion-color-tertiary-contrast-rgb:
      0,
      0,
      0;
    --ion-color-tertiary-shade: #7472dd;
    --ion-color-tertiary-tint: #908ffb;
    --ion-color-success: #2dd55b;
    --ion-color-success-rgb:
      45,
      213,
      91;
    --ion-color-success-contrast: #000;
    --ion-color-success-contrast-rgb:
      0,
      0,
      0;
    --ion-color-success-shade: #28bb50;
    --ion-color-success-tint: #42d96b;
    --ion-color-warning: #ffce31;
    --ion-color-warning-rgb:
      255,
      206,
      49;
    --ion-color-warning-contrast: #000;
    --ion-color-warning-contrast-rgb:
      0,
      0,
      0;
    --ion-color-warning-shade: #e0b52b;
    --ion-color-warning-tint: #ffd346;
    --ion-color-danger: #f24c58;
    --ion-color-danger-rgb:
      242,
      76,
      88;
    --ion-color-danger-contrast: #000;
    --ion-color-danger-contrast-rgb:
      0,
      0,
      0;
    --ion-color-danger-shade: #d5434d;
    --ion-color-danger-tint: #f35e69;
    --ion-color-light: #222428;
    --ion-color-light-rgb:
      34,
      36,
      40;
    --ion-color-light-contrast: #fff;
    --ion-color-light-contrast-rgb:
      255,
      255,
      255;
    --ion-color-light-shade: #1e2023;
    --ion-color-light-tint: #383a3e;
    --ion-color-medium: #989aa2;
    --ion-color-medium-rgb:
      152,
      154,
      162;
    --ion-color-medium-contrast: #000;
    --ion-color-medium-contrast-rgb:
      0,
      0,
      0;
    --ion-color-medium-shade: #86888f;
    --ion-color-medium-tint: #a2a4ab;
    --ion-color-dark: #f4f5f8;
    --ion-color-dark-rgb:
      244,
      245,
      248;
    --ion-color-dark-contrast: #000;
    --ion-color-dark-contrast-rgb:
      0,
      0,
      0;
    --ion-color-dark-shade: #d7d8da;
    --ion-color-dark-tint: #f5f6f9;
  }
  :root.ios {
    --ion-background-color: #000000;
    --ion-background-color-rgb:
      0,
      0,
      0;
    --ion-text-color: #ffffff;
    --ion-text-color-rgb:
      255,
      255,
      255;
    --ion-background-color-step-50: #0d0d0d;
    --ion-background-color-step-100: #1a1a1a;
    --ion-background-color-step-150: #262626;
    --ion-background-color-step-200: #333333;
    --ion-background-color-step-250: #404040;
    --ion-background-color-step-300: #4d4d4d;
    --ion-background-color-step-350: #595959;
    --ion-background-color-step-400: #666666;
    --ion-background-color-step-450: #737373;
    --ion-background-color-step-500: #808080;
    --ion-background-color-step-550: #8c8c8c;
    --ion-background-color-step-600: #999999;
    --ion-background-color-step-650: #a6a6a6;
    --ion-background-color-step-700: #b3b3b3;
    --ion-background-color-step-750: #bfbfbf;
    --ion-background-color-step-800: #cccccc;
    --ion-background-color-step-850: #d9d9d9;
    --ion-background-color-step-900: #e6e6e6;
    --ion-background-color-step-950: #f2f2f2;
    --ion-text-color-step-50: #f2f2f2;
    --ion-text-color-step-100: #e6e6e6;
    --ion-text-color-step-150: #d9d9d9;
    --ion-text-color-step-200: #cccccc;
    --ion-text-color-step-250: #bfbfbf;
    --ion-text-color-step-300: #b3b3b3;
    --ion-text-color-step-350: #a6a6a6;
    --ion-text-color-step-400: #999999;
    --ion-text-color-step-450: #8c8c8c;
    --ion-text-color-step-500: #808080;
    --ion-text-color-step-550: #737373;
    --ion-text-color-step-600: #666666;
    --ion-text-color-step-650: #595959;
    --ion-text-color-step-700: #4d4d4d;
    --ion-text-color-step-750: #404040;
    --ion-text-color-step-800: #333333;
    --ion-text-color-step-850: #262626;
    --ion-text-color-step-900: #1a1a1a;
    --ion-text-color-step-950: #0d0d0d;
    --ion-item-background: #000000;
    --ion-card-background: #1c1c1d;
  }
  :root.ios ion-modal {
    --ion-background-color: var(--ion-color-step-100, var(--ion-background-color-step-100));
    --ion-toolbar-background: var(--ion-color-step-150, var(--ion-background-color-step-150));
    --ion-toolbar-border-color: var(--ion-color-step-250, var(--ion-background-color-step-250));
  }
  :root.md {
    --ion-background-color: #121212;
    --ion-background-color-rgb:
      18,
      18,
      18;
    --ion-text-color: #ffffff;
    --ion-text-color-rgb:
      255,
      255,
      255;
    --ion-background-color-step-50: #1e1e1e;
    --ion-background-color-step-100: #2a2a2a;
    --ion-background-color-step-150: #363636;
    --ion-background-color-step-200: #414141;
    --ion-background-color-step-250: #4d4d4d;
    --ion-background-color-step-300: #595959;
    --ion-background-color-step-350: #656565;
    --ion-background-color-step-400: #717171;
    --ion-background-color-step-450: #7d7d7d;
    --ion-background-color-step-500: #898989;
    --ion-background-color-step-550: #949494;
    --ion-background-color-step-600: #a0a0a0;
    --ion-background-color-step-650: #acacac;
    --ion-background-color-step-700: #b8b8b8;
    --ion-background-color-step-750: #c4c4c4;
    --ion-background-color-step-800: #d0d0d0;
    --ion-background-color-step-850: #dbdbdb;
    --ion-background-color-step-900: #e7e7e7;
    --ion-background-color-step-950: #f3f3f3;
    --ion-text-color-step-50: #f3f3f3;
    --ion-text-color-step-100: #e7e7e7;
    --ion-text-color-step-150: #dbdbdb;
    --ion-text-color-step-200: #d0d0d0;
    --ion-text-color-step-250: #c4c4c4;
    --ion-text-color-step-300: #b8b8b8;
    --ion-text-color-step-350: #acacac;
    --ion-text-color-step-400: #a0a0a0;
    --ion-text-color-step-450: #949494;
    --ion-text-color-step-500: #898989;
    --ion-text-color-step-550: #7d7d7d;
    --ion-text-color-step-600: #717171;
    --ion-text-color-step-650: #656565;
    --ion-text-color-step-700: #595959;
    --ion-text-color-step-750: #4d4d4d;
    --ion-text-color-step-800: #414141;
    --ion-text-color-step-850: #363636;
    --ion-text-color-step-900: #2a2a2a;
    --ion-text-color-step-950: #1e1e1e;
    --ion-item-background: #1e1e1e;
    --ion-toolbar-background: #1f1f1f;
    --ion-tab-bar-background: #1f1f1f;
    --ion-card-background: #1e1e1e;
  }
}

/* src/global.scss */
:root {
  --scania-blue: #041e42;
  --scania-blue-light: #1a4480;
  --scania-blue-dark: #021429;
  --scania-blue-50: rgba(4, 30, 66, 0.05);
  --scania-blue-100: rgba(4, 30, 66, 0.1);
  --scania-blue-200: rgba(4, 30, 66 , 0.2);
  --scania-blue-300: rgba(4, 30, 66, 0.3);
  --scania-blue-500: rgba(4, 30, 66, 0.5);
  --scania-blue-700: rgba(4, 30, 66, 0.7);
  --scania-blue-900: rgba(4, 30, 66, 0.9);
  --scania-red: #dc291e;
  --scania-red-light: #ff4444;
  --scania-red-dark: #b91c12;
  --scania-yellow: #ffc72c;
  --scania-yellow-light: #ffdd66;
  --scania-yellow-dark: #e6b000;
  --scania-green: #00a651;
  --scania-green-light: #33cc77;
  --scania-green-dark: #008542;
  --scania-grey-50: #f8f9fa;
  --scania-grey-100: #f1f3f4;
  --scania-grey-200: #e8eaed;
  --scania-grey-300: #dadce0;
  --scania-grey-400: #bdc1c6;
  --scania-grey-500: #9aa0a6;
  --scania-grey-600: #80868b;
  --scania-grey-700: #5f6368;
  --scania-grey-800: #3c4043;
  --scania-grey-900: #202124;
  --color-primary: var(--scania-blue);
  --color-secondary: var(--scania-grey-600);
  --color-success: var(--scania-green);
  --color-warning: var(--scania-yellow);
  --color-danger: var(--scania-red);
  --color-info: var(--scania-blue-light);
  --surface-primary: #ffffff;
  --surface-secondary: var(--scania-grey-50);
  --surface-tertiary: var(--scania-grey-100);
  --surface-overlay: rgba(4, 30, 66, 0.8);
  --text-primary: var(--scania-grey-900);
  --text-secondary: var(--scania-grey-700);
  --text-tertiary: var(--scania-grey-500);
  --text-inverse: #ffffff;
  --text-disabled: var(--scania-grey-400);
  --border-primary: var(--scania-grey-300);
  --border-secondary: var(--scania-grey-200);
  --border-focus: var(--scania-blue);
  --border-error: var(--scania-red);
  --border-success: var(--scania-green);
  --tint-success-bg: #e8f6ee;
  --tint-success-border: #27ae60;
  --tint-success-text: #1d8a4b;
  --tint-danger-bg: #fdeceb;
  --tint-danger-border: #e74c3c;
  --tint-danger-text: #c0392b;
  --tint-warning-bg: #fdf3e7;
  --tint-warning-border: #e67e22;
  --tint-warning-text: #b9770e;
  --tint-warning-soft-bg: #fdf7f0;
  --btn-primary-bg: var(--ion-color-primary);
  --btn-primary-bg-hover: var(--scania-blue-light);
  --icon-accent: var(--ion-color-primary);
  --font-family-primary:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    "Roboto",
    "Oxygen",
    "Ubuntu",
    "Cantarell",
    sans-serif;
  --font-family-secondary:
    "SF Pro Display",
    "Helvetica Neue",
    Arial,
    sans-serif;
  --font-family-mono:
    "SF Mono",
    "Monaco",
    "Cascadia Code",
    "Roboto Mono",
    monospace;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.25rem;
  --font-size-5xl: 3rem;
  --font-size-6xl: 3.75rem;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --line-height-tight: 1.25;
  --line-height-snug: 1.375;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 2;
  --spacing-0: 0;
  --spacing-1: 0.25rem;
  --spacing-2: 0.5rem;
  --spacing-3: 0.75rem;
  --spacing-4: 1rem;
  --spacing-5: 1.25rem;
  --spacing-6: 1.5rem;
  --spacing-8: 2rem;
  --spacing-10: 2.5rem;
  --spacing-12: 3rem;
  --spacing-16: 4rem;
  --spacing-20: 5rem;
  --spacing-24: 6rem;
  --spacing-32: 8rem;
  --radius-none: 0;
  --radius-sm: 0.125rem;
  --radius-base: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-full: 9999px;
  --shadow-sm: 0 1px 2px rgba(4, 30, 66, 0.05);
  --shadow-base: 0 1px 3px rgba(4, 30, 66, 0.1), 0 1px 2px rgba(4, 30, 66, 0.06);
  --shadow-md: 0 4px 6px rgba(4, 30, 66, 0.07), 0 2px 4px rgba(4, 30, 66, 0.06);
  --shadow-lg: 0 10px 15px rgba(4, 30, 66, 0.1), 0 4px 6px rgba(4, 30, 66, 0.05);
  --shadow-xl: 0 20px 25px rgba(4, 30, 66, 0.1), 0 10px 10px rgba(4, 30, 66, 0.04);
  --shadow-2xl: 0 25px 50px rgba(4, 30, 66, 0.15);
  --shadow-inner: inset 0 2px 4px rgba(4, 30, 66, 0.06);
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
  --z-toast: 1080;
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;
}
.dark-theme {
  --surface-primary: #1e293b;
  --surface-secondary: #0f172a;
  --surface-tertiary: #334155;
  --surface-overlay: rgba(0, 0, 0, 0.8);
  --text-primary: #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-tertiary: #94a3b8;
  --text-inverse: var(--scania-grey-900);
  --text-disabled: #64748b;
  --border-primary: rgba(255, 255, 255, 0.12);
  --border-secondary: rgba(255, 255, 255, 0.08);
  --border-focus: #4a90e2;
  --border-error: #ff6b6b;
  --border-success: #51cf66;
  --tint-success-bg: rgba(39, 174, 96, 0.16);
  --tint-success-border: #2fbf71;
  --tint-success-text: #5fd68f;
  --tint-danger-bg: rgba(231, 76, 60, 0.16);
  --tint-danger-border: #e74c3c;
  --tint-danger-text: #ff8a80;
  --tint-warning-bg: rgba(230, 126, 34, 0.16);
  --tint-warning-border: #e67e22;
  --tint-warning-text: #f0a35e;
  --tint-warning-soft-bg: rgba(230, 126, 34, 0.10);
  --btn-primary-bg: #205caf;
  --btn-primary-bg-hover: #2f6fc9;
  --icon-accent: #60a5fa;
  --scania-blue: #041e42;
  --scania-blue-light: #1a4480;
  --scania-blue-dark: #021429;
  --scania-blue-50: rgba(4, 30, 66, 0.05);
  --scania-blue-100: rgba(4, 30, 66, 0.1);
  --scania-blue-200: rgba(4, 30, 66, 0.2);
  --scania-blue-300: rgba(4, 30, 66, 0.3);
  --scania-blue-500: rgba(4, 30, 66, 0.5);
  --scania-blue-700: rgba(4, 30, 66, 0.7);
  --scania-blue-900: rgba(4, 30, 66, 0.9);
  --color-primary: #134a96;
  --color-success: #51cf66;
  --color-warning: #ffd43b;
  --color-danger: #ff6b6b;
  --color-info: #74b3f7;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.12);
  --shadow-base: 0 1px 4px rgba(0, 0, 0, 0.3), 0 2px 8px rgba(0, 0, 0, 0.15);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.25), 0 2px 6px rgba(0, 0, 0, 0.15);
  --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.3), 0 4px 12px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.4), 0 10px 20px rgba(0, 0, 0, 0.2);
  --shadow-2xl: 0 25px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
  --ion-background-color: var(--surface-secondary);
  --ion-background-color-rgb:
    15,
    23,
    42;
  --ion-text-color: var(--text-primary);
  --ion-text-color-rgb:
    241,
    245,
    249;
  --ion-color-step-50: #1a1d21;
  --ion-color-step-100: #2f343a;
  --ion-color-step-150: #363c43;
  --ion-color-step-200: var(--scania-grey-800);
  --ion-color-step-250: #525964;
  --ion-color-step-300: var(--scania-grey-700);
  --ion-color-step-350: #72787e;
  --ion-color-step-400: var(--scania-grey-600);
  --ion-color-step-450: #8b9199;
  --ion-color-step-500: var(--scania-grey-500);
  --ion-color-step-550: #a8aeb6;
  --ion-color-step-600: var(--scania-grey-400);
  --ion-color-step-650: #d1d5db;
  --ion-color-step-700: var(--scania-grey-300);
  --ion-color-step-750: #e5e7ea;
  --ion-color-step-800: var(--scania-grey-200);
  --ion-color-step-850: #f0f2f5;
  --ion-color-step-900: var(--scania-grey-100);
  --ion-color-step-950: var(--scania-grey-50);
}
:root {
  --ion-color-primary: var(--scania-blue);
  --ion-color-primary-rgb:
    4,
    30,
    66;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: var(--scania-blue-dark);
  --ion-color-primary-tint: var(--scania-blue-light);
  --ion-color-secondary: var(--scania-grey-600);
  --ion-color-secondary-rgb:
    128,
    134,
    139;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-secondary-shade: var(--scania-grey-700);
  --ion-color-secondary-tint: var(--scania-grey-500);
  --ion-color-success: var(--scania-green);
  --ion-color-success-rgb:
    0,
    166,
    81;
  --ion-color-success-contrast: #ffffff;
  --ion-color-success-contrast-rgb:
    255,
    255,
    255;
  --ion-color-success-shade: var(--scania-green-dark);
  --ion-color-success-tint: var(--scania-green-light);
  --ion-color-warning: var(--scania-yellow);
  --ion-color-warning-rgb:
    255,
    199,
    44;
  --ion-color-warning-contrast: var(--scania-blue);
  --ion-color-warning-contrast-rgb:
    4,
    30,
    66;
  --ion-color-warning-shade: var(--scania-yellow-dark);
  --ion-color-warning-tint: var(--scania-yellow-light);
  --ion-color-danger: var(--scania-red);
  --ion-color-danger-rgb:
    220,
    41,
    30;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: var(--scania-red-dark);
  --ion-color-danger-tint: var(--scania-red-light);
  --ion-background-color: var(--surface-primary);
  --ion-background-color-rgb:
    255,
    255,
    255;
  --ion-text-color: var(--text-primary);
  --ion-text-color-rgb:
    32,
    33,
    36;
  --ion-color-step-50: var(--scania-grey-50);
  --ion-color-step-100: var(--scania-grey-100);
  --ion-color-step-150: #f0f2f5;
  --ion-color-step-200: var(--scania-grey-200);
  --ion-color-step-250: #e5e7ea;
  --ion-color-step-300: var(--scania-grey-300);
  --ion-color-step-350: #d1d5db;
  --ion-color-step-400: var(--scania-grey-400);
  --ion-color-step-450: #a8aeb6;
  --ion-color-step-500: var(--scania-grey-500);
  --ion-color-step-550: #8b9199;
  --ion-color-step-600: var(--scania-grey-600);
  --ion-color-step-650: #72787e;
  --ion-color-step-700: var(--scania-grey-700);
  --ion-color-step-750: #525964;
  --ion-color-step-800: var(--scania-grey-800);
  --ion-color-step-850: #2f343a;
  --ion-color-step-900: var(--scania-grey-900);
  --ion-color-step-950: #1a1d21;
  --ion-border-radius: var(--radius-lg);
  --ion-card-border-radius: var(--radius-xl);
  --ion-button-border-radius: var(--radius-lg);
}
.scania-select-popover {
  --background: transparent !important;
  --border-radius: 16px !important;
  --box-shadow:
    0 20px 60px rgba(4, 30, 66, 0.15),
    0 8px 30px rgba(4, 30, 66, 0.1),
    0 0 0 1px rgba(255, 255, 255, 0.05) !important;
  --min-width: 240px !important;
  --max-width: 320px !important;
}
.scania-select-popover .popover-content {
  padding: 8px 0 !important;
  background: rgba(255, 255, 255, 0.98) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  backdrop-filter: blur(20px) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}
.scania-select-popover ion-select-option {
  --color: var(--ion-color-dark, #1a1a1a) !important;
  --color-selected: var(--ion-color-primary, #3880ff) !important;
  --background: transparent !important;
  --background-selected:
    linear-gradient(
      135deg,
      rgba(56, 128, 255, 0.1) 0%,
      rgba(56, 128, 255, 0.05) 100%) !important;
  --background-focused: rgba(56, 128, 255, 0.08) !important;
  --background-hover: rgba(56, 128, 255, 0.06) !important;
  font-weight: 500 !important;
  font-size: 1rem !important;
  padding: 14px 20px !important;
  margin: 2px 8px !important;
  border-radius: 12px !important;
  border: none !important;
  position: relative !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  min-height: 48px !important;
}
.scania-select-popover ion-select-option::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background:
    linear-gradient(
      135deg,
      rgba(56, 128, 255, 0.08) 0%,
      rgba(56, 128, 255, 0.04) 100%) !important;
  border-radius: inherit !important;
  opacity: 0 !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
.scania-select-popover ion-select-option:hover::before {
  opacity: 1 !important;
}
.scania-select-popover ion-select-option[aria-selected=true] {
  --color: var(--icon-accent) !important;
  font-weight: 600 !important;
  background: var(--background-selected) !important;
}
.scania-select-popover ion-select-option[aria-selected=true]::after {
  content: "\2713" !important;
  position: absolute !important;
  right: 16px !important;
  color: var(--icon-accent) !important;
  font-weight: bold !important;
  font-size: 1.1rem !important;
  pointer-events: none !important;
}
.scania-select-popover ion-select-option {
  animation: slideInOption 0.3s cubic-bezier(0.4, 0, 0.2, 1) both !important;
}
.scania-select-popover ion-select-option:nth-child(1) {
  animation-delay: 0.05s !important;
}
.scania-select-popover ion-select-option:nth-child(2) {
  animation-delay: 0.1s !important;
}
.scania-select-popover ion-select-option:nth-child(3) {
  animation-delay: 0.15s !important;
}
.scania-select-popover ion-select-option:nth-child(4) {
  animation-delay: 0.2s !important;
}
.scania-select-popover ion-select-option:nth-child(5) {
  animation-delay: 0.25s !important;
}
@keyframes slideInOption {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.scania-select-popover .scania-option {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}
.scania-select-popover .scania-option__icon {
  font-size: 1.2rem !important;
  color: var(--ion-color-medium, #a0a0a0) !important;
  transition: color 0.2s ease !important;
  flex-shrink: 0 !important;
}
.scania-select-popover .scania-option__label {
  flex: 1 !important;
  font-weight: inherit !important;
  line-height: 1.4 !important;
}
.scania-select-popover ion-select-option:hover .scania-option__icon,
.scania-select-popover ion-select-option[aria-selected=true] .scania-option__icon {
  color: var(--icon-accent) !important;
}
.scania-select-popover ion-backdrop {
  background: rgba(0, 0, 0, 0.2) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  backdrop-filter: blur(4px) !important;
}
@media (prefers-color-scheme: dark) {
  .scania-select-popover {
    --box-shadow:
      0 20px 60px rgba(0, 0, 0, 0.4),
      0 8px 30px rgba(0, 0, 0, 0.3),
      0 0 0 1px rgba(255, 255, 255, 0.08) !important;
  }
  .scania-select-popover .popover-content {
    background: rgba(42, 45, 51, 0.95) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
  }
  .scania-select-popover ion-select-option {
    --color: var(--ion-color-light, #f4f5f8) !important;
    --background-selected:
      linear-gradient(
        135deg,
        rgba(74, 144, 226, 0.2) 0%,
        rgba(74, 144, 226, 0.1) 100%) !important;
    --background-focused: rgba(74, 144, 226, 0.15) !important;
    --background-hover: rgba(74, 144, 226, 0.1) !important;
  }
  .scania-select-popover ion-select-option::before {
    background:
      linear-gradient(
        135deg,
        rgba(74, 144, 226, 0.15) 0%,
        rgba(74, 144, 226, 0.08) 100%) !important;
  }
  .scania-select-popover ion-select-option[aria-selected=true] {
    --color: var(--ion-color-primary-tint, #4a90e2) !important;
  }
  .scania-select-popover ion-select-option[aria-selected=true]::after {
    color: var(--ion-color-primary-tint, #4a90e2) !important;
  }
  .scania-select-popover .scania-option__icon {
    color: var(--ion-color-medium-tint, #c0c0c0) !important;
  }
  .scania-select-popover ion-select-option:hover .scania-option__icon,
  .scania-select-popover ion-select-option[aria-selected=true] .scania-option__icon {
    color: var(--ion-color-primary-tint, #4a90e2) !important;
  }
  .scania-select-popover ion-backdrop {
    background: rgba(0, 0, 0, 0.4) !important;
  }
}
:root {
  --safe-area-inset-top: 0px;
  --safe-area-inset-bottom: 0px;
  --safe-area-inset-left: 0px;
  --safe-area-inset-right: 0px;
}
@supports (padding-top: env(safe-area-inset-top)) {
  :root {
    --safe-area-inset-top: env(safe-area-inset-top);
    --safe-area-inset-bottom: env(safe-area-inset-bottom);
    --safe-area-inset-left: env(safe-area-inset-left);
    --safe-area-inset-right: env(safe-area-inset-right);
  }
}
ion-app {
  padding-bottom: var(--safe-area-inset-bottom);
  padding-left: var(--safe-area-inset-left);
  padding-right: var(--safe-area-inset-right);
}
.modal-wrapper,
.alert-wrapper,
.popover-wrapper,
.action-sheet-wrapper,
.scanner-overlay {
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding-top: var(--safe-area-inset-top);
  padding-bottom: var(--safe-area-inset-bottom);
  padding-left: var(--safe-area-inset-left);
  padding-right: var(--safe-area-inset-right);
}
.scanner-overlay {
  padding: 0;
}
.scanner-overlay .scanner-container {
  margin-top: var(--safe-area-inset-top);
  margin-bottom: var(--safe-area-inset-bottom);
}
.footer-element,
.bottom-navigation,
.floating-action-button {
  padding-bottom: var(--safe-area-inset-bottom);
}
ion-content {
  --padding-top: calc(60px + var(--safe-area-inset-top, 0px));
  --padding-bottom: var(--safe-area-inset-bottom);
}
.login-content {
  --padding-top: 0 !important;
}
ion-tab-bar {
  padding-bottom: var(--safe-area-inset-bottom);
}
@media screen and (orientation: landscape) {
  .landscape-content {
    padding-left: var(--safe-area-inset-left);
    padding-right: var(--safe-area-inset-right);
  }
}
.safe-area-top {
  padding-top: var(--safe-area-inset-top);
}
.safe-area-bottom {
  padding-bottom: var(--safe-area-inset-bottom);
}
.safe-area-left {
  padding-left: var(--safe-area-inset-left);
}
.safe-area-right {
  padding-right: var(--safe-area-inset-right);
}
.safe-area-all {
  padding-top: var(--safe-area-inset-top);
  padding-bottom: var(--safe-area-inset-bottom);
  padding-left: var(--safe-area-inset-left);
  padding-right: var(--safe-area-inset-right);
}
.safe-area-none {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.debug-safe-area {
  position: relative;
}
.debug-safe-area::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: var(--safe-area-inset-top);
  background: rgba(255, 0, 0, 0.3);
  pointer-events: none;
  z-index: 9999;
}
.debug-safe-area::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: var(--safe-area-inset-bottom);
  background: rgba(0, 255, 0, 0.3);
  pointer-events: none;
  z-index: 9999;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
  margin: 0;
  padding: 0;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
  color: var(--text-primary);
  background: var(--surface-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}
.text-hero {
  font-size: var(--font-size-6xl);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
  letter-spacing: -0.02em;
  background:
    linear-gradient(
      135deg,
      var(--scania-blue),
      var(--scania-blue-light));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.text-title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  letter-spacing: -0.01em;
  color: var(--text-primary);
}
.text-subtitle {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-snug);
  color: var(--text-secondary);
}
.text-heading {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-snug);
  color: var(--text-primary);
}
.text-body {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-relaxed);
  color: var(--text-secondary);
}
.text-caption {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-normal);
  color: var(--text-tertiary);
}
.text-overline {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-normal);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--text-tertiary);
}
.btn:not(.scania-button):not(.scania-button *) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-2);
  padding: var(--spacing-3) var(--spacing-6);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  line-height: 1;
  text-decoration: none;
  text-align: center;
  white-space: nowrap;
  border: 2px solid transparent;
  border-radius: var(--radius-lg);
  cursor: pointer;
  transition: var(--transition-base);
  position: relative;
  overflow: hidden;
  -webkit-user-select: none;
  user-select: none;
  min-height: 48px;
}
.btn:not(.scania-button):not(.scania-button *):focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.btn:not(.scania-button):not(.scania-button *):disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.btn:not(.scania-button):not(.scania-button *)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}
.btn:not(.scania-button):not(.scania-button *):active::before {
  width: 300px;
  height: 300px;
}
.btn-primary:not(.scania-button):not(.scania-button *) {
  background:
    linear-gradient(
      135deg,
      var(--btn-primary-bg),
      var(--btn-primary-bg-hover));
  color: white;
  box-shadow: var(--shadow-md);
}
.btn-primary:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.btn-primary:not(.scania-button):not(.scania-button *):active:not(:disabled) {
  transform: translateY(0);
  box-shadow: var(--shadow-base);
}
.btn-secondary:not(.scania-button):not(.scania-button *) {
  background: var(--surface-secondary);
  color: var(--text-primary);
  border-color: var(--border-primary);
  box-shadow: var(--shadow-sm);
}
.btn-secondary:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background: var(--surface-tertiary);
  transform: translateY(-1px);
  box-shadow: var(--shadow-md);
}
.btn-outline:not(.scania-button):not(.scania-button *) {
  background: transparent;
  color: var(--icon-accent);
  border-color: var(--icon-accent);
}
.btn-outline:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background: var(--scania-blue-50);
  transform: translateY(-1px);
}
.btn-ghost:not(.scania-button):not(.scania-button *) {
  background: transparent;
  color: var(--icon-accent);
  border: none;
}
.btn-ghost:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background: var(--scania-blue-50);
}
.btn-danger:not(.scania-button):not(.scania-button *) {
  background:
    linear-gradient(
      135deg,
      var(--scania-red),
      var(--scania-red-light));
  color: white;
  box-shadow: var(--shadow-md);
}
.btn-danger:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.btn-success:not(.scania-button):not(.scania-button *) {
  background:
    linear-gradient(
      135deg,
      var(--scania-green),
      var(--scania-green-light));
  color: white;
  box-shadow: var(--shadow-md);
}
.btn-success:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.btn-sm:not(.scania-button):not(.scania-button *) {
  padding: var(--spacing-2) var(--spacing-4);
  font-size: var(--font-size-sm);
  min-height: 36px;
  border-radius: var(--radius-md);
}
.btn-lg:not(.scania-button):not(.scania-button *) {
  padding: var(--spacing-4) var(--spacing-8);
  font-size: var(--font-size-lg);
  min-height: 56px;
  border-radius: var(--radius-xl);
}
.btn-xl:not(.scania-button):not(.scania-button *) {
  padding: var(--spacing-5) var(--spacing-10);
  font-size: var(--font-size-xl);
  min-height: 64px;
  border-radius: var(--radius-2xl);
}
.btn-full:not(.scania-button):not(.scania-button *) {
  width: 100%;
}
.input-group {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-2);
  margin-bottom: var(--spacing-6);
}
.input-label {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--text-primary);
  margin-bottom: var(--spacing-2);
}
.form-input-field,
.input-field:not(.scania-input .input-field) {
  width: 100%;
  padding: var(--spacing-4) var(--spacing-4);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
  color: var(--text-primary);
  background: var(--surface-primary);
  border: 2px solid var(--border-primary);
  border-radius: var(--radius-lg);
  transition: var(--transition-base);
  min-height: 52px;
}
.form-input-field::placeholder,
.input-field:not(.scania-input .input-field)::placeholder {
  color: var(--text-tertiary);
  opacity: 1;
}
.form-input-field:focus,
.input-field:focus:not(.scania-input .input-field) {
  outline: none;
  border-color: var(--icon-accent);
  box-shadow: 0 0 0 4px var(--scania-blue-100);
  transform: translateY(-2px);
}
.form-input-field:hover:not(:focus),
.input-field:hover:not(:focus):not(.scania-input .input-field) {
  border-color: var(--border-secondary);
  transform: translateY(-1px);
}
.form-input-field.error,
.error.input-field:not(.scania-input .input-field) {
  border-color: var(--color-danger);
  box-shadow: 0 0 0 4px rgba(220, 41, 30, 0.1);
}
.form-input-field:disabled,
.input-field:disabled:not(.scania-input .input-field) {
  background: var(--surface-secondary);
  color: var(--text-disabled);
  cursor: not-allowed;
  opacity: 0.7;
}
.input-error {
  font-size: var(--font-size-sm);
  color: var(--color-danger);
  font-weight: var(--font-weight-medium);
  margin-top: var(--spacing-1);
  padding: var(--spacing-2) var(--spacing-3);
  background: rgba(220, 41, 30, 0.05);
  border-left: 3px solid var(--color-danger);
  border-radius: 0 var(--radius-base) var(--radius-base) 0;
  animation: slideInUp 0.3s ease-out;
}
.input-helper {
  font-size: var(--font-size-sm);
  color: var(--text-tertiary);
  margin-top: var(--spacing-1);
}
.card:not(.login-card) {
  background: var(--surface-primary);
  border-radius: var(--radius-2xl);
  padding: var(--spacing-8);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border-secondary);
  transition: var(--transition-base);
  overflow: hidden;
  position: relative;
}
.card:not(.login-card)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background:
    linear-gradient(
      90deg,
      var(--scania-blue),
      var(--scania-blue-light));
}
.card:not(.login-card):hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-2xl);
}
.card-glass {
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: var(--shadow-xl);
}
.dark-theme .card-glass {
  background: rgba(26, 29, 33, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}
.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--spacing-4);
}
@media (min-width: 768px) {
  .container {
    padding: 0 var(--spacing-6);
  }
}
@media (min-width: 1024px) {
  .container {
    padding: 0 var(--spacing-8);
  }
}
.flex {
  display: flex;
}
.flex-col {
  flex-direction: column;
}
.items-center {
  align-items: center;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-2 {
  gap: var(--spacing-2);
}
.gap-4 {
  gap: var(--spacing-4);
}
.gap-6 {
  gap: var(--spacing-6);
}
.gap-8 {
  gap: var(--spacing-8);
}
.w-full {
  width: 100%;
}
.h-full {
  height: 100%;
}
.h-screen {
  height: 100vh;
}
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.p-0 {
  padding: 0;
}
.p-2 {
  padding: var(--spacing-2);
}
.p-4 {
  padding: var(--spacing-4);
}
.p-6 {
  padding: var(--spacing-6);
}
.p-8 {
  padding: var(--spacing-8);
}
.m-0 {
  margin: 0;
}
.m-2 {
  margin: var(--spacing-2);
}
.m-4 {
  margin: var(--spacing-4);
}
.m-6 {
  margin: var(--spacing-6);
}
.m-8 {
  margin: var(--spacing-8);
}
.mb-2 {
  margin-bottom: var(--spacing-2);
}
.mb-4 {
  margin-bottom: var(--spacing-4);
}
.mb-6 {
  margin-bottom: var(--spacing-6);
}
.mb-8 {
  margin-bottom: var(--spacing-8);
}
.mt-2 {
  margin-top: var(--spacing-2);
}
.mt-4 {
  margin-top: var(--spacing-4);
}
.mt-6 {
  margin-top: var(--spacing-6);
}
.mt-8 {
  margin-top: var(--spacing-8);
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.animate-fade-in {
  animation: fadeIn 0.5s ease-out;
}
.animate-fade-in-up {
  animation: fadeInUp 0.6s ease-out;
}
.animate-slide-in-up {
  animation: slideInUp 0.4s ease-out;
}
.animate-slide-in-down {
  animation: slideInDown 0.4s ease-out;
}
.animate-scale-in {
  animation: scaleIn 0.3s ease-out;
}
.animate-pulse {
  animation: pulse 2s infinite;
}
.animate-spin {
  animation: spin 1s linear infinite;
}
.loading-spinner {
  width: 40px;
  height: 40px;
  border: 4px solid var(--border-primary);
  border-top: 4px solid var(--color-primary);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--surface-overlay);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: var(--z-modal);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
@media (max-width: 768px) {
  .text-hero {
    font-size: var(--font-size-4xl);
  }
  .text-title {
    font-size: var(--font-size-3xl);
  }
  .card:not(.login-card) {
    padding: var(--spacing-6);
  }
  .btn-lg:not(.scania-button):not(.scania-button *) {
    padding: var(--spacing-3) var(--spacing-6);
    min-height: 52px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
@media (prefers-contrast: high) {
  .btn:not(.scania-button):not(.scania-button *),
  .form-input-field,
  .input-field:not(.scania-input .input-field),
  .card:not(.login-card) {
    border-width: 3px;
  }
}
* {
  transition:
    background-color var(--transition-base),
    border-color var(--transition-base),
    color var(--transition-base),
    box-shadow var(--transition-base);
}
.loading-spinner,
.animate-spin,
[class*=animate-],
.ripple-effect,
.btn::before,
.alert-button::before {
  transition: none;
}
.debug {
  border: 2px dashed var(--color-danger) !important;
}
.debug * {
  border: 1px solid var(--color-warning) !important;
}
.dark-theme body:not(.login-page) {
  background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      var(--surface-secondary));
}
.dark-theme .btn:not(.scania-button):not(.scania-button *) {
  box-shadow: var(--shadow-md), 0 0 0 1px rgba(255, 255, 255, 0.05);
}
.dark-theme .btn:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  box-shadow: var(--shadow-lg), 0 0 0 1px rgba(255, 255, 255, 0.1);
}
.dark-theme .btn-secondary:not(.scania-button):not(.scania-button *) {
  background:
    linear-gradient(
      135deg,
      var(--surface-secondary),
      var(--surface-tertiary));
  border-color: rgba(255, 255, 255, 0.12);
}
.dark-theme .btn-secondary:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background:
    linear-gradient(
      135deg,
      var(--surface-tertiary),
      #363c43);
  transform: translateY(-2px);
}
.dark-theme .btn-outline:not(.scania-button):not(.scania-button *) {
  border-color: rgba(74, 144, 226, 0.6);
  color: #74b3f7;
}
.dark-theme .btn-outline:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background: rgba(74, 144, 226, 0.1);
  border-color: #74b3f7;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.dark-theme .btn-ghost:not(.scania-button):not(.scania-button *):hover:not(:disabled) {
  background: rgba(74, 144, 226, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.dark-theme .form-input-field,
.dark-theme .input-field:not(.scania-input .input-field) {
  background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      var(--surface-secondary));
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: var(--shadow-sm), inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.dark-theme .form-input-field:focus,
.dark-theme .input-field:focus:not(.scania-input .input-field) {
  border-color: var(--icon-accent);
  box-shadow: 0 0 0 4px rgba(74, 144, 226, 0.2), var(--shadow-md);
  background: var(--surface-primary);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.dark-theme .form-input-field:hover:not(:focus),
.dark-theme .input-field:hover:not(:focus):not(.scania-input .input-field) {
  border-color: rgba(255, 255, 255, 0.2);
  background:
    linear-gradient(
      135deg,
      var(--surface-secondary),
      var(--surface-tertiary));
}
.dark-theme .form-input-field.error,
.dark-theme .error.input-field:not(.scania-input .input-field) {
  border-color: var(--color-danger);
  box-shadow: 0 0 0 4px rgba(255, 107, 107, 0.2), var(--shadow-md);
}
.dark-theme .form-input-field:disabled,
.dark-theme .input-field:disabled:not(.scania-input .input-field) {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.05);
}
.dark-theme .card:not(.login-card) {
  background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: var(--shadow-2xl);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}
.dark-theme .card:not(.login-card)::before {
  background:
    linear-gradient(
      90deg,
      var(--scania-blue),
      var(--scania-blue-light));
}
.dark-theme .card:not(.login-card):hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-2xl), 0 20px 40px rgba(0, 0, 0, 0.3);
  border-color: rgba(255, 255, 255, 0.15);
}
.dark-theme .text-hero {
  background:
    linear-gradient(
      135deg,
      #74b3f7,
      #4a90e2,
      #2c5aa0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.dark-theme .loading-spinner {
  border-color: rgba(255, 255, 255, 0.1);
  border-top-color: var(--icon-accent);
}
.dark-theme .loading-overlay {
  background: rgba(0, 0, 0, 0.8);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.dark-theme .input-error {
  background: rgba(255, 107, 107, 0.1);
  border-left-color: var(--color-danger);
  color: #ff8a80;
}
.dark-theme .btn:not(.scania-button):not(.scania-button *)::before {
  background: rgba(255, 255, 255, 0.2);
}
.dark-theme ion-content:not(.login-content) {
  --background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      var(--surface-secondary));
}
.dark-theme ion-header {
  --background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      rgba(255, 255, 255, 0.02));
  --border-color: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}
.dark-theme ion-toolbar {
  --background: transparent;
  --border-color: rgba(255, 255, 255, 0.1);
}
.dark-theme ion-button {
  --box-shadow: var(--shadow-md), 0 0 0 1px rgba(255, 255, 255, 0.05);
}
.dark-theme ion-button:hover {
  --box-shadow: var(--shadow-lg), 0 0 0 1px rgba(255, 255, 255, 0.1);
}
.dark-theme ion-item {
  --background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      rgba(255, 255, 255, 0.02));
  --border-color: rgba(255, 255, 255, 0.1);
  --inner-border-width: 0 0 1px 0;
}
.dark-theme ion-input,
.dark-theme ion-textarea {
  --background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      var(--surface-secondary));
}
.dark-theme ion-card {
  --background:
    linear-gradient(
      135deg,
      var(--surface-primary),
      rgba(255, 255, 255, 0.02));
  box-shadow: var(--shadow-xl), 0 0 0 1px rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}
ion-content {
  --background: var(--surface-primary);
}
.custom-content {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100vh;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--surface-primary);
  z-index: 1;
  scroll-behavior: smooth;
}
@supports (padding: env(safe-area-inset-top)) {
  .custom-content {
    padding-bottom: env(safe-area-inset-bottom);
  }
}
.custom-content:not(.profile-content):not(.profile-page) {
  padding-top: calc(60px + var(--safe-area-inset-top, 0px)) !important;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .custom-content:not(.profile-content):not(.profile-page) {
    padding-top: calc(60px + var(--safe-area-inset-top, 0px)) !important;
  }
}
@media (min-width: 1024px) {
  .custom-content:not(.profile-content):not(.profile-page) {
    padding-top: calc(60px + var(--safe-area-inset-top, 0px)) !important;
  }
}
.custom-content.cores-revision-content {
  padding-top: calc(60px + var(--safe-area-inset-top, 0px)) !important;
}
.custom-content.profile-content {
  padding-top: var(--safe-area-inset-top, 0px) !important;
}
.custom-content.profile-page {
  padding-top: var(--safe-area-inset-top, 0px) !important;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .custom-content.profile-page {
    padding-top: 0px !important;
  }
}
@media (min-width: 1024px) {
  .custom-content.profile-page {
    padding-top: 0px !important;
  }
}
.dark-theme .cores-revision-content ion-icon,
.dark-theme .cores-revision-content .ionicon,
.dark-theme .cores-revision-content [name*=ion-],
.dark-theme .empty-pallet-content ion-icon,
.dark-theme .empty-pallet-content .ionicon,
.dark-theme .empty-pallet-content [name*=ion-],
.dark-theme .edit-part-content ion-icon,
.dark-theme .edit-part-content .ionicon,
.dark-theme .edit-part-content [name*=ion-] {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}
.dark-theme .cores-revision-content * ion-icon,
.dark-theme .cores-revision-content * .ionicon,
.dark-theme .empty-pallet-content * ion-icon,
.dark-theme .empty-pallet-content * .ionicon,
.dark-theme .edit-part-content * ion-icon,
.dark-theme .edit-part-content * .ionicon {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}
.types-badge {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 50px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.types-badge.type-clutchs {
  background: rgba(34, 197, 94, 0.1);
  color: #22c55e;
  border: 1px solid rgba(34, 197, 94, 0.2);
}
.types-badge.type-filters {
  background: rgba(185, 28, 28, 0.1);
  color: #b91c1c;
  border: 1px solid rgba(185, 28, 28, 0.2);
}
.types-badge.type-generics {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
  border: 1px solid rgba(245, 158, 11, 0.2);
}
.types-badge.type-guarantees {
  background: rgba(59, 130, 246, 0.1);
  color: #3b82f6;
  border: 1px solid rgba(59, 130, 246, 0.2);
}
.types-badge.type-default {
  background: rgba(156, 163, 175, 0.1);
  color: #9ca3af;
  border: 1px solid rgba(156, 163, 175, 0.2);
}
.status-badge {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 50px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.status-badge.status-dealer-revision {
  background: rgba(59, 130, 246, 0.1);
  color: #3b82f6;
  border: 1px solid rgba(59, 130, 246, 0.2);
}
.status-badge.status-rejected {
  background: rgba(220, 53, 69, 0.15);
  color: #dc3545;
  border: 1px solid rgba(220, 53, 69, 0.3);
}
.status-badge.status-default {
  background: rgba(156, 163, 175, 0.1);
  color: #9ca3af;
  border: 1px solid rgba(156, 163, 175, 0.2);
}
.result-badge {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 50px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}
.result-badge.result-pending {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
  border: 1px solid rgba(245, 158, 11, 0.2);
}
.result-badge.result-ongoing {
  background: rgba(168, 85, 247, 0.1);
  color: #a855f7;
  border: 1px solid rgba(168, 85, 247, 0.2);
}
.result-badge.result-revised {
  background: rgba(34, 197, 94, 0.1);
  color: #22c55e;
  border: 1px solid rgba(34, 197, 94, 0.2);
}
.result-badge.result-default {
  background: rgba(156, 163, 175, 0.1);
  color: #9ca3af;
  border: 1px solid rgba(156, 163, 175, 0.2);
}
.action-sheet-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0);
  z-index: 9999;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  transition: background 0.3s ease;
}
.action-sheet-overlay.active {
  background: rgba(0, 0, 0, 0.4);
}
.action-sheet-overlay.active .action-sheet {
  transform: translateY(0);
}
.action-sheet {
  background: var(--surface-primary, #fff);
  border-radius: 16px 16px 0 0;
  padding: 8px;
  padding-bottom: calc(8px + var(--safe-area-inset-bottom, 0px));
  width: 100%;
  max-width: 500px;
  transform: translateY(100%);
  transition: transform 0.3s ease;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
}
@media (min-width: 768px) {
  .action-sheet {
    border-radius: 16px;
    margin-bottom: 16px;
    padding-bottom: 8px;
  }
}
.action-sheet-buttons {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.action-sheet-button {
  background: var(--surface-secondary, #f1f5f9);
  border: 1px solid var(--border-primary, #e2e8f0);
  border-radius: 12px;
  padding: 16px;
  font-size: 16px;
  font-weight: 500;
  color: var(--text-primary, #111);
  cursor: pointer;
  transition: all 0.2s;
}
.action-sheet-button:hover {
  background: var(--surface-tertiary, #e2e8f0);
  transform: scale(1.02);
}
.action-sheet-button:active {
  transform: scale(0.98);
}
.action-sheet-cancel {
  margin-top: 4px;
  color: #ef4444 !important;
  font-weight: 600;
}
body.dark-theme .action-sheet {
  background: #1e293b;
}
body.dark-theme .action-sheet-button {
  background: #334155;
  border-color: #475569;
  color: #f1f5f9;
}
body.dark-theme .action-sheet-button:hover {
  background: #475569;
}

/* src/utilities/theme/variables.scss */
:root {
  --scania-blue: #041e42;
  --scania-blue-light: #1a4480;
  --scania-blue-dark: #021429;
  --scania-blue-50: rgba(4, 30, 66, 0.05);
  --scania-blue-100: rgba(4, 30, 66, 0.1);
  --scania-blue-200: rgba(4, 30, 66 , 0.2);
  --scania-blue-300: rgba(4, 30, 66, 0.3);
  --scania-blue-500: rgba(4, 30, 66, 0.5);
  --scania-blue-700: rgba(4, 30, 66, 0.7);
  --scania-blue-900: rgba(4, 30, 66, 0.9);
  --scania-red: #dc291e;
  --scania-red-light: #ff4444;
  --scania-red-dark: #b91c12;
  --scania-yellow: #ffc72c;
  --scania-yellow-light: #ffdd66;
  --scania-yellow-dark: #e6b000;
  --scania-green: #00a651;
  --scania-green-light: #33cc77;
  --scania-green-dark: #008542;
  --scania-grey-50: #f8f9fa;
  --scania-grey-100: #f1f3f4;
  --scania-grey-200: #e8eaed;
  --scania-grey-300: #dadce0;
  --scania-grey-400: #bdc1c6;
  --scania-grey-500: #9aa0a6;
  --scania-grey-600: #80868b;
  --scania-grey-700: #5f6368;
  --scania-grey-800: #3c4043;
  --scania-grey-900: #202124;
  --color-primary: var(--scania-blue);
  --color-secondary: var(--scania-grey-600);
  --color-success: var(--scania-green);
  --color-warning: var(--scania-yellow);
  --color-danger: var(--scania-red);
  --color-info: var(--scania-blue-light);
  --surface-primary: #ffffff;
  --surface-secondary: var(--scania-grey-50);
  --surface-tertiary: var(--scania-grey-100);
  --surface-overlay: rgba(4, 30, 66, 0.8);
  --text-primary: var(--scania-grey-900);
  --text-secondary: var(--scania-grey-700);
  --text-tertiary: var(--scania-grey-500);
  --text-inverse: #ffffff;
  --text-disabled: var(--scania-grey-400);
  --border-primary: var(--scania-grey-300);
  --border-secondary: var(--scania-grey-200);
  --border-focus: var(--scania-blue);
  --border-error: var(--scania-red);
  --border-success: var(--scania-green);
  --tint-success-bg: #e8f6ee;
  --tint-success-border: #27ae60;
  --tint-success-text: #1d8a4b;
  --tint-danger-bg: #fdeceb;
  --tint-danger-border: #e74c3c;
  --tint-danger-text: #c0392b;
  --tint-warning-bg: #fdf3e7;
  --tint-warning-border: #e67e22;
  --tint-warning-text: #b9770e;
  --tint-warning-soft-bg: #fdf7f0;
  --btn-primary-bg: var(--ion-color-primary);
  --btn-primary-bg-hover: var(--scania-blue-light);
  --icon-accent: var(--ion-color-primary);
  --font-family-primary:
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    "Roboto",
    "Oxygen",
    "Ubuntu",
    "Cantarell",
    sans-serif;
  --font-family-secondary:
    "SF Pro Display",
    "Helvetica Neue",
    Arial,
    sans-serif;
  --font-family-mono:
    "SF Mono",
    "Monaco",
    "Cascadia Code",
    "Roboto Mono",
    monospace;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.25rem;
  --font-size-5xl: 3rem;
  --font-size-6xl: 3.75rem;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --line-height-tight: 1.25;
  --line-height-snug: 1.375;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 2;
  --spacing-0: 0;
  --spacing-1: 0.25rem;
  --spacing-2: 0.5rem;
  --spacing-3: 0.75rem;
  --spacing-4: 1rem;
  --spacing-5: 1.25rem;
  --spacing-6: 1.5rem;
  --spacing-8: 2rem;
  --spacing-10: 2.5rem;
  --spacing-12: 3rem;
  --spacing-16: 4rem;
  --spacing-20: 5rem;
  --spacing-24: 6rem;
  --spacing-32: 8rem;
  --radius-none: 0;
  --radius-sm: 0.125rem;
  --radius-base: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.5rem;
  --radius-full: 9999px;
  --shadow-sm: 0 1px 2px rgba(4, 30, 66, 0.05);
  --shadow-base: 0 1px 3px rgba(4, 30, 66, 0.1), 0 1px 2px rgba(4, 30, 66, 0.06);
  --shadow-md: 0 4px 6px rgba(4, 30, 66, 0.07), 0 2px 4px rgba(4, 30, 66, 0.06);
  --shadow-lg: 0 10px 15px rgba(4, 30, 66, 0.1), 0 4px 6px rgba(4, 30, 66, 0.05);
  --shadow-xl: 0 20px 25px rgba(4, 30, 66, 0.1), 0 10px 10px rgba(4, 30, 66, 0.04);
  --shadow-2xl: 0 25px 50px rgba(4, 30, 66, 0.15);
  --shadow-inner: inset 0 2px 4px rgba(4, 30, 66, 0.06);
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
  --z-toast: 1080;
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;
}
.dark-theme {
  --surface-primary: #1e293b;
  --surface-secondary: #0f172a;
  --surface-tertiary: #334155;
  --surface-overlay: rgba(0, 0, 0, 0.8);
  --text-primary: #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-tertiary: #94a3b8;
  --text-inverse: var(--scania-grey-900);
  --text-disabled: #64748b;
  --border-primary: rgba(255, 255, 255, 0.12);
  --border-secondary: rgba(255, 255, 255, 0.08);
  --border-focus: #4a90e2;
  --border-error: #ff6b6b;
  --border-success: #51cf66;
  --tint-success-bg: rgba(39, 174, 96, 0.16);
  --tint-success-border: #2fbf71;
  --tint-success-text: #5fd68f;
  --tint-danger-bg: rgba(231, 76, 60, 0.16);
  --tint-danger-border: #e74c3c;
  --tint-danger-text: #ff8a80;
  --tint-warning-bg: rgba(230, 126, 34, 0.16);
  --tint-warning-border: #e67e22;
  --tint-warning-text: #f0a35e;
  --tint-warning-soft-bg: rgba(230, 126, 34, 0.10);
  --btn-primary-bg: #205caf;
  --btn-primary-bg-hover: #2f6fc9;
  --icon-accent: #60a5fa;
  --scania-blue: #041e42;
  --scania-blue-light: #1a4480;
  --scania-blue-dark: #021429;
  --scania-blue-50: rgba(4, 30, 66, 0.05);
  --scania-blue-100: rgba(4, 30, 66, 0.1);
  --scania-blue-200: rgba(4, 30, 66, 0.2);
  --scania-blue-300: rgba(4, 30, 66, 0.3);
  --scania-blue-500: rgba(4, 30, 66, 0.5);
  --scania-blue-700: rgba(4, 30, 66, 0.7);
  --scania-blue-900: rgba(4, 30, 66, 0.9);
  --color-primary: #134a96;
  --color-success: #51cf66;
  --color-warning: #ffd43b;
  --color-danger: #ff6b6b;
  --color-info: #74b3f7;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2), 0 1px 2px rgba(0, 0, 0, 0.12);
  --shadow-base: 0 1px 4px rgba(0, 0, 0, 0.3), 0 2px 8px rgba(0, 0, 0, 0.15);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.25), 0 2px 6px rgba(0, 0, 0, 0.15);
  --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.3), 0 4px 12px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.4), 0 10px 20px rgba(0, 0, 0, 0.2);
  --shadow-2xl: 0 25px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
  --ion-background-color: var(--surface-secondary);
  --ion-background-color-rgb:
    15,
    23,
    42;
  --ion-text-color: var(--text-primary);
  --ion-text-color-rgb:
    241,
    245,
    249;
  --ion-color-step-50: #1a1d21;
  --ion-color-step-100: #2f343a;
  --ion-color-step-150: #363c43;
  --ion-color-step-200: var(--scania-grey-800);
  --ion-color-step-250: #525964;
  --ion-color-step-300: var(--scania-grey-700);
  --ion-color-step-350: #72787e;
  --ion-color-step-400: var(--scania-grey-600);
  --ion-color-step-450: #8b9199;
  --ion-color-step-500: var(--scania-grey-500);
  --ion-color-step-550: #a8aeb6;
  --ion-color-step-600: var(--scania-grey-400);
  --ion-color-step-650: #d1d5db;
  --ion-color-step-700: var(--scania-grey-300);
  --ion-color-step-750: #e5e7ea;
  --ion-color-step-800: var(--scania-grey-200);
  --ion-color-step-850: #f0f2f5;
  --ion-color-step-900: var(--scania-grey-100);
  --ion-color-step-950: var(--scania-grey-50);
}
:root {
  --ion-color-primary: var(--scania-blue);
  --ion-color-primary-rgb:
    4,
    30,
    66;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: var(--scania-blue-dark);
  --ion-color-primary-tint: var(--scania-blue-light);
  --ion-color-secondary: var(--scania-grey-600);
  --ion-color-secondary-rgb:
    128,
    134,
    139;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-secondary-shade: var(--scania-grey-700);
  --ion-color-secondary-tint: var(--scania-grey-500);
  --ion-color-success: var(--scania-green);
  --ion-color-success-rgb:
    0,
    166,
    81;
  --ion-color-success-contrast: #ffffff;
  --ion-color-success-contrast-rgb:
    255,
    255,
    255;
  --ion-color-success-shade: var(--scania-green-dark);
  --ion-color-success-tint: var(--scania-green-light);
  --ion-color-warning: var(--scania-yellow);
  --ion-color-warning-rgb:
    255,
    199,
    44;
  --ion-color-warning-contrast: var(--scania-blue);
  --ion-color-warning-contrast-rgb:
    4,
    30,
    66;
  --ion-color-warning-shade: var(--scania-yellow-dark);
  --ion-color-warning-tint: var(--scania-yellow-light);
  --ion-color-danger: var(--scania-red);
  --ion-color-danger-rgb:
    220,
    41,
    30;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: var(--scania-red-dark);
  --ion-color-danger-tint: var(--scania-red-light);
  --ion-background-color: var(--surface-primary);
  --ion-background-color-rgb:
    255,
    255,
    255;
  --ion-text-color: var(--text-primary);
  --ion-text-color-rgb:
    32,
    33,
    36;
  --ion-color-step-50: var(--scania-grey-50);
  --ion-color-step-100: var(--scania-grey-100);
  --ion-color-step-150: #f0f2f5;
  --ion-color-step-200: var(--scania-grey-200);
  --ion-color-step-250: #e5e7ea;
  --ion-color-step-300: var(--scania-grey-300);
  --ion-color-step-350: #d1d5db;
  --ion-color-step-400: var(--scania-grey-400);
  --ion-color-step-450: #a8aeb6;
  --ion-color-step-500: var(--scania-grey-500);
  --ion-color-step-550: #8b9199;
  --ion-color-step-600: var(--scania-grey-600);
  --ion-color-step-650: #72787e;
  --ion-color-step-700: var(--scania-grey-700);
  --ion-color-step-750: #525964;
  --ion-color-step-800: var(--scania-grey-800);
  --ion-color-step-850: #2f343a;
  --ion-color-step-900: var(--scania-grey-900);
  --ion-color-step-950: #1a1d21;
  --ion-border-radius: var(--radius-lg);
  --ion-card-border-radius: var(--radius-xl);
  --ion-button-border-radius: var(--radius-lg);
}

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