/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./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{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: 0.18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #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}}/*# sourceMappingURL=core.css.map */

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

/*!***************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/structure.css ***!
  \***************************************************************************************************************************************************************************************************************************************/
*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html:not(.hydrated) body{display:none}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}/*# sourceMappingURL=structure.css.map */

/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/typography.css ***!
  \****************************************************************************************************************************************************************************************************************************************/
html{font-family:var(--ion-font-family)}@supports(-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}/*# sourceMappingURL=typography.css.map */

/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/display.css ***!
  \*************************************************************************************************************************************************************************************************************************************/
.ion-hide{display:none !important}.ion-hide-up{display:none !important}.ion-hide-down{display:none !important}@media(min-width: 576px){.ion-hide-sm-up{display:none !important}}@media(max-width: 575.98px){.ion-hide-sm-down{display:none !important}}@media(min-width: 768px){.ion-hide-md-up{display:none !important}}@media(max-width: 767.98px){.ion-hide-md-down{display:none !important}}@media(min-width: 992px){.ion-hide-lg-up{display:none !important}}@media(max-width: 991.98px){.ion-hide-lg-down{display:none !important}}@media(min-width: 1200px){.ion-hide-xl-up{display:none !important}}@media(max-width: 1199.98px){.ion-hide-xl-down{display:none !important}}/*# sourceMappingURL=display.css.map */

/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/padding.css ***!
  \*************************************************************************************************************************************************************************************************************************************/
.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-inline-start: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);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--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);padding-inline-start:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-inline-start: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);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--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);margin-inline-start:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}/*# sourceMappingURL=padding.css.map */

/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/float-elements.css ***!
  \********************************************************************************************************************************************************************************************************************************************/
.ion-float-left{float:left !important}.ion-float-right{float:right !important}.ion-float-start{float:left !important}:host-context([dir=rtl]) .ion-float-start{float:right !important}[dir=rtl] .ion-float-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right !important}}.ion-float-end{float:right !important}:host-context([dir=rtl]) .ion-float-end{float:left !important}[dir=rtl] .ion-float-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left !important}}@media(min-width: 576px){.ion-float-sm-left{float:left !important}.ion-float-sm-right{float:right !important}.ion-float-sm-start{float:left !important}:host-context([dir=rtl]) .ion-float-sm-start{float:right !important}[dir=rtl] .ion-float-sm-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right !important}}.ion-float-sm-end{float:right !important}:host-context([dir=rtl]) .ion-float-sm-end{float:left !important}[dir=rtl] .ion-float-sm-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left !important}}}@media(min-width: 768px){.ion-float-md-left{float:left !important}.ion-float-md-right{float:right !important}.ion-float-md-start{float:left !important}:host-context([dir=rtl]) .ion-float-md-start{float:right !important}[dir=rtl] .ion-float-md-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right !important}}.ion-float-md-end{float:right !important}:host-context([dir=rtl]) .ion-float-md-end{float:left !important}[dir=rtl] .ion-float-md-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left !important}}}@media(min-width: 992px){.ion-float-lg-left{float:left !important}.ion-float-lg-right{float:right !important}.ion-float-lg-start{float:left !important}:host-context([dir=rtl]) .ion-float-lg-start{float:right !important}[dir=rtl] .ion-float-lg-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right !important}}.ion-float-lg-end{float:right !important}:host-context([dir=rtl]) .ion-float-lg-end{float:left !important}[dir=rtl] .ion-float-lg-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left !important}}}@media(min-width: 1200px){.ion-float-xl-left{float:left !important}.ion-float-xl-right{float:right !important}.ion-float-xl-start{float:left !important}:host-context([dir=rtl]) .ion-float-xl-start{float:right !important}[dir=rtl] .ion-float-xl-start{float:right !important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right !important}}.ion-float-xl-end{float:right !important}:host-context([dir=rtl]) .ion-float-xl-end{float:left !important}[dir=rtl] .ion-float-xl-end{float:left !important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left !important}}}/*# sourceMappingURL=float-elements.css.map */

/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/text-alignment.css ***!
  \********************************************************************************************************************************************************************************************************************************************/
.ion-text-center{text-align:center !important}.ion-text-justify{text-align:justify !important}.ion-text-start{text-align:start !important}.ion-text-end{text-align:end !important}.ion-text-left{text-align:left !important}.ion-text-right{text-align:right !important}.ion-text-nowrap{white-space:nowrap !important}.ion-text-wrap{white-space:normal !important}@media(min-width: 576px){.ion-text-sm-center{text-align:center !important}.ion-text-sm-justify{text-align:justify !important}.ion-text-sm-start{text-align:start !important}.ion-text-sm-end{text-align:end !important}.ion-text-sm-left{text-align:left !important}.ion-text-sm-right{text-align:right !important}.ion-text-sm-nowrap{white-space:nowrap !important}.ion-text-sm-wrap{white-space:normal !important}}@media(min-width: 768px){.ion-text-md-center{text-align:center !important}.ion-text-md-justify{text-align:justify !important}.ion-text-md-start{text-align:start !important}.ion-text-md-end{text-align:end !important}.ion-text-md-left{text-align:left !important}.ion-text-md-right{text-align:right !important}.ion-text-md-nowrap{white-space:nowrap !important}.ion-text-md-wrap{white-space:normal !important}}@media(min-width: 992px){.ion-text-lg-center{text-align:center !important}.ion-text-lg-justify{text-align:justify !important}.ion-text-lg-start{text-align:start !important}.ion-text-lg-end{text-align:end !important}.ion-text-lg-left{text-align:left !important}.ion-text-lg-right{text-align:right !important}.ion-text-lg-nowrap{white-space:nowrap !important}.ion-text-lg-wrap{white-space:normal !important}}@media(min-width: 1200px){.ion-text-xl-center{text-align:center !important}.ion-text-xl-justify{text-align:justify !important}.ion-text-xl-start{text-align:start !important}.ion-text-xl-end{text-align:end !important}.ion-text-xl-left{text-align:left !important}.ion-text-xl-right{text-align:right !important}.ion-text-xl-nowrap{white-space:nowrap !important}.ion-text-xl-wrap{white-space:normal !important}}/*# sourceMappingURL=text-alignment.css.map */

/*!*************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/text-transformation.css ***!
  \*************************************************************************************************************************************************************************************************************************************************/
.ion-text-uppercase{text-transform:uppercase !important}.ion-text-lowercase{text-transform:lowercase !important}.ion-text-capitalize{text-transform:capitalize !important}@media(min-width: 576px){.ion-text-sm-uppercase{text-transform:uppercase !important}.ion-text-sm-lowercase{text-transform:lowercase !important}.ion-text-sm-capitalize{text-transform:capitalize !important}}@media(min-width: 768px){.ion-text-md-uppercase{text-transform:uppercase !important}.ion-text-md-lowercase{text-transform:lowercase !important}.ion-text-md-capitalize{text-transform:capitalize !important}}@media(min-width: 992px){.ion-text-lg-uppercase{text-transform:uppercase !important}.ion-text-lg-lowercase{text-transform:lowercase !important}.ion-text-lg-capitalize{text-transform:capitalize !important}}@media(min-width: 1200px){.ion-text-xl-uppercase{text-transform:uppercase !important}.ion-text-xl-lowercase{text-transform:lowercase !important}.ion-text-xl-capitalize{text-transform:capitalize !important}}/*# sourceMappingURL=text-transformation.css.map */

/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/flex-utils.css ***!
  \****************************************************************************************************************************************************************************************************************************************/
.ion-align-self-start{align-self:flex-start !important}.ion-align-self-end{align-self:flex-end !important}.ion-align-self-center{align-self:center !important}.ion-align-self-stretch{align-self:stretch !important}.ion-align-self-baseline{align-self:baseline !important}.ion-align-self-auto{align-self:auto !important}.ion-wrap{flex-wrap:wrap !important}.ion-nowrap{flex-wrap:nowrap !important}.ion-wrap-reverse{flex-wrap:wrap-reverse !important}.ion-justify-content-start{justify-content:flex-start !important}.ion-justify-content-center{justify-content:center !important}.ion-justify-content-end{justify-content:flex-end !important}.ion-justify-content-around{justify-content:space-around !important}.ion-justify-content-between{justify-content:space-between !important}.ion-justify-content-evenly{justify-content:space-evenly !important}.ion-align-items-start{align-items:flex-start !important}.ion-align-items-center{align-items:center !important}.ion-align-items-end{align-items:flex-end !important}.ion-align-items-stretch{align-items:stretch !important}.ion-align-items-baseline{align-items:baseline !important}/*# sourceMappingURL=flex-utils.css.map */

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[6].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[6].rules[1].use[1]!./src/global.scss?ngGlobalStyle ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*
 * App Global CSS
 * ----------------------------------------------------------------------------
 * Put style rules here that you want to apply globally. These styles are for
 * the entire app and not just one component. Additionally, this file can be
 * used as an entry point to import other CSS/Sass files to be included in the
 * output CSS.
 * For more information on global stylesheets, visit the documentation:
 * https://ionicframework.com/docs/layout/global-stylesheets
 */
/* Core CSS required for Ionic components to work properly */
/* Basic CSS for apps built with Ionic */
/* Optional CSS utils that can be commented out */
@font-face {
  font-family: "bold";
  src: url('ArbFONTS-Cairo-Bold.ttf');
}
@font-face {
  font-family: "regular";
  src: url('ArbFONTS-Cairo-Regular-2.ttf');
}
@font-face {
  font-family: "bolder";
  src: url('ArbFONTS-Cairo-Black.ttf');
}
@font-face {
  font-family: "semi";
  src: url('ArbFONTS-Cairo-SemiBold.ttf');
}
@font-face {
  font-family: "light";
  src: url('ArbFONTS-Cairo-Light.ttf');
}
* {
  font-family: "regular";
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  animation-duration: 0.5s;
  animation-name: fadeIn;
}

body {
  direction: rtl;
  background-color: var(--white-background);
}

ion-header {
  box-shadow: none !important;
  background-color: var(--white-background);
}
ion-header::after {
  display: none;
}
ion-header ion-toolbar {
  width: 100%;
  margin-inline: auto !important;
  max-width: 768px !important;
  padding-inline: 16px !important;
  --border-width: 0 !important;
  border-bottom: 1px solid var(--header-border);
}
ion-header ion-title {
  letter-spacing: 0;
}

ion-content {
  --background: var(--light-background);
}

ion-button {
  --box-shadow: none;
}

.container {
  max-width: 768px;
  margin-inline: auto !important;
}

form .item_box,
.form .item_box {
  animation-duration: 0.5s;
  animation-name: fadeIn;
  margin-bottom: 16px;
}
form .item_box h3,
.form .item_box h3 {
  color: var(--dark-text);
  font-family: "bold";
  font-size: 12px;
  font-weight: 700;
  line-height: 24px;
  margin-bottom: 8px;
  opacity: 0.5;
}
form .item_box ion-item,
.form .item_box ion-item {
  border-radius: 10px;
  --border-radius: 10px;
  border: 1px solid var(--secondary-border);
  background: var(--white-background);
  --background: var(--white-background);
  overflow: hidden;
  height: 52px;
  min-height: 52px;
  --min-height: 52px;
}
form .item_box ion-item ion-input,
.form .item_box ion-item ion-input {
  height: 52px;
  max-height: 52px !important;
  min-height: 52px !important;
}
form .item_box ion-select,
.form .item_box ion-select {
  min-height: 52px;
}
form .item_box ion-select::part(container),
.form .item_box ion-select::part(container) {
  width: 100% !important;
}
form .item_box ion-select::part(icon),
.form .item_box ion-select::part(icon) {
  display: none;
}
form .item_box ion-note,
.form .item_box ion-note {
  color: var(--ion-color-danger);
  font-size: 14px;
  font-family: "regular";
}
form .ion-invalid.ion-touched,
.form .ion-invalid.ion-touched {
  border: 1px solid var(--ion-color-danger) !important;
}
form .ion-invalid.ion-touched ion-input,
.form .ion-invalid.ion-touched ion-input {
  border: 0 !important;
}
form .ion-invalid.ion-touched ion-select,
.form .ion-invalid.ion-touched ion-select {
  border: 0 !important;
}

.toast-error,
.toast-success {
  font-family: "semi";
  --box-shadow: 0 0 4px 0 #00000029;
  --background: white;
  --color: var(--dark-text);
  overflow: hidden;
  border-radius: 3px;
}
.toast-error::part(container),
.toast-success::part(container) {
  border-radius: 3px;
  padding: 0;
  border-left: 10px solid #DC3545;
  background: rgba(220, 53, 69, 0.1);
}
.toast-error::part(icon),
.toast-success::part(icon) {
  color: #DC3545;
  font-size: 1.9rem;
}
.toast-error::part(header),
.toast-success::part(header) {
  font-size: 16px;
  font-family: "semi";
}
.toast-error::part(button),
.toast-success::part(button) {
  color: #DC3545;
}

.toast-success::part(container) {
  border-left: 10px solid #4BB543;
  background: rgba(75, 181, 67, 0.1);
}
.toast-success::part(icon) {
  color: #4BB543;
}
.toast-success::part(button) {
  color: #4BB543;
}

ion-footer {
  animation-duration: 0.5s;
  animation-name: fadeIn;
  padding: 16px !important;
  background: var(--white-background);
  position: fixed;
  bottom: 0;
  z-index: 9999999;
}
ion-footer ion-button {
  width: 100%;
  margin-inline: auto !important;
  max-width: 768px !important;
  height: 48px;
  --min-height: 48px;
  min-height: 48px;
  font-family: "regular";
  font-size: 14px;
  border-radius: 10px;
  --border-radius: 10px;
  letter-spacing: 0;
  font-family: "bold";
}

.segment {
  animation-duration: 0.5s;
  animation-name: fadeIn;
  position: relative;
  z-index: 99999999999;
}
.segment ion-segment {
  background: var(--light-background);
  padding: 0;
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
  border-radius: 0;
}
.segment ion-segment ion-segment-button {
  --border-width: 0 !important;
  height: 40px;
  --background: var(--white-background);
  --background-checked: var(--ion-color-secondary);
  --color-checked: var(--ion-color-secondary-contrast) !important;
  --color: var(--mid-text);
  --padding-start: 16px;
  --padding-end: 16px;
  --padding-top: 0px;
  --padding-bottom: 0px;
  min-width: -moz-fit-content;
  min-width: fit-content;
  font-size: 12px;
  --indicator-height: 0px;
  border-radius: 8px;
  --border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--border);
}
.segment ion-segment .segment-button-checked {
  border: none !important;
}
.segment ion-segment .segment-button-checked ion-label {
  color: var(--ion-color-secondary-contrast);
}
.segment ion-segment .segment-button-checked ion-label span {
  background-color: var(--ion-color-secondary-contrast);
}
.segment ion-segment ion-label {
  font-family: "bold";
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  color: rgba(var(--rgb-text), 0.6);
}
.segment ion-segment ion-label span {
  background-color: rgba(var(--rgb-text), 0.24);
}
.segment ion-segment::-webkit-scrollbar {
  display: none;
}

.search {
  position: relative;
  z-index: 9999999;
  animation-duration: 0.5s;
  animation-name: fadeIn;
}
.search ion-item {
  border-radius: 24px;
  --border-radius: 24px;
  --inner-padding-end: 24px;
  --padding-start: 12px;
  height: 42px;
  min-height: 42px;
  --min-height: 42px;
  background: var(--light-background);
  border: 1px solid var(--secondary-border);
  --background: transparent;
}
.search ion-item ion-input {
  margin-inline-start: 4px;
  min-height: 42px !important;
  --min-height: 42px !important;
  height: 42px;
}
.search ion-item img {
  width: 20px;
  height: 20px;
}
.search ion-item ion-button {
  --padding-bottom: 0;
  --padding-end: 0;
  --padding-start: 0;
  --padding-top: 0;
}
.search ion-item ion-button img {
  width: 24px;
  height: 24px;
}

.error-view {
  animation-duration: 0.5s;
  animation-name: fadeIn;
  background: var(--light-background);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  z-index: 99999;
}
.error-view .content {
  text-align: center;
}
.error-view .content ion-icon {
  font-size: 64px;
}
.error-view .content ion-text {
  color: var(--dark-text);
}

.loading {
  animation-duration: 0.5s;
  animation-name: fadeIn;
  background: var(--light-background);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  z-index: 99999;
}

.disabled {
  background-color: rgba(var(--ion-color-danger-rgb), 0.1) !important;
  --background: rgba(var(--ion-color-danger-rgb), 0.1) !important;
}

ion-back-button {
  --padding-end: 0;
  --padding-start: 0;
  height: 24px;
  width: 24px;
  --min-height: 24px !important;
  --min-width: 24px;
  min-width: 24px;
  min-height: 24px;
  margin-inline-end: 12px !important;
}

.date-modal {
  z-index: 20002;
  display: flex;
  justify-content: center;
  align-items: center;
  --height: 450px;
  padding: 0 16px;
}
.date-modal::part(content) {
  background: transparent;
}
.date-modal ion-content {
  --background: transparent !important;
  --ion-color-base: transparent !important;
}
.date-modal ion-content ion-datetime {
  border-radius: 8px;
}

.alert-button-group {
  direction: ltr;
}

.custom-ripple {
  color: var(--ion-color-primary);
}

.custom-ripple-warning {
  color: var(--ion-color-warning);
}

.danger-ripple {
  color: var(--ion-color-danger);
}

.header-image {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

.popover ion-item img {
  margin-inline-end: 8px;
}
.popover ion-item img ion-label {
  color: var(--min-text);
  font-family: "regular";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

.isScan {
  --background: #FFFFFF00 !important;
}
.isScan .scan_button {
  height: 48px;
  margin: auto;
  padding: 16px;
  position: absolute;
  bottom: 100px;
  width: 100%;
  max-width: 768px;
  z-index: 11;
}
.isScan .scan_button ion-button {
  height: 48px;
}
.isScan .scan_box {
  border: 2px solid #FFF;
  box-shadow: 0 0 0 1000vmax rgba(0, 0, 0, 0.5);
  content: "";
  display: block;
  left: 50%;
  height: 300px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 300px;
}

.hidden {
  display: none !important;
}

img.ng-lazyloaded {
  animation: blur 0.5s;
}

@keyframes blur {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
ion-input input {
  direction: rtl !important;
}

.cartCount {
  position: relative;
  --overflow: visible;
  overflow: visible;
}
.cartCount .badge {
  position: absolute;
  width: 24px;
  height: 24px;
  background: var(--ion-color-primary);
  border-radius: 50%;
  display: grid;
  place-content: center;
  color: var(--ion-color-primary-contrast);
  font-family: "semi";
  font-size: 14px;
  top: -4px;
  right: -8px;
}

.otp-input {
  border: 1px solid var(--ion-color-primary) !important;
  direction: ltr;
  color: var(--ion-color-primary);
  width: 32px !important;
  height: 32px !important;
}

.inCart {
  border: 1px solid var(--ion-color-primary);
  background: var(--ion-color-primary-contrast);
  --background: var(--ion-color-primary-contrast);
  box-sizing: content-box;
  color: var(--ion-color-primary);
  opacity: 0.5;
}
.inCart svg {
  display: none;
}

.image-preview-modal {
  --width:100%;
  --height: 100%;
  --background: transparent;
  --backdrop-opacity: .7;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  overflow: visible;
}
.image-preview-modal::part(content) {
  overflow: visible;
  background: transparent;
  border-radius: 16px;
}
.image-preview-modal::part(background) {
  overflow: visible;
  background: transparent;
}
.image-preview-modal::part(background) {
  overflow: visible;
  background: #000;
  opacity: 0.5;
}

ion-datetime, ion-picker, ion-picker-column {
  font-family: "Courier New", Courier, monospace !important;
}
ion-datetime *, ion-picker *, ion-picker-column * {
  font-family: "Courier New", Courier, monospace !important;
}

/* Must stay a block: the mobile cards put `z-index: -1` on the inner img, which
   only takes effect once that img becomes a flex item — and then it paints behind
   the card background and disappears. Center per-layout instead. */
app-image {
  display: block !important;
  width: 100%;
  height: 100%;
  position: relative !important;
}

.product {
  overflow: hidden;
  display: inline-flex !important;
  flex-direction: column !important;
}

app-site-chrome {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
}

/* Web-reference auth layout (tablet / desktop) */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.94);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.fadeInUp {
  animation: fadeInUp 0.5s ease both;
}

.scaleIn {
  animation: scaleIn 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.delay-1 {
  animation-delay: 0.08s;
}

.delay-2 {
  animation-delay: 0.16s;
}

.delay-3 {
  animation-delay: 0.24s;
}

.delay-4 {
  animation-delay: 0.32s;
}

.delay-5 {
  animation-delay: 0.4s;
}

.delay-6 {
  animation-delay: 0.48s;
}

.auth-page {
  --background: #ffffff;
}
.auth-page .auth-wrap {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 24px 48px;
  max-width: 428px;
  margin: 0 auto;
}
.auth-page .auth-logo {
  width: 148px;
  height: auto;
  margin-bottom: 12px;
}
.auth-page .auth-hero {
  width: min(220px, 58vw);
  height: auto;
  margin: 8px 0 20px;
}
.auth-page .auth-header {
  width: 100%;
  text-align: center;
  margin-bottom: 28px;
}
.auth-page .auth-header h1 {
  margin: 0 0 8px;
  color: var(--dark-text, #000);
  font-family: "bold";
  font-size: 26px;
  font-weight: 700;
  line-height: 1.35;
}
.auth-page .auth-header p {
  margin: 0;
  color: var(--mid-text, #666);
  font-family: "regular";
  font-size: 14px;
  line-height: 1.6;
}
.auth-page form {
  width: 100%;
}
.auth-page .field {
  margin-bottom: 12px;
}
.auth-page .field label {
  display: block;
  margin-bottom: 6px;
  color: var(--dark-text, #000);
  font-family: "semi";
  font-size: 14px;
  text-align: right;
}
.auth-page .field .input-shell {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 52px;
  border: 1px solid var(--app-border-color, #eae9eb);
  border-radius: 12px;
  background: #ffffff;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
.auth-page .field .input-shell:focus-within {
  background: var(--app-focus-color, #fff3f5);
  box-shadow: 0 0 0 3px rgba(var(--ion-color-primary-rgb), 0.08);
}
.auth-page .field .input-shell ion-input {
  flex: 1;
  --padding-start: 14px;
  --padding-end: 14px;
  --padding-top: 8px;
  --placeholder-color: var(--app-placeholder-color, #b4b4b4);
  --placeholder-opacity: 1;
  --color: var(--dark-text, #000);
  --highlight-height: 0;
  font-size: 14px;
  font-family: "regular";
}
.auth-page .field .input-shell .toggle-visibility {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-inline-end: 4px;
  color: var(--mid-text, #666);
  background: transparent;
  border: 0;
  cursor: pointer;
  flex-shrink: 0;
}
.auth-page .field .input-shell .toggle-visibility ion-icon {
  font-size: 22px;
}
.auth-page .form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 4px 0 24px;
}
.auth-page .form-row .remember {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--dark-text, #000);
  font-size: 13px;
  font-family: "regular";
}
.auth-page .form-row .remember ion-checkbox {
  --size: 20px;
  --checkbox-background-checked: var(--ion-color-primary);
  --border-color-checked: var(--ion-color-primary);
  --checkmark-color: #ffffff;
  --border-radius: 4px;
}
.auth-page .form-row .link-btn {
  --color: var(--ion-color-primary);
  --padding-start: 0;
  --padding-end: 0;
  margin: 0;
  height: auto;
  font-size: 13px;
  font-family: "semi";
}
.auth-page .submit-btn {
  margin: 0 0 20px;
  height: 52px;
  font-size: 16px;
  font-family: "bold";
  --border-radius: 12px;
  --background: var(--ion-color-primary);
  --background-activated: var(--ion-color-primary-shade);
  --box-shadow: none;
  letter-spacing: 0;
}
.auth-page .auth-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px;
  padding-top: 8px;
  font-size: 14px;
  color: var(--dark-text, #000);
  font-family: "regular";
}
.auth-page .auth-footer .link-btn {
  --color: var(--ion-color-primary);
  --padding-start: 4px;
  --padding-end: 4px;
  margin: 0;
  height: auto;
  font-size: 14px;
  font-family: "bold";
}
.auth-page .auth-skip {
  margin-top: 12px;
}
.auth-page .auth-skip ion-button {
  --color: var(--mid-text, #666);
  font-family: "semi";
  font-size: 13px;
}
.auth-page .input-shell.is-invalid {
  background: rgba(var(--ion-color-danger-rgb), 0.04);
}
.auth-page .auth-close {
  align-self: flex-start;
  width: 40px;
  height: 40px;
  margin-bottom: 8px;
  border: 0;
  border-radius: 50%;
  background: #f5f5f5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.auth-page .auth-close img {
  width: 18px;
  height: 18px;
}
.auth-page .auth-otp {
  width: 100%;
  margin-bottom: 16px;
  display: flex;
  justify-content: center;
}
.auth-page .link-btn {
  --color: var(--ion-color-primary);
  margin-bottom: 12px;
  font-family: "semi";
}

.auth-modal {
  --width: min(440px, 92vw);
  --height: auto;
  --max-height: 90vh;
  --border-radius: 16px;
  --box-shadow: 0 16px 48px rgba(15, 23, 42, 0.18);
}

/* Shared wide/tablet storefront building blocks (web-app-speedo parity). */
/* ---------------------------------------------------------------------- */
/* Theme-linked icon colors (same tokens as mobile / variables.scss)      */
/* ---------------------------------------------------------------------- */
.section__more,
.section__more ion-icon,
.product-card__fav ion-icon,
.product-card__fav--wide ion-icon,
.details-similar__fav ion-icon,
.details-gallery__nav ion-icon,
.section-rail__nav ion-icon,
.hero__nav ion-icon,
.hero__nav__face ion-icon,
.fav-btn ion-icon,
.breadcrumb__back ion-icon,
.cart-row-card__fav ion-icon,
.search-row__fav ion-icon,
.site-header__search ion-icon,
.site-header__cart ion-icon,
.theme-icon {
  color: var(--app-icon-color, var(--ion-color-primary));
}

.section__more {
  color: var(--app-icon-color, var(--ion-color-primary));
}

/*
 * Asset SVGs loaded as <img> cannot read page CSS variables.
 * Use this mask helper (or ion-icon) so icon color comes from --app-icon-color.
 */
.theme-icon {
  display: inline-block;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  background-color: var(--app-icon-color, var(--ion-color-primary));
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.theme-icon--search {
  -webkit-mask-image: url('search.svg');
  mask-image: url('search.svg');
}

.theme-icon--cart {
  width: 22px;
  height: 22px;
  -webkit-mask-image: url('cart-primary.svg');
  mask-image: url('cart-primary.svg');
}

.theme-icon--arrow-left {
  width: 16px;
  height: 16px;
  -webkit-mask-image: url('arrow-left.svg');
  mask-image: url('arrow-left.svg');
}

.theme-icon--on-dark {
  background-color: #ffffff;
}

/* Social brand colors */
.share-social--whatsapp ion-icon,
.contact-card__icon--whatsapp,
.site-footer__social-link--whatsapp {
  color: var(--brand-whatsapp);
}

.share-social--instagram ion-icon,
.contact-card__icon--instagram,
.site-footer__social-link--instagram {
  color: var(--brand-instagram);
}

.share-social--facebook ion-icon,
.contact-card__icon--facebook,
.site-footer__social-link--facebook {
  color: var(--brand-facebook);
}

.share-social--snapchat ion-icon,
.contact-card__icon--snapchat,
.site-footer__social-link--snapchat {
  color: var(--brand-snapchat);
}

.contact-card__icon--whatsapp {
  background: color-mix(in srgb, var(--brand-whatsapp) 12%, transparent);
  color: var(--brand-whatsapp);
}

.contact-card__icon--instagram {
  background: color-mix(in srgb, var(--brand-instagram) 12%, transparent);
  color: var(--brand-instagram);
}

.contact-card__icon--facebook {
  background: color-mix(in srgb, var(--brand-facebook) 12%, transparent);
  color: var(--brand-facebook);
}

.site-footer__social-link--whatsapp {
  background: var(--brand-whatsapp) !important;
  border-color: transparent !important;
  color: #fff;
}

.site-footer__social-link--instagram {
  background: var(--brand-instagram) !important;
  border-color: transparent !important;
  color: #fff;
}

.site-footer__social-link--facebook {
  background: var(--brand-facebook) !important;
  border-color: transparent !important;
  color: #fff;
}

.site-footer__social-link--snapchat {
  background: var(--brand-snapchat) !important;
  border-color: transparent !important;
  color: #000;
}

/* ---------------------------------------------------------------------- */
/* Breadcrumb                                                             */
/* ---------------------------------------------------------------------- */
.breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
  font-size: 14px;
  font-weight: 400;
  font-family: "regular";
  padding-bottom: 8px !important;
}
.breadcrumb a {
  color: var(--app-sub-text-color);
  text-decoration: none;
  cursor: pointer;
}

.breadcrumb__back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-inline-end: 8px;
  padding: 8px 8px !important;
  border: 1px solid var(--app-border-color);
  border-radius: 999px;
  background: var(--app-focus-color, #fff4f6);
  color: var(--dark-text);
  font-family: "semi";
  font-size: 13px;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: background-color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.breadcrumb__back span {
  margin-bottom: 2px !important;
}
.breadcrumb__back:hover {
  background: var(--app-focus-color-strong);
  border-color: rgba(var(--ion-color-primary-rgb), 0.25);
  transform: translateY(-1px);
}
.breadcrumb__back ion-icon {
  font-size: 16px;
  color: var(--ion-color-primary);
}

.breadcrumb__sep {
  color: var(--app-placeholder-color);
}

.breadcrumb__current {
  color: var(--dark-text);
}

/* ---------------------------------------------------------------------- */
/* Generic "card section" wrapper (favorites, contact, etc.)              */
/* ---------------------------------------------------------------------- */
.cart-section {
  border: 1px solid var(--border);
  border-radius: 24px;
  background: var(--white-background);
  padding: 22px;
}

.cart-section__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}
.cart-section__title h2 {
  margin: 0;
  font-size: 18px;
  font-family: "bold";
  color: var(--dark-text);
}
.cart-section__title small {
  color: var(--mid-text);
}

/* ---------------------------------------------------------------------- */
/* Section headers                                                        */
/* ---------------------------------------------------------------------- */
.section {
  margin-top: 32px;
}
.section:first-of-type {
  margin-top: 0;
}

.section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.section__head h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  font-family: "bold";
  color: var(--dark-text);
}

.section__more {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: var(--app-icon-color, var(--ion-color-primary));
  font-size: 13px;
  font-weight: 700;
  font-family: "bold";
  text-decoration: none;
  cursor: pointer;
  background: transparent;
  border: 0;
}
.section__more ion-icon {
  font-size: 16px;
  color: inherit;
}

/* ---------------------------------------------------------------------- */
/* Category cards                                                         */
/* ---------------------------------------------------------------------- */
.categories--wide {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 16px;
}

.category-card--wide {
  border: 1px solid var(--app-border-color);
  border-radius: 16px;
  background: var(--white-background);
  padding: 18px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.category-card--wide:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
}
.category-card--wide .category-card__image {
  width: 96px;
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.category-card--wide .category-card__image app-image::ng-deep img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.category-card--wide h3 {
  margin: 0;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  font-family: "semi";
  color: var(--dark-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ---------------------------------------------------------------------- */
/* Product cards (static grid variant, matches web product-card)          */
/* ---------------------------------------------------------------------- */
.products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}

.products-grid--compact {
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
}

.product-card--wide {
  position: relative;
  border: 1px solid var(--app-border-color);
  border-radius: 16px;
  background: var(--white-background);
  padding: 14px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
}
.product-card--wide h3 {
  margin: 8px 0 8px;
  font-size: 14px;
  font-weight: 500;
  font-family: "semi";
  color: var(--dark-text);
  cursor: pointer;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  min-height: 2.8em;
}

.product-card__fav--wide {
  position: absolute;
  top: 12px;
  inset-inline-end: 12px;
  z-index: 2;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: var(--app-focus-color);
  color: var(--app-icon-color, var(--ion-color-primary));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.product-card__fav--wide img,
.product-card__fav--wide ion-icon {
  width: 16px;
  height: 16px;
  font-size: 16px;
}

.product-card__image--wide {
  height: 150px;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.product-card__image--wide app-image::ng-deep img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.product-card__price--wide {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 12px;
}
.product-card__price--wide strong {
  font-size: 15px;
  font-weight: 700;
  font-family: "bold";
  color: var(--ion-color-primary);
}
.product-card__price--wide span {
  font-size: 12px;
  color: var(--app-sub-text-color);
  text-decoration: line-through;
}

.product-card__add--wide {
  margin-top: auto;
  height: 42px;
  min-height: 42px;
  --min-height: 42px;
  border-radius: 10px;
  --border-radius: 10px;
  font-family: "bold";
  font-size: 13px;
  border: none;
  background: var(--ion-color-primary);
  color: var(--ion-color-primary-contrast);
  cursor: pointer;
}
.product-card__add--wide.is-added {
  background: var(--light-background);
  color: var(--ion-color-primary);
  border: 1px solid var(--ion-color-primary);
}

/* ---------------------------------------------------------------------- */
/* Brand cards                                                            */
/* ---------------------------------------------------------------------- */
.brands--wide {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
  gap: 16px;
}

.brand-card--wide {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid var(--app-border-color);
  background: var(--white-background);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
  cursor: pointer;
}
.brand-card--wide app-image::ng-deep img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ---------------------------------------------------------------------- */
/* Empty state                                                            */
/* ---------------------------------------------------------------------- */
.wide-empty {
  padding: 48px 16px;
  text-align: center;
  border: 1px dashed var(--app-border-color);
  border-radius: 14px;
  color: var(--app-sub-text-color);
  font-family: "semi";
  font-weight: 600;
}

/* ---------------------------------------------------------------------- */
/* Profile card (tab5 / update-profile)                                   */
/* ---------------------------------------------------------------------- */
.profile-card--wide {
  max-width: 640px;
  margin: 0 auto;
  border: 1px solid var(--app-border-color);
  border-radius: 20px;
  background: var(--white-background);
  padding: 28px;
}

.profile-card__head--wide {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--app-border-color);
}
.profile-card__head--wide h1 {
  margin: 0 0 4px;
  font-size: 20px;
  font-family: "bold";
  color: var(--dark-text);
}
.profile-card__head--wide p {
  margin: 0;
  color: var(--app-sub-text-color);
  font-family: "regular";
}

.profile-card__avatar--wide {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--app-focus-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.profile-card__avatar--wide ion-icon {
  font-size: 32px;
  color: var(--ion-color-primary);
}

.profile-card__rows--wide {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 24px;
}

.profile-card__row--wide {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 0;
  border-bottom: 1px solid var(--app-border-color);
}
.profile-card__row--wide span {
  color: var(--app-sub-text-color);
  font-family: "regular";
  font-size: 14px;
}
.profile-card__row--wide strong {
  color: var(--dark-text);
  font-family: "semi";
  font-size: 14px;
}

.profile-primary-btn--wide,
.profile-secondary-btn--wide {
  height: 50px;
  --border-radius: 12px;
  border-radius: 12px;
  font-family: "bold";
  font-size: 15px;
}

.profile-secondary-btn--wide {
  --background: transparent;
  --color: var(--ion-color-primary);
  --border-width: 1px;
  --border-style: solid;
  --border-color: var(--ion-color-primary);
}

.update-form--wide {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.update-form--wide label {
  display: block;
}
.update-form--wide label span {
  display: block;
  margin-bottom: 6px;
  font-family: "semi";
  font-size: 13px;
  color: var(--dark-text);
}
.update-form--wide .input-shell {
  display: flex;
  align-items: center;
  min-height: 50px;
  border: 1px solid var(--app-border-color);
  border-radius: 12px;
  background: var(--white-background);
}
.update-form--wide .input-shell ion-input {
  flex: 1;
  --padding-start: 14px;
  --padding-end: 14px;
  --color: var(--dark-text);
  font-family: "regular";
  font-size: 14px;
}

/* ---------------------------------------------------------------------- */
/* Contact page                                                           */
/* ---------------------------------------------------------------------- */
.contact-shell--wide {
  max-width: 720px;
  margin: 0 auto;
}

.contact-state--wide {
  padding: 48px 16px;
  text-align: center;
  color: var(--app-sub-text-color);
  font-family: "semi";
}

.contact-description--wide {
  margin: 0 0 24px;
  color: var(--app-sub-text-color);
  font-family: "regular";
  line-height: 1.8;
}

.contact-list--wide {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}

.contact-card--wide {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px;
  border: 1px solid var(--app-border-color);
  border-radius: 16px;
  background: var(--white-background);
  cursor: pointer;
  text-align: start;
}
.contact-card--wide strong {
  font-family: "bold";
  font-size: 14px;
  color: var(--ion-color-primary);
}
.contact-card--wide span {
  font-family: "regular";
  font-size: 14px;
  color: var(--dark-text);
  word-break: break-word;
}

/* ---------------------------------------------------------------------- */
/* Checkout / complete-order                                              */
/* ---------------------------------------------------------------------- */
.checkout-layout--wide {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 24px;
  align-items: start;
  max-width: 1200px;
  margin: 0 auto;
}

.checkout-main--wide {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.checkout-card--wide {
  border: 1px solid var(--app-border-color);
  border-radius: 20px;
  background: var(--white-background);
  padding: 20px;
}

.order-types--wide {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.payment-option--wide {
  flex: 1 1 160px;
  border: 1px solid var(--app-border-color);
  border-radius: 12px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.payment-option--wide.is-active {
  border-color: var(--ion-color-primary);
  background: var(--app-focus-color);
}
.payment-option--wide h4 {
  margin: 0;
  font-family: "bold";
  font-size: 14px;
  color: var(--dark-text);
}
.payment-option--wide p {
  margin: 0;
  font-family: "regular";
  font-size: 12px;
  color: var(--app-sub-text-color);
}

.form-grid--wide {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.form-grid--wide .full--wide {
  grid-column: 1/-1;
}
.form-grid--wide label {
  display: block;
}
.form-grid--wide label span {
  display: block;
  margin-bottom: 6px;
  font-family: "semi";
  font-size: 13px;
  color: var(--dark-text);
}
.form-grid--wide .input-shell {
  display: flex;
  align-items: center;
  min-height: 48px;
  border: 1px solid var(--app-border-color);
  border-radius: 12px;
  background: var(--white-background);
}
.form-grid--wide .input-shell ion-input,
.form-grid--wide .input-shell ion-select {
  flex: 1;
  --padding-start: 14px;
  --padding-end: 14px;
  --color: var(--dark-text);
  font-family: "regular";
  font-size: 14px;
  width: 100%;
}

.coupon-row--wide {
  display: flex;
  gap: 10px;
}
.coupon-row--wide .input-shell {
  flex: 1;
}
.coupon-row--wide button {
  height: 48px;
  padding: 0 20px;
  border: 0;
  border-radius: 12px;
  background: var(--ion-color-primary);
  color: var(--ion-color-primary-contrast);
  font-family: "bold";
  font-size: 13px;
  cursor: pointer;
}

.checkout-sidebar--wide {
  position: sticky;
  top: 16px;
}

.summary-card--wide {
  border: 1px solid var(--app-border-color);
  border-radius: 20px;
  background: var(--white-background);
  padding: 20px;
}
.summary-card--wide h2 {
  margin: 0 0 16px;
  font-family: "bold";
  font-size: 17px;
  color: var(--dark-text);
}

.summary-row--wide {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  color: var(--app-sub-text-color);
  font-family: "regular";
  font-size: 14px;
}
.summary-row--wide strong {
  color: var(--dark-text);
  font-family: "semi";
}

.summary-total--wide {
  display: flex;
  justify-content: space-between;
  padding-top: 12px;
  margin-top: 4px;
  border-top: 1px solid var(--app-border-color);
  color: var(--dark-text);
  font-family: "bold";
  font-size: 16px;
}

.primary-btn--wide {
  width: 100%;
  height: 52px;
  --border-radius: 12px;
  border-radius: 12px;
  font-family: "bold";
  font-size: 15px;
  margin-top: 20px;
}

.wide-load-more {
  margin: 20px auto 0;
  display: block;
  min-width: 180px;
  height: 44px;
  padding: 0 20px;
  border: 1px solid var(--app-border-color);
  border-radius: 12px;
  background: #fff;
  color: var(--ion-color-primary);
  font-family: "bold";
  font-size: 14px;
  cursor: pointer;
  transition: background 0.15s ease;
}
.wide-load-more:hover {
  background: var(--app-focus-color, #fff3f5);
}

.category-wide__filter,
.offer-wide__cats {
  max-width: 320px;
}

body.site-chrome-active ion-content {
  --background: #ffffff;
}

/* Wide layout (tablet / desktop web) */
body.layout-wide ion-tab-bar {
  display: none !important;
}
body.layout-wide .container {
  max-width: 1200px;
  padding-inline: 1.25rem;
}
body.layout-wide ion-header ion-toolbar {
  max-width: 1200px !important;
}

/* Document-style scroll: header sticky, footer after page content.
   Ionic structure.css locks html/body (fixed + overflow:hidden + height:100%).
   Those must be cleared on html AND body — nesting `html` under `body...` never matches. */
html.site-chrome-active {
  height: 100% !important;
  min-height: 100%;
  overflow: hidden !important;
}

html.site-chrome-active body,
body.site-chrome-active {
  position: static !important;
  height: 100% !important;
  max-height: none !important;
  min-height: 100%;
  overflow: hidden !important;
  transform: none !important;
  overscroll-behavior: none;
}

body.site-chrome-active {
  --site-header-height: 72px;
  /* Header is teleported to document.body — keep it above the router outlet but
     under Ionic's overlay band (20000+) so modals/alerts/toasts cover it */
  /* Mobile pages used absurd z-index values that cover the sticky site header */
  /* Inactive / leaving pages must not cover header or block clicks */
  /* Root outlet: never stack multiple full pages in document flow */
  /* Background layer must never steal clicks/scroll */
}
body.site-chrome-active > .site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 19999 !important;
  pointer-events: auto !important;
}
body.site-chrome-active > .site-header a,
body.site-chrome-active > .site-header button {
  pointer-events: auto !important;
  cursor: pointer !important;
}
body.site-chrome-active ion-header {
  display: none !important;
}
body.site-chrome-active .header,
body.site-chrome-active .segment,
body.site-chrome-active .top-segment {
  z-index: auto !important;
}
body.site-chrome-active ion-app {
  position: relative !important;
  height: 100dvh !important;
  min-height: 100dvh;
  overflow: hidden !important;
}
body.site-chrome-active app-site-chrome {
  height: 100dvh !important;
  min-height: 100dvh;
  overflow: hidden !important;
}
body.site-chrome-active ion-router-outlet {
  position: relative !important;
  contain: none !important;
  overflow: hidden !important;
}
body.site-chrome-active .ion-page {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  contain: none !important;
  height: auto !important;
  transform: none !important;
  overflow: visible !important;
}
body.site-chrome-active .ion-page.ion-page-hidden,
body.site-chrome-active .ion-page.ion-page-invisible,
body.site-chrome-active .ion-page[aria-hidden=true] {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  inset: 0 auto auto 0 !important;
  z-index: -1 !important;
}
body.site-chrome-active app-site-chrome > .site-chrome__body > ion-router-outlet > .ion-page:not(:last-of-type) {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}
body.site-chrome-active .ion-page {
  opacity: 1 !important;
  transform: none !important;
}
body.site-chrome-active ion-tabs {
  display: block !important;
  position: relative !important;
  height: auto !important;
  contain: none !important;
}
body.site-chrome-active ion-tabs .tabs-inner,
body.site-chrome-active ion-tab,
body.site-chrome-active ion-tabs ion-router-outlet {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  contain: none !important;
  height: auto !important;
  overflow: hidden !important;
}
body.site-chrome-active ion-content {
  position: relative !important;
  contain: none !important;
  height: auto !important;
  flex: none !important;
  --overflow: visible;
  overflow: visible !important;
  pointer-events: auto;
}
body.site-chrome-active ion-content::part(scroll) {
  position: relative !important;
  inset: auto !important;
  overflow: visible !important;
  contain: none !important;
  height: auto !important;
  max-height: none !important;
  padding-bottom: 0 !important;
  z-index: 1;
  pointer-events: auto;
}
body.site-chrome-active ion-content::part(background) {
  position: absolute;
  inset: 0;
  pointer-events: none !important;
  z-index: 0;
}
body.site-chrome-active ion-refresher {
  display: none !important;
  pointer-events: none !important;
}
body.site-chrome-active ion-footer {
  position: relative !important;
}
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[6].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[6].rules[1].use[1]!./src/theme/variables.scss?ngGlobalStyle ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/** Ionic CSS Variables **/
:root {
  --white-background: #ffffff;
  --light-background: #f6f6f6;
  --content-background: #f7f9fb;
  --item-background: #e5e5e5;
  --tab-background: #f4f4f4;
  --message-background: #e1e1e1;
  --dark-text: #181818;
  --color: #181818;
  --mid-text: #808080;
  --light-text: #404040;
  --discount-text: #aaa;
  --rgb-text: 28, 28, 28;
  --shadow: #00000012;
  --border: #f0efef;
  --header-border: #f2f2f2;
  --secondary-border: #dbdbdb;
  --ion-font-family: "regular";
  /** primary **/
  --ion-color-primary: #facc05;
  --ion-color-primary-rgb: 250,204,5;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb: 255,255,255;
  --ion-color-primary-shade: #e1b805;
  --ion-color-primary-tint: #fbd11e;
  --ion-color-secondary: #1a0522;
  --ion-color-secondary-rgb: 26,5,34;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb: 255,255,255;
  --ion-color-secondary-shade: #17051f;
  --ion-color-secondary-tint: #311e38;
  /* Storefront / wide-layout tokens (derived from the palette above) */
  --app-border-color: var(--border);
  --app-sub-text-color: var(--mid-text);
  --app-placeholder-color: #B4B4B4;
  --app-focus-color: rgba(var(--ion-color-primary-rgb), 0.08);
  --app-focus-color-strong: rgba(var(--ion-color-primary-rgb), 0.16);
  --app-footer-bg: var(--ion-color-secondary);
  --app-icon-color: var(--ion-color-primary);
  --app-success-text: var(--ion-color-success);
  --app-surface: var(--white-background);
  --app-shadow-soft: 0 2px 10px var(--shadow);
  --app-shadow-lift: 0 6px 18px var(--shadow);
  /* Social brand colors (not app primary) */
  --brand-whatsapp: #25D366;
  --brand-instagram: #E4405F;
  --brand-facebook: #1877F2;
  --brand-snapchat: #FFFC00;
  --product-card-width: 250px;
  --product-card-height: 358px;
  --category-card-width: 250px;
  --category-card-height: 250px;
  --ion-background-color: var(--white-background);
  --ion-text-color: var(--dark-text);
  /** tertiary **/
  --ion-color-tertiary: #3f48cc;
  --ion-color-tertiary-rgb: 63,72,204;
  --ion-color-tertiary-contrast: #ffffff;
  --ion-color-tertiary-contrast-rgb: 255,255,255;
  --ion-color-tertiary-shade: #373fb4;
  --ion-color-tertiary-tint: #525ad1;
  /** success **/
  --ion-color-success: #30c1a7;
  --ion-color-success: #30c1a7;
  --ion-color-success-rgb: 48, 193, 167;
  --ion-color-success-contrast: #ffffff;
  --ion-color-success-contrast-rgb: 255, 255, 255;
  --ion-color-success-shade: #2aaa93;
  --ion-color-success-tint: #45c7b0;
  /** warning **/
  --ion-color-warning: #d19440;
  --ion-color-warning-rgb: 209,148,64;
  --ion-color-warning-contrast: #000000;
  --ion-color-warning-contrast-rgb: 0,0,0;
  --ion-color-warning-shade: #b88238;
  --ion-color-warning-tint: #d69f53;
  /** danger **/
  --ion-color-danger: #E21269;
  --ion-color-danger-rgb: 226, 18, 105;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb: 255, 255, 255;
  --ion-color-danger-shade: #c7105c;
  --ion-color-danger-tint: #e52a78;
  /** dark **/
  --ion-color-dark: #222428;
  --ion-color-dark-rgb: 34, 36, 40;
  --ion-color-dark-contrast: #ffffff;
  --ion-color-dark-contrast-rgb: 255, 255, 255;
  --ion-color-dark-shade: #1e2023;
  --ion-color-dark-tint: #383a3e;
  /** medium **/
  --ion-color-medium: #92949c;
  --ion-color-medium-rgb: 146, 148, 156;
  --ion-color-medium-contrast: #ffffff;
  --ion-color-medium-contrast-rgb: 255, 255, 255;
  --ion-color-medium-shade: #808289;
  --ion-color-medium-tint: #9d9fa6;
  /** light **/
  --ion-color-light: #f4f5f8;
  --ion-color-light-rgb: 244, 245, 248;
  --ion-color-light-contrast: #000000;
  --ion-color-light-contrast-rgb: 0, 0, 0;
  --ion-color-light-shade: #d7d8da;
  --ion-color-light-tint: #f5f6f9;
}

/*
   * Dark Colors
   * -------------------------------------------
   */
body.dark {
  --ion-color-primary: #fb143c;
  --ion-color-primary-rgb: 251, 20, 60;
  --ion-color-primary-contrast: #ffffff;
  --ion-color-primary-contrast-rgb: 255, 255, 255;
  --ion-color-primary-shade: #dd1235;
  --ion-color-primary-tint: #fb2c50;
  /** secondary **/
  --ion-color-secondary: #212844;
  --ion-color-secondary-rgb: 33, 40, 68;
  --ion-color-secondary-contrast: #ffffff;
  --ion-color-secondary-contrast-rgb: 255, 255, 255;
  --ion-color-secondary-shade: #1d233c;
  --ion-color-secondary-tint: #373e57;
  --ion-color-tertiary: #6a64ff;
  --ion-color-tertiary-rgb: 106, 100, 255;
  --ion-color-tertiary-contrast: #ffffff;
  --ion-color-tertiary-contrast-rgb: 255, 255, 255;
  --ion-color-tertiary-shade: #5d58e0;
  --ion-color-tertiary-tint: #7974ff;
  --ion-color-success: #2fdf75;
  --ion-color-success-rgb: 47, 223, 117;
  --ion-color-success-contrast: #000000;
  --ion-color-success-contrast-rgb: 0, 0, 0;
  --ion-color-success-shade: #29c467;
  --ion-color-success-tint: #44e283;
  --ion-color-warning: #ffd534;
  --ion-color-warning-rgb: 255, 213, 52;
  --ion-color-warning-contrast: #000000;
  --ion-color-warning-contrast-rgb: 0, 0, 0;
  --ion-color-warning-shade: #e0bb2e;
  --ion-color-warning-tint: #ffd948;
  --ion-color-danger: #ff4961;
  --ion-color-danger-rgb: 255, 73, 97;
  --ion-color-danger-contrast: #ffffff;
  --ion-color-danger-contrast-rgb: 255, 255, 255;
  --ion-color-danger-shade: #e04055;
  --ion-color-danger-tint: #ff5b71;
  --ion-color-dark: #f4f5f8;
  --ion-color-dark-rgb: 244, 245, 248;
  --ion-color-dark-contrast: #000000;
  --ion-color-dark-contrast-rgb: 0, 0, 0;
  --ion-color-dark-shade: #d7d8da;
  --ion-color-dark-tint: #f5f6f9;
  --ion-color-medium: #989aa2;
  --ion-color-medium-rgb: 152, 154, 162;
  --ion-color-medium-contrast: #000000;
  --ion-color-medium-contrast-rgb: 0, 0, 0;
  --ion-color-medium-shade: #86888f;
  --ion-color-medium-tint: #a2a4ab;
  --ion-color-light: #222428;
  --ion-color-light-rgb: 34, 36, 40;
  --ion-color-light-contrast: #ffffff;
  --ion-color-light-contrast-rgb: 255, 255, 255;
  --ion-color-light-shade: #1e2023;
  --ion-color-light-tint: #383a3e;
}

/*
   * iOS Dark Theme
   * -------------------------------------------
   */
.ios body.dark {
  --ion-background-color: #000000;
  --ion-background-color-rgb: 0, 0, 0;
  --ion-text-color: #ffffff;
  --ion-text-color-rgb: 255, 255, 255;
  --ion-color-step-50: #0d0d0d;
  --ion-color-step-100: #1a1a1a;
  --ion-color-step-150: #262626;
  --ion-color-step-200: #333333;
  --ion-color-step-250: #404040;
  --ion-color-step-300: #4d4d4d;
  --ion-color-step-350: #595959;
  --ion-color-step-400: #666666;
  --ion-color-step-450: #737373;
  --ion-color-step-500: #808080;
  --ion-color-step-550: #8c8c8c;
  --ion-color-step-600: #999999;
  --ion-color-step-650: #a6a6a6;
  --ion-color-step-700: #b3b3b3;
  --ion-color-step-750: #bfbfbf;
  --ion-color-step-800: #cccccc;
  --ion-color-step-850: #d9d9d9;
  --ion-color-step-900: #e6e6e6;
  --ion-color-step-950: #f2f2f2;
  --ion-item-background: #000000;
  --ion-card-background: #1c1c1d;
}

.ios ion-modal {
  --ion-background-color: var(--ion-color-step-100);
  --ion-toolbar-background: var(--ion-color-step-150);
  --ion-toolbar-border-color: var(--ion-color-step-250);
}

/*
   * Material Design Dark Theme
   * -------------------------------------------
   */
.md body.dark {
  --ion-background-color: #121212;
  --ion-background-color-rgb: 18, 18, 18;
  --ion-text-color: #ffffff;
  --ion-text-color-rgb: 255, 255, 255;
  --ion-border-color: #222222;
  --ion-color-step-50: #1e1e1e;
  --ion-color-step-100: #2a2a2a;
  --ion-color-step-150: #363636;
  --ion-color-step-200: #414141;
  --ion-color-step-250: #4d4d4d;
  --ion-color-step-300: #595959;
  --ion-color-step-350: #656565;
  --ion-color-step-400: #717171;
  --ion-color-step-450: #7d7d7d;
  --ion-color-step-500: #898989;
  --ion-color-step-550: #949494;
  --ion-color-step-600: #a0a0a0;
  --ion-color-step-650: #acacac;
  --ion-color-step-700: #b8b8b8;
  --ion-color-step-750: #c4c4c4;
  --ion-color-step-800: #d0d0d0;
  --ion-color-step-850: #dbdbdb;
  --ion-color-step-900: #e7e7e7;
  --ion-color-step-950: #f3f3f3;
  --ion-item-background: #1e1e1e;
  --ion-toolbar-background: #1f1f1f;
  --ion-tab-bar-background: #1f1f1f;
  --ion-card-background: #1e1e1e;
}

/*# sourceMappingURL=styles.css.map*/