/* 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/ionic.bundle.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;
}
body.backdrop-no-scroll {
  overflow: hidden;
}
html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type,
html.ios ion-modal ion-footer ion-toolbar:first-of-type,
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 {
  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 .modal-footer-moving ion-toolbar,
html.ios ion-modal ion-toolbar {
  padding-right: calc(var(--ion-safe-area-right) + 8px);
  padding-left: calc(var(--ion-safe-area-left) + 8px);
}
@media screen and (min-width:768px) {
  html.ios ion-modal.modal-card:first-of-type {
    --backdrop-opacity:0.18;
  }
}
ion-modal.modal-default.show-modal ~ ion-modal.modal-default {
  --backdrop-opacity:0;
  --box-shadow:none;
}
html.ios ion-modal.modal-card .ion-page {
  border-top-left-radius: var(--border-radius);
}
.ion-color-primary {
  --ion-color-base:var(--ion-color-primary, #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-page-hidden,
ion-action-sheet-controller,
ion-alert-controller,
ion-loading-controller,
ion-menu-controller,
ion-modal-controller,
ion-nav-controller,
ion-picker-controller,
ion-popover-controller,
ion-route,
ion-route-redirect,
ion-router,
ion-select-option,
ion-toast-controller {
  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-header.ion-color .ion-inherit-color,
ion-card.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-push,
.md .menu-content-reveal {
  box-shadow: 4px 0 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: transform .3s cubic-bezier(.25, .8, .5, 1);
}
@media (prefers-reduced-motion:reduce) {
  ion-accordion .ion-accordion-toggle-icon {
    transition: none !important;
  }
}
ion-accordion.accordion-expanded > [slot=header] .ion-accordion-toggle-icon,
ion-accordion.accordion-expanding > [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-expanded:first-of-type,
ion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding: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],
[role=banner][tabindex="-1"]:focus,
[role=heading][aria-level="1"][tabindex="-1"]:focus,
[role=main][tabindex="-1"]:focus,
h1[tabindex="-1"]:focus,
header[tabindex="-1"]:focus,
main[tabindex="-1"]:focus {
  outline: 0;
}
.popover-viewport:has(> ion-content) {
  overflow: hidden;
}
@supports not selector(:has(> ion-content)) {
  .popover-viewport {
    overflow: hidden;
  }
}
audio,
canvas,
progress,
video {
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
b,
strong {
  font-weight: 700;
}
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;
}
input,
label,
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;
}
.ion-tappable,
[tappable],
[tappable] div,
[tappable] ion-icon,
[tappable] ion-label,
[tappable] span,
a,
a div,
a ion-icon,
a ion-label,
a span,
button,
button div,
button ion-icon,
button ion-label,
button span,
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;
}
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}
html {
  --ion-dynamic-font:-apple-system-body;
  --ion-font-family:var(--ion-default-font);
  width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: var(--ion-font-family);
}
html.ion-ce body {
  display: block;
}
html.plt-pwa {
  height: 100vh;
}
body {
  background: var(--ion-background-color);
  color: var(--ion-text-color);
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  padding: 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;
}
@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: -.5em;
}
sub {
  bottom: -.25em;
}
.ion-no-padding {
  --padding-start:0;
  --padding-end:0;
  --padding-top:0;
  --padding-bottom:0;
  padding: 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: 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);
}
.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:dir(rtl) {
    float: left !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;
}
.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;
}
.ion-text-uppercase {
  text-transform: uppercase !important;
}
.ion-text-lowercase {
  text-transform: lowercase !important;
}
.ion-text-capitalize {
  text-transform: capitalize !important;
}
.ion-align-content-start {
  align-content: flex-start !important;
}
.ion-align-content-end {
  align-content: flex-end !important;
}
.ion-align-content-center {
  align-content: center !important;
}
.ion-align-content-between {
  align-content: space-between !important;
}
.ion-align-content-around {
  align-content: space-around !important;
}
.ion-align-content-stretch {
  align-content: stretch !important;
}
.ion-align-items-start {
  align-items: start !important;
}
.ion-align-items-end {
  align-items: end !important;
}
.ion-align-items-center {
  align-items: center !important;
}
.ion-align-items-stretch {
  align-items: stretch !important;
}
.ion-align-items-baseline {
  align-items: baseline !important;
}
.ion-align-self-start {
  align-self: start !important;
}
.ion-align-self-end {
  align-self: end !important;
}
.ion-align-self-center {
  align-self: center !important;
}
.ion-align-self-stretch {
  align-self: stretch !important;
}
.ion-align-self-baseline {
  align-self: baseline !important;
}
.ion-align-self-auto {
  align-self: auto !important;
}
@media (min-width:576px) {
  .ion-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:dir(rtl) {
      float: left !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;
  }
  .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;
  }
  .ion-text-sm-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-sm-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-sm-capitalize {
    text-transform: capitalize !important;
  }
  .ion-align-content-sm-start {
    align-content: flex-start !important;
  }
  .ion-align-content-sm-end {
    align-content: flex-end !important;
  }
  .ion-align-content-sm-center {
    align-content: center !important;
  }
  .ion-align-content-sm-between {
    align-content: space-between !important;
  }
  .ion-align-content-sm-around {
    align-content: space-around !important;
  }
  .ion-align-content-sm-stretch {
    align-content: stretch !important;
  }
  .ion-align-items-sm-start {
    align-items: start !important;
  }
  .ion-align-items-sm-end {
    align-items: end !important;
  }
  .ion-align-items-sm-center {
    align-items: center !important;
  }
  .ion-align-items-sm-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-sm-baseline {
    align-items: baseline !important;
  }
  .ion-align-self-sm-start {
    align-self: start !important;
  }
  .ion-align-self-sm-end {
    align-self: end !important;
  }
  .ion-align-self-sm-center {
    align-self: center !important;
  }
  .ion-align-self-sm-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-sm-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-sm-auto {
    align-self: auto !important;
  }
}
@media (min-width:768px) {
  .ion-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:dir(rtl) {
      float: left !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;
  }
  .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;
  }
  .ion-text-md-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-md-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-md-capitalize {
    text-transform: capitalize !important;
  }
  .ion-align-content-md-start {
    align-content: flex-start !important;
  }
  .ion-align-content-md-end {
    align-content: flex-end !important;
  }
  .ion-align-content-md-center {
    align-content: center !important;
  }
  .ion-align-content-md-between {
    align-content: space-between !important;
  }
  .ion-align-content-md-around {
    align-content: space-around !important;
  }
  .ion-align-content-md-stretch {
    align-content: stretch !important;
  }
  .ion-align-items-md-start {
    align-items: start !important;
  }
  .ion-align-items-md-end {
    align-items: end !important;
  }
  .ion-align-items-md-center {
    align-items: center !important;
  }
  .ion-align-items-md-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-md-baseline {
    align-items: baseline !important;
  }
  .ion-align-self-md-start {
    align-self: start !important;
  }
  .ion-align-self-md-end {
    align-self: end !important;
  }
  .ion-align-self-md-center {
    align-self: center !important;
  }
  .ion-align-self-md-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-md-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-md-auto {
    align-self: auto !important;
  }
}
@media (min-width:992px) {
  .ion-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:dir(rtl) {
      float: left !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;
  }
  .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;
  }
  .ion-text-lg-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-lg-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-lg-capitalize {
    text-transform: capitalize !important;
  }
  .ion-align-content-lg-start {
    align-content: flex-start !important;
  }
  .ion-align-content-lg-end {
    align-content: flex-end !important;
  }
  .ion-align-content-lg-center {
    align-content: center !important;
  }
  .ion-align-content-lg-between {
    align-content: space-between !important;
  }
  .ion-align-content-lg-around {
    align-content: space-around !important;
  }
  .ion-align-content-lg-stretch {
    align-content: stretch !important;
  }
  .ion-align-items-lg-start {
    align-items: start !important;
  }
  .ion-align-items-lg-end {
    align-items: end !important;
  }
  .ion-align-items-lg-center {
    align-items: center !important;
  }
  .ion-align-items-lg-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-lg-baseline {
    align-items: baseline !important;
  }
  .ion-align-self-lg-start {
    align-self: start !important;
  }
  .ion-align-self-lg-end {
    align-self: end !important;
  }
  .ion-align-self-lg-center {
    align-self: center !important;
  }
  .ion-align-self-lg-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-lg-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-lg-auto {
    align-self: auto !important;
  }
}
@media (min-width:1200px) {
  .ion-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:dir(rtl) {
      float: left !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;
  }
  .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;
  }
  .ion-text-xl-uppercase {
    text-transform: uppercase !important;
  }
  .ion-text-xl-lowercase {
    text-transform: lowercase !important;
  }
  .ion-text-xl-capitalize {
    text-transform: capitalize !important;
  }
  .ion-align-content-xl-start {
    align-content: flex-start !important;
  }
  .ion-align-content-xl-end {
    align-content: flex-end !important;
  }
  .ion-align-content-xl-center {
    align-content: center !important;
  }
  .ion-align-content-xl-between {
    align-content: space-between !important;
  }
  .ion-align-content-xl-around {
    align-content: space-around !important;
  }
  .ion-align-content-xl-stretch {
    align-content: stretch !important;
  }
  .ion-align-items-xl-start {
    align-items: start !important;
  }
  .ion-align-items-xl-end {
    align-items: end !important;
  }
  .ion-align-items-xl-center {
    align-items: center !important;
  }
  .ion-align-items-xl-stretch {
    align-items: stretch !important;
  }
  .ion-align-items-xl-baseline {
    align-items: baseline !important;
  }
  .ion-align-self-xl-start {
    align-self: start !important;
  }
  .ion-align-self-xl-end {
    align-self: end !important;
  }
  .ion-align-self-xl-center {
    align-self: center !important;
  }
  .ion-align-self-xl-stretch {
    align-self: stretch !important;
  }
  .ion-align-self-xl-baseline {
    align-self: baseline !important;
  }
  .ion-align-self-xl-auto {
    align-self: auto !important;
  }
}
.ion-justify-content-start {
  justify-content: flex-start !important;
}
.ion-justify-content-end {
  justify-content: flex-end !important;
}
.ion-justify-content-center {
  justify-content: center !important;
}
.ion-justify-content-between {
  justify-content: space-between !important;
}
.ion-justify-content-around {
  justify-content: space-around !important;
}
.ion-justify-content-evenly {
  justify-content: space-evenly !important;
}
@media (min-width:576px) {
  .ion-justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-sm-center {
    justify-content: center !important;
  }
  .ion-justify-content-sm-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-sm-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width:768px) {
  .ion-justify-content-md-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-md-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-md-center {
    justify-content: center !important;
  }
  .ion-justify-content-md-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-md-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width:992px) {
  .ion-justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-lg-center {
    justify-content: center !important;
  }
  .ion-justify-content-lg-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-lg-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
}
@media (min-width:1200px) {
  .ion-justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .ion-justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .ion-justify-content-xl-center {
    justify-content: center !important;
  }
  .ion-justify-content-xl-between {
    justify-content: space-between !important;
  }
  .ion-justify-content-xl-around {
    justify-content: space-around !important;
  }
  .ion-justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
}
.ion-flex-row {
  flex-direction: row !important;
}
.ion-flex-row-reverse {
  flex-direction: row-reverse !important;
}
.ion-flex-column {
  flex-direction: column !important;
}
.ion-flex-column-reverse {
  flex-direction: column-reverse !important;
}
@media (min-width:576px) {
  .ion-flex-sm-row {
    flex-direction: row !important;
  }
  .ion-flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-sm-column {
    flex-direction: column !important;
  }
  .ion-flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width:768px) {
  .ion-flex-md-row {
    flex-direction: row !important;
  }
  .ion-flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-md-column {
    flex-direction: column !important;
  }
  .ion-flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width:992px) {
  .ion-flex-lg-row {
    flex-direction: row !important;
  }
  .ion-flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-lg-column {
    flex-direction: column !important;
  }
  .ion-flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
}
@media (min-width:1200px) {
  .ion-flex-xl-row {
    flex-direction: row !important;
  }
  .ion-flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .ion-flex-xl-column {
    flex-direction: column !important;
  }
  .ion-flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
}
.ion-wrap {
  flex-wrap: wrap !important;
}
.ion-nowrap {
  flex-wrap: nowrap !important;
}
.ion-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.ion-flex-wrap {
  flex-wrap: wrap !important;
}
.ion-flex-nowrap {
  flex-wrap: nowrap !important;
}
.ion-flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
@media (min-width:576px) {
  .ion-flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width:768px) {
  .ion-flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width:992px) {
  .ion-flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
@media (min-width:1200px) {
  .ion-flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .ion-flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .ion-flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
}
.ion-flex-1 {
  flex: 1 !important;
}
.ion-flex-auto {
  flex: auto !important;
}
.ion-flex-initial {
  flex: initial !important;
}
.ion-flex-none {
  flex: none !important;
}
@media (min-width:576px) {
  .ion-flex-sm-1 {
    flex: 1 !important;
  }
  .ion-flex-sm-auto {
    flex: auto !important;
  }
  .ion-flex-sm-initial {
    flex: initial !important;
  }
  .ion-flex-sm-none {
    flex: none !important;
  }
}
@media (min-width:768px) {
  .ion-flex-md-1 {
    flex: 1 !important;
  }
  .ion-flex-md-auto {
    flex: auto !important;
  }
  .ion-flex-md-initial {
    flex: initial !important;
  }
  .ion-flex-md-none {
    flex: none !important;
  }
}
@media (min-width:992px) {
  .ion-flex-lg-1 {
    flex: 1 !important;
  }
  .ion-flex-lg-auto {
    flex: auto !important;
  }
  .ion-flex-lg-initial {
    flex: initial !important;
  }
  .ion-flex-lg-none {
    flex: none !important;
  }
}
@media (min-width:1200px) {
  .ion-flex-xl-1 {
    flex: 1 !important;
  }
  .ion-flex-xl-auto {
    flex: auto !important;
  }
  .ion-flex-xl-initial {
    flex: initial !important;
  }
  .ion-flex-xl-none {
    flex: none !important;
  }
}
.ion-flex-grow-0 {
  flex-grow: 0 !important;
}
.ion-flex-grow-1 {
  flex-grow: 1 !important;
}
.ion-flex-shrink-0 {
  flex-shrink: 0 !important;
}
.ion-flex-shrink-1 {
  flex-shrink: 1 !important;
}
.ion-order-first {
  order: -1 !important;
}
.ion-order-0 {
  order: 0 !important;
}
.ion-order-1 {
  order: 1 !important;
}
.ion-order-2 {
  order: 2 !important;
}
.ion-order-3 {
  order: 3 !important;
}
.ion-order-4 {
  order: 4 !important;
}
.ion-order-5 {
  order: 5 !important;
}
.ion-order-6 {
  order: 6 !important;
}
.ion-order-7 {
  order: 7 !important;
}
.ion-order-8 {
  order: 8 !important;
}
.ion-order-9 {
  order: 9 !important;
}
.ion-order-10 {
  order: 10 !important;
}
.ion-order-11 {
  order: 11 !important;
}
.ion-order-12 {
  order: 12 !important;
}
.ion-order-last {
  order: 13 !important;
}
.ion-hide,
.ion-hide-down,
.ion-hide-up {
  display: none !important;
}
@media (max-width:575.98px) {
  .ion-hide-sm-down {
    display: none !important;
  }
}
@media (max-width:767.98px) {
  .ion-hide-md-down {
    display: none !important;
  }
}
@media (max-width:991.98px) {
  .ion-hide-lg-down {
    display: none !important;
  }
}
@media (max-width:1199.98px) {
  .ion-hide-xl-down {
    display: none !important;
  }
}
.ion-display-none {
  display: none !important;
}
@media (min-width:576px) {
  .ion-flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .ion-order-sm-first {
    order: -1 !important;
  }
  .ion-order-sm-0 {
    order: 0 !important;
  }
  .ion-order-sm-1 {
    order: 1 !important;
  }
  .ion-order-sm-2 {
    order: 2 !important;
  }
  .ion-order-sm-3 {
    order: 3 !important;
  }
  .ion-order-sm-4 {
    order: 4 !important;
  }
  .ion-order-sm-5 {
    order: 5 !important;
  }
  .ion-order-sm-6 {
    order: 6 !important;
  }
  .ion-order-sm-7 {
    order: 7 !important;
  }
  .ion-order-sm-8 {
    order: 8 !important;
  }
  .ion-order-sm-9 {
    order: 9 !important;
  }
  .ion-order-sm-10 {
    order: 10 !important;
  }
  .ion-order-sm-11 {
    order: 11 !important;
  }
  .ion-order-sm-12 {
    order: 12 !important;
  }
  .ion-order-sm-last {
    order: 13 !important;
  }
  .ion-display-sm-none,
  .ion-hide-sm-up {
    display: none !important;
  }
}
@media (min-width:768px) {
  .ion-flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .ion-order-md-first {
    order: -1 !important;
  }
  .ion-order-md-0 {
    order: 0 !important;
  }
  .ion-order-md-1 {
    order: 1 !important;
  }
  .ion-order-md-2 {
    order: 2 !important;
  }
  .ion-order-md-3 {
    order: 3 !important;
  }
  .ion-order-md-4 {
    order: 4 !important;
  }
  .ion-order-md-5 {
    order: 5 !important;
  }
  .ion-order-md-6 {
    order: 6 !important;
  }
  .ion-order-md-7 {
    order: 7 !important;
  }
  .ion-order-md-8 {
    order: 8 !important;
  }
  .ion-order-md-9 {
    order: 9 !important;
  }
  .ion-order-md-10 {
    order: 10 !important;
  }
  .ion-order-md-11 {
    order: 11 !important;
  }
  .ion-order-md-12 {
    order: 12 !important;
  }
  .ion-order-md-last {
    order: 13 !important;
  }
  .ion-display-md-none,
  .ion-hide-md-up {
    display: none !important;
  }
}
@media (min-width:992px) {
  .ion-flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .ion-order-lg-first {
    order: -1 !important;
  }
  .ion-order-lg-0 {
    order: 0 !important;
  }
  .ion-order-lg-1 {
    order: 1 !important;
  }
  .ion-order-lg-2 {
    order: 2 !important;
  }
  .ion-order-lg-3 {
    order: 3 !important;
  }
  .ion-order-lg-4 {
    order: 4 !important;
  }
  .ion-order-lg-5 {
    order: 5 !important;
  }
  .ion-order-lg-6 {
    order: 6 !important;
  }
  .ion-order-lg-7 {
    order: 7 !important;
  }
  .ion-order-lg-8 {
    order: 8 !important;
  }
  .ion-order-lg-9 {
    order: 9 !important;
  }
  .ion-order-lg-10 {
    order: 10 !important;
  }
  .ion-order-lg-11 {
    order: 11 !important;
  }
  .ion-order-lg-12 {
    order: 12 !important;
  }
  .ion-order-lg-last {
    order: 13 !important;
  }
  .ion-display-lg-none,
  .ion-hide-lg-up {
    display: none !important;
  }
}
@media (min-width:1200px) {
  .ion-flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .ion-flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .ion-flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .ion-flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .ion-order-xl-first {
    order: -1 !important;
  }
  .ion-order-xl-0 {
    order: 0 !important;
  }
  .ion-order-xl-1 {
    order: 1 !important;
  }
  .ion-order-xl-2 {
    order: 2 !important;
  }
  .ion-order-xl-3 {
    order: 3 !important;
  }
  .ion-order-xl-4 {
    order: 4 !important;
  }
  .ion-order-xl-5 {
    order: 5 !important;
  }
  .ion-order-xl-6 {
    order: 6 !important;
  }
  .ion-order-xl-7 {
    order: 7 !important;
  }
  .ion-order-xl-8 {
    order: 8 !important;
  }
  .ion-order-xl-9 {
    order: 9 !important;
  }
  .ion-order-xl-10 {
    order: 10 !important;
  }
  .ion-order-xl-11 {
    order: 11 !important;
  }
  .ion-order-xl-12 {
    order: 12 !important;
  }
  .ion-order-xl-last {
    order: 13 !important;
  }
  .ion-display-xl-none,
  .ion-hide-xl-up {
    display: none !important;
  }
  .ion-display-xl-inline {
    display: inline !important;
  }
}
.ion-display-inline {
  display: inline !important;
}
@media (min-width:576px) {
  .ion-display-sm-inline {
    display: inline !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-inline {
    display: inline !important;
  }
}
@media (min-width:992px) {
  .ion-display-lg-inline {
    display: inline !important;
  }
  .ion-display-lg-inline-block {
    display: inline-block !important;
  }
}
.ion-display-inline-block {
  display: inline-block !important;
}
@media (min-width:576px) {
  .ion-display-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width:1200px) {
  .ion-display-xl-inline-block {
    display: inline-block !important;
  }
  .ion-display-xl-block {
    display: block !important;
  }
}
.ion-display-block {
  display: block !important;
}
@media (min-width:576px) {
  .ion-display-sm-block {
    display: block !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-block {
    display: block !important;
  }
}
@media (min-width:992px) {
  .ion-display-lg-block {
    display: block !important;
  }
  .ion-display-lg-flex {
    display: flex !important;
  }
}
.ion-display-flex {
  display: flex !important;
}
@media (min-width:576px) {
  .ion-display-sm-flex {
    display: flex !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-flex {
    display: flex !important;
  }
}
@media (min-width:1200px) {
  .ion-display-xl-flex {
    display: flex !important;
  }
  .ion-display-xl-inline-flex {
    display: inline-flex !important;
  }
}
.ion-display-inline-flex {
  display: inline-flex !important;
}
@media (min-width:576px) {
  .ion-display-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width:992px) {
  .ion-display-lg-inline-flex {
    display: inline-flex !important;
  }
  .ion-display-lg-grid {
    display: grid !important;
  }
}
.ion-display-grid {
  display: grid !important;
}
@media (min-width:576px) {
  .ion-display-sm-grid {
    display: grid !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-grid {
    display: grid !important;
  }
}
@media (min-width:1200px) {
  .ion-display-xl-grid {
    display: grid !important;
  }
  .ion-display-xl-inline-grid {
    display: inline-grid !important;
  }
}
.ion-display-inline-grid {
  display: inline-grid !important;
}
@media (min-width:576px) {
  .ion-display-sm-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-inline-grid {
    display: inline-grid !important;
  }
}
@media (min-width:992px) {
  .ion-display-lg-inline-grid {
    display: inline-grid !important;
  }
  .ion-display-lg-table {
    display: table !important;
  }
}
.ion-display-table {
  display: table !important;
}
@media (min-width:576px) {
  .ion-display-sm-table {
    display: table !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-table {
    display: table !important;
  }
}
@media (min-width:1200px) {
  .ion-display-xl-table {
    display: table !important;
  }
  .ion-display-xl-table-cell {
    display: table-cell !important;
  }
}
.ion-display-table-cell {
  display: table-cell !important;
}
@media (min-width:576px) {
  .ion-display-sm-table-cell {
    display: table-cell !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-table-cell {
    display: table-cell !important;
  }
}
@media (min-width:992px) {
  .ion-display-lg-table-cell {
    display: table-cell !important;
  }
  .ion-display-lg-table-row {
    display: table-row !important;
  }
}
.ion-display-table-row {
  display: table-row !important;
}
@media (min-width:576px) {
  .ion-display-sm-table-row {
    display: table-row !important;
  }
}
@media (min-width:768px) {
  .ion-display-md-table-row {
    display: table-row !important;
  }
}
@media (min-width:1200px) {
  .ion-display-xl-table-row {
    display: table-row !important;
  }
}

/* src/global.scss */
:root {
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  --border-radius-sm: 12px;
  --border-radius-md: 16px;
  --border-radius-lg: 20px;
  --border-radius-xl: 24px;
  --border-radius-full: 50%;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.15);
  --blur-sm: blur(1px);
  --blur-md: blur(2px);
  --blur-lg: blur(3px);
  --transition-fast: 0.2s ease-out;
  --transition-normal: 0.3s ease-out;
  --transition-slow: 0.5s ease-out;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-xxl: 24px;
  --font-size-xxxl: 32px;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --line-height-tight: 1.2;
  --line-height-normal: 1.4;
  --line-height-relaxed: 1.6;
  --breakpoint-mobile: 480px;
  --breakpoint-tablet: 768px;
  --breakpoint-desktop: 1024px;
  --breakpoint-large-desktop: 1280px;
  --max-content-width: 500px;
  --max-content-width-wide: 600px;
}
:root {
  --ion-color-primary: #B3FF04;
  --ion-color-primary-rgb:
    179,
    255,
    4;
  --ion-color-primary-contrast: #000000;
  --ion-color-primary-contrast-rgb:
    0,
    0,
    0;
  --ion-color-primary-shade: #9ee104;
  --ion-color-primary-tint: #bbff1d;
  --ion-color-secondary: #8FCC03;
  --ion-color-secondary-rgb:
    143,
    204,
    3;
  --ion-color-secondary-contrast: #000000;
  --ion-color-secondary-contrast-rgb:
    0,
    0,
    0;
  --ion-color-secondary-shade: #7eb403;
  --ion-color-secondary-tint: #9ad11c;
  --ion-color-tertiary: #6B9902;
  --ion-color-tertiary-rgb:
    107,
    153,
    2;
  --ion-color-tertiary-contrast: #ffffff;
  --ion-color-tertiary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-tertiary-shade: #5e8702;
  --ion-color-tertiary-tint: #7aa31b;
  --ion-color-success: #C7FF33;
  --ion-color-success-rgb:
    199,
    255,
    51;
  --ion-color-success-contrast: #000000;
  --ion-color-success-contrast-rgb:
    0,
    0,
    0;
  --ion-color-success-shade: #afe12d;
  --ion-color-success-tint: #cdff47;
  --ion-color-warning: #FF8C04;
  --ion-color-warning-rgb:
    255,
    140,
    4;
  --ion-color-warning-contrast: #000000;
  --ion-color-warning-contrast-rgb:
    0,
    0,
    0;
  --ion-color-warning-shade: #e17b04;
  --ion-color-warning-tint: #ff981d;
  --ion-color-danger: #FF4B04;
  --ion-color-danger-rgb:
    255,
    75,
    4;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: #e24204;
  --ion-color-danger-tint: #ff5d1d;
  --ion-color-dark: #4D7301;
  --ion-color-dark-rgb:
    77,
    115,
    1;
  --ion-color-dark-contrast: #ffffff;
  --ion-color-dark-contrast-rgb:
    255,
    255,
    255;
  --ion-color-dark-shade: #446501;
  --ion-color-dark-tint: #5f811a;
  --ion-color-medium: #7A9902;
  --ion-color-medium-rgb:
    122,
    153,
    2;
  --ion-color-medium-contrast: #ffffff;
  --ion-color-medium-contrast-rgb:
    255,
    255,
    255;
  --ion-color-medium-shade: #6c8702;
  --ion-color-medium-tint: #87a31b;
  --ion-color-light: #E6FF66;
  --ion-color-light-rgb:
    230,
    255,
    102;
  --ion-color-light-contrast: #000000;
  --ion-color-light-contrast-rgb:
    0,
    0,
    0;
  --ion-color-light-shade: #cae25a;
  --ion-color-light-tint: #e9ff75;
}
:root .ion-color-primary {
  --ion-color-base: var(--ion-color-primary);
  --ion-color-base-rgb: var(--ion-color-primary-rgb);
  --ion-color-contrast: var(--ion-color-primary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb);
  --ion-color-shade: var(--ion-color-primary-shade);
  --ion-color-tint: var(--ion-color-primary-tint);
}
:root .ion-color-secondary {
  --ion-color-base: var(--ion-color-secondary);
  --ion-color-base-rgb: var(--ion-color-secondary-rgb);
  --ion-color-contrast: var(--ion-color-secondary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb);
  --ion-color-shade: var(--ion-color-secondary-shade);
  --ion-color-tint: var(--ion-color-secondary-tint);
}
:root .ion-color-tertiary {
  --ion-color-base: var(--ion-color-tertiary);
  --ion-color-base-rgb: var(--ion-color-tertiary-rgb);
  --ion-color-contrast: var(--ion-color-tertiary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb);
  --ion-color-shade: var(--ion-color-tertiary-shade);
  --ion-color-tint: var(--ion-color-tertiary-tint);
}
:root .ion-color-success {
  --ion-color-base: var(--ion-color-success);
  --ion-color-base-rgb: var(--ion-color-success-rgb);
  --ion-color-contrast: var(--ion-color-success-contrast);
  --ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb);
  --ion-color-shade: var(--ion-color-success-shade);
  --ion-color-tint: var(--ion-color-success-tint);
}
:root .ion-color-warning {
  --ion-color-base: var(--ion-color-warning);
  --ion-color-base-rgb: var(--ion-color-warning-rgb);
  --ion-color-contrast: var(--ion-color-warning-contrast);
  --ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb);
  --ion-color-shade: var(--ion-color-warning-shade);
  --ion-color-tint: var(--ion-color-warning-tint);
}
:root .ion-color-danger {
  --ion-color-base: var(--ion-color-danger);
  --ion-color-base-rgb: var(--ion-color-danger-rgb);
  --ion-color-contrast: var(--ion-color-danger-contrast);
  --ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb);
  --ion-color-shade: var(--ion-color-danger-shade);
  --ion-color-tint: var(--ion-color-danger-tint);
}
:root .ion-color-dark {
  --ion-color-base: var(--ion-color-dark);
  --ion-color-base-rgb: var(--ion-color-dark-rgb);
  --ion-color-contrast: var(--ion-color-dark-contrast);
  --ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb);
  --ion-color-shade: var(--ion-color-dark-shade);
  --ion-color-tint: var(--ion-color-dark-tint);
}
:root .ion-color-medium {
  --ion-color-base: var(--ion-color-medium);
  --ion-color-base-rgb: var(--ion-color-medium-rgb);
  --ion-color-contrast: var(--ion-color-medium-contrast);
  --ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb);
  --ion-color-shade: var(--ion-color-medium-shade);
  --ion-color-tint: var(--ion-color-medium-tint);
}
:root .ion-color-light {
  --ion-color-base: var(--ion-color-light);
  --ion-color-base-rgb: var(--ion-color-light-rgb);
  --ion-color-contrast: var(--ion-color-light-contrast);
  --ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb);
  --ion-color-shade: var(--ion-color-light-shade);
  --ion-color-tint: var(--ion-color-light-tint);
}
ion-button {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-sm);
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.5px;
}
ion-card {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-md);
}
ion-input,
ion-textarea,
ion-select {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
  --padding-top: var(--spacing-md);
  --padding-bottom: var(--spacing-md);
}
ion-item {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
}
ion-list {
  background: transparent;
}
ion-segment {
  --border-radius: var(--border-radius-lg);
}
ion-segment-button {
  --border-radius: var(--border-radius-md);
}
ion-chip {
  --border-radius: var(--border-radius-full);
}
ion-alert {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-modal {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-toast {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-lg);
}
ion-tab-bar {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-md);
}
ion-tab-button {
  --border-radius: var(--border-radius-md);
}
ion-loading {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-popover {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-lg);
}
ion-action-sheet {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-xl);
}
:root {
  --swiper-theme-color: #007aff;
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image:
    linear-gradient(
      to left,
      rgba(0, 0, 0, 0.5),
      rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image:
    linear-gradient(
      to right,
      rgba(0, 0, 0, 0.5),
      rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.5),
      rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image:
    linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.5),
      rgba(0, 0, 0, 0));
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
:is(.swiper:not(.swiper-watch-progress), .swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
:root {
  --swiper-navigation-size: 44px;
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
:is(.swiper-button-prev, .swiper-button-next).swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
:is(.swiper-button-prev, .swiper-button-next).swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled :is(.swiper-button-prev, .swiper-button-next) {
  display: none !important;
}
:is(.swiper-button-prev, .swiper-button-next) svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
  fill: currentColor;
  pointer-events: none;
}
.swiper-button-lock {
  display: none;
}
.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}
.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-button-prev .swiper-navigation-icon {
  transform: rotate(180deg);
}
.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}
.swiper-horizontal .swiper-button-prev,
.swiper-horizontal .swiper-button-next,
.swiper-horizontal ~ .swiper-button-prev,
.swiper-horizontal ~ .swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  margin-left: 0;
}
.swiper-horizontal .swiper-button-prev,
.swiper-horizontal ~ .swiper-button-prev,
.swiper-horizontal.swiper-rtl .swiper-button-next,
.swiper-horizontal.swiper-rtl ~ .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
}
.swiper-horizontal .swiper-button-next,
.swiper-horizontal ~ .swiper-button-next,
.swiper-horizontal.swiper-rtl .swiper-button-prev,
.swiper-horizontal.swiper-rtl ~ .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}
:is(.swiper-horizontal .swiper-button-prev, .swiper-horizontal ~ .swiper-button-prev, .swiper-horizontal.swiper-rtl .swiper-button-next, .swiper-horizontal.swiper-rtl ~ .swiper-button-next) .swiper-navigation-icon {
  transform: rotate(180deg);
}
:is(.swiper-horizontal.swiper-rtl .swiper-button-prev, .swiper-horizontal.swiper-rtl ~ .swiper-button-prev) .swiper-navigation-icon {
  transform: rotate(0deg);
}
.swiper-vertical .swiper-button-prev,
.swiper-vertical .swiper-button-next,
.swiper-vertical ~ .swiper-button-prev,
.swiper-vertical ~ .swiper-button-next {
  left: var(--swiper-navigation-top-offset, 50%);
  right: auto;
  margin-left: calc(0px - var(--swiper-navigation-size) / 2);
  margin-top: 0;
}
.swiper-vertical .swiper-button-prev,
.swiper-vertical ~ .swiper-button-prev {
  top: var(--swiper-navigation-sides-offset, 4px);
  bottom: auto;
}
:is(.swiper-vertical .swiper-button-prev, .swiper-vertical ~ .swiper-button-prev) .swiper-navigation-icon {
  transform: rotate(-90deg);
}
.swiper-vertical .swiper-button-next,
.swiper-vertical ~ .swiper-button-next {
  bottom: var(--swiper-navigation-sides-offset, 4px);
  top: auto;
}
:is(.swiper-vertical .swiper-button-next, .swiper-vertical ~ .swiper-button-next) .swiper-navigation-icon {
  transform: rotate(90deg);
}
:root {
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
:is(.swiper-vertical > .swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
:is(.swiper-vertical > .swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
:is(.swiper-vertical > .swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
:is(.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
:is(.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
:is(.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
.success-modal {
  --backdrop-opacity: 0.8;
  --width: 100%;
  --height: 100%;
  --border-radius: 0;
  --box-shadow: none;
}
.notification-modal {
  --backdrop-opacity: 0.5;
  --width: 100%;
  --height: 100%;
  --border-radius: 0;
}
.checkin-success-modal {
  --backdrop-opacity: 0.7;
  --width: 100%;
  --height: 100%;
  --border-radius: 0;
}
:root {
  --gym-primary: #B3FF04;
  --gym-primary-dark: #8FCC03;
  --gym-primary-darker: #6B9902;
  --gym-primary-darkest: #4D7301;
  --gym-primary-light: #C7FF33;
  --gym-primary-lighter: #E6FF66;
  --gym-accent-orange: #FF8C04;
  --gym-accent-red: #FF4B04;
  --gym-neutral-light: #F8FFE6;
  --gym-neutral-medium: #7A9902;
  --gym-neutral-dark: #2D4001;
  --gym-bg-primary: #FFFFFF;
  --gym-bg-secondary: #F8FFE6;
  --gym-bg-accent: #E6FF66;
  --gym-text-primary: #000000;
  --gym-text-secondary: #4D7301;
  --gym-text-light: #7A9902;
  --gym-text-white: #FFFFFF;
  --swiper-theme-color: #6b8e23;
  --swiper-navigation-color: #6b8e23;
  --swiper-pagination-color: #6b8e23;
  --swiper-scrollbar-bg-color: rgba(107, 142, 35, 0.2);
  --swiper-scrollbar-drag-bg-color: #6b8e23;
}
ion-button {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-sm);
  --transition: var(--transition-fast);
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.5px;
}
ion-button.button-fill {
  --box-shadow: var(--shadow-md);
}
ion-button.button-fill:hover {
  --box-shadow: var(--shadow-lg);
  transform: translateY(-1px);
}
ion-button.button-fill:active {
  transform: translateY(0);
  --box-shadow: var(--shadow-sm);
}
ion-button.button-outline {
  --border-width: 1px;
  --border-radius: var(--border-radius-md);
  -webkit-backdrop-filter: var(--blur-sm);
  backdrop-filter: var(--blur-sm);
}
ion-button.button-outline:hover {
  --box-shadow: var(--shadow-sm);
}
ion-button.button-clear {
  --border-radius: var(--border-radius-md);
}
ion-button.button-clear:hover {
  background: rgba(var(--ion-color-primary-rgb), 0.1);
}
ion-card {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-md);
  margin: var(--spacing-md);
  transition: var(--transition-normal);
  -webkit-backdrop-filter: var(--blur-sm);
  backdrop-filter: var(--blur-sm);
}
ion-card:hover {
  --box-shadow: var(--shadow-lg);
  transform: translateY(-2px);
}
ion-card ion-card-header {
  padding: var(--spacing-lg);
}
ion-card ion-card-header ion-card-title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}
ion-card ion-card-header ion-card-subtitle {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-normal);
  opacity: 0.7;
}
ion-card ion-card-content {
  padding: var(--spacing-lg);
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
}
ion-input,
ion-textarea,
ion-select {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
  --padding-top: var(--spacing-md);
  --padding-bottom: var(--spacing-md);
  font-size: var(--font-size-md);
  transition: var(--transition-fast);
}
ion-input.ion-focused,
ion-textarea.ion-focused,
ion-select.ion-focused {
  --box-shadow: 0 0 0 3px rgba(var(--ion-color-primary-rgb), 0.2);
}
ion-item {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
  margin: var(--spacing-sm) var(--spacing-md);
  transition: var(--transition-fast);
}
ion-item.ion-focused {
  --background: rgba(var(--ion-color-primary-rgb), 0.05);
}
ion-item ion-label {
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
}
ion-list {
  background: transparent;
}
ion-list ion-item {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-lg);
  --padding-end: var(--spacing-lg);
  margin: var(--spacing-xs) var(--spacing-md);
  --box-shadow: var(--shadow-sm);
  transition: var(--transition-fast);
}
ion-list ion-item:hover {
  --box-shadow: var(--shadow-md);
  transform: translateY(-1px);
}
ion-segment {
  --border-radius: var(--border-radius-lg);
  --background: rgba(var(--ion-color-primary-rgb), 0.1);
  -webkit-backdrop-filter: var(--blur-sm);
  backdrop-filter: var(--blur-sm);
}
ion-segment ion-segment-button {
  --border-radius: var(--border-radius-md);
  --transition: var(--transition-fast);
  font-weight: var(--font-weight-medium);
}
ion-segment ion-segment-button.segment-button-checked {
  --box-shadow: var(--shadow-sm);
}
ion-chip {
  --border-radius: var(--border-radius-full);
  --background: rgba(var(--ion-color-primary-rgb), 0.1);
  --color: var(--ion-color-primary);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  transition: var(--transition-fast);
}
ion-chip:hover {
  --background: rgba(var(--ion-color-primary-rgb), 0.2);
  transform: scale(1.05);
}
ion-alert {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
  -webkit-backdrop-filter: var(--blur-md);
  backdrop-filter: var(--blur-md);
}
ion-alert .alert-wrapper {
  --border-radius: var(--border-radius-lg);
}
ion-alert .alert-button {
  --border-radius: var(--border-radius-md);
  font-weight: var(--font-weight-medium);
}
ion-modal {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-modal ion-header ion-toolbar {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
}
ion-toast {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-lg);
  -webkit-backdrop-filter: var(--blur-md);
  backdrop-filter: var(--blur-md);
}
ion-tabs ion-tab-bar {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-md);
  -webkit-backdrop-filter: var(--blur-sm);
  backdrop-filter: var(--blur-sm);
}
ion-tabs ion-tab-bar ion-tab-button {
  --border-radius: var(--border-radius-md);
  transition: var(--transition-fast);
}
ion-tabs ion-tab-bar ion-tab-button.tab-selected {
  --background: rgba(var(--ion-color-primary-rgb), 0.1);
}
ion-loading {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
  -webkit-backdrop-filter: var(--blur-lg);
  backdrop-filter: var(--blur-lg);
}
ion-popover {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-lg);
  -webkit-backdrop-filter: var(--blur-md);
  backdrop-filter: var(--blur-md);
}
ion-action-sheet {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-xl);
  -webkit-backdrop-filter: var(--blur-md);
  backdrop-filter: var(--blur-md);
}
ion-action-sheet .action-sheet-button {
  --border-radius: var(--border-radius-md);
  font-weight: var(--font-weight-medium);
}
.apple-shadow-sm {
  box-shadow: var(--shadow-sm);
}
.apple-shadow-md {
  box-shadow: var(--shadow-md);
}
.apple-shadow-lg {
  box-shadow: var(--shadow-lg);
}
.apple-shadow-xl {
  box-shadow: var(--shadow-xl);
}
.apple-rounded-sm {
  border-radius: var(--border-radius-sm);
}
.apple-rounded-md {
  border-radius: var(--border-radius-md);
}
.apple-rounded-lg {
  border-radius: var(--border-radius-lg);
}
.apple-rounded-xl {
  border-radius: var(--border-radius-xl);
}
.apple-rounded-full {
  border-radius: var(--border-radius-full);
}
.apple-blur-sm {
  -webkit-backdrop-filter: var(--blur-sm);
  backdrop-filter: var(--blur-sm);
}
.apple-blur-md {
  -webkit-backdrop-filter: var(--blur-md);
  backdrop-filter: var(--blur-md);
}
.apple-blur-lg {
  -webkit-backdrop-filter: var(--blur-lg);
  backdrop-filter: var(--blur-lg);
}
.apple-transition-fast {
  transition: var(--transition-fast);
}
.apple-transition-normal {
  transition: var(--transition-normal);
}
.apple-transition-slow {
  transition: var(--transition-slow);
}
.apple-spacing-xs {
  padding: var(--spacing-xs);
}
.apple-spacing-sm {
  padding: var(--spacing-sm);
}
.apple-spacing-md {
  padding: var(--spacing-md);
}
.apple-spacing-lg {
  padding: var(--spacing-lg);
}
.apple-spacing-xl {
  padding: var(--spacing-xl);
}
.apple-spacing-xxl {
  padding: var(--spacing-xxl);
}
.apple-text-xs {
  font-size: var(--font-size-xs);
}
.apple-text-sm {
  font-size: var(--font-size-sm);
}
.apple-text-md {
  font-size: var(--font-size-md);
}
.apple-text-lg {
  font-size: var(--font-size-lg);
}
.apple-text-xl {
  font-size: var(--font-size-xl);
}
.apple-text-xxl {
  font-size: var(--font-size-xxl);
}
.apple-text-xxxl {
  font-size: var(--font-size-xxxl);
}
.apple-font-light {
  font-weight: var(--font-weight-light);
}
.apple-font-normal {
  font-weight: var(--font-weight-normal);
}
.apple-font-medium {
  font-weight: var(--font-weight-medium);
}
.apple-font-semibold {
  font-weight: var(--font-weight-semibold);
}
.apple-font-bold {
  font-weight: var(--font-weight-bold);
}
.apple-leading-tight {
  line-height: var(--line-height-tight);
}
.apple-leading-normal {
  line-height: var(--line-height-normal);
}
.apple-leading-relaxed {
  line-height: var(--line-height-relaxed);
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #f5f5f5 inset !important;
  -webkit-text-fill-color: #000000 !important;
  background-color: #f5f5f5 !important;
  background-clip: content-box !important;
  transition: background-color 5000s ease-in-out 0s !important;
}
input.ion-focused:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 30px #ffffff inset !important;
  background-color: #ffffff !important;
}
.custom-validation-alert .alert-button {
  color: var(--ion-color-dark) !important;
  --color: var(--ion-color-dark) !important;
}
.custom-validation-alert .alert-button.sc-ion-alert-ios {
  color: var(--ion-color-dark) !important;
}
.custom-validation-alert .alert-button-group .alert-button {
  color: var(--ion-color-dark) !important;
  --color: var(--ion-color-dark) !important;
}
.alert-button.sc-ion-alert-ios {
  color: var(--ion-color-dark) !important;
}
.alert-button-group .alert-button.sc-ion-alert-ios {
  color: var(--ion-color-dark) !important;
}
ion-select {
  --color: var(--gym-neutral-dark);
  --placeholder-color: var(--gym-neutral-dark);
  --placeholder-opacity: 0.7;
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-medium);
  padding: 0;
  margin: 0;
}
ion-select.form-select {
  text-align: right;
  --color: var(--gym-neutral-dark);
  --placeholder-color: var(--gym-neutral-dark);
  --placeholder-opacity: 0.7;
}
ion-select-option {
  --color: var(--gym-neutral-dark);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-medium);
  padding: 12px 16px;
  transition: background-color 0.15s ease;
}
ion-select-option:hover {
  --background: rgba(var(--gym-primary-rgb), 0.05);
}
ion-select-option.select-option-selected {
  --background: rgba(106, 150, 17, 0.15);
  --color: #5a7a0f;
  font-weight: var(--font-weight-semibold);
}
ion-popover.select-popover {
  --background: #ffffff;
  --box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
ion-popover.select-popover ion-list {
  background: transparent;
  padding: 8px 0;
}
ion-popover.select-popover ion-item {
  --background: transparent;
  --border-radius: 12px;
  --padding-start: 16px;
  --padding-end: 16px;
  --padding-top: 12px;
  --padding-bottom: 12px;
  margin: 4px 8px;
  border-radius: 12px;
  transition: background-color 0.15s ease;
}
ion-popover.select-popover ion-item:hover {
  --background: rgba(var(--gym-primary-rgb), 0.05);
}
ion-popover.select-popover ion-item.item-selected {
  --background: rgba(106, 150, 17, 0.15);
  --color: #5a7a0f;
}
ion-popover.select-popover ion-item ion-label {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-medium);
  color: var(--gym-neutral-dark);
}
ion-popover.select-popover ion-item.item-selected ion-label {
  color: #5a7a0f;
  font-weight: var(--font-weight-semibold);
}
ion-action-sheet.select-action-sheet {
  --background: #ffffff;
  --border-radius: 20px 20px 0 0;
  --box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.12);
}
ion-action-sheet.select-action-sheet .action-sheet-container {
  border-radius: 20px 20px 0 0;
}
ion-action-sheet.select-action-sheet .action-sheet-button {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-medium);
  color: var(--gym-neutral-dark);
  padding: 16px 20px;
  border-radius: 12px;
  margin: 4px 8px;
  transition: background-color 0.15s ease;
}
ion-action-sheet.select-action-sheet .action-sheet-button:hover {
  background: rgba(var(--gym-primary-rgb), 0.05);
}
ion-action-sheet.select-action-sheet .action-sheet-button.action-sheet-selected {
  background: rgba(106, 150, 17, 0.15);
  color: #5a7a0f;
  font-weight: var(--font-weight-semibold);
}
ion-action-sheet.select-action-sheet .action-sheet-cancel {
  background: rgba(142, 142, 147, 0.1);
  color: #8e8e93;
  font-weight: var(--font-weight-semibold);
}
ion-action-sheet.select-action-sheet .action-sheet-cancel:hover {
  background: rgba(142, 142, 147, 0.15);
}
ion-alert.select-alert {
  --background: #ffffff;
  --border-radius: 16px;
  --box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}
ion-alert.select-alert .alert-wrapper {
  border-radius: 16px;
}
ion-alert.select-alert .alert-radio-group {
  padding: 8px 0;
}
ion-alert.select-alert .alert-radio-button {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-medium);
  color: var(--gym-neutral-dark);
  padding: 12px 16px;
  border-radius: 12px;
  margin: 4px 8px;
  transition: background-color 0.15s ease;
}
ion-alert.select-alert .alert-radio-button:hover {
  background: rgba(var(--gym-primary-rgb), 0.05);
}
ion-alert.select-alert .alert-radio-button.alert-radio-checked {
  background: rgba(106, 150, 17, 0.15);
  color: #5a7a0f;
  font-weight: var(--font-weight-semibold);
}
ion-alert.select-alert .alert-radio-button .alert-radio-label {
  color: inherit;
  font-weight: inherit;
}
ion-alert.select-alert .alert-button-group {
  padding: 16px 20px 8px;
}
ion-alert.select-alert .alert-button {
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
  padding: 12px 20px;
  border-radius: 12px;
  margin: 4px;
  transition: background-color 0.15s ease;
}
ion-alert.select-alert .alert-button.alert-button-cancel {
  background: rgba(142, 142, 147, 0.1);
  color: #8e8e93;
}
ion-alert.select-alert .alert-button.alert-button-cancel:hover {
  background: rgba(142, 142, 147, 0.15);
}
ion-alert.select-alert .alert-button.alert-button-confirm {
  background: rgba(var(--gym-primary-rgb), 0.1);
  color: var(--gym-primary);
}
ion-alert.select-alert .alert-button.alert-button-confirm:hover {
  background: rgba(var(--gym-primary-rgb), 0.15);
}
[aria-checked=true].sc-ion-alert-ios .alert-radio-label.sc-ion-alert-ios {
  color: #5a7a0f !important;
}
.sc-ion-alert-ios .alert-radio-label.sc-ion-alert-ios[aria-checked=true] {
  color: #5a7a0f !important;
}
.modern-picker {
  --background: #ffffff;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.1);
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.modern-picker .picker-wrapper {
  background: transparent;
  border-top-left-radius: 20px !important;
  border-top-right-radius: 20px !important;
}
.picker-wrapper {
  border-top-left-radius: 20px !important;
  border-top-right-radius: 20px !important;
}
.picker-wrapper.sc-ion-picker-legacy-ios {
  border-top-left-radius: 20px !important;
  border-top-right-radius: 20px !important;
}
.modern-picker .picker-toolbar {
  background: #ffffff;
  border-top-left-radius: 20px !important;
  border-top-right-radius: 20px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.modern-picker .picker-toolbar-button {
  font-size: 16px;
  font-weight: 600;
  border-radius: 12px;
  transition: background-color 0.15s ease;
}
.modern-picker .picker-toolbar-button .picker-button {
  color: #000000;
}
.modern-picker .picker-cancel-button {
  color: #8e8e93;
  background: rgba(142, 142, 147, 0.1);
}
.modern-picker .picker-cancel-button:hover {
  background: rgba(142, 142, 147, 0.15);
}
.modern-picker .picker-confirm-button:hover {
  background: rgba(0, 122, 255, 0.15);
}
.modern-picker .picker-columns {
  background: #ffffff;
  padding: 4px 0;
}
.modern-picker .picker-column {
  background: transparent;
}
.modern-picker .picker-opts {
  padding: 0 20px;
}
.modern-picker .picker-opt {
  font-size: 20px;
  font-weight: 500;
  color: #1d1d1f;
  padding: 12px 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  margin: -4px 0;
}
.modern-picker .picker-opt.picker-opt-selected {
  color: #6a9611;
  font-weight: 700;
  background: #d8e4c2;
}
.modern-picker .picker-highlight {
  background: rgba(0, 122, 255, 0.08);
  border-radius: 10px;
  height: 44px;
  margin: 2px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* src/theme/variables.scss */
:root {
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-xxl: 48px;
  --border-radius-sm: 12px;
  --border-radius-md: 16px;
  --border-radius-lg: 20px;
  --border-radius-xl: 24px;
  --border-radius-full: 50%;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.15);
  --blur-sm: blur(1px);
  --blur-md: blur(2px);
  --blur-lg: blur(3px);
  --transition-fast: 0.2s ease-out;
  --transition-normal: 0.3s ease-out;
  --transition-slow: 0.5s ease-out;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-xxl: 24px;
  --font-size-xxxl: 32px;
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --line-height-tight: 1.2;
  --line-height-normal: 1.4;
  --line-height-relaxed: 1.6;
  --breakpoint-mobile: 480px;
  --breakpoint-tablet: 768px;
  --breakpoint-desktop: 1024px;
  --breakpoint-large-desktop: 1280px;
  --max-content-width: 500px;
  --max-content-width-wide: 600px;
}
:root {
  --ion-color-primary: #B3FF04;
  --ion-color-primary-rgb:
    179,
    255,
    4;
  --ion-color-primary-contrast: #000000;
  --ion-color-primary-contrast-rgb:
    0,
    0,
    0;
  --ion-color-primary-shade: #9ee104;
  --ion-color-primary-tint: #bbff1d;
  --ion-color-secondary: #8FCC03;
  --ion-color-secondary-rgb:
    143,
    204,
    3;
  --ion-color-secondary-contrast: #000000;
  --ion-color-secondary-contrast-rgb:
    0,
    0,
    0;
  --ion-color-secondary-shade: #7eb403;
  --ion-color-secondary-tint: #9ad11c;
  --ion-color-tertiary: #6B9902;
  --ion-color-tertiary-rgb:
    107,
    153,
    2;
  --ion-color-tertiary-contrast: #ffffff;
  --ion-color-tertiary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-tertiary-shade: #5e8702;
  --ion-color-tertiary-tint: #7aa31b;
  --ion-color-success: #C7FF33;
  --ion-color-success-rgb:
    199,
    255,
    51;
  --ion-color-success-contrast: #000000;
  --ion-color-success-contrast-rgb:
    0,
    0,
    0;
  --ion-color-success-shade: #afe12d;
  --ion-color-success-tint: #cdff47;
  --ion-color-warning: #FF8C04;
  --ion-color-warning-rgb:
    255,
    140,
    4;
  --ion-color-warning-contrast: #000000;
  --ion-color-warning-contrast-rgb:
    0,
    0,
    0;
  --ion-color-warning-shade: #e17b04;
  --ion-color-warning-tint: #ff981d;
  --ion-color-danger: #FF4B04;
  --ion-color-danger-rgb:
    255,
    75,
    4;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb:
    255,
    255,
    255;
  --ion-color-danger-shade: #e24204;
  --ion-color-danger-tint: #ff5d1d;
  --ion-color-dark: #4D7301;
  --ion-color-dark-rgb:
    77,
    115,
    1;
  --ion-color-dark-contrast: #ffffff;
  --ion-color-dark-contrast-rgb:
    255,
    255,
    255;
  --ion-color-dark-shade: #446501;
  --ion-color-dark-tint: #5f811a;
  --ion-color-medium: #7A9902;
  --ion-color-medium-rgb:
    122,
    153,
    2;
  --ion-color-medium-contrast: #ffffff;
  --ion-color-medium-contrast-rgb:
    255,
    255,
    255;
  --ion-color-medium-shade: #6c8702;
  --ion-color-medium-tint: #87a31b;
  --ion-color-light: #E6FF66;
  --ion-color-light-rgb:
    230,
    255,
    102;
  --ion-color-light-contrast: #000000;
  --ion-color-light-contrast-rgb:
    0,
    0,
    0;
  --ion-color-light-shade: #cae25a;
  --ion-color-light-tint: #e9ff75;
}
:root .ion-color-primary {
  --ion-color-base: var(--ion-color-primary);
  --ion-color-base-rgb: var(--ion-color-primary-rgb);
  --ion-color-contrast: var(--ion-color-primary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb);
  --ion-color-shade: var(--ion-color-primary-shade);
  --ion-color-tint: var(--ion-color-primary-tint);
}
:root .ion-color-secondary {
  --ion-color-base: var(--ion-color-secondary);
  --ion-color-base-rgb: var(--ion-color-secondary-rgb);
  --ion-color-contrast: var(--ion-color-secondary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb);
  --ion-color-shade: var(--ion-color-secondary-shade);
  --ion-color-tint: var(--ion-color-secondary-tint);
}
:root .ion-color-tertiary {
  --ion-color-base: var(--ion-color-tertiary);
  --ion-color-base-rgb: var(--ion-color-tertiary-rgb);
  --ion-color-contrast: var(--ion-color-tertiary-contrast);
  --ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb);
  --ion-color-shade: var(--ion-color-tertiary-shade);
  --ion-color-tint: var(--ion-color-tertiary-tint);
}
:root .ion-color-success {
  --ion-color-base: var(--ion-color-success);
  --ion-color-base-rgb: var(--ion-color-success-rgb);
  --ion-color-contrast: var(--ion-color-success-contrast);
  --ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb);
  --ion-color-shade: var(--ion-color-success-shade);
  --ion-color-tint: var(--ion-color-success-tint);
}
:root .ion-color-warning {
  --ion-color-base: var(--ion-color-warning);
  --ion-color-base-rgb: var(--ion-color-warning-rgb);
  --ion-color-contrast: var(--ion-color-warning-contrast);
  --ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb);
  --ion-color-shade: var(--ion-color-warning-shade);
  --ion-color-tint: var(--ion-color-warning-tint);
}
:root .ion-color-danger {
  --ion-color-base: var(--ion-color-danger);
  --ion-color-base-rgb: var(--ion-color-danger-rgb);
  --ion-color-contrast: var(--ion-color-danger-contrast);
  --ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb);
  --ion-color-shade: var(--ion-color-danger-shade);
  --ion-color-tint: var(--ion-color-danger-tint);
}
:root .ion-color-dark {
  --ion-color-base: var(--ion-color-dark);
  --ion-color-base-rgb: var(--ion-color-dark-rgb);
  --ion-color-contrast: var(--ion-color-dark-contrast);
  --ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb);
  --ion-color-shade: var(--ion-color-dark-shade);
  --ion-color-tint: var(--ion-color-dark-tint);
}
:root .ion-color-medium {
  --ion-color-base: var(--ion-color-medium);
  --ion-color-base-rgb: var(--ion-color-medium-rgb);
  --ion-color-contrast: var(--ion-color-medium-contrast);
  --ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb);
  --ion-color-shade: var(--ion-color-medium-shade);
  --ion-color-tint: var(--ion-color-medium-tint);
}
:root .ion-color-light {
  --ion-color-base: var(--ion-color-light);
  --ion-color-base-rgb: var(--ion-color-light-rgb);
  --ion-color-contrast: var(--ion-color-light-contrast);
  --ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb);
  --ion-color-shade: var(--ion-color-light-shade);
  --ion-color-tint: var(--ion-color-light-tint);
}
ion-button {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-sm);
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.5px;
}
ion-card {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-md);
}
ion-input,
ion-textarea,
ion-select {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
  --padding-top: var(--spacing-md);
  --padding-bottom: var(--spacing-md);
}
ion-item {
  --border-radius: var(--border-radius-md);
  --padding-start: var(--spacing-md);
  --padding-end: var(--spacing-md);
}
ion-list {
  background: transparent;
}
ion-segment {
  --border-radius: var(--border-radius-lg);
}
ion-segment-button {
  --border-radius: var(--border-radius-md);
}
ion-chip {
  --border-radius: var(--border-radius-full);
}
ion-alert {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-modal {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-toast {
  --border-radius: var(--border-radius-md);
  --box-shadow: var(--shadow-lg);
}
ion-tab-bar {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-md);
}
ion-tab-button {
  --border-radius: var(--border-radius-md);
}
ion-loading {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-xl);
}
ion-popover {
  --border-radius: var(--border-radius-lg);
  --box-shadow: var(--shadow-lg);
}
ion-action-sheet {
  --border-radius: var(--border-radius-lg) var(--border-radius-lg) 0 0;
  --box-shadow: var(--shadow-xl);
}

/* angular:styles/global:styles */
