@charset "UTF-8";

/* src/styles.scss */
*,
::before,
::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
*,
::before,
::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: #e5e7eb;
}
::before,
::after {
  --tw-content: "";
}
html,
:host {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  tab-size: 4;
  font-family:
    ui-sans-serif,
    system-ui,
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji",
    "Segoe UI Symbol",
    "Noto Color Emoji";
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp,
pre {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    "Liberation Mono",
    "Courier New",
    monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
dialog {
  padding: 0;
}
textarea {
  resize: vertical;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
button,
[role=button] {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden]:where(:not([hidden=until-found])) {
  display: none;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.visible {
  visibility: visible;
}
.collapse {
  visibility: collapse;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.left-0 {
  left: 0px;
}
.right-0 {
  right: 0px;
}
.right-8 {
  right: 2rem;
}
.top-8 {
  top: 2rem;
}
.top-\[3\.25rem\] {
  top: 3.25rem;
}
.top-full {
  top: 100%;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.order-1 {
  order: 1;
}
.col-span-12 {
  grid-column: span 12 / span 12;
}
.col-span-6 {
  grid-column: span 6 / span 6;
}
.col-span-full {
  grid-column: 1 / -1;
}
.m-0 {
  margin: 0px;
}
.m-1 {
  margin: 0.25rem;
}
.m-2 {
  margin: 0.5rem;
}
.m-3 {
  margin: 0.75rem;
}
.m-auto {
  margin: auto;
}
.mx-0 {
  margin-left: 0px;
  margin-right: 0px;
}
.mx-6 {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.my-12 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.my-2 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.my-20 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}
.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.my-auto {
  margin-top: auto;
  margin-bottom: auto;
}
.\!mb-8 {
  margin-bottom: 2rem !important;
}
.mb-0 {
  margin-bottom: 0px;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-20 {
  margin-bottom: 5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.ml-0 {
  margin-left: 0px;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-4 {
  margin-left: 1rem;
}
.ml-6 {
  margin-left: 1.5rem;
}
.ml-auto {
  margin-left: auto;
}
.mr-0 {
  margin-right: 0px;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-20 {
  margin-right: 5rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mt-0 {
  margin-top: 0px;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-20 {
  margin-top: 5rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.block {
  display: block;
}
.\!flex {
  display: flex !important;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.contents {
  display: contents;
}
.\!hidden {
  display: none !important;
}
.hidden {
  display: none;
}
.h-12 {
  height: 3rem;
}
.h-14 {
  height: 3.5rem;
}
.h-32 {
  height: 8rem;
}
.h-5 {
  height: 1.25rem;
}
.h-8 {
  height: 2rem;
}
.h-80 {
  height: 20rem;
}
.h-full {
  height: 100%;
}
.min-h-screen {
  min-height: 100vh;
}
.w-1\/2 {
  width: 50%;
}
.w-10\/12 {
  width: 83.333333%;
}
.w-11\/12 {
  width: 91.666667%;
}
.w-12 {
  width: 3rem;
}
.w-16 {
  width: 4rem;
}
.w-32 {
  width: 8rem;
}
.w-40 {
  width: 10rem;
}
.w-44 {
  width: 11rem;
}
.w-5 {
  width: 1.25rem;
}
.w-72 {
  width: 18rem;
}
.w-8 {
  width: 2rem;
}
.w-9\/12 {
  width: 75%;
}
.w-full {
  width: 100%;
}
.min-w-\[100vw\] {
  min-width: 100vw;
}
.max-w-\[17\.35rem\] {
  max-width: 17.35rem;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-auto {
  flex: 1 1 auto;
}
.flex-shrink {
  flex-shrink: 1;
}
.shrink-0 {
  flex-shrink: 0;
}
.flex-grow {
  flex-grow: 1;
}
.grow {
  flex-grow: 1;
}
.basis-0 {
  flex-basis: 0px;
}
.origin-top {
  transform-origin: top;
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.animate-fadein {
  animation: fadein 0.15s linear;
}
@keyframes fadeout {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.animate-fadeout {
  animation: fadeout 0.15s linear;
}
@keyframes scalein {
  0% {
    opacity: 0;
    transform: scaleY(0.8);
    transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
  }
  100% {
    opacity: 1;
    transform: scaleY(1);
  }
}
.animate-scalein {
  animation: scalein 0.15s linear;
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
  user-select: none;
}
.resize {
  resize: both;
}
.list-disc {
  list-style-type: disc;
}
.list-none {
  list-style-type: none;
}
.grid-cols-12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.flex-row {
  flex-direction: row;
}
.flex-row-reverse {
  flex-direction: row-reverse;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-start {
  align-items: flex-start;
}
.items-center {
  align-items: center;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-20 {
  gap: 5rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.self-center {
  align-self: center;
}
.overflow-hidden {
  overflow: hidden;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-full {
  border-radius: 9999px;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0px;
}
.border-2 {
  border-width: 2px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-none {
  border-style: none;
}
.border-green-200 {
  --tw-border-opacity: 1;
  border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));
}
.border-orange-500 {
  --tw-border-opacity: 1;
  border-color: rgb(249 115 22 / var(--tw-border-opacity, 1));
}
.border-pink-500 {
  --tw-border-opacity: 1;
  border-color: rgb(236 72 153 / var(--tw-border-opacity, 1));
}
.border-primary {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-primary-color) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.border-surface-200 {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-surface-200) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.border-surface-300 {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-surface-300) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.bg-black\/70 {
  background-color: rgb(0 0 0 / 0.7);
}
.bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}
.bg-blue-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(191 219 254 / var(--tw-bg-opacity, 1));
}
.bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 246 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}
.bg-cyan-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(207 250 254 / var(--tw-bg-opacity, 1));
}
.bg-cyan-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(165 243 252 / var(--tw-bg-opacity, 1));
}
.bg-cyan-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 182 212 / var(--tw-bg-opacity, 1));
}
.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}
.bg-green-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}
.bg-indigo-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(199 210 254 / var(--tw-bg-opacity, 1));
}
.bg-orange-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));
}
.bg-orange-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 215 170 / var(--tw-bg-opacity, 1));
}
.bg-orange-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}
.bg-pink-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 231 243 / var(--tw-bg-opacity, 1));
}
.bg-pink-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(251 207 232 / var(--tw-bg-opacity, 1));
}
.bg-pink-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 72 153 / var(--tw-bg-opacity, 1));
}
.bg-primary {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-primary-color) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-purple-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}
.bg-purple-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));
}
.bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity, 1));
}
.bg-slate-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}
.bg-surface-0 {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-0) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-surface-100 {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-100) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-surface-200 {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-200) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-surface-300 {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-300) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-surface-50 {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-50) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.bg-teal-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(153 246 228 / var(--tw-bg-opacity, 1));
}
.bg-teal-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(20 184 166 / var(--tw-bg-opacity, 1));
}
.bg-yellow-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));
}
.bg-yellow-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}
.p-0 {
  padding: 0px;
}
.p-1 {
  padding: 0.25rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-3 {
  padding: 0.75rem;
}
.p-4 {
  padding: 1rem;
}
.p-6 {
  padding: 1.5rem;
}
.\!px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}
.px-0 {
  padding-left: 0px;
  padding-right: 0px;
}
.px-12 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.pb-0 {
  padding-bottom: 0px;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pb-4 {
  padding-bottom: 1rem;
}
.pl-8 {
  padding-left: 2rem;
}
.pr-12 {
  padding-right: 3rem;
}
.pt-12 {
  padding-top: 3rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-3 {
  padding-top: 0.75rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.\!text-2xl {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}
.\!text-3xl {
  font-size: 1.875rem !important;
  line-height: 2.25rem !important;
}
.\!text-4xl {
  font-size: 2.25rem !important;
  line-height: 2.5rem !important;
}
.\!text-xl {
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
}
.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-5xl {
  font-size: 3rem;
  line-height: 1;
}
.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
.font-bold {
  font-weight: 700;
}
.font-light {
  font-weight: 300;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.not-italic {
  font-style: normal;
}
.leading-none {
  line-height: 1;
}
.leading-normal {
  line-height: 1.5;
}
.leading-tight {
  line-height: 1.25;
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(59 130 246 / var(--tw-text-opacity, 1));
}
.text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}
.text-blue-700 {
  --tw-text-opacity: 1;
  color: rgb(29 78 216 / var(--tw-text-opacity, 1));
}
.text-cyan-500 {
  --tw-text-opacity: 1;
  color: rgb(6 182 212 / var(--tw-text-opacity, 1));
}
.text-cyan-700 {
  --tw-text-opacity: 1;
  color: rgb(14 116 144 / var(--tw-text-opacity, 1));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}
.text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}
.text-green-500 {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}
.text-green-600 {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}
.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}
.text-indigo-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.text-orange-500 {
  --tw-text-opacity: 1;
  color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}
.text-orange-700 {
  --tw-text-opacity: 1;
  color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}
.text-pink-500 {
  --tw-text-opacity: 1;
  color: rgb(236 72 153 / var(--tw-text-opacity, 1));
}
.text-pink-700 {
  --tw-text-opacity: 1;
  color: rgb(190 24 93 / var(--tw-text-opacity, 1));
}
.text-primary {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-primary-color) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-primary-contrast {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-primary-contrast-color) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity, 1));
}
.text-purple-600 {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity, 1));
}
.text-purple-700 {
  --tw-text-opacity: 1;
  color: rgb(126 34 206 / var(--tw-text-opacity, 1));
}
.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}
.text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.text-surface-500 {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-500) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-surface-600 {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-600) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-surface-700 {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-700) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-surface-900 {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-900) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.text-teal-500 {
  --tw-text-opacity: 1;
  color: rgb(20 184 166 / var(--tw-text-opacity, 1));
}
.text-teal-700 {
  --tw-text-opacity: 1;
  color: rgb(15 118 110 / var(--tw-text-opacity, 1));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.text-yellow-500 {
  --tw-text-opacity: 1;
  color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}
.text-yellow-700 {
  --tw-text-opacity: 1;
  color: rgb(161 98 7 / var(--tw-text-opacity, 1));
}
.no-underline {
  text-decoration-line: none;
}
.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow);
}
.shadow-\[0px_3px_5px_rgba\(0\,0\,0\,0\.02\)\,0px_0px_2px_rgba\(0\,0\,0\,0\.05\)\,0px_1px_4px_rgba\(0\,0\,0\,0\.08\)\] {
  --tw-shadow:
    0px 3px 5px rgba(0,0,0,0.02),0px 0px 2px rgba(0,0,0,0.05),0px 1px 4px rgba(0,0,0,0.08);
  --tw-shadow-colored:
    0px 3px 5px var(--tw-shadow-color),
    0px 0px 2px var(--tw-shadow-color),
    0px 1px 4px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow, 0 0 #0000),
    var(--tw-ring-shadow, 0 0 #0000),
    var(--tw-shadow);
}
.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.outline {
  outline-style: solid;
}
.outline-offset-1 {
  outline-offset: 1px;
}
.outline-primary {
  outline-color: color-mix(in srgb, var(--p-primary-color) calc(100% * 1), transparent);
}
.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.drop-shadow {
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.grayscale {
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.backdrop-filter {
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.transition {
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.duration-300 {
  transition-duration: 300ms;
}
.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}
.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
.border-surface {
  border-color: var(--p-content-border-color);
}
.bg-highlight {
  background: var(--p-highlight-background);
  color: var(--p-highlight-color);
}
.rounded-border {
  border-radius: var(--p-content-border-radius);
}
.text-color {
  color: var(--p-text-color);
}
.text-muted-color {
  color: var(--p-text-muted-color);
}
@keyframes enter {
  from {
    opacity: var(--p-enter-opacity, 1);
    transform: translate3d(var(--p-enter-translate-x, 0), var(--p-enter-translate-y, 0), 0) scale3d(var(--p-enter-scale, 1), var(--p-enter-scale, 1), var(--p-enter-scale, 1)) rotate(var(--p-enter-rotate, 0));
  }
}
@keyframes leave {
  to {
    opacity: var(--p-leave-opacity, 1);
    transform: translate3d(var(--p-leave-translate-x, 0), var(--p-leave-translate-y, 0), 0) scale3d(var(--p-leave-scale, 1), var(--p-leave-scale, 1), var(--p-leave-scale, 1)) rotate(var(--p-leave-rotate, 0));
  }
}
:root {
  --primary-color: var(--p-primary-color);
  --primary-contrast-color: var(--p-primary-contrast-color);
  --text-color: var(--p-text-color);
  --text-color-secondary: var(--p-text-muted-color);
  --surface-border: var(--p-content-border-color);
  --surface-card: var(--p-content-background);
  --surface-hover: var(--p-content-hover-background);
  --surface-overlay: var(--p-overlay-popover-background);
  --transition-duration: var(--p-transition-duration);
  --maskbg: var(--p-mask-background);
  --content-border-radius: var(--p-content-border-radius);
  --layout-section-transition-duration: 0.2s;
  --element-transition-duration: var(--p-transition-duration);
  --focus-ring-width: var(--p-focus-ring-width);
  --focus-ring-style: var(--p-focus-ring-style);
  --focus-ring-color: var(--p-focus-ring-color);
  --focus-ring-offset: var(--p-focus-ring-offset);
  --focus-ring-shadow: var(--p-focus-ring-shadow);
  --surface-ground: var(--p-surface-100);
  --code-background: var(--p-surface-900);
  --code-color: var(--p-surface-200);
}
:root[class*=app-dark] {
  --surface-ground: var(--p-surface-950);
  --code-background: var(--p-surface-800);
  --code-color: var(--p-surface-100);
}
.preloader {
  position: fixed;
  z-index: 999999;
  background: #edf1f5;
  width: 100%;
  height: 100%;
}
.preloader-content {
  border: 0 solid transparent;
  border-radius: 50%;
  width: 150px;
  height: 150px;
  position: absolute;
  top: calc(50vh - 75px);
  left: calc(50vw - 75px);
}
.preloader-content:before,
.preloader-content:after {
  content: "";
  border: 1em solid var(--primary-color);
  border-radius: 50%;
  width: inherit;
  height: inherit;
  position: absolute;
  top: 0;
  left: 0;
  animation: loader 2s linear infinite;
  opacity: 0;
}
.preloader-content:before {
  animation-delay: 0.5s;
}
@keyframes loader {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
html {
  height: 100%;
  font-size: 14px;
}
body {
  font-family: "Lato", sans-serif;
  color: var(--text-color);
  background-color: var(--surface-ground);
  margin: 0;
  padding: 0;
  min-height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.2;
}
a {
  text-decoration: none;
}
.layout-wrapper {
  min-height: 100vh;
}
.layout-main-container {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  justify-content: space-between;
  padding: 6rem 2rem 0 2rem;
  transition: margin-left var(--layout-section-transition-duration);
}
.layout-main {
  flex: 1 1 auto;
  padding-bottom: 2rem;
}
.layout-topbar {
  position: fixed;
  height: 4rem;
  z-index: 997;
  left: 0;
  top: 0;
  width: 100%;
  padding: 0 2rem;
  background-color: var(--surface-card);
  transition: left var(--layout-section-transition-duration);
  display: flex;
  align-items: center;
}
.layout-topbar .layout-topbar-logo-container {
  width: 20rem;
  display: flex;
  align-items: center;
}
.layout-topbar .layout-topbar-logo {
  display: inline-flex;
  align-items: center;
  font-size: 1.5rem;
  border-radius: var(--content-border-radius);
  color: var(--text-color);
  font-weight: 500;
  gap: 0.5rem;
}
.layout-topbar .layout-topbar-logo svg {
  width: 3rem;
}
.layout-topbar .layout-topbar-logo:focus-visible {
  outline-width: var(--focus-ring-width);
  outline-style: var(--focus-ring-style);
  outline-color: var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
  box-shadow: var(--focus-ring-shadow);
  transition: box-shadow var(--transition-duration), outline-color var(--transition-duration);
}
.layout-topbar .layout-topbar-action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: var(--text-color-secondary);
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  color: var(--text-color);
  transition: background-color var(--element-transition-duration);
  cursor: pointer;
}
.layout-topbar .layout-topbar-action:hover {
  background-color: var(--surface-hover);
}
.layout-topbar .layout-topbar-action:focus-visible {
  outline-width: var(--focus-ring-width);
  outline-style: var(--focus-ring-style);
  outline-color: var(--focus-ring-color);
  outline-offset: var(--focus-ring-offset);
  box-shadow: var(--focus-ring-shadow);
  transition: box-shadow var(--transition-duration), outline-color var(--transition-duration);
}
.layout-topbar .layout-topbar-action i {
  font-size: 1.25rem;
}
.layout-topbar .layout-topbar-action span {
  font-size: 1rem;
  display: none;
}
.layout-topbar .layout-topbar-action.layout-topbar-action-highlight {
  background-color: var(--primary-color);
  color: var(--primary-contrast-color);
}
.layout-topbar .layout-menu-button {
  margin-right: 0.5rem;
}
.layout-topbar .layout-topbar-menu-button {
  display: none;
}
.layout-topbar .layout-topbar-actions {
  margin-left: auto;
  display: flex;
  gap: 1rem;
}
.layout-topbar .layout-topbar-menu-content {
  display: flex;
  gap: 1rem;
}
.layout-topbar .layout-config-menu {
  display: flex;
  gap: 1rem;
}
@media (max-width: 991px) {
  .layout-topbar {
    padding: 0 2rem;
  }
  .layout-topbar .layout-topbar-logo-container {
    width: auto;
  }
  .layout-topbar .layout-menu-button {
    margin-left: 0;
    margin-right: 0.5rem;
  }
  .layout-topbar .layout-topbar-menu-button {
    display: inline-flex;
  }
  .layout-topbar .layout-topbar-menu {
    position: absolute;
    background-color: var(--surface-overlay);
    transform-origin: top;
    box-shadow:
      0px 3px 5px rgba(0, 0, 0, 0.02),
      0px 0px 2px rgba(0, 0, 0, 0.05),
      0px 1px 4px rgba(0, 0, 0, 0.08);
    border-radius: var(--content-border-radius);
    padding: 1rem;
    right: 2rem;
    top: 4rem;
    min-width: 15rem;
    border: 1px solid var(--surface-border);
  }
  .layout-topbar .layout-topbar-menu .layout-topbar-menu-content {
    gap: 0.5rem;
  }
  .layout-topbar .layout-topbar-menu .layout-topbar-action {
    display: flex;
    width: 100%;
    height: auto;
    justify-content: flex-start;
    border-radius: var(--content-border-radius);
    padding: 0.5rem 1rem;
  }
  .layout-topbar .layout-topbar-menu .layout-topbar-action i {
    font-size: 1rem;
    margin-right: 0.5rem;
  }
  .layout-topbar .layout-topbar-menu .layout-topbar-action span {
    font-weight: medium;
    display: block;
  }
  .layout-topbar .layout-topbar-menu-content {
    flex-direction: column;
  }
}
.layout-sidebar {
  position: fixed;
  width: 20rem;
  height: calc(100vh - 8rem);
  z-index: 999;
  overflow-y: auto;
  -webkit-user-select: none;
  user-select: none;
  top: 6rem;
  left: 2rem;
  transition: transform var(--layout-section-transition-duration), left var(--layout-section-transition-duration);
  background-color: var(--surface-overlay);
  border-radius: var(--content-border-radius);
  padding: 0.5rem 1.5rem;
}
.layout-menu {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.layout-menu .layout-root-menuitem > .layout-menuitem-root-text {
  font-size: 0.857rem;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--text-color);
  margin: 0.75rem 0;
}
.layout-menu .layout-root-menuitem > a {
  display: none;
}
.layout-menu a {
  -webkit-user-select: none;
  user-select: none;
}
.layout-menu a.active-menuitem > .layout-submenu-toggler {
  transform: rotate(-180deg);
}
.layout-menu li.active-menuitem > a .layout-submenu-toggler {
  transform: rotate(-180deg);
}
.layout-menu ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.layout-menu ul a {
  display: flex;
  align-items: center;
  position: relative;
  outline: 0 none;
  color: var(--text-color);
  cursor: pointer;
  padding: 0.75rem 1rem;
  border-radius: var(--content-border-radius);
  transition: background-color var(--element-transition-duration), box-shadow var(--element-transition-duration);
}
.layout-menu ul a .layout-menuitem-icon {
  margin-right: 0.5rem;
}
.layout-menu ul a .layout-submenu-toggler {
  font-size: 75%;
  margin-left: auto;
  transition: transform var(--element-transition-duration);
}
.layout-menu ul a.active-route {
  font-weight: 700;
  color: var(--primary-color);
}
.layout-menu ul a:hover {
  background-color: var(--surface-hover);
}
.layout-menu ul a:focus {
  outline-offset: -1px;
  box-shadow: inset var(--focus-ring-shadow);
}
.layout-menu ul ul {
  overflow: hidden;
  border-radius: var(--content-border-radius);
}
.layout-menu ul ul li a {
  margin-left: 1rem;
}
.layout-menu ul ul li li a {
  margin-left: 2rem;
}
.layout-menu ul ul li li li a {
  margin-left: 2.5rem;
}
.layout-menu ul ul li li li li a {
  margin-left: 3rem;
}
.layout-menu ul ul li li li li li a {
  margin-left: 3.5rem;
}
.layout-menu ul ul li li li li li li a {
  margin-left: 4rem;
}
.layout-submenu-enter-from,
.layout-submenu-leave-to {
  max-height: 0;
}
.layout-submenu-enter-to,
.layout-submenu-leave-from {
  max-height: 1000px;
}
.layout-submenu-leave-active {
  overflow: hidden;
  transition: max-height 0.45s cubic-bezier(0, 1, 0, 1);
}
.layout-submenu-enter-active {
  overflow: hidden;
  transition: max-height 1s ease-in-out;
}
.layout-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 0 1rem 0;
  gap: 0.5rem;
  border-top: 1px solid var(--surface-border);
}
@media screen and (min-width: 1960px) {
  .layout-main,
  .landing-wrapper {
    width: 1504px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media (min-width: 992px) {
  .layout-wrapper.layout-overlay .layout-main-container {
    margin-left: 0;
    padding-left: 2rem;
  }
  .layout-wrapper.layout-overlay .layout-sidebar {
    transform: translateX(-100%);
    left: 0;
    top: 0;
    height: 100vh;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-right: 1px solid var(--surface-border);
    transition: transform 0.4s cubic-bezier(0.05, 0.74, 0.2, 0.99), left 0.4s cubic-bezier(0.05, 0.74, 0.2, 0.99);
    box-shadow:
      0px 3px 5px rgba(0, 0, 0, 0.02),
      0px 0px 2px rgba(0, 0, 0, 0.05),
      0px 1px 4px rgba(0, 0, 0, 0.08);
  }
  .layout-wrapper.layout-overlay.layout-overlay-active .layout-sidebar {
    transform: translateX(0);
  }
  .layout-wrapper.layout-static .layout-main-container {
    margin-left: 22rem;
  }
  .layout-wrapper.layout-static.layout-static-inactive .layout-sidebar {
    transform: translateX(-100%);
    left: 0;
  }
  .layout-wrapper.layout-static.layout-static-inactive .layout-main-container {
    margin-left: 0;
    padding-left: 2rem;
  }
  .layout-wrapper .layout-mask {
    display: none;
  }
}
@media (max-width: 991px) {
  .blocked-scroll {
    overflow: hidden;
  }
  .layout-wrapper .layout-main-container {
    margin-left: 0;
    padding-left: 2rem;
  }
  .layout-wrapper .layout-sidebar {
    transform: translateX(-100%);
    left: 0;
    top: 0;
    height: 100vh;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    transition: transform 0.4s cubic-bezier(0.05, 0.74, 0.2, 0.99), left 0.4s cubic-bezier(0.05, 0.74, 0.2, 0.99);
  }
  .layout-wrapper .layout-mask {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
    width: 100%;
    height: 100%;
    background-color: var(--maskbg);
  }
  .layout-wrapper.layout-mobile-active .layout-sidebar {
    transform: translateX(0);
  }
  .layout-wrapper.layout-mobile-active .layout-mask {
    display: block;
  }
}
.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}
.card {
  background: var(--surface-card);
  padding: 2rem;
  margin-bottom: 2rem;
  border-radius: var(--content-border-radius);
}
.card:last-child {
  margin-bottom: 0;
}
.p-toast.p-toast-top-right,
.p-toast.p-toast-top-left,
.p-toast.p-toast-top-center {
  top: 100px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 1.5rem 0 1rem 0;
  font-family: inherit;
  font-weight: 700;
  line-height: 1.5;
  color: var(--text-color);
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}
h1 {
  font-size: 2.5rem;
}
h2 {
  font-size: 2rem;
}
h3 {
  font-size: 1.75rem;
}
h4 {
  font-size: 1.5rem;
}
h5 {
  font-size: 1.25rem;
}
h6 {
  font-size: 1rem;
}
mark {
  background: #fff8e1;
  padding: 0.25rem 0.4rem;
  border-radius: var(--content-border-radius);
  font-family: monospace;
}
blockquote {
  margin: 1rem 0;
  padding: 0 2rem;
  border-left: 4px solid #90a4ae;
}
hr {
  border-top: solid var(--surface-border);
  border-width: 1px 0 0 0;
  margin: 1rem 0;
}
p {
  margin: 0 0 1rem 0;
  line-height: 1.5;
}
p:last-child {
  margin-bottom: 0;
}
@font-face {
  font-family: "primeicons";
  font-display: block;
  src: url("./media/primeicons.eot");
  src:
    url("./media/primeicons.eot?#iefix") format("embedded-opentype"),
    url("./media/primeicons.woff2") format("woff2"),
    url("./media/primeicons.woff") format("woff"),
    url("./media/primeicons.ttf") format("truetype"),
    url("./media/primeicons.svg?#primeicons") format("svg");
  font-weight: normal;
  font-style: normal;
}
.pi {
  font-family: "primeicons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.pi:before {
  --webkit-backface-visibility:hidden;
  backface-visibility: hidden;
}
.pi-fw {
  width: 1.28571429em;
  text-align: center;
}
.pi-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
@media (prefers-reduced-motion: reduce) {
  .pi-spin {
    -webkit-animation-delay: -1ms;
    animation-delay: -1ms;
    -webkit-animation-duration: 1ms;
    animation-duration: 1ms;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-duration: 0s;
    transition-duration: 0s;
  }
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.pi-folder-plus:before {
  content: "\ea05";
}
.pi-receipt:before {
  content: "\ea06";
}
.pi-asterisk:before {
  content: "\ea07";
}
.pi-face-smile:before {
  content: "\ea08";
}
.pi-pinterest:before {
  content: "\ea09";
}
.pi-expand:before {
  content: "\ea0a";
}
.pi-pen-to-square:before {
  content: "\ea0b";
}
.pi-wave-pulse:before {
  content: "\ea0c";
}
.pi-turkish-lira:before {
  content: "\ea0d";
}
.pi-spinner-dotted:before {
  content: "\ea0e";
}
.pi-crown:before {
  content: "\ea0f";
}
.pi-pause-circle:before {
  content: "\ea10";
}
.pi-warehouse:before {
  content: "\ea11";
}
.pi-objects-column:before {
  content: "\ea12";
}
.pi-clipboard:before {
  content: "\ea13";
}
.pi-play-circle:before {
  content: "\ea14";
}
.pi-venus:before {
  content: "\ea15";
}
.pi-cart-minus:before {
  content: "\ea16";
}
.pi-file-plus:before {
  content: "\ea17";
}
.pi-microchip:before {
  content: "\ea18";
}
.pi-twitch:before {
  content: "\ea19";
}
.pi-building-columns:before {
  content: "\ea1a";
}
.pi-file-check:before {
  content: "\ea1b";
}
.pi-microchip-ai:before {
  content: "\ea1c";
}
.pi-trophy:before {
  content: "\ea1d";
}
.pi-barcode:before {
  content: "\ea1e";
}
.pi-file-arrow-up:before {
  content: "\ea1f";
}
.pi-mars:before {
  content: "\ea20";
}
.pi-tiktok:before {
  content: "\ea21";
}
.pi-arrow-up-right-and-arrow-down-left-from-center:before {
  content: "\ea22";
}
.pi-ethereum:before {
  content: "\ea23";
}
.pi-list-check:before {
  content: "\ea24";
}
.pi-thumbtack:before {
  content: "\ea25";
}
.pi-arrow-down-left-and-arrow-up-right-to-center:before {
  content: "\ea26";
}
.pi-equals:before {
  content: "\ea27";
}
.pi-lightbulb:before {
  content: "\ea28";
}
.pi-star-half:before {
  content: "\ea29";
}
.pi-address-book:before {
  content: "\ea2a";
}
.pi-chart-scatter:before {
  content: "\ea2b";
}
.pi-indian-rupee:before {
  content: "\ea2c";
}
.pi-star-half-fill:before {
  content: "\ea2d";
}
.pi-cart-arrow-down:before {
  content: "\ea2e";
}
.pi-calendar-clock:before {
  content: "\ea2f";
}
.pi-sort-up-fill:before {
  content: "\ea30";
}
.pi-sparkles:before {
  content: "\ea31";
}
.pi-bullseye:before {
  content: "\ea32";
}
.pi-sort-down-fill:before {
  content: "\ea33";
}
.pi-graduation-cap:before {
  content: "\ea34";
}
.pi-hammer:before {
  content: "\ea35";
}
.pi-bell-slash:before {
  content: "\ea36";
}
.pi-gauge:before {
  content: "\ea37";
}
.pi-shop:before {
  content: "\ea38";
}
.pi-headphones:before {
  content: "\ea39";
}
.pi-eraser:before {
  content: "\ea04";
}
.pi-stopwatch:before {
  content: "\ea01";
}
.pi-verified:before {
  content: "\ea02";
}
.pi-delete-left:before {
  content: "\ea03";
}
.pi-hourglass:before {
  content: "\e9fe";
}
.pi-truck:before {
  content: "\ea00";
}
.pi-wrench:before {
  content: "\e9ff";
}
.pi-microphone:before {
  content: "\e9fa";
}
.pi-megaphone:before {
  content: "\e9fb";
}
.pi-arrow-right-arrow-left:before {
  content: "\e9fc";
}
.pi-bitcoin:before {
  content: "\e9fd";
}
.pi-file-edit:before {
  content: "\e9f6";
}
.pi-language:before {
  content: "\e9f7";
}
.pi-file-export:before {
  content: "\e9f8";
}
.pi-file-import:before {
  content: "\e9f9";
}
.pi-file-word:before {
  content: "\e9f1";
}
.pi-gift:before {
  content: "\e9f2";
}
.pi-cart-plus:before {
  content: "\e9f3";
}
.pi-thumbs-down-fill:before {
  content: "\e9f4";
}
.pi-thumbs-up-fill:before {
  content: "\e9f5";
}
.pi-arrows-alt:before {
  content: "\e9f0";
}
.pi-calculator:before {
  content: "\e9ef";
}
.pi-sort-alt-slash:before {
  content: "\e9ee";
}
.pi-arrows-h:before {
  content: "\e9ec";
}
.pi-arrows-v:before {
  content: "\e9ed";
}
.pi-pound:before {
  content: "\e9eb";
}
.pi-prime:before {
  content: "\e9ea";
}
.pi-chart-pie:before {
  content: "\e9e9";
}
.pi-reddit:before {
  content: "\e9e8";
}
.pi-code:before {
  content: "\e9e7";
}
.pi-sync:before {
  content: "\e9e6";
}
.pi-shopping-bag:before {
  content: "\e9e5";
}
.pi-server:before {
  content: "\e9e4";
}
.pi-database:before {
  content: "\e9e3";
}
.pi-hashtag:before {
  content: "\e9e2";
}
.pi-bookmark-fill:before {
  content: "\e9df";
}
.pi-filter-fill:before {
  content: "\e9e0";
}
.pi-heart-fill:before {
  content: "\e9e1";
}
.pi-flag-fill:before {
  content: "\e9de";
}
.pi-circle:before {
  content: "\e9dc";
}
.pi-circle-fill:before {
  content: "\e9dd";
}
.pi-bolt:before {
  content: "\e9db";
}
.pi-history:before {
  content: "\e9da";
}
.pi-box:before {
  content: "\e9d9";
}
.pi-at:before {
  content: "\e9d8";
}
.pi-arrow-up-right:before {
  content: "\e9d4";
}
.pi-arrow-up-left:before {
  content: "\e9d5";
}
.pi-arrow-down-left:before {
  content: "\e9d6";
}
.pi-arrow-down-right:before {
  content: "\e9d7";
}
.pi-telegram:before {
  content: "\e9d3";
}
.pi-stop-circle:before {
  content: "\e9d2";
}
.pi-stop:before {
  content: "\e9d1";
}
.pi-whatsapp:before {
  content: "\e9d0";
}
.pi-building:before {
  content: "\e9cf";
}
.pi-qrcode:before {
  content: "\e9ce";
}
.pi-car:before {
  content: "\e9cd";
}
.pi-instagram:before {
  content: "\e9cc";
}
.pi-linkedin:before {
  content: "\e9cb";
}
.pi-send:before {
  content: "\e9ca";
}
.pi-slack:before {
  content: "\e9c9";
}
.pi-sun:before {
  content: "\e9c8";
}
.pi-moon:before {
  content: "\e9c7";
}
.pi-vimeo:before {
  content: "\e9c6";
}
.pi-youtube:before {
  content: "\e9c5";
}
.pi-flag:before {
  content: "\e9c4";
}
.pi-wallet:before {
  content: "\e9c3";
}
.pi-map:before {
  content: "\e9c2";
}
.pi-link:before {
  content: "\e9c1";
}
.pi-credit-card:before {
  content: "\e9bf";
}
.pi-discord:before {
  content: "\e9c0";
}
.pi-percentage:before {
  content: "\e9be";
}
.pi-euro:before {
  content: "\e9bd";
}
.pi-book:before {
  content: "\e9ba";
}
.pi-shield:before {
  content: "\e9b9";
}
.pi-paypal:before {
  content: "\e9bb";
}
.pi-amazon:before {
  content: "\e9bc";
}
.pi-phone:before {
  content: "\e9b8";
}
.pi-filter-slash:before {
  content: "\e9b7";
}
.pi-facebook:before {
  content: "\e9b4";
}
.pi-github:before {
  content: "\e9b5";
}
.pi-twitter:before {
  content: "\e9b6";
}
.pi-step-backward-alt:before {
  content: "\e9ac";
}
.pi-step-forward-alt:before {
  content: "\e9ad";
}
.pi-forward:before {
  content: "\e9ae";
}
.pi-backward:before {
  content: "\e9af";
}
.pi-fast-backward:before {
  content: "\e9b0";
}
.pi-fast-forward:before {
  content: "\e9b1";
}
.pi-pause:before {
  content: "\e9b2";
}
.pi-play:before {
  content: "\e9b3";
}
.pi-compass:before {
  content: "\e9ab";
}
.pi-id-card:before {
  content: "\e9aa";
}
.pi-ticket:before {
  content: "\e9a9";
}
.pi-file-o:before {
  content: "\e9a8";
}
.pi-reply:before {
  content: "\e9a7";
}
.pi-directions-alt:before {
  content: "\e9a5";
}
.pi-directions:before {
  content: "\e9a6";
}
.pi-thumbs-up:before {
  content: "\e9a3";
}
.pi-thumbs-down:before {
  content: "\e9a4";
}
.pi-sort-numeric-down-alt:before {
  content: "\e996";
}
.pi-sort-numeric-up-alt:before {
  content: "\e997";
}
.pi-sort-alpha-down-alt:before {
  content: "\e998";
}
.pi-sort-alpha-up-alt:before {
  content: "\e999";
}
.pi-sort-numeric-down:before {
  content: "\e99a";
}
.pi-sort-numeric-up:before {
  content: "\e99b";
}
.pi-sort-alpha-down:before {
  content: "\e99c";
}
.pi-sort-alpha-up:before {
  content: "\e99d";
}
.pi-sort-alt:before {
  content: "\e99e";
}
.pi-sort-amount-up:before {
  content: "\e99f";
}
.pi-sort-amount-down:before {
  content: "\e9a0";
}
.pi-sort-amount-down-alt:before {
  content: "\e9a1";
}
.pi-sort-amount-up-alt:before {
  content: "\e9a2";
}
.pi-palette:before {
  content: "\e995";
}
.pi-undo:before {
  content: "\e994";
}
.pi-desktop:before {
  content: "\e993";
}
.pi-sliders-v:before {
  content: "\e991";
}
.pi-sliders-h:before {
  content: "\e992";
}
.pi-search-plus:before {
  content: "\e98f";
}
.pi-search-minus:before {
  content: "\e990";
}
.pi-file-excel:before {
  content: "\e98e";
}
.pi-file-pdf:before {
  content: "\e98d";
}
.pi-check-square:before {
  content: "\e98c";
}
.pi-chart-line:before {
  content: "\e98b";
}
.pi-user-edit:before {
  content: "\e98a";
}
.pi-exclamation-circle:before {
  content: "\e989";
}
.pi-android:before {
  content: "\e985";
}
.pi-google:before {
  content: "\e986";
}
.pi-apple:before {
  content: "\e987";
}
.pi-microsoft:before {
  content: "\e988";
}
.pi-heart:before {
  content: "\e984";
}
.pi-mobile:before {
  content: "\e982";
}
.pi-tablet:before {
  content: "\e983";
}
.pi-key:before {
  content: "\e981";
}
.pi-shopping-cart:before {
  content: "\e980";
}
.pi-comments:before {
  content: "\e97e";
}
.pi-comment:before {
  content: "\e97f";
}
.pi-briefcase:before {
  content: "\e97d";
}
.pi-bell:before {
  content: "\e97c";
}
.pi-paperclip:before {
  content: "\e97b";
}
.pi-share-alt:before {
  content: "\e97a";
}
.pi-envelope:before {
  content: "\e979";
}
.pi-volume-down:before {
  content: "\e976";
}
.pi-volume-up:before {
  content: "\e977";
}
.pi-volume-off:before {
  content: "\e978";
}
.pi-eject:before {
  content: "\e975";
}
.pi-money-bill:before {
  content: "\e974";
}
.pi-images:before {
  content: "\e973";
}
.pi-image:before {
  content: "\e972";
}
.pi-sign-in:before {
  content: "\e970";
}
.pi-sign-out:before {
  content: "\e971";
}
.pi-wifi:before {
  content: "\e96f";
}
.pi-sitemap:before {
  content: "\e96e";
}
.pi-chart-bar:before {
  content: "\e96d";
}
.pi-camera:before {
  content: "\e96c";
}
.pi-dollar:before {
  content: "\e96b";
}
.pi-lock-open:before {
  content: "\e96a";
}
.pi-table:before {
  content: "\e969";
}
.pi-map-marker:before {
  content: "\e968";
}
.pi-list:before {
  content: "\e967";
}
.pi-eye-slash:before {
  content: "\e965";
}
.pi-eye:before {
  content: "\e966";
}
.pi-folder-open:before {
  content: "\e964";
}
.pi-folder:before {
  content: "\e963";
}
.pi-video:before {
  content: "\e962";
}
.pi-inbox:before {
  content: "\e961";
}
.pi-lock:before {
  content: "\e95f";
}
.pi-unlock:before {
  content: "\e960";
}
.pi-tags:before {
  content: "\e95d";
}
.pi-tag:before {
  content: "\e95e";
}
.pi-power-off:before {
  content: "\e95c";
}
.pi-save:before {
  content: "\e95b";
}
.pi-question-circle:before {
  content: "\e959";
}
.pi-question:before {
  content: "\e95a";
}
.pi-copy:before {
  content: "\e957";
}
.pi-file:before {
  content: "\e958";
}
.pi-clone:before {
  content: "\e955";
}
.pi-calendar-times:before {
  content: "\e952";
}
.pi-calendar-minus:before {
  content: "\e953";
}
.pi-calendar-plus:before {
  content: "\e954";
}
.pi-ellipsis-v:before {
  content: "\e950";
}
.pi-ellipsis-h:before {
  content: "\e951";
}
.pi-bookmark:before {
  content: "\e94e";
}
.pi-globe:before {
  content: "\e94f";
}
.pi-replay:before {
  content: "\e94d";
}
.pi-filter:before {
  content: "\e94c";
}
.pi-print:before {
  content: "\e94b";
}
.pi-align-right:before {
  content: "\e946";
}
.pi-align-left:before {
  content: "\e947";
}
.pi-align-center:before {
  content: "\e948";
}
.pi-align-justify:before {
  content: "\e949";
}
.pi-cog:before {
  content: "\e94a";
}
.pi-cloud-download:before {
  content: "\e943";
}
.pi-cloud-upload:before {
  content: "\e944";
}
.pi-cloud:before {
  content: "\e945";
}
.pi-pencil:before {
  content: "\e942";
}
.pi-users:before {
  content: "\e941";
}
.pi-clock:before {
  content: "\e940";
}
.pi-user-minus:before {
  content: "\e93e";
}
.pi-user-plus:before {
  content: "\e93f";
}
.pi-trash:before {
  content: "\e93d";
}
.pi-external-link:before {
  content: "\e93c";
}
.pi-window-maximize:before {
  content: "\e93b";
}
.pi-window-minimize:before {
  content: "\e93a";
}
.pi-refresh:before {
  content: "\e938";
}
.pi-user:before {
  content: "\e939";
}
.pi-exclamation-triangle:before {
  content: "\e922";
}
.pi-calendar:before {
  content: "\e927";
}
.pi-chevron-circle-left:before {
  content: "\e928";
}
.pi-chevron-circle-down:before {
  content: "\e929";
}
.pi-chevron-circle-right:before {
  content: "\e92a";
}
.pi-chevron-circle-up:before {
  content: "\e92b";
}
.pi-angle-double-down:before {
  content: "\e92c";
}
.pi-angle-double-left:before {
  content: "\e92d";
}
.pi-angle-double-right:before {
  content: "\e92e";
}
.pi-angle-double-up:before {
  content: "\e92f";
}
.pi-angle-down:before {
  content: "\e930";
}
.pi-angle-left:before {
  content: "\e931";
}
.pi-angle-right:before {
  content: "\e932";
}
.pi-angle-up:before {
  content: "\e933";
}
.pi-upload:before {
  content: "\e934";
}
.pi-download:before {
  content: "\e956";
}
.pi-ban:before {
  content: "\e935";
}
.pi-star-fill:before {
  content: "\e936";
}
.pi-star:before {
  content: "\e937";
}
.pi-chevron-left:before {
  content: "\e900";
}
.pi-chevron-right:before {
  content: "\e901";
}
.pi-chevron-down:before {
  content: "\e902";
}
.pi-chevron-up:before {
  content: "\e903";
}
.pi-caret-left:before {
  content: "\e904";
}
.pi-caret-right:before {
  content: "\e905";
}
.pi-caret-down:before {
  content: "\e906";
}
.pi-caret-up:before {
  content: "\e907";
}
.pi-search:before {
  content: "\e908";
}
.pi-check:before {
  content: "\e909";
}
.pi-check-circle:before {
  content: "\e90a";
}
.pi-times:before {
  content: "\e90b";
}
.pi-times-circle:before {
  content: "\e90c";
}
.pi-plus:before {
  content: "\e90d";
}
.pi-plus-circle:before {
  content: "\e90e";
}
.pi-minus:before {
  content: "\e90f";
}
.pi-minus-circle:before {
  content: "\e910";
}
.pi-circle-on:before {
  content: "\e911";
}
.pi-circle-off:before {
  content: "\e912";
}
.pi-sort-down:before {
  content: "\e913";
}
.pi-sort-up:before {
  content: "\e914";
}
.pi-sort:before {
  content: "\e915";
}
.pi-step-backward:before {
  content: "\e916";
}
.pi-step-forward:before {
  content: "\e917";
}
.pi-th-large:before {
  content: "\e918";
}
.pi-arrow-down:before {
  content: "\e919";
}
.pi-arrow-left:before {
  content: "\e91a";
}
.pi-arrow-right:before {
  content: "\e91b";
}
.pi-arrow-up:before {
  content: "\e91c";
}
.pi-bars:before {
  content: "\e91d";
}
.pi-arrow-circle-down:before {
  content: "\e91e";
}
.pi-arrow-circle-left:before {
  content: "\e91f";
}
.pi-arrow-circle-right:before {
  content: "\e920";
}
.pi-arrow-circle-up:before {
  content: "\e921";
}
.pi-info:before {
  content: "\e923";
}
.pi-info-circle:before {
  content: "\e924";
}
.pi-home:before {
  content: "\e925";
}
.pi-spinner:before {
  content: "\e926";
}
pre.app-code {
  background-color: var(--code-background);
  margin: 0 0 1rem 0;
  padding: 0;
  border-radius: var(--content-border-radius);
  overflow: auto;
}
pre.app-code code {
  color: var(--code-color);
  padding: 1rem;
  margin: 0;
  line-height: 1.5;
  display: block;
  font-weight: semibold;
  font-family:
    monaco,
    Consolas,
    monospace;
}
span.flag {
  width: 44px;
  height: 30px;
  display: inline-block;
}
img.flag {
  width: 30px;
}
.flag {
  background: url("./media/flags_responsive.png") no-repeat;
  background-size: 100%;
  vertical-align: middle;
}
.flag-ad {
  background-position: 0 0.413223%;
}
.flag-ae {
  background-position: 0 0.826446%;
}
.flag-af {
  background-position: 0 1.239669%;
}
.flag-ag {
  background-position: 0 1.652893%;
}
.flag-ai {
  background-position: 0 2.066116%;
}
.flag-al {
  background-position: 0 2.479339%;
}
.flag-am {
  background-position: 0 2.892562%;
}
.flag-an {
  background-position: 0 3.305785%;
}
.flag-ao {
  background-position: 0 3.719008%;
}
.flag-aq {
  background-position: 0 4.132231%;
}
.flag-ar {
  background-position: 0 4.545455%;
}
.flag-as {
  background-position: 0 4.958678%;
}
.flag-at {
  background-position: 0 5.371901%;
}
.flag-au {
  background-position: 0 5.785124%;
}
.flag-aw {
  background-position: 0 6.198347%;
}
.flag-az {
  background-position: 0 6.61157%;
}
.flag-ba {
  background-position: 0 7.024793%;
}
.flag-bb {
  background-position: 0 7.438017%;
}
.flag-bd {
  background-position: 0 7.85124%;
}
.flag-be {
  background-position: 0 8.264463%;
}
.flag-bf {
  background-position: 0 8.677686%;
}
.flag-bg {
  background-position: 0 9.090909%;
}
.flag-bh {
  background-position: 0 9.504132%;
}
.flag-bi {
  background-position: 0 9.917355%;
}
.flag-bj {
  background-position: 0 10.330579%;
}
.flag-bm {
  background-position: 0 10.743802%;
}
.flag-bn {
  background-position: 0 11.157025%;
}
.flag-bo {
  background-position: 0 11.570248%;
}
.flag-br {
  background-position: 0 11.983471%;
}
.flag-bs {
  background-position: 0 12.396694%;
}
.flag-bt {
  background-position: 0 12.809917%;
}
.flag-bv {
  background-position: 0 13.22314%;
}
.flag-bw {
  background-position: 0 13.636364%;
}
.flag-by {
  background-position: 0 14.049587%;
}
.flag-bz {
  background-position: 0 14.46281%;
}
.flag-ca {
  background-position: 0 14.876033%;
}
.flag-cc {
  background-position: 0 15.289256%;
}
.flag-cd {
  background-position: 0 15.702479%;
}
.flag-cf {
  background-position: 0 16.115702%;
}
.flag-cg {
  background-position: 0 16.528926%;
}
.flag-ch {
  background-position: 0 16.942149%;
}
.flag-ci {
  background-position: 0 17.355372%;
}
.flag-ck {
  background-position: 0 17.768595%;
}
.flag-cl {
  background-position: 0 18.181818%;
}
.flag-cm {
  background-position: 0 18.595041%;
}
.flag-cn {
  background-position: 0 19.008264%;
}
.flag-co {
  background-position: 0 19.421488%;
}
.flag-cr {
  background-position: 0 19.834711%;
}
.flag-cu {
  background-position: 0 20.247934%;
}
.flag-cv {
  background-position: 0 20.661157%;
}
.flag-cx {
  background-position: 0 21.07438%;
}
.flag-cy {
  background-position: 0 21.487603%;
}
.flag-cz {
  background-position: 0 21.900826%;
}
.flag-de {
  background-position: 0 22.31405%;
}
.flag-dj {
  background-position: 0 22.727273%;
}
.flag-dk {
  background-position: 0 23.140496%;
}
.flag-dm {
  background-position: 0 23.553719%;
}
.flag-do {
  background-position: 0 23.966942%;
}
.flag-dz {
  background-position: 0 24.380165%;
}
.flag-ec {
  background-position: 0 24.793388%;
}
.flag-ee {
  background-position: 0 25.206612%;
}
.flag-eg {
  background-position: 0 25.619835%;
}
.flag-eh {
  background-position: 0 26.033058%;
}
.flag-er {
  background-position: 0 26.446281%;
}
.flag-es {
  background-position: 0 26.859504%;
}
.flag-et {
  background-position: 0 27.272727%;
}
.flag-fi {
  background-position: 0 27.68595%;
}
.flag-fj {
  background-position: 0 28.099174%;
}
.flag-fk {
  background-position: 0 28.512397%;
}
.flag-fm {
  background-position: 0 28.92562%;
}
.flag-fo {
  background-position: 0 29.338843%;
}
.flag-fr {
  background-position: 0 29.752066%;
}
.flag-ga {
  background-position: 0 30.165289%;
}
.flag-gd {
  background-position: 0 30.578512%;
}
.flag-ge {
  background-position: 0 30.991736%;
}
.flag-gf {
  background-position: 0 31.404959%;
}
.flag-gh {
  background-position: 0 31.818182%;
}
.flag-gi {
  background-position: 0 32.231405%;
}
.flag-gl {
  background-position: 0 32.644628%;
}
.flag-gm {
  background-position: 0 33.057851%;
}
.flag-gn {
  background-position: 0 33.471074%;
}
.flag-gp {
  background-position: 0 33.884298%;
}
.flag-gq {
  background-position: 0 34.297521%;
}
.flag-gr {
  background-position: 0 34.710744%;
}
.flag-gs {
  background-position: 0 35.123967%;
}
.flag-gt {
  background-position: 0 35.53719%;
}
.flag-gu {
  background-position: 0 35.950413%;
}
.flag-gw {
  background-position: 0 36.363636%;
}
.flag-gy {
  background-position: 0 36.77686%;
}
.flag-hk {
  background-position: 0 37.190083%;
}
.flag-hm {
  background-position: 0 37.603306%;
}
.flag-hn {
  background-position: 0 38.016529%;
}
.flag-hr {
  background-position: 0 38.429752%;
}
.flag-ht {
  background-position: 0 38.842975%;
}
.flag-hu {
  background-position: 0 39.256198%;
}
.flag-id {
  background-position: 0 39.669421%;
}
.flag-ie {
  background-position: 0 40.082645%;
}
.flag-il {
  background-position: 0 40.495868%;
}
.flag-in {
  background-position: 0 40.909091%;
}
.flag-io {
  background-position: 0 41.322314%;
}
.flag-iq {
  background-position: 0 41.735537%;
}
.flag-ir {
  background-position: 0 42.14876%;
}
.flag-is {
  background-position: 0 42.561983%;
}
.flag-it {
  background-position: 0 42.975207%;
}
.flag-jm {
  background-position: 0 43.38843%;
}
.flag-jo {
  background-position: 0 43.801653%;
}
.flag-jp {
  background-position: 0 44.214876%;
}
.flag-ke {
  background-position: 0 44.628099%;
}
.flag-kg {
  background-position: 0 45.041322%;
}
.flag-kh {
  background-position: 0 45.454545%;
}
.flag-ki {
  background-position: 0 45.867769%;
}
.flag-km {
  background-position: 0 46.280992%;
}
.flag-kn {
  background-position: 0 46.694215%;
}
.flag-kp {
  background-position: 0 47.107438%;
}
.flag-kr {
  background-position: 0 47.520661%;
}
.flag-kw {
  background-position: 0 47.933884%;
}
.flag-ky {
  background-position: 0 48.347107%;
}
.flag-kz {
  background-position: 0 48.760331%;
}
.flag-la {
  background-position: 0 49.173554%;
}
.flag-lb {
  background-position: 0 49.586777%;
}
.flag-lc {
  background-position: 0 50%;
}
.flag-li {
  background-position: 0 50.413223%;
}
.flag-lk {
  background-position: 0 50.826446%;
}
.flag-lr {
  background-position: 0 51.239669%;
}
.flag-ls {
  background-position: 0 51.652893%;
}
.flag-lt {
  background-position: 0 52.066116%;
}
.flag-lu {
  background-position: 0 52.479339%;
}
.flag-lv {
  background-position: 0 52.892562%;
}
.flag-ly {
  background-position: 0 53.305785%;
}
.flag-ma {
  background-position: 0 53.719008%;
}
.flag-mc {
  background-position: 0 54.132231%;
}
.flag-md {
  background-position: 0 54.545455%;
}
.flag-me {
  background-position: 0 54.958678%;
}
.flag-mg {
  background-position: 0 55.371901%;
}
.flag-mh {
  background-position: 0 55.785124%;
}
.flag-mk {
  background-position: 0 56.198347%;
}
.flag-ml {
  background-position: 0 56.61157%;
}
.flag-mm {
  background-position: 0 57.024793%;
}
.flag-mn {
  background-position: 0 57.438017%;
}
.flag-mo {
  background-position: 0 57.85124%;
}
.flag-mp {
  background-position: 0 58.264463%;
}
.flag-mq {
  background-position: 0 58.677686%;
}
.flag-mr {
  background-position: 0 59.090909%;
}
.flag-ms {
  background-position: 0 59.504132%;
}
.flag-mt {
  background-position: 0 59.917355%;
}
.flag-mu {
  background-position: 0 60.330579%;
}
.flag-mv {
  background-position: 0 60.743802%;
}
.flag-mw {
  background-position: 0 61.157025%;
}
.flag-mx {
  background-position: 0 61.570248%;
}
.flag-my {
  background-position: 0 61.983471%;
}
.flag-mz {
  background-position: 0 62.396694%;
}
.flag-na {
  background-position: 0 62.809917%;
}
.flag-nc {
  background-position: 0 63.22314%;
}
.flag-ne {
  background-position: 0 63.636364%;
}
.flag-nf {
  background-position: 0 64.049587%;
}
.flag-ng {
  background-position: 0 64.46281%;
}
.flag-ni {
  background-position: 0 64.876033%;
}
.flag-nl {
  background-position: 0 65.289256%;
}
.flag-no {
  background-position: 0 65.702479%;
}
.flag-np {
  background-position: 0 66.115702%;
}
.flag-nr {
  background-position: 0 66.528926%;
}
.flag-nu {
  background-position: 0 66.942149%;
}
.flag-nz {
  background-position: 0 67.355372%;
}
.flag-om {
  background-position: 0 67.768595%;
}
.flag-pa {
  background-position: 0 68.181818%;
}
.flag-pe {
  background-position: 0 68.595041%;
}
.flag-pf {
  background-position: 0 69.008264%;
}
.flag-pg {
  background-position: 0 69.421488%;
}
.flag-ph {
  background-position: 0 69.834711%;
}
.flag-pk {
  background-position: 0 70.247934%;
}
.flag-pl {
  background-position: 0 70.661157%;
}
.flag-pm {
  background-position: 0 71.07438%;
}
.flag-pn {
  background-position: 0 71.487603%;
}
.flag-pr {
  background-position: 0 71.900826%;
}
.flag-pt {
  background-position: 0 72.31405%;
}
.flag-pw {
  background-position: 0 72.727273%;
}
.flag-py {
  background-position: 0 73.140496%;
}
.flag-qa {
  background-position: 0 73.553719%;
}
.flag-re {
  background-position: 0 73.966942%;
}
.flag-ro {
  background-position: 0 74.380165%;
}
.flag-rs {
  background-position: 0 74.793388%;
}
.flag-ru {
  background-position: 0 75.206612%;
}
.flag-rw {
  background-position: 0 75.619835%;
}
.flag-sa {
  background-position: 0 76.033058%;
}
.flag-sb {
  background-position: 0 76.446281%;
}
.flag-sc {
  background-position: 0 76.859504%;
}
.flag-sd {
  background-position: 0 77.272727%;
}
.flag-se {
  background-position: 0 77.68595%;
}
.flag-sg {
  background-position: 0 78.099174%;
}
.flag-sh {
  background-position: 0 78.512397%;
}
.flag-si {
  background-position: 0 78.92562%;
}
.flag-sj {
  background-position: 0 79.338843%;
}
.flag-sk {
  background-position: 0 79.752066%;
}
.flag-sl {
  background-position: 0 80.165289%;
}
.flag-sm {
  background-position: 0 80.578512%;
}
.flag-sn {
  background-position: 0 80.991736%;
}
.flag-so {
  background-position: 0 81.404959%;
}
.flag-sr {
  background-position: 0 81.818182%;
}
.flag-ss {
  background-position: 0 82.231405%;
}
.flag-st {
  background-position: 0 82.644628%;
}
.flag-sv {
  background-position: 0 83.057851%;
}
.flag-sy {
  background-position: 0 83.471074%;
}
.flag-sz {
  background-position: 0 83.884298%;
}
.flag-tc {
  background-position: 0 84.297521%;
}
.flag-td {
  background-position: 0 84.710744%;
}
.flag-tf {
  background-position: 0 85.123967%;
}
.flag-tg {
  background-position: 0 85.53719%;
}
.flag-th {
  background-position: 0 85.950413%;
}
.flag-tj {
  background-position: 0 86.363636%;
}
.flag-tk {
  background-position: 0 86.77686%;
}
.flag-tl {
  background-position: 0 87.190083%;
}
.flag-tm {
  background-position: 0 87.603306%;
}
.flag-tn {
  background-position: 0 88.016529%;
}
.flag-to {
  background-position: 0 88.429752%;
}
.flag-tp {
  background-position: 0 88.842975%;
}
.flag-tr {
  background-position: 0 89.256198%;
}
.flag-tt {
  background-position: 0 89.669421%;
}
.flag-tv {
  background-position: 0 90.082645%;
}
.flag-tw {
  background-position: 0 90.495868%;
}
.flag-ty {
  background-position: 0 90.909091%;
}
.flag-tz {
  background-position: 0 91.322314%;
}
.flag-ua {
  background-position: 0 91.735537%;
}
.flag-ug {
  background-position: 0 92.14876%;
}
.flag-gb,
.flag-uk {
  background-position: 0 92.561983%;
}
.flag-um {
  background-position: 0 92.975207%;
}
.flag-us {
  background-position: 0 93.38843%;
}
.flag-uy {
  background-position: 0 93.801653%;
}
.flag-uz {
  background-position: 0 94.214876%;
}
.flag-va {
  background-position: 0 94.628099%;
}
.flag-vc {
  background-position: 0 95.041322%;
}
.flag-ve {
  background-position: 0 95.454545%;
}
.flag-vg {
  background-position: 0 95.867769%;
}
.flag-vi {
  background-position: 0 96.280992%;
}
.flag-vn {
  background-position: 0 96.694215%;
}
.flag-vu {
  background-position: 0 97.107438%;
}
.flag-wf {
  background-position: 0 97.520661%;
}
.flag-ws {
  background-position: 0 97.933884%;
}
.flag-ye {
  background-position: 0 98.347107%;
}
.flag-za {
  background-position: 0 98.760331%;
}
.flag-zm {
  background-position: 0 99.173554%;
}
.flag-zr {
  background-position: 0 99.586777%;
}
.flag-zw {
  background-position: 0 100%;
}
.hover\:border-primary:hover {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-primary-color) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.hover\:underline:hover {
  text-decoration-line: underline;
}
@media (min-width: 576px) {
  .sm\:order-2 {
    order: 2;
  }
  .sm\:col-span-6 {
    grid-column: span 6 / span 6;
  }
  .sm\:ml-auto {
    margin-left: auto;
  }
  .sm\:flex-row {
    flex-direction: row;
  }
  .sm\:items-start {
    align-items: flex-start;
  }
  .sm\:items-center {
    align-items: center;
  }
  .sm\:px-20 {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
@media (min-width: 768px) {
  .md\:col-span-10 {
    grid-column: span 10 / span 10;
  }
  .md\:col-span-12 {
    grid-column: span 12 / span 12;
  }
  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .md\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .md\:mx-12 {
    margin-left: 3rem;
    margin-right: 3rem;
  }
  .md\:mx-20 {
    margin-left: 5rem;
    margin-right: 5rem;
  }
  .md\:my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .md\:mb-0 {
    margin-bottom: 0px;
  }
  .md\:ml-2 {
    margin-left: 0.5rem;
  }
  .md\:ml-20 {
    margin-left: 5rem;
  }
  .md\:mr-2 {
    margin-right: 0.5rem;
  }
  .md\:mt-0 {
    margin-top: 0px;
  }
  .md\:mt-4 {
    margin-top: 1rem;
  }
  .md\:mt-6 {
    margin-top: 1.5rem;
  }
  .md\:\!flex {
    display: flex !important;
  }
  .md\:\!hidden {
    display: none !important;
  }
  .md\:w-1\/2 {
    width: 50%;
  }
  .md\:w-1\/3 {
    width: 33.333333%;
  }
  .md\:w-2\/12 {
    width: 16.666667%;
  }
  .md\:w-2\/5 {
    width: 40%;
  }
  .md\:w-3\/5 {
    width: 60%;
  }
  .md\:w-40 {
    width: 10rem;
  }
  .md\:w-5\/12 {
    width: 41.666667%;
  }
  .md\:w-\[30rem\] {
    width: 30rem;
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:flex-initial {
    flex: 0 1 auto;
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:flex-col {
    flex-direction: column;
  }
  .md\:items-end {
    align-items: flex-end;
  }
  .md\:items-center {
    align-items: center;
  }
  .md\:justify-start {
    justify-content: flex-start;
  }
  .md\:justify-end {
    justify-content: flex-end;
  }
  .md\:justify-between {
    justify-content: space-between;
  }
  .md\:p-20 {
    padding: 5rem;
  }
  .md\:p-4 {
    padding: 1rem;
  }
  .md\:py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .md\:pb-20 {
    padding-bottom: 5rem;
  }
  .md\:pt-20 {
    padding-top: 5rem;
  }
  .md\:text-left {
    text-align: left;
  }
}
@media (min-width: 992px) {
  .lg\:static {
    position: static;
  }
  .lg\:order-none {
    order: 0;
  }
  .lg\:col-span-4 {
    grid-column: span 4 / span 4;
  }
  .lg\:col-span-6 {
    grid-column: span 6 / span 6;
  }
  .lg\:mx-20 {
    margin-left: 5rem;
    margin-right: 5rem;
  }
  .lg\:mt-0 {
    margin-top: 0px;
  }
  .lg\:block {
    display: block;
  }
  .lg\:flex {
    display: flex;
  }
  .lg\:\!hidden {
    display: none !important;
  }
  .lg\:w-1\/3 {
    width: 33.333333%;
  }
  .lg\:w-2\/3 {
    width: 66.666667%;
  }
  .lg\:w-24 {
    width: 6rem;
  }
  .lg\:flex-row {
    flex-direction: row;
  }
  .lg\:items-start {
    align-items: flex-start;
  }
  .lg\:items-end {
    align-items: flex-end;
  }
  .lg\:items-center {
    align-items: center;
  }
  .lg\:self-start {
    align-self: flex-start;
  }
  .lg\:self-end {
    align-self: flex-end;
  }
  .lg\:border-t-0 {
    border-top-width: 0px;
  }
  .lg\:px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }
  .lg\:px-20 {
    padding-left: 5rem;
    padding-right: 5rem;
  }
  .lg\:py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .lg\:pb-8 {
    padding-bottom: 2rem;
  }
  .lg\:pr-8 {
    padding-right: 2rem;
  }
  .lg\:text-left {
    text-align: left;
  }
  .lg\:text-right {
    text-align: right;
  }
  .lg\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
  .lg\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
@media (min-width: 1200px) {
  .xl\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .xl\:col-span-6 {
    grid-column: span 6 / span 6;
  }
  .xl\:block {
    display: block;
  }
}
.dark\:border-surface-500:where([class=app-dark], [class=app-dark] *) {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-surface-500) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.dark\:border-surface-600:where([class=app-dark], [class=app-dark] *) {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-surface-600) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.dark\:border-surface-700:where([class=app-dark], [class=app-dark] *) {
  --tw-border-opacity: 1;
  border-color: color-mix(in srgb, var(--p-surface-700) calc(100% * var(--tw-border-opacity, 1)), transparent);
}
.dark\:\!bg-surface-900:where([class=app-dark], [class=app-dark] *) {
  --tw-bg-opacity: 1 !important;
  background-color: color-mix(in srgb, var(--p-surface-900) calc(100% * var(--tw-bg-opacity, 1)), transparent) !important;
}
.dark\:bg-blue-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(96 165 250 / 0.1);
}
.dark\:bg-cyan-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(34 211 238 / 0.1);
}
.dark\:bg-green-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(74 222 128 / 0.1);
}
.dark\:bg-orange-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(251 146 60 / 0.1);
}
.dark\:bg-pink-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(244 114 182 / 0.1);
}
.dark\:bg-purple-400\/10:where([class=app-dark], [class=app-dark] *) {
  background-color: rgb(192 132 252 / 0.1);
}
.dark\:bg-surface-500:where([class=app-dark], [class=app-dark] *) {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-500) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.dark\:bg-surface-900:where([class=app-dark], [class=app-dark] *) {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-900) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.dark\:bg-surface-950:where([class=app-dark], [class=app-dark] *) {
  --tw-bg-opacity: 1;
  background-color: color-mix(in srgb, var(--p-surface-950) calc(100% * var(--tw-bg-opacity, 1)), transparent);
}
.dark\:text-surface-0:where([class=app-dark], [class=app-dark] *) {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-0) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.dark\:text-surface-100:where([class=app-dark], [class=app-dark] *) {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-100) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.dark\:text-surface-200:where([class=app-dark], [class=app-dark] *) {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-200) calc(100% * var(--tw-text-opacity, 1)), transparent);
}
.dark\:text-surface-400:where([class=app-dark], [class=app-dark] *) {
  --tw-text-opacity: 1;
  color: color-mix(in srgb, var(--p-surface-400) calc(100% * var(--tw-text-opacity, 1)), transparent);
}

/* 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;
  }
}

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

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

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

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

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

/* src/global.scss */
:root {
  --ion-color-primary: #3880ff;
  --ion-color-primary-rgb:
    56,
    128,
    255;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: #3171e0;
  --ion-color-primary-tint: #4c8dff;
  --ion-color-secondary: #3dc2ff;
  --ion-color-secondary-rgb:
    61,
    194,
    255;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-secondary-shade: #36abe0;
  --ion-color-secondary-tint: #50c8ff;
  --ion-color-tertiary: #5260ff;
  --ion-color-tertiary-rgb:
    82,
    96,
    255;
  --ion-color-tertiary-contrast: #ffffff;
  --ion-color-tertiary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-tertiary-shade: #4854e0;
  --ion-color-tertiary-tint: #6370ff;
  --ion-color-success: #2dd36f;
  --ion-color-success-rgb:
    45,
    211,
    111;
  --ion-color-success-contrast: #ffffff;
  --ion-color-success-contrast-rgb:
    255,
    255,
    255;
  --ion-color-success-shade: #28ba62;
  --ion-color-success-tint: #42d77d;
  --ion-color-warning: #ffc409;
  --ion-color-warning-rgb:
    255,
    196,
    9;
  --ion-color-warning-contrast: #000000;
  --ion-color-warning-contrast-rgb:
    0,
    0,
    0;
  --ion-color-warning-shade: #e0ac08;
  --ion-color-warning-tint: #ffca22;
  --ion-color-danger: #eb445a;
  --ion-color-danger-rgb:
    235,
    68,
    90;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: #cf3c4f;
  --ion-color-danger-tint: #ed576b;
  --ion-color-dark: #222428;
  --ion-color-dark-rgb:
    34,
    36,
    40;
  --ion-color-dark-contrast: #ffffff;
  --ion-color-dark-contrast-rgb:
    255,
    255,
    255;
  --ion-color-dark-shade: #1e2023;
  --ion-color-dark-tint: #383a3e;
  --ion-color-medium: #92949c;
  --ion-color-medium-rgb:
    146,
    148,
    156;
  --ion-color-medium-contrast: #ffffff;
  --ion-color-medium-contrast-rgb:
    255,
    255,
    255;
  --ion-color-medium-shade: #808289;
  --ion-color-medium-tint: #9d9fa6;
  --ion-color-light: #f4f5f8;
  --ion-color-light-rgb:
    244,
    245,
    248;
  --ion-color-light-contrast: #000000;
  --ion-color-light-contrast-rgb:
    0,
    0,
    0;
  --ion-color-light-shade: #d7d8da;
  --ion-color-light-tint: #f5f6f9;
}
@media (prefers-color-scheme: dark) {
  :root {
    --ion-color-primary: #428cff;
    --ion-color-primary-rgb:
      66,140,255;
    --ion-color-primary-contrast: #ffffff;
    --ion-color-primary-contrast-rgb:
      255,255,255;
    --ion-color-primary-shade: #3a7be0;
    --ion-color-primary-tint: #5598ff;
    --ion-color-secondary: #50c8ff;
    --ion-color-secondary-rgb:
      80,200,255;
    --ion-color-secondary-contrast: #ffffff;
    --ion-color-secondary-contrast-rgb:
      255,255,255;
    --ion-color-secondary-shade: #46b0e0;
    --ion-color-secondary-tint: #62ceff;
    --ion-color-tertiary: #6a64ff;
    --ion-color-tertiary-rgb:
      106,100,255;
    --ion-color-tertiary-contrast: #ffffff;
    --ion-color-tertiary-contrast-rgb:
      255,255,255;
    --ion-color-tertiary-shade: #5d58e0;
    --ion-color-tertiary-tint: #7974ff;
    --ion-color-success: #2fdf75;
    --ion-color-success-rgb:
      47,223,117;
    --ion-color-success-contrast: #000000;
    --ion-color-success-contrast-rgb:
      0,0,0;
    --ion-color-success-shade: #29c467;
    --ion-color-success-tint: #44e283;
    --ion-color-warning: #ffd534;
    --ion-color-warning-rgb:
      255,213,52;
    --ion-color-warning-contrast: #000000;
    --ion-color-warning-contrast-rgb:
      0,0,0;
    --ion-color-warning-shade: #e0bb2e;
    --ion-color-warning-tint: #ffd948;
    --ion-color-danger: #ff4961;
    --ion-color-danger-rgb:
      255,73,97;
    --ion-color-danger-contrast: #ffffff;
    --ion-color-danger-contrast-rgb:
      255,255,255;
    --ion-color-danger-shade: #e04055;
    --ion-color-danger-tint: #ff5b71;
    --ion-color-dark: #f4f5f8;
    --ion-color-dark-rgb:
      244,245,248;
    --ion-color-dark-contrast: #000000;
    --ion-color-dark-contrast-rgb:
      0,0,0;
    --ion-color-dark-shade: #d7d8da;
    --ion-color-dark-tint: #f5f6f9;
    --ion-color-medium: #989aa2;
    --ion-color-medium-rgb:
      152,154,162;
    --ion-color-medium-contrast: #000000;
    --ion-color-medium-contrast-rgb:
      0,0,0;
    --ion-color-medium-shade: #86888f;
    --ion-color-medium-tint: #a2a4ab;
    --ion-color-light: #222428;
    --ion-color-light-rgb:
      34,36,40;
    --ion-color-light-contrast: #ffffff;
    --ion-color-light-contrast-rgb:
      255,255,255;
    --ion-color-light-shade: #1e2023;
    --ion-color-light-tint: #383a3e;
  }
  body {
    --ion-color-primary: #428cff;
    --ion-color-primary-rgb:
      66,140,255;
    --ion-color-primary-contrast: #ffffff;
    --ion-color-primary-contrast-rgb:
      255,255,255;
    --ion-color-primary-shade: #3a7be0;
    --ion-color-primary-tint: #5598ff;
    --ion-color-secondary: #50c8ff;
    --ion-color-secondary-rgb:
      80,200,255;
    --ion-color-secondary-contrast: #ffffff;
    --ion-color-secondary-contrast-rgb:
      255,255,255;
    --ion-color-secondary-shade: #46b0e0;
    --ion-color-secondary-tint: #62ceff;
    --ion-color-tertiary: #6a64ff;
    --ion-color-tertiary-rgb:
      106,100,255;
    --ion-color-tertiary-contrast: #ffffff;
    --ion-color-tertiary-contrast-rgb:
      255,255,255;
    --ion-color-tertiary-shade: #5d58e0;
    --ion-color-tertiary-tint: #7974ff;
    --ion-color-success: #2fdf75;
    --ion-color-success-rgb:
      47,223,117;
    --ion-color-success-contrast: #000000;
    --ion-color-success-contrast-rgb:
      0,0,0;
    --ion-color-success-shade: #29c467;
    --ion-color-success-tint: #44e283;
    --ion-color-warning: #ffd534;
    --ion-color-warning-rgb:
      255,213,52;
    --ion-color-warning-contrast: #000000;
    --ion-color-warning-contrast-rgb:
      0,0,0;
    --ion-color-warning-shade: #e0bb2e;
    --ion-color-warning-tint: #ffd948;
    --ion-color-danger: #ff4961;
    --ion-color-danger-rgb:
      255,73,97;
    --ion-color-danger-contrast: #ffffff;
    --ion-color-danger-contrast-rgb:
      255,255,255;
    --ion-color-danger-shade: #e04055;
    --ion-color-danger-tint: #ff5b71;
    --ion-color-dark: #f4f5f8;
    --ion-color-dark-rgb:
      244,245,248;
    --ion-color-dark-contrast: #000000;
    --ion-color-dark-contrast-rgb:
      0,0,0;
    --ion-color-dark-shade: #d7d8da;
    --ion-color-dark-tint: #f5f6f9;
    --ion-color-medium: #989aa2;
    --ion-color-medium-rgb:
      152,154,162;
    --ion-color-medium-contrast: #000000;
    --ion-color-medium-contrast-rgb:
      0,0,0;
    --ion-color-medium-shade: #86888f;
    --ion-color-medium-tint: #a2a4ab;
    --ion-color-light: #222428;
    --ion-color-light-rgb:
      34,36,40;
    --ion-color-light-contrast: #ffffff;
    --ion-color-light-contrast-rgb:
      255,255,255;
    --ion-color-light-shade: #1e2023;
    --ion-color-light-tint: #383a3e;
  }
  .ios body {
    --ion-background-color: #000000;
    --ion-background-color-rgb:
      0,0,0;
    --ion-text-color: #ffffff;
    --ion-text-color-rgb:
      255,255,255;
    --ion-color-step-50: #0d0d0d;
    --ion-color-step-100: #1a1a1a;
    --ion-color-step-150: #262626;
    --ion-color-step-200: #333333;
    --ion-color-step-250: #404040;
    --ion-color-step-300: #4d4d4d;
    --ion-color-step-350: #595959;
    --ion-color-step-400: #666666;
    --ion-color-step-450: #737373;
    --ion-color-step-500: #808080;
    --ion-color-step-550: #8c8c8c;
    --ion-color-step-600: #999999;
    --ion-color-step-650: #a6a6a6;
    --ion-color-step-700: #b3b3b3;
    --ion-color-step-750: #bfbfbf;
    --ion-color-step-800: #cccccc;
    --ion-color-step-850: #d9d9d9;
    --ion-color-step-900: #e6e6e6;
    --ion-color-step-950: #f2f2f2;
    --ion-item-background: #000000;
    --ion-card-background: #1c1c1d;
  }
  .md body {
    --ion-background-color: #121212;
    --ion-background-color-rgb:
      18,18,18;
    --ion-text-color: #ffffff;
    --ion-text-color-rgb:
      255,255,255;
    --ion-border-color: #222222;
    --ion-color-step-50: #1e1e1e;
    --ion-color-step-100: #2a2a2a;
    --ion-color-step-150: #363636;
    --ion-color-step-200: #414141;
    --ion-color-step-250: #4d4d4d;
    --ion-color-step-300: #595959;
    --ion-color-step-350: #656565;
    --ion-color-step-400: #717171;
    --ion-color-step-450: #7d7d7d;
    --ion-color-step-500: #898989;
    --ion-color-step-550: #949494;
    --ion-color-step-600: #a0a0a0;
    --ion-color-step-650: #acacac;
    --ion-color-step-700: #b8b8b8;
    --ion-color-step-750: #c4c4c4;
    --ion-color-step-800: #d0d0d0;
    --ion-color-step-850: #dbdbdb;
    --ion-color-step-900: #e7e7e7;
    --ion-color-step-950: #f3f3f3;
    --ion-item-background: #1e1e1e;
    --ion-toolbar-background: #1f1f1f;
    --ion-tab-bar-background: #1f1f1f;
    --ion-card-background: #1e1e1e;
  }
}
.modern-app {
  --ion-color-primary: #667eea;
  --ion-color-primary-rgb:
    102,
    126,
    234;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: #5a6fd8;
  --ion-color-primary-tint: #758fec;
  --ion-color-secondary: #764ba2;
  --ion-color-secondary-rgb:
    118,
    75,
    162;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-secondary-shade: #68428f;
  --ion-color-secondary-tint: #8459ab;
}
.gradient-toolbar {
  --background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
  --color: white;
  position: relative;
  overflow: hidden;
}
.gradient-toolbar::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.1) 0%,
      rgba(255, 255, 255, 0.05) 100%);
  pointer-events: none;
}
.modern-header {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.modern-title {
  font-weight: 600;
}
.title-content {
  display: flex;
  align-items: center;
  gap: 8px;
}
.title-icon {
  font-size: 24px;
  color: rgba(255, 255, 255, 0.9);
}
.modern-menu-button {
  --color: white;
  --background: rgba(255, 255, 255, 0.1);
  --border-radius: 12px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.notification-button {
  position: relative;
  --color: white;
  --background: rgba(255, 255, 255, 0.1);
  --border-radius: 12px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.notification-badge {
  position: absolute;
  top: -2px;
  right: -2px;
  font-size: 10px;
  min-width: 16px;
  height: 16px;
  border-radius: 8px;
}
.modern-menu {
  --width: 280px;
}
.menu-header {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.menu-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
}
.brand-icon {
  width: 48px;
  height: 48px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.brand-icon ion-icon {
  font-size: 24px;
  color: white;
}
.brand-text h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  color: white;
  line-height: 1.2;
}
.brand-text p {
  margin: 0;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.menu-content {
  --background: #f8fafc;
  padding: 20px 0;
}
.menu-section {
  margin-bottom: 32px;
}
.section-title {
  font-size: 14px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0 20px 12px 20px;
}
.modern-list {
  background: transparent;
  padding: 0;
}
.modern-item {
  --background: transparent;
  --border-color: transparent;
  --inner-padding-start: 20px;
  --inner-padding-end: 20px;
  --padding-start: 0;
  --padding-end: 0;
  margin: 4px 12px;
  border-radius: 12px;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.modern-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background:
    linear-gradient(
      135deg,
      rgba(102, 126, 234, 0.05) 0%,
      rgba(118, 75, 162, 0.05) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.modern-item:hover::before {
  opacity: 1;
}
.modern-item.selected {
  --background:
    linear-gradient(
      135deg,
      rgba(102, 126, 234, 0.1) 0%,
      rgba(118, 75, 162, 0.1) 100%);
  box-shadow: 0 2px 8px rgba(102, 126, 234, 0.2);
}
.modern-item.selected::before {
  opacity: 1;
}
.item-icon-wrapper {
  width: 40px;
  height: 40px;
  background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
}
.item-icon-wrapper ion-icon {
  font-size: 20px;
  color: white;
}
.modern-item ion-label h3 {
  font-size: 16px;
  font-weight: 600;
  color: #1e293b;
  margin: 0;
  line-height: 1.3;
}
.modern-item ion-label p {
  font-size: 13px;
  color: #64748b;
  margin: 2px 0 0 0;
  line-height: 1.2;
}
.arrow-icon {
  font-size: 16px;
  color: #cbd5e1;
  transition: all 0.3s ease;
}
.modern-item:hover .arrow-icon {
  color: #667eea;
  transform: translateX(4px);
}
.menu-footer {
  position: absolute;
  bottom: 20px;
  left: 20px;
  right: 20px;
}
.app-version {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background: rgba(100, 116, 139, 0.1);
  border-radius: 8px;
  font-size: 12px;
  color: #64748b;
}
.app-version ion-icon {
  font-size: 16px;
}
.modern-content {
  --background:
    linear-gradient(
      135deg,
      #f8fafc 0%,
      #f1f5f9 100%);
}
.content-wrapper {
  min-height: 100%;
  padding: 20px;
}
.modern-page {
  position: relative;
}
.modern-page::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 200px;
  background:
    linear-gradient(
      135deg,
      rgba(102, 126, 234, 0.05) 0%,
      rgba(118, 75, 162, 0.05) 100%);
  pointer-events: none;
  z-index: 0;
}
@media (prefers-color-scheme: dark) {
  .modern-app {
    --ion-color-primary: #818cf8;
    --ion-color-primary-rgb:
      129,
      140,
      248;
    --ion-color-secondary: #a78bfa;
    --ion-color-secondary-rgb:
      167,
      139,
      250;
  }
  .menu-content {
    --background: #1e293b;
  }
  .section-title {
    color: #94a3b8;
  }
  .modern-item ion-label h3 {
    color: #f1f5f9;
  }
  .modern-item ion-label p {
    color: #94a3b8;
  }
  .modern-content {
    --background:
      linear-gradient(
        135deg,
        #0f172a 0%,
        #1e293b 100%);
  }
  .app-version {
    background: rgba(148, 163, 184, 0.1);
    color: #94a3b8;
  }
}
.camera-preview {
  width: 100%;
  height: 300px;
  border-radius: 12px;
  object-fit: cover;
  border: 2px solid var(--ion-color-light-shade);
}
.search-results {
  margin-top: 20px;
}
.result-card {
  margin-bottom: 16px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.similarity-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--ion-color-success);
  color: var(--ion-color-success-contrast);
  padding: 4px 8px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: bold;
}
.loading-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 200px;
}
.error-message {
  text-align: center;
  color: var(--ion-color-danger);
  padding: 20px;
  font-weight: 500;
}
.success-message {
  text-align: center;
  color: var(--ion-color-success);
  padding: 20px;
  font-weight: 500;
}
.form-container {
  padding: 20px;
}
.form-section {
  margin-bottom: 24px;
}
.section-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px;
  color: var(--ion-color-dark);
}
.image-upload-area {
  border: 2px dashed var(--ion-color-medium);
  border-radius: 12px;
  padding: 40px 20px;
  text-align: center;
  margin-bottom: 20px;
  transition: all 0.3s ease;
}
.image-upload-area.has-image {
  border-color: var(--ion-color-success);
  background-color: var(--ion-color-success-tint, 0.1);
}
.upload-icon {
  font-size: 48px;
  color: var(--ion-color-medium);
  margin-bottom: 16px;
}
.upload-text {
  color: var(--ion-color-medium);
  font-size: 16px;
  margin-bottom: 16px;
}
.uploaded-image {
  max-width: 100%;
  max-height: 200px;
  border-radius: 8px;
  margin-bottom: 16px;
}
@media (max-width: 768px) {
  .form-container {
    padding: 16px;
  }
  .camera-preview {
    height: 250px;
  }
  .section-title {
    font-size: 16px;
  }
  .upload-icon {
    font-size: 36px;
  }
  .upload-text {
    font-size: 14px;
  }
}
.fade-in {
  animation: fadeIn 0.3s ease-in;
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.slide-up {
  animation: slideUp 0.3s ease-out;
}
@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.pwa-install-prompt {
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  background: var(--ion-color-primary);
  color: var(--ion-color-primary-contrast);
  padding: 16px;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.pwa-install-text {
  flex: 1;
  margin-right: 16px;
}
.pwa-install-buttons {
  display: flex;
  gap: 8px;
}
.dashboard-container {
  padding: 16px;
  background: var(--ion-background-color);
}
.welcome-section {
  background:
    linear-gradient(
      135deg,
      var(--ion-color-primary),
      var(--ion-color-secondary));
  color: white;
  padding: 24px;
  border-radius: 12px;
  margin-bottom: 20px;
  text-align: center;
}
.welcome-icon {
  font-size: 48px;
  margin-bottom: 16px;
}
.camera-section {
  margin-bottom: 20px;
}
.image-section {
  margin-bottom: 16px;
}
.placeholder {
  text-align: center;
  padding: 40px 20px;
  color: var(--ion-color-medium);
}
.placeholder-icon {
  font-size: 48px;
  margin-bottom: 16px;
}
.action-buttons {
  display: flex;
  gap: 12px;
  flex-direction: column;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
ion-button:focus,
ion-input:focus,
ion-select:focus,
ion-textarea:focus {
  outline: 2px solid var(--ion-color-primary);
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  .result-card {
    border: 2px solid var(--ion-color-dark);
  }
  .image-upload-area {
    border-width: 3px;
  }
  ion-button {
    border: 2px solid currentColor;
  }
}
.modern-register {
  background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
  min-height: 100vh;
}
.modern-register .register-container {
  padding: 20px;
  max-width: 800px;
  margin: 0 auto;
}
.modern-register .modern-header ion-toolbar {
  --background: transparent;
  --color: white;
}
.modern-register .modern-header ion-toolbar .header-content {
  display: flex;
  align-items: center;
  gap: 10px;
}
.modern-register .modern-header ion-toolbar .header-content .header-icon {
  font-size: 24px;
}
.modern-register .modern-header ion-toolbar .modern-back-btn {
  --color: white;
  --icon-font-size: 24px;
}
.modern-register .progress-section {
  margin-bottom: 30px;
}
.modern-register .progress-section .progress-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 50px;
  padding: 20px;
}
.modern-register .progress-section .progress-bar .progress-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: rgba(255, 255, 255, 0.6);
  transition: all 0.3s ease;
}
.modern-register .progress-section .progress-bar .progress-step .step-number {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  margin-bottom: 8px;
  transition: all 0.3s ease;
}
.modern-register .progress-section .progress-bar .progress-step span {
  font-size: 0.9rem;
  font-weight: 500;
}
.modern-register .progress-section .progress-bar .progress-step.active {
  color: white;
}
.modern-register .progress-section .progress-bar .progress-step.active .step-number {
  background:
    linear-gradient(
      135deg,
      #ff6b6b,
      #feca57);
  box-shadow: 0 5px 15px rgba(255, 107, 107, 0.4);
}
.modern-register .progress-section .progress-bar .progress-step.completed {
  color: #4ecdc4;
}
.modern-register .progress-section .progress-bar .progress-step.completed .step-number {
  background: #4ecdc4;
}
.modern-register .progress-section .progress-bar .progress-step.completed .step-number::after {
  content: "\2713";
  color: white;
  font-weight: bold;
}
.modern-register .progress-section .progress-bar .progress-line {
  width: 60px;
  height: 2px;
  background: rgba(255, 255, 255, 0.3);
  margin: 0 20px;
  transition: all 0.3s ease;
}
.modern-register .progress-section .progress-bar .progress-line.completed {
  background: #4ecdc4;
}
.modern-register .step-content {
  animation: fadeInUp 0.5s ease-out;
}
.modern-register .modern-photo-card {
  background: rgba(255, 255, 255, 0.95);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  overflow: hidden;
  margin-bottom: 30px;
}
.modern-register .modern-photo-card .card-header {
  display: flex;
  align-items: center;
  padding: 25px;
  background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
  color: white;
}
.modern-register .modern-photo-card .card-header .header-icon {
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
}
.modern-register .modern-photo-card .card-header .header-icon ion-icon {
  font-size: 24px;
}
.modern-register .modern-photo-card .card-header .header-text h2 {
  margin: 0 0 5px 0;
  font-size: 1.4rem;
  font-weight: 600;
}
.modern-register .modern-photo-card .card-header .header-text p {
  margin: 0;
  opacity: 0.9;
  font-size: 0.9rem;
}
.modern-register .modern-photo-card .photo-content {
  padding: 30px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container {
  width: 100%;
  height: 300px;
  border-radius: 15px;
  overflow: hidden;
  margin-bottom: 25px;
  position: relative;
  background:
    linear-gradient(
      135deg,
      #f5f7fa 0%,
      #c3cfe2 100%);
  border: 2px dashed #ddd;
  transition: all 0.3s ease;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container.has-image {
  border: none;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .image-preview {
  width: 100%;
  height: 100%;
  position: relative;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .image-preview .preview-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .image-preview .image-overlay {
  position: absolute;
  top: 10px;
  right: 10px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .image-preview .image-overlay .clear-button {
  --background: rgba(255, 255, 255, 0.9);
  --color: #ff4757;
  --border-radius: 50%;
  width: 40px;
  height: 40px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .image-preview .image-overlay .clear-button ion-icon {
  font-size: 24px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .photo-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: #999;
  text-align: center;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .photo-placeholder .placeholder-icon {
  font-size: 80px;
  margin-bottom: 20px;
  opacity: 0.5;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .photo-placeholder h3 {
  margin: 0 0 10px 0;
  font-size: 1.2rem;
  color: #666;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .image-preview-container .photo-placeholder p {
  margin: 0;
  font-size: 1rem;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button {
  --border-radius: 15px;
  --padding-top: 20px;
  --padding-bottom: 20px;
  --box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
  height: auto;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button.camera-btn {
  --background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button.gallery-btn {
  --background:
    linear-gradient(
      135deg,
      #f093fb 0%,
      #f5576c 100%);
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button .button-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button .button-content .button-title {
  font-weight: 600;
  font-size: 1rem;
  margin-bottom: 2px;
}
.modern-register .modern-photo-card .photo-content .image-capture-section .photo-actions .modern-button .button-content .button-subtitle {
  font-size: 0.8rem;
  opacity: 0.8;
}
.modern-register .modern-form-card {
  background: rgba(255, 255, 255, 0.95);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  overflow: hidden;
  margin-bottom: 30px;
}
.modern-register .modern-form-card .card-header {
  display: flex;
  align-items: center;
  padding: 25px;
  background:
    linear-gradient(
      135deg,
      #11998e 0%,
      #38ef7d 100%);
  color: white;
}
.modern-register .modern-form-card .card-header .header-icon {
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
}
.modern-register .modern-form-card .card-header .header-icon ion-icon {
  font-size: 24px;
}
.modern-register .modern-form-card .card-header .header-text h2 {
  margin: 0 0 5px 0;
  font-size: 1.4rem;
  font-weight: 600;
}
.modern-register .modern-form-card .card-header .header-text p {
  margin: 0;
  opacity: 0.9;
  font-size: 0.9rem;
}
.modern-register .modern-form-card .form-content {
  padding: 30px;
}
.modern-register .modern-form-card .form-content .form-grid {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.modern-register .modern-form-card .form-content .form-grid .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
@media (max-width: 768px) {
  .modern-register .modern-form-card .form-content .form-grid .form-row {
    grid-template-columns: 1fr;
  }
}
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select {
  --background: #f8f9fa;
  --border-radius: 12px;
  --padding-start: 16px;
  --padding-end: 16px;
  --padding-top: 12px;
  --padding-bottom: 12px;
  border: 1px solid #e9ecef;
  transition: all 0.3s ease;
}
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input:focus-within,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select:focus-within {
  --background: white;
  border-color: #667eea;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input ion-label,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select ion-label {
  font-weight: 600;
  color: #495057;
  margin-bottom: 8px;
}
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input ion-input,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input ion-textarea,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-input ion-select,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select ion-input,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select ion-textarea,
.modern-register .modern-form-card .form-content .form-grid .form-group .modern-select ion-select {
  --color: #495057;
  --placeholder-color: #adb5bd;
}
.modern-register .modern-summary-card {
  background: rgba(255, 255, 255, 0.95);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  overflow: hidden;
  margin-bottom: 30px;
}
.modern-register .modern-summary-card .card-header {
  display: flex;
  align-items: center;
  padding: 25px;
  background:
    linear-gradient(
      135deg,
      #ff6b6b 0%,
      #feca57 100%);
  color: white;
}
.modern-register .modern-summary-card .card-header .header-icon {
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
}
.modern-register .modern-summary-card .card-header .header-icon ion-icon {
  font-size: 24px;
}
.modern-register .modern-summary-card .card-header .header-text h2 {
  margin: 0 0 5px 0;
  font-size: 1.4rem;
  font-weight: 600;
}
.modern-register .modern-summary-card .card-header .header-text p {
  margin: 0;
  opacity: 0.9;
  font-size: 0.9rem;
}
.modern-register .modern-summary-card .summary-content {
  padding: 30px;
}
.modern-register .modern-summary-card .summary-content .summary-section {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 30px;
}
@media (max-width: 768px) {
  .modern-register .modern-summary-card .summary-content .summary-section {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.modern-register .modern-summary-card .summary-content .summary-section .summary-image img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
.modern-register .modern-summary-card .summary-content .summary-section .summary-details .detail-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid #f1f3f4;
}
.modern-register .modern-summary-card .summary-content .summary-section .summary-details .detail-row:last-child {
  border-bottom: none;
}
.modern-register .modern-summary-card .summary-content .summary-section .summary-details .detail-row .label {
  font-weight: 600;
  color: #495057;
  flex: 0 0 40%;
}
.modern-register .modern-summary-card .summary-content .summary-section .summary-details .detail-row .value {
  color: #6c757d;
  text-align: right;
  flex: 1;
}
.modern-register .step-navigation {
  display: flex;
  gap: 15px;
  justify-content: space-between;
}
.modern-register .step-navigation .back-button {
  --border-color: rgba(255, 255, 255, 0.5);
  --color: white;
  --border-radius: 12px;
  --padding-start: 20px;
  --padding-end: 20px;
  --padding-top: 12px;
  --padding-bottom: 12px;
  flex: 0 0 auto;
}
.modern-register .step-navigation .next-button {
  --background:
    linear-gradient(
      135deg,
      #667eea 0%,
      #764ba2 100%);
  --border-radius: 12px;
  --padding-start: 20px;
  --padding-end: 20px;
  --padding-top: 12px;
  --padding-bottom: 12px;
  --box-shadow: 0 8px 25px rgba(102, 126, 234, 0.3);
  flex: 1;
}
.modern-register .step-navigation .next-button:disabled {
  --background: #ccc;
  --box-shadow: none;
}
.modern-register .step-navigation .save-button {
  --background:
    linear-gradient(
      135deg,
      #11998e 0%,
      #38ef7d 100%);
  --border-radius: 12px;
  --padding-start: 20px;
  --padding-end: 20px;
  --padding-top: 12px;
  --padding-bottom: 12px;
  --box-shadow: 0 8px 25px rgba(17, 153, 142, 0.3);
  flex: 1;
  font-weight: 600;
}
.modern-register .step-navigation .save-button:disabled {
  --background: #ccc;
  --box-shadow: none;
}
.modern-register .loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
.modern-register .loading-overlay .loading-content {
  background: white;
  border-radius: 20px;
  padding: 40px;
  text-align: center;
  max-width: 300px;
}
.modern-register .loading-overlay .loading-content .large-spinner {
  --color: #667eea;
  width: 60px;
  height: 60px;
  margin-bottom: 20px;
}
.modern-register .loading-overlay .loading-content h3 {
  color: #333;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 10px;
}
.modern-register .loading-overlay .loading-content p {
  color: #666;
  margin: 0;
  line-height: 1.5;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .fade-in,
  .slide-up {
    animation: none;
  }
  .image-upload-area {
    transition: none;
  }
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

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