/* src/theme/variables.scss */
/* src/global.scss */
.gray-bg-container {
  background-color: var(--primary-grey);
  border-radius: var(--border-radius);
  padding: var(--spacing-12, --spacing-10);
  font-size: var(--font-size-md);
}
:root {
  --primary-maroon: #7D2938;
  --primary-maroon2: #F2EAEC;
  --primary-maroon3: #BE949B;
  --primary-maroon4: #DEC9CD;
  --primary-grey: #F2F2F2;
  --primary-grey1: #3C3D40;
  --primary-grey2: #ADAEB0;
  --primary-white: #FFFFFF;
  --primary-bg: #FAFAFA;
  --secondary-light-grey: #E9E9E9;
  --error-red: #FF0000;
  --success: #2dd36f;
  --danger: #eb445a;
  --warning: #f0932b;
}
:root {
  --ion-color-primary: var(--primary-maroon);
  --ion-color-primary-rgb:
    125,
    41,
    56;
  --ion-color-primary-contrast: var(--primary-white);
  --ion-color-primary-contrast-rgb:
    255,
    255,
    255;
  --ion-color-primary-shade: #6e2431;
  --ion-color-primary-tint: #8a3e4c;
  --ion-color-secondary: var(--primary-maroon2);
  --ion-color-secondary-rgb:
    242,
    234,
    236;
  --ion-color-secondary-contrast: var(--primary-maroon);
  --ion-color-secondary-contrast-rgb:
    125,
    41,
    56;
  --ion-color-secondary-shade: #d5ced0;
  --ion-color-secondary-tint: #f3ecee;
  --ion-color-success: var(--primary-maroon);
}
.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);
}
.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);
}
.bg-primary {
  background-color: var(--ion-color-primary);
}
.bg-secondary {
  background-color: var(--ion-color-secondary);
}
.bg-tertiary {
  background-color: var(--ion-color-tertiary);
}
.bg-success {
  background-color: var(--ion-color-success);
}
.bg-warning {
  background-color: var(--ion-color-warning);
}
.bg-danger {
  background-color: var(--ion-color-danger);
}
.bg-light {
  background-color: var(--ion-color-light);
}
:root {
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;
  --spacing-3xl: 4rem;
  --max-content-width: 60rem;
  --spacing-04: 0.222rem;
  --spacing-06: 0.333rem;
  --spacing-08: 0.444rem;
  --spacing-10: 0.556rem;
  --spacing-12: 0.667rem;
  --spacing-14: 0.778rem;
  --spacing-16: 0.889rem;
  --spacing-17: 0.944rem;
  --spacing-18: 1rem;
  --spacing-20: 1.111rem;
  --spacing-22: 1.222rem;
  --spacing-24: 1.333rem;
  --spacing-27: 1.5rem;
  --spacing-30: 1.667rem;
  --spacing-34: 1.889rem;
  --spacing-36: 2rem;
  --spacing-40: 2.222rem;
  --spacing-44: 2.444rem;
  --spacing-50: 2.778rem;
  --spacing-56: 3.111rem;
  --spacing-60: 3.333rem;
  --spacing-100: 5.556rem;
  --spacing-120: 6.667rem;
}
@media (max-width: 376px) {
  [size-xxs="12"] {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  [size-xxs="6"] {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
  }
  [size-xxs="4"] {
    flex: 0 0 33.333333% !important;
    width: 33.333333% !important;
    max-width: 33.333333% !important;
  }
  [size-xxs="3"] {
    flex: 0 0 25% !important;
    width: 25% !important;
    max-width: 25% !important;
  }
}
@font-face {
  font-family: "Inter";
  src: url("./media/Inter-VariableFont_opsz,wght.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("./media/Inter-Italic-VariableFont_opsz,wght.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}
html {
  font-size: 18px;
}
@media only screen and (max-width: 768px) {
  html {
    font-size: 16px;
  }
}
@media (max-width: 376px) {
  html {
    font-size: 14px;
  }
}
:root {
  --font-family: "Inter", sans-serif;
  --font-weight-thin: 100;
  --font-weight-extra-light: 200;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extra-bold: 800;
  --font-weight-black: 900;
  --ion-font-family: "Inter", sans-serif;
  --ion-default-font-size: var(--font-size-base, 18px);
  --font-size-xs: 0.667rem;
  --font-size-sm: 0.778rem;
  --font-size-md: 0.889rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.111rem;
  --font-size-xl: 1.222rem;
  --font-size-2xl: 1.333rem;
  --font-size-2xl-1: 1.5rem;
  --font-size-3xl: 1.667rem;
  --font-size-3xl1: 1.778rem;
  --font-size-4xl: 2rem;
  --font-size-16: 0.889rem;
  --font-size-32: 1.778rem;
  --line-height-base: 1.223rem;
  --line-height-24: 1.333rem;
  --font-dark1: #2B2E31;
}
body {
  font-family: var(--font-family), sans-serif;
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--primary-grey1);
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family), sans-serif;
  font-weight: var(--font-weight-medium);
  color: var(--primary-grey1);
  margin-block-start: var(--spacing-16, 16px);
  margin-block-end: var(--spacing-08, 8px);
}
b,
strong,
.highlight {
  font-weight: var(--font-weight-bold);
}
i,
em {
  font-style: italic;
}
:root {
  --scrollbar-track-color: transparent;
  --scrollbar-thumb-color: var(--ion-color-primary);
  --scrollbar-thumb-hover-color: var(--ion-color-primary-shade);
  --scrollbar-width: 8px;
  --scrollbar-height: 8px;
  --scrollbar-border-radius: var(--border-radius, 4px);
}
::-webkit-scrollbar {
  width: var(--scrollbar-width);
  height: var(--scrollbar-height);
}
::-webkit-scrollbar-track {
  background: var(--scrollbar-track-color);
  border-radius: var(--scrollbar-border-radius);
}
::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb-color);
  border-radius: var(--scrollbar-border-radius);
}
::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover-color);
}
* {
  scrollbar-width: thin;
  scrollbar-color: var(--scrollbar-thumb-color) var(--scrollbar-track-color);
}
ion-modal,
app-custom-modal {
  --ion-content-scroll-color: var(--ion-color-primary);
}
ion-modal ion-content::part(scroll),
app-custom-modal ion-content::part(scroll) {
  --scrollbar-thumb-color: var(--ion-color-primary);
}
.light-theme-content {
  --scrollbar-thumb-color: var(--ion-color-medium);
  --scrollbar-thumb-hover-color: var(--ion-color-medium-shade);
}
.ios ion-content::part(scroll) {
  --webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--ion-color-primary) transparent;
}
.ios ion-content::part(scrollbar) {
  background-color: var(--ion-color-primary);
}
.ios ::-webkit-scrollbar-thumb {
  background: var(--ion-color-primary) !important;
}
.md ion-content {
  --overflow: auto;
  --scrollbar-width: 4px;
}
.md ion-content::part(scroll)::-webkit-scrollbar {
  display: block !important;
  width: var(--scrollbar-width) !important;
}
.md ion-content::part(scroll)::-webkit-scrollbar-thumb {
  background: var(--ion-color-primary) !important;
  visibility: visible !important;
  opacity: 1 !important;
}
* {
  -webkit-tap-highlight-color: transparent !important;
  outline: none !important;
}
*:focus {
  outline: none !important;
}
ion-ripple-effect {
  display: none !important;
}
ion-button,
button,
[role=button] {
  transition:
    transform 0.1s ease,
    filter 0.1s ease,
    opacity 0.1s ease !important;
}
ion-button:active,
button:active,
[role=button]:active {
  transform: scale(0.98) !important;
  filter: brightness(0.95) !important;
}
ion-item[button],
ion-item[detail],
ion-accordion ion-item {
  transition: filter 0.1s ease, background-color 0.1s ease !important;
}
ion-item[button]:active,
ion-item[detail]:active,
ion-accordion ion-item:active {
  filter: brightness(0.97) !important;
  background-color: rgba(0, 0, 0, 0.03) !important;
}
ion-icon.clickable,
ion-icon[clickable],
[role=button] ion-icon {
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}
ion-icon.clickable:active,
ion-icon[clickable]:active,
[role=button] ion-icon:active {
  transform: scale(0.9) !important;
  opacity: 0.8 !important;
}
.clickable {
  cursor: pointer !important;
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}
.clickable:active {
  transform: scale(0.98) !important;
  opacity: 0.85 !important;
}
ion-card[button],
ion-card.clickable {
  transition: transform 0.1s ease, box-shadow 0.1s ease !important;
}
ion-card[button]:active,
ion-card.clickable:active {
  transform: scale(0.99) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
ion-input:active,
ion-textarea:active,
ion-select:active,
ion-checkbox:active,
ion-radio:active,
ion-toggle:active {
  opacity: 0.9 !important;
}
.date-input-wrapper .input-actions ion-icon {
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}
.date-input-wrapper .input-actions ion-icon:active {
  transform: scale(0.9) !important;
  opacity: 0.8 !important;
}
ion-accordion ion-item[slot=header] {
  transition: background-color 0.1s ease !important;
}
ion-accordion ion-item[slot=header]:active {
  background-color: rgba(0, 0, 0, 0.02) !important;
}
ion-accordion ion-item[slot=header]:active .ion-accordion-toggle-icon {
  opacity: 0.9 !important;
}
ion-accordion.accordion-expanding > ion-item[slot=header] ion-icon,
ion-accordion.accordion-expanded > ion-item[slot=header] ion-icon {
  transform: rotate(180deg) !important;
}
app-service-tile {
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}
app-service-tile:active {
  transform: scale(0.97) !important;
  opacity: 0.9 !important;
}
.ion-page,
.ion-content {
  max-width: 1000px;
  margin: 0 auto;
}
ion-app {
  justify-content: center;
}
ion-app ion-router-outlet {
  max-width: 1000px;
  width: calc(100% - var(--spacing-20, 20px));
  margin: 0 auto;
  padding: 0 var(--spacing-10, 10px);
}
ion-grid {
  --ion-grid-padding: 0;
  --ion-grid-column-padding: var(--spacing-04, 4px);
}
ion-button {
  --border-radius: var(--ion-button-border-radius);
  --box-shadow: none;
  font-weight: var(--font-weight-medium);
  text-transform: none;
  transition: all 0.2s ease;
  --ripple-color: transparent;
  --background-hover: transparent !important;
  --padding-top: var(--spacing-12, 12px);
  --padding-bottom: var(--spacing-12, 12px);
  --padding-start: var(--spacing-16, 16px);
  --padding-end: var(--spacing-16, 16px);
  height: var(--spacing-44);
}
ion-button.button-small {
  --padding-top: var(--spacing-08, 8px);
  --padding-bottom: var(--spacing-08, 8px);
  --padding-start: var(--spacing-12, 12px);
  --padding-end: var(--spacing-12, 12px);
  font-size: var(--font-size-sm);
  height: var(--spacing-36);
}
ion-button.button-large {
  --padding-top: var(--spacing-16, 16px);
  --padding-bottom: var(--spacing-16, 16px);
  --padding-start: var(--spacing-24, 24px);
  --padding-end: var(--spacing-24, 24px);
  font-size: var(--font-size-base);
  height: var(--spacing-56, 56px);
}
ion-button.button-outline {
  --border-width: 1px;
  --border-style: solid;
  --border-color: var(--ion-color-primary, var(--primary-maroon));
  --color: var(--ion-color-primary, var(--primary-maroon));
}
ion-button.button-outline[color=secondary] {
  --border-color: var(--ion-color-secondary, var(--primary-maroon2));
  --color: var(--ion-color-secondary-contrast, var(--primary-maroon));
}
ion-button.button-disabled {
  --background: var(--secondary-light-grey);
  --color: var(--primary-grey2);
  --opacity: 1;
}
ion-button.button-disabled.button-outline {
  --background: transparent;
  --border-color: var(--secondary-light-grey);
  --color: var(--primary-grey2);
}
ion-button.button-disabled.button-clear {
  --background: transparent;
  --color: var(--primary-grey2);
}
ion-button.button-option {
  --padding-start: var(--spacing-18, 18px);
  --padding-end: var(--spacing-18, 18px);
}
ion-button.button-option::part(native) {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
ion-button.button-option .button-inner {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}
ion-button.button-option::part(native) span {
  flex: 1;
  text-align: left;
  justify-content: flex-start;
}
ion-button.button-option ion-icon[slot=end] {
  margin-left: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  max-width: 0;
  overflow: hidden;
}
ion-button.button-option.selected {
  border: 1px solid var(--ion-color-primary, var(--primary-maroon));
  border-radius: var(--border-radius);
}
ion-button.button-option.selected ion-icon[slot=end] {
  opacity: 1;
  visibility: visible;
  max-width: 100%;
  overflow: visible;
}
ion-button.button-option[expand=block],
ion-button.button-option[expand=full] {
  width: 100%;
}
ion-button.button-option[expand=block]::part(native),
ion-button.button-option[expand=full]::part(native) {
  justify-content: space-between;
}
.form-container form {
  width: 100%;
}
.form-container .form-group {
  margin-bottom: var(--spacing-16, 16px);
}
.form-container .form-actions {
  padding: 0 var(--spacing-12, 12px);
}
.form-container .form-actions ion-button[expand=block] {
  margin-bottom: var(--spacing-16, 16px);
}
ion-label.required::after {
  content: " *";
  color: var(--error-red);
}
ion-item {
  color: var(--primary-grey1);
}
ion-item ion-label {
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--spacing-10, 10px) !important;
  margin-top: var(--spacing-10, 10px) !important;
}
ion-item ion-input.placeholder-style {
  --color: var(--ion-color-medium);
  opacity: 0.6;
}
ion-item ion-input ion-icon {
  position: absolute;
  height: 100%;
  right: calc(-1 * var(--spacing-20, 20px));
  margin: 0;
  top: 50%;
  transform: translateY(-50%);
  color: var(--primary-maroon);
  cursor: pointer;
}
ion-item ion-input ion-input-password-toggle {
  color: var(--primary-maroon);
  cursor: pointer;
  --color: var(--primary-maroon);
}
ion-item ion-input-password-toggle {
  color: var(--primary-maroon) !important;
  cursor: pointer !important;
  --color: var(--primary-maroon) !important;
  font-size: var(--font-size-xl) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: var(--spacing-24, 24px) !important;
  height: var(--spacing-24, 24px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
ion-item ion-input[type=password] {
  --padding-end: var(--spacing-30, 30px) !important;
}
ion-item ion-input,
ion-item ion-textarea,
ion-item ion-select {
  --padding-start: var(--spacing-20, 20px) !important;
  --padding-end: var(--spacing-40, 40px) !important;
  --padding-top: var(--spacing-17, 17px) !important;
  --padding-bottom: var(--spacing-17, 17px) !important;
  --caret-color: var(--primary-maroon) !important;
  border: 1px solid transparent;
  border-radius: 0.5rem !important;
  background-color: var(--primary-grey) !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  min-height: auto !important;
}
ion-item ion-input .native-input,
ion-item ion-input .native-textarea,
ion-item ion-textarea .native-input,
ion-item ion-textarea .native-textarea,
ion-item ion-select .native-input,
ion-item ion-select .native-textarea {
  line-height: var(--line-height-base);
  caret-color: var(--primary-maroon);
}
ion-item ion-input .native-input::placeholder,
ion-item ion-input .native-textarea::placeholder,
ion-item ion-textarea .native-input::placeholder,
ion-item ion-textarea .native-textarea::placeholder,
ion-item ion-select .native-input::placeholder,
ion-item ion-select .native-textarea::placeholder {
  font-weight: var(--font-weight-default);
  color: var(--primary-grey2) !important;
}
ion-item ion-input[required]::part(label)::after,
ion-item ion-input.ion-required::part(label)::after,
ion-item ion-textarea[required]::part(label)::after,
ion-item ion-textarea.ion-required::part(label)::after,
ion-item ion-select[required]::part(label)::after,
ion-item ion-select.ion-required::part(label)::after {
  content: " *";
  color: var(--error-red);
}
ion-item ion-input.ion-invalid.ion-touched,
ion-item ion-input.has-error,
ion-item ion-textarea.ion-invalid.ion-touched,
ion-item ion-textarea.has-error,
ion-item ion-select.ion-invalid.ion-touched,
ion-item ion-select.has-error {
  border-color: var(--error-red) !important;
  box-shadow: none !important;
}
ion-item.no-padding {
  --padding-start: 0 !important;
  --padding-end: 0 !important;
  --inner-padding-start: 0 !important;
  --inner-padding-end: 0 !important;
  --ion-safe-area-left: 0 !important;
  --ion-safe-area-right: 0 !important;
}
.error-message {
  color: var(--error-red);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-24);
}
.ios ion-popover.date-input-popover {
  --showBackdrop: true !important;
  --backdrop-opacity: 0.4 !important;
}
.ios ion-popover.date-input-popover::part(content) {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  max-width: 90vw !important;
  width: auto !important;
  max-height: 80vh !important;
  border-radius: 12px !important;
  box-shadow: 0 28px 48px rgba(0, 0, 0, 0.4) !important;
  z-index: 1000 !important;
}
.ios ion-popover.date-input-popover ion-datetime {
  width: 100%;
}
ion-segment {
  --background: var(--primary-grey);
  border-radius: var(--border-radius);
  grid-auto-columns: minmax(auto, 100%);
}
ion-segment ion-segment-button {
  --background: transparent;
  --background-checked: var(--primary-maroon);
  --color: var(--primary-grey1);
  --color-checked: var(--primary-white);
  --indicator-color: transparent;
  --border-radius: var(--ion-card-border-radius);
  min-height: var(--spacing-40, 40px);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-md);
  text-transform: none;
  letter-spacing: 0;
  margin: var(--spacing-06, 6px);
  transition: all 0.2s ease;
}
ion-segment ion-segment-button:hover {
  --color: var(--primary-maroon);
  opacity: 0.9;
}
ion-tab-bar {
  --background: var(--primary-grey);
  --border: none;
}
ion-tab-bar ion-tab-button {
  --color: var(--primary-grey1);
  --color-selected: var(--primary-white);
}
ion-tab-bar ion-tab-button.tab-selected {
  --background: var(--primary-maroon);
}
ion-accordion-group ion-accordion:not(.default-accordion) {
  margin-bottom: var(--spacing-08, 8px);
  border-radius: var(--border-radius);
}
ion-accordion-group ion-accordion:not(.default-accordion) ion-item[slot=header] {
  --background: var(--primary-white);
  --border-color: transparent;
  --border-radius: var(--border-radius);
  --padding-start: var(--spacing-16, 16px);
  --padding-end: var(--spacing-16, 16px);
  --inner-padding-end: 0;
  font-size: var(--font-size-16, 16px) !important;
}
ion-accordion-group ion-accordion:not(.default-accordion) ion-item[slot=header] ion-label {
  font-weight: var(--font-weight-medium);
}
ion-accordion-group ion-accordion:not(.default-accordion) ion-item[slot=header] ion-label .sub-title {
  font-weight: var(--font-weight-regular);
  color: var(--primary-grey2);
}
ion-accordion-group ion-accordion:not(.default-accordion) ion-item[slot=header] .ion-accordion-toggle-icon {
  font-size: var(--font-size-2xl);
  color: var(--ion-color-primary);
  background-color: var(--primary-maroon2);
  border-radius: 50%;
  padding: var(--spacing-06, 6px);
  width: var(-spacing-24, 24px);
  height: var(-spacing-24, 24px);
  min-width: var(-spacing-24, 24px);
  margin-left: auto;
  margin-right: 0;
  transition: transform 0.3s ease;
  order: 2;
}
ion-accordion-group ion-accordion:not(.default-accordion) .ion-accordion-toggle-icon {
  transition: transform 0.3s ease;
}
ion-accordion-group ion-accordion:not(.default-accordion).accordion-expanded ion-item[slot=header] {
  --border-bottom-width: 0;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
ion-accordion-group ion-accordion:not(.default-accordion) [slot=content] {
  font-size: var(--font-size-16, 16px) !important;
  font-weight: var(--font-weight-regular);
  margin: var(--spacing-16, 16px);
}
ion-accordion-group ion-accordion:not(.default-accordion) [slot=content] .content-text {
  background-color: var(--primary-grey);
  border-radius: var(--border-radius);
  padding: var(--spacing-12, --spacing-10);
  font-size: var(--font-size-md);
  margin-bottom: var(--spacing-16, 16px);
}
ion-accordion-group ion-accordion:not(.default-accordion).selected-accordion ion-item[slot=header] .ion-accordion-toggle-icon {
  background: var(--primary-maroon4);
}
ion-modal.ion-sheet-modal {
  --ion-safe-area-top: 0 !important;
}
ion-modal.ion-sheet-modal app-custom-modal .sheet-modal-header {
  padding-top: 0 !important;
}
ion-modal.ion-sheet-modal app-custom-modal .sheet-modal-header ion-title.title-left {
  padding-left: var(--spacing-16, 16px) !important;
}
ion-modal.ion-sheet-modal app-custom-modal .sheet-modal-header ion-toolbar {
  --padding-top: 0 !important;
  padding-top: 0 !important;
}
ion-modal.ion-sheet-modal ion-header {
  padding-top: 0 !important;
}
ion-modal.ion-sheet-modal ion-header ion-toolbar {
  --padding-top: 0 !important;
  padding-top: 0 !important;
}
ion-modal.ion-sheet-modal ion-footer {
  padding-bottom: var(--ion-safe-area-bottom) !important;
}
ion-modal.centered-dialog-modal {
  --ion-safe-area-top: 0 !important;
  --height: auto;
  --width: auto;
  --max-width: 90%;
  --max-height: 90%;
  --border-radius: var(--spacing-12, 12px);
  --box-shadow: 0 28px 48px rgba(0, 0, 0, 0.4);
}
ion-modal.centered-dialog-modal.primary-bg-color .dialog-wrapper {
  background-color: var(--primary-bg);
}
ion-modal.centered-dialog-modal .modal-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}
ion-modal.centered-dialog-modal .dialog-wrapper {
  padding: var(--spacing-16, 16px);
}
ion-modal.centered-dialog-modal .dialog-wrapper .dialog-content {
  margin: 0 !important;
}
ion-modal.centered-dialog-modal ion-header ion-toolbar {
  --min-height: var(--spacing-24, 24px);
  margin-bottom: var(--spacing-16, 16px);
}
ion-modal.centered-dialog-modal ion-header ion-toolbar ion-buttons[slot=start] {
  left: calc(-1 * var(--spacing-20, 20px));
}
ion-modal.centered-dialog-modal ion-header ion-toolbar ion-buttons[slot=end] {
  right: calc(-1 * var(--spacing-18, 18px));
}
ion-modal ion-header ion-toolbar,
ion-modal app-custom-modal ion-header ion-toolbar {
  --color: var(--primary-grey1);
}
ion-modal ion-header ion-toolbar ion-title,
ion-modal ion-header ion-toolbar ion-text,
ion-modal app-custom-modal ion-header ion-toolbar ion-title,
ion-modal app-custom-modal ion-header ion-toolbar ion-text {
  display: contents;
  font-weight: var(--font-weight-medium, 500);
  font-size: var(--font-size-md, 16px);
  margin-left: var(--spacing-34, 34px) !important;
}
ion-modal ion-header ion-toolbar ion-title.title-center,
ion-modal ion-header ion-toolbar ion-text.title-center,
ion-modal app-custom-modal ion-header ion-toolbar ion-title.title-center,
ion-modal app-custom-modal ion-header ion-toolbar ion-text.title-center {
  text-align: center;
}
ion-modal ion-header ion-toolbar ion-title.title-left,
ion-modal ion-header ion-toolbar ion-text.title-left,
ion-modal app-custom-modal ion-header ion-toolbar ion-title.title-left,
ion-modal app-custom-modal ion-header ion-toolbar ion-text.title-left {
  text-align: left;
}
ion-modal ion-header ion-toolbar ion-text,
ion-modal app-custom-modal ion-header ion-toolbar ion-text {
  display: block;
  margin-left: 0 !important;
  margin-right: 25px;
}
ion-modal ion-header ion-toolbar ion-text.title-center,
ion-modal app-custom-modal ion-header ion-toolbar ion-text.title-center {
  margin-left: var(--spacing-34, 34px) !important;
}
ion-modal ion-header ion-toolbar ion-buttons,
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons {
  position: absolute;
}
ion-modal ion-header ion-toolbar ion-buttons[slot=start],
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons[slot=start] {
  left: 0;
}
ion-modal ion-header ion-toolbar ion-buttons[slot=end],
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons[slot=end] {
  right: 0;
}
ion-modal ion-header ion-toolbar ion-buttons ion-button ion-icon,
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons ion-button ion-icon {
  font-size: var(--font-size-md);
}
ion-modal ion-header ion-toolbar ion-buttons ion-button:has(ion-icon[src*="back.svg"]) ion-icon,
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons ion-button:has(ion-icon[src*="back.svg"]) ion-icon {
  font-size: var(--font-size-base) !important;
}
ion-modal ion-header ion-toolbar ion-buttons ion-button:has(ion-icon[name=close]) ion-icon,
ion-modal app-custom-modal ion-header ion-toolbar ion-buttons ion-button:has(ion-icon[name=close]) ion-icon {
  font-size: var(--font-size-lg);
  color: var(--ion-color-primary);
  background-color: var(--primary-maroon2);
  border-radius: 50%;
  padding: var(--spacing-06, 6px);
  width: 24px;
  height: 24px;
  min-width: 24px;
  margin-left: auto;
  margin-right: 0;
  transition: transform 0.3s ease;
}
ion-modal ion-content,
ion-modal app-custom-modal ion-content {
  color: var(--primary-grey1);
}
ion-modal ion-footer,
ion-modal app-custom-modal ion-footer {
  --background: var(--ion-color-light);
}
ion-modal ion-footer .action-buttons,
ion-modal app-custom-modal ion-footer .action-buttons {
  padding: var(--spacing-14, 14px);
}
ion-modal ion-footer .action-buttons.space-between-buttons,
ion-modal app-custom-modal ion-footer .action-buttons.space-between-buttons {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal-content-standard {
  padding: var(--spacing-16, 16px);
  padding-top: 0;
}
.modal-footer-standard .action-buttons,
.centered-dialog-modal .action-buttons {
  padding: 0;
}
.modal-footer-standard .action-buttons ion-button,
.centered-dialog-modal .action-buttons ion-button {
  --border-radius: var(--spacing-10, 10px);
  font-weight: var(--font-weight-medium, --font-weight-medium);
}
.modal-footer-standard .action-buttons ion-button[disabled],
.centered-dialog-modal .action-buttons ion-button[disabled] {
  opacity: 0.5;
}
.modal-footer-standard .action-buttons ion-button:first-child,
.centered-dialog-modal .action-buttons ion-button:first-child {
  margin-top: var(--spacing-16, 16px);
}
.modal-footer-standard .action-buttons ion-button:last-child,
.centered-dialog-modal .action-buttons ion-button:last-child {
  margin-bottom: 0;
}
.modal-footer-standard .right-buttons {
  display: flex;
  justify-content: flex-end;
  gap: var(--spacing-08, 8px);
}
.modal-footer-standard .left-buttons {
  display: flex;
  justify-content: flex-start;
  gap: var(--spacing-08, 8px);
}
ion-card {
  transition: all 0.2s ease;
  margin: 0;
  --background: white;
  color: var(--primary-grey1);
  border-radius: var(--border-radius);
  padding: var(--spacing-16, 16px) !important;
}
ion-card ion-card-content {
  padding: 0 !important;
}
.notification-toast {
  text-align: center;
  --background: transparent !important;
  --box-shadow: none !important;
}
.notification-toast::part(container) {
  background: white !important;
  color: var(--primary-grey1) !important;
  font-size: var(--font-size-md) !important;
  font-weight: var(--font-weight-medium) !important;
  border-radius: var(--spacing-10, 10px) !important;
  text-align: center !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
  width: auto !important;
  min-width: auto !important;
  max-width: 90vw !important;
  white-space: nowrap !important;
  display: inline-block !important;
  margin-bottom: var(--spacing-30, 30px);
}
.notification-toast.toast-success::part(container) {
  background: var(--success) !important;
  color: white !important;
}
.notification-toast.toast-danger::part(container) {
  background: var(--danger) !important;
  color: white !important;
}
.notification-toast.toast-warning::part(container) {
  background: var(--warning) !important;
  color: white !important;
}
:root {
  --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);
  --border-radius: var(--spacing-10);
  --ion-button-border-radius: var(--border-radius);
  --ion-card-border-radius: var(--border-radius);
  --ion-segment-button-border-radius: var(--border-radius);
}
html,
body {
  background-color: var(--primary-bg);
  color: var(--primary-grey1);
  font-family: var(--font-family), sans-serif;
}
*,
*::before,
*::after {
  box-shadow: none !important;
}
ion-app,
ion-content,
ion-item,
ion-header,
ion-toolbar {
  transition: all 0.2s ease;
  --background: transparent;
}
ion-icon,
svg {
  color: var(--primary-grey1);
}
a {
  color: var(--primary-maroon);
}
pwa-camera-modal-instance,
pwa-camera-modal,
.pwa-camera-modal-instance,
.pwa-camera-modal {
  z-index: 30000 !important;
}
pwa-action-sheet,
.pwa-action-sheet {
  z-index: 30001 !important;
}
@media only screen and (max-width: 768px) {
  .form-container {
    min-height: auto !important;
    padding-bottom: var(--spacing-20, 20px);
  }
  .form-container ion-card {
    margin-bottom: var(--spacing-20, 20px);
  }
}

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