/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width: 768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: 0.18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{left:0;right:0;top:0;bottom:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}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: var(--safe-area-inset-top, env(safe-area-inset-top));--ion-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom));--ion-safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left));--ion-safe-area-right: var(--safe-area-inset-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}}

/*!***************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}

/*!***************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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.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}

/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}

/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}}.ion-display-none{display:none !important}@media(min-width: 576px){.ion-display-sm-none{display:none !important}}@media(min-width: 768px){.ion-display-md-none{display:none !important}}@media(min-width: 992px){.ion-display-lg-none{display:none !important}}@media(min-width: 1200px){.ion-display-xl-none{display:none !important}}.ion-display-inline{display:inline !important}@media(min-width: 576px){.ion-display-sm-inline{display:inline !important}}@media(min-width: 768px){.ion-display-md-inline{display:inline !important}}@media(min-width: 992px){.ion-display-lg-inline{display:inline !important}}@media(min-width: 1200px){.ion-display-xl-inline{display:inline !important}}.ion-display-inline-block{display:inline-block !important}@media(min-width: 576px){.ion-display-sm-inline-block{display:inline-block !important}}@media(min-width: 768px){.ion-display-md-inline-block{display:inline-block !important}}@media(min-width: 992px){.ion-display-lg-inline-block{display:inline-block !important}}@media(min-width: 1200px){.ion-display-xl-inline-block{display:inline-block !important}}.ion-display-block{display:block !important}@media(min-width: 576px){.ion-display-sm-block{display:block !important}}@media(min-width: 768px){.ion-display-md-block{display:block !important}}@media(min-width: 992px){.ion-display-lg-block{display:block !important}}@media(min-width: 1200px){.ion-display-xl-block{display:block !important}}.ion-display-flex{display:flex !important}@media(min-width: 576px){.ion-display-sm-flex{display:flex !important}}@media(min-width: 768px){.ion-display-md-flex{display:flex !important}}@media(min-width: 992px){.ion-display-lg-flex{display:flex !important}}@media(min-width: 1200px){.ion-display-xl-flex{display:flex !important}}.ion-display-inline-flex{display:inline-flex !important}@media(min-width: 576px){.ion-display-sm-inline-flex{display:inline-flex !important}}@media(min-width: 768px){.ion-display-md-inline-flex{display:inline-flex !important}}@media(min-width: 992px){.ion-display-lg-inline-flex{display:inline-flex !important}}@media(min-width: 1200px){.ion-display-xl-inline-flex{display:inline-flex !important}}.ion-display-grid{display:grid !important}@media(min-width: 576px){.ion-display-sm-grid{display:grid !important}}@media(min-width: 768px){.ion-display-md-grid{display:grid !important}}@media(min-width: 992px){.ion-display-lg-grid{display:grid !important}}@media(min-width: 1200px){.ion-display-xl-grid{display:grid !important}}.ion-display-inline-grid{display:inline-grid !important}@media(min-width: 576px){.ion-display-sm-inline-grid{display:inline-grid !important}}@media(min-width: 768px){.ion-display-md-inline-grid{display:inline-grid !important}}@media(min-width: 992px){.ion-display-lg-inline-grid{display:inline-grid !important}}@media(min-width: 1200px){.ion-display-xl-inline-grid{display:inline-grid !important}}.ion-display-table{display:table !important}@media(min-width: 576px){.ion-display-sm-table{display:table !important}}@media(min-width: 768px){.ion-display-md-table{display:table !important}}@media(min-width: 992px){.ion-display-lg-table{display:table !important}}@media(min-width: 1200px){.ion-display-xl-table{display:table !important}}.ion-display-table-cell{display:table-cell !important}@media(min-width: 576px){.ion-display-sm-table-cell{display:table-cell !important}}@media(min-width: 768px){.ion-display-md-table-cell{display:table-cell !important}}@media(min-width: 992px){.ion-display-lg-table-cell{display:table-cell !important}}@media(min-width: 1200px){.ion-display-xl-table-cell{display:table-cell !important}}.ion-display-table-row{display:table-row !important}@media(min-width: 576px){.ion-display-sm-table-row{display:table-row !important}}@media(min-width: 768px){.ion-display-md-table-row{display:table-row !important}}@media(min-width: 992px){.ion-display-lg-table-row{display:table-row !important}}@media(min-width: 1200px){.ion-display-xl-table-row{display:table-row !important}}

/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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)}

/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}}}

/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}}

/*!*************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].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}}

/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/@ionic/angular/css/flex-utils.css ***!
  \****************************************************************************************************************************************************************************************************************************************/
.ion-align-content-start{align-content:flex-start !important}.ion-align-content-end{align-content:flex-end !important}.ion-align-content-center{align-content:center !important}.ion-align-content-between{align-content:space-between !important}.ion-align-content-around{align-content:space-around !important}.ion-align-content-stretch{align-content:stretch !important}@media(min-width: 576px){.ion-align-content-sm-start{align-content:flex-start !important}.ion-align-content-sm-end{align-content:flex-end !important}.ion-align-content-sm-center{align-content:center !important}.ion-align-content-sm-between{align-content:space-between !important}.ion-align-content-sm-around{align-content:space-around !important}.ion-align-content-sm-stretch{align-content:stretch !important}}@media(min-width: 768px){.ion-align-content-md-start{align-content:flex-start !important}.ion-align-content-md-end{align-content:flex-end !important}.ion-align-content-md-center{align-content:center !important}.ion-align-content-md-between{align-content:space-between !important}.ion-align-content-md-around{align-content:space-around !important}.ion-align-content-md-stretch{align-content:stretch !important}}@media(min-width: 992px){.ion-align-content-lg-start{align-content:flex-start !important}.ion-align-content-lg-end{align-content:flex-end !important}.ion-align-content-lg-center{align-content:center !important}.ion-align-content-lg-between{align-content:space-between !important}.ion-align-content-lg-around{align-content:space-around !important}.ion-align-content-lg-stretch{align-content:stretch !important}}@media(min-width: 1200px){.ion-align-content-xl-start{align-content:flex-start !important}.ion-align-content-xl-end{align-content:flex-end !important}.ion-align-content-xl-center{align-content:center !important}.ion-align-content-xl-between{align-content:space-between !important}.ion-align-content-xl-around{align-content:space-around !important}.ion-align-content-xl-stretch{align-content:stretch !important}}.ion-align-items-start{align-items:start !important}.ion-align-items-end{align-items:end !important}.ion-align-items-center{align-items:center !important}.ion-align-items-stretch{align-items:stretch !important}.ion-align-items-baseline{align-items:baseline !important}@media(min-width: 576px){.ion-align-items-sm-start{align-items:start !important}.ion-align-items-sm-end{align-items:end !important}.ion-align-items-sm-center{align-items:center !important}.ion-align-items-sm-stretch{align-items:stretch !important}.ion-align-items-sm-baseline{align-items:baseline !important}}@media(min-width: 768px){.ion-align-items-md-start{align-items:start !important}.ion-align-items-md-end{align-items:end !important}.ion-align-items-md-center{align-items:center !important}.ion-align-items-md-stretch{align-items:stretch !important}.ion-align-items-md-baseline{align-items:baseline !important}}@media(min-width: 992px){.ion-align-items-lg-start{align-items:start !important}.ion-align-items-lg-end{align-items:end !important}.ion-align-items-lg-center{align-items:center !important}.ion-align-items-lg-stretch{align-items:stretch !important}.ion-align-items-lg-baseline{align-items:baseline !important}}@media(min-width: 1200px){.ion-align-items-xl-start{align-items:start !important}.ion-align-items-xl-end{align-items:end !important}.ion-align-items-xl-center{align-items:center !important}.ion-align-items-xl-stretch{align-items:stretch !important}.ion-align-items-xl-baseline{align-items:baseline !important}}.ion-align-self-start{align-self:start !important}.ion-align-self-end{align-self:end !important}.ion-align-self-center{align-self:center !important}.ion-align-self-stretch{align-self:stretch !important}.ion-align-self-baseline{align-self:baseline !important}.ion-align-self-auto{align-self:auto !important}@media(min-width: 576px){.ion-align-self-sm-start{align-self:start !important}.ion-align-self-sm-end{align-self:end !important}.ion-align-self-sm-center{align-self:center !important}.ion-align-self-sm-stretch{align-self:stretch !important}.ion-align-self-sm-baseline{align-self:baseline !important}.ion-align-self-sm-auto{align-self:auto !important}}@media(min-width: 768px){.ion-align-self-md-start{align-self:start !important}.ion-align-self-md-end{align-self:end !important}.ion-align-self-md-center{align-self:center !important}.ion-align-self-md-stretch{align-self:stretch !important}.ion-align-self-md-baseline{align-self:baseline !important}.ion-align-self-md-auto{align-self:auto !important}}@media(min-width: 992px){.ion-align-self-lg-start{align-self:start !important}.ion-align-self-lg-end{align-self:end !important}.ion-align-self-lg-center{align-self:center !important}.ion-align-self-lg-stretch{align-self:stretch !important}.ion-align-self-lg-baseline{align-self:baseline !important}.ion-align-self-lg-auto{align-self:auto !important}}@media(min-width: 1200px){.ion-align-self-xl-start{align-self:start !important}.ion-align-self-xl-end{align-self:end !important}.ion-align-self-xl-center{align-self:center !important}.ion-align-self-xl-stretch{align-self:stretch !important}.ion-align-self-xl-baseline{align-self:baseline !important}.ion-align-self-xl-auto{align-self:auto !important}}.ion-justify-content-start{justify-content:flex-start !important}.ion-justify-content-end{justify-content:flex-end !important}.ion-justify-content-center{justify-content:center !important}.ion-justify-content-between{justify-content:space-between !important}.ion-justify-content-around{justify-content:space-around !important}.ion-justify-content-evenly{justify-content:space-evenly !important}@media(min-width: 576px){.ion-justify-content-sm-start{justify-content:flex-start !important}.ion-justify-content-sm-end{justify-content:flex-end !important}.ion-justify-content-sm-center{justify-content:center !important}.ion-justify-content-sm-between{justify-content:space-between !important}.ion-justify-content-sm-around{justify-content:space-around !important}.ion-justify-content-sm-evenly{justify-content:space-evenly !important}}@media(min-width: 768px){.ion-justify-content-md-start{justify-content:flex-start !important}.ion-justify-content-md-end{justify-content:flex-end !important}.ion-justify-content-md-center{justify-content:center !important}.ion-justify-content-md-between{justify-content:space-between !important}.ion-justify-content-md-around{justify-content:space-around !important}.ion-justify-content-md-evenly{justify-content:space-evenly !important}}@media(min-width: 992px){.ion-justify-content-lg-start{justify-content:flex-start !important}.ion-justify-content-lg-end{justify-content:flex-end !important}.ion-justify-content-lg-center{justify-content:center !important}.ion-justify-content-lg-between{justify-content:space-between !important}.ion-justify-content-lg-around{justify-content:space-around !important}.ion-justify-content-lg-evenly{justify-content:space-evenly !important}}@media(min-width: 1200px){.ion-justify-content-xl-start{justify-content:flex-start !important}.ion-justify-content-xl-end{justify-content:flex-end !important}.ion-justify-content-xl-center{justify-content:center !important}.ion-justify-content-xl-between{justify-content:space-between !important}.ion-justify-content-xl-around{justify-content:space-around !important}.ion-justify-content-xl-evenly{justify-content:space-evenly !important}}.ion-flex-row{flex-direction:row !important}.ion-flex-row-reverse{flex-direction:row-reverse !important}.ion-flex-column{flex-direction:column !important}.ion-flex-column-reverse{flex-direction:column-reverse !important}@media(min-width: 576px){.ion-flex-sm-row{flex-direction:row !important}.ion-flex-sm-row-reverse{flex-direction:row-reverse !important}.ion-flex-sm-column{flex-direction:column !important}.ion-flex-sm-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 768px){.ion-flex-md-row{flex-direction:row !important}.ion-flex-md-row-reverse{flex-direction:row-reverse !important}.ion-flex-md-column{flex-direction:column !important}.ion-flex-md-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 992px){.ion-flex-lg-row{flex-direction:row !important}.ion-flex-lg-row-reverse{flex-direction:row-reverse !important}.ion-flex-lg-column{flex-direction:column !important}.ion-flex-lg-column-reverse{flex-direction:column-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-row{flex-direction:row !important}.ion-flex-xl-row-reverse{flex-direction:row-reverse !important}.ion-flex-xl-column{flex-direction:column !important}.ion-flex-xl-column-reverse{flex-direction:column-reverse !important}}.ion-wrap{flex-wrap:wrap !important}.ion-nowrap{flex-wrap:nowrap !important}.ion-wrap-reverse{flex-wrap:wrap-reverse !important}.ion-flex-wrap{flex-wrap:wrap !important}.ion-flex-nowrap{flex-wrap:nowrap !important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse !important}@media(min-width: 576px){.ion-flex-sm-wrap{flex-wrap:wrap !important}.ion-flex-sm-nowrap{flex-wrap:nowrap !important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 768px){.ion-flex-md-wrap{flex-wrap:wrap !important}.ion-flex-md-nowrap{flex-wrap:nowrap !important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 992px){.ion-flex-lg-wrap{flex-wrap:wrap !important}.ion-flex-lg-nowrap{flex-wrap:nowrap !important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}}@media(min-width: 1200px){.ion-flex-xl-wrap{flex-wrap:wrap !important}.ion-flex-xl-nowrap{flex-wrap:nowrap !important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}}.ion-flex-1{flex:1 !important}.ion-flex-auto{flex:auto !important}.ion-flex-initial{flex:initial !important}.ion-flex-none{flex:none !important}@media(min-width: 576px){.ion-flex-sm-1{flex:1 !important}.ion-flex-sm-auto{flex:auto !important}.ion-flex-sm-initial{flex:initial !important}.ion-flex-sm-none{flex:none !important}}@media(min-width: 768px){.ion-flex-md-1{flex:1 !important}.ion-flex-md-auto{flex:auto !important}.ion-flex-md-initial{flex:initial !important}.ion-flex-md-none{flex:none !important}}@media(min-width: 992px){.ion-flex-lg-1{flex:1 !important}.ion-flex-lg-auto{flex:auto !important}.ion-flex-lg-initial{flex:initial !important}.ion-flex-lg-none{flex:none !important}}@media(min-width: 1200px){.ion-flex-xl-1{flex:1 !important}.ion-flex-xl-auto{flex:auto !important}.ion-flex-xl-initial{flex:initial !important}.ion-flex-xl-none{flex:none !important}}.ion-flex-grow-0{flex-grow:0 !important}.ion-flex-grow-1{flex-grow:1 !important}.ion-flex-shrink-0{flex-shrink:0 !important}.ion-flex-shrink-1{flex-shrink:1 !important}@media(min-width: 576px){.ion-flex-sm-grow-0{flex-grow:0 !important}.ion-flex-sm-grow-1{flex-grow:1 !important}.ion-flex-sm-shrink-0{flex-shrink:0 !important}.ion-flex-sm-shrink-1{flex-shrink:1 !important}}@media(min-width: 768px){.ion-flex-md-grow-0{flex-grow:0 !important}.ion-flex-md-grow-1{flex-grow:1 !important}.ion-flex-md-shrink-0{flex-shrink:0 !important}.ion-flex-md-shrink-1{flex-shrink:1 !important}}@media(min-width: 992px){.ion-flex-lg-grow-0{flex-grow:0 !important}.ion-flex-lg-grow-1{flex-grow:1 !important}.ion-flex-lg-shrink-0{flex-shrink:0 !important}.ion-flex-lg-shrink-1{flex-shrink:1 !important}}@media(min-width: 1200px){.ion-flex-xl-grow-0{flex-grow:0 !important}.ion-flex-xl-grow-1{flex-grow:1 !important}.ion-flex-xl-shrink-0{flex-shrink:0 !important}.ion-flex-xl-shrink-1{flex-shrink:1 !important}}.ion-order-first{order:-1 !important}.ion-order-0{order:0 !important}.ion-order-1{order:1 !important}.ion-order-2{order:2 !important}.ion-order-3{order:3 !important}.ion-order-4{order:4 !important}.ion-order-5{order:5 !important}.ion-order-6{order:6 !important}.ion-order-7{order:7 !important}.ion-order-8{order:8 !important}.ion-order-9{order:9 !important}.ion-order-10{order:10 !important}.ion-order-11{order:11 !important}.ion-order-12{order:12 !important}.ion-order-last{order:13 !important}@media(min-width: 576px){.ion-order-sm-first{order:-1 !important}.ion-order-sm-0{order:0 !important}.ion-order-sm-1{order:1 !important}.ion-order-sm-2{order:2 !important}.ion-order-sm-3{order:3 !important}.ion-order-sm-4{order:4 !important}.ion-order-sm-5{order:5 !important}.ion-order-sm-6{order:6 !important}.ion-order-sm-7{order:7 !important}.ion-order-sm-8{order:8 !important}.ion-order-sm-9{order:9 !important}.ion-order-sm-10{order:10 !important}.ion-order-sm-11{order:11 !important}.ion-order-sm-12{order:12 !important}.ion-order-sm-last{order:13 !important}}@media(min-width: 768px){.ion-order-md-first{order:-1 !important}.ion-order-md-0{order:0 !important}.ion-order-md-1{order:1 !important}.ion-order-md-2{order:2 !important}.ion-order-md-3{order:3 !important}.ion-order-md-4{order:4 !important}.ion-order-md-5{order:5 !important}.ion-order-md-6{order:6 !important}.ion-order-md-7{order:7 !important}.ion-order-md-8{order:8 !important}.ion-order-md-9{order:9 !important}.ion-order-md-10{order:10 !important}.ion-order-md-11{order:11 !important}.ion-order-md-12{order:12 !important}.ion-order-md-last{order:13 !important}}@media(min-width: 992px){.ion-order-lg-first{order:-1 !important}.ion-order-lg-0{order:0 !important}.ion-order-lg-1{order:1 !important}.ion-order-lg-2{order:2 !important}.ion-order-lg-3{order:3 !important}.ion-order-lg-4{order:4 !important}.ion-order-lg-5{order:5 !important}.ion-order-lg-6{order:6 !important}.ion-order-lg-7{order:7 !important}.ion-order-lg-8{order:8 !important}.ion-order-lg-9{order:9 !important}.ion-order-lg-10{order:10 !important}.ion-order-lg-11{order:11 !important}.ion-order-lg-12{order:12 !important}.ion-order-lg-last{order:13 !important}}@media(min-width: 1200px){.ion-order-xl-first{order:-1 !important}.ion-order-xl-0{order:0 !important}.ion-order-xl-1{order:1 !important}.ion-order-xl-2{order:2 !important}.ion-order-xl-3{order:3 !important}.ion-order-xl-4{order:4 !important}.ion-order-xl-5{order:5 !important}.ion-order-xl-6{order:6 !important}.ion-order-xl-7{order:7 !important}.ion-order-xl-8{order:8 !important}.ion-order-xl-9{order:9 !important}.ion-order-xl-10{order:10 !important}.ion-order-xl-11{order:11 !important}.ion-order-xl-12{order:12 !important}.ion-order-xl-last{order:13 !important}}

/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[5].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[5].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[5].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
 */
/* Theme System - must be first */
/* Core CSS required for Ionic components to work properly */
/* Basic CSS for apps built with Ionic */
/* Optional CSS utils that can be commented out */
:root {
  --ion-color-primary: #7a9e63;
  --ion-color-primary-rgb: 122, 158, 99;
  --ion-color-primary-contrast: #fff;
  --ion-color-primary-contrast-rgb: 255, 255, 255;
  --ion-color-primary-shade: #6b8b57;
  --ion-color-primary-tint: #87a873;
  --ion-color-secondary: #4a90e2;
  --ion-color-secondary-rgb: 74, 144, 226;
  --ion-color-secondary-contrast: #fff;
  --ion-color-secondary-contrast-rgb: 255, 255, 255;
  --ion-color-secondary-shade: #3c8dc7;
  --ion-color-secondary-tint: #56a8e5;
  --ion-color-tertiary: #dd6b7e;
  --ion-color-tertiary-rgb: 221, 107, 126;
  --ion-color-tertiary-contrast: #fff;
  --ion-color-tertiary-contrast-rgb: 255, 255, 255;
  --ion-color-tertiary-shade: #b85b6f;
  --ion-color-tertiary-tint: #d6798c;
  --ion-color-success: #7a9e63;
  --ion-color-success-rgb: 122, 158, 99;
  --ion-color-success-contrast: #fff;
  --ion-color-success-contrast-rgb: 255, 255, 255;
  --ion-color-success-shade: #6b8b57;
  --ion-color-success-tint: #87a873;
  --ion-color-warning: #ffd540;
  --ion-color-warning-rgb: 255, 213, 64;
  --ion-color-warning-contrast: #141414;
  --ion-color-warning-contrast-rgb: 20, 20, 20;
  --ion-color-warning-shade: #e0bb38;
  --ion-color-warning-tint: #ffd950;
  --ion-color-danger: #c85a54;
  --ion-color-danger-rgb: 200, 90, 84;
  --ion-color-danger-contrast: #fff;
  --ion-color-danger-contrast-rgb: 255, 255, 255;
  --ion-color-danger-shade: #b14e4a;
  --ion-color-danger-tint: #d06e68;
  --ion-color-dark: #141414;
  --ion-color-dark-rgb: 20, 20, 20;
  --ion-color-dark-contrast: #fff;
  --ion-color-dark-contrast-rgb: 255, 255, 255;
  --ion-color-dark-shade: #121212;
  --ion-color-dark-tint: #2a2a2a;
  --ion-color-medium: #a0a0a0;
  --ion-color-medium-rgb: 160, 160, 160;
  --ion-color-medium-contrast: #fff;
  --ion-color-medium-contrast-rgb: 255, 255, 255;
  --ion-color-medium-shade: #8d8d8d;
  --ion-color-medium-tint: #a9a9a9;
  --ion-color-light: #f5f8f7;
  --ion-color-light-rgb: 245, 248, 247;
  --ion-color-light-contrast: #141414;
  --ion-color-light-contrast-rgb: 20, 20, 20;
  --ion-color-light-shade: #d7d7d9;
  --ion-color-light-tint: #f6f6f8;
  --ion-background-color: #fff;
  --ion-background-color-rgb: 255, 255, 255;
  --ion-text-color: #141414;
  --ion-text-color-rgb: 20, 20, 20;
  --ion-card-background: #fff;
  --ion-item-background: #fff;
  --app-canvas: #fff;
  --app-surface: #fff;
  --app-surface-muted: #f2f2f2;
  --app-surface-raised: #fff;
  --app-text: #141414;
  --app-text-muted: #717171;
  --app-border: #e6e6e6;
  --app-overlay: rgb(20 20 20 / 48%);
  --card-background-rgb: 255, 255, 255;
  --ion-color-step-50: #f2f2f2;
  --ion-color-step-100: #e6e6e6;
  --ion-color-step-150: #d9d9d9;
  --ion-color-step-200: #ccc;
  --ion-color-step-250: #bfbfbf;
  --ion-color-step-300: #b3b3b3;
  --ion-color-step-350: #a6a6a6;
  --ion-color-step-400: #999;
  --ion-color-step-450: #8c8c8c;
  --ion-color-step-500: #808080;
  --ion-color-step-550: #737373;
  --ion-color-step-600: #666;
  --ion-color-step-650: #595959;
  --ion-color-step-700: #4d4d4d;
  --ion-color-step-750: #404040;
  --ion-color-step-800: #333;
  --ion-color-step-850: #262626;
  --ion-color-step-900: #1a1a1a;
  --ion-color-step-950: #0d0d0d;
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.1);
  --shadow-md: 0 4px 4px 0 rgba(0, 0, 0, 0.15);
  --shadow-xs: 0 -3px 4px 0 rgba(0, 0, 0, 0.1);
  --filter-circle-color: #50703d;
  --filter-circle-color-active: #3d5530;
  --filter-circle-color-focus: #6a8a57;
  --ion-color-discount-pink: #e91e63;
  --ion-color-tomorrow-availablity: #8a6a00;
  --article-pullquote-bg: rgba(221, 107, 126, 0.12);
  --article-pullquote-mark: #dd6b7e;
  --article-whisper-text: #b85b6f;
  --article-nick-text: #dd6b7e;
  --article-video-bg: #141414;
  --article-table-bg-odd: rgba(122, 158, 99, 0.06);
  --article-takeaway-pink-bg: rgba(221, 107, 126, 0.1);
  --article-takeaway-pink-border: #dd6b7e;
  --article-heading-border: #dd6b7e;
  --article-byline-bg: linear-gradient(145deg, #fef9f4 0%, #f5ede0 100%);
  --article-byline-avatar-author-bg: #e57070;
  --article-byline-avatar-reviewer-bg: #3d7a5e;
  --article-medical-review-bg: rgb(60 152 100 / 8%);
  --article-medical-review-text: #6b8b57;
  --article-title-color: #141414;
  --article-tag-hash-color: #d4637a;
  --article-audio-player-bg: #1c1c1e;
  --article-audio-player-primary: #ff6987;
}

.ion-palette-dark {
  --ion-color-primary: #9bc381;
  --ion-color-primary-rgb: 155, 195, 129;
  --ion-color-primary-contrast: #000;
  --ion-color-primary-contrast-rgb: 0, 0, 0;
  --ion-color-primary-shade: #88ac72;
  --ion-color-primary-tint: #a5c98e;
  --ion-color-secondary: #6bb5f0;
  --ion-color-secondary-rgb: 107, 181, 240;
  --ion-color-secondary-contrast: #000;
  --ion-color-secondary-contrast-rgb: 0, 0, 0;
  --ion-color-secondary-shade: #5e9fd3;
  --ion-color-secondary-tint: #7abcf2;
  --ion-color-tertiary: #e99aa8;
  --ion-color-tertiary-rgb: 233, 154, 168;
  --ion-color-tertiary-contrast: #000;
  --ion-color-tertiary-contrast-rgb: 0, 0, 0;
  --ion-color-tertiary-shade: #cd8894;
  --ion-color-tertiary-tint: #eba4b1;
  --ion-color-success: #9bc381;
  --ion-color-success-rgb: 155, 195, 129;
  --ion-color-success-contrast: #000;
  --ion-color-success-contrast-rgb: 0, 0, 0;
  --ion-color-success-shade: #88ac72;
  --ion-color-success-tint: #a5c98e;
  --ion-color-warning: #ffd966;
  --ion-color-warning-rgb: 255, 217, 102;
  --ion-color-warning-contrast: #000;
  --ion-color-warning-contrast-rgb: 0, 0, 0;
  --ion-color-warning-shade: #e0bf5a;
  --ion-color-warning-tint: #ffdd75;
  --ion-color-danger: #d87369;
  --ion-color-danger-rgb: 216, 115, 105;
  --ion-color-danger-contrast: #000;
  --ion-color-danger-contrast-rgb: 0, 0, 0;
  --ion-color-danger-shade: #c0655c;
  --ion-color-danger-tint: #dd8379;
  --ion-color-dark: #e8e8e8;
  --ion-color-dark-rgb: 232, 232, 232;
  --ion-color-dark-contrast: #000;
  --ion-color-dark-contrast-rgb: 0, 0, 0;
  --ion-color-dark-shade: #ccc;
  --ion-color-dark-tint: #eaeaea;
  --ion-color-medium: #9e9e9e;
  --ion-color-medium-rgb: 158, 158, 158;
  --ion-color-medium-contrast: #000;
  --ion-color-medium-contrast-rgb: 0, 0, 0;
  --ion-color-medium-shade: #8b8b8b;
  --ion-color-medium-tint: #a8a8a8;
  --ion-color-light: #2c2c2c;
  --ion-color-light-rgb: 44, 44, 44;
  --ion-color-light-contrast: #fff;
  --ion-color-light-contrast-rgb: 255, 255, 255;
  --ion-color-light-shade: #272727;
  --ion-color-light-tint: #414141;
  --ion-background-color: #1a1a1a;
  --ion-background-color-rgb: 26, 26, 26;
  --ion-text-color: #e8e8e8;
  --ion-text-color-rgb: 232, 232, 232;
  --ion-card-background: #242424;
  --ion-item-background: #242424;
  --app-canvas: #1a1a1a;
  --app-surface: #242424;
  --app-surface-muted: #1f1f1f;
  --app-surface-raised: #2a2a2a;
  --app-text: #e8e8e8;
  --app-text-muted: #9e9e9e;
  --app-border: #363636;
  --app-overlay: rgb(0 0 0 / 68%);
  --card-background-rgb: 20, 20, 20;
  --ion-color-step-50: #1f1f1f;
  --ion-color-step-100: #2a2a2a;
  --ion-color-step-150: #363636;
  --ion-color-step-200: #414141;
  --ion-color-step-250: #4d4d4d;
  --ion-color-step-300: #585858;
  --ion-color-step-350: #636363;
  --ion-color-step-400: #6f6f6f;
  --ion-color-step-450: #7a7a7a;
  --ion-color-step-500: #868686;
  --ion-color-step-550: #919191;
  --ion-color-step-600: #9d9d9d;
  --ion-color-step-650: #a8a8a8;
  --ion-color-step-700: #b4b4b4;
  --ion-color-step-750: #bfbfbf;
  --ion-color-step-800: #cacaca;
  --ion-color-step-850: #d6d6d6;
  --ion-color-step-900: #e1e1e1;
  --ion-color-step-950: #ededed;
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 30%);
  --shadow-md: 0 4px 4px 0 rgb(0 0 0 / 40%);
  --shadow-xs: 0 -3px 4px 0 rgba(0, 0, 0, 0.1);
  --filter-circle-color: #50703d;
  --filter-circle-color-active: #3d5530;
  --filter-circle-color-focus: #6a8a57;
  --ion-color-discount-pink: #e91e63;
  --ion-color-tomorrow-availablity: #8a6a00;
  --article-pullquote-bg: rgba(233, 154, 168, 0.15);
  --article-pullquote-mark: #e99aa8;
  --article-whisper-text: #e99aa8;
  --article-nick-text: #e99aa8;
  --article-video-bg: #e8e8e8;
  --article-table-bg-odd: rgba(155, 195, 129, 0.1);
  --article-takeaway-pink-bg: rgba(233, 154, 168, 0.15);
  --article-takeaway-pink-border: #e99aa8;
  --article-heading-border: #e99aa8;
  --article-byline-bg: linear-gradient(
    145deg,
    rgba(155, 195, 129, 0.1),
    rgba(155, 195, 129, 0.05)
  );
  --article-byline-avatar-author-bg: #ff8fa8;
  --article-byline-avatar-reviewer-bg: #7fb0a0;
  --article-medical-review-bg: rgba(60, 60, 60, 0.5);
  --article-medical-review-text: #ffd966;
  --article-title-color: #e8e8e8;
  --article-tag-hash-color: #ff8fa8;
  --article-audio-player-bg: rgba(30, 30, 30, 0.95);
  --article-audio-player-primary: #ff8fa8;
}

ion-app {
  text-rendering: optimizelegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

ion-content {
  line-height: 1.5;
}

@font-face {
  font-family: Gilroy-Regular;
  src: url("/assets/fonts/Gilroy-Regular.ttf") format("truetype");
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Gilroy-SemiBold;
  src: url("/assets/fonts/Gilroy-SemiBold.ttf") format("truetype");
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Gilroy-Bold;
  src: url("/assets/fonts/Gilroy-Bold.ttf") format("truetype");
  font-style: normal;
  font-display: swap;
}
:root {
  --font-fallback:
    -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, sans-serif;
  --font-fallback-bengali: "Noto Sans Bengali", var(--font-fallback);
  --font-family-regular: "Gilroy-Regular", var(--font-fallback);
  --font-family-semibold: "Gilroy-SemiBold", var(--font-fallback);
  --font-family-bold: "Gilroy-Bold", var(--font-fallback);
  --font-heading: var(--font-family-bold);
  --font-subheading: var(--font-family-semibold);
  --font-body: var(--font-family-regular);
}

html.locale-bn {
  --font-family-regular: "Noto Sans Bengali", var(--font-fallback);
  --font-family-semibold: "Noto Sans Bengali", var(--font-fallback);
  --font-family-bold: "Noto Sans Bengali", var(--font-fallback);
  --font-heading: var(--font-family-bold);
  --font-subheading: var(--font-family-semibold);
  --font-body: var(--font-family-regular);
}

:root {
  --radius-none: 0;
  --radius-sm: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.625rem;
  --radius-xl: 0.75rem;
  --radius-2xl: 1rem;
  --radius-3xl: 1.25rem;
  --radius-full: 9999px;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 2.5rem;
  --input-height: 3.25rem;
  --input-height-sm: 2.5rem;
  --button-height: 3rem;
  --button-height-sm: 2.5rem;
  --toolbar-height: 3.75rem;
  --border-sm: 0.125rem;
  --border-lg: 0.25rem;
  --border-md: 0.1875rem;
}

input[type=date]::-webkit-calendar-picker-indicator {
  opacity: 0 !important;
  appearance: none !important;
  background: transparent !important;
  background-image: none !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
}

input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button {
  display: none !important;
  appearance: none !important;
  margin: 0 !important;
}

input[type=date]::-ms-clear {
  display: none !important;
}

input[type=date]::-webkit-datetime-edit {
  color: transparent;
}

input[type=date]::-webkit-datetime-edit-fields-wrapper {
  color: transparent;
}

input[type=date]::-webkit-datetime-edit-text {
  color: transparent;
  padding: 0;
}

input[type=date]::-webkit-datetime-edit-month-field {
  color: transparent;
}

input[type=date]::-webkit-datetime-edit-day-field {
  color: transparent;
}

input[type=date]::-webkit-datetime-edit-year-field {
  color: transparent;
}

input[type=date]::-webkit-date-and-time-value {
  color: transparent;
}

input[type=date]:focus::-webkit-datetime-edit,
input[type=date]:focus::-webkit-datetime-edit-fields-wrapper,
input[type=date]:focus::-webkit-datetime-edit-text,
input[type=date]:focus::-webkit-datetime-edit-month-field,
input[type=date]:focus::-webkit-datetime-edit-day-field,
input[type=date]:focus::-webkit-datetime-edit-year-field,
input[type=date]:focus::-webkit-date-and-time-value {
  color: var(--ion-text-color) !important;
}

.has-value input[type=date]::-webkit-datetime-edit,
.has-value input[type=date]::-webkit-datetime-edit-fields-wrapper,
.has-value input[type=date]::-webkit-datetime-edit-text,
.has-value input[type=date]::-webkit-datetime-edit-month-field,
.has-value input[type=date]::-webkit-datetime-edit-day-field,
.has-value input[type=date]::-webkit-datetime-edit-year-field,
.has-value input[type=date]::-webkit-date-and-time-value {
  color: var(--ion-text-color) !important;
}

ion-app {
  font-family: var(--font-body);
}

ion-content h1,
ion-content h2,
ion-content h3 {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 1rem;
}
ion-content h4,
ion-content h5,
ion-content h6 {
  font-family: var(--font-subheading);
  font-weight: 600;
  line-height: 1.25;
  margin: 0 0 0.5rem;
}
ion-content h3 {
  font-size: 1.5rem;
}
ion-content h4 {
  font-size: 1.25rem;
}
ion-content h5 {
  font-size: 1.125rem;
}
ion-content h6 {
  font-size: 1rem;
}
ion-content p {
  margin: 0 0 1rem;
}
ion-content p:last-child {
  margin-bottom: 0;
}
ion-content a {
  color: var(--ion-color-primary);
  text-decoration: none;
}
ion-content a:hover, ion-content a:active {
  text-decoration: underline;
}
ion-content ul,
ion-content ol {
  margin: 0 0 1rem;
  padding-left: 1.5rem;
}
ion-content ul:last-child,
ion-content ol:last-child {
  margin-bottom: 0;
}
ion-content ul {
  list-style-type: disc;
}
ion-content ol {
  list-style-type: decimal;
}
ion-content blockquote {
  margin: 0 0 1rem;
  padding-left: 1rem;
  border-left: 3px solid var(--ion-color-primary);
  font-style: italic;
}
ion-content code {
  font-family: "SF Mono", "Fira Code", monospace;
  font-size: 0.875rem;
  padding: 2px 6px;
  background-color: var(--ion-color-step-100);
  border-radius: var(--radius-sm);
}
ion-content pre {
  margin: 0 0 1rem;
  padding: 1rem;
  background-color: var(--ion-color-step-100);
  border-radius: var(--radius-md);
  overflow-x: auto;
}
ion-content pre code {
  padding: 0;
  background-color: transparent;
}

.btn-text-fill {
  --background: var(--ion-color-primary);
  --background-hover: var(--ion-color-primary-shade);
  --background-activated: var(--ion-color-primary-shade);
  --color: var(--ion-color-primary-contrast);
  --padding-top: 0.5rem;
  --padding-bottom: 0.5rem;
  --padding-start: 1.5rem;
  --padding-end: 1.5rem;
  --border-radius: var(--radius-full);
  --box-shadow: none;
  font-family: var(--font-heading) !important;
  font-size: var(--font-size-base);
  margin: 0 0 env(safe-area-inset-bottom, 0);
  text-transform: none;
  letter-spacing: 0.5px;
  height: var(--button-height);
}
.btn-text-fill::part(native) {
  border-radius: var(--radius-full);
}
.btn-text-fill.btn-secondary {
  --background: var(--ion-color-warning);
  --background-hover: var(--ion-color-warning-shade);
  --background-activated: var(--ion-color-warning-shade);
  --color: var(--ion-color-warning-contrast);
}
.btn-text-fill.btn-tertiary {
  --background: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-shade);
  --background-activated: var(--ion-color-tertiary-shade);
  --color: var(--ion-color-tertiary-contrast);
}
.btn-text-fill.btn-success {
  --background: var(--ion-color-success);
  --background-hover: var(--ion-color-success-shade);
  --background-activated: var(--ion-color-success-shade);
  --color: var(--ion-color-success-contrast);
}
.btn-text-fill.btn-danger {
  --background: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-shade);
  --background-activated: var(--ion-color-danger-shade);
  --color: var(--ion-color-danger-contrast);
}
.btn-text-fill.btn-light {
  --background: var(--ion-color-light);
  --background-hover: var(--ion-color-light-shade);
  --background-activated: var(--ion-color-light-shade);
  --color: var(--ion-color-light-contrast);
  --border-color: var(--ion-color-light);
}

.btn-text-outline {
  --background: transparent;
  --background-hover: var(--ion-color-primary-tint);
  --background-activated: var(--ion-color-primary-tint);
  --color: var(--ion-color-primary);
  --border-radius: var(--radius-full);
  --border-width: 2px;
  --border-style: solid;
  --border-color: var(--ion-color-primary);
  --padding-top: 0.5rem;
  --padding-bottom: 0.5rem;
  --padding-start: 1.5rem;
  --padding-end: 1.5rem;
  font-family: var(--font-heading) !important;
  font-size: var(--font-size-base);
  margin: 0 0 env(safe-area-inset-bottom, 0);
  text-transform: none;
  letter-spacing: 0.5px;
  height: var(--button-height);
}
.btn-text-outline::part(native) {
  border-radius: var(--radius-full);
}
.btn-text-outline.btn-secondary {
  --color: var(--ion-color-secondary);
  --border-color: var(--ion-color-secondary);
  --background-hover: var(--ion-color-secondary-tint);
  --background-activated: var(--ion-color-secondary-tint);
}
.btn-text-outline.btn-tertiary {
  --color: var(--ion-color-tertiary);
  --border-color: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-tint);
  --background-activated: var(--ion-color-tertiary-tint);
}
.btn-text-outline.btn-white {
  --color: var(--ion-text-color);
  --border-color: var(--ion-color-step-300);
  --background-hover: var(--ion-color-step-100);
  --background-activated: var(--ion-color-step-200);
}
.btn-text-outline.btn-light {
  --background: var(--ion-color-primary);
  --background-hover: var(--ion-color-light-shade);
  --background-activated: var(--ion-color-light-shade);
  --color: var(--ion-color-light);
  --border-color: var(--ion-color-light);
}
.btn-text-outline.btn-success {
  --color: var(--ion-color-success);
  --border-color: var(--ion-color-success);
  --background-hover: var(--ion-color-success-tint);
  --background-activated: var(--ion-color-success-tint);
}
.btn-text-outline.btn-danger {
  --color: var(--ion-color-danger);
  --border-color: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-tint);
  --background-activated: var(--ion-color-danger-tint);
}

.btn-icon-fill {
  --background: var(--ion-color-primary);
  --background-hover: var(--ion-color-primary-shade);
  --background-activated: var(--ion-color-primary-shade);
  --color: var(--ion-color-primary-contrast);
  --border-radius: var(--radius-xl);
  --padding-top: 1rem;
  --padding-bottom: 1rem;
  --padding-start: 1rem;
  --padding-end: 1rem;
  height: var(--button-height);
}
.btn-icon-fill::part(native) {
  border-radius: var(--radius-xl);
}
.btn-icon-fill ion-icon {
  font-size: var(--font-size-2xl);
}
.btn-icon-fill.btn-icon-circle {
  --border-radius: var(--radius-full);
}
.btn-icon-fill.btn-icon-circle::part(native) {
  border-radius: var(--radius-full);
}
.btn-icon-fill.btn-icon-square {
  --border-radius: var(--radius-md);
}
.btn-icon-fill.btn-icon-square::part(native) {
  border-radius: var(--radius-md);
}
.btn-icon-fill.btn-secondary {
  --background: var(--ion-color-secondary);
  --background-hover: var(--ion-color-secondary-shade);
  --background-activated: var(--ion-color-secondary-shade);
  --color: var(--ion-color-secondary-contrast);
}
.btn-icon-fill.btn-tertiary {
  --background: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-shade);
  --background-activated: var(--ion-color-tertiary-shade);
  --color: var(--ion-color-tertiary-contrast);
}
.btn-icon-fill.btn-success {
  --background: var(--ion-color-success);
  --background-hover: var(--ion-color-success-shade);
  --background-activated: var(--ion-color-success-shade);
  --color: var(--ion-color-success-contrast);
}
.btn-icon-fill.btn-danger {
  --background: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-shade);
  --background-activated: var(--ion-color-danger-shade);
  --color: var(--ion-color-danger-contrast);
}

.btn-icon-outline {
  --background: transparent;
  --background-hover: var(--ion-color-primary-tint);
  --background-activated: var(--ion-color-primary-tint);
  --color: var(--ion-color-primary);
  --border-radius: var(--radius-xl);
  --border-width: 2px;
  --border-style: solid;
  --border-color: var(--ion-color-primary);
  --padding-top: 1rem;
  --padding-bottom: 1rem;
  --padding-start: 1rem;
  --padding-end: 1rem;
  height: var(--button-height);
}
.btn-icon-outline::part(native) {
  border-radius: var(--radius-xl);
}
.btn-icon-outline ion-icon {
  font-size: var(--font-size-2xl);
}
.btn-icon-outline.btn-icon-circle {
  --border-radius: var(--radius-full);
}
.btn-icon-outline.btn-icon-circle::part(native) {
  border-radius: var(--radius-full);
}
.btn-icon-outline.btn-icon-square {
  --border-radius: var(--radius-md);
}
.btn-icon-outline.btn-icon-square::part(native) {
  border-radius: var(--radius-md);
}
.btn-icon-outline.btn-secondary {
  --color: var(--ion-color-secondary);
  --border-color: var(--ion-color-secondary);
  --background-hover: var(--ion-color-secondary-tint);
  --background-activated: var(--ion-color-secondary-tint);
}
.btn-icon-outline.btn-tertiary {
  --color: var(--ion-color-tertiary);
  --border-color: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-tint);
  --background-activated: var(--ion-color-tertiary-tint);
}
.btn-icon-outline.btn-success {
  --color: var(--ion-color-success);
  --border-color: var(--ion-color-success);
  --background-hover: var(--ion-color-success-tint);
  --background-activated: var(--ion-color-success-tint);
}
.btn-icon-outline.btn-danger {
  --color: var(--ion-color-danger);
  --border-color: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-tint);
  --background-activated: var(--ion-color-danger-tint);
}

.btn-text-icon-fill {
  --background: var(--ion-color-primary);
  --background-hover: var(--ion-color-primary-shade);
  --background-activated: var(--ion-color-primary-shade);
  --color: var(--ion-color-primary-contrast);
  --padding-top: 0.5rem;
  --padding-bottom: 0.5rem;
  --padding-start: 1.5rem;
  --padding-end: 1.5rem;
  --border-radius: var(--radius-full);
  --box-shadow: none;
  font-family: var(--font-heading) !important;
  font-size: var(--font-size-base);
  margin: 0 0 env(safe-area-inset-bottom, 0);
  text-transform: none;
  letter-spacing: 0.5px;
  height: var(--button-height);
}
.btn-text-icon-fill::part(native) {
  border-radius: var(--radius-full);
}
.btn-text-icon-fill ion-icon {
  font-size: var(--font-size-xl);
}
.btn-text-icon-fill ion-icon[slot=start] {
  margin-inline-end: 0.25rem;
}
.btn-text-icon-fill ion-icon[slot=end] {
  margin-inline-start: 0.25rem;
}
.btn-text-icon-fill.btn-secondary {
  --background: var(--ion-color-warning);
  --background-hover: var(--ion-color-warning-shade);
  --background-activated: var(--ion-color-warning-shade);
  --color: var(--ion-color-warning-contrast);
}
.btn-text-icon-fill.btn-tertiary {
  --background: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-shade);
  --background-activated: var(--ion-color-tertiary-shade);
  --color: var(--ion-color-tertiary-contrast);
}
.btn-text-icon-fill.btn-success {
  --background: var(--ion-color-success);
  --background-hover: var(--ion-color-success-shade);
  --background-activated: var(--ion-color-success-shade);
  --color: var(--ion-color-success-contrast);
}
.btn-text-icon-fill.btn-danger {
  --background: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-shade);
  --background-activated: var(--ion-color-danger-shade);
  --color: var(--ion-color-danger-contrast);
}
.btn-text-icon-fill.btn-light {
  --background: var(--ion-color-light);
  --background-hover: var(--ion-color-light-shade);
  --background-activated: var(--ion-color-light-shade);
  --color: var(--ion-color-light-contrast);
}

.btn-text-icon-outline {
  --background: transparent;
  --background-hover: var(--ion-color-primary-tint);
  --background-activated: var(--ion-color-primary-tint);
  --color: var(--ion-color-primary);
  --border-radius: var(--radius-lg);
  --border-width: 2px;
  --border-style: solid;
  --border-color: var(--ion-color-primary);
  --padding-top: 0.5rem;
  --padding-bottom: 0.5rem;
  --padding-start: 1.5rem;
  --padding-end: 1.5rem;
  font-weight: var(--font-weight-semibold);
  text-transform: none;
  letter-spacing: 0.5px;
  height: var(--button-height);
}
.btn-text-icon-outline::part(native) {
  border-radius: var(--radius-lg);
}
.btn-text-icon-outline ion-icon {
  font-size: var(--font-size-xl);
}
.btn-text-icon-outline ion-icon[slot=start] {
  margin-inline-end: 0.25rem;
}
.btn-text-icon-outline ion-icon[slot=end] {
  margin-inline-start: 0.25rem;
}
.btn-text-icon-outline.btn-secondary {
  --color: var(--ion-color-secondary);
  --border-color: var(--ion-color-secondary);
  --background-hover: var(--ion-color-secondary-tint);
  --background-activated: var(--ion-color-secondary-tint);
}
.btn-text-icon-outline.btn-tertiary {
  --color: var(--ion-color-tertiary);
  --border-color: var(--ion-color-tertiary);
  --background-hover: var(--ion-color-tertiary-tint);
  --background-activated: var(--ion-color-tertiary-tint);
}
.btn-text-icon-outline.btn-success {
  --color: var(--ion-color-success);
  --border-color: var(--ion-color-success);
  --background-hover: var(--ion-color-success-tint);
  --background-activated: var(--ion-color-success-tint);
}
.btn-text-icon-outline.btn-danger {
  --color: var(--ion-color-danger);
  --border-color: var(--ion-color-danger);
  --background-hover: var(--ion-color-danger-tint);
  --background-activated: var(--ion-color-danger-tint);
}

.input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--ion-color-light);
  border: var(--border-sm) solid var(--ion-color-step-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all 0.3s ease;
}
.input-wrapper:focus-within {
  border-color: var(--ion-color-primary);
}
.input-wrapper.error {
  border-color: var(--ion-color-danger);
}
.input-wrapper.verified {
  border-color: var(--ion-color-success);
}
.input-wrapper.has-value {
  border-color: var(--ion-color-primary);
}

.input-wrapper-stretch {
  position: relative;
  display: flex;
  align-items: stretch;
  background: var(--ion-color-light);
  border: var(--border-sm) solid var(--ion-color-step-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all 0.3s ease;
}
.input-wrapper-stretch:focus-within {
  border-color: var(--ion-color-primary);
}
.input-wrapper-stretch.error {
  border-color: var(--ion-color-danger);
}
.input-wrapper-stretch.verified {
  border-color: var(--ion-color-success);
}
.input-wrapper-stretch.verified {
  align-items: center;
}

.input-wrapper-primary {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--ion-color-light);
  border: var(--border-sm) solid var(--ion-color-step-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all 0.3s ease;
}
.input-wrapper-primary:focus-within {
  border-color: var(--ion-color-primary);
}
.input-wrapper-primary.error {
  border-color: var(--ion-color-danger);
}

.input-wrapper-outline {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--ion-color-light);
  border: var(--border-sm) solid var(--ion-color-step-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all 0.3s ease;
  border-width: var(--border-sm);
}
.input-wrapper-outline:focus-within {
  border-color: var(--ion-color-primary);
}
.input-wrapper-outline.error {
  border-color: var(--ion-color-danger);
}

.input-field {
  flex: 1;
  height: var(--input-height);
  border: none;
  background: transparent;
  padding: var(--spacing-md);
  padding-left: var(--spacing-sm);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  color: var(--ion-color-dark);
  outline: none;
  min-width: 0;
}
.input-field::placeholder {
  color: var(--ion-color-medium);
}
.input-field.error {
  color: var(--ion-color-danger);
}

.input-country-selector {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  background: transparent;
  border: none;
  padding: var(--spacing-md);
  padding-right: 0;
  cursor: pointer;
  color: var(--ion-color-dark);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  transition: background 0.3s ease;
}
.input-country-selector:hover {
  background: var(--ion-color-step-100);
}
.input-country-selector .flag-image {
  width: 28px;
  height: 20px;
  object-fit: cover;
  border-radius: var(--radius-sm);
  display: block;
}
.input-country-selector .flag-wrapper {
  width: 28px;
  height: 20px;
  border-radius: var(--radius-sm);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.input-country-selector .flag-wrapper ion-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.input-country-selector .country-code {
  font-weight: var(--font-weight-semibold);
  white-space: nowrap;
}
.input-country-selector .dropdown-icon {
  font-size: var(--font-size-base);
  color: var(--ion-color-medium);
}

.input-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--spacing-md);
  color: var(--ion-color-medium);
  font-size: var(--font-size-xl);
  flex-shrink: 0;
}

.input-error-message {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  margin-top: var(--spacing-sm);
  color: var(--ion-color-danger);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
}
.input-error-message .error-icon {
  font-size: var(--font-size-base);
}

.input-otp {
  flex: 1;
  width: 80px;
  height: var(--input-height);
  background: var(--ion-color-light);
  border: var(--border-sm) solid var(--ion-color-step-200);
  border-radius: var(--radius-sm);
  font-family: var(--font-body);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--ion-color-dark);
  text-align: center;
  outline: none;
  transition: all 0.3s ease;
}
.input-otp:focus {
  border-color: var(--ion-color-primary);
}
.input-otp::placeholder {
  color: var(--ion-color-medium);
}
.input-otp.error {
  border-color: var(--ion-color-danger);
  color: var(--ion-color-danger);
}
.input-otp.success {
  border-color: var(--ion-color-success);
}

.input-otp-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-sm);
  width: 100%;
  max-width: 320px;
}
.input-otp-container.error .input-otp {
  border-color: var(--ion-color-danger);
}
.input-otp-container.success .input-otp {
  border-color: var(--ion-color-success);
}

.select-field {
  width: 100%;
  --highlight-height: 0;
  --border-style: none;
  padding: 0 var(--spacing-md);
  background: var(--ion-color-light);
  border-radius: var(--radius-lg);
  border: var(--border-sm) solid var(--ion-color-step-200);
  min-height: var(--input-height);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  color: var(--ion-text-color);
  transition: all 0.3s ease;
}
.select-field::part(container) {
  width: 100%;
  max-width: 100%;
  flex: 1;
}
.select-field:focus, .select-field.ion-focused, .select-field.select-expanded {
  outline: none !important;
  border-color: var(--ion-color-primary);
  box-shadow: none !important;
}
.select-field::part(icon) {
  position: absolute;
  right: var(--spacing-sm);
  opacity: 1 !important;
  color: var(--ion-color-medium) !important;
  pointer-events: none;
  transition: transform 150ms ease;
}
.select-field::part(text) {
  padding-inline-end: 28px;
}
.select-field.select-expanded::part(icon), .select-field.ion-focused::part(icon) {
  transform: rotate(180deg);
}
.select-field.has-value {
  border-color: var(--ion-color-primary);
}

.search-input {
  margin-bottom: var(--spacing-sm);
  padding: 0 var(--spacing-md);
}
.search-input ion-searchbar {
  --background: var(--ion-color-step-100);
  --border-radius: var(--radius-lg);
  --box-shadow: none;
  --color: var(--ion-text-color);
  --placeholder-color: var(--ion-color-medium);
  --icon-color: var(--ion-color-medium);
  --clear-button-color: var(--ion-color-medium);
  padding: 0;
}
ion-toolbar[color=primary] .search-input ion-searchbar {
  --background: rgb(255 255 255 / 20%);
  --color: white;
  --placeholder-color: rgb(255 255 255 / 70%);
  --icon-color: white;
  --clear-button-color: white;
}

.image-viewer-modal {
  --background: transparent;
  --backdrop-opacity: 0;
}
.image-viewer-modal::part(content) {
  background: transparent;
}

:root {
  --safe-area-top: env(safe-area-inset-top, 0);
  --safe-area-bottom: env(safe-area-inset-bottom, 0);
  --safe-area-left: env(safe-area-inset-left, 0);
  --safe-area-right: env(safe-area-inset-right, 0);
}

ion-app {
  padding: var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left);
}

ion-tab-bar {
  padding-bottom: var(--safe-area-bottom) !important;
  height: calc(50px + var(--safe-area-bottom));
}

ion-header.header-ios {
  padding-top: 0;
}

ion-footer {
  padding-bottom: var(--safe-area-bottom);
}

ion-modal {
  --ion-safe-area-top: var(--safe-area-top);
  --ion-safe-area-bottom: var(--safe-area-bottom);
  --ion-safe-area-left: var(--safe-area-left);
  --ion-safe-area-right: var(--safe-area-right);
}

ion-card {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

ion-card-header {
  display: flex;
  flex-direction: column;
}
ion-card-header ion-card-title {
  order: 1;
}
ion-card-header ion-card-subtitle {
  order: 2;
  text-transform: none;
}

ion-button {
  --border-radius: var(--radius-md);
  font-weight: var(--font-weight-semibold);
}

ion-input,
ion-textarea,
ion-searchbar {
  --border-radius: var(--radius-md);
}

ion-chip {
  --border-radius: var(--radius-2xl);
}

ion-modal,
ion-popover {
  --border-radius: var(--radius-xl);
}

ion-title {
  font-weight: var(--font-weight-bold);
}

p,
ion-text {
  font-weight: var(--font-weight-regular);
}

ion-title {
  font-family: var(--font-heading);
}

ion-card-title {
  font-family: var(--font-heading);
}

ion-list-header {
  font-family: var(--font-heading);
}

ion-modal ion-title {
  font-family: var(--font-heading);
}

ion-card-subtitle {
  font-family: var(--font-body);
}

ion-label.label-heading,
ion-label[slot=start].ion-text-wrap {
  font-family: var(--font-subheading);
}

ion-segment-button {
  font-family: var(--font-subheading);
}

ion-chip {
  font-family: var(--font-subheading);
}

ion-badge {
  font-family: var(--font-subheading);
}

ion-text {
  font-family: var(--font-body);
}

ion-label {
  font-family: var(--font-body);
}

ion-button {
  font-family: var(--font-body);
}

ion-item {
  font-family: var(--font-body);
}

ion-input,
ion-textarea,
ion-select {
  font-family: var(--font-body);
}

ion-tab-button {
  font-family: var(--font-body);
}

ion-card-content {
  font-family: var(--font-body);
}

ion-toast {
  font-family: var(--font-body);
}

ion-alert {
  font-family: var(--font-body);
}

.text-heading {
  font-family: var(--font-heading) !important;
}

.text-subheading {
  font-family: var(--font-subheading) !important;
}

.text-body {
  font-family: var(--font-body) !important;
}

/* Web-only layout overrides (scoped under body.platform-web) */
body.platform-web {
  --w-sage: #7ba465;
  --w-sage-hover: #678e53;
  --w-lime: #99c787;
  --w-canvas: #f4f7f3;
  --w-card: #fff;
  --w-pink: #e96677;
  --w-pink-strong: #d24d5f;
  --w-gold: #ffc043;
  --w-border: #e4eae3;
  --w-text: #2a2e2b;
  --w-muted: #707a72;
  --w-radius: 24px;
  --w-radius-card: 16px;
  --w-radius-main: 24px;
  --w-radius-sm: 8px;
  --w-max: 1200px;
  --w-surface: #f3f6f2;
  --w-space-1: 4px;
  --w-space-2: 8px;
  --w-space-3: 12px;
  --w-space-4: 16px;
  --w-space-5: 20px;
  --w-space-6: 24px;
  --w-space-7: 32px;
  --w-space-8: 48px;
  --w-shadow-sm: 0 1px 3px rgb(16 24 16 / 6%), 0 2px 6px rgb(16 24 16 / 5%);
  --w-shadow-md: 0 4px 8px rgb(16 24 16 / 6%), 0 8px 20px rgb(16 24 16 / 8%);
  --w-shadow-lg: 0 8px 16px rgb(16 24 16 / 8%), 0 16px 32px rgb(16 24 16 / 10%);
  --w-transition-fast: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1);
  --w-transition-smooth: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  --w-transition-bounce: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --w-font: inherit;
  --w-fs-display: 32px;
  --w-fw-display: 800;
  --w-fs-h1: 30px;
  --w-fw-h1: 800;
  --w-lh-h1: 1.15;
  --w-fs-h2: 19px;
  --w-fw-h2: 700;
  --w-fs-h3: 17px;
  --w-fw-h3: 700;
  --w-fs-body-lg: 15px;
  --w-fw-body-lg: 600;
  --w-fs-body: 14px;
  --w-fs-caption: 12px;
  --w-fw-caption: 800;
  /* stylelint-disable no-duplicate-selectors -- final Shop-only parity overrides */
  /* stylelint-enable no-duplicate-selectors */
}
body.platform-web.dark {
  color-scheme: dark;
  --w-canvas: var(--app-canvas);
  --w-card: var(--app-surface);
  --w-surface: var(--app-surface-muted);
  --w-border: var(--app-border);
  --w-text: var(--app-text);
  --w-muted: var(--app-text-muted);
  --w-shadow-sm: 0 1px 3px rgb(0 0 0 / 24%), 0 2px 6px rgb(0 0 0 / 20%);
  --w-shadow-md: 0 4px 8px rgb(0 0 0 / 24%), 0 8px 20px rgb(0 0 0 / 28%);
  --w-shadow-lg: 0 8px 16px rgb(0 0 0 / 30%), 0 16px 32px rgb(0 0 0 / 34%);
  --shop-dark-canvas: #0b100d;
  --shop-dark-surface: #131a16;
  --shop-dark-surface-raised: #18211b;
  --shop-dark-surface-soft: #1c261f;
  --shop-dark-border: rgb(193 221 198 / 11%);
  --shop-dark-border-strong: rgb(168 207 143 / 30%);
  --shop-dark-text: #f0f5f1;
  --shop-dark-muted: #98a69d;
  --shop-dark-accent: #a8cf8f;
  --shop-dark-shadow: 0 18px 46px rgb(0 0 0 / 30%);
}
body.platform-web.dark app-header-container.shop-header {
  background: var(--shop-dark-canvas);
  border-bottom: 1px solid rgba(193, 221, 198, 0.06);
}
body.platform-web.dark app-header-container.shop-header ion-header {
  background: var(--shop-dark-canvas);
}
body.platform-web.dark app-header-container.shop-header app-header-search .search-container {
  position: relative;
}
body.platform-web.dark app-header-container.shop-header app-header-search ion-searchbar {
  --background: var(--shop-dark-surface);
  --box-shadow: 0 12px 32px rgb(0 0 0 / 22%);
  --color: var(--shop-dark-text);
  --icon-color: var(--shop-dark-accent);
  --placeholder-color: var(--shop-dark-muted);
  border: 1px solid var(--shop-dark-border);
  border-radius: 999px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
body.platform-web.dark app-header-container.shop-header app-header-search ion-searchbar:hover {
  border-color: rgba(168, 207, 143, 0.24);
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark .shop-content {
  --background: var(--shop-dark-canvas);
  color: var(--shop-dark-text);
}
body.platform-web.dark .shop-content > .ion-padding-horizontal.ion-margin-bottom {
  position: relative;
  padding: 10px;
  background: linear-gradient(145deg, #151d18 0%, #101612 100%);
  border: 1px solid var(--shop-dark-border);
  border-radius: 26px;
  box-shadow: var(--shop-dark-shadow);
}
body.platform-web.dark .shop-content > .ion-padding-horizontal.ion-margin-bottom::before {
  position: absolute;
  inset: -1px;
  z-index: 0;
  border-radius: inherit;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
  content: "";
  pointer-events: none;
}
body.platform-web.dark .shop-content app-banner-carousel,
body.platform-web.dark .shop-content app-banner-carousel .banner-carousel,
body.platform-web.dark .shop-content app-banner-carousel .carousel-slides,
body.platform-web.dark .shop-content app-banner-carousel .carousel-slide {
  border-radius: 18px;
}
body.platform-web.dark .shop-content app-banner-carousel .carousel-slide {
  background: var(--shop-dark-surface-soft);
}
body.platform-web.dark .shop-content app-banner-carousel .pagination-dot {
  background: rgba(230, 239, 232, 0.36);
}
body.platform-web.dark .shop-content app-banner-carousel .pagination-dot.active {
  background: var(--shop-dark-accent);
  box-shadow: 0 0 12px rgba(168, 207, 143, 0.28);
}
body.platform-web.dark .shop-content .shop-category-heading,
body.platform-web.dark .shop-content .product-section-title,
body.platform-web.dark .shop-content app-product-card .product-card-name {
  color: var(--shop-dark-text);
}
body.platform-web.dark .shop-content .product-section-count,
body.platform-web.dark .shop-content app-product-card .product-card-review-count,
body.platform-web.dark .shop-content app-product-card .product-card-original-price {
  color: var(--shop-dark-muted);
}
body.platform-web.dark .shop-content .shop-category-card {
  background: linear-gradient(155deg, var(--shop-dark-surface-raised), var(--shop-dark-surface));
  border-color: var(--shop-dark-border);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.02);
}
body.platform-web.dark .shop-content .shop-category-card:hover {
  background: linear-gradient(155deg, #1c2820, #151d18);
  border-color: var(--shop-dark-border-strong);
  box-shadow: 0 20px 42px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark .shop-content .shop-category-card.is-selected {
  background: radial-gradient(circle at 50% 0%, rgba(168, 207, 143, 0.12), transparent 52%), linear-gradient(155deg, #1b281f, #141c17);
  border-color: #88b46e;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), inset 0 0 0 1px rgba(168, 207, 143, 0.08);
}
body.platform-web.dark .shop-content .shop-category-icon {
  background: rgba(168, 207, 143, 0.11);
  color: #a8cf8f;
  border: 1px solid rgba(168, 207, 143, 0.1);
}
body.platform-web.dark .shop-content .shop-category-card:nth-child(2) .shop-category-icon {
  background: rgba(107, 181, 240, 0.11);
  color: #7cc2f3;
  border-color: rgba(107, 181, 240, 0.12);
}
body.platform-web.dark .shop-content .shop-category-card:nth-child(3) .shop-category-icon {
  background: rgba(233, 154, 168, 0.11);
  color: #ed91a3;
  border-color: rgba(233, 154, 168, 0.12);
}
body.platform-web.dark .shop-content .shop-category-card:nth-child(4) .shop-category-icon {
  background: rgba(255, 217, 102, 0.1);
  color: #e9c968;
  border-color: rgba(255, 217, 102, 0.11);
}
body.platform-web.dark .shop-content .product-section-eyebrow,
body.platform-web.dark .shop-content .product-section__link-btn {
  color: var(--shop-dark-accent);
  --color: var(--shop-dark-accent);
}
body.platform-web.dark .shop-content app-product-card .product-card,
body.platform-web.dark .shop-content app-product-card-skeleton .product-card-skeleton {
  background: linear-gradient(155deg, var(--shop-dark-surface-raised), var(--shop-dark-surface));
  border-color: var(--shop-dark-border);
  box-shadow: var(--shop-dark-shadow);
}
body.platform-web.dark .shop-content app-product-card .product-card:hover {
  border-color: var(--shop-dark-border-strong);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.36), 0 0 0 1px rgba(168, 207, 143, 0.06);
}
body.platform-web.dark .shop-content app-product-card .product-card-image-container,
body.platform-web.dark .shop-content app-product-card .product-card-image,
body.platform-web.dark .shop-content app-product-card .product-card-image .image-error,
body.platform-web.dark .shop-content app-product-card-skeleton .skeleton-image {
  background: radial-gradient(circle at 50% 38%, rgba(168, 207, 143, 0.09), transparent 54%), var(--shop-dark-surface-soft);
  border: 1px solid rgba(193, 221, 198, 0.07);
}
body.platform-web.dark .shop-content app-product-card-skeleton .skeleton {
  --background: #1c261f;
  --background-rgb: 28, 38, 31;
}
body.platform-web.dark .shop-content .promotional-banner-carousel {
  padding: 8px;
  background: var(--shop-dark-surface);
  border: 1px solid var(--shop-dark-border);
  border-radius: 22px;
  box-shadow: var(--shop-dark-shadow);
}
body.platform-web.dark .shop-content .my-order-btn {
  --background: transparent;
  --background-hover: rgb(168 207 143 / 8%);
  --background-activated: rgb(168 207 143 / 12%);
  --color: var(--shop-dark-accent);
  --border-color: rgb(168 207 143 / 34%);
}
body.platform-web.dark .articles-content--web {
  --background:
    radial-gradient(circle at 50% -18%, rgb(236 150 169 / 8%), transparent 26rem),
    linear-gradient(180deg, #121514 0%, #0c0f0e 52%, #090c0b 100%);
  --articles-dark-canvas: #0c0f0e;
  --articles-dark-surface: #151817;
  --articles-dark-surface-raised: #1b1f1d;
  --articles-dark-surface-hover: #222724;
  --articles-dark-control: #0f1311;
  --articles-dark-border: rgb(226 235 221 / 11%);
  --articles-dark-border-strong: rgb(169 207 138 / 28%);
  --articles-dark-text: #f7f8f4;
  --articles-dark-muted: #abb3ad;
  --articles-dark-subtle: #768079;
  --articles-dark-accent: #acd391;
  --articles-dark-rose: #e78da1;
  color: var(--articles-dark-text);
}
body.platform-web.dark .articles-content--web .books-web-shell {
  position: relative;
  max-width: 1280px;
  padding-top: 22px;
}
body.platform-web.dark .articles-content--web .books-web-shell::before {
  position: absolute;
  inset: 0 24px auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(226, 235, 221, 0.11), transparent);
  content: "";
  pointer-events: none;
}
body.platform-web.dark .articles-content--web .books-web-title-wrap h1 {
  color: var(--articles-dark-text);
  font-size: 1.82rem;
  letter-spacing: 0;
}
body.platform-web.dark .articles-content--web .books-web-back {
  --background-hover: rgb(169 207 138 / 9%);
  --color: var(--articles-dark-text);
  border: 1px solid transparent;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
body.platform-web.dark .articles-content--web .books-web-back ion-icon {
  color: var(--articles-dark-text);
}
body.platform-web.dark .articles-content--web .books-web-back:hover {
  border-color: var(--articles-dark-border);
  transform: translateX(-2px);
}
body.platform-web.dark .articles-content--web .books-web-search {
  max-width: 1210px;
  padding: 14px 0 18px;
}
body.platform-web.dark .articles-content--web app-header-search.books-collection-search .search-container {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)), #202521 !important;
  border: 1px solid rgba(226, 235, 221, 0.13) !important;
  border-radius: 999px !important;
  padding: 10px !important;
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}
body.platform-web.dark .articles-content--web app-header-search.books-collection-search ion-searchbar {
  --background: var(--articles-dark-control) !important;
  --box-shadow: none !important;
  --color: var(--articles-dark-text) !important;
  --icon-color: var(--articles-dark-accent) !important;
  --placeholder-color: var(--articles-dark-muted) !important;
  min-height: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 999px;
}
body.platform-web.dark .articles-content--web app-header-search.books-collection-search ion-searchbar:hover {
  border-color: var(--articles-dark-border);
}
body.platform-web.dark .articles-content--web app-header-search.books-collection-search .filter-content {
  padding-left: 2px;
  background: transparent;
  border: 0;
}
body.platform-web.dark .articles-content--web app-header-search.books-collection-search app-header-filter-button .filter-btn {
  --background: linear-gradient(180deg, #34492f, #263722);
  --background-hover: linear-gradient(180deg, #3f5838, #2b4027);
  --background-activated: #324c2c;
  --color: var(--articles-dark-text);
  --border-radius: 999px;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(169, 207, 138, 0.24);
  border-radius: 999px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.13);
}
body.platform-web.dark .articles-content--web .books-web-section--filters {
  max-width: 1210px;
  margin-top: 4px;
}
body.platform-web.dark .articles-content--web .books-web-section--filters .filter-tabs-nav {
  padding-inline: 0;
}
body.platform-web.dark .articles-content--web .filter-tabs-arrow {
  --background: rgb(21 26 23 / 76%);
  --background-hover: var(--articles-dark-surface-hover);
  --color: var(--articles-dark-accent);
  width: 42px;
  height: 42px;
  border: 1px solid var(--articles-dark-border);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark .articles-content--web .filter-tabs .scrollable-tabs {
  gap: 12px;
  padding-block: 2px;
}
body.platform-web.dark .articles-content--web .filter-tabs .scrollable-tabs-btn {
  --background: #121615;
  --color: var(--articles-dark-muted);
  min-height: 42px;
  border: 1px solid rgba(226, 235, 221, 0.09);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
body.platform-web.dark .articles-content--web .filter-tabs .scrollable-tabs-btn:hover {
  --background: var(--articles-dark-surface-hover);
  --color: var(--articles-dark-text);
  border-color: var(--articles-dark-border);
  transform: translateY(-1px);
}
body.platform-web.dark .articles-content--web .filter-tabs .scrollable-tabs-btn.active {
  --background: linear-gradient(135deg, #f0a0b0 0%, #df8297 100%);
  --color: #1b1114;
  border-color: rgba(255, 214, 224, 0.44);
  box-shadow: 0 12px 30px rgba(236, 150, 169, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.24);
}
body.platform-web.dark .articles-content--web .books-web-section--content {
  max-width: 1210px;
  margin-top: 34px;
  padding-bottom: 48px;
}
body.platform-web.dark .articles-content--web .articles-grid--web {
  grid-template-columns: repeat(auto-fill, minmax(268px, 1fr));
  gap: 18px;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card {
  --background: transparent;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01)), var(--articles-dark-surface-raised);
  border: 1px solid var(--articles-dark-border);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card:hover {
  border-color: var(--articles-dark-border-strong);
  box-shadow: 0 20px 46px rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(169, 207, 138, 0.08);
  transform: translateY(-2px);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-wrapper {
  padding: 14px 14px 16px;
  gap: 11px;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-image {
  height: 146px;
  background: #242625;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-category {
  --background: rgb(172 211 145 / 13%);
  --color: #d9eccc;
  border: 1px solid rgba(172, 211, 145, 0.16);
  font-weight: 700;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .price-text {
  color: #ff9a91;
  font-weight: 800;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .price-text.subscription-text {
  color: var(--articles-dark-accent);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-title {
  color: var(--articles-dark-text);
  font-size: 0.98rem;
  letter-spacing: 0;
  line-height: 1.38;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-meta {
  color: var(--articles-dark-muted);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-meta ion-icon {
  color: var(--articles-dark-subtle);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-cta {
  --background: transparent;
  --background-hover: transparent;
  --background-activated: transparent;
  --border-radius: 999px;
  --box-shadow: none;
  --color: #111511;
  --padding-start: 18px;
  --padding-end: 18px;
  min-width: 118px;
  min-height: 0;
  height: 40px;
  margin-top: 14px;
  overflow: visible;
  border-radius: 999px;
  filter: drop-shadow(0 12px 18px rgba(172, 211, 145, 0.12));
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-cta::part(native) {
  min-height: 40px;
  padding: 0 18px;
  overflow: hidden;
  background: linear-gradient(180deg, #b7dc9d 0%, #9fcb82 100%);
  border: 1px solid rgba(221, 246, 204, 0.32);
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.32), inset 0 -1px 0 rgba(72, 103, 52, 0.18);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-cta:hover::part(native) {
  background: linear-gradient(180deg, #c3e5ac 0%, #a8d18b 100%);
  border-color: rgba(226, 250, 211, 0.42);
}
body.platform-web.dark .articles-content--web app-article-card.articles-card--compact .article-card-cta:active::part(native) {
  background: linear-gradient(180deg, #9fca82 0%, #8fbd72 100%);
  transform: translateY(1px);
}
body.platform-web.dark .articles-content--web .articles-empty--web {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)), radial-gradient(circle at 50% 20%, rgba(169, 207, 138, 0.09), transparent 18rem), var(--articles-dark-surface);
  border-color: var(--articles-dark-border);
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark .articles-content--web .articles-empty--web ion-icon {
  color: var(--articles-dark-accent);
}
body.platform-web.dark .articles-content--web .articles-empty--web h3 {
  color: var(--articles-dark-text);
}
body.platform-web.dark .articles-content--web .articles-empty--web p {
  color: var(--articles-dark-muted);
}
body.platform-web.dark .articles-content--web app-site-footer {
  background: #090d0a;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
body.platform-web app-tabs-layout {
  display: flex;
  flex-direction: column;
  height: 100%;
}
body.platform-web app-tabs-layout ion-tabs {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
}
body.platform-web ion-header.home-header {
  display: none;
}
body.platform-web .home-content {
  --background: var(--w-canvas);
}
body.platform-web .home-content .content-wrapper {
  max-width: none;
  padding: 0;
}
@media (width >= 768px) {
  body.platform-web .home-content .content-wrapper > app-quick-links,
  body.platform-web .home-content .content-wrapper > .ion-padding-horizontal,
  body.platform-web .home-content .content-wrapper > .section,
  body.platform-web .home-content .content-wrapper > app-article-section,
  body.platform-web .home-content .content-wrapper > app-featured-videos,
  body.platform-web .home-content .content-wrapper > app-community-highlights,
  body.platform-web .home-content .content-wrapper > app-recommended-products,
  body.platform-web .home-content .content-wrapper > app-invite-card {
    display: block;
    width: 100%;
    max-width: var(--w-max);
    margin: 0 auto 40px;
    padding: 0 24px;
  }
  body.platform-web .home-content .profile-overview-section {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
    align-items: center;
    padding: 40px max(24px, (100vw - var(--w-max)) / 2) 76px;
    border-bottom-left-radius: var(--w-radius);
    border-bottom-right-radius: var(--w-radius);
  }
  body.platform-web .home-content .content-wrapper > app-quick-links {
    position: relative;
    z-index: 2;
    margin-top: -44px;
  }
  body.platform-web .home-content .h-scroll {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    padding: 0;
    overflow: visible;
  }
  body.platform-web .home-content .course-card,
  body.platform-web .home-content .video-card {
    flex: initial;
    width: auto;
  }
  body.platform-web .home-content .quick-links-card-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
  body.platform-web .home-content .article-section__grid ion-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    width: 100%;
  }
  body.platform-web .home-content .recommended-products-section .products-scroll {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    overflow: visible;
  }
}
body.platform-web .home-content .quick-links-card-item {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease;
}
body.platform-web .home-content .quick-links-card-item:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
}
body.platform-web .home-content .section-eyebrow {
  color: var(--w-pink);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
body.platform-web .home-content .section-title,
body.platform-web .home-content .article-section__title,
body.platform-web .home-content .recommended-products-section .section-title {
  font-size: 19px;
  font-weight: 700;
  color: var(--w-text);
}
body.platform-web .home-content .section-link {
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 600;
}
body.platform-web .home-content .section-link:hover {
  color: var(--w-sage);
}
body.platform-web .home-content .course-card,
body.platform-web .home-content .video-card,
body.platform-web .home-content .embedded-media-display-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  overflow: hidden;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .home-content .course-card:hover,
body.platform-web .home-content .video-card:hover,
body.platform-web .home-content .embedded-media-display-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08);
}
body.platform-web .home-content app-banner-carousel .banner-carousel,
body.platform-web .home-content app-banner-carousel .carousel-slides {
  border-radius: var(--w-radius);
  overflow: hidden;
}
body.platform-web .home-content .community-highlights-card,
body.platform-web .home-content .invite-friends-card {
  --background: var(--w-card);
  --border-radius: var(--w-radius);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius);
}
body.platform-web .home-content .quick-links-see-more-btn,
body.platform-web .home-content .btn-see-more-expand {
  --background: var(--w-lime);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 20px;
}
body.platform-web .home-content .product-card-add-to-cart-btn,
body.platform-web .home-content .product-card-cart-control {
  --background: var(--w-pink);
  --color: #fff;
  background: var(--w-pink);
  color: #fff;
}
body.platform-web .home-content .course-thumb::after {
  background: linear-gradient(transparent 45%, rgba(0, 0, 0, 0.45));
}
body.platform-web .home-content app-article-section.guide-section .article-card {
  background: linear-gradient(135deg, #f4f9f3 0%, #eaf3e6 100%);
}
body.platform-web .home-content app-article-card .article-card-cta {
  display: none;
}
body.platform-web .home-content app-article-section.guide-section .article-card-cta {
  display: inline-flex;
}
@media (width >= 768px) {
  body.platform-web .home-content app-article-section.guide-section .article-section__grid ion-row {
    grid-template-columns: 1fr;
  }
  body.platform-web .home-content app-article-section.guide-section ion-col {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0;
  }
  body.platform-web .home-content app-article-section.guide-section .article-card {
    width: 100%;
  }
  body.platform-web .home-content app-article-section.guide-section .article-card-wrapper {
    flex-direction: row;
    align-items: center;
    gap: 28px;
    padding: 22px 26px;
  }
  body.platform-web .home-content app-article-section.guide-section .article-card-image {
    width: 220px;
    min-width: 220px;
    height: 150px;
  }
  body.platform-web .home-content app-article-section.guide-section .article-card-content {
    flex: 1;
  }
}
body.platform-web .home-content app-featured-videos .featured-section {
  height: auto;
  padding: 0;
  background: transparent;
}
body.platform-web .home-content app-featured-videos .section-header {
  color: var(--w-text);
}
body.platform-web .home-content app-featured-videos .section-title-white {
  color: var(--w-text);
}
body.platform-web .home-content app-featured-videos .view-all {
  --color: var(--w-muted);
}
body.platform-web .home-content app-featured-videos .video-scroll-container {
  display: flex;
  gap: 16px;
  overflow: auto hidden;
}
body.platform-web .home-content app-featured-videos .video-card {
  flex: 0 0 290px !important;
  width: 240px;
  height: auto;
  border-radius: 18px;
}
body.platform-web .login-web-brand {
  position: relative;
  background: var(--w-sage);
  color: #fff;
  overflow: hidden;
}
body.platform-web .login-web-brand-illustration {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
body.platform-web .login-web-brand-logo {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 24px;
  font-weight: 800;
}
body.platform-web .login-web-brand-mark {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
body.platform-web .login-web-brand-mark ion-img {
  width: 28px;
  height: 28px;
}
body.platform-web .login-web-brand-copy {
  position: relative;
  z-index: 2;
}
body.platform-web .login-web-brand-copy h2 {
  font-size: 30px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 12px;
}
body.platform-web .login-web-brand-copy p {
  font-size: 15px;
  line-height: 1.6;
  opacity: 0.92;
  max-width: 340px;
  margin: 0;
}
body.platform-web .login-web-brand-trust {
  position: relative;
  z-index: 2;
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
body.platform-web .login-web-brand-trust li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13.5px;
  font-weight: 600;
}
body.platform-web .login-web-brand-trust ion-icon {
  width: 30px;
  height: 30px;
  padding: 7px;
  font-size: 15px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  flex-shrink: 0;
}
body.platform-web .login-content {
  --background: var(--w-canvas);
}
body.platform-web .login-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .login-content .login-container,
body.platform-web .login-content .login-row {
  min-height: 100%;
}
body.platform-web .login-content .login-row {
  min-height: 100dvh;
  align-items: center;
  box-sizing: border-box;
  padding: 40px 24px;
}
body.platform-web .login-content .login-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius);
  box-shadow: 0 24px 60px rgba(123, 164, 101, 0.14);
  overflow: hidden;
}
body.platform-web .login-content .login-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 8px 0;
}
body.platform-web .login-content .login-welcome-section {
  padding: 0 0 0 4px !important;
  text-align: left !important;
}
body.platform-web .login-content .login-logo-container,
body.platform-web .login-content .login-welcome-subtitle {
  display: none !important;
}
body.platform-web .login-content .login-welcome-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--w-sage);
}
body.platform-web .login-content .login-signin-card {
  --background: var(--w-card);
  background: var(--w-card);
  box-shadow: none;
  border-radius: 0;
  margin: 0;
}
body.platform-web .login-content .login-signin-card ion-card-content {
  padding: 0 var(--spacing-md) 24px;
}
body.platform-web .login-content .login-signin-card ion-card-title {
  color: var(--w-text) !important;
  font-size: 24px;
  font-weight: 800;
}
body.platform-web .login-content .login-signin-card ion-card-subtitle {
  color: var(--w-muted) !important;
  font-size: 14px;
}
body.platform-web .login-content .login-form-label {
  color: var(--w-text) !important;
}
body.platform-web .login-content .input-wrapper,
body.platform-web .login-content .input-wrapper-stretch {
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  overflow: hidden;
}
body.platform-web .login-content .input-wrapper:focus-within,
body.platform-web .login-content .input-wrapper-stretch:focus-within {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web .login-content .input-country-selector {
  background: #f6f9f5;
  border-right: 1px solid var(--w-border);
}
body.platform-web .login-content .country-selector-field {
  position: relative;
}
body.platform-web .login-content .input-field {
  color: var(--w-text);
}
body.platform-web .login-content .login-next-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 30px;
  --box-shadow: none;
  font-weight: 700;
}
body.platform-web .login-content .login-divider::before {
  background: var(--w-border);
  opacity: 1;
}
body.platform-web .login-content .login-divider .divider-text {
  background: var(--w-card);
  color: var(--w-muted);
}
body.platform-web .login-content .login-social-buttons {
  margin-bottom: 0;
}
body.platform-web .login-content .login-social-buttons ion-button {
  --background: var(--w-card);
  --background-hover: #f6f9f5;
  --color: var(--w-text);
  --border-color: var(--w-border);
  --border-width: 1px;
  --border-style: solid;
  --border-radius: var(--w-radius-card);
  --box-shadow: none;
  font-weight: 700;
}
@media (width >= 860px) {
  body.platform-web .login-content .login-row > ion-col {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
  }
  body.platform-web .login-content .login-web-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: 48px 44px;
    min-height: 560px;
  }
  body.platform-web .login-content .login-content-wrapper {
    padding: 48px;
  }
  body.platform-web .login-content .login-welcome-section,
  body.platform-web .login-content .login-signin-card {
    width: 100%;
    max-width: 380px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (width < 860px) {
  body.platform-web .login-content .login-row > ion-col {
    max-width: 520px !important;
  }
  body.platform-web .login-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 34px 28px 28px;
  }
  body.platform-web .login-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .login-content .login-web-brand .login-web-brand-copy h2 {
    font-size: 24px;
  }
  body.platform-web .login-content .login-content-wrapper {
    padding: 28px 24px 36px;
  }
}
body.platform-web .login-email-content {
  --background: var(--w-canvas);
}
body.platform-web .login-email-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .login-email-content .login-email-container,
body.platform-web .login-email-content .login-email-row {
  min-height: 100%;
}
body.platform-web .login-email-content .login-email-row {
  min-height: 100dvh;
  align-items: center;
  box-sizing: border-box;
  padding: 40px 24px;
}
body.platform-web .login-email-content .login-email-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius);
  box-shadow: 0 24px 60px rgba(123, 164, 101, 0.14);
  overflow: hidden;
}
body.platform-web .login-email-content .login-email-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 8px 0;
}
body.platform-web .login-email-content .login-email-welcome-section {
  padding: 0 0 0 4px !important;
  text-align: left !important;
}
body.platform-web .login-email-content .login-email-logo-container,
body.platform-web .login-email-content .login-email-welcome-subtitle {
  display: none !important;
}
body.platform-web .login-email-content .login-email-welcome-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--w-sage);
}
body.platform-web .login-email-content .login-email-signin-card {
  --background: var(--w-card);
  background: var(--w-card);
  box-shadow: none;
  border-radius: 0;
  margin: 0;
}
body.platform-web .login-email-content .login-email-signin-card ion-card-content {
  padding: 0 var(--spacing-md) 24px;
}
body.platform-web .login-email-content .login-email-signin-card ion-card-title {
  color: var(--w-text) !important;
  font-size: 24px;
  font-weight: 800;
}
body.platform-web .login-email-content .login-email-signin-card ion-card-subtitle {
  color: var(--w-muted) !important;
  font-size: 14px;
}
body.platform-web .login-email-content .login-email-form-label {
  color: var(--w-text) !important;
}
body.platform-web .login-email-content .input-wrapper,
body.platform-web .login-email-content .input-wrapper-stretch {
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  overflow: hidden;
}
body.platform-web .login-email-content .input-wrapper:focus-within,
body.platform-web .login-email-content .input-wrapper-stretch:focus-within {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web .login-email-content .input-country-selector {
  background: #f6f9f5;
  border-right: 1px solid var(--w-border);
}
body.platform-web .login-email-content .country-selector-field {
  position: relative;
}
body.platform-web .login-email-content .input-field {
  color: var(--w-text);
}
body.platform-web .login-email-content .login-email-next-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 30px;
  --box-shadow: none;
  font-weight: 700;
}
body.platform-web .login-email-content .login-email-divider::before {
  background: var(--w-border);
  opacity: 1;
}
body.platform-web .login-email-content .login-email-divider .divider-text {
  background: var(--w-card);
  color: var(--w-muted);
}
body.platform-web .login-email-content .login-email-social-buttons {
  margin-bottom: 0;
}
body.platform-web .login-email-content .login-email-social-buttons ion-button {
  --background: var(--w-card);
  --background-hover: #f6f9f5;
  --color: var(--w-text);
  --border-color: var(--w-border);
  --border-width: 1px;
  --border-style: solid;
  --border-radius: var(--w-radius-card);
  --box-shadow: none;
  font-weight: 700;
}
@media (width >= 860px) {
  body.platform-web .login-email-content .login-email-row > ion-col {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
  }
  body.platform-web .login-email-content .login-web-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: 48px 44px;
    min-height: 560px;
  }
  body.platform-web .login-email-content .login-email-content-wrapper {
    padding: 48px;
  }
  body.platform-web .login-email-content .login-email-welcome-section,
  body.platform-web .login-email-content .login-email-signin-card {
    width: 100%;
    max-width: 380px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (width < 860px) {
  body.platform-web .login-email-content .login-email-row > ion-col {
    max-width: 520px !important;
  }
  body.platform-web .login-email-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 34px 28px 28px;
  }
  body.platform-web .login-email-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .login-email-content .login-web-brand .login-web-brand-copy h2 {
    font-size: 24px;
  }
  body.platform-web .login-email-content .login-email-content-wrapper {
    padding: 28px 24px 36px;
  }
}
body.platform-web .user-name-content {
  --background: var(--w-canvas);
}
body.platform-web .user-name-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .user-name-content .user-name-container,
body.platform-web .user-name-content .user-name-row {
  min-height: 100%;
}
body.platform-web .user-name-content .user-name-row {
  min-height: 100dvh;
  align-items: center;
  box-sizing: border-box;
  padding: 40px 24px;
}
body.platform-web .user-name-content .user-name-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius);
  box-shadow: 0 24px 60px rgba(123, 164, 101, 0.14);
  overflow: hidden;
}
body.platform-web .user-name-content .user-name-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 8px 0;
}
body.platform-web .user-name-content .user-name-welcome-section {
  padding: 0 0 0 4px !important;
  text-align: left !important;
}
body.platform-web .user-name-content .user-name-logo-container,
body.platform-web .user-name-content .user-name-welcome-subtitle {
  display: none !important;
}
body.platform-web .user-name-content .user-name-welcome-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--w-sage);
}
body.platform-web .user-name-content .user-name-signin-card {
  --background: var(--w-card);
  background: var(--w-card);
  box-shadow: none;
  border-radius: 0;
  margin: 0;
}
body.platform-web .user-name-content .user-name-signin-card ion-card-content {
  padding: 0 var(--spacing-md) 24px;
}
body.platform-web .user-name-content .user-name-signin-card ion-card-title {
  color: var(--w-text) !important;
  font-size: 24px;
  font-weight: 800;
}
body.platform-web .user-name-content .user-name-signin-card ion-card-subtitle {
  color: var(--w-muted) !important;
  font-size: 14px;
}
body.platform-web .user-name-content .user-name-form-label {
  color: var(--w-text) !important;
}
body.platform-web .user-name-content .input-wrapper,
body.platform-web .user-name-content .input-wrapper-stretch {
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  overflow: hidden;
}
body.platform-web .user-name-content .input-wrapper:focus-within,
body.platform-web .user-name-content .input-wrapper-stretch:focus-within {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web .user-name-content .input-country-selector {
  background: #f6f9f5;
  border-right: 1px solid var(--w-border);
}
body.platform-web .user-name-content .country-selector-field {
  position: relative;
}
body.platform-web .user-name-content .input-field {
  color: var(--w-text);
}
body.platform-web .user-name-content .user-name-next-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 30px;
  --box-shadow: none;
  font-weight: 700;
}
body.platform-web .user-name-content .user-name-divider::before {
  background: var(--w-border);
  opacity: 1;
}
body.platform-web .user-name-content .user-name-divider .divider-text {
  background: var(--w-card);
  color: var(--w-muted);
}
body.platform-web .user-name-content .user-name-social-buttons {
  margin-bottom: 0;
}
body.platform-web .user-name-content .user-name-social-buttons ion-button {
  --background: var(--w-card);
  --background-hover: #f6f9f5;
  --color: var(--w-text);
  --border-color: var(--w-border);
  --border-width: 1px;
  --border-style: solid;
  --border-radius: var(--w-radius-card);
  --box-shadow: none;
  font-weight: 700;
}
@media (width >= 860px) {
  body.platform-web .user-name-content .user-name-row > ion-col {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
  }
  body.platform-web .user-name-content .login-web-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: 48px 44px;
    min-height: 560px;
  }
  body.platform-web .user-name-content .user-name-content-wrapper {
    padding: 48px;
  }
  body.platform-web .user-name-content .user-name-welcome-section,
  body.platform-web .user-name-content .user-name-signin-card {
    width: 100%;
    max-width: 380px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (width < 860px) {
  body.platform-web .user-name-content .user-name-row > ion-col {
    max-width: 520px !important;
  }
  body.platform-web .user-name-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 34px 28px 28px;
  }
  body.platform-web .user-name-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .user-name-content .login-web-brand .login-web-brand-copy h2 {
    font-size: 24px;
  }
  body.platform-web .user-name-content .user-name-content-wrapper {
    padding: 28px 24px 36px;
  }
}
body.platform-web .profile-select-content {
  --background: var(--w-canvas);
}
body.platform-web .profile-select-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .profile-select-content .profile-select-container,
body.platform-web .profile-select-content .profile-select-row {
  min-height: 100%;
}
body.platform-web .profile-select-content .profile-select-row {
  min-height: 100dvh;
  align-items: center;
  box-sizing: border-box;
  padding: 40px 24px;
}
body.platform-web .profile-select-content .profile-select-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius);
  box-shadow: 0 24px 60px rgba(123, 164, 101, 0.14);
  overflow: hidden;
}
body.platform-web .profile-select-content .profile-select-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 8px 0;
}
body.platform-web .profile-select-content .profile-select-welcome-section {
  padding: 0 0 0 4px !important;
  text-align: left !important;
}
body.platform-web .profile-select-content .profile-select-logo-container,
body.platform-web .profile-select-content .profile-select-welcome-subtitle {
  display: none !important;
}
body.platform-web .profile-select-content .profile-select-welcome-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--w-sage);
}
body.platform-web .profile-select-content .profile-select-signin-card {
  --background: var(--w-card);
  background: var(--w-card);
  box-shadow: none;
  border-radius: 0;
  margin: 0;
}
body.platform-web .profile-select-content .profile-select-signin-card ion-card-content {
  padding: 0 var(--spacing-md) 24px;
}
body.platform-web .profile-select-content .profile-select-signin-card ion-card-title {
  color: var(--w-text) !important;
  font-size: 24px;
  font-weight: 800;
}
body.platform-web .profile-select-content .profile-select-signin-card ion-card-subtitle {
  color: var(--w-muted) !important;
  font-size: 14px;
}
body.platform-web .profile-select-content .profile-select-form-label {
  color: var(--w-text) !important;
}
body.platform-web .profile-select-content .input-wrapper,
body.platform-web .profile-select-content .input-wrapper-stretch {
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  overflow: hidden;
}
body.platform-web .profile-select-content .input-wrapper:focus-within,
body.platform-web .profile-select-content .input-wrapper-stretch:focus-within {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web .profile-select-content .input-country-selector {
  background: #f6f9f5;
  border-right: 1px solid var(--w-border);
}
body.platform-web .profile-select-content .country-selector-field {
  position: relative;
}
body.platform-web .profile-select-content .input-field {
  color: var(--w-text);
}
body.platform-web .profile-select-content .profile-select-next-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 30px;
  --box-shadow: none;
  font-weight: 700;
}
body.platform-web .profile-select-content .profile-select-divider::before {
  background: var(--w-border);
  opacity: 1;
}
body.platform-web .profile-select-content .profile-select-divider .divider-text {
  background: var(--w-card);
  color: var(--w-muted);
}
body.platform-web .profile-select-content .profile-select-social-buttons {
  margin-bottom: 0;
}
body.platform-web .profile-select-content .profile-select-social-buttons ion-button {
  --background: var(--w-card);
  --background-hover: #f6f9f5;
  --color: var(--w-text);
  --border-color: var(--w-border);
  --border-width: 1px;
  --border-style: solid;
  --border-radius: var(--w-radius-card);
  --box-shadow: none;
  font-weight: 700;
}
@media (width >= 860px) {
  body.platform-web .profile-select-content .profile-select-row > ion-col {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
  }
  body.platform-web .profile-select-content .login-web-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: 48px 44px;
    min-height: 560px;
  }
  body.platform-web .profile-select-content .profile-select-content-wrapper {
    padding: 48px;
  }
  body.platform-web .profile-select-content .profile-select-welcome-section,
  body.platform-web .profile-select-content .profile-select-signin-card {
    width: 100%;
    max-width: 380px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (width < 860px) {
  body.platform-web .profile-select-content .profile-select-row > ion-col {
    max-width: 520px !important;
  }
  body.platform-web .profile-select-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 34px 28px 28px;
  }
  body.platform-web .profile-select-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .profile-select-content .login-web-brand .login-web-brand-copy h2 {
    font-size: 24px;
  }
  body.platform-web .profile-select-content .profile-select-content-wrapper {
    padding: 28px 24px 36px;
  }
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) {
  --background:
    radial-gradient(circle at 12% 18%, rgb(111 149 92 / 32%), transparent 32%),
    radial-gradient(circle at 88% 82%, rgb(221 107 126 / 20%), transparent 30%),
    radial-gradient(circle at 72% 12%, rgb(244 192 67 / 18%), transparent 24%),
    linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: radial-gradient(circle at 14% 16%, rgba(111, 149, 92, 0.28), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.16), transparent 28%), radial-gradient(circle at 72% 10%, rgba(244, 192, 67, 0.13), transparent 22%), linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::before, body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(2px);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::before {
  top: -180px;
  left: -140px;
  width: 440px;
  height: 440px;
  border: 1px solid rgb(var(--ion-color-primary-rgb)/18%);
  box-shadow: 0 0 0 54px rgb(var(--ion-color-primary-rgb)/6%), 0 0 0 108px rgb(var(--ion-color-primary-rgb)/3%);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::after {
  right: -120px;
  bottom: -180px;
  width: 380px;
  height: 380px;
  background: rgba(229, 126, 145, 0.1);
  box-shadow: 0 0 90px rgba(229, 126, 145, 0.14);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-row, .login-email-row, .user-name-row, .profile-select-row) {
  position: relative;
  z-index: 1;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-row, .login-email-row, .user-name-row, .profile-select-row) > ion-col {
  border-color: rgba(65, 88, 54, 0.1);
  border-radius: 28px;
  box-shadow: 0 34px 90px rgba(50, 72, 40, 0.14), 0 8px 24px rgba(50, 72, 40, 0.07);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand {
  background: radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.14), transparent 28%), linear-gradient(145deg, #6f955c 0%, #82a96c 52%, #628451 100%);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -110px;
  z-index: 1;
  width: 330px;
  height: 330px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.03), 0 0 0 92px rgba(255, 255, 255, 0.02);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand-logo {
  letter-spacing: -0.02em;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand-mark {
  box-shadow: 0 8px 22px rgba(31, 50, 24, 0.18);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand-copy h2 {
  max-width: 390px;
  font-size: clamp(30px, 2.3vw, 38px);
  letter-spacing: -0.035em;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand-trust li {
  padding: 3px 0;
  text-shadow: 0 1px 1px rgba(35, 54, 26, 0.12);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-content-wrapper,
.login-email-content-wrapper,
.user-name-content-wrapper,
.profile-select-content-wrapper) {
  background: radial-gradient(circle at 100% 0%, rgba(111, 149, 92, 0.18), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.1), transparent 32%), linear-gradient(145deg, #e7f0e1 0%, #eef2e5 48%, #f4e7dd 100%);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) {
  --background: transparent;
  background: transparent;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) ion-card-header {
  padding-bottom: 22px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) ion-card-title {
  letter-spacing: -0.025em;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .user-name-card-eyebrow {
  margin-bottom: 8px;
  color: var(--w-sage);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .user-name-form-group {
  padding: 18px;
  border: 1px solid rgba(111, 149, 92, 0.16);
  border-radius: 18px;
  background: rgba(255, 252, 244, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.64);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .user-name-buttons {
  margin: 18px 0 0;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-card-eyebrow {
  margin-bottom: 8px;
  color: var(--w-sage);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back {
  display: inline-flex;
  width: 100%;
  max-width: 480px;
  align-items: center;
  gap: 7px;
  padding: 0;
  margin: 0 auto 8px;
  border: 0;
  background: transparent;
  color: var(--w-muted);
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  transition: color 160ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back ion-icon {
  font-size: 17px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back:hover {
  color: var(--w-sage);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back:focus-visible {
  border-radius: 6px;
  outline: 3px solid rgba(123, 164, 101, 0.16);
  outline-offset: 4px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-content-wrapper {
  height: auto;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-signin-card ion-card-header {
  padding-top: 16px;
  padding-bottom: 16px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-signin-card ion-card-title {
  font-size: 24px;
  line-height: 1.2;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-signin-card ion-card-subtitle {
  margin-top: 5px;
  color: var(--w-muted) !important;
  font-size: 13px;
  line-height: 1.5;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-signin-card ion-card-content {
  padding-bottom: 18px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-options {
  gap: 9px;
  margin-bottom: 14px;
  overflow: visible;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option {
  --background: rgb(255 253 248 / 92%);
  --background-hover: #f2f7ef;
  --background-activated: #edf4e9;
  --padding-start: 0;
  --padding-end: 0;
  --inner-padding-end: 0;
  --ripple-color: rgb(123 164 101 / 12%);
  overflow: visible;
  border-radius: 16px !important;
  background: transparent;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option::before {
  display: none;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option::part(native) {
  min-height: 76px;
  padding: 10px 14px;
  border: 1px solid rgba(111, 149, 92, 0.18);
  border-radius: 16px;
  background: var(--background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option:hover {
  transform: none;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option:hover::part(native) {
  border-color: rgba(111, 149, 92, 0.42);
  background: var(--background-hover);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.76);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option:focus-within::part(native) {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option ion-label.profile-info {
  display: block;
  min-width: 0;
  margin: 0;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .profile-select-option-header {
  gap: 10px;
  margin-bottom: 2px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .profile-select-option-header .option-icon {
  width: 34px;
  height: 34px;
  padding: 7px;
  border-radius: 10px;
  background: rgba(123, 164, 101, 0.12);
  color: var(--w-sage) !important;
  font-size: 19px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .profile-select-option-header .option-title {
  color: var(--w-text) !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 20px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .option-description {
  padding-left: 44px;
  color: var(--w-muted) !important;
  font-size: 12.5px;
  line-height: 1.4;
  opacity: 1 !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .check-icon {
  margin-left: 12px;
  color: var(--w-sage) !important;
  font-size: 22px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected {
  --background: #edf5e8;
  background: transparent !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected::part(native) {
  border-color: var(--w-sage);
  background: linear-gradient(135deg, #edf5e8 0%, #f7faf4 100%);
  box-shadow: 0 0 0 2px rgba(123, 164, 101, 0.1), 0 10px 24px rgba(68, 97, 54, 0.08);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected ion-label h3,
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected ion-label p {
  color: inherit !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-icon {
  background: var(--w-sage);
  color: #fff !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-title {
  color: var(--w-text) !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-description {
  color: var(--w-muted) !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .check-icon {
  color: var(--w-sage) !important;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-buttons {
  gap: 0;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-continue-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --border-radius: 30px;
  --box-shadow: none;
  --color: #1a1d1a;
  min-height: 48px;
  font-weight: 700;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-continue-btn:not(.button-disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.1);
}
@media (width >= 860px) {
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-row > ion-col {
    max-width: 1140px !important;
    grid-template-columns: 0.88fr 1.12fr;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-row {
    padding-block: clamp(18px, 3vh, 28px);
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-content-wrapper {
    padding: 24px 44px;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-signin-card {
    max-width: 480px;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content).profile-select-content .login-web-brand {
    min-height: 540px;
    padding: 34px 40px;
    gap: 20px;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content).profile-select-content .login-web-brand-copy h2 {
    font-size: clamp(28px, 2.1vw, 34px);
    margin-bottom: 10px;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content).profile-select-content .login-web-brand-copy p {
    font-size: 14px;
    line-height: 1.5;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content).profile-select-content .login-web-brand-trust {
    gap: 10px;
  }
  body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content).profile-select-content .login-web-brand-trust li {
    padding: 1px 0;
    font-size: 13px;
  }
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.input-wrapper, .input-wrapper-stretch) {
  background: rgba(255, 252, 244, 0.78);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.input-wrapper, .input-wrapper-stretch):focus-within {
  background: #fffaf1;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-selector-field.dropdown-open .input-wrapper-stretch {
  border-color: var(--w-sage);
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-selector-field.dropdown-open .dropdown-icon {
  transform: rotate(180deg);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-country-selector .dropdown-icon {
  transition: transform 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  z-index: 30;
  width: min(320px, 100%);
  overflow: hidden;
  border: 1px solid rgba(111, 149, 92, 0.24);
  border-radius: 16px;
  background: rgba(255, 253, 248, 0.98);
  box-shadow: 0 18px 44px rgba(50, 72, 40, 0.18), 0 4px 12px rgba(50, 72, 40, 0.08);
  animation: country-dropdown-enter 160ms ease-out;
  transform-origin: top left;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-header {
  display: flex;
  align-items: center;
  padding: 12px 14px 10px;
  border-bottom: 1px solid rgba(111, 149, 92, 0.14);
  color: var(--w-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-list {
  max-height: 240px;
  overflow-y: auto;
  padding: 6px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option {
  display: flex;
  width: 100%;
  min-height: 58px;
  align-items: center;
  gap: 12px;
  padding: 9px 10px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: var(--w-text);
  cursor: pointer;
  text-align: left;
  transition: background-color 160ms ease, color 160ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option:hover, body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option:focus-visible {
  background: #edf4e9;
  outline: none;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option.selected {
  background: rgba(123, 164, 101, 0.16);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-flag {
  display: flex;
  width: 32px;
  height: 24px;
  flex: 0 0 auto;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(65, 88, 54, 0.1);
  border-radius: 6px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-flag ion-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-copy {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  gap: 1px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-copy strong {
  display: block;
  overflow: hidden;
  padding-bottom: 2px;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-copy small {
  color: var(--w-muted);
  font-size: 12px;
  line-height: 16px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-check {
  flex: 0 0 auto;
  color: var(--w-sage);
  font-size: 19px;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-divider, .login-email-divider) .divider-text {
  background: #edf0e5;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button {
  --background: rgb(255 252 246 / 70%);
  --background-hover: rgb(255 255 255 / 90%);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-next-btn, .login-email-next-btn, .user-name-next-btn),
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button {
  transition: transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-next-btn, .login-email-next-btn, .user-name-next-btn):not(.button-disabled):hover,
body.platform-web :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.1);
}
@media (width <= 480px) {
  body.platform-web .login-content {
    --overflow: auto;
  }
  body.platform-web .login-content::part(scroll) {
    overflow: hidden auto;
  }
  body.platform-web .login-content .login-container {
    height: auto;
    min-height: 100%;
  }
  body.platform-web .login-content .login-row {
    height: auto;
    min-height: 100dvh;
    align-items: flex-start;
    padding: max(10px, env(safe-area-inset-top, 0px)) max(10px, env(safe-area-inset-right, 0px)) max(10px, env(safe-area-inset-bottom, 0px)) max(10px, env(safe-area-inset-left, 0px));
  }
  body.platform-web .login-content .login-row > ion-col {
    min-width: 0;
    border-radius: 20px;
  }
  body.platform-web .login-content .login-web-brand {
    gap: 14px;
    padding: 20px 18px 18px;
  }
  body.platform-web .login-content .login-web-brand-logo {
    gap: 8px;
    font-size: 20px;
  }
  body.platform-web .login-content .login-web-brand-mark {
    width: 36px;
    height: 36px;
  }
  body.platform-web .login-content .login-web-brand-mark ion-img {
    width: 25px;
    height: 25px;
  }
  body.platform-web .login-content .login-web-brand-copy h2 {
    margin-bottom: 8px;
    font-size: clamp(20px, 7vw, 23px);
    line-height: 1.2;
  }
  body.platform-web .login-content .login-web-brand-copy p {
    font-size: 13px;
    line-height: 1.5;
  }
  body.platform-web .login-content .login-content-wrapper {
    min-width: 0;
    padding: 18px 14px 22px;
  }
  body.platform-web .login-content .login-welcome-section {
    min-width: 0;
    padding-left: 12px !important;
  }
  body.platform-web .login-content .login-signin-card {
    min-width: 0;
  }
  body.platform-web .login-content .login-signin-card ion-card-header {
    padding: 12px 12px 14px;
  }
  body.platform-web .login-content .login-signin-card ion-card-title {
    font-size: 21px;
  }
  body.platform-web .login-content .login-signin-card ion-card-subtitle {
    font-size: 13px;
    line-height: 1.45;
  }
  body.platform-web .login-content .login-signin-card ion-card-content {
    padding-right: 12px;
    padding-bottom: 18px;
    padding-left: 12px;
  }
  body.platform-web .login-content .login-form-group {
    min-width: 0;
    margin-bottom: 14px;
  }
  body.platform-web .login-content .country-selector-field,
  body.platform-web .login-content .input-wrapper-stretch,
  body.platform-web .login-content .input-field {
    min-width: 0;
  }
  body.platform-web .login-content .input-country-selector {
    flex: 0 0 auto;
    padding-right: 8px;
    padding-left: 8px;
  }
  body.platform-web .login-content .input-field {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
  body.platform-web .login-content .country-dropdown {
    width: 100%;
    max-width: 100%;
  }
  body.platform-web .login-content .login-next-btn {
    margin-top: 12px;
    margin-bottom: 14px;
  }
  body.platform-web .login-content .login-divider {
    margin: 14px 0;
  }
  body.platform-web .login-content .login-social-buttons ion-row {
    gap: 8px;
    flex-wrap: nowrap;
  }
  body.platform-web .login-content .login-social-buttons ion-col {
    min-width: 0;
    flex: 1 1 0;
    padding: 0 !important;
  }
  body.platform-web .login-content .login-guest-section {
    padding-bottom: max(12px, env(safe-area-inset-bottom, 0px));
  }
}
@media (width <= 480px) and (height <= 700px) {
  body.platform-web .login-content .login-web-brand {
    gap: 10px;
    padding-top: 16px;
    padding-bottom: 14px;
  }
  body.platform-web .login-content .login-web-brand-copy p {
    display: none;
  }
  body.platform-web .login-content .login-content-wrapper {
    padding-top: 14px;
    padding-bottom: 16px;
  }
  body.platform-web .login-content .login-signin-card ion-card-subtitle {
    font-size: 12px;
    line-height: 1.4;
  }
}
body.platform-web .login-email-header,
body.platform-web .user-name-header,
body.platform-web .signup-mother-header,
body.platform-web .signup-pregnant-header,
body.platform-web .otp-header {
  display: none;
}
body.platform-web .otp-content {
  --background:
    radial-gradient(circle at 12% 18%, rgb(111 149 92 / 32%), transparent 32%),
    radial-gradient(circle at 88% 82%, rgb(221 107 126 / 20%), transparent 30%),
    radial-gradient(circle at 72% 12%, rgb(244 192 67 / 18%), transparent 24%),
    linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .otp-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .otp-content .otp-container {
  position: relative;
  isolation: isolate;
  height: auto;
  min-height: 100%;
  overflow: hidden;
  background: radial-gradient(circle at 14% 16%, rgba(111, 149, 92, 0.28), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.16), transparent 28%), radial-gradient(circle at 72% 10%, rgba(244, 192, 67, 0.13), transparent 22%), linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .otp-content .otp-container::before, body.platform-web .otp-content .otp-container::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(2px);
}
body.platform-web .otp-content .otp-container::before {
  top: -180px;
  left: -140px;
  width: 440px;
  height: 440px;
  border: 1px solid rgb(var(--ion-color-primary-rgb)/18%);
  box-shadow: 0 0 0 54px rgb(var(--ion-color-primary-rgb)/6%), 0 0 0 108px rgb(var(--ion-color-primary-rgb)/3%);
}
body.platform-web .otp-content .otp-container::after {
  right: -120px;
  bottom: -180px;
  width: 380px;
  height: 380px;
  background: rgba(229, 126, 145, 0.1);
  box-shadow: 0 0 90px rgba(229, 126, 145, 0.14);
}
body.platform-web .otp-content .otp-container,
body.platform-web .otp-content .otp-row {
  min-height: 100%;
}
body.platform-web .otp-content .otp-row {
  position: relative;
  z-index: 1;
  height: auto;
  min-height: 100%;
  align-items: center;
  padding: 40px 24px;
}
body.platform-web .otp-content .otp-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1000px !important;
  background: var(--w-card);
  border: 1px solid rgba(65, 88, 54, 0.1);
  border-radius: 28px;
  box-shadow: 0 34px 90px rgba(50, 72, 40, 0.14), 0 8px 24px rgba(50, 72, 40, 0.07);
  overflow: hidden;
}
body.platform-web .otp-content .otp-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 8px 0;
  background: radial-gradient(circle at 100% 0%, rgba(111, 149, 92, 0.18), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.1), transparent 32%), linear-gradient(145deg, #e7f0e1 0%, #eef2e5 48%, #f4e7dd 100%);
}
body.platform-web .otp-content .otp-welcome-section {
  display: none;
}
body.platform-web .otp-content .otp-web-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: none;
  padding: 0;
  width: 100%;
  max-width: 380px;
  margin: 0 auto 14px;
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
body.platform-web .otp-content .otp-web-back ion-icon {
  font-size: 16px;
}
body.platform-web .otp-content .otp-web-back:hover {
  color: var(--w-sage);
}
body.platform-web .otp-content .otp-web-back:focus-visible {
  border-radius: 6px;
  outline: 3px solid rgba(123, 164, 101, 0.16);
  outline-offset: 4px;
}
body.platform-web .otp-content .otp-card {
  --background: transparent;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  margin: 0;
}
body.platform-web .otp-content .otp-card ion-card-header {
  padding-bottom: 20px;
}
body.platform-web .otp-content .otp-card ion-card-title {
  color: var(--w-text) !important;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.025em;
}
body.platform-web .otp-content .otp-card ion-card-subtitle {
  color: var(--w-muted) !important;
  font-size: 14px;
  line-height: 1.55;
}
body.platform-web .otp-content .otp-card ion-card-content {
  padding-bottom: 24px;
}
body.platform-web .otp-content .otp-card-eyebrow {
  margin-bottom: 8px;
  color: var(--w-sage);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web .otp-content .otp-form-group {
  padding: 20px;
  border: 1px solid rgba(111, 149, 92, 0.16);
  border-radius: 18px;
  background: rgba(255, 252, 244, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.64);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web .otp-content .input-otp-container {
  gap: 12px;
}
body.platform-web .otp-content .input-otp {
  flex: 1 1 0;
  width: auto;
  max-width: 64px;
  height: 60px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(111, 149, 92, 0.22);
  border-radius: var(--w-radius-card);
  color: var(--w-text);
  box-shadow: inset 0 1px 2px rgba(50, 72, 40, 0.04);
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.platform-web .otp-content .input-otp:hover:not(:disabled) {
  border-color: rgba(111, 149, 92, 0.38);
  background: #fffdf8;
}
body.platform-web .otp-content .input-otp:focus {
  border-color: var(--w-sage);
  background: #fffdf8;
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12), 0 8px 18px rgba(68, 97, 54, 0.08);
  transform: translateY(-1px);
}
body.platform-web .otp-content .otp-timer {
  color: var(--w-sage);
  font-variant-numeric: tabular-nums;
}
body.platform-web .otp-content .otp-resend-text {
  color: var(--w-muted);
  opacity: 1;
}
body.platform-web .otp-content .otp-resend-link {
  color: var(--w-sage);
}
body.platform-web .otp-content .otp-signin-btn {
  --background: var(--w-lime);
  --background-activated: var(--w-sage-hover);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 30px;
  --box-shadow: none;
  font-weight: 700;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web .otp-content .otp-signin-btn:not(.button-disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.1);
}
@media (width >= 860px) {
  body.platform-web .otp-content .otp-row > ion-col {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
  }
  body.platform-web .otp-content .login-web-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: 48px 44px;
    min-height: 560px;
  }
  body.platform-web .otp-content .otp-content-wrapper {
    padding: 48px;
  }
  body.platform-web .otp-content .otp-card {
    width: 100%;
    max-width: 380px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}
@media (width < 860px) {
  body.platform-web .otp-content .otp-row > ion-col {
    max-width: 520px !important;
  }
  body.platform-web .otp-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 34px 28px 28px;
  }
  body.platform-web .otp-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .otp-content .login-web-brand .login-web-brand-copy h2 {
    font-size: 24px;
  }
  body.platform-web .otp-content .otp-content-wrapper {
    padding: 28px 24px 36px;
  }
}
@media (width <= 480px) {
  body.platform-web .otp-content .otp-row {
    align-items: flex-start;
    padding: max(10px, env(safe-area-inset-top, 0px)) max(10px, env(safe-area-inset-right, 0px)) max(10px, env(safe-area-inset-bottom, 0px)) max(10px, env(safe-area-inset-left, 0px));
  }
  body.platform-web .otp-content .otp-row > ion-col {
    min-width: 0;
    border-radius: 20px;
  }
  body.platform-web .otp-content .login-web-brand {
    gap: 14px;
    padding: 20px 18px 18px;
  }
  body.platform-web .otp-content .login-web-brand-logo {
    gap: 8px;
    font-size: 20px;
  }
  body.platform-web .otp-content .login-web-brand-mark {
    width: 36px;
    height: 36px;
  }
  body.platform-web .otp-content .login-web-brand-mark ion-img {
    width: 25px;
    height: 25px;
  }
  body.platform-web .otp-content .login-web-brand-copy h2 {
    margin-bottom: 8px;
    font-size: clamp(20px, 7vw, 23px);
    line-height: 1.2;
  }
  body.platform-web .otp-content .login-web-brand-copy p {
    font-size: 13px;
    line-height: 1.5;
  }
  body.platform-web .otp-content .otp-content-wrapper {
    min-width: 0;
    padding: 18px 14px 22px;
  }
  body.platform-web .otp-content .otp-web-back {
    margin-bottom: 10px;
  }
  body.platform-web .otp-content .otp-card {
    min-width: 0;
  }
  body.platform-web .otp-content .otp-card ion-card-header {
    padding-right: 12px;
    padding-bottom: 14px;
    padding-left: 12px;
  }
  body.platform-web .otp-content .otp-card ion-card-title {
    font-size: 21px;
  }
  body.platform-web .otp-content .otp-card ion-card-content {
    padding-right: 12px;
    padding-bottom: 18px;
    padding-left: 12px;
  }
  body.platform-web .otp-content .otp-form-group {
    min-width: 0;
    padding: 12px 10px;
    border-radius: 15px;
  }
  body.platform-web .otp-content .input-otp-container {
    min-width: 0;
    gap: clamp(6px, 2.2vw, 10px);
  }
  body.platform-web .otp-content .input-otp {
    min-width: 0;
    max-width: 58px;
    height: clamp(48px, 15vw, 56px);
    font-size: clamp(18px, 6vw, 22px);
  }
  body.platform-web .otp-content .otp-signin-btn {
    margin-top: 14px;
    margin-bottom: 4px;
  }
}
@media (width <= 480px) and (height <= 700px) {
  body.platform-web .otp-content .login-web-brand {
    gap: 10px;
    padding-top: 16px;
    padding-bottom: 14px;
  }
  body.platform-web .otp-content .login-web-brand-copy p {
    display: none;
  }
  body.platform-web .otp-content .otp-content-wrapper {
    padding-top: 14px;
    padding-bottom: 16px;
  }
  body.platform-web .otp-content .otp-card ion-card-subtitle {
    font-size: 12px;
    line-height: 1.4;
  }
  body.platform-web .otp-content .otp-form-group {
    margin-bottom: 10px;
  }
  body.platform-web .otp-content .otp-timer-section {
    margin-top: 10px;
  }
}
body.platform-web .signup-mother-content {
  --background:
    radial-gradient(circle at 12% 18%, rgb(111 149 92 / 32%), transparent 32%),
    radial-gradient(circle at 88% 82%, rgb(221 107 126 / 20%), transparent 30%),
    linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .signup-mother-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .signup-mother-content .signup-mother-container {
  position: relative;
  isolation: isolate;
  min-height: 100%;
  overflow: hidden;
  background: radial-gradient(circle at 14% 16%, rgba(111, 149, 92, 0.28), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.16), transparent 28%), linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .signup-mother-content .signup-mother-container::before, body.platform-web .signup-mother-content .signup-mother-container::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
}
body.platform-web .signup-mother-content .signup-mother-container::before {
  top: -190px;
  left: -150px;
  width: 460px;
  height: 460px;
  border: 1px solid rgb(var(--ion-color-primary-rgb)/18%);
  box-shadow: 0 0 0 58px rgb(var(--ion-color-primary-rgb)/6%), 0 0 0 116px rgb(var(--ion-color-primary-rgb)/3%);
}
body.platform-web .signup-mother-content .signup-mother-container::after {
  right: -130px;
  bottom: -190px;
  width: 400px;
  height: 400px;
  background: rgba(229, 126, 145, 0.1);
  box-shadow: 0 0 100px rgba(229, 126, 145, 0.14);
}
body.platform-web .signup-mother-content .signup-mother-row {
  position: relative;
  z-index: 1;
  min-height: 100%;
  align-items: center;
  padding: 28px 24px;
}
body.platform-web .signup-mother-content .signup-mother-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1160px !important;
  overflow: hidden;
  border: 1px solid rgba(65, 88, 54, 0.1);
  border-radius: 28px;
  background: var(--w-card);
  box-shadow: 0 34px 90px rgba(50, 72, 40, 0.14), 0 8px 24px rgba(50, 72, 40, 0.07);
}
body.platform-web .signup-mother-content .signup-mother-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 28px 42px;
  background: radial-gradient(circle at 100% 0%, rgba(111, 149, 92, 0.18), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.1), transparent 32%), linear-gradient(145deg, #e7f0e1 0%, #eef2e5 48%, #f4e7dd 100%);
}
body.platform-web .signup-mother-content .signup-mother-welcome-section {
  display: none;
}
body.platform-web .signup-mother-content .signup-mother-back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  margin: 0 0 12px;
  border: 0;
  background: transparent;
  color: var(--w-muted);
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
}
body.platform-web .signup-mother-content .signup-mother-back ion-icon {
  font-size: 17px;
}
body.platform-web .signup-mother-content .signup-mother-back:hover {
  color: var(--w-sage);
}
body.platform-web .signup-mother-content .signup-mother-back:focus-visible {
  border-radius: 6px;
  outline: 3px solid rgba(123, 164, 101, 0.16);
  outline-offset: 4px;
}
body.platform-web .signup-mother-content .signup-mother-web-heading {
  margin-bottom: 18px;
}
body.platform-web .signup-mother-content .signup-mother-web-heading h1 {
  margin: 5px 0 6px;
  color: var(--w-text);
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
}
body.platform-web .signup-mother-content .signup-mother-web-heading p {
  max-width: 560px;
  margin: 0;
  color: var(--w-muted);
  font-size: 13.5px;
  line-height: 1.5;
}
body.platform-web .signup-mother-content .signup-mother-web-eyebrow {
  color: var(--w-sage);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web .signup-mother-content .signup-mother-referral-banner {
  --background: rgb(255 252 244 / 76%);
  border: 1px solid rgba(111, 149, 92, 0.18);
  border-radius: 14px;
  box-shadow: none;
}
body.platform-web .signup-mother-content .signup-mother-card {
  --background: transparent;
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .signup-mother-content .signup-mother-card ion-card-content {
  padding: 0;
}
body.platform-web .signup-mother-content .signup-mother-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
  padding: 20px;
  border: 1px solid rgba(111, 149, 92, 0.16);
  border-radius: 20px;
  background: rgba(255, 252, 244, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.66);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web .signup-mother-content .signup-mother-required-note {
  grid-column: 1/-1;
  width: fit-content;
  padding: 5px 9px;
  margin: 0;
  border: 0;
  border-radius: 8px;
  background: rgba(210, 77, 95, 0.09);
  color: var(--w-pink-strong);
  font-size: 12px;
}
body.platform-web .signup-mother-content .signup-mother-input-wrapper,
body.platform-web .signup-mother-content .signup-mother-gender-section {
  min-width: 0;
  margin: 0;
}
body.platform-web .signup-mother-content .signup-mother-gender-section,
body.platform-web .signup-mother-content .signup-mother-children-list,
body.platform-web .signup-mother-content .signup-mother-edit-actions,
body.platform-web .signup-mother-content .signup-mother-max-limit-note,
body.platform-web .signup-mother-content .signup-mother-add-more-btn,
body.platform-web .signup-mother-content .signup-mother-next-btn {
  grid-column: 1/-1;
}
body.platform-web .signup-mother-content .signup-mother-label {
  display: block;
  margin-bottom: 7px;
  color: var(--w-text);
  font-size: 13px;
  font-weight: 700;
}
body.platform-web .signup-mother-content .signup-mother-input-wrapper .input-wrapper {
  border: 1px solid var(--w-border);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.8);
}
body.platform-web .signup-mother-content .signup-mother-input-wrapper .input-wrapper:focus-within {
  border-color: var(--w-sage);
  background: #fffdf8;
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.12);
}
body.platform-web .signup-mother-content .signup-mother-gender-toggle {
  gap: 10px;
}
body.platform-web .signup-mother-content .signup-mother-gender-btn {
  min-height: 46px;
  padding: 9px 13px;
  border: 1px solid var(--w-border);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.76);
  color: var(--w-text);
  font-size: 13px;
}
body.platform-web .signup-mother-content .signup-mother-gender-btn:hover {
  border-color: rgba(111, 149, 92, 0.38);
  background: #f5f9f2;
}
body.platform-web .signup-mother-content .signup-mother-gender-btn:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.12);
  outline-offset: 2px;
}
body.platform-web .signup-mother-content .signup-mother-gender-btn.active {
  border-color: var(--w-sage);
  background: #edf5e8;
  box-shadow: 0 0 0 2px rgba(123, 164, 101, 0.08);
}
body.platform-web .signup-mother-content .signup-mother-gender-btn.active .gender-icon {
  color: var(--w-sage);
}
body.platform-web .signup-mother-content .signup-mother-children-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  overflow: visible;
  background: transparent;
}
body.platform-web .signup-mother-content .signup-mother-child-item {
  --background: rgb(255 255 255 / 74%);
  --color: var(--w-text);
  --padding-start: 0;
  --padding-end: 0;
  --inner-padding-end: 0;
  margin: 0;
  border: 1px solid var(--w-border);
  border-radius: 14px;
  background: transparent;
}
body.platform-web .signup-mother-content .signup-mother-child-item::part(native) {
  min-height: 86px;
  padding: 11px 12px;
  border-radius: 14px;
  background: var(--background);
}
body.platform-web .signup-mother-content .signup-mother-child-item.editing {
  border-color: var(--w-pink-strong);
  background: rgba(210, 77, 95, 0.06);
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-info {
  color: var(--w-text);
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-info ion-text {
  --color: var(--w-muted);
  color: var(--w-muted) !important;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-info ion-text p {
  color: var(--w-muted) !important;
  font-size: 12px;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-name p {
  color: var(--w-text) !important;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions {
  gap: 2px;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions .action-btn {
  --padding-start: 6px;
  --padding-end: 6px;
  --color: var(--w-sage);
  min-height: 34px;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions .edit-btn {
  --color: var(--w-sage) !important;
  color: var(--w-sage) !important;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions .edit-btn ion-icon {
  color: var(--w-sage) !important;
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions .edit-btn:hover {
  --color: var(--w-sage-hover) !important;
  background: rgba(111, 149, 92, 0.09);
}
body.platform-web .signup-mother-content .signup-mother-child-item .child-actions .delete-btn {
  --color: var(--w-pink-strong);
}
body.platform-web .signup-mother-content .signup-mother-edit-actions {
  margin: 0;
}
body.platform-web .signup-mother-content .signup-mother-add-more-btn {
  --border-color: rgb(111 149 92 / 42%);
  --border-radius: 999px;
  --background: rgb(255 255 255 / 52%);
  --color: var(--w-sage);
  min-height: 44px;
  margin: 0;
  font-weight: 700;
}
body.platform-web .signup-mother-content .signup-mother-add-more-btn.button-disabled {
  --background: #edf2e9;
  --border-color: #c8d2c3;
  --color: #5f6d61;
  color: #5f6d61 !important;
  opacity: 1;
}
body.platform-web .signup-mother-content .signup-mother-add-more-btn.button-disabled span {
  color: #5f6d61 !important;
}
body.platform-web .signup-mother-content .signup-mother-next-btn {
  --background: var(--w-lime);
  --background-hover: var(--w-sage);
  --background-activated: var(--w-sage-hover);
  --border-radius: 999px;
  --box-shadow: none;
  --color: #1a1d1a;
  min-height: 48px;
  margin: 0;
  font-weight: 700;
}
body.platform-web .signup-mother-content .signup-mother-next-btn.button-disabled {
  --background: #dce8d5;
  --color: #7a857c;
  opacity: 1;
}
body.platform-web .signup-mother-content .signup-mother-next-btn:not(.button-disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.1);
}
@media (width >= 900px) {
  body.platform-web .signup-mother-content .signup-mother-row > ion-col {
    display: grid;
    grid-template-columns: 0.78fr 1.22fr;
  }
  body.platform-web .signup-mother-content .login-web-brand {
    display: flex;
    min-height: 600px;
    flex-direction: column;
    justify-content: space-between;
    gap: 22px;
    padding: 38px 40px;
  }
}
@media (width < 900px) {
  body.platform-web .signup-mother-content .signup-mother-row > ion-col {
    max-width: 680px !important;
  }
  body.platform-web .signup-mother-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 30px 28px 26px;
  }
  body.platform-web .signup-mother-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .signup-mother-content .signup-mother-content-wrapper {
    padding: 26px 24px 32px;
  }
}
@media (width < 620px) {
  body.platform-web .signup-mother-content .signup-mother-form,
  body.platform-web .signup-mother-content .signup-mother-children-list {
    grid-template-columns: 1fr;
  }
  body.platform-web .signup-mother-content .signup-mother-input-wrapper {
    grid-column: 1/-1;
  }
}
body.platform-web .signup-pregnant-content {
  --background:
    radial-gradient(circle at 12% 18%, rgb(111 149 92 / 32%), transparent 32%),
    radial-gradient(circle at 88% 82%, rgb(221 107 126 / 20%), transparent 30%),
    linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .signup-pregnant-content::part(scroll) {
  overflow-y: auto;
}
body.platform-web .signup-pregnant-content .signup-pregnant-container {
  position: relative;
  isolation: isolate;
  min-height: 100%;
  overflow: hidden;
  background: radial-gradient(circle at 14% 16%, rgba(111, 149, 92, 0.28), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.16), transparent 28%), linear-gradient(135deg, #dce9d5 0%, #f4eee5 52%, #e2ecd9 100%);
}
body.platform-web .signup-pregnant-content .signup-pregnant-container::before, body.platform-web .signup-pregnant-content .signup-pregnant-container::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
}
body.platform-web .signup-pregnant-content .signup-pregnant-container::before {
  top: -190px;
  left: -150px;
  width: 460px;
  height: 460px;
  border: 1px solid rgb(var(--ion-color-primary-rgb)/18%);
  box-shadow: 0 0 0 58px rgb(var(--ion-color-primary-rgb)/6%), 0 0 0 116px rgb(var(--ion-color-primary-rgb)/3%);
}
body.platform-web .signup-pregnant-content .signup-pregnant-container::after {
  right: -130px;
  bottom: -190px;
  width: 400px;
  height: 400px;
  background: rgba(229, 126, 145, 0.1);
  box-shadow: 0 0 100px rgba(229, 126, 145, 0.14);
}
body.platform-web .signup-pregnant-content .signup-pregnant-row {
  position: relative;
  z-index: 1;
  min-height: 100%;
  align-items: center;
  padding: 28px 24px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-row > ion-col {
  flex: 0 0 auto !important;
  width: 100% !important;
  max-width: 1120px !important;
  overflow: hidden;
  border: 1px solid rgba(65, 88, 54, 0.1);
  border-radius: 28px;
  background: var(--w-card);
  box-shadow: 0 34px 90px rgba(50, 72, 40, 0.14), 0 8px 24px rgba(50, 72, 40, 0.07);
}
body.platform-web .signup-pregnant-content .signup-pregnant-content-wrapper {
  min-height: 0;
  justify-content: center;
  padding: 30px 42px 34px;
  background: radial-gradient(circle at 100% 0%, rgba(111, 149, 92, 0.18), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.1), transparent 32%), linear-gradient(145deg, #e7f0e1 0%, #eef2e5 48%, #f4e7dd 100%);
}
body.platform-web .signup-pregnant-content .signup-pregnant-welcome-section {
  display: none;
}
body.platform-web .signup-pregnant-content .signup-pregnant-back {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 7px;
  padding: 0;
  margin: 0 0 12px;
  border: 0;
  background: transparent;
  color: var(--w-muted);
  cursor: pointer;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
}
body.platform-web .signup-pregnant-content .signup-pregnant-back ion-icon {
  font-size: 17px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-back:hover {
  color: var(--w-sage);
}
body.platform-web .signup-pregnant-content .signup-pregnant-back:focus-visible {
  border-radius: 6px;
  outline: 3px solid rgba(123, 164, 101, 0.16);
  outline-offset: 4px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-web-heading {
  margin-bottom: 18px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-web-heading h1 {
  margin: 5px 0 6px;
  color: var(--w-text);
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.2;
}
body.platform-web .signup-pregnant-content .signup-pregnant-web-heading p {
  max-width: 560px;
  margin: 0;
  color: var(--w-muted);
  font-size: 13.5px;
  line-height: 1.5;
}
body.platform-web .signup-pregnant-content .signup-pregnant-web-eyebrow {
  color: var(--w-sage);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web .signup-pregnant-content .signup-pregnant-referral-banner {
  --background: rgb(255 252 244 / 76%);
  border: 1px solid rgba(111, 149, 92, 0.18);
  border-radius: 14px;
  box-shadow: none;
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-card {
  --background: transparent;
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-card ion-card-content {
  padding: 0;
}
body.platform-web .signup-pregnant-content .signup-pregnant-form {
  padding: 18px;
  border: 1px solid rgba(111, 149, 92, 0.16);
  border-radius: 20px;
  background: rgba(255, 252, 244, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.66);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-type-toggle {
  gap: 10px;
  margin-bottom: 16px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-toggle-btn {
  min-height: 48px;
  padding: 10px 14px;
  border: 1px solid var(--w-border);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.76);
  color: var(--w-text);
  font-size: 13px;
  font-weight: 700;
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}
body.platform-web .signup-pregnant-content .signup-pregnant-toggle-btn:hover {
  border-color: rgba(111, 149, 92, 0.38);
  background: #f5f9f2;
}
body.platform-web .signup-pregnant-content .signup-pregnant-toggle-btn:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.12);
  outline-offset: 2px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-toggle-btn.active {
  border-color: var(--w-sage);
  background: #edf5e8;
  box-shadow: 0 0 0 2px rgba(123, 164, 101, 0.08);
}
body.platform-web .signup-pregnant-content .signup-pregnant-toggle-btn.active .toggle-icon {
  color: var(--w-sage);
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-heading {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin: 0 2px 8px;
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-heading span {
  color: var(--w-text);
  font-size: 13px;
  font-weight: 700;
}
body.platform-web .signup-pregnant-content .signup-pregnant-date-heading small {
  color: var(--w-muted);
  font-size: 12px;
  line-height: 1.4;
}
body.platform-web .signup-pregnant-content .signup-pregnant-datetime-wrapper {
  padding: 0;
  margin: 0 0 14px;
  overflow: hidden;
  border: 1px solid var(--w-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.74);
}
body.platform-web .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime {
  width: min(100%, 420px) !important;
  max-width: 420px !important;
  --background: transparent;
  --background-rgb: 255, 255, 255;
  --wheel-fade-background-rgb: 255, 255, 255;
  --wheel-highlight-background: rgb(111 149 92 / 10%);
}
body.platform-web .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime::part(wheel-item) {
  color: #68736a;
  font-weight: 600;
  opacity: 0.72;
}
body.platform-web .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime::part(wheel-item-active) {
  color: #202820;
  font-weight: 750;
  opacity: 1;
}
body.platform-web .signup-pregnant-content .signup-pregnant-next-btn {
  --background: var(--w-lime);
  --background-hover: var(--w-sage);
  --background-activated: var(--w-sage-hover);
  --border-radius: 999px;
  --box-shadow: none;
  --color: #1a1d1a;
  min-height: 48px;
  margin: 0;
  font-weight: 700;
}
body.platform-web .signup-pregnant-content .signup-pregnant-next-btn.button-disabled {
  --background: #dce8d5;
  --color: #7a857c;
  opacity: 1;
}
body.platform-web .signup-pregnant-content .signup-pregnant-next-btn:not(.button-disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(68, 97, 54, 0.1);
}
@media (width >= 900px) {
  body.platform-web .signup-pregnant-content .signup-pregnant-row > ion-col {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
  }
  body.platform-web .signup-pregnant-content .login-web-brand {
    display: flex;
    min-height: 660px;
    flex-direction: column;
    justify-content: space-between;
    gap: 22px;
    padding: 38px 40px;
  }
}
@media (width < 900px) {
  body.platform-web .signup-pregnant-content .signup-pregnant-row > ion-col {
    max-width: 680px !important;
  }
  body.platform-web .signup-pregnant-content .login-web-brand {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 30px 28px 26px;
  }
  body.platform-web .signup-pregnant-content .login-web-brand .login-web-brand-trust {
    display: none;
  }
  body.platform-web .signup-pregnant-content .signup-pregnant-content-wrapper {
    padding: 26px 24px 32px;
  }
}
body.platform-web .shop-content {
  --background: var(--w-canvas);
}
@media (width >= 768px) {
  body.platform-web .shop-content .ion-padding-horizontal,
  body.platform-web .shop-content .shop-content-padded {
    width: 100%;
    max-width: var(--w-max);
    margin-right: auto;
    margin-left: auto;
  }
  body.platform-web .shop-content .quick-links-card-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
  body.platform-web .shop-content .product-section-scroll {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    overflow: visible;
  }
  body.platform-web .shop-content .product-section-scroll app-product-card {
    flex: initial;
    width: auto;
    max-width: none;
  }
}
@media (width >= 480px) and (width < 768px) {
  body.platform-web .shop-content .product-section-scroll {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    overflow: visible;
  }
  body.platform-web .shop-content .product-section-scroll app-product-card {
    flex: initial;
    width: auto;
    max-width: none;
  }
}
body.platform-web .shop-content .quick-links-card-item {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease;
}
body.platform-web .shop-content .quick-links-card-item:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
}
body.platform-web .shop-content app-banner-carousel {
  display: block;
  border-radius: var(--w-radius);
  overflow: hidden;
}
body.platform-web .shop-content app-banner-carousel .banner-carousel,
body.platform-web .shop-content app-banner-carousel .carousel-slides {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
body.platform-web .shop-content app-product-card .product-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .shop-content app-product-card .product-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
}
body.platform-web .shop-content app-product-card .product-card-current-price {
  color: var(--w-pink);
  font-weight: 800;
}
body.platform-web .shop-content app-product-card .product-card-add-to-cart-btn,
body.platform-web .shop-content app-product-card .product-card-cart-control {
  --background: var(--w-pink);
  --color: #fff;
  background: var(--w-pink);
  color: #fff;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-current-price {
  color: var(--w-pink-strong);
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-discount-badge {
  display: none;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-image {
  overflow: hidden;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-image img {
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card:hover .product-card-image img {
  transform: scale(1.06);
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-badge {
  position: absolute;
  top: 8px;
  z-index: 4;
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2px;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-badge-promo {
  left: 8px;
  background: var(--w-sage);
  color: #fff;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-badge-oos {
  left: 8px;
  background: #5b6660;
  color: #fff;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-badge-disc {
  right: 8px;
  background: var(--w-pink);
  color: #fff;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-quickview {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px solid var(--w-border);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: var(--w-shadow-sm);
  color: var(--w-text);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
  opacity: 0;
  transform: translate(-50%, calc(-50% + 8px));
  transition: opacity 0.25s ease, transform 0.25s ease, color 0.2s ease, border-color 0.2s ease;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-quickview ion-icon {
  font-size: 16px;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-quickview:hover {
  color: var(--w-sage);
  border-color: var(--w-sage);
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card:hover .product-card-quickview,
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card:focus-within .product-card-quickview {
  opacity: 1;
  transform: translate(-50%, -50%);
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card--oos .product-card-image {
  opacity: 0.5;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card--oos .product-card-cart-control {
  background: #b9c0b6;
  pointer-events: none;
}
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card:focus-visible,
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-quickview:focus-visible,
body.platform-web :is(.shop-content, .category-products-content, .section-products-content, .search-product-content) app-product-card .product-card-cart-control:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .shop-content .my-order-btn {
  --border-color: var(--w-sage);
  --color: var(--w-sage);
  --border-radius: 30px;
  --background: var(--w-card);
  max-width: 320px;
  margin-right: auto;
  margin-left: auto;
  font-weight: 700;
}
body.platform-web .shop-content .shop-hero {
  display: block;
  margin: var(--w-space-5) max(var(--w-space-5), (100% - var(--w-max)) / 2) var(--w-space-6);
  background: linear-gradient(120deg, #eaf3e6 0%, #f3f8f0 60%, #fdfdfb 100%);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-main);
  box-shadow: var(--w-shadow-lg);
  overflow: hidden;
}
body.platform-web .shop-content .shop-hero-copy {
  padding: var(--w-space-7);
  display: flex;
  flex-direction: column;
  gap: var(--w-space-3);
}
body.platform-web .shop-content .shop-hero-eyebrow {
  font-size: var(--w-fs-caption, 13px);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--w-sage);
}
body.platform-web .shop-content .shop-hero-title {
  margin: 0;
  font-size: var(--w-fs-display, 32px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--w-text);
}
body.platform-web .shop-content .shop-hero-price {
  display: flex;
  align-items: baseline;
  gap: var(--w-space-3);
  margin-top: var(--w-space-1);
}
body.platform-web .shop-content .shop-hero-now {
  font-size: var(--w-fs-h1, 26px);
  font-weight: 800;
  color: var(--w-pink-strong);
}
body.platform-web .shop-content .shop-hero-was {
  font-size: var(--w-fs-body, 15px);
  color: var(--w-muted);
  text-decoration: line-through;
}
body.platform-web .shop-content .shop-hero-cta {
  display: flex;
  gap: var(--w-space-3);
  margin-top: var(--w-space-4);
}
body.platform-web .shop-content .shop-hero-btn {
  border: none;
  border-radius: 999px;
  padding: var(--w-space-3) var(--w-space-5);
  font-size: var(--w-fs-body, 15px);
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}
body.platform-web .shop-content .shop-hero-btn:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .shop-content .shop-hero-btn-primary {
  background: var(--w-lime);
  color: #1a2417;
}
body.platform-web .shop-content .shop-hero-btn-primary:hover {
  background: var(--w-sage);
  color: #fff;
  transform: translateY(-2px);
}
body.platform-web .shop-content .shop-hero-btn-ghost {
  background: transparent;
  color: var(--w-sage);
  border: 2px solid var(--w-sage);
}
body.platform-web .shop-content .shop-hero-btn-ghost:hover {
  background: var(--w-sage);
  color: #fff;
}
body.platform-web .shop-content .shop-hero-media {
  position: relative;
  min-height: 240px;
  padding: var(--w-space-5) var(--w-space-5) var(--w-space-5) 0;
}
body.platform-web .shop-content .shop-hero-media app-image-preview {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 200px;
  border-radius: var(--w-radius-card);
  overflow: hidden;
  background: radial-gradient(circle at 60% 40%, #fff 0%, #eef3ec 70%);
}
body.platform-web .shop-content .shop-hero-tag {
  position: absolute;
  top: var(--w-space-5);
  left: 0;
  z-index: 2;
  background: var(--w-pink);
  color: #fff;
  font-size: var(--w-fs-caption, 13px);
  font-weight: 700;
  padding: var(--w-space-1) var(--w-space-3);
  border-radius: 0 999px 999px 0;
}
@media (width >= 768px) {
  body.platform-web .shop-content .shop-hero {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
  }
}
body.platform-web .shop-content .product-section-eyebrow {
  display: block;
  margin-bottom: var(--w-space-1);
  font-size: var(--w-fs-caption, 13px);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--w-pink-strong);
}
body.platform-web .shop-content .product-section-count {
  margin-left: var(--w-space-2);
  font-size: var(--w-fs-caption, 13px);
  font-weight: 500;
  color: var(--w-muted);
}
body.platform-web .shop-content app-product-card-skeleton .product-card-skeleton,
body.platform-web .shop-content app-product-card-skeleton .skeleton {
  background: linear-gradient(90deg, #eef2ec 25%, #e3e9e1 37%, #eef2ec 63%);
  background-size: 400% 100%;
  animation: shop-shimmer 1.4s ease infinite;
}
@keyframes shop-shimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0 0;
  }
}
body.platform-web .shop-content .product-section-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--w-space-2);
  padding: var(--w-space-7) var(--w-space-4);
  color: var(--w-muted);
  text-align: center;
}
body.platform-web .shop-content .product-section-empty::before {
  content: "";
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #e7f1e2 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='none' stroke='%237ba465' stroke-width='2' stroke-linecap='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>") no-repeat center;
}
body.platform-web ion-modal.product-quick-view-modal {
  --width: min(920px, calc(100vw - 40px));
  --height: auto;
  --max-height: 88vh;
  --border-radius: 22px;
  --background: transparent;
  --box-shadow: 0 32px 90px rgb(29 42 22 / 28%);
  --backdrop-opacity: 0.5;
}
body.platform-web ion-modal.product-quick-view-modal::part(content) {
  overflow: hidden;
  border: 0;
  border-radius: 22px;
  background: transparent;
}
body.platform-web ion-modal.product-quick-view-modal::part(backdrop) {
  background: rgba(20, 30, 17, 0.72);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
body.platform-web.dark ion-modal.product-quick-view-modal {
  --box-shadow: 0 36px 100px rgb(0 0 0 / 58%);
  --backdrop-opacity: 0.68;
}
@media (width < 760px) {
  body.platform-web ion-modal.product-quick-view-modal {
    --width: min(94vw, 560px);
    --max-height: 90vh;
    --border-radius: 18px;
  }
  body.platform-web ion-modal.product-quick-view-modal::part(content) {
    border-radius: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.platform-web .shop-content app-product-card .product-card,
  body.platform-web .shop-content app-product-card .product-card-image img,
  body.platform-web .shop-content .shop-hero-btn,
  body.platform-web .shop-content app-product-card .product-card-quickview {
    transition: none !important;
    transform: none !important;
  }
}
body.platform-web .category-products-header,
body.platform-web .category-products-header ion-header,
body.platform-web .category-products-header ion-toolbar,
body.platform-web .category-products-header app-header-search,
body.platform-web .section-products-header,
body.platform-web .section-products-header ion-header,
body.platform-web .section-products-header ion-toolbar,
body.platform-web .section-products-header app-header-search,
body.platform-web .search-product-header,
body.platform-web .search-product-header ion-header,
body.platform-web .search-product-header ion-toolbar,
body.platform-web .search-product-header app-header-search {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .category-products-header ion-title,
body.platform-web .section-products-header ion-title,
body.platform-web .search-product-header ion-title {
  color: var(--w-text) !important;
  font-weight: 800;
}
body.platform-web .category-products-header ion-button,
body.platform-web .category-products-header ion-back-button,
body.platform-web .category-products-header ion-buttons ion-icon,
body.platform-web .section-products-header ion-button,
body.platform-web .section-products-header ion-back-button,
body.platform-web .section-products-header ion-buttons ion-icon,
body.platform-web .search-product-header ion-button,
body.platform-web .search-product-header ion-back-button,
body.platform-web .search-product-header ion-buttons ion-icon {
  --color: var(--w-text) !important;
  color: var(--w-text) !important;
}
body.platform-web .category-products-header app-header-shop-actions,
body.platform-web .section-products-header app-header-shop-actions,
body.platform-web .search-product-header app-header-shop-actions {
  display: none;
}
body.platform-web .category-products-header app-header-search,
body.platform-web .search-product-header app-header-search {
  display: block;
  max-width: var(--w-max);
  margin: 0 auto;
  padding: 12px 24px;
}
body.platform-web .category-products-header .search-container,
body.platform-web .search-product-header .search-container {
  background: var(--w-card) !important;
  border: 1px solid var(--w-border);
  border-radius: 30px;
  box-shadow: 0 4px 14px rgba(123, 164, 101, 0.06);
}
body.platform-web .category-products-header .filter-btn,
body.platform-web .search-product-header .filter-btn {
  --box-shadow: none;
}
body.platform-web .search-product-header .filter-btn {
  --background: var(--filter-circle-color);
  --background-activated: var(--filter-circle-color-active);
  --background-focused: var(--filter-circle-color-focus);
  --background-hover: var(--filter-circle-color-active);
  --color: var(--ion-color-light);
  border: 0;
  border-radius: var(--radius-full);
}
body.platform-web .search-product-header .filter-btn ion-icon {
  color: var(--ion-color-light);
}
body.platform-web .category-products-content,
body.platform-web .section-products-content,
body.platform-web .search-product-content {
  --background: var(--w-canvas);
}
@media (width >= 768px) {
  body.platform-web .category-products-content {
    --category-grid-width: calc(5 * 180px + 4 * 12px);
  }
  body.platform-web .category-products-content app-paginated-list,
  body.platform-web .category-products-content app-shop-category-list,
  body.platform-web .category-products-content app-shop-brands-list,
  body.platform-web .section-products-content app-paginated-list,
  body.platform-web .search-product-content .search-results-section,
  body.platform-web .search-product-content .products-section {
    display: block;
    width: 100%;
    max-width: var(--w-max);
    margin-right: auto;
    margin-left: auto;
  }
  body.platform-web .category-products-content app-shop-brands-list {
    width: 100%;
    max-width: var(--category-grid-width);
  }
  body.platform-web .category-products-content .brand-cards-scroll {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    overflow: visible;
    gap: 12px;
    margin-right: 0;
    padding-right: 0;
  }
}
body.platform-web .category-products-content .products-grid,
body.platform-web .section-products-content .products-grid,
body.platform-web .search-product-content .products-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 16px;
  padding: 0;
  margin-top: 0;
}
@media (width >= 768px) {
  body.platform-web .category-products-content .products-grid {
    grid-template-columns: repeat(5, 180px) !important;
    justify-content: center;
    justify-items: stretch;
    gap: 12px;
  }
  body.platform-web .section-products-content .products-grid,
  body.platform-web .search-product-content .products-grid {
    grid-template-columns: repeat(4, 200px) !important;
    justify-content: center;
    justify-items: stretch;
    gap: 12px;
  }
}
@media (width >= 1200px) {
  body.platform-web .category-products-content {
    --category-grid-width: calc(5 * 190px + 4 * 14px);
  }
  body.platform-web .category-products-content .products-grid {
    grid-template-columns: repeat(5, 190px) !important;
    gap: 14px;
  }
  body.platform-web .category-products-content app-shop-brands-list {
    max-width: var(--category-grid-width);
  }
  body.platform-web .section-products-content .products-grid {
    gap: 14px;
  }
  body.platform-web .search-product-content .products-grid {
    grid-template-columns: repeat(5, 200px) !important;
    justify-content: center;
    justify-items: stretch;
    gap: 12px;
  }
}
body.platform-web .category-products-content app-product-card .product-card,
body.platform-web .section-products-content app-product-card .product-card,
body.platform-web .search-product-content app-product-card .product-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .category-products-content app-product-card .product-card:hover,
body.platform-web .section-products-content app-product-card .product-card:hover,
body.platform-web .search-product-content app-product-card .product-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
}
body.platform-web .category-products-content app-product-card .product-card-current-price,
body.platform-web .section-products-content app-product-card .product-card-current-price,
body.platform-web .search-product-content app-product-card .product-card-current-price {
  color: var(--w-pink-strong);
  font-weight: 800;
}
body.platform-web .category-products-content app-product-card .product-card-add-to-cart-btn,
body.platform-web .category-products-content app-product-card .product-card-cart-control,
body.platform-web .section-products-content app-product-card .product-card-add-to-cart-btn,
body.platform-web .section-products-content app-product-card .product-card-cart-control,
body.platform-web .search-product-content app-product-card .product-card-add-to-cart-btn,
body.platform-web .search-product-content app-product-card .product-card-cart-control {
  --background: var(--w-pink);
  --color: #fff;
  background: var(--w-pink);
  color: #fff;
}
body.platform-web .search-product-content .search-results-section .section-title {
  display: block;
  margin-bottom: 16px;
  font-size: 19px;
  font-weight: 800;
  color: var(--w-text);
}
body.platform-web .category-products-content .empty-state,
body.platform-web .section-products-content .empty-state,
body.platform-web .search-product-content .empty-state,
body.platform-web .search-product-content .no-results {
  max-width: 520px;
  margin: 32px auto;
  padding: 40px 24px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  text-align: center;
  color: var(--w-muted);
}
body.platform-web .category-products-content .empty-state .no-results-icon,
body.platform-web .category-products-content .empty-state .empty-icon,
body.platform-web .section-products-content .empty-state .no-results-icon,
body.platform-web .section-products-content .empty-state .empty-icon,
body.platform-web .search-product-content .empty-state .no-results-icon,
body.platform-web .search-product-content .empty-state .empty-icon,
body.platform-web .search-product-content .no-results .no-results-icon,
body.platform-web .search-product-content .no-results .empty-icon {
  font-size: 40px;
  color: var(--w-sage);
}
body.platform-web .category-products-content .empty-state .no-results-text,
body.platform-web .category-products-content .empty-state .empty-text,
body.platform-web .section-products-content .empty-state .no-results-text,
body.platform-web .section-products-content .empty-state .empty-text,
body.platform-web .search-product-content .empty-state .no-results-text,
body.platform-web .search-product-content .empty-state .empty-text,
body.platform-web .search-product-content .no-results .no-results-text,
body.platform-web .search-product-content .no-results .empty-text {
  display: block;
  margin-top: 12px;
  font-size: 17px;
  font-weight: 700;
  color: var(--w-text);
}
body.platform-web .orders-header,
body.platform-web .orders-header ion-header,
body.platform-web .orders-header ion-toolbar,
body.platform-web .order-details-header,
body.platform-web .order-details-header ion-header,
body.platform-web .order-details-header ion-toolbar {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .orders-header ion-title,
body.platform-web .order-details-header ion-title {
  color: var(--w-text) !important;
  font-weight: 800;
}
body.platform-web .orders-header ion-button,
body.platform-web .orders-header ion-back-button,
body.platform-web .orders-header ion-buttons ion-icon,
body.platform-web .order-details-header ion-button,
body.platform-web .order-details-header ion-back-button,
body.platform-web .order-details-header ion-buttons ion-icon {
  --color: var(--w-text) !important;
  color: var(--w-text) !important;
}
body.platform-web .orders-content {
  --background: var(--w-canvas);
}
@media (width >= 768px) {
  body.platform-web .orders-content .filter-tabs,
  body.platform-web .orders-content .orders-list,
  body.platform-web .orders-content .orders-empty {
    width: 100%;
    max-width: 860px;
    margin-right: auto;
    margin-left: auto;
  }
}
body.platform-web .orders-content .filter-tabs {
  padding-top: 8px;
}
body.platform-web .orders-content .scrollable-tabs-btn {
  --background: var(--w-card);
  background: var(--w-card);
  border: 1px solid var(--w-border);
  color: var(--w-muted);
  font-weight: 600;
}
body.platform-web .orders-content .scrollable-tabs-btn.active {
  --background: var(--w-sage);
  background: var(--w-sage);
  border-color: var(--w-sage);
  color: #fff;
}
body.platform-web .orders-content app-order-card .order-card,
body.platform-web .order-details-content app-order-card .order-card,
body.platform-web .order-details-content app-address-card .address-card,
body.platform-web .order-details-content app-method-card .method-card {
  --background: var(--w-card);
  margin: 0 0 16px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06) !important;
}
body.platform-web .orders-content app-order-card .order-card {
  transition: transform 0.25s ease, border-color 0.25s ease;
}
body.platform-web .orders-content app-order-card .order-card:hover {
  transform: translateY(-3px);
  border-color: var(--w-sage);
}
body.platform-web .orders-content app-order-card .order-card-icon-wrap {
  color: var(--w-sage);
}
body.platform-web .orders-content app-order-card .order-card-total,
body.platform-web .order-details-content app-order-card .order-card-total {
  color: var(--w-pink);
  font-weight: 800;
}
body.platform-web .orders-content .orders-empty {
  max-width: 520px;
  margin: 32px auto;
  padding: 40px 24px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  text-align: center;
  color: var(--w-muted);
  font-weight: 600;
}
body.platform-web .order-details-content {
  --background: var(--w-canvas);
}
body.platform-web .order-details-content .order-details-wrapper {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  padding-top: 16px;
}
body.platform-web .order-details-content .order-details-actions {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
}
body.platform-web .order-details-content .order-action-btn {
  --background: var(--w-card);
  --color: var(--w-sage);
  --border-color: var(--w-sage);
  --border-width: 1px;
  --border-style: solid;
  --box-shadow: none;
  --border-radius: 24px;
  flex: 1;
  font-weight: 700;
}
body.platform-web .order-details-content .order-items {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  padding: 8px 18px;
  margin-bottom: 16px;
}
body.platform-web .order-details-content .order-item {
  padding: 14px 0;
}
body.platform-web .order-details-content .item-price {
  color: var(--w-text);
  font-weight: 800;
}
body.platform-web .order-details-content .item-savings {
  color: var(--w-sage);
  font-weight: 700;
}
body.platform-web .order-details-content .price-summary {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  padding: 18px 20px;
  margin-bottom: 16px;
}
body.platform-web .order-details-content .total-value {
  color: var(--w-pink);
  font-weight: 800;
}
body.platform-web .order-details-content .product-savings-value {
  color: var(--w-sage);
}
body.platform-web .order-details-content .re-order-btn {
  --background: var(--w-sage);
  --background-hover: var(--w-sage-hover);
  --color: #fff;
  --border-radius: 30px;
  --box-shadow: 0 6px 16px rgb(123 164 101 / 28%);
  font-weight: 700;
}
body.platform-web .checkout-web-header,
body.platform-web .checkout-web-header ion-header,
body.platform-web .checkout-web-header ion-toolbar {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .checkout-web-header ion-title {
  color: var(--w-text) !important;
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
  letter-spacing: -0.01em;
}
body.platform-web .checkout-web-header ion-button,
body.platform-web .checkout-web-header ion-back-button,
body.platform-web .checkout-web-header ion-buttons ion-icon {
  --color: var(--w-text) !important;
  color: var(--w-text) !important;
}
body.platform-web .checkout-content .checkout-title-row {
  display: none;
  margin: 0 0 var(--w-space-5);
}
body.platform-web .checkout-content .checkout-page-title {
  margin: 0;
  font-size: var(--w-fs-h1, 26px);
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--w-text);
}
body.platform-web .checkout-content .checkout-back-btn {
  width: 42px;
  height: 42px;
  border: 1px solid var(--w-border);
  border-radius: 50%;
  background: var(--w-card);
  color: var(--w-text);
  box-shadow: var(--w-shadow-sm);
  transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}
body.platform-web .checkout-content .checkout-back-btn ion-icon {
  font-size: 22px;
}
body.platform-web .checkout-content .checkout-back-btn:hover {
  background: var(--w-hover, #f5f8f2);
  border-color: color-mix(in srgb, var(--w-sage) 45%, var(--w-border));
  box-shadow: var(--w-shadow-md);
  transform: translateX(-2px);
}
body.platform-web .checkout-content {
  --background: var(--w-canvas);
  font-family: var(--w-font);
}
body.platform-web .checkout-content .checkout-wrapper {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  padding: var(--w-space-6) 0 var(--w-space-8);
}
@media (width >= 980px) {
  body.platform-web .checkout-content .checkout-wrapper {
    max-width: 1100px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    grid-template-areas: "title title" "main summary";
    column-gap: var(--w-space-7);
    align-items: start;
  }
  body.platform-web .checkout-content .checkout-title-row {
    display: flex;
    grid-area: title;
    align-items: center;
  }
  body.platform-web .checkout-web-header {
    display: none;
  }
  body.platform-web .checkout-content .checkout-main-col {
    grid-area: main;
    min-width: 0;
  }
  body.platform-web .checkout-content .checkout-summary-col {
    grid-area: summary;
    position: sticky;
    top: 96px;
    background: var(--w-card);
    border: 1px solid var(--w-border);
    border-radius: var(--w-radius-card);
    box-shadow: var(--w-shadow-sm);
    padding: var(--w-space-5);
  }
  body.platform-web .checkout-content .checkout-summary-col .price-summary {
    margin: 0 0 var(--w-space-3);
    padding: 0;
    background: none;
    border: none;
    box-shadow: none;
  }
  body.platform-web .checkout-content .checkout-summary-col .total-row {
    max-width: none;
    margin: 0 0 var(--w-space-4);
    padding: var(--w-space-4) 0 0;
    background: none;
    border: none;
    border-top: 1px solid var(--w-border);
    border-radius: 0;
    box-shadow: none;
  }
}
body.platform-web .checkout-content .delivery-address-section,
body.platform-web .checkout-content .cart-items,
body.platform-web .checkout-content .active-coupon-card,
body.platform-web .checkout-content .input-section,
body.platform-web .checkout-content .price-summary,
body.platform-web .checkout-content .payment-methods {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow-sm);
  padding: var(--w-space-5);
  margin-bottom: var(--w-space-5);
  transition: var(--w-transition-bounce);
}
body.platform-web .checkout-content .delivery-address-section:hover,
body.platform-web .checkout-content .cart-items:hover,
body.platform-web .checkout-content .payment-methods:hover {
  transform: translateY(-4px);
  box-shadow: var(--w-shadow-md);
}
body.platform-web .checkout-content .courses-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: var(--w-space-5) var(--w-space-2) var(--w-space-4);
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
  color: var(--w-text);
}
body.platform-web .checkout-content .delivery-address-icon {
  color: var(--w-sage);
}
body.platform-web .checkout-content .delivery-address-edit,
body.platform-web .checkout-content .add-address-btn {
  color: var(--w-sage);
  font-weight: var(--w-fw-body-lg);
  cursor: pointer;
}
body.platform-web .checkout-content .cart-item {
  border-bottom: 1px solid var(--w-border);
  padding: var(--w-space-4) 0;
}
body.platform-web .checkout-content .cart-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
body.platform-web .checkout-content .cart-item:first-child {
  padding-top: 0;
}
body.platform-web .checkout-content .item-price {
  color: var(--w-pink);
  font-size: var(--w-fs-body-lg);
  font-weight: var(--w-fw-h1);
}
body.platform-web .checkout-content .item-savings {
  color: var(--w-sage);
  font-weight: var(--w-fw-body-lg);
}
body.platform-web .checkout-content .qty-btn {
  --color: var(--w-sage);
  color: var(--w-sage);
}
body.platform-web .checkout-content .remove-btn {
  --color: var(--w-muted);
  color: var(--w-muted);
  transition: var(--w-transition-smooth);
}
body.platform-web .checkout-content .remove-btn:hover {
  --color: var(--w-pink);
  color: var(--w-pink);
}
body.platform-web .checkout-content .coupon-icon {
  color: var(--w-gold);
  font-size: 24px;
}
body.platform-web .checkout-content .use-coupon-btn,
body.platform-web .checkout-content .apply-button {
  --background: var(--w-sage);
  --background-hover: var(--w-sage-hover);
  --color: #fff;
  --border-radius: var(--w-radius-main);
  --box-shadow: var(--w-shadow-sm);
  font-weight: var(--w-fw-body-lg);
  transition: var(--w-transition-bounce);
}
body.platform-web .checkout-content .use-coupon-btn:hover,
body.platform-web .checkout-content .apply-button:hover {
  transform: translateY(-2px);
  --box-shadow: var(--w-shadow-md);
}
body.platform-web .checkout-content .summary-row {
  font-size: var(--w-fs-body);
  font-weight: var(--w-fw-body-lg);
  color: var(--w-muted);
  padding: var(--w-space-2) 0;
}
body.platform-web .checkout-content .total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 760px;
  margin: var(--w-space-6) auto var(--w-space-5);
  padding: var(--w-space-5);
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow-sm);
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
}
body.platform-web .checkout-content .total-row .total-label {
  color: var(--w-text);
}
body.platform-web .checkout-content .total-row .total-value {
  font-size: var(--w-fs-display);
  font-weight: var(--w-fw-display);
  color: var(--w-pink);
  letter-spacing: -0.01em;
}
body.platform-web .checkout-content .product-savings-value {
  color: var(--w-sage);
  font-weight: var(--w-fw-body-lg);
}
body.platform-web .checkout-content .payment-title {
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
  color: var(--w-text);
  margin-bottom: var(--w-space-4);
}
body.platform-web .checkout-content .payment-option {
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  padding: var(--w-space-4) var(--w-space-5);
  margin-bottom: var(--w-space-3);
  transition: var(--w-transition-smooth);
  background: var(--w-card);
}
body.platform-web .checkout-content .payment-option:last-child {
  margin-bottom: 0;
}
body.platform-web .checkout-content .payment-option.selected,
body.platform-web .checkout-content .payment-option:has(.radio-button.checked) {
  border-color: var(--w-sage);
}
body.platform-web .checkout-content .radio-button {
  border-color: var(--w-border);
}
body.platform-web .checkout-content .payment-option.selected .radio-button,
body.platform-web .checkout-content .payment-option:has(.radio-button.checked) .radio-button {
  border-color: var(--w-sage);
}
body.platform-web .checkout-content .radio-inner {
  background: var(--w-sage);
}
body.platform-web .checkout-content .btn-success {
  --background: var(--w-sage);
  --background-hover: var(--w-sage-hover);
  --color: #fff;
  --border-radius: var(--w-radius-main);
  --box-shadow: var(--w-shadow-md);
  max-width: 760px;
  margin: var(--w-space-6) auto 0;
  height: 56px;
  font-size: var(--w-fs-body-lg);
  font-weight: var(--w-fw-h1);
  transition: var(--w-transition-bounce);
}
body.platform-web .checkout-content .btn-success:hover {
  transform: translateY(-4px);
  --box-shadow: var(--w-shadow-lg);
}
body.platform-web app-product-details .product-details-content::part(scroll) {
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
body.platform-web app-product-details app-site-footer {
  display: block;
  margin-top: auto;
}
body.platform-web app-product-details app-site-footer .site-footer {
  margin-top: 0;
}
body.platform-web app-live-class .live-class-content::part(scroll) {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow-x: hidden;
}
body.platform-web app-live-class .live-class-page {
  flex: 1 0 auto;
}
body.platform-web app-live-class app-site-footer {
  display: block;
  margin-top: auto;
}
body.platform-web app-live-class app-site-footer .site-footer {
  margin-top: 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-header-container {
  display: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-content {
  --background: var(--w-canvas);
  --padding-bottom: 120px;
  padding: var(--w-space-5);
  font-family: var(--w-font);
  scroll-behavior: smooth;
}
@media (width >= 980px) {
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-content::part(scroll) {
    display: grid !important;
    grid-template-columns: minmax(0, 500px) minmax(0, 1fr);
    grid-template-areas: "crumb crumb" "banner info" "related related" "similar similar" "recent recent";
    gap: 0 var(--w-space-7);
    align-items: start;
    max-width: var(--w-max);
    margin: 0 auto;
    padding: var(--w-space-6) var(--w-space-5) var(--w-space-8);
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb {
    grid-area: crumb;
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-banner {
    grid-area: banner;
    position: sticky;
    top: 96px;
    margin: 0;
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info {
    grid-area: info;
    margin: 0;
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section:nth-of-type(1) {
    grid-area: related;
    margin-top: var(--w-space-8);
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section:nth-of-type(2) {
    grid-area: similar;
    margin-top: var(--w-space-7);
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section:nth-of-type(3) {
    grid-area: recent;
    margin-top: var(--w-space-7);
  }
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-banner {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-main);
  box-shadow: var(--w-shadow-md);
  padding: var(--w-space-5);
  transition: var(--w-transition-bounce);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-banner:hover {
  transform: translateY(-4px);
  box-shadow: var(--w-shadow-lg);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-slider-track {
  height: 440px;
  border-radius: var(--w-radius-card);
  overflow: hidden;
  background: var(--w-surface);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-banner app-image-preview img {
  object-fit: contain !important;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-gallery-thumbnails {
  display: flex;
  gap: var(--w-space-4);
  margin-top: var(--w-space-5);
  overflow-x: auto;
  padding-bottom: var(--w-space-3);
  scrollbar-width: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-gallery-thumbnails::-webkit-scrollbar {
  display: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-gallery-thumb {
  flex: 0 0 60px;
  height: 60px;
  padding: 0;
  border: 2px solid transparent;
  border-radius: var(--w-radius-sm);
  background: var(--w-surface);
  cursor: pointer;
  transition: var(--w-transition-fast);
  opacity: 0.7;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-gallery-thumb:hover {
  opacity: 1;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-gallery-thumb.is-active {
  border-color: var(--w-pink);
  opacity: 1;
  transform: scale(1.05);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-name {
  font-size: var(--w-fs-h1);
  font-weight: var(--w-fw-h1);
  line-height: var(--w-lh-h1);
  letter-spacing: -0.01em;
  color: var(--w-text);
  margin-top: 0;
  margin-bottom: var(--w-space-4);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-pricing {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--w-space-4);
  margin-bottom: var(--w-space-6);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-price {
  font-size: var(--w-fs-display);
  font-weight: var(--w-fw-display);
  color: var(--w-pink);
  letter-spacing: -0.01em;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-original {
  font-size: var(--w-fs-h3);
  font-weight: var(--w-fw-h3);
  color: var(--w-muted);
  text-decoration: line-through;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-badge {
  background: rgba(123, 164, 101, 0.14);
  color: var(--w-sage-hover);
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-caption);
  letter-spacing: 0.02em;
  padding: var(--w-space-2) var(--w-space-3);
  border-radius: 8px;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-out-of-stock-badge {
  background: rgba(233, 102, 119, 0.12);
  color: var(--w-pink);
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-caption);
  padding: var(--w-space-2) var(--w-space-3);
  border-radius: 8px;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-variant-options {
  margin-bottom: var(--w-space-7);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-label {
  font-size: var(--w-fs-body);
  font-weight: var(--w-fw-h3);
  margin-bottom: var(--w-space-4);
  display: block;
  color: var(--w-text);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-label .product-details-option-selected-value {
  color: var(--w-pink);
  font-weight: var(--w-fw-h3);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-values {
  display: flex;
  flex-wrap: wrap;
  gap: var(--w-space-4);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-btn {
  padding: var(--w-space-3) var(--w-space-5);
  border: 1px solid var(--w-border);
  border-radius: 100px;
  background: var(--w-card);
  font-size: var(--w-fs-body);
  font-weight: var(--w-fw-body-lg);
  cursor: pointer;
  color: var(--w-text);
  transition: var(--w-transition-bounce);
  box-shadow: var(--w-shadow-sm);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-btn:hover {
  transform: translateY(-2px);
  box-shadow: var(--w-shadow-md);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-btn.is-selected {
  border-color: transparent;
  background: var(--w-sage);
  color: #fff;
  box-shadow: var(--w-shadow-md);
  transform: translateY(-2px);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-option-btn.is-unavailable {
  color: var(--w-muted);
  border-color: var(--w-border);
  background: var(--w-canvas);
  text-decoration: line-through;
  box-shadow: none;
  transform: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-quantity-section {
  margin-bottom: var(--w-space-6);
  display: flex;
  flex-direction: column;
  gap: var(--w-space-3);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-quantity-label {
  font-size: var(--w-fs-body-lg);
  font-weight: var(--w-fw-h3);
  display: block;
  color: var(--w-text);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-quantity-controls {
  display: flex;
  align-items: center;
  gap: var(--w-space-5);
  background: var(--w-surface);
  border-radius: 100px;
  padding: var(--w-space-2) var(--w-space-3);
  width: fit-content;
  border: 1px solid var(--w-border);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-qty-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  color: var(--w-text);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--w-transition-fast);
  box-shadow: var(--w-shadow-sm);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-qty-btn:hover:not([disabled]) {
  background: var(--w-sage);
  color: #fff;
  border-color: transparent;
  transform: translateY(-2px);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-qty-btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-qty-display {
  font-size: var(--w-fs-h3);
  font-weight: var(--w-fw-h2);
  min-width: 24px;
  text-align: center;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-stock-limit-warning {
  display: block;
  margin-top: var(--w-space-3);
  color: var(--w-pink);
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-h3);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-description-section {
  border-top: 1px solid var(--w-border);
  padding-top: var(--w-space-6);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-description-section ul {
  list-style: none;
  padding: 0;
  margin: var(--w-space-3) 0 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-description-section li {
  position: relative;
  padding-left: var(--w-space-6);
  margin-bottom: var(--w-space-3);
  font-size: var(--w-fs-body-lg);
  color: var(--w-text);
  line-height: 1.5;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-description-section li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--w-sage);
  font-weight: 800;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-description-title {
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
  margin-bottom: var(--w-space-4);
  color: var(--w-text);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-actions {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.97);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  border-top: 1px solid var(--w-border);
  box-shadow: 0 -6px 24px rgba(16, 24, 16, 0.06);
  z-index: 900;
  padding: var(--w-space-4) max(var(--w-space-5), (100% - var(--w-max)) / 2);
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: var(--w-space-4);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-summary {
  display: flex;
  align-items: center;
  gap: var(--w-space-4);
  margin-right: auto;
  min-width: 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-thumb {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  background: var(--w-surface);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-name {
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-h3);
  color: var(--w-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 240px;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-price {
  font-size: var(--w-fs-h3);
  font-weight: var(--w-fw-display);
  color: var(--w-pink);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn {
  margin: 0;
  width: auto;
  min-width: 180px;
  height: 48px;
  --border-radius: 100px;
  font-weight: var(--w-fw-h1);
  font-size: var(--w-fs-body-lg);
  transition: var(--w-transition-bounce);
}
@media (width < 768px) {
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-summary {
    display: none;
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-actions {
    justify-content: center;
  }
  body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn {
    flex: 1;
    min-width: 0;
  }
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn-buy-now {
  --background: var(--w-card);
  --color: var(--w-sage);
  --border-color: var(--w-sage);
  --border-style: solid;
  --border-width: 2px;
  --box-shadow: none;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn-buy-now:hover {
  --background: var(--w-sage);
  --color: #fff;
  transform: translateY(-2px);
  --box-shadow: var(--w-shadow-md);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn-add-cart {
  --background: var(--w-pink);
  --color: #fff;
  --box-shadow: var(--w-shadow-sm);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sticky-btn-add-cart:hover {
  transform: translateY(-2px);
  --box-shadow: var(--w-shadow-md);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--w-space-2);
  margin-bottom: var(--w-space-6);
  font-size: var(--w-fs-caption);
  color: var(--w-muted);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb-link {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--w-muted);
  font: inherit;
  transition: var(--w-transition-fast);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb-link:hover {
  color: var(--w-sage);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb-sep {
  opacity: 0.5;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-breadcrumb-current {
  color: var(--w-text);
  font-weight: var(--w-fw-h3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 360px;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-eyebrow {
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-h3);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--w-sage);
  margin-bottom: var(--w-space-3);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info {
  display: flex;
  flex-direction: column;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-eyebrow {
  order: 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-info-name {
  order: 1;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-info-meta {
  order: 2;
  margin-bottom: var(--w-space-5);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-info-pricing {
  order: 3;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-variant-options {
  order: 4;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-quantity-section {
  order: 5;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-promotion-badge {
  order: 6;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info .product-details-description-section {
  order: 7;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-info-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--w-space-3);
  margin-top: var(--w-space-1);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-rating-row {
  display: flex;
  align-items: center;
  gap: var(--w-space-2);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-star-icon {
  color: var(--w-border);
  font-size: 16px;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-star-icon.filled {
  color: var(--w-gold);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-rating-value {
  font-weight: var(--w-fw-h3);
  color: var(--w-text);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-rating-sep {
  color: var(--w-border);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-reviews-link {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--w-muted);
  font: inherit;
  transition: var(--w-transition-fast);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-reviews-link:hover {
  color: var(--w-sage);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled .product-details-sku {
  color: var(--w-muted);
  font-size: var(--w-fs-caption);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section .product-section-scroll {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--w-space-5);
  overflow: visible;
}
@media (width >= 700px) {
  body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section .product-section-scroll {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (width >= 980px) {
  body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section .product-section-scroll {
    grid-template-columns: repeat(4, 1fr);
  }
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section app-product-card {
  width: 100%;
  min-width: 0;
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section .product-card {
  height: 100%;
  transition: var(--w-transition-bounce);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-product-section .product-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: var(--w-shadow-md);
}
body.platform-web app-product-details.__legacy-product-details-layout-disabled app-image-preview img {
  transition: opacity 0.4s ease;
}
body.platform-web app-review-product app-header-container,
body.platform-web app-review-list app-header-container {
  display: none;
}
body.platform-web app-review-product .review-content,
body.platform-web app-review-product .review-list-content,
body.platform-web app-review-list .review-content,
body.platform-web app-review-list .review-list-content {
  --background: var(--w-canvas);
  font-family: var(--w-font);
}
body.platform-web app-review-product .review-wrapper {
  max-width: 760px;
  margin: 0 auto;
  padding: var(--w-space-7) var(--w-space-5) var(--w-space-8);
}
body.platform-web app-review-product .order-label {
  color: var(--w-muted);
  font-size: var(--w-fs-caption);
  font-weight: var(--w-fw-h3);
  margin-bottom: var(--w-space-6);
}
body.platform-web app-review-product .item-section {
  margin-bottom: var(--w-space-7);
}
body.platform-web app-review-product .item-info {
  margin-bottom: var(--w-space-5);
}
body.platform-web app-review-product .item-title {
  font-size: var(--w-fs-h2);
  font-weight: var(--w-fw-h2);
  color: var(--w-text);
  margin: 0 0 var(--w-space-2);
}
body.platform-web app-review-product .item-subtitle {
  color: var(--w-muted);
  font-size: var(--w-fs-caption);
  margin: 0;
}
body.platform-web app-review-product .rating-card,
body.platform-web app-review-product .comments-card {
  --background: var(--w-card);
  margin: 0 0 var(--w-space-5);
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow-sm);
}
body.platform-web app-review-product .card-title {
  font-size: var(--w-fs-h3);
  font-weight: var(--w-fw-h3);
  color: var(--w-text);
}
body.platform-web app-review-product .card-subtitle {
  color: var(--w-muted);
  font-size: var(--w-fs-body-lg);
}
body.platform-web app-review-product .stars-container {
  display: flex;
  gap: var(--w-space-3);
}
body.platform-web app-review-product .star-button {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 28px;
  padding: var(--w-space-1);
  transition: var(--w-transition-bounce);
}
body.platform-web app-review-product .star-button ion-icon {
  color: var(--w-border);
}
body.platform-web app-review-product .star-button.filled ion-icon {
  color: var(--w-gold);
}
body.platform-web app-review-product .star-button:hover {
  transform: scale(1.12);
}
body.platform-web app-review-product .rating-label {
  color: var(--w-sage);
  font-weight: var(--w-fw-h3);
}
body.platform-web app-review-product .textarea-wrapper {
  background: var(--w-surface);
  border: 1px solid var(--w-border);
  border-radius: 12px;
  padding: var(--w-space-2) var(--w-space-4);
  transition: var(--w-transition-fast);
}
body.platform-web app-review-product .textarea-wrapper:focus-within {
  border-color: var(--w-sage);
}
body.platform-web app-review-product .character-count {
  text-align: right;
  color: var(--w-muted);
  font-size: var(--w-fs-caption);
}
body.platform-web app-review-product .error-message {
  background: rgba(233, 102, 119, 0.1);
  border: 1px solid rgba(233, 102, 119, 0.3);
  color: var(--w-pink);
  border-radius: var(--w-radius-card);
  padding: var(--w-space-4);
  margin-bottom: var(--w-space-5);
}
body.platform-web app-review-product ion-button.btn-success {
  --background: var(--w-sage);
  --background-hover: var(--w-sage-hover);
  --background-activated: var(--w-sage-hover);
  --color: #fff;
  --border-radius: 100px;
  --box-shadow: 0 6px 16px rgb(123 164 101 / 28%);
  max-width: 320px;
  margin: var(--w-space-5) auto 0;
  font-weight: var(--w-fw-h1);
}
@media (width >= 768px) {
  body.platform-web app-review-list .review-list-content .review-list-wrapper,
  body.platform-web app-review-list .review-list-content .review-list-count,
  body.platform-web app-review-list .review-list-content .review-list-empty {
    width: 100%;
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
  }
}
body.platform-web app-review-list .review-list-count {
  font-weight: var(--w-fw-display);
  color: var(--w-text);
  padding-top: var(--w-space-6);
}
body.platform-web app-review-list .review-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow-sm);
  padding: var(--w-space-5);
  margin-bottom: var(--w-space-4);
  transition: var(--w-transition-bounce);
}
body.platform-web app-review-list .review-card:hover {
  transform: translateY(-3px);
  border-color: var(--w-sage);
  box-shadow: var(--w-shadow-md);
}
body.platform-web app-review-list .review-card-avatar {
  width: 44px;
  height: 44px;
}
body.platform-web app-review-list .review-card-username {
  font-weight: var(--w-fw-h3);
  color: var(--w-text);
}
body.platform-web app-review-list .review-star {
  color: var(--w-border);
}
body.platform-web app-review-list .review-star.filled {
  color: var(--w-gold);
}
body.platform-web app-review-list .review-card-meta {
  gap: var(--w-space-2);
}
body.platform-web app-review-list .review-card-date,
body.platform-web app-review-list .review-card-dot {
  color: var(--w-muted);
}
body.platform-web app-review-list .review-card-comment {
  color: var(--w-text);
  line-height: 1.6;
}
body.platform-web app-review-list .review-list-empty {
  max-width: 520px;
  margin: var(--w-space-7) auto;
  padding: var(--w-space-8) var(--w-space-5);
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: var(--w-shadow-sm);
  text-align: center;
  color: var(--w-muted);
}
body.platform-web .learning-header app-header-toolbar {
  display: none;
}
body.platform-web .learning-header,
body.platform-web .learning-header ion-header,
body.platform-web .learning-header ion-toolbar,
body.platform-web .learning-header app-header-search {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .learning-header app-header-search {
  display: block;
  max-width: var(--w-max);
  margin: 0 auto;
  padding: 12px 24px;
}
body.platform-web .learning-header .search-container {
  background: var(--w-card) !important;
  border: 1px solid var(--w-border);
  border-radius: 30px;
  box-shadow: 0 4px 14px rgba(123, 164, 101, 0.06);
}
body.platform-web .learning-content::part(scroll) {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow-x: hidden;
}
body.platform-web .learning-content {
  --padding-bottom: 0;
}
body.platform-web .learning-content app-site-footer {
  display: block;
  margin-top: auto;
}
body.platform-web .learning-content app-site-footer .site-footer {
  margin-top: 0;
}
@media (width >= 768px) {
  body.platform-web .learning-content app-banner-carousel,
  body.platform-web .learning-content app-category-list,
  body.platform-web .learning-content .learning-sections,
  body.platform-web .learning-content app-paginated-list {
    display: block;
    width: 100%;
    max-width: var(--w-max);
    margin-right: auto;
    margin-left: auto;
  }
}
body.platform-web .learning-content .section-title {
  font-size: 19px;
  font-weight: 700;
  color: var(--w-text);
}
body.platform-web .learning-content app-banner-carousel {
  display: block;
  border-radius: var(--w-radius);
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(16, 24, 16, 0.1);
}
@media (width >= 1200px) {
  body.platform-web .learning-content .category-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
  }
}
@media (width >= 1200px) {
  body.platform-web .learning-content app-category-card-skeleton .category-grid-skeleton {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
  }
}
body.platform-web .learning-content .category-button {
  max-width: none;
  padding: 16px;
  border: 1px solid var(--w-border);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .learning-content .category-button:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
}
body.platform-web .learning-content .scrollable-tabs {
  overflow: visible;
}
body.platform-web .learning-content .scrollable-tabs-btn {
  --background: var(--w-card);
  --color: var(--w-text);
  border: 1px solid var(--w-border);
}
body.platform-web .learning-content .scrollable-tabs-btn.active {
  --background: var(--w-sage);
  --color: #fff;
  border-color: var(--w-sage);
}
@media (width >= 768px) {
  body.platform-web .learning-content app-last-played-course .last-played-course {
    display: grid;
    grid-template-columns: 360px 1fr;
    align-items: stretch;
  }
  body.platform-web .learning-content .last-played-course-media {
    height: 100%;
    min-height: 220px;
  }
  body.platform-web .learning-content .last-played-course-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 32px 36px;
  }
  body.platform-web .learning-content .last-played-course-content .continue-button {
    width: fit-content;
    --border-radius: 30px;
    padding-right: 8px;
  }
}
body.platform-web .learning-content app-last-played-course .last-played-course {
  border: 1px solid var(--w-border);
}
body.platform-web .cd-content {
  --background: var(--w-canvas);
}
body.platform-web .cd-content .cd-web-back-row {
  display: flex;
  padding: 24px 16px 0;
}
body.platform-web .cd-content .cd-web-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid var(--w-border);
  border-radius: 50%;
  background: var(--w-card);
  color: var(--w-text);
  box-shadow: var(--w-shadow-sm);
  cursor: pointer;
  transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}
body.platform-web .cd-content .cd-web-back-btn ion-icon {
  font-size: 22px;
}
body.platform-web .cd-content .cd-web-back-btn:hover {
  border-color: color-mix(in srgb, var(--w-sage) 45%, var(--w-border));
  background: var(--w-hover, #f5f8f2);
  box-shadow: var(--w-shadow-md);
  transform: translateX(-2px);
}
body.platform-web .cd-content .cd-web-back-btn:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.22);
  outline-offset: 2px;
}
body.platform-web .lrn-sub-header {
  display: none !important;
}
body.platform-web .quiz-page .quiz-back-button {
  display: inline-flex;
}
body.platform-web .review-page .review-back-button {
  display: inline-flex;
}
@media (width >= 980px) {
  body.platform-web .cd-web-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 18px 40px;
    align-items: start;
    max-width: var(--w-max);
    margin: 0 auto;
    padding: 32px 24px 64px;
  }
  body.platform-web .cd-web-grid > .cd-web-back-row {
    grid-column: 1/-1;
    padding: 0;
  }
  body.platform-web .cd-web-grid > .video-section {
    position: sticky;
    top: 80px;
    padding: 16px;
    overflow: hidden;
    border: 1px solid var(--w-border);
    border-radius: calc(var(--w-radius-hero) + 8px);
    background: var(--w-card);
    box-shadow: 0 22px 60px rgba(35, 54, 26, 0.12);
  }
  body.platform-web .course-video-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 4px 4px 16px;
  }
  body.platform-web .course-video-panel-copy {
    min-width: 0;
  }
  body.platform-web .course-video-panel-copy h2 {
    margin: 5px 0 0;
    overflow: hidden;
    color: var(--w-text);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  body.platform-web .course-video-eyebrow {
    color: var(--ion-color-primary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
  }
  body.platform-web .course-video-status {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid rgb(var(--ion-color-primary-rgb)/16%);
    border-radius: 999px;
    background: rgb(var(--ion-color-primary-rgb)/9%);
    color: var(--ion-color-primary-shade);
    font-size: 11px;
    font-weight: 700;
  }
  body.platform-web .course-video-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ion-color-danger);
    box-shadow: 0 0 0 4px rgb(var(--ion-color-danger-rgb)/12%);
  }
  body.platform-web .cd-web-grid .video-container,
  body.platform-web .cd-web-grid .video-player-container,
  body.platform-web .cd-web-grid .video-player-wrapper {
    border-radius: var(--w-radius-hero) !important;
    overflow: hidden;
    box-shadow: var(--w-shadow-lg);
    height: auto !important;
    aspect-ratio: 16/9;
  }
  body.platform-web .cd-web-grid .video-player-wrapper {
    background: #000;
  }
  body.platform-web .cd-web-grid .course-video {
    width: 100%;
    height: 100% !important;
    min-height: 0;
  }
  body.platform-web .cd-web-grid .course-video-pip-btn {
    top: 14px;
    right: 14px;
    width: 44px;
    height: 44px;
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 12px;
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    --background: rgb(10 14 10 / 68%);
    --background-hover: rgb(10 14 10 / 84%);
    --border-radius: 12px;
    --padding-start: 10px;
    --padding-end: 10px;
  }
  body.platform-web .cd-web-grid .video-background::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.4), transparent 50%);
    pointer-events: none;
  }
  body.platform-web .cd-web-grid .play-button-container {
    width: 72px !important;
    height: 72px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    -webkit-backdrop-filter: blur(12px) !important;
            backdrop-filter: blur(12px) !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    transition: var(--transition-bounce) !important;
    cursor: pointer;
  }
  body.platform-web .cd-web-grid .play-button-container:hover {
    transform: scale(1.1);
    background: rgba(255, 255, 255, 0.3) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
  }
  body.platform-web .cd-web-grid .play-icon .play-vector {
    background: #fff !important;
    border: none !important;
  }
  body.platform-web .cd-web-grid > .course-details-section {
    padding: 0;
  }
  body.platform-web .cd-web-grid .course-title {
    font-size: 24px;
    font-weight: 800;
    color: var(--w-text);
    line-height: 1.25;
    margin-bottom: 8px;
  }
  body.platform-web .cd-web-grid .course-instructor {
    font-size: 14px;
    color: var(--w-muted);
  }
  body.platform-web .cd-web-grid .price-pill {
    font-size: 22px;
    font-weight: 800;
  }
  body.platform-web .cd-web-grid .price-pill.free {
    color: var(--w-sage);
  }
  body.platform-web .cd-web-grid .web-course-actions {
    margin-top: 24px;
    margin-bottom: 24px;
  }
  body.platform-web .cd-web-grid .web-price-row {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 16px;
  }
  body.platform-web .cd-web-grid .web-price-row .current-price {
    font-size: 24px;
    font-weight: 800;
    color: var(--w-pink-strong);
  }
  body.platform-web .cd-web-grid .web-price-row .original-price {
    font-size: 16px;
    color: var(--w-muted);
    text-decoration: line-through;
  }
  body.platform-web .cd-web-grid .web-price-row .discount-pill {
    background: rgba(233, 102, 119, 0.1);
    color: var(--w-pink-strong);
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
  }
  body.platform-web .cd-web-grid .web-enroll-btn {
    --background: var(--w-sage);
    --border-radius: var(--w-radius-sm);
    font-weight: 700;
    font-size: 16px;
    height: 48px;
    margin: 0;
  }
  body.platform-web .cd-web-grid .mentor-card,
  body.platform-web .cd-web-grid .curriculum-card,
  body.platform-web .cd-web-grid .review-card {
    background: var(--w-card);
    border: 1px solid var(--w-border);
    border-radius: var(--w-radius-card);
    box-shadow: var(--w-shadow-sm);
  }
}
body.platform-web .category-content,
body.platform-web .search-content {
  --background: var(--w-canvas);
}
body.platform-web .lrn-listing-header app-header-toolbar {
  display: none !important;
}
body.platform-web .lrn-listing-header,
body.platform-web .lrn-listing-header ion-header,
body.platform-web .lrn-listing-header ion-toolbar,
body.platform-web .lrn-listing-header app-header-search {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
}
@media (width >= 768px) {
  body.platform-web .category-content app-virtual-paginated-list,
  body.platform-web .search-content app-virtual-paginated-list,
  body.platform-web .search-content .courses-list-container,
  body.platform-web .search-content .active-filters-section,
  body.platform-web .search-content app-scrollable-tabs,
  body.platform-web .search-content .search-results-title {
    display: block;
    width: 100%;
    max-width: var(--w-max);
    margin: 0 auto;
    padding-left: 24px;
    padding-right: 24px;
  }
  body.platform-web .category-content .courses-grid,
  body.platform-web .search-content .courses-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px;
  }
}
@media (width >= 768px) and (width < 900px) {
  body.platform-web .category-content .courses-grid,
  body.platform-web .search-content .courses-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
body.platform-web .quiz-page,
body.platform-web .attempt-page,
body.platform-web .review-page,
body.platform-web .summary-page {
  --background: var(--w-canvas);
}
@media (width >= 768px) {
  body.platform-web .attempt-page .attempt-body,
  body.platform-web .review-page .review-body,
  body.platform-web .summary-page .summary-body {
    max-width: 800px;
    margin: 40px auto 64px;
    padding: 0;
  }
  body.platform-web .quiz-page .quiz-card {
    max-width: 960px;
    margin: 0 auto;
    padding: clamp(24px, 2.2vw, 32px);
    background: var(--w-card);
    border: 1px solid var(--w-border);
    border-radius: var(--w-radius-hero);
    box-shadow: var(--w-shadow-md);
  }
  body.platform-web .summary-page .summary-body {
    background: var(--w-card);
    border-radius: var(--w-radius-hero);
    border: 1px solid var(--w-border);
    box-shadow: var(--w-shadow-md);
    padding: 40px;
  }
  body.platform-web .attempt-page .question-card,
  body.platform-web .attempt-page .option-item,
  body.platform-web .review-page .question-card,
  body.platform-web .review-page .option-row {
    background: var(--w-card);
    border: 1px solid var(--w-border);
    border-radius: var(--w-radius-card);
    box-shadow: var(--w-shadow-sm);
  }
  body.platform-web ion-footer {
    background: var(--w-canvas);
  }
  body.platform-web ion-footer .quiz-actions,
  body.platform-web ion-footer .footer-actions,
  body.platform-web ion-footer .footer-nav {
    max-width: 800px;
    margin: 0 auto;
    padding: 16px 24px;
  }
}
body.platform-web .community-header app-header-toolbar {
  display: none;
}
body.platform-web .community-header,
body.platform-web .community-header ion-header,
body.platform-web .community-header ion-toolbar,
body.platform-web .community-header app-header-search {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .community-header app-header-search {
  display: block;
  max-width: var(--w-max);
  margin: 0 auto;
  padding: 12px 24px 28px;
}
body.platform-web .community-header .search-container {
  background: var(--w-card) !important;
  border: 1px solid var(--w-border);
  border-radius: 30px;
  box-shadow: 0 4px 14px rgba(123, 164, 101, 0.06);
}
body.platform-web .community-content .create-post-section {
  display: none !important;
}
body.platform-web .community-content {
  --community-hero-pill-background: rgb(255 255 255 / 70%);
  --community-stats-background: rgb(255 255 255 / 86%);
  --background: var(--w-canvas);
  color: var(--w-text);
}
body.platform-web .community-content .community-grid,
body.platform-web .community-content .community-hero,
body.platform-web .community-content .composer,
body.platform-web .community-content .filter-tabs {
  max-width: var(--w-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}
body.platform-web .community-hero {
  position: relative;
  border-radius: var(--w-radius);
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(16, 24, 16, 0.1);
  margin-bottom: 32px;
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  align-items: stretch;
  background: var(--w-card);
  padding: 0;
}
body.platform-web .community-hero .bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
body.platform-web .community-hero .hero-text {
  position: relative;
  z-index: 2;
  padding: 40px 44px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  justify-content: center;
}
body.platform-web .community-hero .hero-text .hero-chip {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 13px;
  font-weight: 700;
  color: var(--w-sage-hover);
  background: var(--community-hero-pill-background);
  border: 1px solid var(--w-border);
  padding: 5px 12px;
  border-radius: 30px;
}
body.platform-web .community-hero .hero-text .eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--w-sage);
}
body.platform-web .community-hero .hero-text h1 {
  font-size: 32px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--w-text);
  margin: 0;
}
body.platform-web .community-hero .hero-text p {
  font-size: 17px;
  color: var(--w-muted);
  font-weight: 500;
  max-width: 30ch;
  line-height: 1.45;
  margin: 0;
}
body.platform-web .community-hero .hero-text .hero-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 8px;
}
body.platform-web .community-hero .hero-text .hero-actions .btn-primary {
  background: var(--w-sage);
  color: var(--ion-color-primary-contrast);
  border: none;
  border-radius: 30px;
  padding: 12px 26px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
body.platform-web .community-hero .hero-text .hero-actions .btn-primary:hover {
  background: var(--w-sage-hover);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(16, 24, 16, 0.08);
}
body.platform-web .community-hero .hero-text .hero-actions .btn-link {
  background: none;
  border: none;
  color: var(--w-sage-hover);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 7px;
}
body.platform-web .community-hero .hero-text .hero-actions .btn-link:hover {
  color: var(--w-sage);
}
body.platform-web .community-hero .hero-stats {
  position: relative;
  z-index: 2;
  place-self: center end;
  margin: 24px 44px 24px 0;
  width: 100%;
  max-width: 260px;
  background: var(--community-stats-background);
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  padding: 20px 22px;
  box-shadow: 0 4px 20px rgba(16, 24, 16, 0.08);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
body.platform-web .community-hero .hero-stats .stats-title {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--w-muted);
}
body.platform-web .community-hero .hero-stats .stat-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
body.platform-web .community-hero .hero-stats .stat-row .stat-ic {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}
body.platform-web .community-hero .hero-stats .stat-row .stat-ic.g {
  background: rgba(123, 164, 101, 0.14);
  color: var(--w-sage);
}
body.platform-web .community-hero .hero-stats .stat-row .stat-ic.b {
  background: rgba(74, 166, 226, 0.14);
  color: #4aa6e2;
}
body.platform-web .community-hero .hero-stats .stat-row .stat-ic.p {
  background: rgba(233, 102, 119, 0.14);
  color: var(--w-pink);
}
body.platform-web .community-hero .hero-stats .stat-row b {
  font-size: 17px;
  font-weight: 800;
  display: block;
  line-height: 1.1;
}
body.platform-web .community-hero .hero-stats .stat-row span {
  font-size: 13px;
  color: var(--w-muted);
  font-weight: 600;
}
body.platform-web .community-content .composer {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 20px rgba(16, 24, 16, 0.06);
  padding: 18px 20px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 16px;
}
body.platform-web .community-content .composer .avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  flex-shrink: 0;
}
body.platform-web .community-content .composer .composer-input {
  flex: 1;
  background: var(--w-canvas);
  border: 1px solid var(--w-border);
  border-radius: 30px;
  padding: 12px 20px;
  color: var(--w-muted);
  font-size: 15px;
  cursor: text;
}
body.platform-web .community-content .composer .composer-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
body.platform-web .community-content .composer .composer-actions .composer-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  color: var(--w-text);
  font-size: 13px;
  font-weight: 700;
  padding: 9px 14px;
  border-radius: 30px;
  cursor: pointer;
  transition: transform 0.3s ease, border-color 0.3s ease;
}
body.platform-web .community-content .composer .composer-actions .composer-btn ion-icon {
  color: var(--w-sage);
  font-size: 16px;
}
body.platform-web .community-content .composer .composer-actions .composer-btn:hover {
  border-color: var(--w-sage);
  transform: translateY(-2px);
}
body.platform-web .community-content .composer .composer-actions .composer-btn.voice ion-icon {
  color: var(--w-pink);
}
body.platform-web .community-content .composer .composer-actions .composer-btn.post {
  background: var(--w-sage);
  color: #fff;
  border-color: var(--w-sage);
}
body.platform-web .community-content .composer .composer-actions .composer-btn.post ion-icon {
  color: #fff;
}
body.platform-web .community-content .composer .composer-actions .composer-btn.post:hover {
  background: var(--w-sage-hover);
}
body.platform-web .community-content .filter-tabs {
  margin-bottom: 24px;
}
body.platform-web .community-content .filter-tabs app-scrollable-tabs .scrollable-tabs {
  overflow: visible;
}
body.platform-web .community-content .filter-tabs app-scrollable-tabs .scrollable-tabs-btn {
  --background: var(--w-card);
  --color: var(--w-text);
  border: 1px solid var(--w-border);
  box-shadow: 0 1px 3px rgba(16, 24, 16, 0.04);
  transition: border-color 0.3s ease;
}
body.platform-web .community-content .filter-tabs app-scrollable-tabs .scrollable-tabs-btn:hover {
  border-color: var(--w-sage);
}
body.platform-web .community-content .filter-tabs app-scrollable-tabs .scrollable-tabs-btn.active {
  --background: var(--w-sage);
  --color: #fff;
  border-color: var(--w-sage);
}
@media (width >= 992px) {
  body.platform-web .community-content .community-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 336px;
    gap: 24px;
    align-items: start;
  }
}
@media (width < 992px) {
  body.platform-web .community-content .community-grid {
    display: flex;
    flex-direction: column;
  }
  body.platform-web .community-hero {
    grid-template-columns: 1fr;
  }
  body.platform-web .community-hero .hero-stats {
    justify-self: stretch;
    max-width: none;
    margin: 0 44px 36px;
  }
}
@media (600px <= width < 992px) {
  body.platform-web .community-hero .hero-stats {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
  }
}
@media (width < 600px) {
  body.platform-web .community-content .composer {
    flex-wrap: wrap;
  }
  body.platform-web .community-content .composer .composer-input {
    flex: 1 1 100%;
    order: -1;
  }
  body.platform-web .community-content .composer .avatar {
    display: none;
  }
  body.platform-web .community-hero .hero-text {
    padding: 28px 24px;
  }
  body.platform-web .community-hero .hero-stats {
    margin: 0 24px 28px;
  }
}
body.platform-web .community-content app-post-card {
  display: block;
  margin-bottom: 24px;
}
body.platform-web .community-content app-post-card .post-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 16px rgba(16, 24, 16, 0.06);
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
body.platform-web .community-content app-post-card .post-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 32px rgba(16, 24, 16, 0.1);
  border-color: var(--w-sage);
}
body.platform-web .community-content app-post-card .post-title {
  font-size: 19px;
  font-weight: 700;
  color: var(--w-text);
  margin: 16px 0 8px;
}
body.platform-web .community-content app-post-card .post-content {
  font-size: 15px;
  line-height: 1.55;
}
body.platform-web .community-content app-post-card .post-actions {
  border-top: 1px solid var(--w-border);
  padding-top: 16px;
  margin-top: 16px;
}
body.platform-web .community-content app-post-card .post-actions .action-btn {
  margin-right: 16px;
  --color: var(--w-muted);
}
body.platform-web .community-content app-post-card .post-actions .action-btn:hover {
  --color: var(--w-sage);
}
body.platform-web .community-content app-post-card .post-actions .reaction-pill {
  margin-left: auto;
  display: flex;
  align-items: center;
  background: var(--w-canvas);
  border: 1px solid var(--w-border);
  border-radius: 30px;
  overflow: hidden;
}
body.platform-web .community-content app-post-card .post-actions .reaction-pill .reaction-btn {
  padding: 7px 16px;
  --padding-start: 16px;
  --padding-end: 16px;
  color: var(--w-text);
  font-weight: 700;
}
body.platform-web .community-content app-post-card .post-actions .reaction-pill .reaction-btn.reaction-active {
  color: var(--w-sage);
}
body.platform-web .community-content app-post-card .post-actions .reaction-pill .divider {
  width: 1px;
  align-self: stretch;
  background: var(--w-border);
}
body.platform-web .community-content app-post-card app-image-preview {
  display: block;
  margin-top: 16px;
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 16/9;
}
body.platform-web .community-content app-post-card app-image-preview .image-preview-container {
  height: 100% !important;
}
body.platform-web .community-content app-post-card app-image-preview ion-img {
  width: 100%;
  height: 100%;
}
body.platform-web .community-content app-post-card app-image-preview ion-img::part(image) {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body.platform-web .community-content .sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: sticky;
  top: 88px;
}
body.platform-web .community-content .sidebar .side-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 16px rgba(16, 24, 16, 0.06);
  padding: 20px;
}
body.platform-web .community-content .sidebar .side-card h4 {
  font-size: 19px;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 16px;
}
body.platform-web .community-content .sidebar .side-card.standing {
  position: relative;
  overflow: hidden;
  border: none;
  color: #fff;
  background: linear-gradient(135deg, #6b9a57 0%, #3f6b36 100%);
  padding: 24px;
}
body.platform-web .community-content .sidebar .side-card.standing .glow {
  position: absolute;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  top: -60px;
  right: -40px;
}
body.platform-web .community-content .sidebar .side-card.standing .eyebrow {
  position: relative;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
}
body.platform-web .community-content .sidebar .side-card.standing .medal-row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 12px 0 16px;
}
body.platform-web .community-content .sidebar .side-card.standing .medal-row .medal {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  color: var(--w-gold);
  flex-shrink: 0;
}
body.platform-web .community-content .sidebar .side-card.standing .medal-row .badge-name {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
}
body.platform-web .community-content .sidebar .side-card.standing .medal-row .pts {
  font-size: 13px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
  margin-top: 2px;
}
body.platform-web .community-content .sidebar .side-card.standing .next-meta {
  position: relative;
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.92);
  margin-bottom: 8px;
}
body.platform-web .community-content .sidebar .side-card.standing .track {
  position: relative;
  height: 8px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.22);
  overflow: hidden;
}
body.platform-web .community-content .sidebar .side-card.standing .track .fill {
  height: 100%;
  width: 82%;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--w-lime), #eaf4df);
}
body.platform-web .community-content .sidebar .side-card.standing .rewards-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
}
body.platform-web .community-content .sidebar .side-card.standing .rewards-link ion-icon {
  transition: transform 0.3s ease;
}
body.platform-web .community-content .sidebar .side-card.standing .rewards-link:hover ion-icon {
  transform: translateX(4px);
}
body.platform-web .community-content .sidebar .rule {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--w-border);
}
body.platform-web .community-content .sidebar .rule:last-of-type {
  border-bottom: none;
}
body.platform-web .community-content .sidebar .rule ion-icon {
  color: var(--w-sage);
  font-size: 18px;
  margin-top: 2px;
}
body.platform-web .community-content .sidebar .rule b {
  display: block;
  font-size: 15px;
  font-weight: 700;
}
body.platform-web .community-content .sidebar .rule span {
  font-size: 13px;
  color: var(--w-muted);
  line-height: 1.4;
}
body.platform-web .community-content .sidebar .side-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
  font-size: 15px;
  font-weight: 700;
  color: var(--w-sage);
  text-decoration: none;
}
body.platform-web .community-content .sidebar .side-link:hover {
  color: var(--w-sage-hover);
}
body.platform-web .community-content .sidebar .contrib {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
}
body.platform-web .community-content .sidebar .contrib + .contrib {
  border-top: 1px solid var(--w-border);
}
body.platform-web .community-content .sidebar .contrib .rank {
  width: 20px;
  text-align: center;
  font-size: 13px;
  font-weight: 800;
  color: var(--w-muted);
  flex-shrink: 0;
}
body.platform-web .community-content .sidebar .contrib .avatar {
  width: 38px;
  height: 38px;
  font-size: 13px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
}
body.platform-web .community-content .sidebar .contrib .c-meta {
  flex: 1;
  min-width: 0;
}
body.platform-web .community-content .sidebar .contrib .c-name {
  font-size: 15px;
  font-weight: 700;
}
body.platform-web .community-content .sidebar .contrib .c-badge {
  font-size: 13px;
  color: var(--w-muted);
  font-weight: 600;
}
body.platform-web .community-content .sidebar .contrib .c-pts {
  font-size: 13px;
  font-weight: 800;
  color: var(--w-sage);
  display: flex;
  align-items: center;
  gap: 5px;
}
body.platform-web .community-content .sidebar .topics {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
body.platform-web .community-content .sidebar .topics .topic {
  font-size: 13px;
  font-weight: 700;
  color: var(--w-sage-hover);
  background: var(--w-canvas);
  border: 1px solid var(--w-border);
  padding: 7px 13px;
  border-radius: 30px;
  cursor: pointer;
  transition: transform 0.3s ease, border-color 0.3s ease;
}
body.platform-web .community-content .sidebar .topics .topic:hover {
  border-color: var(--w-sage);
  color: var(--w-sage);
  transform: translateY(-1px);
}
body.platform-web .community-content .sidebar .topics .topic .n {
  color: var(--w-muted);
  font-weight: 600;
  margin-left: 5px;
}
body.platform-web[class~=dark] .community-header,
body.platform-web[class~=dark] .community-content {
  --w-sage: var(--ion-color-primary);
  --w-sage-hover: var(--ion-color-primary-tint);
}
body.platform-web[class~=dark] .community-header,
body.platform-web[class~=dark] .community-header ion-header,
body.platform-web[class~=dark] .community-header ion-toolbar,
body.platform-web[class~=dark] .community-header app-header-search {
  --background: var(--app-canvas) !important;
  background: var(--app-canvas) !important;
}
body.platform-web[class~=dark] .community-header app-header-search .search-container {
  background: var(--app-surface) !important;
  border-color: var(--app-border);
  box-shadow: var(--w-shadow-sm);
}
body.platform-web[class~=dark] .community-header app-header-search ion-searchbar {
  --background: var(--app-surface-muted);
  --color: var(--app-text);
  --icon-color: var(--ion-color-primary);
  --placeholder-color: var(--app-text-muted);
}
body.platform-web[class~=dark] .community-header .community-back-btn {
  border-color: var(--app-border);
  background: var(--app-surface);
  color: var(--ion-color-primary);
  box-shadow: var(--w-shadow-sm);
}
body.platform-web[class~=dark] .community-content {
  --community-hero-pill-background: var(--app-surface-raised);
  --community-stats-background: var(--app-surface-raised);
  --background: var(--app-canvas);
  color: var(--app-text);
}
body.platform-web[class~=dark] .community-content::part(scroll) {
  background: var(--app-canvas);
}
body.platform-web[class~=dark] .community-hero {
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  box-shadow: var(--w-shadow-lg);
}
body.platform-web[class~=dark] .community-hero .bg rect {
  fill: var(--app-surface-muted);
}
body.platform-web[class~=dark] .community-hero .hero-text .hero-chip {
  border-color: var(--app-border);
  background: var(--app-surface-raised);
  color: var(--ion-color-primary-tint);
}
body.platform-web[class~=dark] .community-hero .hero-text .eyebrow {
  color: var(--ion-color-primary);
}
body.platform-web[class~=dark] .community-hero .hero-text h1 {
  color: var(--app-text);
}
body.platform-web[class~=dark] .community-hero .hero-text p {
  color: var(--app-text-muted);
}
body.platform-web[class~=dark] .community-hero .hero-text .hero-actions .btn-primary {
  background: var(--ion-color-primary);
  color: var(--ion-color-primary-contrast);
}
body.platform-web[class~=dark] .community-hero .hero-text .hero-actions .btn-primary:hover {
  background: var(--ion-color-primary-tint);
}
body.platform-web[class~=dark] .community-hero .hero-text .hero-actions .btn-link {
  color: var(--ion-color-primary-tint);
}
body.platform-web[class~=dark] .community-hero .hero-text .hero-actions .btn-link:hover {
  color: var(--ion-color-primary);
}
body.platform-web[class~=dark] .community-hero .hero-stats {
  border-color: var(--app-border);
  background: var(--app-surface-raised);
  color: var(--app-text);
  box-shadow: var(--w-shadow-md);
}
body.platform-web[class~=dark] .community-hero .hero-stats .stats-title,
body.platform-web[class~=dark] .community-hero .hero-stats .stat-row span {
  color: var(--app-text-muted);
}
body.platform-web[class~=dark] .community-hero .hero-stats .stat-row b {
  color: var(--app-text);
}
body.platform-web[class~=dark] .community-content .composer .composer-btn.post,
body.platform-web[class~=dark] .community-content .filter-tabs .scrollable-tabs-btn.active {
  background: var(--ion-color-primary);
  color: var(--ion-color-primary-contrast);
  --background: var(--ion-color-primary);
  --color: var(--ion-color-primary-contrast);
}
body.platform-web .profile-header {
  display: none;
}
body.platform-web .profile-content {
  --background: var(--w-canvas);
}
body.platform-web .profile-content .profile-stats-section {
  display: none;
}
body.platform-web .profile-content .profile-web-grid {
  max-width: var(--w-max);
  margin: 0 auto;
  padding: 32px 24px 64px;
}
body.platform-web .profile-content .profile-web-sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
body.platform-web .profile-content .profile-web-main {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}
@media (width >= 768px) {
  body.platform-web .profile-content .profile-web-grid {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    column-gap: 48px;
    align-items: start;
  }
  body.platform-web .profile-content .profile-web-sidebar {
    position: sticky;
    top: 24px;
    margin-bottom: 0;
  }
}
body.platform-web .profile-content .profile-web-identity-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 16px rgba(16, 24, 16, 0.06);
  padding: 32px 24px;
  text-align: center;
}
body.platform-web .profile-content .profile-web-avatar {
  width: 140px;
  height: 140px;
  margin: 0 auto 16px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid var(--w-sage);
}
body.platform-web .profile-content .profile-web-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.platform-web .profile-content .profile-web-name {
  font-size: 22px;
  font-weight: 700;
  color: var(--w-text);
  margin: 0 0 4px;
}
body.platform-web .profile-content .profile-web-email {
  font-size: 13px;
  color: var(--w-muted);
  margin: 0 0 20px;
  overflow-wrap: break-word;
}
body.platform-web .profile-content .profile-web-edit-btn {
  --background: var(--w-lime);
  --background-hover: var(--w-sage);
  --background-activated: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 10px;
  --box-shadow: none;
  font-weight: 700;
  margin: 0;
}
body.platform-web .profile-content .profile-web-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
body.platform-web .profile-content .profile-web-stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 1px 3px rgba(16, 24, 16, 0.06);
  padding: 20px 12px;
}
body.platform-web .profile-content .profile-web-stat-number {
  font-size: 32px;
  font-weight: 800;
  line-height: 1;
  color: var(--w-sage);
}
body.platform-web .profile-content .profile-web-stat-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--w-muted);
}
body.platform-web .profile-content .profile-card,
body.platform-web .profile-content .profile-premium-card,
body.platform-web .profile-content .profile-referral-card {
  --background: var(--w-card);
  margin: 0;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 16px rgba(16, 24, 16, 0.06);
}
body.platform-web .profile-content .profile-premium-card {
  background: var(--w-card) !important;
}
body.platform-web .profile-content .profile-premium-card ion-card-title {
  color: var(--w-text);
  font-size: 19px;
  font-weight: 700;
}
body.platform-web .profile-content .profile-premium-card .profile-premium-title ion-icon {
  width: 32px;
  height: 32px;
  padding: 7px;
  border-radius: 8px;
  background: rgba(123, 164, 101, 0.1);
  font-size: 18px;
  color: var(--w-sage) !important;
  opacity: 1;
}
body.platform-web .profile-content .profile-premium-card .profile-premium-date {
  color: var(--w-muted);
  font-size: 14px;
}
body.platform-web .profile-content .profile-premium-card ion-badge {
  --background: var(--w-lime);
  --color: #1a1d1a;
  background: var(--w-lime) !important;
  color: #1a1d1a !important;
  font-weight: 700;
}
body.platform-web .profile-content .profile-premium-card .profile-premium-manage-btn {
  --background: var(--w-lime);
  --background-hover: var(--w-sage);
  --color: #1a1d1a;
  --border-radius: 10px;
  --box-shadow: none;
  font-weight: 700;
}
body.platform-web .profile-content .profile-referral-card .profile-referral-icon {
  color: var(--w-sage);
  background-color: rgba(123, 164, 101, 0.12);
}
body.platform-web .profile-content .profile-referral-card .profile-referral-icon ion-icon,
body.platform-web .profile-content .profile-referral-card .profile-referral-title ion-icon {
  color: var(--w-sage) !important;
  opacity: 1;
}
body.platform-web .profile-content .profile-referral-card ion-card-title {
  color: var(--w-text);
  font-size: 19px;
  font-weight: 700;
}
body.platform-web .profile-content .profile-referral-card .profile-referral-link {
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 600;
}
body.platform-web .profile-content .profile-referral-card .profile-referral-code {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  padding: 20px;
  margin-bottom: 16px;
  background: var(--w-canvas);
  border: 1px solid var(--w-border);
  border-radius: 12px;
  text-align: center;
}
body.platform-web .profile-content .profile-referral-card .profile-referral-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--w-muted);
}
body.platform-web .profile-content .profile-referral-card .profile-referral-value {
  font-family: "SF Mono", "Cascadia Code", "Roboto Mono", monospace;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--w-sage);
}
body.platform-web .profile-content .profile-menu-list,
body.platform-web .profile-content .profile-notification-list,
body.platform-web .profile-content .profile-actions-list {
  margin: 0;
  padding: 0;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 16px rgba(16, 24, 16, 0.06);
  overflow: hidden;
}
body.platform-web .profile-content .profile-menu-item,
body.platform-web .profile-content .profile-notification-item,
body.platform-web .profile-content .profile-actions-item {
  --background: transparent;
  --border-color: var(--w-border);
  --padding-start: 20px;
  --inner-padding-end: 20px;
  --min-height: 56px;
}
body.platform-web .profile-content .profile-menu-item:hover,
body.platform-web .profile-content .profile-notification-item:hover,
body.platform-web .profile-content .profile-actions-item:hover {
  --background: var(--w-canvas);
}
body.platform-web .profile-content .profile-menu-item-icon,
body.platform-web .profile-content .profile-actions-icon {
  color: var(--w-sage);
  font-size: 20px;
}
body.platform-web .profile-content .profile-menu-item-arrow,
body.platform-web .profile-content .profile-actions-arrow {
  color: var(--w-muted);
  font-size: 18px;
}
body.platform-web .profile-content .profile-actions-icon--danger,
body.platform-web .profile-content .profile-actions-label--danger,
body.platform-web .profile-content .profile-actions-arrow--danger {
  color: var(--w-pink);
}
body.platform-web .profile-content .profile-switch-btn {
  --background: var(--w-card);
  --background-hover: var(--w-canvas);
  --color: var(--w-sage);
  --border-radius: 10px;
  --box-shadow: none;
  --border-width: 1px;
  --border-style: solid;
  --border-color: var(--w-sage);
  font-weight: 700;
}
body.platform-web .profile-content .profile-version {
  color: var(--w-muted);
  font-size: 13px;
  text-align: center;
}
@media (width < 768px) {
  body.platform-web .profile-content .profile-web-stats {
    max-width: 420px;
    margin: 0 auto;
  }
}
@media (width >= 980px) {
  body.platform-web app-video-player .hide-on-web {
    display: none !important;
  }
}
@media (width >= 980px) {
  body.platform-web .video-page {
    --background: var(--w-canvas);
  }
  body.platform-web .video-page::part(scroll) {
    display: block;
  }
  body.platform-web .video-page .web-layout-wrapper.is-web {
    max-width: var(--w-max);
    margin: 0 auto;
    padding: 40px 24px;
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 40px;
    align-items: start;
  }
  body.platform-web .video-page .web-back-bar {
    grid-column: 1/-1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--w-muted);
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 24px;
    cursor: pointer;
    transition: color 0.2s ease;
  }
  body.platform-web .video-page .web-back-bar:hover {
    color: var(--w-sage);
  }
  body.platform-web .video-page .web-back-bar svg {
    width: 20px;
    height: 20px;
  }
  body.platform-web .video-page .video-section {
    background: transparent !important;
    border-radius: var(--w-radius-main);
    overflow: hidden;
    box-shadow: var(--w-shadow-lg);
    margin-bottom: 0;
  }
  body.platform-web .video-page .video-wrapper {
    aspect-ratio: 16/9;
    height: auto !important;
    background: #000;
  }
  body.platform-web .video-page .video-player {
    object-fit: contain;
    width: 100%;
    height: 100%;
  }
  body.platform-web .video-page .sidebar-section {
    display: flex;
    flex-direction: column;
    gap: 24px;
    position: sticky;
    top: 40px;
  }
  body.platform-web .video-page .content-section {
    padding: 0;
  }
  body.platform-web .video-page .content-card {
    background: var(--w-card);
    border-radius: var(--w-radius-card);
    box-shadow: var(--w-shadow-md);
    padding: 32px;
    border: 1px solid var(--w-border);
    display: flex;
    flex-direction: column;
  }
  body.platform-web .video-page .section-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--w-muted);
    letter-spacing: 1px;
    text-transform: uppercase;
  }
  body.platform-web .video-page .course-title {
    font-size: 26px;
    font-weight: 800;
    color: var(--w-text);
    margin: 8px 0 24px;
    line-height: 1.2;
  }
  body.platform-web .video-page .meta-row {
    gap: 24px;
    margin-bottom: 32px;
  }
  body.platform-web .video-page .meta-item {
    font-size: 15px;
    color: var(--w-muted);
    font-weight: 500;
    gap: 8px;
  }
  body.platform-web .video-page .meta-item svg {
    width: 20px;
    height: 20px;
  }
  body.platform-web .video-page .meta-dot {
    background-color: var(--w-border);
    width: 6px;
    height: 6px;
  }
  body.platform-web .video-page .action-row {
    margin-top: auto;
  }
  body.platform-web .video-page ion-button {
    --border-radius: 8px;
    height: 48px;
    font-weight: 700;
    font-size: 16px;
    transition: var(--transition-bounce);
  }
  body.platform-web .video-page ion-button:hover {
    transform: translateY(-2px);
  }
  body.platform-web .video-page .btn-complete {
    --background: var(--w-muted);
    opacity: 0.8;
  }
  body.platform-web .video-page .btn-incomplete {
    --background: var(--w-sage);
    --box-shadow: 0 4px 12px rgb(123 164 101 / 30%);
  }
  body.platform-web .video-page .btn-incomplete:hover {
    --background: var(--w-sage-hover);
  }
  body.platform-web .video-page .content-divider {
    display: none;
  }
  body.platform-web .video-page app-lesson-navigation {
    width: 100%;
  }
  body.platform-web .video-page app-lesson-navigation ion-footer {
    position: static;
    background: transparent;
    border: none;
  }
  body.platform-web .video-page app-lesson-navigation .footer-nav {
    display: flex;
    gap: 16px;
    padding: 0;
    background: transparent;
  }
  body.platform-web .video-page app-lesson-navigation .footer-nav ion-button {
    flex: 1;
    margin: 0;
    --border-radius: 8px;
    --border-width: 2px;
    --border-color: var(--w-sage);
    --color: var(--w-sage);
    height: 44px;
  }
  body.platform-web .video-page app-lesson-navigation .footer-nav ion-button:disabled {
    --border-color: var(--w-border);
    --color: var(--w-muted);
  }
  body.platform-web .video-page app-lesson-navigation .footer-nav ion-button:not(:disabled):hover {
    --background: rgb(123 164 101 / 5%);
  }
}
@media (width >= 768px) {
  body.platform-web .learning-content app-banner-carousel,
  body.platform-web .learning-content app-category-list,
  body.platform-web .learning-content .learning-sections,
  body.platform-web .learning-content app-paginated-list {
    display: block;
    width: 100%;
    max-width: var(--w-max);
    margin-right: auto;
    margin-left: auto;
    padding-left: 24px;
    padding-right: 24px;
  }
  body.platform-web .learning-content {
    --padding-start: 0;
    --padding-end: 0;
  }
}
body.platform-web .learning-content .courses,
body.platform-web .learning-content .recommended-courses {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  align-items: stretch;
  gap: 16px;
  padding: 0;
}
@media (width >= 980px) {
  body.platform-web .learning-content .courses,
  body.platform-web .learning-content .recommended-courses {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px;
  }
}
body.platform-web .learning-content app-course-card .course-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}
body.platform-web .learning-content app-course-card .course-card .card-wrapper {
  flex-direction: column !important;
  height: 100%;
}
body.platform-web .learning-content app-course-card .course-card .card-image {
  width: 100% !important;
  min-width: 0 !important;
  height: auto;
  aspect-ratio: 16/9;
  padding: 0 !important;
  flex-shrink: 0;
}
body.platform-web .learning-content app-course-card .course-card .card-image app-image-preview {
  display: block;
  height: 100%;
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .learning-content app-course-card .course-card .card-image .course-image::part(image) {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .learning-content app-course-card .course-card .card-content {
  gap: 12px;
  padding: 16px !important;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
body.platform-web .learning-content app-course-card .course-card .card-content .card-body {
  flex: 1;
}
body.platform-web .learning-content app-course-card .course-card .card-content .content-header {
  min-height: 24px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .course-title {
  min-height: 48px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .course-instructor {
  min-height: 18px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .course-stats {
  min-height: 18px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .card-footer {
  min-height: 74px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .progress-container {
  min-height: 32px;
}
body.platform-web .learning-content app-course-card .course-card .card-content .start-button {
  margin-top: auto;
  width: 100% !important;
}
body.platform-web .learning-content app-course-card {
  display: flex;
  height: 100%;
  min-height: 100%;
}
body.platform-web .learning-content app-course-card .course-card,
body.platform-web .learning-content app-last-played-course .last-played-card {
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06) !important;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .learning-content app-course-card .course-card:hover,
body.platform-web .learning-content app-last-played-course .last-played-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06) !important;
}
body.platform-web .learning-content app-course-card .current-price {
  color: var(--w-pink-strong);
  font-weight: 800;
}
body.platform-web .learning-content app-course-card .course-card:focus-visible,
body.platform-web .learning-content app-last-played-course .last-played-card:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .learning-header,
body.platform-web .lrn-listing-header,
body.platform-web .search-course-header,
body.platform-web .shop-header,
body.platform-web .section-products-header {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  max-width: var(--w-max);
  margin: 24px auto 0;
  padding: 0;
}
@media (width >= 768px) {
  body.platform-web .learning-header,
  body.platform-web .lrn-listing-header,
  body.platform-web .search-course-header,
  body.platform-web .shop-header,
  body.platform-web .section-products-header {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    margin-bottom: 24px;
  }
}
body.platform-web .learning-header,
body.platform-web .learning-header ion-header,
body.platform-web .learning-header ion-toolbar,
body.platform-web .learning-header app-header-search,
body.platform-web .lrn-listing-header,
body.platform-web .lrn-listing-header ion-header,
body.platform-web .lrn-listing-header ion-toolbar,
body.platform-web .lrn-listing-header app-header-search,
body.platform-web .search-course-header,
body.platform-web .search-course-header ion-header,
body.platform-web .search-course-header ion-toolbar,
body.platform-web .search-course-header app-header-search,
body.platform-web .shop-header,
body.platform-web .shop-header ion-header,
body.platform-web .shop-header ion-toolbar,
body.platform-web .shop-header app-header-search,
body.platform-web .section-products-header,
body.platform-web .section-products-header ion-header,
body.platform-web .section-products-header ion-toolbar,
body.platform-web .section-products-header app-header-search {
  --background: var(--w-canvas) !important;
  background: var(--w-canvas) !important;
  box-shadow: none !important;
  --border-width: 0;
}
body.platform-web .learning-header ion-header,
body.platform-web .lrn-listing-header ion-header,
body.platform-web .search-course-header ion-header,
body.platform-web .shop-header ion-header,
body.platform-web .section-products-header ion-header {
  position: static !important;
  display: contents !important;
}
body.platform-web .learning-header app-header-toolbar,
body.platform-web .lrn-listing-header app-header-toolbar,
body.platform-web .search-course-header app-header-toolbar,
body.platform-web .shop-header app-header-toolbar,
body.platform-web .section-products-header app-header-toolbar {
  display: block;
  flex: 1;
}
body.platform-web .learning-header app-header-toolbar ion-toolbar,
body.platform-web .lrn-listing-header app-header-toolbar ion-toolbar,
body.platform-web .search-course-header app-header-toolbar ion-toolbar,
body.platform-web .shop-header app-header-toolbar ion-toolbar,
body.platform-web .section-products-header app-header-toolbar ion-toolbar {
  --padding-start: 0;
  --padding-end: 0;
}
body.platform-web .learning-header app-header-toolbar ion-toolbar ion-title,
body.platform-web .lrn-listing-header app-header-toolbar ion-toolbar ion-title,
body.platform-web .search-course-header app-header-toolbar ion-toolbar ion-title,
body.platform-web .shop-header app-header-toolbar ion-toolbar ion-title,
body.platform-web .section-products-header app-header-toolbar ion-toolbar ion-title {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: var(--w-text-dark) !important;
  text-align: left !important;
  padding: 0 24px !important;
}
@media (width >= 768px) {
  body.platform-web .learning-header app-header-toolbar ion-toolbar ion-title,
  body.platform-web .lrn-listing-header app-header-toolbar ion-toolbar ion-title,
  body.platform-web .search-course-header app-header-toolbar ion-toolbar ion-title,
  body.platform-web .shop-header app-header-toolbar ion-toolbar ion-title,
  body.platform-web .section-products-header app-header-toolbar ion-toolbar ion-title {
    padding: 0 !important;
  }
}
body.platform-web .learning-header app-header-toolbar ion-toolbar ion-buttons[slot=start],
body.platform-web .lrn-listing-header app-header-toolbar ion-toolbar ion-buttons[slot=start],
body.platform-web .search-course-header app-header-toolbar ion-toolbar ion-buttons[slot=start],
body.platform-web .shop-header app-header-toolbar ion-toolbar ion-buttons[slot=start],
body.platform-web .section-products-header app-header-toolbar ion-toolbar ion-buttons[slot=start] {
  display: none !important;
}
body.platform-web .learning-header app-header-search,
body.platform-web .lrn-listing-header app-header-search,
body.platform-web .search-course-header app-header-search,
body.platform-web .shop-header app-header-search,
body.platform-web .section-products-header app-header-search {
  display: block;
  width: 100%;
  margin: 0;
  padding: 12px 24px 24px;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (width >= 768px) {
  body.platform-web .learning-header app-header-search,
  body.platform-web .lrn-listing-header app-header-search,
  body.platform-web .search-course-header app-header-search,
  body.platform-web .shop-header app-header-search,
  body.platform-web .section-products-header app-header-search {
    width: 300px;
    padding: 0;
  }
  body.platform-web .learning-header app-header-search:focus-within,
  body.platform-web .lrn-listing-header app-header-search:focus-within,
  body.platform-web .search-course-header app-header-search:focus-within,
  body.platform-web .shop-header app-header-search:focus-within,
  body.platform-web .section-products-header app-header-search:focus-within {
    width: 380px;
  }
}
body.platform-web .learning-header .search-container,
body.platform-web .lrn-listing-header .search-container,
body.platform-web .search-course-header .search-container,
body.platform-web .shop-header .search-container,
body.platform-web .section-products-header .search-container {
  background: var(--w-card) !important;
  border: 1px solid var(--w-border);
  border-radius: 30px;
  box-shadow: 0 4px 14px rgba(123, 164, 101, 0.06);
  transition: box-shadow 0.3s ease, border-color 0.3s ease;
}
body.platform-web .learning-header .search-container:focus-within,
body.platform-web .lrn-listing-header .search-container:focus-within,
body.platform-web .search-course-header .search-container:focus-within,
body.platform-web .shop-header .search-container:focus-within,
body.platform-web .section-products-header .search-container:focus-within {
  border-color: var(--w-sage);
  box-shadow: 0 6px 20px rgba(123, 164, 101, 0.15);
}
body.platform-web .learning-header .search-container ion-searchbar,
body.platform-web .lrn-listing-header .search-container ion-searchbar,
body.platform-web .search-course-header .search-container ion-searchbar,
body.platform-web .shop-header .search-container ion-searchbar,
body.platform-web .section-products-header .search-container ion-searchbar {
  --background: transparent !important;
  --box-shadow: none !important;
  padding-inline: 8px !important;
}
body.platform-web .category-content {
  --background: var(--w-canvas);
  --padding-start: 0;
  --padding-end: 0;
  --padding-bottom: 0;
}
body.platform-web .category-content::part(scroll) {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow-x: hidden;
}
body.platform-web .category-content app-paginated-list {
  display: block;
  width: 100%;
  max-width: var(--w-max);
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
body.platform-web .category-content .courses-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 16px;
  padding: 0 0 40px;
}
@media (width >= 980px) {
  body.platform-web .category-content .courses-grid {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px;
  }
}
body.platform-web .category-content app-course-card .course-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06) !important;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .category-content app-course-card .course-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06) !important;
}
body.platform-web .category-content app-course-card .course-card .card-wrapper {
  flex-direction: column !important;
  height: 100%;
}
body.platform-web .category-content app-course-card .course-card .card-image {
  width: 100% !important;
  min-width: 0 !important;
  height: auto;
  aspect-ratio: 16/10;
  padding: 0 !important;
  flex-shrink: 0;
}
body.platform-web .category-content app-course-card .course-card .card-image app-image-preview {
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .category-content app-course-card .course-card .card-image .course-image::part(image) {
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .category-content app-course-card .course-card .card-content {
  padding: 16px !important;
  flex: 1;
  display: flex;
  flex-direction: column;
}
body.platform-web .category-content app-course-card .course-card .card-content .start-button {
  margin-top: auto;
  width: 100% !important;
}
body.platform-web .category-content app-course-card .course-card .current-price {
  color: var(--w-pink-strong);
  font-weight: 800;
}
body.platform-web .category-content app-course-card .course-card:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .category-content app-site-footer {
  display: block;
  margin-top: auto;
}
body.platform-web .category-content app-site-footer .site-footer {
  margin-top: 0;
}
body.platform-web .search-content {
  --background: var(--w-canvas);
}
body.platform-web .search-content app-scrollable-tabs,
body.platform-web .search-content .search-results-title,
body.platform-web .search-content .active-filters-section {
  margin-bottom: 24px;
}
body.platform-web .search-content app-paginated-list {
  display: block;
  width: 100%;
  max-width: var(--w-max);
  margin-right: auto;
  margin-left: auto;
  padding-left: 24px;
  padding-right: 24px;
}
body.platform-web .search-content .courses-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 16px;
  padding: 0 0 40px;
}
@media (width >= 980px) {
  body.platform-web .search-content .courses-grid {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px;
  }
}
body.platform-web .search-content app-course-card {
  display: flex;
  height: 100%;
  min-height: 100%;
}
body.platform-web .search-content app-course-card .course-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 8px 22px rgba(123, 164, 101, 0.06) !important;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
body.platform-web .search-content app-course-card .course-card:hover {
  transform: translateY(-4px);
  border-color: var(--w-sage);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06) !important;
}
body.platform-web .search-content app-course-card .course-card .card-wrapper {
  flex-direction: column !important;
  height: 100%;
}
body.platform-web .search-content app-course-card .course-card .card-image {
  width: 100% !important;
  min-width: 0 !important;
  height: auto;
  aspect-ratio: 16/9;
  padding: 0 !important;
  flex-shrink: 0;
}
body.platform-web .search-content app-course-card .course-card .card-image app-image-preview {
  display: block;
  height: 100%;
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .search-content app-course-card .course-card .card-image .course-image::part(image) {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .search-content app-course-card .course-card .card-content {
  gap: 12px;
  padding: 16px !important;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
body.platform-web .search-content app-course-card .course-card .card-content .card-body {
  flex: 1;
}
body.platform-web .search-content app-course-card .course-card .card-content .content-header {
  min-height: 24px;
}
body.platform-web .search-content app-course-card .course-card .card-content .course-title {
  min-height: 48px;
}
body.platform-web .search-content app-course-card .course-card .card-content .course-instructor {
  min-height: 18px;
}
body.platform-web .search-content app-course-card .course-card .card-content .course-stats {
  min-height: 18px;
}
body.platform-web .search-content app-course-card .course-card .card-content .card-footer {
  min-height: 74px;
}
body.platform-web .search-content app-course-card .course-card .card-content .progress-container {
  min-height: 32px;
}
body.platform-web .search-content app-course-card .course-card .card-content .start-button {
  margin-top: auto;
  width: 100% !important;
}
body.platform-web .search-content app-course-card .course-card .current-price {
  color: var(--w-pink-strong);
  font-weight: 800;
}
body.platform-web .search-content app-course-card .course-card:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .find-doctor-content--web {
  --background: var(--w-canvas);
  --padding-start: 0;
  --padding-end: 0;
  --padding-bottom: 0;
}
body.platform-web .find-doctor-content--web::part(scroll) {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow-x: hidden;
}
body.platform-web .find-doctor-content--web .find-doctor-web-shell {
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  width: 100%;
  max-width: var(--w-max);
  margin: 0 auto;
  padding: 18px 24px 0;
}
body.platform-web .find-doctor-content--web .find-doctor-web-top {
  display: grid;
  grid-template-columns: 56px 1fr 56px;
  align-items: center;
  margin-bottom: 18px;
}
body.platform-web .find-doctor-content--web .find-doctor-web-back {
  --padding-start: 0;
  --padding-end: 0;
  --border-radius: 50%;
  --color: var(--ion-text-color);
  width: 40px;
  height: 40px;
  margin: 0;
  justify-self: start;
}
body.platform-web .find-doctor-content--web .find-doctor-web-back ion-icon {
  font-size: 32px;
}
body.platform-web .find-doctor-content--web .find-doctor-web-top-spacer {
  width: 56px;
  height: 40px;
  justify-self: end;
}
body.platform-web .find-doctor-content--web .find-doctor-web-title {
  margin: 0;
  font-family: var(--font-subheading);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--w-text-dark);
  text-align: center;
}
body.platform-web .find-doctor-content--web .find-doctor-web-search {
  background: transparent;
  padding: 0;
  margin-bottom: 22px;
}
body.platform-web .find-doctor-content--web .find-doctor-web-search .custom-searchbar {
  width: 100%;
  max-width: none;
  height: 56px;
  padding: 0;
  --background: #fff;
  --box-shadow: 0 6px 18px rgb(0 0 0 / 8%);
  --border-radius: 999px;
  --color: var(--w-text);
  --icon-color: var(--w-sage);
  --placeholder-color: var(--w-muted);
}
body.platform-web .find-doctor-content--web .find-doctor-sections--web {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
body.platform-web .find-doctor-content--web .find-doctor-quick-links-skeleton-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, max-content));
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: none;
}
body.platform-web .find-doctor-content--web .find-doctor-quick-links-skeleton-grid::-webkit-scrollbar {
  display: none;
}
body.platform-web .find-doctor-content--web .find-doctor-quick-links-skeleton-grid app-quick-links-category-skeleton .quick-links-category-skeleton {
  flex-direction: row;
  justify-content: center;
  gap: 10px;
  min-height: 42px;
  min-width: 120px;
  padding: 10px 18px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}
body.platform-web .find-doctor-content--web .find-doctor-quick-links-skeleton-grid app-quick-links-category-skeleton .quick-links-category-skeleton__icon {
  width: 0.95rem;
  height: 0.95rem;
  flex-shrink: 0;
}
body.platform-web .find-doctor-content--web .find-doctor-quick-links-skeleton-grid app-quick-links-category-skeleton .quick-links-category-skeleton__label {
  width: 56px;
  height: 0.75rem;
}
body.platform-web .find-doctor-content--web app-quick-links {
  display: block;
  width: 100%;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  margin: 0;
  gap: 10px;
  max-height: 56px;
  overflow: hidden;
  padding: 2px 2px 6px;
}
body.platform-web .find-doctor-content--web app-quick-links.quick-links--expanded .quick-links-card-list {
  max-height: none;
  overflow: visible;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-item {
  width: auto;
  min-height: 44px;
  padding: 12px 20px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
  flex: 0 0 auto;
  min-width: fit-content;
  gap: 0;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-item.active {
  background: #e56a82;
  border-color: #e56a82;
  box-shadow: 0 8px 18px rgba(229, 106, 130, 0.18);
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-icon {
  display: none;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-label {
  font-size: 14px;
  font-weight: 700;
  color: var(--w-text-dark);
  line-height: 1;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-card-item.active .quick-links-card-label {
  color: #fff;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-see-more-container {
  margin: 18px 0 0;
}
body.platform-web .find-doctor-content--web app-quick-links .quick-links-see-more-btn {
  --background: var(--w-sage);
  --background-hover: var(--w-sage-strong);
  --background-activated: var(--w-sage-strong);
  --border-radius: 999px;
  --padding-start: 26px;
  --padding-end: 26px;
  min-height: 44px;
  box-shadow: 0 8px 18px rgba(123, 164, 101, 0.18);
}
body.platform-web .find-doctor-content--web .find-doctor-location-bar--web {
  margin-top: 0;
  padding: 18px 20px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 18px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}
body.platform-web .find-doctor-content--web .find-doctor-location-bar--web .location-icon {
  color: var(--w-sage);
  font-size: 28px;
}
body.platform-web .find-doctor-content--web .find-doctor-location-bar--web .location-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--w-text-dark);
}
body.platform-web .find-doctor-content--web .find-doctor-location-bar--web .location-address {
  color: var(--w-muted);
  font-size: 14px;
}
body.platform-web .find-doctor-content--web app-paginated-list {
  display: block;
  width: 100%;
  max-width: var(--w-max);
  margin-right: auto;
  margin-left: auto;
}
body.platform-web .find-doctor-content--web .doctors-list--web {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  padding: 0;
}
@media (width >= 768px) and (width <= 1023px) {
  body.platform-web .find-doctor-content--web .doctors-list--web {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width < 768px) {
  body.platform-web .find-doctor-content--web .find-doctor-web-shell {
    padding-inline: 16px;
  }
  body.platform-web .find-doctor-content--web .doctors-list--web {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}
body.platform-web .find-doctor-content--web app-doctor-card {
  display: block;
  width: 100%;
  height: 100%;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-card {
  height: 100%;
  align-items: center;
  padding: 18px 20px;
  gap: 16px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 20px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-photo {
  width: 72px;
  height: 72px;
  order: 1;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-info {
  order: 2;
  gap: 6px;
  width: auto;
  min-width: 0;
  visibility: visible;
  opacity: 1;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-arrow {
  display: none;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-name {
  font-size: 18px;
  font-weight: 700;
  word-break: normal;
  overflow-wrap: break-word;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-specialty {
  font-size: 14px;
  word-break: normal;
  overflow-wrap: break-word;
}
@media (width < 768px) {
  body.platform-web .find-doctor-content--web app-doctor-card {
    height: auto;
    min-width: 0;
  }
  body.platform-web .find-doctor-content--web app-doctor-card .doctor-card {
    display: flex;
    width: 100%;
    min-width: 0;
    min-height: 136px;
    height: auto;
    overflow: visible;
    visibility: visible;
    opacity: 1;
  }
  body.platform-web .find-doctor-content--web app-doctor-card .doctor-photo,
  body.platform-web .find-doctor-content--web app-doctor-card .doctor-info {
    display: flex;
  }
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-detail span {
  font-size: 13px;
}
body.platform-web .find-doctor-content--web app-doctor-card .doctor-distance {
  color: var(--w-sage);
  font-size: 14px;
}
body.platform-web .find-doctor-content--web app-doctor-card .availability-badge {
  margin-top: 2px;
}
body.platform-web .find-doctor-content--web app-doctor-card-skeleton {
  display: block;
  width: 100%;
  height: 100%;
}
body.platform-web .find-doctor-content--web app-doctor-card-skeleton .doctor-card-skeleton {
  height: 100%;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 20px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}
body.platform-web .find-doctor-content--web app-doctor-card-skeleton .doctor-card-skeleton__content {
  padding: 18px 20px;
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web {
  margin-top: 0;
  padding: 18px 20px;
  background: linear-gradient(180deg, #fff 0%, #fbfbf8 100%);
  border: 1px solid var(--w-border);
  border-radius: 22px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-card__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-card__copy {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  flex: 1 1 auto;
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-title {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-description {
  margin: 0;
  max-width: 640px;
  color: var(--w-muted);
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-btn {
  --background: var(--w-rose);
  --background-hover: var(--w-rose-strong);
  --background-activated: var(--w-rose-strong);
  --color: #fff;
  --border-radius: 999px;
  --padding-start: 28px;
  --padding-end: 28px;
  flex: 0 0 auto;
  min-height: 48px;
  min-width: 220px;
  margin: 0;
  box-shadow: 0 10px 22px rgba(228, 106, 130, 0.22);
}
body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-btn ion-icon {
  margin-right: 8px;
}
@media (width < 768px) {
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web {
    padding: 20px;
  }
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-card__content {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-card__copy {
    width: 100%;
    min-width: 0;
  }
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-title,
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-description {
    width: 100%;
    min-width: 0;
    word-break: normal;
    overflow-wrap: break-word;
  }
  body.platform-web .find-doctor-content--web .find-doctor-help-card--web .help-btn {
    width: 100%;
    min-width: 0;
  }
}
body.platform-web .find-doctor-content--web app-site-footer {
  display: block;
  margin-top: auto;
}
body.platform-web .find-doctor-content--web app-site-footer .site-footer {
  margin-top: 0;
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: var(--w-radius-card);
  box-shadow: 0 4px 12px rgba(123, 164, 101, 0.03);
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton .card-wrapper,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton .card-wrapper {
  flex-direction: column !important;
  height: 100%;
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton .skeleton-image,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton .skeleton-image {
  width: 100% !important;
  min-width: 0 !important;
  height: auto;
  aspect-ratio: 16/10;
  margin: 0 !important;
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton .skeleton-image ion-skeleton-text,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton .skeleton-image ion-skeleton-text {
  border-radius: var(--w-radius-card) var(--w-radius-card) 0 0 !important;
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton .skeleton-content,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton .skeleton-content {
  padding: 16px !important;
  flex: 1;
}
body.platform-web .learning-content app-course-card-skeleton .course-card-skeleton .skeleton-content .skeleton-button,
body.platform-web .category-content app-course-card-skeleton .course-card-skeleton .skeleton-content .skeleton-button {
  margin-top: auto;
  width: 100% !important;
}
body.platform-web app-header-container.shop-header {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 16px 24px !important;
  background: var(--w-canvas);
}
body.platform-web app-header-container.shop-header app-header-toolbar {
  display: none;
}
body.platform-web app-header-container.shop-header ion-header {
  position: relative;
  z-index: 2;
  overflow: visible;
  padding: 0;
  background: var(--w-canvas);
  border-radius: 0;
}
body.platform-web app-header-container.shop-header .shop-search-control {
  position: relative;
  flex: 1;
  min-width: 0;
}
body.platform-web app-header-container.shop-header .shop-search-row {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: var(--w-max);
  margin: 0 auto;
  gap: 16px;
}
body.platform-web app-header-container.shop-header .shop-web-back {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid var(--w-border);
  border-radius: 50%;
  background: var(--w-card);
  box-shadow: var(--w-shadow-sm);
  color: var(--w-text);
  cursor: pointer;
  transition: border-color 180ms ease, background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web app-header-container.shop-header .shop-web-back ion-icon {
  color: inherit;
  font-size: 22px;
}
body.platform-web app-header-container.shop-header .shop-web-back:hover {
  border-color: color-mix(in srgb, var(--w-sage) 45%, var(--w-border));
  background: var(--w-hover, #f5f8f2);
  box-shadow: var(--w-shadow-md);
  transform: translateX(-2px);
}
body.platform-web app-header-container.shop-header .shop-web-back:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.22);
  outline-offset: 2px;
}
body.platform-web app-header-container.shop-header .shop-search-launcher {
  min-height: 56px;
  gap: 11px;
  padding: 6px 7px;
  border: 1px solid var(--w-border);
  border-radius: 17px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(249, 251, 247, 0.96)), var(--w-card);
  color: var(--w-text);
  box-shadow: 0 12px 30px rgba(64, 88, 49, 0.09), inset 0 1px 0 #fff;
  transition: border-color 180ms ease, background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web app-header-container.shop-header .shop-search-launcher:hover {
  border-color: color-mix(in srgb, var(--w-sage) 46%, var(--w-border));
  background: linear-gradient(180deg, #fff, #f5f9f2), var(--w-card);
  box-shadow: 0 16px 36px rgba(64, 88, 49, 0.14), 0 0 0 3px rgba(123, 164, 101, 0.07), inset 0 1px 0 #fff;
  transform: translateY(-1px);
}
body.platform-web app-header-container.shop-header .shop-search-launcher:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.24);
  outline-offset: 3px;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-icon {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(123, 164, 101, 0.16);
  border-radius: 13px;
  background: linear-gradient(145deg, #edf5e8, #dfeeda);
  color: #63834f;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
body.platform-web app-header-container.shop-header .shop-search-launcher-icon ion-icon {
  font-size: 21px;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-copy {
  gap: 2px;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-copy strong {
  color: var(--w-text);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.01em;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-copy > span {
  color: var(--w-muted);
  font-size: 12px;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-action {
  min-height: 38px;
  gap: 9px;
  padding: 0 15px;
  border-radius: 12px;
  background: linear-gradient(135deg, #86aa69, #6e9255);
  color: #fff;
  box-shadow: 0 9px 20px rgba(83, 117, 64, 0.22);
  transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}
body.platform-web app-header-container.shop-header .shop-search-launcher-action ion-icon {
  font-size: 17px;
  transition: transform 180ms ease;
}
body.platform-web app-header-container.shop-header .shop-search-launcher:hover .shop-search-launcher-action {
  background: linear-gradient(135deg, #7da461, #62844c);
  box-shadow: 0 11px 24px rgba(83, 117, 64, 0.3);
  transform: translateX(2px);
}
body.platform-web app-header-container.shop-header .shop-search-launcher:hover .shop-search-launcher-action ion-icon {
  transform: translateX(2px);
}
body.platform-web app-web-nav .web-nav-actions {
  gap: 10px;
}
body.platform-web .shop-content {
  --padding-top: 0;
  --padding-bottom: 0;
  --background: var(--w-canvas);
  color: var(--w-text);
}
body.platform-web .shop-content > .ion-padding-horizontal.ion-margin-bottom,
body.platform-web .shop-content .shop-content-padded {
  width: min(100% - 48px, var(--w-max));
  margin-right: auto;
  margin-left: auto;
  padding-inline: 0;
}
body.platform-web .shop-content > .ion-padding-horizontal.ion-margin-bottom {
  margin-top: 24px;
}
body.platform-web .shop-content .shop-hero {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  align-items: stretch;
  min-height: 340px;
  margin-top: 0;
  margin-bottom: 32px;
  background: linear-gradient(120deg, #eaf3e6 0%, #f3f8f0 60%, #fdfdfb 100%);
  border: 1px solid var(--w-border);
  border-radius: 24px;
  box-shadow: var(--w-shadow-lg);
  overflow: hidden;
}
body.platform-web .shop-content .shop-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: 36px 44px;
}
body.platform-web .shop-content .shop-hero-eyebrow {
  color: var(--w-sage);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body.platform-web .shop-content .shop-hero-title {
  max-width: 18ch;
  margin: 0;
  color: var(--w-text);
  font-size: 32px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: 0;
}
body.platform-web .shop-content .shop-hero-description {
  max-width: 42ch;
  margin: 4px 0 0;
  color: var(--w-muted);
  font-size: 16px;
  line-height: 1.45;
}
body.platform-web .shop-content .shop-hero-price {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-top: 8px;
}
body.platform-web .shop-content .shop-hero-now {
  color: var(--w-pink-strong);
  font-size: 26px;
  font-weight: 800;
}
body.platform-web .shop-content .shop-hero-was {
  color: var(--w-muted);
  font-size: 15px;
  text-decoration: line-through;
}
body.platform-web .shop-content .shop-hero-cta {
  display: flex;
  gap: 12px;
  margin-top: 12px;
}
body.platform-web .shop-content .shop-hero-btn {
  min-height: 48px;
  padding: 12px 24px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
}
body.platform-web .shop-content .shop-hero-media {
  position: relative;
  min-height: 340px;
  padding: 18px 20px 18px 0;
}
body.platform-web .shop-content .shop-hero-media app-image-preview,
body.platform-web .shop-content .shop-product-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 300px;
  overflow: hidden;
  background: radial-gradient(circle at 60% 40%, #fff 0%, #eef3ec 70%);
  border-radius: 16px;
  box-shadow: var(--w-shadow-md);
}
body.platform-web .shop-content .shop-hero-media app-image-preview ion-img::part(image) {
  object-fit: contain;
}
body.platform-web .shop-content .shop-product-placeholder {
  position: relative;
}
body.platform-web .shop-content .shop-product-placeholder::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 112px;
  height: 112px;
  background: var(--w-sage);
  content: "";
  -webkit-mask: url("/svg/medical.svg") no-repeat center/contain;
          mask: url("/svg/medical.svg") no-repeat center/contain;
  opacity: 0.9;
  transform: translate(-50%, -50%);
}
body.platform-web .shop-content .shop-hero-tag {
  position: absolute;
  top: 18px;
  left: 0;
  z-index: 3;
  padding: 4px 12px;
  background: var(--w-pink);
  border-radius: 0 999px 999px 0;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}
body.platform-web .shop-content .shop-category-section {
  margin-bottom: 48px;
}
body.platform-web .shop-content .shop-category-heading {
  margin: 0 0 18px;
  color: var(--w-text);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
}
body.platform-web .shop-content .shop-category-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
body.platform-web .shop-content .shop-category-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-width: 0;
  min-height: 118px;
  padding: 14px 12px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 16px;
  box-shadow: var(--w-shadow-sm);
  color: var(--w-text);
  text-align: center;
  cursor: pointer;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}
body.platform-web .shop-content .shop-category-card:hover {
  border-color: var(--w-sage);
  box-shadow: var(--w-shadow-md);
  transform: none;
}
body.platform-web .shop-content .shop-category-card:focus-visible {
  outline: 3px solid var(--w-sage);
  outline-offset: 2px;
}
body.platform-web .shop-content .shop-category-card.is-selected {
  border-color: var(--w-sage);
  background: linear-gradient(180deg, #f7fbf4 0%, #edf6e7 100%);
  box-shadow: 0 12px 24px rgba(123, 164, 101, 0.14);
}
body.platform-web .shop-content .shop-category-icon {
  position: relative;
  display: grid;
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  place-items: center;
  overflow: hidden;
  background: #e7f1e2;
  border-radius: 999px;
  color: var(--w-sage);
}
body.platform-web .shop-content .shop-category-icon::after {
  width: 24px;
  height: 24px;
  background: currentcolor;
  content: "";
  -webkit-mask: url("/svg/medkit-outline.svg") no-repeat center/contain;
          mask: url("/svg/medkit-outline.svg") no-repeat center/contain;
}
body.platform-web .shop-content .shop-category-icon app-image-preview {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  padding: 8px;
  background: inherit;
}
body.platform-web .shop-content .shop-category-card:nth-child(2) .shop-category-icon {
  background: #e7f0f7;
  color: #3f86c4;
}
body.platform-web .shop-content .shop-category-card:nth-child(2) .shop-category-icon::after {
  -webkit-mask-image: url("/svg/happy-outline.svg");
          mask-image: url("/svg/happy-outline.svg");
}
body.platform-web .shop-content .shop-category-card:nth-child(3) .shop-category-icon {
  background: #fce7ea;
  color: var(--w-pink-strong);
}
body.platform-web .shop-content .shop-category-card:nth-child(3) .shop-category-icon::after {
  -webkit-mask-image: url("/svg/heart-outline.svg");
          mask-image: url("/svg/heart-outline.svg");
}
body.platform-web .shop-content .shop-category-card:nth-child(4) .shop-category-icon {
  background: #fdf0d8;
  color: #b5790a;
}
body.platform-web .shop-content .shop-category-card:nth-child(4) .shop-category-icon::after {
  -webkit-mask-image: url("/svg/nutrition-outline.svg");
          mask-image: url("/svg/nutrition-outline.svg");
}
body.platform-web .shop-content .shop-category-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 0;
  align-items: center;
}
body.platform-web .shop-content .shop-category-copy strong {
  overflow: hidden;
  color: var(--w-text);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.platform-web .shop-content app-product-section {
  display: block;
  margin-bottom: 48px;
}
body.platform-web .shop-content .product-section {
  padding: 0;
}
body.platform-web .shop-content .product-section__header {
  align-items: flex-end;
  gap: 16px;
  padding: 0;
  margin-bottom: 24px;
}
body.platform-web .shop-content .product-section__heading {
  min-width: 0;
}
body.platform-web .shop-content .product-section-eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--w-sage);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body.platform-web .shop-content .product-section-title {
  margin: 0;
  color: var(--w-text);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.25;
}
body.platform-web .shop-content .product-section-count {
  margin-left: 8px;
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 500;
}
body.platform-web .shop-content .product-section__link-btn {
  min-height: 32px;
  height: 32px;
  margin: 0;
  color: var(--w-sage);
  font-size: 15px;
  font-weight: 600;
  --color: var(--w-sage);
  --padding-start: 8px;
  --padding-end: 0;
}
body.platform-web .shop-content .product-section__link-btn ion-icon {
  margin-left: 6px;
  font-size: 17px;
}
body.platform-web .shop-content .product-section-scroll,
body.platform-web .shop-content app-product-card-skeleton .products-grid-skeleton {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  padding: 0;
  margin: 0;
  overflow: visible;
}
body.platform-web .shop-content .product-section-scroll app-product-card {
  display: block;
  width: auto;
  max-width: none;
  height: 100%;
  flex: initial;
}
body.platform-web .shop-content .product-section-scroll app-product-card:nth-child(n+5) {
  display: none;
}
body.platform-web .shop-content app-product-card .product-card {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 100%;
  min-height: 370px;
  aspect-ratio: auto;
  flex-direction: column;
  padding: 16px;
  overflow: hidden;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 16px;
  box-shadow: var(--w-shadow-md);
}
body.platform-web .shop-content app-product-card .product-card:hover {
  border-color: var(--w-sage);
  box-shadow: var(--w-shadow-lg);
  transform: translateY(-6px);
}
body.platform-web .shop-content app-product-card .product-card-image-container {
  position: relative;
  top: auto;
  left: auto;
  order: 0;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: visible;
  background: #eef3ec;
  border-radius: 12px;
}
body.platform-web .shop-content app-product-card .product-card-image {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #eef3ec;
  border-radius: 12px;
}
body.platform-web .shop-content app-product-card .product-card-image ion-img::part(image) {
  object-fit: contain;
}
body.platform-web .shop-content app-product-card .product-card-image .image-error {
  background: #eef3ec;
}
body.platform-web .shop-content app-product-card .product-card-image .image-error .error-logo {
  display: none;
}
body.platform-web .shop-content app-product-card .product-card-image .image-error::after {
  width: 64px;
  height: 64px;
  background: var(--w-sage);
  content: "";
  -webkit-mask: url("/svg/medical.svg") no-repeat center/contain;
          mask: url("/svg/medical.svg") no-repeat center/contain;
  opacity: 0.82;
}
body.platform-web .shop-content app-product-card .product-card-badge {
  top: 12px;
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 11px;
}
body.platform-web .shop-content app-product-card .product-card-badge-promo,
body.platform-web .shop-content app-product-card .product-card-badge-oos {
  left: 12px;
}
body.platform-web .shop-content app-product-card .product-card-badge-disc {
  right: 12px;
}
body.platform-web .shop-content app-product-card .product-card-quickview {
  inset: auto 12px 12px;
  justify-content: center;
  width: auto;
  padding: 10px 14px;
  transform: translateY(8px);
}
body.platform-web .shop-content app-product-card .product-card:hover .product-card-quickview,
body.platform-web .shop-content app-product-card .product-card:focus-within .product-card-quickview {
  transform: translateY(0);
}
body.platform-web .shop-content app-product-card .product-card-cart-control {
  right: 20px;
  bottom: -18px;
  width: 36px;
  min-width: 36px;
  height: 36px;
  background: var(--w-pink);
  box-shadow: 0 4px 10px rgba(233, 102, 119, 0.3);
}
body.platform-web .shop-content app-product-card .product-card-info {
  position: static;
  order: 2;
  width: 100%;
  min-height: 39px;
  margin-top: 4px;
}
body.platform-web .shop-content app-product-card .product-card-name {
  color: var(--w-text);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
}
body.platform-web .shop-content app-product-card .product-card-rating {
  position: static;
  order: 1;
  width: 100%;
  height: auto;
  min-height: 16px;
  margin-top: 22px;
  color: #f0a818;
}
body.platform-web .shop-content app-product-card .product-card-rating ion-icon {
  flex: 0 0 13px;
  width: 13px;
  height: 13px;
  font-size: 13px;
}
body.platform-web .shop-content app-product-card .product-card-review-count {
  margin-left: 6px;
  color: var(--w-muted);
  font-size: 12px;
  letter-spacing: 0;
}
body.platform-web .shop-content app-product-card .product-card-pricing {
  position: static;
  order: 3;
  width: 100%;
  height: auto;
  margin-top: auto;
  overflow: visible;
}
body.platform-web .shop-content app-product-card .product-card-pricing-values {
  gap: 8px;
  overflow: visible;
}
body.platform-web .shop-content app-product-card .product-card-current-price {
  order: -1;
  overflow: visible;
  color: var(--w-pink-strong);
  font-size: 17px;
  font-weight: 800;
}
body.platform-web .shop-content app-product-card .product-card-original-price {
  overflow: visible;
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 600;
}
body.platform-web .shop-content app-product-card-skeleton .product-card-skeleton {
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 370px;
  aspect-ratio: auto;
  padding: 16px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 16px;
  box-shadow: var(--w-shadow-md);
}
body.platform-web .shop-content app-product-card-skeleton .skeleton-image {
  aspect-ratio: 1/1;
  margin-bottom: 12px;
  background: #eef3ec;
  border-radius: 12px;
}
body.platform-web .shop-content .shop-promo-strip {
  display: flex;
  align-items: center;
  gap: 16px;
  width: 100%;
  min-height: 80px;
  padding: 24px 32px;
  margin: 0 0 48px;
  background: linear-gradient(120deg, #eaf3e6, #f6faf3);
  border: 1px solid var(--w-border);
  border-radius: 24px;
  box-shadow: var(--w-shadow-md);
  color: var(--w-text);
  text-align: left;
  cursor: pointer;
}
body.platform-web .shop-content .shop-promo-icon {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  background: var(--w-sage);
  -webkit-mask: url("/svg/medical-outline.svg") no-repeat center/contain;
          mask: url("/svg/medical-outline.svg") no-repeat center/contain;
}
body.platform-web .shop-content .shop-promo-text {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}
body.platform-web .shop-content .shop-promo-text strong {
  color: var(--w-text);
  font-size: 19px;
  font-weight: 800;
}
body.platform-web .shop-content .shop-promo-text span {
  color: var(--w-muted);
  font-size: 15px;
}
body.platform-web .shop-content .shop-state-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 48px;
}
body.platform-web .shop-content .shop-state-panel,
body.platform-web .shop-content .shop-qv-panel {
  padding: 24px;
  background: #fbfdfa;
  border: 1px dashed var(--w-border);
  border-radius: 16px;
}
body.platform-web .shop-content .shop-state-label {
  display: block;
  margin-bottom: 16px;
  color: var(--w-muted);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.platform-web .shop-content .shop-state-skeleton-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
body.platform-web .shop-content .shop-state-skeleton {
  display: flex;
  flex-direction: column;
  padding: 16px;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 16px;
}
body.platform-web .shop-content .shop-state-skeleton-image,
body.platform-web .shop-content .shop-state-skeleton-line {
  display: block;
  background: linear-gradient(90deg, #eef2ec 25%, #e3e9e1 37%, #eef2ec 63%);
  background-size: 400% 100%;
  border-radius: 8px;
  animation: shop-shimmer 1.4s ease infinite;
}
body.platform-web .shop-content .shop-state-skeleton-image {
  aspect-ratio: 1/1;
  margin-bottom: 12px;
}
body.platform-web .shop-content .shop-state-skeleton-line {
  width: 100%;
  height: 12px;
  margin-bottom: 8px;
}
body.platform-web .shop-content .shop-state-skeleton-line-short {
  width: 55%;
}
body.platform-web .shop-content .shop-empty-state {
  display: flex;
  min-height: 328px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 0;
  text-align: center;
}
body.platform-web .shop-content .shop-empty-icon {
  width: 64px;
  height: 64px;
  margin-bottom: 16px;
  background: #e7f1e2;
  border-radius: 50%;
}
body.platform-web .shop-content .shop-empty-icon::after {
  display: block;
  width: 28px;
  height: 28px;
  margin: 18px;
  background: var(--w-sage);
  content: "";
  -webkit-mask: url("/svg/search.svg") no-repeat center/contain;
          mask: url("/svg/search.svg") no-repeat center/contain;
}
body.platform-web .shop-content .shop-empty-state h3 {
  margin: 0 0 8px;
  color: var(--w-text);
  font-size: 19px;
  font-weight: 800;
}
body.platform-web .shop-content .shop-empty-state p {
  margin: 0 0 16px;
  color: var(--w-muted);
  font-size: 15px;
}
body.platform-web .shop-content .shop-state-action {
  min-height: 44px;
  padding: 10px 24px;
  background: transparent;
  border: 2px solid var(--w-sage);
  border-radius: 999px;
  color: var(--w-sage);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
}
body.platform-web .shop-content .shop-qv-panel {
  margin-top: 48px;
}
body.platform-web .shop-content .shop-qv-reference {
  display: block;
  overflow: hidden;
  background: var(--w-card);
  border: 1px solid var(--w-border);
  border-radius: 24px;
  box-shadow: var(--w-shadow-lg);
}
body.platform-web .shop-content .shop-qv-reference .qv {
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 24px;
}
body.platform-web .shop-content .shop-qv-reference .qv-close {
  display: none;
}
body.platform-web .shop-content .shop-qv-reference .qv-media {
  background: #eef3ec;
  border-radius: 16px;
}
body.platform-web .shop-content .shop-qv-reference .qv-img {
  object-fit: contain;
}
body.platform-web .shop-content .shop-qv-reference .qv-name {
  color: var(--w-text);
  font-size: 19px;
  font-weight: 800;
}
body.platform-web .shop-content .shop-qv-reference .qv-desc {
  color: var(--w-muted);
}
@media (width <= 992px) {
  body.platform-web .shop-content .shop-hero {
    grid-template-columns: 1fr;
  }
  body.platform-web .shop-content .shop-hero-media {
    min-height: 260px;
    padding: 0 24px 24px;
  }
  body.platform-web .shop-content .shop-hero-media app-image-preview,
  body.platform-web .shop-content .shop-product-placeholder {
    min-height: 236px;
  }
  body.platform-web .shop-content .shop-hero-tag {
    top: 0;
    left: 24px;
  }
  body.platform-web .shop-content .shop-category-grid,
  body.platform-web .shop-content .product-section-scroll,
  body.platform-web .shop-content app-product-card-skeleton .products-grid-skeleton {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.platform-web .shop-content .shop-state-grid {
    grid-template-columns: 1fr;
  }
}
@media (width < 768px) {
  body.platform-web app-header-container.shop-header {
    padding: 12px 16px !important;
  }
  body.platform-web .shop-content .shop-hero,
  body.platform-web .shop-content .shop-content-padded {
    width: calc(100% - 32px);
  }
  body.platform-web .shop-content .shop-hero-copy {
    padding: 28px 24px;
  }
  body.platform-web .shop-content .shop-hero-title {
    font-size: 26px;
  }
  body.platform-web .shop-content .shop-hero-description {
    font-size: 15px;
  }
  body.platform-web .shop-content .shop-category-card {
    min-height: 108px;
    padding: 14px 10px;
  }
  body.platform-web .shop-content .product-section-scroll,
  body.platform-web .shop-content app-product-card-skeleton .products-grid-skeleton {
    gap: 16px;
  }
  body.platform-web .shop-content app-product-card .product-card,
  body.platform-web .shop-content app-product-card-skeleton .product-card-skeleton {
    min-height: 0;
    padding: 10px;
  }
  body.platform-web .shop-content app-product-card .product-card-name {
    font-size: 14px;
  }
  body.platform-web .shop-content app-product-card .product-card-rating {
    margin-top: 20px;
  }
  body.platform-web .shop-content app-product-card .product-card-cart-control {
    right: 12px;
  }
  body.platform-web .shop-content .shop-promo-strip {
    align-items: flex-start;
    padding: 20px;
    border-radius: 16px;
  }
  body.platform-web .shop-content .shop-promo-text {
    flex-direction: column;
    gap: 4px;
  }
  body.platform-web .shop-content .shop-state-panel,
  body.platform-web .shop-content .shop-qv-panel {
    padding: 16px;
  }
  body.platform-web .shop-content .shop-qv-reference .qv {
    grid-template-columns: 1fr;
    padding: 16px;
  }
}
@media (width < 600px) {
  body.platform-web .shop-content .shop-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.platform-web .shop-content .shop-category-card {
    gap: 10px;
    text-align: center;
  }
  body.platform-web .shop-content .shop-category-copy strong {
    white-space: normal;
  }
  body.platform-web .shop-content .shop-state-skeleton-grid {
    grid-template-columns: 1fr;
  }
  body.platform-web .shop-content .product-section-title {
    font-size: 19px;
  }
  body.platform-web .shop-content .product-section-count {
    display: block;
    margin: 2px 0 0;
  }
}

body.platform-web.dark ion-modal.add-to-cart-dialog {
  --cart-dialog-surface: #111713;
  --cart-dialog-elevated: #1a231d;
  --cart-dialog-subtle: #161e19;
  --cart-dialog-control: #0e1410;
  --cart-dialog-border: rgb(205 226 210 / 13%);
  --cart-dialog-border-strong: rgb(168 207 143 / 48%);
  --cart-dialog-text: #f2f6f3;
  --cart-dialog-muted: #9da9a1;
  --cart-dialog-accent: #acd391;
  --cart-dialog-header:
    radial-gradient(circle at 86% 8%, rgb(168 207 143 / 13%), transparent 34%),
    linear-gradient(135deg, #18211b 0%, #121914 100%);
  --box-shadow: 0 36px 110px rgb(0 0 0 / 58%), 0 0 0 1px rgb(255 255 255 / 3%);
  --backdrop-opacity: 0.68;
  color: var(--cart-dialog-text);
}
body.platform-web.dark ion-modal.add-to-cart-dialog::part(content) {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark ion-modal.add-to-cart-dialog::part(backdrop) {
  background: rgba(4, 8, 5, 0.78);
  -webkit-backdrop-filter: blur(12px) saturate(80%);
          backdrop-filter: blur(12px) saturate(80%);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-heading-icon {
  background: #9fc982;
  color: #0b110d;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.24);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-eyebrow {
  color: var(--cart-dialog-accent);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-close:hover {
  border-color: var(--cart-dialog-border-strong);
  background: #202b23;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-body {
  scrollbar-color: rgba(168, 207, 143, 0.38) transparent;
  scrollbar-width: thin;
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-product,
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-variant-options,
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-quantity-row {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.02);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-product {
  background: radial-gradient(circle at 12% 20%, rgba(168, 207, 143, 0.07), transparent 34%), var(--cart-dialog-subtle);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-image {
  background: #eef3ed;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-discount-badge {
  border: 1px solid rgba(168, 207, 143, 0.2);
  background: rgba(168, 207, 143, 0.12);
  color: var(--cart-dialog-accent);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-option-btn:hover:not(:disabled) {
  border-color: var(--cart-dialog-border-strong);
  background: #1c271f;
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-option-btn.is-selected {
  border-color: #8fba73;
  background: rgba(168, 207, 143, 0.16);
  color: #bee0a7;
  box-shadow: 0 0 0 2px rgba(168, 207, 143, 0.07);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-quantity {
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.32);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-quantity-btn,
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-quantity-value {
  color: var(--cart-dialog-text);
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-submit {
  --background: #9fc982;
  --background-hover: #add590;
  --background-activated: #8eb873;
  --box-shadow: 0 12px 28px rgb(0 0 0 / 26%);
  --color: #0b110d;
}
body.platform-web.dark ion-modal.add-to-cart-dialog .add-to-cart-modal-submit[disabled] {
  --background: #344239;
  --box-shadow: none;
  --color: #7f8b83;
}

body.platform-web.dark app-product-details {
  --product-dark-canvas: #0b100d;
  --product-dark-surface: #131a16;
  --product-dark-surface-raised: #18211b;
  --product-dark-surface-soft: #1c261f;
  --product-dark-border: rgb(205 226 210 / 12%);
  --product-dark-border-strong: rgb(168 207 143 / 38%);
  --product-dark-text: #f2f6f3;
  --product-dark-muted: #9ca9a1;
  --product-dark-subtle: #748078;
  --product-dark-accent: #acd391;
  --product-dark-price: #f27a8d;
}
body.platform-web.dark app-product-details .product-details-content {
  --background: var(--product-dark-canvas);
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-content::part(scroll) {
  background: radial-gradient(circle at 18% 2%, rgba(168, 207, 143, 0.07), transparent 28rem), var(--product-dark-canvas);
}
body.platform-web.dark app-product-details .product-details-page {
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-back-btn {
  border-color: var(--product-dark-border);
  background: var(--product-dark-surface-raised);
  color: var(--product-dark-accent);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}
body.platform-web.dark app-product-details .product-details-back-btn:hover {
  border-color: var(--product-dark-border-strong);
  background: var(--product-dark-surface-soft);
  color: #c4e4af;
}
body.platform-web.dark app-product-details .product-details-breadcrumb,
body.platform-web.dark app-product-details .product-details-breadcrumb-link,
body.platform-web.dark app-product-details .product-details-reviews-link,
body.platform-web.dark app-product-details .product-details-sku-line,
body.platform-web.dark app-product-details .product-details-stock-status,
body.platform-web.dark app-product-details .product-details-option-selected-value,
body.platform-web.dark app-product-details .product-details-about-copy,
body.platform-web.dark app-product-details .product-details-view-all {
  color: var(--product-dark-muted);
}
body.platform-web.dark app-product-details .product-details-breadcrumb-current,
body.platform-web.dark app-product-details .product-details-rating-value,
body.platform-web.dark app-product-details .product-details-option-label,
body.platform-web.dark app-product-details .product-details-quantity-label,
body.platform-web.dark app-product-details .product-details-section-title {
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-breadcrumb-link:hover,
body.platform-web.dark app-product-details .product-details-reviews-link:hover,
body.platform-web.dark app-product-details .product-details-view-all:hover {
  color: var(--product-dark-accent);
}
body.platform-web.dark app-product-details .product-details-breadcrumb-sep,
body.platform-web.dark app-product-details .product-details-rating-sep,
body.platform-web.dark app-product-details .product-details-sku-sep {
  color: var(--product-dark-subtle);
}
body.platform-web.dark app-product-details .product-details-gallery-card {
  border-color: var(--product-dark-border);
  background: radial-gradient(circle at 50% 8%, rgba(168, 207, 143, 0.08), transparent 48%), linear-gradient(145deg, var(--product-dark-surface-raised), var(--product-dark-surface));
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark app-product-details .product-details-gallery-thumb {
  border-color: var(--product-dark-border);
  background: var(--product-dark-surface-raised);
}
body.platform-web.dark app-product-details .product-details-gallery-thumb:hover, body.platform-web.dark app-product-details .product-details-gallery-thumb.is-active {
  border-color: var(--product-dark-accent);
  box-shadow: 0 0 0 2px rgba(168, 207, 143, 0.09);
}
body.platform-web.dark app-product-details .product-details-info-column {
  padding: 30px;
  border: 1px solid var(--product-dark-border);
  border-radius: 24px;
  background: radial-gradient(circle at 100% 0%, rgba(168, 207, 143, 0.07), transparent 35%), linear-gradient(145deg, var(--product-dark-surface-raised), var(--product-dark-surface));
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-product-details .product-details-eyebrow {
  color: var(--product-dark-accent);
}
body.platform-web.dark app-product-details .product-details-title,
body.platform-web.dark app-product-details .product-details-related-title,
body.platform-web.dark app-product-details .product-details-sticky-name {
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-star-icon,
body.platform-web.dark app-product-details .product-details-related-rating ion-icon:not(.filled) {
  color: #39433c;
}
body.platform-web.dark app-product-details .product-details-current-price,
body.platform-web.dark app-product-details .product-details-related-price,
body.platform-web.dark app-product-details .product-details-sticky-price {
  color: var(--product-dark-price);
}
body.platform-web.dark app-product-details .product-details-original-price {
  color: var(--product-dark-subtle);
}
body.platform-web.dark app-product-details .product-details-discount-badge {
  border: 1px solid rgba(168, 207, 143, 0.18);
  background: rgba(168, 207, 143, 0.11);
  color: var(--product-dark-accent);
}
body.platform-web.dark app-product-details .product-details-stock-status:not(.is-oos) {
  color: var(--product-dark-accent);
}
body.platform-web.dark app-product-details .product-details-option-btn {
  border-color: var(--product-dark-border);
  background: var(--product-dark-surface-soft);
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-option-btn:hover:not(.is-unavailable) {
  border-color: var(--product-dark-border-strong);
  background: #233027;
}
body.platform-web.dark app-product-details .product-details-option-btn.is-selected {
  border-color: var(--product-dark-accent);
  background: var(--product-dark-accent);
  color: #0b110d;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark app-product-details .product-details-combo-warning {
  border: 1px solid rgba(255, 192, 67, 0.22);
  background: rgba(255, 192, 67, 0.09);
  color: #e7bd68;
}
body.platform-web.dark app-product-details .product-details-divider {
  border-color: var(--product-dark-border);
}
body.platform-web.dark app-product-details .product-details-quantity-controls {
  border-color: var(--product-dark-border);
  background: #0f1611;
  box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark app-product-details .product-details-qty-btn {
  border-color: var(--product-dark-border);
  background: var(--product-dark-surface-soft);
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-qty-btn:hover:not([disabled]) {
  border-color: var(--product-dark-accent);
  background: var(--product-dark-accent);
  color: #0b110d;
}
body.platform-web.dark app-product-details .product-details-qty-display,
body.platform-web.dark app-product-details .product-details-about-copy :where(.rich-text-content li) {
  color: var(--product-dark-text);
}
body.platform-web.dark app-product-details .product-details-related-card {
  border-color: var(--product-dark-border);
  background: linear-gradient(145deg, var(--product-dark-surface-raised), var(--product-dark-surface));
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-product-details .product-details-related-card:hover {
  border-color: var(--product-dark-border-strong);
  box-shadow: 0 22px 42px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark app-product-details .product-details-related-media {
  background: var(--product-dark-surface-soft);
}
body.platform-web.dark app-product-details .product-details-sticky-actions {
  border-color: var(--product-dark-border);
  background: rgba(13, 19, 15, 0.94);
  box-shadow: 0 -18px 50px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.03);
  -webkit-backdrop-filter: blur(18px) saturate(120%);
          backdrop-filter: blur(18px) saturate(120%);
}
body.platform-web.dark app-product-details .product-details-sticky-thumb {
  border: 1px solid var(--product-dark-border);
  background: #eef3ed;
}
body.platform-web.dark app-product-details .product-details-sticky-btn-buy-now {
  --background: var(--product-dark-surface-soft);
  --background-hover: #253229;
  --background-activated: #2b3a30;
  --border-color: var(--product-dark-accent);
  --color: var(--product-dark-accent);
}
body.platform-web.dark app-product-details .product-details-sticky-btn-add-cart {
  --background: var(--product-dark-price);
  --background-hover: #fc8798;
  --background-activated: #df697b;
  --box-shadow: 0 10px 26px rgb(242 122 141 / 18%);
  --color: #fff;
}
@media (width < 981px) {
  body.platform-web.dark app-product-details .product-details-info-column {
    padding: 24px;
  }
}
@media (width < 640px) {
  body.platform-web.dark app-product-details .product-details-info-column {
    padding: 20px;
    border-radius: 18px;
  }
}

body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) {
  --auth-dark-canvas: #090e0b;
  --auth-dark-panel: #121914;
  --auth-dark-panel-raised: #172019;
  --auth-dark-control: #0d130f;
  --auth-dark-border: rgb(205 226 210 / 13%);
  --auth-dark-border-strong: rgb(168 207 143 / 48%);
  --auth-dark-text: #f2f6f3;
  --auth-dark-muted: #9da9a1;
  --auth-dark-accent: #acd391;
  --background:
    radial-gradient(circle at 12% 16%, rgb(114 157 91 / 20%), transparent 31%),
    radial-gradient(circle at 88% 84%, rgb(221 107 126 / 10%), transparent 28%),
    linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
  color: var(--auth-dark-text);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container) {
  background: radial-gradient(circle at 14% 16%, rgba(114, 157, 91, 0.18), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.08), transparent 28%), radial-gradient(circle at 72% 10%, rgba(244, 192, 67, 0.05), transparent 22%), linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::before {
  border-color: rgba(168, 207, 143, 0.12);
  box-shadow: 0 0 0 54px rgba(168, 207, 143, 0.04), 0 0 0 108px rgba(168, 207, 143, 0.02);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-container, .login-email-container, .user-name-container, .profile-select-container)::after {
  background: rgba(229, 126, 145, 0.07);
  box-shadow: 0 0 110px rgba(229, 126, 145, 0.09);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-row, .login-email-row, .user-name-row, .profile-select-row) > ion-col {
  border-color: var(--auth-dark-border);
  background: var(--auth-dark-panel);
  box-shadow: 0 42px 110px rgba(0, 0, 0, 0.48), 0 12px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand {
  border-right: 1px solid rgba(205, 226, 210, 0.09);
  background: radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.09), transparent 28%), linear-gradient(145deg, #3f6038 0%, #527548 52%, #304c2c 100%);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand::after {
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.02), 0 0 0 92px rgba(255, 255, 255, 0.01);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand-mark {
  background: #f3f7f2;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.26);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-content-wrapper,
.login-email-content-wrapper,
.user-name-content-wrapper,
.profile-select-content-wrapper) {
  background: radial-gradient(circle at 100% 0%, rgba(168, 207, 143, 0.08), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.04), transparent 32%), linear-gradient(145deg, var(--auth-dark-panel-raised), var(--auth-dark-panel));
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-welcome-title, .login-email-welcome-title, .user-name-welcome-title) {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) {
  --background: transparent;
  background: transparent;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) ion-card-title {
  color: var(--auth-dark-text) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-signin-card,
.login-email-signin-card,
.user-name-signin-card,
.profile-select-signin-card) ion-card-subtitle {
  color: var(--auth-dark-muted) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-form-label, .login-email-form-label, .user-name-form-label) {
  color: var(--auth-dark-text) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .user-name-card-eyebrow {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .user-name-form-group {
  border-color: var(--auth-dark-border);
  background: rgba(13, 19, 15, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-card-eyebrow {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back {
  color: var(--auth-dark-muted);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-back:hover {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option {
  --background: rgb(13 19 15 / 74%);
  --background-hover: #202b23;
  --background-activated: #263329;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option::part(native) {
  border-color: var(--auth-dark-border);
  background: var(--background);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option:hover::part(native) {
  border-color: var(--auth-dark-border-strong);
  background: var(--background-hover);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .profile-select-option-header .option-icon {
  background: rgba(168, 207, 143, 0.11);
  color: var(--auth-dark-accent) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .profile-select-option-header .option-title {
  color: var(--auth-dark-text) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .option-description {
  color: var(--auth-dark-muted) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option .check-icon {
  color: var(--auth-dark-accent) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected {
  --background: rgb(168 207 143 / 12%);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected::part(native) {
  border-color: var(--auth-dark-accent);
  background: linear-gradient(135deg, rgba(168, 207, 143, 0.14), rgba(23, 32, 25, 0.96));
  box-shadow: 0 0 0 2px rgba(168, 207, 143, 0.08), 0 12px 28px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-icon {
  background: var(--auth-dark-accent);
  color: #101612 !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-title {
  color: var(--auth-dark-text) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .option-description {
  color: var(--auth-dark-muted) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-option.selected .check-icon {
  color: var(--auth-dark-accent) !important;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-continue-btn {
  --background: #a5ce89;
  --background-hover: #b3d999;
  --background-activated: #95be7b;
  --color: #0b110d;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .profile-select-continue-btn.button-disabled {
  --background: #2a352e;
  --color: #7f8b83;
  opacity: 1;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.input-wrapper, .input-wrapper-stretch) {
  border-color: var(--auth-dark-border);
  background: var(--auth-dark-control);
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.34);
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.input-wrapper, .input-wrapper-stretch):focus-within {
  border-color: var(--auth-dark-border-strong);
  background: #101812;
  box-shadow: 0 0 0 3px rgba(168, 207, 143, 0.1), inset 0 1px 4px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown {
  border-color: var(--auth-dark-border-strong);
  background: #151d17;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.46), 0 6px 16px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-header {
  border-color: var(--auth-dark-border);
  color: var(--auth-dark-text);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option {
  color: var(--auth-dark-text);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option:hover, body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option:focus-visible {
  background: #202b23;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-option.selected {
  background: rgba(168, 207, 143, 0.14);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-flag {
  border-color: var(--auth-dark-border);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-copy small {
  color: var(--auth-dark-muted);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-dropdown-check {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-country-selector {
  border-color: var(--auth-dark-border);
  background: var(--auth-dark-panel-raised);
  color: var(--auth-dark-text);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .country-code,
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .dropdown-icon,
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-field {
  color: var(--auth-dark-text);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-field {
  background: transparent;
  caret-color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-field::placeholder {
  color: #727f76;
  opacity: 1;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-next-btn, .login-email-next-btn, .user-name-next-btn) {
  --background: #a5ce89;
  --background-hover: #b3d999;
  --background-activated: #95be7b;
  --box-shadow: 0 12px 28px rgb(0 0 0 / 24%);
  --color: #0b110d;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-next-btn, .login-email-next-btn, .user-name-next-btn).button-disabled {
  --background: #2a352e;
  --box-shadow: none;
  --color: #7f8b83;
  opacity: 1;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-divider, .login-email-divider)::before {
  background: var(--auth-dark-border);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-divider, .login-email-divider) .divider-text {
  background: var(--auth-dark-panel);
  color: var(--auth-dark-muted);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button {
  --background: var(--auth-dark-panel-raised);
  --background-hover: #202b23;
  --background-activated: #263329;
  --border-color: var(--auth-dark-border);
  --color: var(--auth-dark-text);
  --box-shadow: none;
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover {
  --border-color: var(--auth-dark-border-strong);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button ion-icon {
  color: var(--auth-dark-accent);
}
body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .input-error-message {
  color: #f28b99;
}
@media (width < 860px) {
  body.platform-web.dark :is(.login-content, .login-email-content, .user-name-content, .profile-select-content) .login-web-brand {
    border-right: 0;
    border-bottom: 1px solid rgba(205, 226, 210, 0.09);
  }
}

body.platform-web.dark .otp-content {
  --auth-dark-canvas: #090e0b;
  --auth-dark-panel: #121914;
  --auth-dark-panel-raised: #172019;
  --auth-dark-control: #0d130f;
  --auth-dark-border: rgb(205 226 210 / 13%);
  --auth-dark-border-strong: rgb(168 207 143 / 48%);
  --auth-dark-text: #f2f6f3;
  --auth-dark-muted: #9da9a1;
  --auth-dark-accent: #acd391;
  --background:
    radial-gradient(circle at 12% 16%, rgb(114 157 91 / 20%), transparent 31%),
    radial-gradient(circle at 88% 84%, rgb(221 107 126 / 9%), transparent 28%),
    linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
  color: var(--auth-dark-text);
}
body.platform-web.dark .otp-content .otp-container {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: radial-gradient(circle at 14% 16%, rgba(114, 157, 91, 0.18), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.07), transparent 28%), linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark .otp-content .otp-container::before, body.platform-web.dark .otp-content .otp-container::after {
  content: "";
  position: absolute;
  z-index: 0;
  border-radius: 50%;
  pointer-events: none;
}
body.platform-web.dark .otp-content .otp-container::before {
  top: -180px;
  left: -140px;
  width: 440px;
  height: 440px;
  border: 1px solid rgba(168, 207, 143, 0.12);
  box-shadow: 0 0 0 54px rgba(168, 207, 143, 0.04), 0 0 0 108px rgba(168, 207, 143, 0.02);
}
body.platform-web.dark .otp-content .otp-container::after {
  right: -120px;
  bottom: -180px;
  width: 380px;
  height: 380px;
  background: rgba(229, 126, 145, 0.07);
  box-shadow: 0 0 110px rgba(229, 126, 145, 0.09);
}
body.platform-web.dark .otp-content .otp-row {
  position: relative;
  z-index: 1;
}
body.platform-web.dark .otp-content .otp-row > ion-col {
  border-color: var(--auth-dark-border);
  background: var(--auth-dark-panel);
  border-radius: 28px;
  box-shadow: 0 42px 110px rgba(0, 0, 0, 0.48), 0 12px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .otp-content .login-web-brand {
  border-right: 1px solid rgba(205, 226, 210, 0.09);
  background: radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.09), transparent 28%), linear-gradient(145deg, #3f6038 0%, #527548 52%, #304c2c 100%);
}
body.platform-web.dark .otp-content .login-web-brand::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -110px;
  z-index: 1;
  width: 330px;
  height: 330px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  box-shadow: 0 0 0 46px rgba(255, 255, 255, 0.02), 0 0 0 92px rgba(255, 255, 255, 0.01);
}
body.platform-web.dark .otp-content .login-web-brand-mark {
  background: #f3f7f2;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.26);
}
body.platform-web.dark .otp-content .otp-content-wrapper {
  background: radial-gradient(circle at 100% 0%, rgba(168, 207, 143, 0.08), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.04), transparent 32%), linear-gradient(145deg, var(--auth-dark-panel-raised), var(--auth-dark-panel));
}
body.platform-web.dark .otp-content .otp-web-back {
  color: var(--auth-dark-muted);
}
body.platform-web.dark .otp-content .otp-web-back:hover {
  color: var(--auth-dark-accent);
}
body.platform-web.dark .otp-content .otp-card {
  --background: transparent;
  background: transparent;
}
body.platform-web.dark .otp-content .otp-card ion-card-title {
  color: var(--auth-dark-text) !important;
}
body.platform-web.dark .otp-content .otp-card ion-card-subtitle {
  color: var(--auth-dark-muted) !important;
}
body.platform-web.dark .otp-content .otp-card-eyebrow {
  color: var(--auth-dark-accent);
}
body.platform-web.dark .otp-content .otp-form-group {
  border-color: var(--auth-dark-border);
  background: rgba(13, 19, 15, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web.dark .otp-content .input-otp {
  border-color: var(--auth-dark-border);
  background: var(--auth-dark-control);
  color: var(--auth-dark-text);
  caret-color: var(--auth-dark-accent);
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.34);
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.platform-web.dark .otp-content .input-otp:hover:not(:disabled) {
  border-color: rgba(168, 207, 143, 0.28);
  background: #101812;
}
body.platform-web.dark .otp-content .input-otp:focus {
  border-color: var(--auth-dark-accent);
  background: #111a13;
  box-shadow: 0 0 0 3px rgba(168, 207, 143, 0.11), 0 10px 22px rgba(0, 0, 0, 0.2);
  transform: translateY(-1px);
}
body.platform-web.dark .otp-content .input-otp-container.error .input-otp {
  border-color: #f27f8f !important;
  background: rgba(242, 127, 143, 0.08);
  color: #ff9cab;
}
body.platform-web.dark .otp-content .input-otp-container.blocked .input-otp {
  border-color: var(--auth-dark-border);
  background: #151b17;
  color: #68736c;
  opacity: 0.72;
}
body.platform-web.dark .otp-content .otp-timer {
  color: var(--auth-dark-accent);
  font-variant-numeric: tabular-nums;
}
body.platform-web.dark .otp-content .otp-resend-text {
  color: var(--auth-dark-muted);
}
body.platform-web.dark .otp-content .otp-resend-link {
  color: var(--auth-dark-accent);
  text-decoration-color: rgba(172, 211, 145, 0.45);
}
body.platform-web.dark .otp-content .otp-resend-link:hover:not(:disabled) {
  color: #c2e2ab;
}
body.platform-web.dark .otp-content .otp-resend-link:disabled, body.platform-web.dark .otp-content .otp-resend-link.disabled {
  color: #68736c;
  opacity: 1;
}
body.platform-web.dark .otp-content .otp-error-message {
  color: #f28b99;
}
body.platform-web.dark .otp-content .otp-signin-btn {
  --background: #a5ce89;
  --background-hover: #b3d999;
  --background-activated: #95be7b;
  --box-shadow: 0 12px 28px rgb(0 0 0 / 24%);
  --color: #0b110d;
}
body.platform-web.dark .otp-content .otp-signin-btn.button-disabled {
  --background: #2a352e;
  --box-shadow: none;
  --color: #7f8b83;
  opacity: 1;
}
body.platform-web.dark .otp-content .otp-signin-btn:not(.button-disabled):hover {
  transform: translateY(-1px);
}
@media (width < 860px) {
  body.platform-web.dark .otp-content .login-web-brand {
    border-right: 0;
    border-bottom: 1px solid rgba(205, 226, 210, 0.09);
  }
}

body.platform-web.dark .signup-mother-content {
  --signup-dark-panel: #121914;
  --signup-dark-raised: #172019;
  --signup-dark-control: #0d130f;
  --signup-dark-border: rgb(205 226 210 / 13%);
  --signup-dark-border-strong: rgb(168 207 143 / 42%);
  --signup-dark-text: #f2f6f3;
  --signup-dark-muted: #9da9a1;
  --signup-dark-accent: #acd391;
  --background:
    radial-gradient(circle at 12% 16%, rgb(114 157 91 / 20%), transparent 31%),
    radial-gradient(circle at 88% 84%, rgb(221 107 126 / 9%), transparent 28%),
    linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark .signup-mother-content .signup-mother-container {
  background: radial-gradient(circle at 14% 16%, rgba(114, 157, 91, 0.18), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.07), transparent 28%), linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark .signup-mother-content .signup-mother-row > ion-col {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-panel);
  box-shadow: 0 42px 110px rgba(0, 0, 0, 0.48), 0 12px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .signup-mother-content .login-web-brand {
  border-right: 1px solid rgba(205, 226, 210, 0.09);
  background: radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.09), transparent 28%), linear-gradient(145deg, #3f6038 0%, #527548 52%, #304c2c 100%);
}
body.platform-web.dark .signup-mother-content .signup-mother-content-wrapper {
  background: radial-gradient(circle at 100% 0%, rgba(168, 207, 143, 0.08), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.04), transparent 32%), linear-gradient(145deg, var(--signup-dark-raised), var(--signup-dark-panel));
}
body.platform-web.dark .signup-mother-content .signup-mother-back,
body.platform-web.dark .signup-mother-content .signup-mother-web-heading p {
  color: var(--signup-dark-muted);
}
body.platform-web.dark .signup-mother-content .signup-mother-back:hover,
body.platform-web.dark .signup-mother-content .signup-mother-web-eyebrow {
  color: var(--signup-dark-accent);
}
body.platform-web.dark .signup-mother-content .signup-mother-web-heading h1,
body.platform-web.dark .signup-mother-content .signup-mother-label {
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-mother-content .signup-mother-form {
  border-color: var(--signup-dark-border);
  background: rgba(13, 19, 15, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .signup-mother-content .signup-mother-input-wrapper .input-wrapper {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-control);
}
body.platform-web.dark .signup-mother-content .signup-mother-input-wrapper .input-wrapper:focus-within {
  border-color: var(--signup-dark-border-strong);
  background: #101812;
  box-shadow: 0 0 0 3px rgba(168, 207, 143, 0.1);
}
body.platform-web.dark .signup-mother-content .signup-mother-input-wrapper .input-field {
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-mother-content .signup-mother-input-wrapper .input-field::placeholder {
  color: #727f76;
}
body.platform-web.dark .signup-mother-content .signup-mother-gender-btn {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-control);
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-mother-content .signup-mother-gender-btn:hover {
  border-color: var(--signup-dark-border-strong);
  background: #202b23;
}
body.platform-web.dark .signup-mother-content .signup-mother-gender-btn.active {
  border-color: var(--signup-dark-accent);
  background: rgba(168, 207, 143, 0.12);
}
body.platform-web.dark .signup-mother-content .signup-mother-gender-btn.active .gender-icon {
  color: var(--signup-dark-accent);
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item {
  --background: var(--signup-dark-raised);
  --color: var(--signup-dark-text);
  border-color: var(--signup-dark-border);
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-info {
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-info ion-text {
  --color: var(--signup-dark-muted);
  color: var(--signup-dark-muted) !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-info ion-text p {
  color: var(--signup-dark-muted) !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-name p {
  color: var(--signup-dark-text) !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-actions .edit-btn {
  --color: var(--signup-dark-accent) !important;
  color: var(--signup-dark-accent) !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-actions .edit-btn ion-icon {
  color: var(--signup-dark-accent) !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-child-item .child-actions .edit-btn:hover {
  --color: #c1e3aa !important;
  background: rgba(168, 207, 143, 0.1);
}
body.platform-web.dark .signup-mother-content .signup-mother-add-more-btn {
  --border-color: var(--signup-dark-border-strong);
  --background: rgb(168 207 143 / 7%);
  --color: var(--signup-dark-accent);
}
body.platform-web.dark .signup-mother-content .signup-mother-add-more-btn.button-disabled {
  --background: #202a23;
  --border-color: #465249;
  --color: #aab5ad;
  color: #aab5ad !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-add-more-btn.button-disabled span {
  color: #aab5ad !important;
}
body.platform-web.dark .signup-mother-content .signup-mother-next-btn {
  --background: #a5ce89;
  --background-hover: #b3d999;
  --background-activated: #95be7b;
  --color: #0b110d;
}
body.platform-web.dark .signup-mother-content .signup-mother-next-btn.button-disabled {
  --background: #2a352e;
  --color: #7f8b83;
}
@media (width < 900px) {
  body.platform-web.dark .signup-mother-content .login-web-brand {
    border-right: 0;
    border-bottom: 1px solid rgba(205, 226, 210, 0.09);
  }
}

body.platform-web.dark .signup-pregnant-content {
  --signup-dark-panel: #121914;
  --signup-dark-raised: #172019;
  --signup-dark-control: #0d130f;
  --signup-dark-border: rgb(205 226 210 / 13%);
  --signup-dark-border-strong: rgb(168 207 143 / 42%);
  --signup-dark-text: #f2f6f3;
  --signup-dark-muted: #9da9a1;
  --signup-dark-accent: #acd391;
  --background:
    radial-gradient(circle at 12% 16%, rgb(114 157 91 / 20%), transparent 31%),
    radial-gradient(circle at 88% 84%, rgb(221 107 126 / 9%), transparent 28%),
    linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-container {
  background: radial-gradient(circle at 14% 16%, rgba(114, 157, 91, 0.18), transparent 31%), radial-gradient(circle at 87% 84%, rgba(221, 107, 126, 0.07), transparent 28%), linear-gradient(135deg, #08100b 0%, #0d1410 52%, #101612 100%);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-row > ion-col {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-panel);
  box-shadow: 0 42px 110px rgba(0, 0, 0, 0.48), 0 12px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .signup-pregnant-content .login-web-brand {
  border-right: 1px solid rgba(205, 226, 210, 0.09);
  background: radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.09), transparent 28%), linear-gradient(145deg, #3f6038 0%, #527548 52%, #304c2c 100%);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-content-wrapper {
  background: radial-gradient(circle at 100% 0%, rgba(168, 207, 143, 0.08), transparent 36%), radial-gradient(circle at 0% 100%, rgba(221, 107, 126, 0.04), transparent 32%), linear-gradient(145deg, var(--signup-dark-raised), var(--signup-dark-panel));
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-back,
body.platform-web.dark .signup-pregnant-content .signup-pregnant-web-heading p,
body.platform-web.dark .signup-pregnant-content .signup-pregnant-date-heading small {
  color: var(--signup-dark-muted);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-back:hover,
body.platform-web.dark .signup-pregnant-content .signup-pregnant-web-eyebrow {
  color: var(--signup-dark-accent);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-web-heading h1,
body.platform-web.dark .signup-pregnant-content .signup-pregnant-date-heading span {
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-form {
  border-color: var(--signup-dark-border);
  background: rgba(13, 19, 15, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-toggle-btn {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-control);
  color: var(--signup-dark-text);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-toggle-btn:hover {
  border-color: var(--signup-dark-border-strong);
  background: #202b23;
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-toggle-btn.active {
  border-color: var(--signup-dark-accent);
  background: rgba(168, 207, 143, 0.12);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-toggle-btn.active .toggle-icon {
  color: var(--signup-dark-accent);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-datetime-wrapper {
  border-color: var(--signup-dark-border);
  background: var(--signup-dark-control);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime {
  color: var(--signup-dark-text);
  --background: transparent;
  --background-rgb: 13, 19, 15;
  --wheel-fade-background-rgb: 13, 19, 15;
  --ion-color-step-300: #39443c;
  --ion-color-step-650: #9da9a1;
  --ion-text-color: var(--signup-dark-text);
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime::part(wheel-item) {
  color: #9da9a1;
  opacity: 0.76;
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-datetime-wrapper ion-datetime::part(wheel-item-active) {
  color: var(--signup-dark-text);
  opacity: 1;
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-next-btn {
  --background: #a5ce89;
  --background-hover: #b3d999;
  --background-activated: #95be7b;
  --color: #0b110d;
}
body.platform-web.dark .signup-pregnant-content .signup-pregnant-next-btn.button-disabled {
  --background: #2a352e;
  --color: #7f8b83;
}
@media (width < 900px) {
  body.platform-web.dark .signup-pregnant-content .login-web-brand {
    border-right: 0;
    border-bottom: 1px solid rgba(205, 226, 210, 0.09);
  }
}

/* stylelint-disable no-duplicate-selectors -- intentional final cascade over the base shop theme */
body.platform-web.dark app-header-container.shop-header {
  --background: transparent !important;
  background: radial-gradient(circle at 84% 6%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%) !important;
  border-bottom-color: rgba(205, 226, 210, 0.09);
  box-shadow: inset 0 -1px 0 rgba(205, 226, 210, 0.04);
}
body.platform-web.dark app-header-container.shop-header ion-header {
  --background: transparent !important;
  background: transparent !important;
}
body.platform-web.dark app-header-container.shop-header .shop-search-row {
  background: transparent !important;
}
body.platform-web.dark app-header-container.shop-header .shop-web-back {
  border-color: rgba(205, 226, 210, 0.14);
  background: #111914;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.24);
  color: #acd391;
}
body.platform-web.dark app-header-container.shop-header .shop-web-back:hover {
  border-color: rgba(168, 207, 143, 0.44);
  background: #172019;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher {
  min-height: 56px;
  padding: 6px 7px;
  border: 1px solid rgba(205, 226, 210, 0.14);
  border-radius: 17px;
  background: linear-gradient(180deg, rgba(168, 207, 143, 0.04), transparent), #111914;
  color: #f2f6f3;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher:hover {
  border-color: rgba(168, 207, 143, 0.38);
  background: linear-gradient(180deg, rgba(168, 207, 143, 0.07), transparent), #172019;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.28), 0 0 0 3px rgba(168, 207, 143, 0.07), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  transform: translateY(-1px);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher:focus-visible {
  border-color: rgba(168, 207, 143, 0.48);
  outline: 3px solid rgba(168, 207, 143, 0.13);
  outline-offset: 3px;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher-icon {
  border-color: rgba(168, 207, 143, 0.18);
  background: linear-gradient(145deg, rgba(168, 207, 143, 0.13), rgba(168, 207, 143, 0.05)), #172019;
  color: #acd391;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 7px 16px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher-copy strong {
  color: #f2f6f3;
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher-copy > span {
  color: #9da9a1;
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher-action {
  background: linear-gradient(135deg, #b3d99a, #91bb77);
  color: #0b110d;
  box-shadow: 0 9px 22px rgba(0, 0, 0, 0.25);
}
body.platform-web.dark app-header-container.shop-header .shop-search-launcher:hover .shop-search-launcher-action {
  background: linear-gradient(135deg, #c0e3aa, #9fc585);
  box-shadow: 0 11px 26px rgba(0, 0, 0, 0.3), 0 0 0 3px rgba(168, 207, 143, 0.08);
}
body.platform-web.dark .shop-content {
  --background:
    radial-gradient(circle at 84% 6%, rgb(168 207 143 / 7%), transparent 34rem),
    radial-gradient(circle at 0% 42%, rgb(229 111 135 / 3%), transparent 28rem),
    linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
  color: #f2f6f3;
}
body.platform-web.dark .shop-content::part(scroll) {
  background: radial-gradient(circle at 84% 6%, rgba(168, 207, 143, 0.07), transparent 34rem), radial-gradient(circle at 0% 42%, rgba(229, 111, 135, 0.03), transparent 28rem), linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
}
body.platform-web.dark .shop-content > .shop-banner-shell {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px;
  background: transparent !important;
  box-shadow: none !important;
}
body.platform-web.dark .shop-content > .shop-banner-shell::before {
  display: none;
}
body.platform-web.dark .shop-content > .shop-banner-shell app-banner-carousel .banner-carousel {
  margin: 0 !important;
}
body.platform-web.dark .shop-content app-banner-carousel .banner-carousel,
body.platform-web.dark .shop-content app-banner-carousel .carousel-slides,
body.platform-web.dark .shop-content app-banner-carousel .carousel-slide {
  border-radius: 15px;
}
body.platform-web.dark .shop-content app-banner-carousel .carousel-slide {
  border: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web.dark .shop-content app-banner-carousel .carousel-image {
  object-fit: cover;
  --object-fit: cover;
}
body.platform-web.dark .shop-content app-banner-carousel .pagination-dot {
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: rgba(239, 246, 240, 0.42);
}
body.platform-web.dark .shop-content app-banner-carousel .pagination-dot.active {
  border-color: #acd391;
  background: #acd391;
  box-shadow: 0 0 16px rgba(168, 207, 143, 0.34);
}
body.platform-web.dark .shop-content .shop-content-padded {
  padding-top: 2px;
}
body.platform-web.dark .shop-content .shop-category-section,
body.platform-web.dark .shop-content app-product-section {
  display: block;
  position: relative;
  padding: 24px;
  border: 1px solid rgba(205, 226, 210, 0.11);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.025), transparent 38%), #0f1612;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .shop-content .shop-category-section::before,
body.platform-web.dark .shop-content app-product-section::before {
  position: absolute;
  top: 0;
  left: 24px;
  width: 88px;
  height: 2px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #a8cf8f, rgba(168, 207, 143, 0));
  content: "";
}
body.platform-web.dark .shop-content .shop-category-section {
  margin-block: 12px;
}
body.platform-web.dark .shop-content app-product-section {
  margin-block: 12px;
}
body.platform-web.dark .shop-content .shop-category-heading,
body.platform-web.dark .shop-content .product-section-title {
  color: #f2f6f3;
  letter-spacing: -0.02em;
}
body.platform-web.dark .shop-content .shop-category-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
body.platform-web.dark .shop-content .shop-category-heading::after {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, rgba(205, 226, 210, 0.12), transparent);
  content: "";
}
body.platform-web.dark .shop-content .product-section-eyebrow {
  color: #acd391;
}
body.platform-web.dark .shop-content .product-section-count,
body.platform-web.dark .shop-content app-product-card .product-card-review-count,
body.platform-web.dark .shop-content app-product-card .product-card-original-price {
  color: #9da9a1;
}
body.platform-web.dark .shop-content .shop-category-card {
  min-height: 108px;
  gap: 10px;
  border-color: rgba(205, 226, 210, 0.12);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 48%), #151e18;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .shop-content .shop-category-card:hover {
  border-color: rgba(168, 207, 143, 0.42);
  background: radial-gradient(circle at 50% 0%, rgba(168, 207, 143, 0.1), transparent 58%), #1a251e;
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transform: none;
}
body.platform-web.dark .shop-content .shop-category-card.is-selected {
  border-color: #8fba73;
  background: radial-gradient(circle at 50% 0%, rgba(168, 207, 143, 0.17), transparent 58%), #18241c;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.28), inset 0 0 0 1px rgba(168, 207, 143, 0.1), 0 0 0 2px rgba(168, 207, 143, 0.05);
}
body.platform-web.dark .shop-content .shop-category-icon {
  flex-basis: 50px;
  width: 50px;
  height: 50px;
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 8px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark .shop-content .shop-category-toggle {
  border: 1px solid rgba(168, 207, 143, 0.32);
  background: linear-gradient(180deg, rgba(168, 207, 143, 0.12), rgba(168, 207, 143, 0.07));
  box-shadow: none;
  color: #acd391;
}
body.platform-web.dark .shop-content .shop-category-toggle:hover {
  border-color: #acd391;
  background: #acd391;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
  color: #0b110d;
}
body.platform-web.dark .shop-content app-product-card .product-card,
body.platform-web.dark .shop-content app-product-card-skeleton .product-card-skeleton {
  border-color: rgba(205, 226, 210, 0.12);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 50%), #141d17;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .shop-content app-product-card .product-card:hover {
  border-color: rgba(168, 207, 143, 0.38);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.36), 0 0 0 2px rgba(168, 207, 143, 0.05);
}
body.platform-web.dark .shop-content app-product-card .product-card-name {
  color: #f2f6f3;
}
body.platform-web.dark .shop-content app-product-card .product-card-current-price {
  color: #f27a8d;
}
body.platform-web.dark .shop-content .product-section__link-btn {
  --background: rgb(168 207 143 / 7%);
  --background-hover: rgb(168 207 143 / 12%);
  --border-color: rgb(168 207 143 / 22%);
  --border-radius: 12px;
  --border-style: solid;
  --border-width: 1px;
  --color: #acd391;
  --padding-end: 15px;
  --padding-start: 15px;
  min-height: 38px;
  border-radius: 12px;
  color: #acd391;
}
body.platform-web.dark .shop-content .product-section__link-btn:hover {
  --border-color: rgb(168 207 143 / 42%);
}
body.platform-web.dark .shop-content app-product-card .product-card-quickview {
  border-color: rgba(205, 226, 210, 0.16);
  background: rgba(18, 25, 20, 0.94);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.32);
  color: #f2f6f3;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
body.platform-web.dark .shop-content app-product-card .product-card-quickview:hover {
  border-color: #acd391;
  color: #acd391;
}
body.platform-web.dark .shop-content .promotional-banner-carousel {
  margin-block: 12px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 16px;
  background: transparent !important;
  box-shadow: none !important;
}
body.platform-web.dark .shop-content .promotional-banner-carousel app-banner-carousel .banner-carousel {
  margin: 0 !important;
}
body.platform-web.dark .shop-content .my-order-btn {
  --background: #172019;
  --background-hover: #202b23;
  --background-activated: #263329;
  --border-color: rgb(168 207 143 / 46%);
  --color: #acd391;
}
@media (width < 768px) {
  body.platform-web.dark .shop-content .shop-category-section,
  body.platform-web.dark .shop-content app-product-section {
    padding: 20px;
    border-radius: 18px;
  }
}

body.platform-web:not(.dark) app-header-container.shop-header {
  --background: transparent !important;
  background: radial-gradient(circle at 84% 4%, rgba(123, 164, 101, 0.09), transparent 32rem), linear-gradient(180deg, #f5f8f3 0%, #f2f6f0 100%) !important;
  border-bottom: 1px solid rgba(96, 128, 77, 0.1);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.72);
}
body.platform-web:not(.dark) app-header-container.shop-header ion-header {
  --background: transparent !important;
  background: transparent !important;
}
body.platform-web:not(.dark) .shop-content {
  --background:
    radial-gradient(circle at 86% 4%, rgb(123 164 101 / 10%), transparent 34rem),
    radial-gradient(circle at 0% 40%, rgb(229 111 135 / 5%), transparent 28rem),
    linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
  color: #202720;
}
body.platform-web:not(.dark) .shop-content::part(scroll) {
  background: radial-gradient(circle at 86% 4%, rgba(123, 164, 101, 0.1), transparent 34rem), radial-gradient(circle at 0% 40%, rgba(229, 111, 135, 0.05), transparent 28rem), linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
}
body.platform-web:not(.dark) .shop-content app-banner-carousel {
  --banner-fallback-color: #e7ede3;
  --banner-fallback-image: linear-gradient(135deg, #eff4ec 0%, #e1e9dd 58%, #d7e1d3 100%);
}
body.platform-web:not(.dark) .shop-content > .shop-banner-shell {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 16px;
  background: transparent !important;
  box-shadow: none !important;
}
body.platform-web:not(.dark) .shop-content > .shop-banner-shell app-banner-carousel .banner-carousel {
  margin: 0 !important;
}
body.platform-web:not(.dark) .shop-content .shop-content-padded {
  padding-top: 2px;
}
body.platform-web:not(.dark) .shop-content .shop-category-section,
body.platform-web:not(.dark) .shop-content app-product-section {
  position: relative;
  display: block;
  padding: 24px;
  border: 1px solid rgba(101, 132, 82, 0.13);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(249, 252, 247, 0.88)), #fff;
  box-shadow: 0 16px 42px rgba(61, 84, 48, 0.08), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .shop-content .shop-category-section::before,
body.platform-web:not(.dark) .shop-content app-product-section::before {
  position: absolute;
  top: 0;
  left: 24px;
  width: 88px;
  height: 2px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #7ea563, rgba(126, 165, 99, 0));
  content: "";
}
body.platform-web:not(.dark) .shop-content .shop-category-section,
body.platform-web:not(.dark) .shop-content app-product-section {
  margin-block: 12px;
}
body.platform-web:not(.dark) .shop-content .shop-category-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
  color: #202720;
  letter-spacing: -0.02em;
}
body.platform-web:not(.dark) .shop-content .shop-category-heading::after {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, rgba(101, 132, 82, 0.14), transparent);
  content: "";
}
body.platform-web:not(.dark) .shop-content .product-section-title {
  color: #202720;
  letter-spacing: -0.02em;
}
body.platform-web:not(.dark) .shop-content .product-section-eyebrow {
  color: #6f9557;
}
body.platform-web:not(.dark) .shop-content .product-section-count {
  color: #758075;
}
body.platform-web:not(.dark) .shop-content .shop-category-card {
  min-height: 108px;
  gap: 10px;
  border-color: rgba(101, 132, 82, 0.14);
  border-radius: 15px;
  background: linear-gradient(145deg, #fff, #f7faf5);
  box-shadow: 0 9px 22px rgba(61, 84, 48, 0.07), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .shop-content .shop-category-card:hover {
  border-color: rgba(111, 149, 87, 0.42);
  background: linear-gradient(145deg, #fff, #f0f7ec);
  box-shadow: 0 14px 30px rgba(61, 84, 48, 0.12), 0 0 0 2px rgba(123, 164, 101, 0.05);
  transform: none;
}
body.platform-web:not(.dark) .shop-content .shop-category-card.is-selected {
  border-color: #7da461;
  background: radial-gradient(circle at 50% 0%, rgba(123, 164, 101, 0.15), transparent 60%), linear-gradient(145deg, #f9fcf7, #edf6e8);
  box-shadow: 0 14px 30px rgba(61, 84, 48, 0.13), inset 0 0 0 1px rgba(123, 164, 101, 0.08);
}
body.platform-web:not(.dark) .shop-content .shop-category-icon {
  flex-basis: 50px;
  width: 50px;
  height: 50px;
  border-radius: 14px;
  box-shadow: 0 7px 16px rgba(61, 84, 48, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.84);
}
body.platform-web:not(.dark) .shop-content .shop-category-toggle {
  border: 1px solid rgba(111, 149, 87, 0.28);
  background: linear-gradient(180deg, #f4f9f1, #ebf4e6);
  color: #63834f;
  box-shadow: 0 7px 16px rgba(61, 84, 48, 0.07);
}
body.platform-web:not(.dark) .shop-content .shop-category-toggle:hover {
  border-color: #7da461;
  background: #7da461;
  color: #fff;
}
body.platform-web:not(.dark) .shop-content app-product-card .product-card,
body.platform-web:not(.dark) .shop-content app-product-card-skeleton .product-card-skeleton {
  border-color: rgba(101, 132, 82, 0.13);
  background: linear-gradient(145deg, #fff, #f8faf7);
  box-shadow: 0 11px 28px rgba(61, 84, 48, 0.08), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .shop-content app-product-card .product-card:hover {
  border-color: rgba(111, 149, 87, 0.36);
  box-shadow: 0 19px 42px rgba(61, 84, 48, 0.14), 0 0 0 2px rgba(123, 164, 101, 0.04);
}
body.platform-web:not(.dark) .shop-content .product-section__link-btn {
  --background: rgb(123 164 101 / 8%);
  --background-hover: rgb(123 164 101 / 14%);
  --border-color: rgb(111 149 87 / 22%);
  --border-radius: 12px;
  --border-style: solid;
  --border-width: 1px;
  --color: #63834f;
  --padding-end: 15px;
  --padding-start: 15px;
  min-height: 38px;
}
body.platform-web:not(.dark) .shop-content .promotional-banner-carousel {
  margin-block: 12px !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 16px;
  background: transparent !important;
  box-shadow: none !important;
}
body.platform-web:not(.dark) .shop-content .promotional-banner-carousel app-banner-carousel .banner-carousel {
  margin: 0 !important;
}
@media (width < 768px) {
  body.platform-web:not(.dark) .shop-content .shop-category-section,
  body.platform-web:not(.dark) .shop-content app-product-section {
    padding: 20px;
    border-radius: 18px;
  }
}

body.platform-web:not(.dark) .search-product-header {
  background: radial-gradient(circle at 84% 4%, rgba(123, 164, 101, 0.09), transparent 32rem), linear-gradient(180deg, #f5f8f3 0%, #f2f6f0 100%) !important;
  border-bottom: 1px solid rgba(96, 128, 77, 0.1);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.72) !important;
}
body.platform-web:not(.dark) .search-product-header,
body.platform-web:not(.dark) .search-product-header ion-header,
body.platform-web:not(.dark) .search-product-header app-header-search {
  --background: transparent !important;
  background: transparent !important;
}
body.platform-web:not(.dark) .search-product-header .search-product-toolbar {
  padding-block: 10px;
}
body.platform-web:not(.dark) .search-product-header .search-product-back-btn {
  border-color: rgba(101, 132, 82, 0.14);
  background: #fff;
  color: #5f7f4d;
  box-shadow: 0 9px 22px rgba(61, 84, 48, 0.1), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .search-product-header .search-product-back-btn:hover {
  border-color: rgba(111, 149, 87, 0.4);
  background: #f1f7ed;
  color: #4f713d;
  box-shadow: 0 13px 28px rgba(61, 84, 48, 0.14);
}
body.platform-web:not(.dark) .search-product-header app-header-search {
  padding-block: 0;
}
body.platform-web:not(.dark) .search-product-header .search-container {
  min-height: 58px;
  gap: 0;
  padding: 5px 6px 5px 10px !important;
  border: 1px solid rgba(87, 121, 67, 0.18);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(129, 168, 105, 0.05), transparent 42%), #fff !important;
  box-shadow: 0 10px 28px rgba(61, 84, 48, 0.09), inset 0 1px 0 #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
body.platform-web:not(.dark) .search-product-header .search-container:hover {
  border-color: rgba(101, 139, 78, 0.3);
  box-shadow: 0 14px 34px rgba(61, 84, 48, 0.12), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .search-product-header .search-container:focus-within {
  border-color: #7da662;
  box-shadow: 0 0 0 4px rgba(125, 166, 98, 0.13), 0 16px 38px rgba(61, 84, 48, 0.13);
}
body.platform-web:not(.dark) .search-product-header ion-searchbar {
  --background: transparent;
  --box-shadow: none;
  --color: #202720;
  --icon-color: #65884f;
  --placeholder-color: #727d72;
  --placeholder-opacity: 1;
  min-height: 46px;
  height: 46px;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: none !important;
}
body.platform-web:not(.dark) .search-product-header .filter-content {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  padding-left: 8px;
  border-left: 1px solid rgba(87, 121, 67, 0.12);
}
body.platform-web:not(.dark) .search-product-header .filter-btn {
  --background: #eaf3e5;
  --background-hover: #dcebd4;
  --background-activated: #d2e4c8;
  --border-color: rgb(93 130 70 / 16%);
  --border-style: solid;
  --border-width: 1px;
  --border-radius: 12px;
  --color: #4f713d;
  --box-shadow: none;
  width: auto;
  min-width: 94px;
  height: 42px;
}
body.platform-web:not(.dark) .search-product-header .filter-btn ion-icon {
  color: #5f8448;
}
body.platform-web:not(.dark) .search-product-content {
  --padding-top: 0;
  --background:
    radial-gradient(circle at 86% 4%, rgb(123 164 101 / 10%), transparent 34rem),
    radial-gradient(circle at 0% 40%, rgb(229 111 135 / 5%), transparent 28rem),
    linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
  color: #202720;
}
body.platform-web:not(.dark) .search-product-content::part(scroll) {
  background: radial-gradient(circle at 86% 4%, rgba(123, 164, 101, 0.1), transparent 34rem), radial-gradient(circle at 0% 40%, rgba(229, 111, 135, 0.05), transparent 28rem), linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
}
body.platform-web:not(.dark) .search-product-content .search-product-body {
  width: min(100%, 1248px);
  margin-inline: auto;
  padding: 12px 24px 36px;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero {
  min-height: 144px;
  border-color: rgba(101, 132, 82, 0.14);
  background: radial-gradient(circle at 78% 8%, rgba(123, 164, 101, 0.18), transparent 34%), radial-gradient(circle at 8% 110%, rgba(229, 111, 135, 0.08), transparent 36%), linear-gradient(135deg, #fff 0%, #f2f8ee 58%, #eaf3e5 100%);
  box-shadow: 0 18px 44px rgba(61, 84, 48, 0.11), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero::after {
  position: absolute;
  top: -72px;
  right: -44px;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(123, 164, 101, 0.12);
  border-radius: 50%;
  content: "";
  box-shadow: 0 0 0 34px rgba(123, 164, 101, 0.04), 0 0 0 68px rgba(123, 164, 101, 0.02);
  pointer-events: none;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-eyebrow,
body.platform-web:not(.dark) .search-product-content .search-catalog-section-eyebrow {
  color: #6f9557;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-copy h1 {
  color: #202720;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-copy p {
  color: #697369;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-feature {
  border-color: rgba(101, 132, 82, 0.14);
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 11px 26px rgba(61, 84, 48, 0.1), inset 0 1px 0 #fff;
  -webkit-backdrop-filter: blur(14px);
          backdrop-filter: blur(14px);
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-feature strong {
  color: #202720;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-feature small {
  color: #758075;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-hero-icon {
  border: 1px solid rgba(123, 164, 101, 0.16);
  background: linear-gradient(145deg, #edf5e8, #dfeeda);
  color: #63834f;
}
body.platform-web:not(.dark) .search-product-content .search-results-section,
body.platform-web:not(.dark) .search-product-content .products-section {
  padding: 22px 24px 24px;
  border: 1px solid rgba(101, 132, 82, 0.13);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(249, 252, 247, 0.9)), #fff;
  box-shadow: 0 18px 46px rgba(61, 84, 48, 0.09), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-section-heading {
  border-bottom-color: rgba(101, 132, 82, 0.12);
}
body.platform-web:not(.dark) .search-product-content .search-catalog-section-heading .section-title,
body.platform-web:not(.dark) .search-product-content .search-catalog-section-heading h2 {
  padding-bottom: 0;
  border: 0;
  color: #202720;
}
body.platform-web:not(.dark) .search-product-content .search-catalog-count {
  border: 1px solid rgba(111, 149, 87, 0.16);
  background: rgba(123, 164, 101, 0.09);
  color: #63834f;
}
body.platform-web:not(.dark) .search-product-content .products-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card,
body.platform-web:not(.dark) .search-product-content app-product-card-skeleton .product-card-skeleton {
  border-color: rgba(101, 132, 82, 0.13);
  background: linear-gradient(145deg, #fff, #f8faf7);
  box-shadow: 0 12px 30px rgba(61, 84, 48, 0.09), inset 0 1px 0 #fff;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 312px;
  height: 100%;
  aspect-ratio: auto;
  flex-direction: column;
  padding: 12px;
  border-radius: 18px;
  overflow: hidden;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card:hover {
  border-color: rgba(111, 149, 87, 0.38);
  box-shadow: 0 20px 46px rgba(61, 84, 48, 0.15), 0 0 0 2px rgba(123, 164, 101, 0.04);
  transform: translateY(-5px);
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-image-container {
  position: relative;
  top: auto;
  left: auto;
  flex: 0 0 auto;
  width: 100%;
  height: 174px;
  min-height: 174px;
  max-height: 174px;
  aspect-ratio: auto;
  overflow: visible;
  border: 1px solid rgba(101, 132, 82, 0.1);
  border-radius: 14px;
  background: radial-gradient(circle at 50% 38%, #fff, #f0f5ed 72%);
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-image {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 13px;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-image ion-img::part(image) {
  object-fit: contain;
  object-position: center;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-cart-control {
  right: 10px;
  bottom: 10px;
  width: 38px;
  min-width: 38px;
  height: 38px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  box-shadow: 0 9px 20px rgba(229, 111, 135, 0.26);
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-info {
  position: static;
  width: 100%;
  min-height: 0;
  margin-top: auto;
  padding-top: 12px;
  justify-content: flex-end;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-name {
  display: -webkit-box;
  min-height: 0;
  overflow: hidden;
  color: #202720;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
  white-space: normal;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-rating,
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-pricing {
  position: static;
  width: 100%;
  height: auto;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-rating {
  gap: 3px;
  min-height: 16px;
  margin-top: 4px;
  padding-top: 0;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-rating ion-icon {
  flex: 0 0 13px;
  width: 13px;
  height: 13px;
  font-size: 13px;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-review-count {
  margin-left: 4px;
  color: #7a857b;
  font-size: 12px;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-pricing {
  margin-top: 8px;
  min-height: 34px;
  padding-top: 11px;
  border-top: 1px solid rgba(101, 132, 82, 0.1);
  overflow: visible;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-pricing-values {
  overflow: visible;
}
body.platform-web:not(.dark) .search-product-content app-product-card .product-card-current-price {
  color: #df5f77;
  font-size: 15px;
  font-weight: 800;
}
body.platform-web:not(.dark) .search-product-content .empty-state,
body.platform-web:not(.dark) .search-product-content .no-results {
  border-color: rgba(101, 132, 82, 0.13);
  background: radial-gradient(circle at 50% 0%, rgba(123, 164, 101, 0.1), transparent 60%), #fff;
  box-shadow: 0 17px 38px rgba(61, 84, 48, 0.1);
  color: #758075;
}
body.platform-web:not(.dark) .search-product-content .empty-state .no-results-icon,
body.platform-web:not(.dark) .search-product-content .empty-state .empty-icon,
body.platform-web:not(.dark) .search-product-content .no-results .no-results-icon,
body.platform-web:not(.dark) .search-product-content .no-results .empty-icon {
  color: #729659;
}
body.platform-web:not(.dark) .search-product-content .empty-state .no-results-text,
body.platform-web:not(.dark) .search-product-content .empty-state .empty-text,
body.platform-web:not(.dark) .search-product-content .no-results .no-results-text,
body.platform-web:not(.dark) .search-product-content .no-results .empty-text {
  color: #202720;
}
@media (width >= 768px) and (width < 1100px) {
  body.platform-web:not(.dark) .search-product-content .products-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body.platform-web:not(.dark) .search-product-content app-product-card .product-card {
    min-height: 292px;
  }
  body.platform-web:not(.dark) .search-product-content app-product-card .product-card-image-container {
    height: 154px;
    min-height: 154px;
    max-height: 154px;
  }
}
@media (width < 768px) {
  body.platform-web:not(.dark) .search-product-content .search-product-body {
    padding: 10px 16px 32px;
  }
  body.platform-web:not(.dark) .search-product-content .search-results-section,
  body.platform-web:not(.dark) .search-product-content .products-section {
    padding: 16px;
    border-radius: 18px;
  }
  body.platform-web:not(.dark) .search-product-content .products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.platform-web:not(.dark) .search-product-content app-product-card .product-card {
    min-height: 262px;
  }
  body.platform-web:not(.dark) .search-product-content app-product-card .product-card-image-container {
    height: 124px;
    min-height: 124px;
    max-height: 124px;
  }
}

/* stylelint-enable no-duplicate-selectors */
/* Course details learning workspace */
/* stylelint-disable no-duplicate-selectors -- page-level desktop composition intentionally overrides the shared learning styles */
body.platform-web {
  /* Refined course-content sidebar */
}
body.platform-web:has(.course-preview-modal-backdrop) {
  overflow: hidden;
}
body.platform-web .cd-load-error {
  display: grid;
  width: min(100% - 48px, 620px);
  min-height: 360px;
  margin: 64px auto;
  padding: 48px;
  place-items: center;
  align-content: center;
  border: 1px solid #dbe6d7;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 46px rgba(43, 70, 36, 0.1);
  text-align: center;
}
body.platform-web .cd-load-error-icon {
  display: grid;
  width: 52px;
  height: 52px;
  margin-bottom: 16px;
  place-items: center;
  border: 1px solid #d5e4ce;
  border-radius: 15px;
  background: #edf5e8;
  color: #648b50;
}
body.platform-web .cd-load-error-icon ion-icon {
  font-size: 25px;
}
body.platform-web .cd-load-error > span {
  color: #648b50;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.platform-web .cd-load-error h1 {
  margin: 7px 0 8px;
  color: #20281f;
  font-size: 26px;
  font-weight: 780;
}
body.platform-web .cd-load-error > p {
  max-width: 420px;
  margin: 0;
  color: #707b6e;
  font-size: 14px;
  line-height: 1.55;
}
body.platform-web .cd-load-error-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 22px;
}
body.platform-web .cd-load-error-actions ion-button {
  --border-radius: 10px;
  --color: #557843;
  min-width: 112px;
  margin: 0;
}
body.platform-web .cd-load-error-actions ion-button:last-child {
  --background: #79a25f;
  --color: #fff;
}
body.platform-web .cd-web-grid {
  display: grid;
  grid-template-areas: "command command" "player sidebar" "actions sidebar" "overview sidebar";
  grid-template-columns: minmax(0, 1fr) 410px;
  gap: 16px;
  width: min(100%, 1440px);
  max-width: none;
  margin: 0 auto;
  padding: 24px 24px 56px;
  align-items: start;
}
body.platform-web .cd-web-grid > .cd-web-back-row {
  grid-area: command;
  display: flex;
  align-items: center;
  min-height: 60px;
  margin: 0;
  padding: 8px 12px;
  border: 1px solid #dce7d8;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 10px 30px rgba(46, 72, 39, 0.08);
  -webkit-backdrop-filter: blur(16px);
          backdrop-filter: blur(16px);
}
body.platform-web .cd-web-back-row .cd-web-back-btn {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  min-height: 42px;
  margin: 0 12px 0 0;
  border: 1px solid #d6e2d2;
  border-radius: 12px;
  background: #f4f8f1;
  box-shadow: none;
  color: #37502d;
}
body.platform-web .cd-web-course-identity {
  display: grid;
  min-width: 0;
  gap: 2px;
  padding-left: 14px;
  border-left: 1px solid #dce7d8;
}
body.platform-web .cd-web-course-identity span,
body.platform-web .cd-course-content-heading span,
body.platform-web .cd-web-overview-eyebrow {
  color: #648b50;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.11em;
  line-height: 1.2;
  text-transform: uppercase;
}
body.platform-web .cd-web-course-identity strong {
  overflow: hidden;
  color: #20281f;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.platform-web .cd-web-command-progress {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  padding: 8px 10px 8px 14px;
  color: #6c786a;
  font-size: 12px;
  font-weight: 600;
}
body.platform-web .cd-web-command-progress strong {
  display: grid;
  min-width: 40px;
  min-height: 34px;
  place-items: center;
  border: 1px solid #cfe0c7;
  border-radius: 10px;
  background: #eaf3e5;
  color: #527640;
  font-size: 13px;
}
body.platform-web .cd-web-grid > .video-section {
  grid-area: player;
  position: relative;
  top: auto;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 1px solid #26362a;
  border-radius: 18px;
  background: #090d0a;
  box-shadow: 0 18px 46px rgba(28, 49, 24, 0.16);
}
body.platform-web .cd-web-grid > .course-video-actions {
  grid-area: actions;
  width: 100%;
  margin: 0;
}
body.platform-web .cd-web-grid .course-video-panel-header {
  display: none;
}
body.platform-web .cd-web-grid .video-container,
body.platform-web .cd-web-grid .video-player-container,
body.platform-web .cd-web-grid .video-player-wrapper {
  aspect-ratio: 16/9;
  min-height: 0;
  margin: 0;
  border: 0;
  border-radius: 0 !important;
  background: #080a08;
  box-shadow: none;
}
body.platform-web .cd-web-grid .video-container img,
body.platform-web .cd-web-grid .video-container video,
body.platform-web .cd-web-grid .video-container iframe {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.platform-web .cd-web-grid > .course-details-section {
  grid-area: sidebar;
  position: sticky;
  top: 16px;
  overflow: hidden auto;
  max-height: calc(100vh - 32px);
  margin: 0;
  padding: 22px;
  border: 1px solid #dbe6d7;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 46px rgba(43, 70, 36, 0.11);
  scrollbar-color: #9eba8f transparent;
  scrollbar-width: thin;
}
body.platform-web .cd-is-accessible > .course-details-section {
  padding: 0;
}
body.platform-web .cd-course-content-heading {
  position: sticky;
  z-index: 3;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 18px 16px;
  border-bottom: 1px solid #dfe8dc;
  background: rgba(255, 255, 255, 0.96);
  -webkit-backdrop-filter: blur(14px);
          backdrop-filter: blur(14px);
}
body.platform-web .cd-course-content-heading h2 {
  margin: 4px 0 0;
  color: #20281f;
  font-size: 18px;
  font-weight: 750;
  line-height: 1.25;
}
body.platform-web .cd-course-content-heading > strong {
  flex: 0 0 auto;
  padding: 7px 10px;
  border: 1px solid #d1e0cb;
  border-radius: 999px;
  background: #f0f6ed;
  color: #5c7f49;
  font-size: 12px;
  font-weight: 700;
}
body.platform-web .cd-is-accessible > .course-details-section > .course-title,
body.platform-web .cd-is-accessible > .course-details-section > .course-instructor,
body.platform-web .cd-is-accessible > .course-details-section > .course-description {
  display: none;
}
body.platform-web .cd-is-accessible > .course-details-section > .progress-section {
  margin: 14px 16px 10px;
  padding: 12px 14px;
  border: 1px solid #dfe9dc;
  border-radius: 12px;
  background: #f6f9f4;
}
body.platform-web .cd-is-accessible > .course-details-section > .review-btn {
  width: auto;
  margin: 0 16px 14px;
}
body.platform-web .cd-is-accessible > .course-details-section > .review-btn ion-button {
  width: 100%;
  margin: 0;
}
body.platform-web .cd-is-accessible .course-details-section > .tab-content {
  margin: 0;
  padding: 0 0 6px;
}
body.platform-web .cd-is-accessible .curriculum-tab {
  display: block;
  margin: 0;
  padding: 0;
}
body.platform-web .cd-is-accessible .curriculum-card {
  overflow: visible;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #e0e8dd;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .cd-is-accessible .curriculum-card:last-child {
  border-bottom: 0;
}
body.platform-web .cd-is-accessible .curriculum-header {
  min-height: 72px;
  padding: 14px 16px;
  transition: background-color 160ms ease;
}
body.platform-web .cd-is-accessible .curriculum-header:hover {
  background: #f3f7f1;
}
body.platform-web .cd-is-accessible .curriculum-card.expanded .curriculum-header {
  background: #eef5ea;
  box-shadow: inset 3px 0 0 #79a663;
}
body.platform-web .cd-section-index {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid #d3e2cd;
  border-radius: 9px;
  background: #f1f6ee;
  color: #5b7d4a;
  font-size: 11px;
  font-weight: 800;
}
body.platform-web .cd-is-accessible .curriculum-thumb {
  display: none;
}
body.platform-web .cd-is-accessible .curriculum-main {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
body.platform-web .cd-is-accessible .curriculum-lessons {
  order: 2;
  color: #71806e;
  font-size: 11px;
  line-height: 1.35;
}
body.platform-web .cd-is-accessible .curriculum-title {
  order: 1;
  color: #273025;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}
body.platform-web .cd-is-accessible .curriculum-meta {
  order: 3;
  color: #839080;
  font-size: 11px;
}
body.platform-web .cd-is-accessible .curriculum-chevron {
  color: #648b50;
}
body.platform-web .cd-is-accessible .curriculum-details {
  margin: 0;
  padding: 0 16px 14px;
  border: 0;
}
body.platform-web .cd-is-accessible .curriculum-lesson {
  min-height: 42px;
  margin: 0;
  padding: 9px 10px;
  border: 0;
  border-radius: 9px;
  background: #f6f9f4;
}
body.platform-web .cd-is-accessible .curriculum-lesson + .curriculum-lesson {
  margin-top: 6px;
}
body.platform-web .cd-is-accessible .curriculum-tab {
  padding: 2px 0 10px;
}
body.platform-web .cd-is-accessible .curriculum-card,
body.platform-web .cd-is-accessible .curriculum-card:last-child {
  overflow: hidden;
  margin: 8px 10px;
  border: 1px solid #dce7d8;
  border-radius: 13px;
  background: #fbfdf9;
  box-shadow: 0 7px 20px rgba(48, 77, 41, 0.05);
}
body.platform-web .cd-is-accessible .curriculum-header {
  min-height: 68px;
  gap: 11px;
  padding: 12px;
}
body.platform-web .cd-is-accessible .curriculum-card.expanded .curriculum-header {
  box-shadow: inset 3px 0 0 #79a663;
}
body.platform-web .cd-is-accessible .curriculum-chevron {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid #d9e5d5;
  border-radius: 9px;
  background: #f4f8f1;
}
body.platform-web .cd-is-accessible .curriculum-chevron ion-icon {
  font-size: 16px;
}
body.platform-web .cd-is-accessible .curriculum-details {
  padding: 10px;
  border-top: 1px solid #e1e9de;
  background: #f8fbf6;
}
body.platform-web .cd-is-accessible .curriculum-details-top {
  margin: 0 2px 9px;
  padding: 0 2px;
}
body.platform-web .cd-is-accessible .curriculum-details-top .details-label,
body.platform-web .cd-is-accessible .curriculum-details-top .details-action {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
body.platform-web .cd-is-accessible .curriculum-lesson {
  min-height: 56px;
  gap: 10px;
  padding: 10px 9px 10px 12px;
  border: 1px solid #e0e9dd;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(48, 77, 41, 0.03);
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}
body.platform-web .cd-is-accessible .curriculum-lesson:hover {
  transform: translateY(-1px);
  border-color: #bfd4b7;
  background: #f8fbf6;
}
body.platform-web .cd-is-accessible .curriculum-lesson.current-video {
  border-color: #85ae70;
  background: #eef6e9;
  box-shadow: inset 3px 0 0 #79a663, 0 5px 14px rgba(62, 99, 50, 0.08);
}
body.platform-web .cd-is-accessible .curriculum-lesson.completed:not(.current-video) {
  background: #f7faf5;
}
body.platform-web .cd-is-accessible .lesson-text {
  min-width: 0;
  padding-right: 4px;
}
body.platform-web .cd-is-accessible .lesson-text .lesson-title {
  overflow: hidden;
  margin-bottom: 5px;
  color: #283126;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.3;
  text-overflow: ellipsis;
}
body.platform-web .cd-is-accessible .lesson-text .lesson-meta {
  gap: 5px;
  color: #758172;
  font-size: 10.5px;
  line-height: 1.2;
}
body.platform-web .cd-is-accessible .lesson-text .lesson-meta ion-icon {
  color: #72955f;
  font-size: 13px;
}
body.platform-web .cd-is-accessible .lesson-status .lesson-actions {
  gap: 5px;
}
body.platform-web .cd-is-accessible .lesson-status .lesson-actions .completed-icon {
  font-size: 17px;
}
body.platform-web .cd-is-accessible .lesson-status .lesson-actions .play-btn {
  --background: #edf5e9;
  --background-hover: #dfedd8;
  --border-radius: 9px;
  --color: #60834e;
  --padding-start: 5px;
  --padding-end: 5px;
  width: 30px;
  height: 30px;
  min-height: 30px;
}
body.platform-web .cd-is-accessible .lesson-status .lesson-actions .play-btn ion-icon {
  font-size: 19px;
}
body.platform-web .cd-web-overview {
  grid-area: overview;
  overflow: hidden;
  border: 1px solid #dbe6d7;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 42px rgba(43, 70, 36, 0.09);
}
body.platform-web .cd-web-overview-tabs {
  display: flex;
  align-items: stretch;
  gap: 4px;
  min-height: 54px;
  padding: 0 18px;
  border-bottom: 1px solid #e0e8dd;
}
body.platform-web .cd-web-overview-tabs button {
  position: relative;
  margin: 0;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: #707b6e;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  cursor: pointer;
}
body.platform-web .cd-web-overview-tabs button::after {
  position: absolute;
  right: 12px;
  bottom: -1px;
  left: 12px;
  height: 2px;
  border-radius: 2px 2px 0 0;
  background: transparent;
  content: "";
}
body.platform-web .cd-web-overview-tabs button:hover,
body.platform-web .cd-web-overview-tabs button.active {
  color: #4f733e;
}
body.platform-web .cd-web-overview-tabs button.active::after {
  background: #79a663;
}
body.platform-web .cd-web-overview-content {
  padding: 24px 26px 26px;
}
body.platform-web .cd-web-overview-content h2 {
  margin: 7px 0 8px;
  color: #20281f;
  font-size: clamp(22px, 2vw, 30px);
  font-weight: 760;
  line-height: 1.2;
}
body.platform-web .cd-web-overview-content > p {
  max-width: 760px;
  margin: 0;
  color: #687466;
  font-size: 14px;
  line-height: 1.65;
}
body.platform-web .cd-web-overview-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 150px));
  gap: 10px;
  margin-top: 22px;
}
body.platform-web .cd-web-overview-meta > span {
  display: grid;
  gap: 2px;
  padding: 11px 13px;
  border: 1px solid #dfe8dc;
  border-radius: 11px;
  background: #f5f8f3;
}
body.platform-web .cd-web-overview-meta strong {
  color: #33442d;
  font-size: 14px;
}
body.platform-web .cd-web-overview-meta small {
  color: #7a8677;
  font-size: 10px;
}
body.platform-web .course-preview-modal-backdrop {
  position: fixed;
  z-index: 20000;
  inset: 0;
  display: grid;
  overflow: hidden auto;
  padding: 24px;
  place-items: start center;
  background: rgba(5, 8, 6, 0.78);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  overscroll-behavior: contain;
}
body.platform-web .course-preview-modal {
  width: min(100%, 860px);
  max-height: calc(100vh - 48px);
  overflow: hidden auto;
  border: 1px solid rgba(205, 226, 210, 0.17);
  border-radius: 20px;
  background: #101512;
  color: #eff4ed;
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.48);
  scrollbar-color: #607b53 transparent;
  scrollbar-width: thin;
}
body.platform-web .course-preview-modal-header {
  position: sticky;
  z-index: 3;
  top: 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 24px 18px;
  border-bottom: 1px solid rgba(205, 226, 210, 0.11);
  background: rgba(16, 21, 18, 0.94);
  -webkit-backdrop-filter: blur(14px);
          backdrop-filter: blur(14px);
}
body.platform-web .course-preview-modal-header span {
  color: #acd391;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
body.platform-web .course-preview-modal-header h2 {
  margin: 6px 0 0;
  color: #f3f6f2;
  font-size: clamp(19px, 2vw, 25px);
  font-weight: 760;
  line-height: 1.25;
}
body.platform-web .course-preview-modal-close {
  display: grid;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(205, 226, 210, 0.16);
  border-radius: 11px;
  background: #19221b;
  color: #dce7d8;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}
body.platform-web .course-preview-modal-close:hover {
  border-color: rgba(172, 211, 145, 0.34);
  background: #202c22;
  transform: scale(1.04);
}
body.platform-web .course-preview-modal-close ion-icon {
  font-size: 21px;
}
body.platform-web .course-preview-modal-player {
  display: grid;
  width: 100%;
  min-height: 420px;
  place-items: center;
  background: #030504;
}
body.platform-web .course-preview-modal-player video {
  display: block;
  width: 100%;
  max-height: min(58vh, 500px);
  aspect-ratio: 16/9;
  background: #000;
  object-fit: contain;
}
body.platform-web .course-preview-modal-empty-player {
  display: grid;
  gap: 12px;
  place-items: center;
  color: #9ca79a;
  font-size: 13px;
}
body.platform-web .course-preview-modal-empty-player ion-icon {
  color: #83aa6b;
  font-size: 48px;
}
body.platform-web .course-preview-modal-library {
  border-top: 1px solid rgba(205, 226, 210, 0.11);
}
body.platform-web .course-preview-modal-library-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 24px 12px;
}
body.platform-web .course-preview-modal-library-heading > div {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
body.platform-web .course-preview-modal-library-heading span {
  color: #f0f4ee;
  font-size: 15px;
  font-weight: 750;
}
body.platform-web .course-preview-modal-library-heading strong {
  padding: 5px 8px;
  border: 1px solid rgba(172, 211, 145, 0.18);
  border-radius: 999px;
  background: rgba(151, 190, 126, 0.09);
  color: #acd391;
  font-size: 10px;
}
body.platform-web .course-preview-modal-library-heading strong span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
body.platform-web .course-preview-modal-library-heading ion-spinner {
  width: 18px;
  height: 18px;
  color: #acd391;
}
body.platform-web .course-preview-modal-list {
  padding: 0 14px 18px;
}
body.platform-web .course-preview-modal-item {
  display: grid;
  grid-template-columns: 106px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 78px;
  padding: 10px;
  border: 1px solid transparent;
  border-bottom-color: rgba(205, 226, 210, 0.09);
  border-radius: 11px;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease;
}
body.platform-web .course-preview-modal-item:hover {
  border-color: rgba(172, 211, 145, 0.17);
  background: #172019;
}
body.platform-web .course-preview-modal-item.active {
  border-color: rgba(172, 211, 145, 0.25);
  background: #1b261d;
  box-shadow: inset 3px 0 0 #8db570;
}
body.platform-web .course-preview-modal-thumb {
  position: relative;
  display: block;
  overflow: hidden;
  width: 106px;
  height: 58px;
  border-radius: 8px;
  background: #080b09;
}
body.platform-web .course-preview-modal-thumb img {
  width: 100%;
  height: 100%;
  opacity: 0.82;
  object-fit: cover;
}
body.platform-web .course-preview-modal-thumb ion-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 6px;
  border-radius: 50%;
  background: rgba(244, 248, 242, 0.88);
  color: #3f6332;
  font-size: 13px;
  transform: translate(-50%, -50%);
}
body.platform-web .course-preview-modal-item-copy {
  display: grid;
  min-width: 0;
  gap: 5px;
}
body.platform-web .course-preview-modal-item-copy strong {
  overflow: hidden;
  color: #eef3ec;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.platform-web .course-preview-modal-item-copy small {
  color: #8fa18a;
  font-size: 10px;
}
body.platform-web .course-preview-modal-duration {
  color: #aab6a7;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) {
  grid-template-areas: "command command" "details preview";
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 18px 24px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .video-section {
  grid-area: preview;
  position: sticky;
  top: 16px;
  overflow: hidden;
  border-color: #d7e3d3;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 20px 50px rgba(41, 66, 34, 0.16);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .video-section .video-container {
  border-bottom: 1px solid #dce6d8;
  background: #0b110d;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .video-player-container {
  cursor: pointer;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .course-details-section {
  grid-area: details;
  position: relative;
  top: auto;
  overflow: visible;
  max-height: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-details-section > .web-course-actions {
  display: none;
}
body.platform-web .cd-locked-offer {
  padding: 22px;
  background: #fff;
  color: #242c23;
}
body.platform-web .cd-locked-preview-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  width: 100%;
  padding: 8px 16px;
  border: 0;
  border-bottom: 1px solid #dce6d8;
  background: #111713;
  color: #edf3eb;
  font-size: 12px;
  font-weight: 750;
  font-family: inherit;
  cursor: pointer;
}
body.platform-web .cd-locked-preview-caption ion-icon {
  color: #acd391;
  font-size: 17px;
}
body.platform-web .cd-locked-offer-heading > span {
  color: #648b50;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
body.platform-web .cd-locked-offer-heading h2 {
  margin: 6px 0 5px;
  color: #202820;
  font-size: 21px;
  font-weight: 760;
  line-height: 1.25;
}
body.platform-web .cd-locked-offer-heading p {
  margin: 0;
  color: #707b6e;
  font-size: 12px;
  line-height: 1.5;
}
body.platform-web .cd-locked-price-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  margin-top: 18px;
}
body.platform-web .cd-locked-price-row > strong {
  color: #253022;
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
}
body.platform-web .cd-locked-price-row > del {
  color: #8a9488;
  font-size: 13px;
}
body.platform-web .cd-locked-price-row > span {
  padding: 5px 7px;
  border-radius: 7px;
  background: #fff0f3;
  color: #cb536c;
  font-size: 10px;
  font-weight: 800;
}
body.platform-web .cd-locked-includes {
  display: grid;
  gap: 10px;
  margin: 20px 0;
  padding: 16px 0;
  border-block: 1px solid #e3ebe0;
  list-style: none;
}
body.platform-web .cd-locked-includes li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #667164;
  font-size: 12px;
  line-height: 1.4;
}
body.platform-web .cd-locked-includes ion-icon {
  flex: 0 0 18px;
  color: #648b50;
  font-size: 18px;
}
body.platform-web .cd-locked-includes li > span {
  display: flex;
  gap: 4px;
}
body.platform-web .cd-locked-includes strong {
  color: #293228;
  font-weight: 750;
}
body.platform-web .cd-locked-access-btn {
  --background: #7ca461;
  --background-hover: #6f9656;
  --background-activated: #648a4d;
  --border-radius: 11px;
  --box-shadow: 0 10px 22px rgb(86 125 66 / 20%);
  --color: #fff;
  min-height: 46px;
  margin: 0;
  font-size: 14px;
  font-weight: 760;
  letter-spacing: 0.01em;
}
body.platform-web .cd-locked-access-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 11px 0 0;
  color: #859083;
  font-size: 10px;
  text-align: center;
}
body.platform-web .cd-locked-access-note ion-icon {
  color: #648b50;
  font-size: 14px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-description,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
  box-sizing: border-box;
  margin: 0;
  padding-right: 30px;
  padding-left: 30px;
  background: #111713;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta {
  padding-top: 28px;
  padding-bottom: 12px;
  border: 1px solid #29382c;
  border-bottom: 0;
  border-radius: 18px 18px 0 0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta .price-pill {
  display: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta .category-badge {
  border: 1px solid rgba(172, 211, 145, 0.2);
  background: rgba(151, 190, 126, 0.12);
  color: #b8dca1;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta .category-text {
  color: #b8dca1;
  font-weight: 750;
  letter-spacing: 0.08em;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title {
  padding-top: 3px;
  padding-bottom: 8px;
  border-inline: 1px solid #29382c;
  color: #f2f5f1;
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.15;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor {
  padding-bottom: 13px;
  border-inline: 1px solid #29382c;
  color: #b3c2b0;
  font-size: 13px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor::before {
  margin-right: 5px;
  color: #7fa568;
  content: "Created by";
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row {
  gap: 16px;
  padding-bottom: 14px;
  border-inline: 1px solid #29382c;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-item {
  color: #c4d0c1;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row ion-icon,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-icon {
  color: #97bd7e;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-text {
  color: #c4d0c1;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-description {
  max-width: none;
  padding-bottom: 16px;
  border-inline: 1px solid #29382c;
  color: #d4ddd1;
  font-size: 16px;
  line-height: 1.6;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-top: 16px;
  padding-bottom: 26px;
  border: 1px solid #29382c;
  border-top-color: rgba(205, 226, 210, 0.1);
  border-radius: 0 0 18px 18px;
  color: #c7d2c4;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block p {
  margin: 0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block .rating-line {
  color: #dbe4d8;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-label,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .enrollment-line {
  color: #aab7a7;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-value,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .enrollment-count {
  color: #f1f4ef;
  font-weight: 800;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-card,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .tab-content {
  border: 1px solid #dce6d8;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 14px 34px rgba(52, 79, 44, 0.08);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-card {
  margin: 16px 0 0;
  padding: 18px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs {
  display: flex;
  gap: 4px;
  margin: 16px 0 0;
  padding: 7px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip {
  flex: 1;
  min-height: 40px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #687467;
  font-size: 12px;
  font-weight: 700;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active {
  background: #eaf3e5;
  color: #557843;
  box-shadow: inset 0 0 0 1px #cfe0c7;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .tab-content {
  margin: 12px 0 0;
  padding: 24px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .content-stats {
  gap: 10px;
  margin: 0 0 24px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .content-stat-card {
  border: 1px solid #e0e8dd;
  border-radius: 12px;
  background: #f6f9f4;
  box-shadow: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .section-block {
  padding: 20px 0;
  border-top: 1px solid #e3eae0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-tab {
  display: block;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-card {
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #e0e8dd;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-card:last-child {
  border-bottom: 0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-header {
  min-height: 66px;
  padding: 13px 4px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-thumb {
  display: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-main {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-title {
  order: 1;
  color: #273026;
  font-size: 14px;
  font-weight: 700;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-lessons {
  order: 2;
  color: #758173;
  font-size: 11px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-details {
  margin: 0;
  padding: 0 0 14px;
  border: 0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .curriculum-lesson {
  min-height: 42px;
  margin-top: 6px;
  padding: 9px 10px;
  border-radius: 9px;
  background: #f5f8f3;
}
@media (width < 1100px) {
  body.platform-web .cd-web-grid {
    grid-template-areas: "command" "player" "sidebar" "overview";
    grid-template-columns: minmax(0, 1fr);
    max-width: 980px;
  }
  body.platform-web .cd-web-grid > .course-details-section {
    position: relative;
    top: auto;
    max-height: none;
  }
  body.platform-web .cd-web-grid:not(.cd-is-accessible) {
    grid-template-areas: "command" "preview" "details";
    grid-template-columns: minmax(0, 1fr);
    max-width: 860px;
  }
  body.platform-web .cd-web-grid:not(.cd-is-accessible) > .video-section {
    position: relative;
    top: auto;
  }
}
@media (width < 700px) {
  body.platform-web .course-preview-modal-backdrop {
    padding: 0;
    place-items: stretch;
  }
  body.platform-web .course-preview-modal {
    width: 100%;
    max-height: 100vh;
    min-height: 100vh;
    border: 0;
    border-radius: 0;
  }
  body.platform-web .course-preview-modal-header {
    padding: 16px;
  }
  body.platform-web .course-preview-modal-player {
    min-height: auto;
  }
  body.platform-web .course-preview-modal-library-heading {
    padding-inline: 16px;
  }
  body.platform-web .course-preview-modal-list {
    padding-inline: 8px;
  }
  body.platform-web .course-preview-modal-item {
    grid-template-columns: 84px minmax(0, 1fr) auto;
    gap: 10px;
  }
  body.platform-web .course-preview-modal-thumb {
    width: 84px;
    height: 48px;
  }
}

body.platform-web.dark .cd-load-error,
body.platform-web.ion-palette-dark .cd-load-error {
  border-color: #29392d;
  background: #111713;
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark .cd-load-error-icon,
body.platform-web.ion-palette-dark .cd-load-error-icon {
  border-color: #344a36;
  background: #1d2a1f;
  color: #acd391;
}
body.platform-web.dark .cd-load-error h1,
body.platform-web.ion-palette-dark .cd-load-error h1 {
  color: #f0f4ee;
}
body.platform-web.dark .cd-load-error > p,
body.platform-web.ion-palette-dark .cd-load-error > p {
  color: #98a395;
}
body.platform-web.dark .cd-web-grid > .cd-web-back-row,
body.platform-web.dark .cd-web-grid > .course-details-section,
body.platform-web.dark .cd-web-overview,
body.platform-web.ion-palette-dark .cd-web-grid > .cd-web-back-row,
body.platform-web.ion-palette-dark .cd-web-grid > .course-details-section,
body.platform-web.ion-palette-dark .cd-web-overview {
  border-color: #27372b;
  background: rgba(16, 23, 18, 0.96);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark .cd-web-back-row .cd-web-back-btn,
body.platform-web.ion-palette-dark .cd-web-back-row .cd-web-back-btn {
  border-color: #304333;
  background: #19231b;
  color: #b7d8a5;
}
body.platform-web.dark .cd-web-course-identity,
body.platform-web.ion-palette-dark .cd-web-course-identity {
  border-left-color: #2a3a2d;
}
body.platform-web.dark .cd-web-course-identity strong,
body.platform-web.dark .cd-course-content-heading h2,
body.platform-web.dark .cd-is-accessible .curriculum-title,
body.platform-web.dark .cd-web-overview-content h2,
body.platform-web.ion-palette-dark .cd-web-course-identity strong,
body.platform-web.ion-palette-dark .cd-course-content-heading h2,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-title,
body.platform-web.ion-palette-dark .cd-web-overview-content h2 {
  color: #f0f4ee;
}
body.platform-web.dark .cd-web-command-progress,
body.platform-web.ion-palette-dark .cd-web-command-progress {
  color: #9aa797;
}
body.platform-web.dark .cd-web-command-progress strong,
body.platform-web.dark .cd-course-content-heading > strong,
body.platform-web.ion-palette-dark .cd-web-command-progress strong,
body.platform-web.ion-palette-dark .cd-course-content-heading > strong {
  border-color: #344a36;
  background: #1d2a1f;
  color: #a9d28f;
}
body.platform-web.dark .cd-course-content-heading,
body.platform-web.ion-palette-dark .cd-course-content-heading {
  border-bottom-color: #27372b;
  background: rgba(16, 23, 18, 0.96);
}
body.platform-web.dark .cd-is-accessible > .course-details-section > .progress-section,
body.platform-web.dark .cd-web-overview-meta > span,
body.platform-web.ion-palette-dark .cd-is-accessible > .course-details-section > .progress-section,
body.platform-web.ion-palette-dark .cd-web-overview-meta > span {
  border-color: #293a2d;
  background: #151e17;
}
body.platform-web.dark .cd-is-accessible .curriculum-card,
body.platform-web.dark .cd-web-overview-tabs,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-card,
body.platform-web.ion-palette-dark .cd-web-overview-tabs {
  border-color: #27372b;
}
body.platform-web.dark .cd-is-accessible .curriculum-header:hover,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-header:hover {
  background: #18221a;
}
body.platform-web.dark .cd-is-accessible .curriculum-card.expanded .curriculum-header,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-card.expanded .curriculum-header {
  background: #1b271d;
  box-shadow: inset 3px 0 0 #8db570;
}
body.platform-web.dark .cd-section-index,
body.platform-web.ion-palette-dark .cd-section-index {
  border-color: #344737;
  background: #1d2a1f;
  color: #acd391;
}
body.platform-web.dark .cd-is-accessible .curriculum-lesson,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lesson {
  background: #141d16;
}
body.platform-web.dark .cd-is-accessible .curriculum-lessons,
body.platform-web.dark .cd-web-overview-content > p,
body.platform-web.dark .cd-web-overview-tabs button,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lessons,
body.platform-web.ion-palette-dark .cd-web-overview-content > p,
body.platform-web.ion-palette-dark .cd-web-overview-tabs button {
  color: #98a395;
}
body.platform-web.dark .cd-is-accessible .curriculum-meta,
body.platform-web.dark .cd-web-overview-meta small,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-meta,
body.platform-web.ion-palette-dark .cd-web-overview-meta small {
  color: #7f8c7c;
}
body.platform-web.dark .cd-web-overview-meta strong,
body.platform-web.ion-palette-dark .cd-web-overview-meta strong {
  color: #dce8d7;
}
body.platform-web.dark .cd-is-accessible .curriculum-card,
body.platform-web.dark .cd-is-accessible .curriculum-card:last-child,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-card,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-card:last-child {
  border-color: #293a2d;
  background: #111814;
  box-shadow: 0 9px 24px rgba(0, 0, 0, 0.16);
}
body.platform-web.dark .cd-is-accessible .curriculum-header:hover,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-header:hover {
  background: #18221a;
}
body.platform-web.dark .cd-is-accessible .curriculum-card.expanded .curriculum-header,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-card.expanded .curriculum-header {
  background: #18231a;
}
body.platform-web.dark .cd-is-accessible .curriculum-chevron,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-chevron {
  border-color: #314436;
  background: #1a251c;
  color: #a8cf91;
}
body.platform-web.dark .cd-is-accessible .curriculum-details,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-details {
  border-top-color: #263629;
  background: #0e1510;
}
body.platform-web.dark .cd-is-accessible .curriculum-details-top .details-label,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-details-top .details-label {
  color: #8f9b91;
}
body.platform-web.dark .cd-is-accessible .curriculum-details-top .details-action,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-details-top .details-action {
  color: #a7ce90;
}
body.platform-web.dark .cd-is-accessible .curriculum-lesson,
body.platform-web.dark .cd-is-accessible .curriculum-lesson.completed:not(.current-video),
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lesson,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lesson.completed:not(.current-video) {
  border-color: #26372a;
  background: #141d16;
  box-shadow: none;
}
body.platform-web.dark .cd-is-accessible .curriculum-lesson:hover,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lesson:hover {
  border-color: #3c543f;
  background: #19241b;
}
body.platform-web.dark .cd-is-accessible .curriculum-lesson.current-video,
body.platform-web.ion-palette-dark .cd-is-accessible .curriculum-lesson.current-video {
  border-color: #6f995c;
  background: #1b2a1d;
  box-shadow: inset 3px 0 0 #8db570, 0 6px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark .cd-is-accessible .lesson-text .lesson-title,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-text .lesson-title {
  color: #e5ebe2;
}
body.platform-web.dark .cd-is-accessible .lesson-text .lesson-meta,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-text .lesson-meta {
  color: #879389;
}
body.platform-web.dark .cd-is-accessible .lesson-text .lesson-meta ion-icon,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-text .lesson-meta ion-icon {
  color: #92b77c;
}
body.platform-web.dark .cd-is-accessible .lesson-status .lesson-actions .play-btn,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-status .lesson-actions .play-btn {
  --background: #1d2b20;
  --background-hover: #273a2b;
  --color: #a4cc8b;
}
body.platform-web.dark .cd-is-accessible .lesson-status .locked-icon,
body.platform-web.dark .cd-is-accessible .lesson-status .lesson-actions .play-btn .locked-icon,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-status .locked-icon,
body.platform-web.ion-palette-dark .cd-is-accessible .lesson-status .lesson-actions .play-btn .locked-icon {
  color: #7f8b81;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) > .course-details-section,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) > .course-details-section {
  border: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) > .video-section,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) > .video-section {
  border-color: #2a3b2e;
  background: #111713;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.32);
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) > .video-section .video-container,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) > .video-section .video-container {
  border-bottom-color: #2a392d;
}
body.platform-web.dark .cd-locked-preview-caption,
body.platform-web.ion-palette-dark .cd-locked-preview-caption {
  border-bottom-color: #29382c;
}
body.platform-web.dark .cd-locked-offer,
body.platform-web.ion-palette-dark .cd-locked-offer {
  background: #111713;
  color: #eef3ec;
}
body.platform-web.dark .cd-locked-offer-heading h2,
body.platform-web.dark .cd-locked-price-row > strong,
body.platform-web.dark .cd-locked-includes strong,
body.platform-web.ion-palette-dark .cd-locked-offer-heading h2,
body.platform-web.ion-palette-dark .cd-locked-price-row > strong,
body.platform-web.ion-palette-dark .cd-locked-includes strong {
  color: #f1f5ef;
}
body.platform-web.dark .cd-locked-offer-heading p,
body.platform-web.dark .cd-locked-includes li,
body.platform-web.ion-palette-dark .cd-locked-offer-heading p,
body.platform-web.ion-palette-dark .cd-locked-includes li {
  color: #9da99a;
}
body.platform-web.dark .cd-locked-price-row > del,
body.platform-web.dark .cd-locked-access-note,
body.platform-web.ion-palette-dark .cd-locked-price-row > del,
body.platform-web.ion-palette-dark .cd-locked-access-note {
  color: #7f8c7d;
}
body.platform-web.dark .cd-locked-price-row > span,
body.platform-web.ion-palette-dark .cd-locked-price-row > span {
  background: rgba(229, 111, 135, 0.12);
  color: #ef91a5;
}
body.platform-web.dark .cd-locked-includes,
body.platform-web.ion-palette-dark .cd-locked-includes {
  border-color: #29382c;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-card,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-tabs,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .tab-content,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-card,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-tabs,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .tab-content {
  border-color: #29392d;
  background: #111713;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip {
  color: #98a595;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active {
  background: #1d2a1f;
  color: #acd391;
  box-shadow: inset 0 0 0 1px #344a36;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .content-stat-card,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .curriculum-lesson,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .content-stat-card,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .curriculum-lesson {
  border-color: #29392d;
  background: #151e17;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .section-block,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .curriculum-card,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .section-block,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .curriculum-card {
  border-color: #29382c;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .curriculum-title,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .curriculum-title {
  color: #edf3eb;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .curriculum-lessons,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .curriculum-lessons {
  color: #899687;
}

/* Locked course landing page: keep the paid-course hierarchy consistent with the
 * rest of the Maa learning workspace in both colour schemes. */
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .course-details-section {
  min-width: 0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-description,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
  padding-right: 32px;
  padding-left: 32px;
  border-color: #d5e3d1;
  background: radial-gradient(circle at 94% 8%, rgba(137, 177, 111, 0.15), transparent 17rem), linear-gradient(135deg, #fff 0%, #f8fbf6 58%, #eef6e9 100%);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta {
  padding-top: 30px;
  padding-bottom: 14px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta .category-badge {
  padding: 6px 11px;
  border-color: #cfe0c7;
  background: #eaf3e5;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta .category-text {
  color: #5e824c;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title {
  color: #202a1f;
  text-wrap: balance;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor::before {
  color: #6a7967;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor::before {
  font-weight: 600;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-item,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-text {
  color: #647161;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row ion-icon,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-icon {
  color: #6f985a;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-description {
  padding-top: 6px;
  padding-bottom: 22px;
  color: #4f5e4d;
  font-size: 15px;
  line-height: 1.72;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
  padding-top: 18px;
  padding-bottom: 22px;
  border-top-color: #dce8d8;
  background: #f3f8f0;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block .rating-line,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-value,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .enrollment-count {
  color: #253024;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-label,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .enrollment-line {
  color: #697666;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-card,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .tab-content {
  border-color: #d8e5d4;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 16px 38px rgba(50, 78, 41, 0.09);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-card {
  min-height: 92px;
  padding: 16px 18px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-avatar {
  border: 3px solid #edf5e9;
  box-shadow: 0 0 0 1px #d5e4cf;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-label,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-title,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-location {
  color: #697666;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .mentor-name {
  color: #253024;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs {
  gap: 8px;
  padding: 8px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip {
  min-height: 42px;
  border: 1px solid transparent;
  color: #647161;
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip:hover {
  border-color: #d6e4d1;
  background: #f5f9f2;
  color: #4f7140;
  box-shadow: none;
  transform: none;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active {
  border-color: #71975d;
  background: #7da563;
  color: #fff;
  box-shadow: 0 7px 16px rgba(93, 132, 72, 0.2);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .tab-content {
  padding: 26px;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .content-stat-card {
  min-height: 92px;
  padding: 14px 8px;
  border-color: #dce7d8;
  background: #f7faf5;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .content-stat-value,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .section-title {
  color: #253024;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) .content-stat-label,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .section-body,
body.platform-web .cd-web-grid:not(.cd-is-accessible) .placeholder-tab {
  color: #697666;
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .video-section {
  border-color: #d3e1cf;
  border-radius: 20px;
  box-shadow: 0 24px 56px rgba(45, 72, 36, 0.17);
}
body.platform-web .cd-web-grid:not(.cd-is-accessible) > .video-section .video-container {
  border-bottom-color: #d8e4d4;
}
body.platform-web .cd-locked-preview-caption {
  min-height: 44px;
  border-bottom-color: #dce7d8;
  background: #152018;
  color: #f3f7f1;
  letter-spacing: 0.01em;
}
body.platform-web .cd-locked-preview-caption ion-icon {
  color: #a9d28f;
}
body.platform-web .cd-locked-offer {
  padding: 24px;
}
body.platform-web .cd-locked-offer-heading {
  margin-bottom: 16px;
}
body.platform-web .cd-locked-offer-heading h2 {
  margin-top: 4px;
  color: #253024;
  font-size: 22px;
  letter-spacing: -0.02em;
}
body.platform-web .cd-locked-price-row {
  align-items: baseline;
  padding: 2px 0;
}
body.platform-web .cd-locked-price-row > strong {
  color: #253024;
  font-size: 30px;
}
body.platform-web .cd-locked-includes {
  margin: 18px 0;
}
@media (width < 700px) {
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta,
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title,
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-instructor,
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-meta-row,
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-description,
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
    padding-right: 20px;
    padding-left: 20px;
  }
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .course-title {
    font-size: clamp(24px, 8vw, 32px);
  }
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .rating-block {
    align-items: flex-start;
    flex-direction: column;
  }
  body.platform-web .cd-web-grid:not(.cd-is-accessible) .tab-content,
  body.platform-web .cd-locked-offer {
    padding: 20px;
  }
}

body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-meta,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-description,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .rating-block,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-meta,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-description,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .rating-block {
  border-color: #2a3b2e;
  background: radial-gradient(circle at 94% 8%, rgba(129, 173, 101, 0.1), transparent 18rem), linear-gradient(135deg, #111814 0%, #101713 62%, #142018 100%);
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .rating-block .rating-line,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .rating-value,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .enrollment-count,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-name,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .content-stat-value,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .section-title,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-title,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .rating-block .rating-line,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .rating-value,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .enrollment-count,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-name,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .content-stat-value,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .section-title {
  color: #eef4ec;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-instructor::before,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-item,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-text,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .rating-label,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .enrollment-line,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-label,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-title,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-location,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .content-stat-label,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .section-body,
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .placeholder-tab,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-instructor,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-instructor::before,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-item,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-meta-row .meta-text,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .rating-label,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .enrollment-line,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-label,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-title,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-location,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .content-stat-label,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .section-body,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .placeholder-tab {
  color: #98a696;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-description,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-description {
  color: #c9d4c6;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .rating-block,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .rating-block {
  border-top-color: #2b3c2f;
  background: #141d16;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .mentor-avatar,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .mentor-avatar {
  border-color: #1c291f;
  box-shadow: 0 0 0 1px #344737;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip:hover,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip:hover {
  border-color: #314436;
  background: #18231a;
  color: #b1d69a;
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .course-tabs .tab-chip.active {
  border-color: #83aa6b;
  background: #7da563;
  color: #091008;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .cd-web-grid:not(.cd-is-accessible) .content-stat-card,
body.platform-web.ion-palette-dark .cd-web-grid:not(.cd-is-accessible) .content-stat-card {
  border-color: #29392d;
  background: #151e17;
}
body.platform-web.dark .cd-locked-preview-caption,
body.platform-web.ion-palette-dark .cd-locked-preview-caption {
  border-bottom-color: #2a392d;
  background: #0d130f;
}
body.platform-web.dark .cd-locked-offer-heading h2,
body.platform-web.dark .cd-locked-price-row > strong,
body.platform-web.ion-palette-dark .cd-locked-offer-heading h2,
body.platform-web.ion-palette-dark .cd-locked-price-row > strong {
  color: #eef4ec;
}

/* stylelint-enable no-duplicate-selectors */
/* stylelint-disable no-duplicate-selectors -- final Learning catalogue overrides */
body.platform-web .search-content {
  --background:
    radial-gradient(circle at 86% 4%, rgb(123 164 101 / 10%), transparent 34rem),
    radial-gradient(circle at 0% 40%, rgb(229 111 135 / 5%), transparent 28rem),
    linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
}
body.platform-web .search-content::part(scroll) {
  background: radial-gradient(circle at 86% 4%, rgba(123, 164, 101, 0.1), transparent 34rem), radial-gradient(circle at 0% 40%, rgba(229, 111, 135, 0.05), transparent 28rem), linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
}
body.platform-web .search-course-catalog-hero {
  position: relative;
  min-height: 158px;
  padding: 24px 22px;
  overflow: hidden;
  background: radial-gradient(circle at 82% 22%, rgba(156, 198, 130, 0.2), transparent 35%), linear-gradient(115deg, #fff 0%, #f7faf4 58%, #eaf3e4 100%);
  border: 1px solid #dbe6d6;
  box-shadow: 0 18px 42px rgba(71, 96, 61, 0.1);
}
body.platform-web .search-course-catalog-hero::after {
  position: absolute;
  right: -55px;
  bottom: -112px;
  width: 270px;
  height: 270px;
  border: 1px solid #648b50;
  border-radius: 50%;
  content: "";
  opacity: 0.09;
}
body.platform-web .search-course-catalog-copy h1 {
  color: #20271f;
}
body.platform-web .search-course-catalog-copy p {
  color: #6c776d;
}
body.platform-web .search-course-catalog-eyebrow {
  color: #648b50;
}
body.platform-web .search-course-catalog-feature {
  background: rgba(255, 255, 255, 0.82);
  border-color: #dbe6d6;
  box-shadow: 0 12px 28px rgba(71, 96, 61, 0.08);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
body.platform-web .search-course-catalog-feature strong {
  color: #20271f;
}
body.platform-web .search-course-catalog-feature small {
  color: #788379;
}
body.platform-web .search-course-catalog-icon {
  background: #eef6e9;
  border: 1px solid #d3e4c9;
  color: #648b50;
}
body.platform-web .search-course-results-panel {
  padding: 24px;
}
body.platform-web .search-course-results-panel > app-scrollable-tabs {
  display: block;
  margin: 0 0 22px;
  padding: 16px 0 0;
}
body.platform-web .search-course-results-panel .active-filters-section {
  margin: 0;
  padding: 16px 0;
  border-color: #e5ebe2;
}
body.platform-web .search-course-results-panel .active-filters-title {
  color: #273027;
  font-weight: 700;
}
body.platform-web .search-course-results-panel .clear-btn {
  --color: #648b50;
}
body.platform-web .learning-content {
  --background:
    radial-gradient(circle at 86% 4%, rgb(123 164 101 / 10%), transparent 34rem),
    radial-gradient(circle at 0% 40%, rgb(229 111 135 / 5%), transparent 28rem),
    linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
  color: #20271f;
}
body.platform-web .learning-content::part(scroll) {
  background: radial-gradient(circle at 86% 4%, rgba(123, 164, 101, 0.1), transparent 34rem), radial-gradient(circle at 0% 40%, rgba(229, 111, 135, 0.05), transparent 28rem), linear-gradient(180deg, #f6f8f4 0%, #f1f5ef 52%, #edf2eb 100%);
}
body.platform-web .learning-catalog-shell {
  color: #20271f;
}
body.platform-web .learning-overview {
  background: radial-gradient(circle at 82% 22%, rgba(156, 198, 130, 0.2), transparent 35%), linear-gradient(115deg, #fff 0%, #f7faf4 58%, #eaf3e4 100%);
  border: 1px solid #dbe6d6;
  box-shadow: 0 18px 42px rgba(71, 96, 61, 0.1);
}
body.platform-web .learning-overview-copy h1,
body.platform-web .learning-panel-heading h2 {
  color: #20271f;
}
body.platform-web .learning-overview-copy p,
body.platform-web .learning-panel-heading p {
  color: #6c776d;
}
body.platform-web .learning-eyebrow {
  color: #648b50;
}
body.platform-web .learning-overview-status {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #dbe6d6;
  box-shadow: 0 12px 28px rgba(71, 96, 61, 0.08);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
body.platform-web .learning-status-icon {
  position: relative;
  flex: 0 0 auto;
  background: #eef6e9;
  border: 1px solid #d3e4c9;
}
body.platform-web .learning-status-icon::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #79a25f;
  content: "";
  transform: translate(-50%, -50%);
}
body.platform-web .learning-status-copy small,
body.platform-web .learning-status-copy > span {
  color: #788379;
}
body.platform-web .learning-status-copy strong {
  color: #20271f;
  font-size: 14px;
}
body.platform-web .learning-catalog-panel {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid #e0e8dc;
  box-shadow: 0 16px 36px rgba(71, 96, 61, 0.08);
}
body.platform-web .learning-category-panel {
  padding: 18px 24px;
}
body.platform-web .learning-panel-heading {
  border-bottom: 1px solid #e5ebe2;
}
body.platform-web .learning-result-count {
  color: #648b50;
  background: #f1f7ed;
  border: 1px solid #d7e5d0;
}
body.platform-web .learning-category-panel app-category-list {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
body.platform-web .learning-category-panel .category-list-container > .section-title {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0 0 13px;
  color: #20271f;
  font-family: var(--font-family-semibold);
  font-size: 17px;
  font-weight: 700;
}
body.platform-web .learning-category-panel .category-list-container > .section-title::after {
  height: 1px;
  flex: 1;
  background: #e5ebe2;
  content: "";
}
body.platform-web .learning-category-panel .category-grid {
  align-items: stretch;
  gap: 10px;
}
body.platform-web .learning-category-panel .category-button {
  flex-direction: column;
  justify-content: center;
  min-height: 96px;
  gap: 8px;
  padding: 10px;
  background: #f8faf6;
  border: 1px solid #dfe8da;
  border-radius: 13px;
  box-shadow: none;
}
body.platform-web .learning-category-panel .category-button:hover {
  transform: translateY(-2px);
  background: #f3f8ef;
  border-color: #9abc84;
  box-shadow: 0 10px 24px rgba(83, 117, 67, 0.12);
}
body.platform-web .learning-category-panel .category-button:focus-visible {
  outline: 3px solid rgba(123, 164, 101, 0.22);
  outline-offset: 2px;
}
body.platform-web .learning-category-panel .category-container {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border: 1px solid #e0e8dc;
  border-radius: 12px;
  background: #fff;
}
body.platform-web .learning-category-panel .category-container app-image-preview {
  width: 100%;
  height: 100% !important;
}
body.platform-web .learning-category-panel .category-container app-image-preview::part(image) {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.platform-web .learning-category-panel .category-name {
  width: 100%;
  min-width: 0;
  margin-top: 0;
  color: #263026;
  font-family: var(--font-family-semibold);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.25;
  text-align: center;
}
body.platform-web .learning-category-panel .see-more-container {
  min-height: 34px;
  margin: 10px 0 0 !important;
}
body.platform-web .learning-category-panel .see-more-container:empty {
  display: none;
}
body.platform-web .learning-category-panel .see-more-button {
  --background: #edf5e8 !important;
  --background-hover: #e4f0dd !important;
  --background-activated: #dbead2 !important;
  --color: #4f743e !important;
  --border-color: #bfd5b3 !important;
  --border-radius: 999px;
  --box-shadow: 0 5px 12px rgb(76 108 61 / 10%) !important;
  min-width: 118px;
  min-height: 36px;
  height: 36px;
  margin: 0;
  border: 1px solid #bfd5b3;
  border-radius: 999px;
  color: #4f743e !important;
  box-shadow: 0 5px 12px rgba(76, 108, 61, 0.1);
}
body.platform-web .learning-category-panel .see-more-button .see-more-text,
body.platform-web .learning-category-panel .see-more-button .see-more-icon {
  color: #4f743e !important;
  font-size: 12px;
  font-weight: 700;
  opacity: 1 !important;
}
body.platform-web .learning-course-panel .learning-sections {
  width: 100%;
  max-width: none;
  margin: 0 0 22px !important;
  padding: 16px 0 0;
}
body.platform-web .learning-banner-shell {
  position: relative;
  isolation: isolate;
  width: 100%;
  overflow: hidden;
  padding: 0;
  border-radius: 16px;
  background: transparent;
  box-shadow: none;
}
body.platform-web .learning-banner-shell app-banner-carousel {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
body.platform-web .learning-banner-shell app-banner-carousel .banner-carousel {
  width: 100%;
  max-width: none;
  margin: 0 !important;
}
body.platform-web .learning-banner-shell app-banner-carousel .banner-carousel,
body.platform-web .learning-banner-shell app-banner-carousel .carousel-slides,
body.platform-web .learning-banner-shell app-banner-carousel .carousel-slide {
  border-radius: 16px;
}
body.platform-web .learning-banner-shell app-banner-carousel .carousel-slide {
  border: 0;
  background: transparent;
  box-shadow: none;
}
body.platform-web .learning-banner-shell app-banner-carousel .pagination-dot {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(239, 246, 240, 0.46);
}
body.platform-web .learning-banner-shell app-banner-carousel .pagination-dot.active {
  border-color: #7ba465;
  background: #fff;
  box-shadow: 0 0 14px rgba(123, 164, 101, 0.28);
}
body.platform-web .learning-search-launcher-icon {
  background: #edf5e8;
  border: 1px solid #d5e4cd;
  color: #648b50;
}
body.platform-web .learning-search-launcher-copy > span {
  color: #788379;
}
body.platform-web .learning-search-launcher-action {
  background: #79a25f;
  color: #fff;
}
body.platform-web .learning-course-panel .scrollable-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  padding: 5px;
  overflow: visible;
  background: #f4f7f2;
  border: 1px solid #e2e9de;
  border-radius: 14px;
}
body.platform-web .learning-course-panel .scrollable-tabs-btn {
  --background: transparent;
  --color: #5e695f;
  justify-content: center;
  min-width: 0;
  min-height: 40px;
  margin: 0;
  padding: 0 14px;
  border: 0;
  border-radius: 10px;
  box-shadow: none;
}
body.platform-web .learning-course-panel .scrollable-tabs-btn.active {
  --background: #79a25f;
  --color: #fff;
  box-shadow: 0 6px 14px rgba(91, 130, 72, 0.22);
}
body.platform-web .learning-course-panel app-paginated-list,
body.platform-web .learning-course-panel .course-section--loading {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}
body.platform-web .learning-course-panel .recommended-section {
  margin: 0 0 26px;
  padding-bottom: 26px;
  border-bottom: 1px solid #e5ebe2;
}
body.platform-web .learning-course-panel .course-section {
  padding-bottom: 0;
}
body.platform-web .learning-course-panel .section-title {
  margin: 0 0 14px;
  color: #273027;
  font-family: var(--font-family-semibold);
  font-size: 17px;
  font-weight: 700;
}
body.platform-web .learning-course-panel .courses,
body.platform-web .learning-course-panel .recommended-courses {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px;
}
body.platform-web .learning-course-panel app-course-card .course-card {
  overflow: hidden;
  background: #fbfcfa;
  border-color: #dfe7db;
  border-radius: 15px;
  box-shadow: 0 8px 20px rgba(71, 96, 61, 0.07) !important;
}
body.platform-web .learning-course-panel app-course-card .course-card:hover {
  transform: translateY(-2px);
  border-color: #9abc84;
  box-shadow: 0 14px 28px rgba(71, 96, 61, 0.13) !important;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-image,
body.platform-web .learning-course-panel app-course-card .course-card .card-image app-image-preview,
body.platform-web .learning-course-panel app-course-card .course-card .card-image .course-image::part(image) {
  border-radius: 14px 14px 0 0 !important;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-content {
  padding: 14px !important;
}
body.platform-web .learning-course-panel app-course-card {
  align-self: start;
  height: auto;
  min-height: 0;
}
body.platform-web .learning-course-panel app-course-card .course-card {
  height: auto;
  min-height: 0;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-wrapper {
  height: auto;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-image {
  width: calc(100% - 20px) !important;
  min-width: 0 !important;
  height: 164px !important;
  min-height: 164px;
  max-height: 164px;
  margin: 10px 10px 0;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 12px !important;
  aspect-ratio: auto;
  background: #eef2eb;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-image app-image-preview,
body.platform-web .learning-course-panel app-course-card .course-card .card-image .course-image,
body.platform-web .learning-course-panel app-course-card .course-card .card-image .course-image::part(image) {
  width: 100%;
  height: 100%;
  border-radius: 12px !important;
  object-fit: contain !important;
  --object-fit: contain;
}
body.platform-web .learning-course-panel app-course-card .course-card .premium-badge {
  top: 10px;
  left: 10px;
  width: 25px;
  height: 25px;
  border: 2px solid rgba(255, 255, 255, 0.86);
  box-shadow: 0 5px 12px rgba(36, 48, 33, 0.18);
}
body.platform-web .learning-course-panel app-course-card .course-card .play-icon-container {
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 8px 20px rgba(32, 43, 29, 0.18);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
body.platform-web .learning-course-panel app-course-card .course-card .card-content {
  flex: 0 0 238px;
  min-height: 238px;
  height: 238px;
  gap: 8px;
  padding: 14px !important;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-body {
  gap: 7px;
}
body.platform-web .learning-course-panel app-course-card .course-card .content-header {
  min-height: 22px;
  flex-wrap: nowrap;
}
body.platform-web .learning-course-panel app-course-card .course-card .category-badge {
  --background: #edf5e8;
  --color: #526d44;
  max-width: 112px;
  height: 22px;
  padding-inline: 8px;
  border: 1px solid #dbe8d4;
  font-size: 10px;
  font-weight: 650;
}
body.platform-web .learning-course-panel app-course-card .course-card .course-title {
  min-height: 40px;
  color: #202820;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}
body.platform-web .learning-course-panel app-course-card .course-card .course-instructor,
body.platform-web .learning-course-panel app-course-card .course-card .stat-text,
body.platform-web .learning-course-panel app-course-card .course-card .course-stats ion-icon {
  color: #788279;
}
body.platform-web .learning-course-panel app-course-card .course-card .course-stats {
  min-height: 18px;
  gap: 12px;
}
body.platform-web .learning-course-panel app-course-card .course-card .card-footer {
  min-height: 0;
  gap: 8px;
  margin-top: auto;
  padding-top: 11px;
  border-top: 1px solid #e5ebe2;
}
body.platform-web .learning-course-panel app-course-card .course-card .progress-container {
  min-height: 27px;
}
body.platform-web .learning-course-panel app-course-card .course-card .progress-container--placeholder {
  display: none;
}
body.platform-web .learning-course-panel app-course-card .course-card .progress-container ion-progress-bar {
  height: 5px;
  --background: #e6ece2;
  --progress-background: #79a25f;
}
body.platform-web .learning-course-panel app-course-card .course-card .start-button {
  --background: #9ac77e;
  --background-hover: #8ebc72;
  --background-activated: #82ae69;
  --color: #14200f;
  --border-radius: 11px;
  --box-shadow: none;
  width: 100%;
  height: 40px;
  min-height: 40px;
  margin: 0;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.01em;
}
@media (width < 980px) {
  body.platform-web .learning-course-panel .courses,
  body.platform-web .learning-course-panel .recommended-courses {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (width < 768px) {
  body.platform-web .learning-catalog-shell {
    padding: 0 16px 24px;
  }
  body.platform-web .learning-overview,
  body.platform-web .learning-catalog-panel {
    padding: 20px;
  }
  body.platform-web .learning-course-panel .scrollable-tabs {
    display: flex;
    padding: 4px;
    overflow-x: auto;
  }
  body.platform-web .learning-course-panel .scrollable-tabs-btn {
    min-width: 132px;
  }
  body.platform-web .learning-course-panel .courses,
  body.platform-web .learning-course-panel .recommended-courses {
    grid-template-columns: 1fr !important;
  }
}

body.platform-web.dark .search-content {
  --background:
    radial-gradient(circle at 84% 6%, rgb(168 207 143 / 7%), transparent 34rem),
    radial-gradient(circle at 0% 42%, rgb(229 111 135 / 3%), transparent 28rem),
    linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
}
body.platform-web.dark .search-content::part(scroll) {
  background: radial-gradient(circle at 84% 6%, rgba(168, 207, 143, 0.07), transparent 34rem), radial-gradient(circle at 0% 42%, rgba(229, 111, 135, 0.03), transparent 28rem), linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
}
body.platform-web.dark .search-course-catalog-hero {
  background: radial-gradient(circle at 82% 22%, rgba(147, 194, 116, 0.12), transparent 36%), linear-gradient(115deg, #172019 0%, #111813 62%, #17221a 100%);
  border-color: rgba(205, 226, 210, 0.13);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark .search-course-catalog-hero::after {
  border-color: #acd391;
}
body.platform-web.dark .search-course-catalog-copy h1 {
  color: #f1f5f2;
}
body.platform-web.dark .search-course-catalog-copy p {
  color: #9da9a1;
}
body.platform-web.dark .search-course-catalog-eyebrow {
  color: #acd391;
}
body.platform-web.dark .search-course-catalog-feature {
  background: rgba(10, 16, 12, 0.72);
  border-color: rgba(205, 226, 210, 0.13);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .search-course-catalog-feature strong {
  color: #f1f5f2;
}
body.platform-web.dark .search-course-catalog-feature small {
  color: #89958d;
}
body.platform-web.dark .search-course-catalog-icon {
  background: rgba(147, 194, 116, 0.1);
  border-color: rgba(172, 211, 145, 0.2);
  color: #acd391;
}
body.platform-web.dark .search-course-results-panel .active-filters-section {
  border-color: rgba(205, 226, 210, 0.1);
}
body.platform-web.dark .search-course-results-panel .active-filters-title {
  color: #eff4f0;
}
body.platform-web.dark .search-course-results-panel .clear-btn {
  --color: #acd391;
}
body.platform-web.dark .learning-content {
  --background:
    radial-gradient(circle at 84% 6%, rgb(168 207 143 / 7%), transparent 34rem),
    radial-gradient(circle at 0% 42%, rgb(229 111 135 / 3%), transparent 28rem),
    linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
  color: #f1f5f2;
}
body.platform-web.dark .learning-content::part(scroll) {
  background: radial-gradient(circle at 84% 6%, rgba(168, 207, 143, 0.07), transparent 34rem), radial-gradient(circle at 0% 42%, rgba(229, 111, 135, 0.03), transparent 28rem), linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%);
}
body.platform-web.dark .learning-catalog-shell {
  color: #f1f5f2;
}
body.platform-web.dark .learning-overview {
  background: radial-gradient(circle at 82% 22%, rgba(147, 194, 116, 0.12), transparent 36%), linear-gradient(115deg, #172019 0%, #111813 62%, #17221a 100%);
  border-color: rgba(205, 226, 210, 0.13);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark .learning-overview-copy h1,
body.platform-web.dark .learning-panel-heading h2 {
  color: #f1f5f2;
}
body.platform-web.dark .learning-overview-copy p,
body.platform-web.dark .learning-panel-heading p {
  color: #9da9a1;
}
body.platform-web.dark .learning-eyebrow {
  color: #acd391;
}
body.platform-web.dark .learning-overview-status {
  background: rgba(10, 16, 12, 0.72);
  border-color: rgba(205, 226, 210, 0.13);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .learning-status-icon {
  background: rgba(147, 194, 116, 0.1);
  border-color: rgba(172, 211, 145, 0.2);
}
body.platform-web.dark .learning-status-icon::after {
  background: #acd391;
}
body.platform-web.dark .learning-status-copy small,
body.platform-web.dark .learning-status-copy > span {
  color: #89958d;
}
body.platform-web.dark .learning-status-copy strong {
  color: #f1f5f2;
}
body.platform-web.dark .learning-catalog-panel {
  background: #111713;
  border-color: rgba(205, 226, 210, 0.12);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark .learning-panel-heading,
body.platform-web.dark .learning-course-panel .recommended-section {
  border-color: rgba(205, 226, 210, 0.1);
}
body.platform-web.dark .learning-result-count {
  color: #acd391;
  background: rgba(147, 194, 116, 0.09);
  border-color: rgba(172, 211, 145, 0.16);
}
body.platform-web.dark .learning-category-panel .category-button {
  background: #162019;
  border-color: rgba(205, 226, 210, 0.12);
}
body.platform-web.dark .learning-category-panel .category-button:hover {
  background: #1b281e;
  border-color: #7fa966;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.26);
}
body.platform-web.dark .learning-category-panel .category-list-container > .section-title {
  color: #eff4f0;
}
body.platform-web.dark .learning-category-panel .category-list-container > .section-title::after {
  background: rgba(205, 226, 210, 0.1);
}
body.platform-web.dark .learning-search-launcher {
  border-color: rgba(205, 226, 210, 0.14) !important;
  background: linear-gradient(180deg, rgba(168, 207, 143, 0.04), transparent), #111914 !important;
  color: #f2f6f3 !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24) !important;
}
body.platform-web.dark .learning-search-launcher-icon {
  background: rgba(168, 207, 143, 0.1);
  border-color: rgba(168, 207, 143, 0.18);
  color: #acd391;
}
body.platform-web.dark .learning-search-launcher-copy > span {
  color: #9da9a1;
}
body.platform-web.dark .learning-search-launcher-action {
  background: #8db570;
  color: #0c130e;
}
body.platform-web.dark .learning-category-panel .category-container {
  background: #202a22;
  border-color: rgba(205, 226, 210, 0.11);
}
body.platform-web.dark .learning-category-panel .category-name,
body.platform-web.dark .learning-course-panel .section-title {
  color: #eff4f0;
}
body.platform-web.dark .learning-category-panel .see-more-button {
  --background: rgb(168 207 143 / 12%) !important;
  --background-hover: rgb(168 207 143 / 18%) !important;
  --background-activated: rgb(168 207 143 / 22%) !important;
  --color: #b9dda1 !important;
  --border-color: rgb(172 211 145 / 30%) !important;
  --box-shadow: 0 6px 15px rgb(0 0 0 / 18%) !important;
  border-color: rgba(172, 211, 145, 0.2);
  color: #b9dda1 !important;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark .learning-category-panel .see-more-button .see-more-text,
body.platform-web.dark .learning-category-panel .see-more-button .see-more-icon {
  color: #b9dda1 !important;
}
body.platform-web.dark .learning-course-panel .scrollable-tabs {
  background: #0d130f;
  border-color: rgba(205, 226, 210, 0.1);
}
body.platform-web.dark .learning-course-panel .scrollable-tabs-btn {
  --color: #9da9a1;
}
body.platform-web.dark .learning-course-panel .scrollable-tabs-btn.active {
  --background: #739b5b;
  --color: #fff;
}
body.platform-web.dark .learning-course-panel app-course-card .course-card {
  background: #172019;
  border-color: rgba(205, 226, 210, 0.12);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22) !important;
}
body.platform-web.dark .learning-course-panel app-course-card .course-card:hover {
  border-color: #7fa966;
  box-shadow: 0 16px 30px rgba(0, 0, 0, 0.3) !important;
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .card-image {
  background: #0e1510;
  box-shadow: inset 0 0 0 1px rgba(205, 226, 210, 0.08);
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .premium-badge {
  border-color: rgba(16, 23, 18, 0.78);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .play-icon-container {
  border-color: rgba(205, 226, 210, 0.18);
  background: rgba(239, 246, 240, 0.88);
  box-shadow: 0 9px 22px rgba(0, 0, 0, 0.28);
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .category-badge {
  --background: rgb(168 207 143 / 11%);
  --color: #b7d99f;
  border-color: rgba(168, 207, 143, 0.16);
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .course-title {
  color: #f1f5f2;
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .course-instructor,
body.platform-web.dark .learning-course-panel app-course-card .course-card .stat-text,
body.platform-web.dark .learning-course-panel app-course-card .course-card .course-stats ion-icon {
  color: #8f9b93;
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .card-footer {
  border-color: rgba(205, 226, 210, 0.09);
}
body.platform-web.dark .learning-course-panel app-course-card .course-card .progress-container ion-progress-bar {
  --background: #263129;
  --progress-background: #acd391;
}

/* stylelint-enable no-duplicate-selectors */
/* stylelint-disable no-duplicate-selectors -- page-scoped final catalogue overrides */
body.platform-web .category-products-header .category-search-toolbar {
  width: min(100%, 1328px);
  max-width: 1328px;
  margin-inline: auto;
  padding: 16px 24px 18px;
}
body.platform-web .category-products-header app-header-search {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
}
body.platform-web .category-products-header app-header-filter-button .filter-btn.has-label {
  --background: #edf5e8;
  --background-hover: #e1eed9;
  --background-activated: #d8e8ce;
  --border-color: rgb(101 132 82 / 18%);
  --border-style: solid;
  --border-width: 1px;
  --border-radius: 12px;
  --color: #587743;
  --padding-start: 14px;
  --padding-end: 12px;
  --box-shadow: none;
  min-width: 112px;
  height: 44px;
}
body.platform-web .category-products-header app-header-filter-button .filter-btn.has-label ion-icon {
  margin-right: 8px;
  color: #64874f;
  font-size: 17px;
}
body.platform-web .category-products-header app-header-filter-button .filter-btn.has-label .filter-label {
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0;
}
body.platform-web .category-products-header app-header-filter-button .filter-btn.has-label.has-filters .filter-badge {
  position: static;
  min-width: 20px;
  height: 20px;
  margin-left: 8px;
  padding: 0 6px;
  border: 0;
  background: #688d51;
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  transform: none;
  box-shadow: 0 4px 10px rgba(74, 105, 56, 0.2);
}
body.platform-web .category-products-header .category-search-back-btn {
  border-color: rgba(101, 132, 82, 0.17);
  background: #fff;
  color: #587743;
  box-shadow: 0 8px 20px rgba(61, 84, 48, 0.09);
  transition: transform 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
body.platform-web .category-products-header .category-search-back-btn:hover {
  border-color: rgba(101, 132, 82, 0.34);
  background: #edf5e9;
  box-shadow: 0 11px 24px rgba(61, 84, 48, 0.12);
  transform: translateX(-2px);
}
body.platform-web .category-products-header .category-search-back-btn:focus-visible {
  outline: 3px solid rgba(125, 166, 98, 0.22);
  outline-offset: 2px;
}
body.platform-web .category-products-header .category-search-back-btn ion-icon {
  color: currentcolor;
  font-size: 20px;
}
body.platform-web .category-products-header .category-search-context {
  display: flex;
  flex-direction: column;
  gap: 3px;
  line-height: 1;
}
body.platform-web .category-products-header .category-search-context span {
  color: #789766;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
body.platform-web .category-products-header .category-search-context strong {
  color: #202720;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.015em;
}
body.platform-web .category-products-content {
  --padding-start: 0;
  --padding-end: 0;
  --padding-top: 0;
  --padding-bottom: 0;
  --cc-canvas: #f2f5f0;
  --cc-card: #fff;
  --cc-card-soft: #f7faf5;
  --cc-border: rgb(101 132 82 / 14%);
  --cc-text: #202720;
  --cc-muted: #717c72;
  --cc-accent: #6e9457;
  --cc-shadow: 0 16px 42px rgb(61 84 48 / 9%);
  --background:
    radial-gradient(circle at 88% 2%, rgb(123 164 101 / 9%), transparent 32rem),
    linear-gradient(180deg, #f6f8f4 0%, var(--cc-canvas) 100%);
}
body.platform-web .category-products-content::part(scroll) {
  background: radial-gradient(circle at 88% 2%, rgba(123, 164, 101, 0.09), transparent 32rem), linear-gradient(180deg, #f6f8f4 0%, var(--cc-canvas) 100%);
}
body.platform-web .category-products-content .category-catalog-shell {
  width: min(100%, 1328px);
  max-width: none;
  padding: 20px 24px 48px;
}
body.platform-web .category-products-content .category-catalog-overview {
  position: relative;
  min-height: 176px;
  overflow: hidden;
  border-color: var(--cc-border);
  background: radial-gradient(circle at 80% 10%, rgba(123, 164, 101, 0.17), transparent 34%), linear-gradient(135deg, #fff 0%, #f1f7ed 60%, #e8f1e3 100%);
  box-shadow: var(--cc-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}
body.platform-web .category-products-content .category-catalog-overview::after {
  position: absolute;
  top: -96px;
  right: -42px;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(123, 164, 101, 0.11);
  border-radius: 50%;
  box-shadow: 0 0 0 36px rgba(123, 164, 101, 0.035), 0 0 0 72px rgba(123, 164, 101, 0.015);
  content: "";
  pointer-events: none;
}
body.platform-web .category-products-content .category-catalog-overview-copy,
body.platform-web .category-products-content .category-catalog-summary {
  position: relative;
  z-index: 1;
}
body.platform-web .category-products-content .category-catalog-overview-copy h1 {
  color: var(--cc-text);
}
body.platform-web .category-products-content .category-catalog-overview-copy p {
  color: var(--cc-muted);
}
body.platform-web .category-products-content .category-catalog-eyebrow,
body.platform-web .category-products-content .category-catalog-section-eyebrow {
  color: var(--cc-accent);
}
body.platform-web .category-products-content .category-catalog-summary {
  border-color: var(--cc-border);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 12px 30px rgba(61, 84, 48, 0.09);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
}
body.platform-web .category-products-content .category-catalog-summary > div + div {
  border-left-color: var(--cc-border);
}
body.platform-web .category-products-content .category-catalog-summary strong {
  color: var(--cc-text);
}
body.platform-web .category-products-content .category-catalog-summary span {
  color: var(--cc-muted);
}
body.platform-web .category-products-content .category-catalog-panel {
  border-color: var(--cc-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 252, 249, 0.94));
  box-shadow: var(--cc-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.88);
}
body.platform-web .category-products-content .category-catalog-section-heading {
  border-bottom-color: var(--cc-border);
}
body.platform-web .category-products-content .category-catalog-section-heading h2 {
  color: var(--cc-text);
}
body.platform-web .category-products-content .category-catalog-section-heading p {
  color: var(--cc-muted);
}
body.platform-web .category-products-content .category-catalog-count {
  border: 1px solid rgba(111, 149, 87, 0.16);
  background: rgba(123, 164, 101, 0.09);
  color: var(--cc-accent);
}
body.platform-web .category-products-content app-shop-category-list .category-grid {
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  justify-content: stretch;
  justify-items: stretch;
  gap: 12px;
  margin: 0;
}
body.platform-web .category-products-content app-shop-category-list app-shop-card .card-category {
  width: 100%;
  height: 82px;
  padding: 13px 14px;
  border: 1px solid var(--cc-border);
  border-radius: 14px;
  background: var(--cc-card-soft);
  box-shadow: 0 7px 18px rgba(61, 84, 48, 0.06);
  flex-direction: row;
  justify-content: flex-start;
  gap: 12px;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
body.platform-web .category-products-content app-shop-category-list app-shop-card .card-category:hover, body.platform-web .category-products-content app-shop-category-list app-shop-card .card-category:focus-visible {
  border-color: rgba(111, 149, 87, 0.42);
  box-shadow: 0 12px 26px rgba(61, 84, 48, 0.11);
  transform: translateY(-2px);
}
body.platform-web .category-products-content app-shop-category-list app-shop-card .card-category .card-container {
  width: 46px;
  max-width: 46px;
  height: 46px;
  border: 1px solid var(--cc-border);
  background: var(--cc-card);
}
body.platform-web .category-products-content app-shop-category-list app-shop-card .card-category .card-name {
  width: auto;
  margin: 0;
  padding: 0;
  color: var(--cc-text);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
}
body.platform-web .category-products-content app-shop-brands-list .brands-list-container {
  margin: 0;
}
body.platform-web .category-products-content app-shop-brands-list .brands-list-container > .section-title {
  display: none;
}
body.platform-web .category-products-content app-shop-brands-list .brand-cards-scroll {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  overflow: visible;
  gap: 12px;
  margin: 0;
  padding: 0;
}
body.platform-web .category-products-content app-shop-brands-list app-shop-card .card-brand {
  width: 100%;
  min-height: 94px;
  padding: 12px 10px 9px;
  border: 1px solid var(--cc-border);
  border-radius: 14px;
  background: var(--cc-card-soft);
  box-shadow: 0 7px 18px rgba(61, 84, 48, 0.06);
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
body.platform-web .category-products-content app-shop-brands-list app-shop-card .card-brand:hover, body.platform-web .category-products-content app-shop-brands-list app-shop-card .card-brand:focus-visible, body.platform-web .category-products-content app-shop-brands-list app-shop-card .card-brand.active {
  border-color: rgba(111, 149, 87, 0.46);
  background: color-mix(in srgb, var(--cc-accent) 7%, var(--cc-card));
  box-shadow: 0 12px 26px rgba(61, 84, 48, 0.11);
  transform: translateY(-2px);
}
body.platform-web .category-products-content app-shop-brands-list app-shop-card .card-brand .card-name {
  color: var(--cc-text);
  font-size: 12px;
  font-weight: 650;
}
body.platform-web .category-products-content .category-catalog-products .products-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0;
  padding: 0;
}
body.platform-web .category-products-content .category-catalog-products app-product-card {
  display: block;
  min-width: 0;
  height: 100%;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 294px;
  height: 100%;
  padding: 12px;
  border: 1px solid var(--cc-border);
  border-radius: 16px;
  background: var(--cc-card-soft);
  box-shadow: 0 10px 26px rgba(61, 84, 48, 0.08);
  aspect-ratio: auto;
  flex-direction: column;
  overflow: hidden;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card:hover {
  border-color: rgba(111, 149, 87, 0.4);
  box-shadow: 0 20px 44px rgba(61, 84, 48, 0.14);
  transform: translateY(-4px);
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-image-container {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  height: 154px;
  min-height: 154px;
  max-height: 154px;
  border: 1px solid var(--cc-border);
  border-radius: 12px;
  background: var(--cc-card);
  aspect-ratio: auto;
  overflow: visible;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-image {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 11px;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-image ion-img::part(image) {
  object-fit: contain;
  object-position: center;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-info {
  position: static;
  width: 100%;
  min-height: 0;
  margin-top: auto;
  padding-top: 12px;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-name {
  min-height: 0;
  color: var(--cc-text);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.3;
  white-space: normal;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-rating,
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-pricing {
  position: static;
  width: 100%;
  height: auto;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-rating {
  gap: 3px;
  min-height: 16px;
  margin-top: 5px;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-rating ion-icon {
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-review-count {
  margin-left: 3px;
  color: var(--cc-muted);
  font-size: 11px;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-pricing {
  min-height: 32px;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--cc-border);
  overflow: visible;
}
body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-current-price {
  color: #df5f77;
  font-size: 15px;
  font-weight: 800;
}
body.platform-web .category-products-content .category-catalog-products .empty-state {
  min-height: 220px;
  border: 1px dashed var(--cc-border);
  border-radius: 18px;
  background: var(--cc-card-soft);
  color: var(--cc-muted);
}
@media (width >= 768px) and (width < 1100px) {
  body.platform-web .category-products-content .category-catalog-products .products-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (width >= 1100px) and (width < 1280px) {
  body.platform-web .category-products-content .category-catalog-products .products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (width < 768px) {
  body.platform-web .category-products-content .category-catalog-shell {
    padding: 12px 16px 32px;
  }
  body.platform-web .category-products-content .category-catalog-products .products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.platform-web .category-products-content .category-catalog-products app-product-card .product-card {
    min-height: 262px;
  }
  body.platform-web .category-products-content .category-catalog-products app-product-card .product-card-image-container {
    height: 124px;
    min-height: 124px;
    max-height: 124px;
  }
}

body.platform-web.dark .category-products-content {
  --cc-canvas: #090e0b;
  --cc-card: #18211b;
  --cc-card-soft: #141c17;
  --cc-border: rgb(205 226 210 / 11%);
  --cc-text: #f2f6f3;
  --cc-muted: #9ba79f;
  --cc-accent: #acd391;
  --cc-shadow: 0 20px 50px rgb(0 0 0 / 24%);
  --background:
    radial-gradient(circle at 88% 2%, rgb(168 207 143 / 6%), transparent 32rem),
    linear-gradient(180deg, #0d130f 0%, var(--cc-canvas) 100%);
}
body.platform-web.dark .category-products-content::part(scroll) {
  background: radial-gradient(circle at 88% 2%, rgba(168, 207, 143, 0.06), transparent 32rem), linear-gradient(180deg, #0d130f 0%, var(--cc-canvas) 100%);
}
body.platform-web.dark .category-products-content .category-catalog-overview {
  background: radial-gradient(circle at 80% 8%, rgba(168, 207, 143, 0.16), transparent 34%), linear-gradient(135deg, #1a281e 0%, #121b15 60%, #0f1612 100%);
  box-shadow: var(--cc-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .category-products-content .category-catalog-overview::after {
  border-color: rgba(168, 207, 143, 0.09);
  box-shadow: 0 0 0 36px rgba(168, 207, 143, 0.03), 0 0 0 72px rgba(168, 207, 143, 0.015);
}
body.platform-web.dark .category-products-content .category-catalog-summary {
  background: rgba(10, 16, 12, 0.6);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .category-products-content .category-catalog-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent 38%), #111713;
  box-shadow: var(--cc-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .category-products-content app-shop-category-list app-shop-card .card-category,
body.platform-web.dark .category-products-content app-shop-brands-list app-shop-card .card-brand,
body.platform-web.dark .category-products-content .category-catalog-products app-product-card .product-card {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .category-products-content app-shop-category-list app-shop-card .card-category:hover,
body.platform-web.dark .category-products-content app-shop-brands-list app-shop-card .card-brand:hover,
body.platform-web.dark .category-products-content .category-catalog-products app-product-card .product-card:hover {
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.34);
}
body.platform-web.dark .category-products-content .category-catalog-products app-product-card .product-card-image-container {
  background: radial-gradient(circle at 50% 38%, rgba(168, 207, 143, 0.06), transparent 62%), #202b23;
}
body.platform-web.dark .category-products-content .category-catalog-products app-product-card .product-card-rating ion-icon:not(.filled) {
  color: #465149;
}

body.platform-web.dark .category-products-header .category-search-back-btn {
  border-color: rgba(168, 207, 143, 0.16);
  background: #18211b;
  color: #b5d7a0;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark .category-products-header .category-search-back-btn:hover {
  border-color: rgba(168, 207, 143, 0.34);
  background: #222e25;
  box-shadow: 0 13px 28px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark .category-products-header app-header-filter-button .filter-btn.has-label {
  --background: #202b23;
  --background-hover: #28362b;
  --background-activated: #304034;
  --border-color: rgb(168 207 143 / 17%);
  --color: #c1deaf;
}
body.platform-web.dark .category-products-header app-header-filter-button .filter-btn.has-label ion-icon {
  color: #acd391;
}
body.platform-web.dark .category-products-header app-header-filter-button .filter-btn.has-label.has-filters .filter-badge {
  background: #acd391;
  color: #172019;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .category-products-header .category-search-context span {
  color: #91b47c;
}
body.platform-web.dark .category-products-header .category-search-context strong {
  color: #f2f6f3;
}

body.platform-web:not(.dark) .search-product-header app-header-filter-button .filter-btn.has-label.has-filters .filter-badge {
  background: #688d51;
  color: #fff;
  box-shadow: 0 4px 10px rgba(74, 105, 56, 0.2);
}

body.platform-web.dark .search-product-header app-header-filter-button .filter-btn.has-label.has-filters .filter-badge {
  background: #acd391;
  color: #172019;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.22);
}

body.platform-web .section-products-header {
  padding: 0 !important;
  border-bottom: 1px solid rgba(101, 132, 82, 0.09);
}
body.platform-web .section-products-header .section-products-search-row {
  width: min(100%, 1328px);
  max-width: 1328px;
  margin-inline: auto;
  padding: 16px 24px 18px;
}
body.platform-web .section-products-header .section-products-back-btn {
  width: 44px;
  height: 44px;
  flex-basis: 44px;
  border-color: rgba(101, 132, 82, 0.17);
  border-radius: 13px;
  background: #fff;
  color: #587743;
  box-shadow: 0 8px 20px rgba(61, 84, 48, 0.09);
}
body.platform-web .section-products-header .section-products-search-context span {
  color: #789766;
}
body.platform-web .section-products-header .section-products-search-context strong {
  color: #202720;
  font-weight: 800;
}
body.platform-web .section-products-header app-header-search.section-products-search .search-container {
  min-height: 58px;
  gap: 0;
  padding: 5px 8px 5px 10px;
  border: 1px solid rgba(101, 132, 82, 0.17);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(129, 168, 105, 0.04), transparent 42%), #fff !important;
  box-shadow: 0 10px 28px rgba(61, 84, 48, 0.09);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
body.platform-web .section-products-header app-header-search.section-products-search .search-container:hover {
  border-color: rgba(101, 139, 78, 0.29);
  box-shadow: 0 14px 34px rgba(61, 84, 48, 0.12);
}
body.platform-web .section-products-header app-header-search.section-products-search .search-container:focus-within {
  border-color: #7da662;
  box-shadow: 0 0 0 4px rgba(125, 166, 98, 0.12), 0 16px 38px rgba(61, 84, 48, 0.13);
}
body.platform-web .section-products-header app-header-search.section-products-search ion-searchbar {
  --background: transparent !important;
  --color: #202720;
  --icon-color: #71945b;
  --placeholder-color: #6f796f;
  --placeholder-font-style: normal;
  --placeholder-font-weight: 400;
  --placeholder-opacity: 1;
  min-height: 46px;
  height: 46px;
  font-family: var(--font-family-regular);
  font-size: 14px;
  line-height: 1;
  transform: translateY(2px);
}
body.platform-web .section-products-content {
  --padding-top: 0;
  --sp-canvas: #f2f5f0;
  --sp-card: #fff;
  --sp-soft: #f7faf5;
  --sp-border: rgb(101 132 82 / 14%);
  --sp-text: #202720;
  --sp-muted: #717c72;
  --sp-accent: #6e9457;
  --sp-shadow: 0 16px 42px rgb(61 84 48 / 9%);
  --background:
    radial-gradient(circle at 86% 2%, rgb(123 164 101 / 9%), transparent 32rem),
    linear-gradient(180deg, #f6f8f4 0%, var(--sp-canvas) 100%);
}
body.platform-web .section-products-content::part(scroll) {
  background: radial-gradient(circle at 86% 2%, rgba(123, 164, 101, 0.09), transparent 32rem), linear-gradient(180deg, #f6f8f4 0%, var(--sp-canvas) 100%);
}
body.platform-web .section-products-content .section-products-body {
  width: min(100%, 1328px);
  max-width: none;
  margin-inline: auto;
  padding: 20px 24px 48px;
}
body.platform-web .section-products-content .section-catalog-hero {
  position: relative;
  min-height: 178px;
  overflow: hidden;
  border-color: var(--sp-border);
  background: radial-gradient(circle at 80% 8%, rgba(123, 164, 101, 0.18), transparent 34%), linear-gradient(135deg, #fff 0%, #f1f7ed 60%, #e8f1e3 100%);
  box-shadow: var(--sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}
body.platform-web .section-products-content .section-catalog-hero::after {
  position: absolute;
  top: -88px;
  right: -36px;
  width: 250px;
  height: 250px;
  border: 1px solid rgba(123, 164, 101, 0.11);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(123, 164, 101, 0.035), 0 0 0 68px rgba(123, 164, 101, 0.015);
  content: "";
  pointer-events: none;
}
body.platform-web .section-products-content .section-catalog-hero-copy,
body.platform-web .section-products-content .section-catalog-highlight {
  position: relative;
  z-index: 1;
}
body.platform-web .section-products-content .section-catalog-hero-copy h1 {
  color: var(--sp-text);
}
body.platform-web .section-products-content .section-catalog-hero-copy p {
  color: var(--sp-muted);
}
body.platform-web .section-products-content .section-catalog-eyebrow {
  color: var(--sp-accent);
}
body.platform-web .section-products-content .section-catalog-highlight {
  border-color: var(--sp-border);
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 12px 30px rgba(61, 84, 48, 0.09);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
}
body.platform-web .section-products-content .section-catalog-highlight strong {
  color: var(--sp-text);
}
body.platform-web .section-products-content .section-catalog-highlight small {
  color: var(--sp-muted);
}
body.platform-web .section-products-content .section-catalog-highlight-mark {
  border: 1px solid rgba(123, 164, 101, 0.16);
  background: #e8f2e2;
}
body.platform-web .section-products-content .section-catalog-panel {
  border-color: var(--sp-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 252, 249, 0.94));
  box-shadow: var(--sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.88);
}
body.platform-web .section-products-content .section-catalog-heading {
  border-bottom-color: var(--sp-border);
}
body.platform-web .section-products-content .section-catalog-heading h2 {
  color: var(--sp-text);
}
body.platform-web .section-products-content .section-catalog-heading p {
  color: var(--sp-muted);
}
body.platform-web .section-products-content .section-catalog-count {
  border: 1px solid rgba(111, 149, 87, 0.16);
  background: rgba(123, 164, 101, 0.09);
  color: var(--sp-accent);
}
body.platform-web .section-products-content .section-catalog-panel .products-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0;
  padding: 0;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card {
  display: block;
  min-width: 0;
  height: 100%;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 294px;
  height: 100%;
  padding: 12px;
  border: 1px solid var(--sp-border);
  border-radius: 16px;
  background: var(--sp-soft);
  box-shadow: 0 10px 26px rgba(61, 84, 48, 0.08);
  aspect-ratio: auto;
  flex-direction: column;
  overflow: hidden;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card:hover {
  border-color: rgba(111, 149, 87, 0.4);
  box-shadow: 0 20px 44px rgba(61, 84, 48, 0.14);
  transform: translateY(-4px);
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-image-container {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  height: 154px;
  min-height: 154px;
  max-height: 154px;
  border: 1px solid var(--sp-border);
  border-radius: 12px;
  background: var(--sp-card);
  aspect-ratio: auto;
  overflow: visible;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-image {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 11px;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-image ion-img::part(image) {
  object-fit: contain;
  object-position: center;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-info {
  position: static;
  width: 100%;
  min-height: 0;
  margin-top: auto;
  padding-top: 12px;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-name {
  min-height: 0;
  color: var(--sp-text);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.3;
  white-space: normal;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-rating,
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-pricing {
  position: static;
  width: 100%;
  height: auto;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-rating {
  gap: 3px;
  min-height: 16px;
  margin-top: 5px;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-rating ion-icon {
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-review-count {
  margin-left: 3px;
  color: var(--sp-muted);
  font-size: 11px;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-pricing {
  min-height: 32px;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--sp-border);
  overflow: visible;
}
body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-current-price {
  color: #df5f77;
  font-size: 15px;
  font-weight: 800;
}
body.platform-web .section-products-content .section-catalog-panel .empty-state {
  min-height: 220px;
  border: 1px dashed var(--sp-border);
  border-radius: 18px;
  background: var(--sp-soft);
  color: var(--sp-muted);
}
@media (width >= 768px) and (width < 1100px) {
  body.platform-web .section-products-content .section-catalog-panel .products-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (width >= 1100px) and (width < 1280px) {
  body.platform-web .section-products-content .section-catalog-panel .products-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (width < 768px) {
  body.platform-web .section-products-content .section-products-body {
    padding: 12px 16px 32px;
  }
  body.platform-web .section-products-content .section-catalog-panel .products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card {
    min-height: 262px;
  }
  body.platform-web .section-products-content .section-catalog-panel app-product-card .product-card-image-container {
    height: 124px;
    min-height: 124px;
    max-height: 124px;
  }
}

body.platform-web.dark .section-products-header {
  border-bottom-color: rgba(205, 226, 210, 0.08);
  background: linear-gradient(180deg, #101713 0%, #0d130f 100%) !important;
}
body.platform-web.dark .section-products-header .section-products-back-btn {
  border-color: rgba(168, 207, 143, 0.16);
  background: #18211b;
  color: #b5d7a0;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark .section-products-header .section-products-search-context span {
  color: #91b47c;
}
body.platform-web.dark .section-products-header .section-products-search-context strong {
  color: #f2f6f3;
}
body.platform-web.dark .section-products-header app-header-search.section-products-search .search-container {
  border-color: rgba(168, 207, 143, 0.14);
  background: radial-gradient(circle at 12% 0%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #152019 0%, #101812 100%) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark .section-products-header app-header-search.section-products-search ion-searchbar {
  --background: transparent !important;
  --color: #f2f6f3;
  --icon-color: #acd391;
  --placeholder-color: #9aa69e;
}
body.platform-web.dark .section-products-content {
  --sp-canvas: #090e0b;
  --sp-card: #18211b;
  --sp-soft: #141c17;
  --sp-border: rgb(205 226 210 / 11%);
  --sp-text: #f2f6f3;
  --sp-muted: #9ba79f;
  --sp-accent: #acd391;
  --sp-shadow: 0 20px 50px rgb(0 0 0 / 24%);
  --background:
    radial-gradient(circle at 86% 2%, rgb(168 207 143 / 6%), transparent 32rem),
    linear-gradient(180deg, #0d130f 0%, var(--sp-canvas) 100%);
}
body.platform-web.dark .section-products-content::part(scroll) {
  background: radial-gradient(circle at 86% 2%, rgba(168, 207, 143, 0.06), transparent 32rem), linear-gradient(180deg, #0d130f 0%, var(--sp-canvas) 100%);
}
body.platform-web.dark .section-products-content .section-catalog-hero {
  background: radial-gradient(circle at 80% 8%, rgba(168, 207, 143, 0.16), transparent 34%), linear-gradient(135deg, #1a281e 0%, #121b15 60%, #0f1612 100%);
  box-shadow: var(--sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .section-products-content .section-catalog-hero::after {
  border-color: rgba(168, 207, 143, 0.09);
  box-shadow: 0 0 0 34px rgba(168, 207, 143, 0.03), 0 0 0 68px rgba(168, 207, 143, 0.015);
}
body.platform-web.dark .section-products-content .section-catalog-highlight {
  background: rgba(10, 16, 12, 0.6);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .section-products-content .section-catalog-highlight-mark {
  background: rgba(168, 207, 143, 0.09);
}
body.platform-web.dark .section-products-content .section-catalog-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent 38%), #111713;
  box-shadow: var(--sp-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .section-products-content .section-catalog-panel app-product-card .product-card {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark .section-products-content .section-catalog-panel app-product-card .product-card:hover {
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.34);
}
body.platform-web.dark .section-products-content .section-catalog-panel app-product-card .product-card-image-container {
  background: radial-gradient(circle at 50% 38%, rgba(168, 207, 143, 0.06), transparent 62%), #202b23;
}
body.platform-web.dark .section-products-content .section-catalog-panel app-product-card .product-card-rating ion-icon:not(.filled) {
  color: #465149;
}

/* stylelint-enable no-duplicate-selectors */
@keyframes country-dropdown-enter {
  from {
    opacity: 0;
    transform: translateY(-6px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
body.platform-web.dark app-menu {
  --menu-dark-canvas: #090e0b;
  --menu-dark-surface: #111713;
  --menu-dark-surface-raised: #172019;
  --menu-dark-surface-soft: #1c261f;
  --menu-dark-control: #0e1410;
  --menu-dark-border: rgb(205 226 210 / 12%);
  --menu-dark-border-strong: rgb(168 207 143 / 40%);
  --menu-dark-text: #f2f6f3;
  --menu-dark-muted: #9da9a1;
  --menu-dark-subtle: #748078;
  --menu-dark-accent: #acd391;
}
body.platform-web.dark app-menu .menu-content {
  --background:
    radial-gradient(circle at 14% 0%, rgb(168 207 143 / 7%), transparent 34rem),
    linear-gradient(180deg, #0d130f 0%, var(--menu-dark-canvas) 54%, #070b08 100%);
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-content::part(scroll) {
  background: radial-gradient(circle at 14% 0%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #0d130f 0%, var(--menu-dark-canvas) 54%, #070b08 100%);
}
body.platform-web.dark app-menu .menu-container {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-intro {
  border: 1px solid rgba(205, 226, 210, 0.14);
  background: radial-gradient(circle at 88% 20%, rgba(232, 193, 89, 0.12), transparent 26%), radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.06), transparent 34%), linear-gradient(135deg, #34522f 0%, #466b3d 52%, #2c4729 100%);
  color: var(--menu-dark-text);
  box-shadow: 0 30px 72px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}
body.platform-web.dark app-menu .menu-intro::after {
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 0 0 34px rgba(255, 255, 255, 0.02), 0 0 0 68px rgba(255, 255, 255, 0.01);
}
body.platform-web.dark app-menu .menu-intro h1 {
  color: var(--menu-dark-text);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark app-menu .menu-intro p {
  color: rgba(242, 246, 243, 0.78);
}
body.platform-web.dark app-menu .menu-eyebrow {
  color: #f1ce70;
}
body.platform-web.dark app-menu .menu-section-heading h2 {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-section-heading p {
  color: var(--menu-dark-muted);
}
body.platform-web.dark app-menu .menu-section-kicker {
  color: var(--menu-dark-accent);
}
body.platform-web.dark app-menu .menu-list {
  background: transparent;
}
body.platform-web.dark app-menu .menu-item {
  --background: var(--menu-dark-surface-raised);
  --background-hover: var(--menu-dark-surface-soft);
  --color: var(--menu-dark-text);
  border-color: var(--menu-dark-border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 54%), var(--menu-dark-surface-raised);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-menu .menu-item:hover {
  --background: var(--menu-dark-surface-soft);
  border-color: var(--menu-dark-border-strong);
  background: radial-gradient(circle at 0% 50%, rgba(168, 207, 143, 0.08), transparent 42%), var(--menu-dark-surface-soft);
  box-shadow: 0 20px 42px rgba(0, 0, 0, 0.32), 0 0 0 2px rgba(168, 207, 143, 0.04);
}
body.platform-web.dark app-menu .menu-item:hover .menu-item-arrow {
  color: var(--menu-dark-accent);
}
body.platform-web.dark app-menu .menu-item:focus-visible {
  outline: 3px solid rgba(168, 207, 143, 0.22);
  outline-offset: 3px;
}
body.platform-web.dark app-menu .menu-item-icon-wrap,
body.platform-web.dark app-menu .menu-setting-icon {
  border: 1px solid rgba(168, 207, 143, 0.1);
  background: rgba(168, 207, 143, 0.1);
  color: var(--menu-dark-accent);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-menu .menu-item-label {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-item-arrow {
  color: var(--menu-dark-subtle);
}
body.platform-web.dark app-menu .menu-theme-card,
body.platform-web.dark app-menu .menu-language-card {
  --background: var(--menu-dark-surface-raised);
  border-color: var(--menu-dark-border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 54%), var(--menu-dark-surface-raised);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.platform-web.dark app-menu .menu-theme-card:hover,
body.platform-web.dark app-menu .menu-language-card:hover {
  border-color: rgba(168, 207, 143, 0.24);
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.32);
  transform: translateY(-2px);
}
body.platform-web.dark app-menu .menu-theme-item {
  --background: transparent;
  --color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-theme-label {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-theme-label small {
  color: var(--menu-dark-muted);
}
body.platform-web.dark app-menu .menu-theme-toggle {
  --background: #303a33;
  --background-checked: #86ad6e;
  --handle-background: #aab3ad;
  --handle-background-checked: #f6faf4;
}
body.platform-web.dark app-menu .menu-language-title {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-language-copy p {
  color: var(--menu-dark-muted);
}
body.platform-web.dark app-menu .menu-language-select {
  --background: var(--menu-dark-control);
  --color: var(--menu-dark-text);
  --placeholder-color: var(--menu-dark-muted);
  --highlight-color-focused: transparent;
  border-color: var(--menu-dark-border);
  background: var(--menu-dark-control);
  color: var(--menu-dark-text);
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, 0.32);
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}
body.platform-web.dark app-menu .menu-language-select:hover, body.platform-web.dark app-menu .menu-language-select:focus, body.platform-web.dark app-menu .menu-language-select.ion-focused, body.platform-web.dark app-menu .menu-language-select.select-expanded {
  border-color: var(--menu-dark-border-strong);
  background: #111a13;
  box-shadow: 0 0 0 3px rgba(168, 207, 143, 0.08) !important, inset 0 1px 4px rgba(0, 0, 0, 0.28) !important;
}
body.platform-web.dark app-menu .menu-language-select::part(text), body.platform-web.dark app-menu .menu-language-select::part(placeholder) {
  color: var(--menu-dark-text);
}
body.platform-web.dark app-menu .menu-language-select::part(icon) {
  color: var(--menu-dark-accent) !important;
}
@media (width < 900px) {
  body.platform-web.dark app-menu .menu-container {
    background: transparent;
  }
  body.platform-web.dark app-menu .menu-list,
  body.platform-web.dark app-menu .menu-theme-card,
  body.platform-web.dark app-menu .menu-language-card {
    border: 1px solid var(--menu-dark-border);
    background: var(--menu-dark-surface-raised);
  }
}

/* stylelint-disable no-duplicate-selectors -- final social-button interaction cascade */
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button {
  --background: rgb(255 252 246 / 82%);
  --background-hover: #edf4e9;
  --background-activated: #e4eedf;
  --border-color: rgb(111 149 92 / 24%);
  --color: var(--w-text);
  border-radius: var(--w-radius-card);
  box-shadow: none;
  transition: transform 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button::part(native) {
  border: 1px solid var(--border-color);
  background: var(--background);
  box-shadow: 0 6px 16px rgba(68, 97, 54, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.72);
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, color 180ms ease;
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover {
  --border-color: rgb(111 149 92 / 48%);
  box-shadow: none;
  transform: translateY(-2px);
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover::part(native) {
  background: var(--background-hover);
  box-shadow: 0 12px 26px rgba(68, 97, 54, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.8);
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:active {
  transform: translateY(0);
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:active::part(native) {
  background: var(--background-activated);
  box-shadow: 0 4px 10px rgba(68, 97, 54, 0.09), inset 0 1px 2px rgba(68, 97, 54, 0.1);
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:focus-visible {
  outline: none;
}
body.platform-web :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:focus-visible::part(native) {
  border-color: #7ba465;
  box-shadow: 0 0 0 3px rgba(123, 164, 101, 0.16), 0 10px 24px rgba(68, 97, 54, 0.12);
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button {
  --background: #18211b;
  --background-hover: #202b23;
  --background-activated: #263329;
  --border-color: rgb(205 226 210 / 13%);
  --color: #f2f6f3;
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button::part(native) {
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover {
  --border-color: rgb(168 207 143 / 48%);
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:hover::part(native) {
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:active::part(native) {
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.22), inset 0 2px 4px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark :is(.login-content, .login-email-content) :is(.login-social-buttons, .login-email-social-buttons) ion-button:focus-visible::part(native) {
  border-color: #acd391;
  box-shadow: 0 0 0 3px rgba(168, 207, 143, 0.14), 0 12px 28px rgba(0, 0, 0, 0.28);
}

/* stylelint-enable no-duplicate-selectors */
body.platform-web.dark app-live-class {
  --live-dark-canvas: #090e0b;
  --live-dark-surface: #111713;
  --live-dark-surface-raised: #172019;
  --live-dark-surface-soft: #1c261f;
  --live-dark-border: rgb(205 226 210 / 12%);
  --live-dark-border-strong: rgb(168 207 143 / 38%);
  --live-dark-text: #f2f6f3;
  --live-dark-muted: #9da9a1;
  --live-dark-subtle: #748078;
  --live-dark-accent: #acd391;
  --live-dark-danger: #f28b99;
}
body.platform-web.dark app-live-class .live-class-content {
  --background:
    radial-gradient(circle at 14% 0%, rgb(168 207 143 / 7%), transparent 34rem),
    linear-gradient(180deg, #0d130f 0%, var(--live-dark-canvas) 54%, #070b08 100%);
  color: var(--live-dark-text);
}
body.platform-web.dark app-live-class .live-class-content::part(scroll) {
  background: radial-gradient(circle at 14% 0%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #0d130f 0%, var(--live-dark-canvas) 54%, #070b08 100%);
}
body.platform-web.dark app-live-class .live-class-page {
  color: var(--live-dark-text);
}
body.platform-web.dark app-live-class .live-class-hero {
  border-color: var(--live-dark-border);
  background: radial-gradient(circle at 12% 0%, rgba(168, 207, 143, 0.12), transparent 38%), radial-gradient(circle at 92% 100%, rgba(233, 102, 119, 0.05), transparent 32%), linear-gradient(145deg, var(--live-dark-surface-raised), var(--live-dark-surface));
  box-shadow: 0 30px 76px rgba(0, 0, 0, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark app-live-class .live-class-back-btn {
  border-color: var(--live-dark-border);
  background: var(--live-dark-surface-soft);
  color: var(--live-dark-accent);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}
body.platform-web.dark app-live-class .live-class-back-btn:hover {
  border-color: var(--live-dark-border-strong);
  background: #243027;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark app-live-class .live-class-hero-copy h1 {
  color: var(--live-dark-text);
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark app-live-class .live-class-hero-copy p {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class .live-class-hero-eyebrow {
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class .live-class-hero-action.primary {
  border-color: #a5ce89;
  background: #a5ce89;
  color: #0b110d;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25);
}
body.platform-web.dark app-live-class .live-class-hero-action.primary:not(:disabled):hover {
  border-color: #b4d99b;
  background: #b4d99b;
}
body.platform-web.dark app-live-class .live-class-hero-action.secondary {
  border-color: rgba(168, 207, 143, 0.52);
  background: rgba(168, 207, 143, 0.05);
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class .live-class-hero-action.secondary:not(:disabled):hover {
  border-color: var(--live-dark-accent);
  background: rgba(168, 207, 143, 0.12);
}
body.platform-web.dark app-live-class .live-class-hero-action:disabled {
  border-color: var(--live-dark-border);
  background: #202923;
  color: #717d75;
  opacity: 1;
}
body.platform-web.dark app-live-class .live-class-stat {
  position: relative;
  overflow: hidden;
  border-color: var(--live-dark-border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 55%), var(--live-dark-surface-soft);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-live-class .live-class-stat::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, var(--live-dark-accent), transparent 86%);
  content: "";
}
body.platform-web.dark app-live-class .live-class-stat .stat-label {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class .live-class-stat strong {
  color: var(--live-dark-text);
}
body.platform-web.dark app-live-class .section-panel {
  border-color: var(--live-dark-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent 42%), var(--live-dark-surface);
  box-shadow: 0 24px 58px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark app-live-class .section-header-row {
  padding-bottom: 18px;
  border-bottom: 1px solid var(--live-dark-border);
}
body.platform-web.dark app-live-class .section .section-title {
  color: var(--live-dark-text);
  letter-spacing: -0.01em;
}
body.platform-web.dark app-live-class .section-subtitle {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class .section-count {
  padding: 6px 10px;
  border: 1px solid rgba(168, 207, 143, 0.16);
  border-radius: 999px;
  background: rgba(168, 207, 143, 0.08);
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class .my-classes-scroll {
  scrollbar-color: rgba(168, 207, 143, 0.3) transparent;
  scrollbar-width: thin;
}
body.platform-web.dark app-live-class app-live-class-card .class-card {
  --background: var(--live-dark-surface-raised);
  border-color: var(--live-dark-border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 52%), var(--live-dark-surface-raised);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.platform-web.dark app-live-class app-live-class-card .class-card:hover {
  border-color: var(--live-dark-border-strong);
  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.34), 0 0 0 2px rgba(168, 207, 143, 0.04);
  transform: translateY(-3px);
}
body.platform-web.dark app-live-class app-live-class-card .class-card ion-card-title,
body.platform-web.dark app-live-class app-live-class-card .class-card .detail-item span {
  color: var(--live-dark-text);
}
body.platform-web.dark app-live-class app-live-class-card .class-card ion-card-subtitle,
body.platform-web.dark app-live-class app-live-class-card .class-card .class-description,
body.platform-web.dark app-live-class app-live-class-card .class-card .bundle-belonging span {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class app-live-class-card .class-card .detail-item ion-icon {
  color: var(--live-dark-subtle);
}
body.platform-web.dark app-live-class app-live-class-card .class-card .bundle-belonging span strong {
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class app-live-class-card .class-card ion-badge {
  --background: rgb(168 207 143 / 10%) !important;
  --color: var(--live-dark-accent) !important;
  border: 1px solid rgba(168, 207, 143, 0.14) !important;
}
body.platform-web.dark app-live-class app-live-class-card .class-card .card-action-btn::part(native) {
  border-color: rgba(168, 207, 143, 0.48) !important;
  background: rgba(168, 207, 143, 0.07) !important;
  color: var(--live-dark-accent) !important;
}
body.platform-web.dark app-live-class app-live-class-card .class-card .card-action-btn:hover::part(native) {
  border-color: var(--live-dark-accent) !important;
  background: rgba(168, 207, 143, 0.14) !important;
}
body.platform-web.dark app-live-class app-live-class-card .class-card .card-action-btn.button-disabled::part(native) {
  border-color: var(--live-dark-border) !important;
  background: #202923 !important;
  color: #717d75 !important;
  opacity: 1;
}
body.platform-web.dark app-live-class app-live-class-card .class-card .class-status-text {
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card {
  --background: var(--live-dark-surface-raised);
  border: 1px solid var(--live-dark-border);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 52%), var(--live-dark-surface-raised);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card:hover {
  border-color: var(--live-dark-border-strong);
  box-shadow: 0 22px 46px rgba(0, 0, 0, 0.34);
  transform: translateY(-3px);
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card ion-card-title,
body.platform-web.dark app-live-class app-bundle-card .bundle-card .price-tag {
  color: var(--live-dark-text);
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card .bundle-info {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card .price-tag.free,
body.platform-web.dark app-live-class app-bundle-card .bundle-card .price-tag.subscription {
  color: var(--live-dark-accent);
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card .card-action-btn::part(native) {
  border-color: rgba(168, 207, 143, 0.48) !important;
  background: rgba(168, 207, 143, 0.07) !important;
  color: var(--live-dark-accent) !important;
}
body.platform-web.dark app-live-class app-bundle-card .bundle-card .card-action-btn:hover::part(native) {
  border-color: var(--live-dark-accent) !important;
  background: rgba(168, 207, 143, 0.14) !important;
}
body.platform-web.dark app-live-class app-reminder-card .reminder-card {
  --background: rgb(220 174 83 / 8%);
  border: 1px solid rgba(220, 174, 83, 0.2);
  background: rgba(220, 174, 83, 0.08);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}
body.platform-web.dark app-live-class app-reminder-card .reminder-card .reminder-icon {
  background: rgba(220, 174, 83, 0.12);
}
body.platform-web.dark app-live-class app-reminder-card .reminder-card .reminder-content h4 {
  color: #f2e3bd;
}
body.platform-web.dark app-live-class app-reminder-card .reminder-card .reminder-content p {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class .empty-state,
body.platform-web.dark app-live-class .loading-state,
body.platform-web.dark app-live-class .error-state {
  border: 1px dashed var(--live-dark-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.02);
}
body.platform-web.dark app-live-class .empty-state p,
body.platform-web.dark app-live-class .loading-state p {
  color: var(--live-dark-muted);
}
body.platform-web.dark app-live-class .error-state p {
  color: var(--live-dark-danger);
}
@media (width < 768px) {
  body.platform-web.dark app-live-class .section-header-row {
    padding-bottom: 14px;
  }
}

/* stylelint-disable no-duplicate-selectors -- intentional final cascade over listing-page rules */
body.platform-web.dark .search-product-header {
  background: radial-gradient(circle at 84% 6%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #0b120e 0%, #080d0a 52%, #060a07 100%) !important;
  border-bottom: 1px solid rgba(205, 226, 210, 0.09);
  box-shadow: inset 0 -1px 0 rgba(205, 226, 210, 0.04) !important;
}
body.platform-web.dark .search-product-header,
body.platform-web.dark .search-product-header ion-header,
body.platform-web.dark .search-product-header app-header-search {
  --background: transparent !important;
  background: transparent !important;
}
body.platform-web.dark .search-product-header .search-product-toolbar {
  padding-block: 10px;
}
body.platform-web.dark .search-product-header .search-product-back-btn {
  border-color: rgba(205, 226, 210, 0.13);
  background: #18211b;
  color: #f2f6f3;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .search-product-header .search-product-back-btn:hover {
  border-color: rgba(168, 207, 143, 0.44);
  background: #202b23;
  color: #acd391;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.3);
}
body.platform-web.dark .search-product-header app-header-search {
  padding-block: 0;
}
body.platform-web.dark .search-product-header .search-container {
  min-height: 58px;
  gap: 0;
  padding: 5px 6px 5px 10px !important;
  border: 1px solid rgba(168, 207, 143, 0.14);
  border-radius: 18px;
  background: radial-gradient(circle at 12% 0%, rgba(168, 207, 143, 0.07), transparent 34rem), linear-gradient(180deg, #152019 0%, #101812 100%) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(205, 226, 210, 0.05);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
body.platform-web.dark .search-product-header .search-container:hover {
  border-color: rgba(168, 207, 143, 0.26);
  background: radial-gradient(circle at 12% 0%, rgba(168, 207, 143, 0.1), transparent 34rem), linear-gradient(180deg, #1a281e 0%, #131d16 100%) !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(205, 226, 210, 0.06);
}
body.platform-web.dark .search-product-header .search-container:focus-within {
  border-color: #86ad6e;
  box-shadow: 0 0 0 4px rgba(134, 173, 110, 0.12), 0 18px 42px rgba(0, 0, 0, 0.34);
}
body.platform-web.dark .search-product-header ion-searchbar {
  --background: transparent;
  --box-shadow: none;
  --color: #f2f6f3;
  --icon-color: #acd391;
  --placeholder-color: #9aa69e;
  --placeholder-opacity: 1;
  min-height: 46px;
  height: 46px;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: none !important;
}
body.platform-web.dark .search-product-header .filter-content {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  padding-left: 8px;
  border-left: 1px solid rgba(205, 226, 210, 0.09);
}
body.platform-web.dark .search-product-header .filter-btn {
  --background: #263028;
  --background-hover: #303d32;
  --background-activated: #354438;
  --border-color: rgb(168 207 143 / 15%);
  --border-style: solid;
  --border-width: 1px;
  --border-radius: 12px;
  --color: #b8d7a5;
  --box-shadow: none;
  width: auto;
  min-width: 94px;
  height: 42px;
}
body.platform-web.dark .search-product-header .filter-btn ion-icon {
  color: #acd391;
}
body.platform-web.dark .search-product-content {
  --padding-top: 0;
  --background:
    radial-gradient(circle at 12% 0%, rgb(168 207 143 / 6%), transparent 32rem),
    linear-gradient(180deg, #0d130f 0%, #090e0b 52%, #080c09 100%);
  color: #f2f6f3;
}
body.platform-web.dark .search-product-content::part(scroll) {
  background: radial-gradient(circle at 12% 0%, rgba(168, 207, 143, 0.06), transparent 32rem), linear-gradient(180deg, #0d130f 0%, #090e0b 52%, #080c09 100%);
}
body.platform-web.dark .search-product-content .search-product-body {
  width: min(100%, 1248px);
  margin-inline: auto;
  padding: 12px 24px 36px;
}
body.platform-web.dark .search-product-content .search-catalog-hero {
  min-height: 144px;
  border-color: rgba(205, 226, 210, 0.13);
  background: radial-gradient(circle at 78% 8%, rgba(168, 207, 143, 0.17), transparent 34%), radial-gradient(circle at 8% 110%, rgba(229, 111, 135, 0.06), transparent 36%), linear-gradient(135deg, #1a281e 0%, #121b15 58%, #0f1612 100%);
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
body.platform-web.dark .search-product-content .search-catalog-hero::after {
  position: absolute;
  top: -72px;
  right: -44px;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(168, 207, 143, 0.09);
  border-radius: 50%;
  content: "";
  box-shadow: 0 0 0 34px rgba(168, 207, 143, 0.03), 0 0 0 68px rgba(168, 207, 143, 0.015);
  pointer-events: none;
}
body.platform-web.dark .search-product-content .search-catalog-eyebrow,
body.platform-web.dark .search-product-content .search-catalog-section-eyebrow {
  color: #acd391;
}
body.platform-web.dark .search-product-content .search-catalog-hero-copy h1 {
  color: #f2f6f3;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark .search-product-content .search-catalog-hero-copy p {
  color: #a3afa7;
}
body.platform-web.dark .search-product-content .search-catalog-hero-feature {
  border-color: rgba(205, 226, 210, 0.13);
  background: rgba(12, 18, 14, 0.68);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  -webkit-backdrop-filter: blur(14px);
          backdrop-filter: blur(14px);
}
body.platform-web.dark .search-product-content .search-catalog-hero-feature strong {
  color: #f2f6f3;
}
body.platform-web.dark .search-product-content .search-catalog-hero-feature small {
  color: #9da9a1;
}
body.platform-web.dark .search-product-content .search-catalog-hero-icon {
  border: 1px solid rgba(168, 207, 143, 0.17);
  background: rgba(168, 207, 143, 0.11);
  color: #acd391;
}
body.platform-web.dark .search-product-content .search-results-section,
body.platform-web.dark .search-product-content .products-section {
  padding: 22px 24px 24px;
  border: 1px solid rgba(205, 226, 210, 0.1);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), transparent 42%), #111713;
  box-shadow: 0 22px 54px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .search-product-content .search-results-section .section-title {
  color: #f2f6f3;
  letter-spacing: -0.015em;
}
body.platform-web.dark .search-product-content .search-catalog-section-heading {
  border-bottom-color: rgba(205, 226, 210, 0.1);
}
body.platform-web.dark .search-product-content .search-catalog-section-heading .section-title,
body.platform-web.dark .search-product-content .search-catalog-section-heading h2 {
  padding-bottom: 0;
  border: 0;
  color: #f2f6f3;
}
body.platform-web.dark .search-product-content .search-catalog-count {
  border: 1px solid rgba(168, 207, 143, 0.15);
  background: rgba(168, 207, 143, 0.08);
  color: #acd391;
}
body.platform-web.dark .search-product-content .products-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
body.platform-web.dark .search-product-content app-product-card .product-card,
body.platform-web.dark .search-product-content app-product-card-skeleton .product-card-skeleton {
  border-color: rgba(205, 226, 210, 0.12);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.03), transparent 54%), #18211b;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .search-product-content app-product-card .product-card {
  display: flex;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 312px;
  height: 100%;
  aspect-ratio: auto;
  flex-direction: column;
  padding: 12px;
  border-radius: 18px;
  overflow: hidden;
}
body.platform-web.dark .search-product-content app-product-card .product-card:hover {
  border-color: rgba(168, 207, 143, 0.4);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.38), 0 0 0 2px rgba(168, 207, 143, 0.05);
  transform: translateY(-5px);
}
body.platform-web.dark .search-product-content app-product-card .product-card-image-container,
body.platform-web.dark .search-product-content app-product-card .product-card-image,
body.platform-web.dark .search-product-content app-product-card .product-card-image .image-error,
body.platform-web.dark .search-product-content app-product-card-skeleton .skeleton-image {
  border: 1px solid rgba(205, 226, 210, 0.08);
  background: radial-gradient(circle at 50% 38%, rgba(168, 207, 143, 0.07), transparent 58%), #202b23;
}
body.platform-web.dark .search-product-content app-product-card .product-card-image-container {
  position: relative;
  top: auto;
  left: auto;
  flex: 0 0 auto;
  width: 100%;
  height: 174px;
  min-height: 174px;
  max-height: 174px;
  aspect-ratio: auto;
  overflow: visible;
  border-radius: 14px;
}
body.platform-web.dark .search-product-content app-product-card .product-card-image {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 0;
  border-radius: 13px;
}
body.platform-web.dark .search-product-content app-product-card .product-card-image ion-img::part(image) {
  object-fit: contain;
  object-position: center;
}
body.platform-web.dark .search-product-content app-product-card .product-card-cart-control {
  right: 10px;
  bottom: 10px;
  width: 38px;
  min-width: 38px;
  height: 38px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 9px 20px rgba(242, 122, 141, 0.28);
}
body.platform-web.dark .search-product-content app-product-card .product-card-info {
  position: static;
  width: 100%;
  min-height: 0;
  margin-top: auto;
  padding-top: 12px;
  justify-content: flex-end;
}
body.platform-web.dark .search-product-content app-product-card .product-card-name {
  display: -webkit-box;
  min-height: 0;
  overflow: hidden;
  color: #f2f6f3;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.25;
  white-space: normal;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
body.platform-web.dark .search-product-content app-product-card .product-card-rating {
  position: static;
  width: 100%;
  height: auto;
  min-height: 16px;
  gap: 3px;
  margin-top: 4px;
  padding-top: 0;
}
body.platform-web.dark .search-product-content app-product-card .product-card-rating ion-icon {
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  font-size: 12px;
}
body.platform-web.dark .search-product-content app-product-card .product-card-review-count,
body.platform-web.dark .search-product-content app-product-card .product-card-original-price {
  color: #9da9a1;
}
body.platform-web.dark .search-product-content app-product-card .product-card-review-count {
  margin-left: 4px;
  font-size: 12px;
}
body.platform-web.dark .search-product-content app-product-card .product-card-rating ion-icon:not(.filled) {
  color: #465149;
}
body.platform-web.dark .search-product-content app-product-card .product-card-current-price {
  color: #f27a8d;
  font-size: 15px;
  font-weight: 800;
}
body.platform-web.dark .search-product-content app-product-card .product-card-pricing {
  position: static;
  width: 100%;
  height: auto;
  margin-top: 8px;
  min-height: 34px;
  padding-top: 11px;
  border-top: 1px solid rgba(205, 226, 210, 0.09);
  overflow: visible;
}
body.platform-web.dark .search-product-content app-product-card .product-card-pricing-values {
  overflow: visible;
}
body.platform-web.dark .search-product-content app-product-card .product-card-quickview {
  border-color: rgba(205, 226, 210, 0.16);
  background: rgba(18, 25, 20, 0.94);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.34);
  color: #f2f6f3;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}
body.platform-web.dark .search-product-content app-product-card .product-card-quickview:hover {
  border-color: #acd391;
  color: #acd391;
}
body.platform-web.dark .search-product-content .empty-state,
body.platform-web.dark .search-product-content .no-results {
  border-color: rgba(205, 226, 210, 0.12);
  background: radial-gradient(circle at 50% 0%, rgba(168, 207, 143, 0.08), transparent 60%), #172019;
  box-shadow: 0 20px 46px rgba(0, 0, 0, 0.26);
  color: #9da9a1;
}
body.platform-web.dark .search-product-content .empty-state .no-results-icon,
body.platform-web.dark .search-product-content .empty-state .empty-icon,
body.platform-web.dark .search-product-content .no-results .no-results-icon,
body.platform-web.dark .search-product-content .no-results .empty-icon {
  color: #acd391;
}
body.platform-web.dark .search-product-content .empty-state .no-results-text,
body.platform-web.dark .search-product-content .empty-state .empty-text,
body.platform-web.dark .search-product-content .no-results .no-results-text,
body.platform-web.dark .search-product-content .no-results .empty-text {
  color: #f2f6f3;
}
body.platform-web.dark .search-product-content ion-infinite-scroll-content {
  color: #9da9a1;
  --color: #acd391;
}
@media (width < 768px) {
  body.platform-web.dark .search-product-content .search-product-body {
    padding: 10px 16px 32px;
  }
  body.platform-web.dark .search-product-content .search-results-section,
  body.platform-web.dark .search-product-content .products-section {
    padding: 16px;
    border-radius: 18px;
  }
}
@media (width >= 768px) and (width < 1100px) {
  body.platform-web.dark .search-product-content .products-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body.platform-web.dark .search-product-content app-product-card .product-card {
    min-height: 292px;
  }
  body.platform-web.dark .search-product-content app-product-card .product-card-image-container {
    height: 154px;
    min-height: 154px;
    max-height: 154px;
  }
}
@media (width < 768px) {
  body.platform-web.dark .search-product-content .products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.platform-web.dark .search-product-content app-product-card .product-card {
    min-height: 262px;
  }
  body.platform-web.dark .search-product-content app-product-card .product-card-image-container {
    height: 124px;
    min-height: 124px;
    max-height: 124px;
  }
}

/* stylelint-enable no-duplicate-selectors */
:root {
  --green-chip-bg: rgb(122 158 99 / 20%);
}

.filter-modal {
  /* Position modal properly as bottom sheet */
  --width: 100%;
  --height: auto;
  --max-height: 80vh;
  --background: var(--ion-color-light);
  /* Style the internal sheet wrapper */
  /* blur and dark overlay */
  /* Report modal specific overrides */
}
.filter-modal::part(content) {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-height: 85vh;
  border-radius: 20px 20px 0 0;
  padding-bottom: var(--ion-safe-area-bottom);
  overflow-y: auto;
}
.filter-modal::part(backdrop) {
  background: rgb(0, 0, 0);
  -webkit-backdrop-filter: blur(24px);
          backdrop-filter: blur(24px);
}
.filter-modal.report-modal-wrapper {
  --max-height: 95vh;
  --height: auto;
}
.filter-modal.report-modal-wrapper::part(content) {
  display: flex;
  flex-direction: column;
  height: auto;
  max-height: 95vh;
  overflow-y: auto;
}

.mother-input-modal::part(content) {
  border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
}
.mother-input-modal::part(handle) {
  background: var(--ion-color-primary-contrast);
  opacity: 0.5;
  width: 40px;
  height: 4px;
  margin-top: var(--spacing-sm);
}

.pregnancy-details-dialog {
  --width: min(620px, calc(100vw - 48px));
  --height: min(610px, calc(100vh - 80px));
  --max-height: calc(100vh - 80px);
  --border-radius: var(--radius-md);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
}
.pregnancy-details-dialog::part(content) {
  position: static;
  overflow: hidden;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-md);
  background: var(--w-card, var(--ion-background-color));
}
.pregnancy-details-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.pregnancy-details-dialog::part(handle) {
  display: none;
}

.child-details-dialog {
  --width: min(760px, calc(100vw - 64px));
  --height: min(700px, calc(100vh - 72px));
  --max-height: calc(100vh - 72px);
  --border-radius: 20px;
  --box-shadow: 0 32px 80px rgb(24 32 24 / 28%);
}
.child-details-dialog::part(content) {
  position: static;
  overflow: hidden;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: 20px;
  background: var(--w-card, var(--ion-background-color));
}
.child-details-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.child-details-dialog::part(handle) {
  display: none;
}

ion-modal.profile-select-dialog {
  --width: min(860px, calc(100vw - 64px));
  --height: min(560px, calc(100vh - 64px));
  --max-height: calc(100vh - 64px);
  --border-radius: 24px;
  --backdrop-opacity: 0.5;
  --box-shadow: 0 32px 90px rgb(24 32 24 / 28%);
}
ion-modal.profile-select-dialog::part(content) {
  position: static;
  overflow: hidden;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: 24px;
  background: var(--w-card, var(--ion-background-color));
}
ion-modal.profile-select-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
ion-modal.profile-select-dialog::part(handle) {
  display: none;
}

ion-modal.community-guidelines-dialog {
  --width: min(620px, calc(100vw - 48px));
  --height: min(340px, calc(100vh - 48px));
  --max-height: min(680px, calc(100vh - 48px));
  --border-radius: 24px;
  --backdrop-opacity: 0.52;
  --box-shadow: 0 34px 90px rgb(24 32 24 / 30%);
}
ion-modal.community-guidelines-dialog::part(content) {
  position: static;
  overflow: auto;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: 24px;
  background: var(--w-card, var(--ion-background-color));
}
ion-modal.community-guidelines-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.52);
  -webkit-backdrop-filter: blur(9px);
          backdrop-filter: blur(9px);
}
ion-modal.community-guidelines-dialog::part(handle) {
  display: none;
}

@media (width < 720px) {
  ion-modal.profile-select-dialog {
    --width: calc(100vw - 32px);
    --height: min(680px, calc(100vh - 32px));
    --max-height: calc(100vh - 32px);
    --border-radius: 20px;
  }
  ion-modal.profile-select-dialog::part(content) {
    border-radius: 20px;
  }
  ion-modal.community-guidelines-dialog {
    --width: calc(100vw - 28px);
    --height: min(480px, calc(100vh - 28px));
    --max-height: calc(100vh - 28px);
    --border-radius: 20px;
  }
  ion-modal.community-guidelines-dialog::part(content) {
    border-radius: 20px;
  }
}
.promotional-video-popup {
  --width: 100%;
  --height: 100%;
  --max-width: 100%;
  --max-height: 100%;
  --border-radius: 0;
  --box-shadow: none;
  --background: transparent;
}
.promotional-video-popup::part(content) {
  background: transparent;
  box-shadow: none;
}
.promotional-video-popup::part(backdrop) {
  background: transparent;
}

.greeting-modal {
  --width: min(92vw, 920px);
  --max-width: 920px;
  --height: auto;
  --max-height: calc(100vh - 48px);
  --border-radius: 22px;
  --background: #f7faf5;
  --box-shadow: 0 28px 80px rgb(24 38 20 / 26%);
}
.greeting-modal::part(content) {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(118, 151, 99, 0.2);
  border-radius: 22px;
  padding: 0;
  overflow: hidden;
}
.greeting-modal::part(backdrop) {
  background: rgba(12, 18, 13, 0.58);
  -webkit-backdrop-filter: blur(10px) saturate(0.8);
          backdrop-filter: blur(10px) saturate(0.8);
}
.greeting-modal ion-header {
  --background: transparent;
  --border-bottom: none;
  flex-shrink: 0;
}
@media (width < 576px) {
  .greeting-modal {
    --width: calc(100vw - 24px);
    --max-height: calc(100vh - 24px);
    --border-radius: 18px;
  }
  .greeting-modal::part(content) {
    border-radius: 18px;
  }
}

body.dark .greeting-modal,
body.ion-palette-dark .greeting-modal {
  --background: #101713;
  --box-shadow: 0 30px 90px rgb(0 0 0 / 44%);
}
body.dark .greeting-modal::part(content),
body.ion-palette-dark .greeting-modal::part(content) {
  border-color: rgba(205, 226, 210, 0.14);
}

ion-searchbar .searchbar-input-container {
  min-height: var(--input-height-sm) !important;
  height: var(--input-height-sm) !important;
}
ion-searchbar .searchbar-input {
  min-height: var(--input-height-sm) !important;
  height: var(--input-height-sm) !important;
  border-radius: var(--radius-full) !important;
}

.modal-small::part(content),
.modal-half::part(content),
.modal-full::part(content) {
  border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
}
.modal-small::part(handle),
.modal-half::part(handle),
.modal-full::part(handle) {
  background: var(--ion-color-medium);
  opacity: 0.4;
  width: 40px;
  height: 4px;
  margin-top: var(--spacing-sm);
}

ion-modal.premium-content-modal--web {
  --width: min(520px, calc(100vw - 40px));
  --height: 350px;
  --max-height: calc(100vh - 48px);
  --border-radius: var(--radius-2xl);
  --backdrop-opacity: 0.5;
  --box-shadow: 0 28px 80px rgb(16 24 40 / 22%);
}
ion-modal.premium-content-modal--web::part(content) {
  border-radius: var(--radius-2xl);
  overflow: hidden;
}

ion-modal.locked-lesson-dialog--web {
  --width: min(520px, calc(100vw - 40px));
  --height: 320px;
  --max-height: calc(100vh - 48px);
  --border-radius: 22px;
  --backdrop-opacity: 0.52;
  --box-shadow: 0 30px 84px rgb(20 31 21 / 28%);
}
ion-modal.locked-lesson-dialog--web::part(content) {
  position: static;
  overflow: hidden;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: 22px;
  background: var(--w-card, var(--ion-background-color));
}
ion-modal.locked-lesson-dialog--web::part(backdrop) {
  background: rgba(18, 27, 19, 0.54);
  -webkit-backdrop-filter: blur(8px) saturate(0.85);
          backdrop-filter: blur(8px) saturate(0.85);
}
ion-modal.locked-lesson-dialog--web::part(handle) {
  display: none;
}

@media (width < 620px) {
  ion-modal.locked-lesson-dialog--web {
    --width: calc(100vw - 28px);
    --height: min(340px, calc(100vh - 28px));
    --border-radius: 18px;
  }
  ion-modal.locked-lesson-dialog--web::part(content) {
    border-radius: 18px;
  }
}
.comment-modal-sheet::part(content) {
  border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
  background: var(--app-surface);
}
.comment-modal-sheet::part(backdrop) {
  background: rgba(0, 0, 0, 0.5);
}
.comment-modal-sheet::part(handle) {
  display: none;
}

.ion-palette-dark {
  color-scheme: dark;
}
.ion-palette-dark ion-app,
.ion-palette-dark ion-content,
.ion-palette-dark ion-list,
.ion-palette-dark ion-card,
.ion-palette-dark ion-item,
.ion-palette-dark ion-modal,
.ion-palette-dark ion-popover,
.ion-palette-dark ion-alert,
.ion-palette-dark ion-action-sheet,
.ion-palette-dark ion-datetime,
.ion-palette-dark ion-picker {
  color: var(--app-text);
}
.ion-palette-dark ion-list {
  background: var(--app-canvas);
}
.ion-palette-dark ion-card:not([color]),
.ion-palette-dark ion-item:not([color]) {
  --background: var(--app-surface);
}
.ion-palette-dark ion-toolbar:not([color]),
.ion-palette-dark ion-footer,
.ion-palette-dark ion-tab-bar {
  --background: var(--app-surface);
  --color: var(--app-text);
  --border-color: var(--app-border);
}
.ion-palette-dark ion-searchbar,
.ion-palette-dark ion-input,
.ion-palette-dark ion-textarea,
.ion-palette-dark ion-select {
  --background: var(--app-surface-muted);
  --color: var(--app-text);
  --placeholder-color: var(--app-text-muted);
}
.ion-palette-dark ion-modal::part(content),
.ion-palette-dark ion-popover::part(content) {
  background: var(--app-surface);
  color: var(--app-text);
}
.ion-palette-dark input,
.ion-palette-dark textarea,
.ion-palette-dark select {
  color-scheme: dark;
  color: var(--app-text);
}

.books-filter-dialog {
  --width: min(540px, calc(100vw - 48px));
  --height: auto;
  --max-height: calc(100vh - 80px);
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.books-filter-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow: hidden;
}
.books-filter-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.books-filter-dialog::part(handle) {
  display: none;
}

.article-filter-dialog {
  --width: min(560px, calc(100vw - 48px));
  --height: auto;
  --max-height: calc(100vh - 80px);
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.article-filter-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow: hidden;
}
.article-filter-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.article-filter-dialog::part(handle) {
  display: none;
}

.community-filter-dialog {
  --width: min(760px, calc(100vw - 48px));
  --height: auto;
  --max-height: calc(100vh - 80px);
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.community-filter-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow-y: auto;
}
.community-filter-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.community-filter-dialog::part(handle) {
  display: none;
}

.community-date-picker-dialog,
.child-date-picker-dialog {
  --width: min(460px, calc(100vw - 48px));
  --height: min(610px, calc(100vh - 80px));
  --max-height: min(610px, calc(100vh - 80px));
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.community-date-picker-dialog::part(content),
.child-date-picker-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow: hidden;
}
.community-date-picker-dialog::part(backdrop),
.child-date-picker-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.community-date-picker-dialog::part(handle),
.child-date-picker-dialog::part(handle) {
  display: none;
}

.child-date-picker-dialog {
  --height: min(540px, calc(100vh - 48px));
  --max-height: min(540px, calc(100vh - 48px));
}

.learning-filter-dialog {
  --width: min(620px, calc(100vw - 48px));
  --height: auto;
  --max-height: calc(100vh - 80px);
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.learning-filter-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow: hidden;
}
.learning-filter-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.learning-filter-dialog::part(handle) {
  display: none;
}

.shop-filter-dialog {
  --width: min(720px, calc(100vw - 48px));
  --height: min(720px, calc(100vh - 64px));
  --max-height: calc(100vh - 64px);
  --border-radius: var(--radius-lg);
  --box-shadow: 0 28px 72px rgb(24 32 24 / 24%);
  --background: var(--w-card, var(--ion-background-color));
}
.shop-filter-dialog::part(content) {
  position: static;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: var(--radius-lg);
  background: var(--w-card, var(--ion-background-color));
  overflow: hidden;
}
.shop-filter-dialog::part(backdrop) {
  background: rgba(28, 34, 28, 0.48);
  -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
}
.shop-filter-dialog::part(handle) {
  display: none;
}

body.platform-web.dark .shop-filter-dialog {
  --border-radius: 20px;
  --box-shadow: 0 32px 90px rgb(0 0 0 / 52%);
  --background: #0f1612;
}
body.platform-web.dark .shop-filter-dialog::part(content) {
  border-color: rgba(205, 226, 210, 0.13);
  border-radius: 20px;
  background: #0f1612;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 0 0 1px rgba(0, 0, 0, 0.18);
}
body.platform-web.dark .shop-filter-dialog::part(backdrop) {
  background: rgba(3, 8, 5, 0.72);
  -webkit-backdrop-filter: blur(10px) saturate(80%);
          backdrop-filter: blur(10px) saturate(80%);
}

@media (width < 600px) {
  .shop-filter-dialog {
    --width: calc(100vw - 24px);
    --height: calc(100vh - 32px);
    --max-height: calc(100vh - 32px);
  }
}
@media (width >= 768px) {
  .comment-modal-sheet {
    --width: min(640px, calc(100vw - 48px));
    --height: min(510px, calc(100vh - 96px));
    --max-height: min(640px, calc(100vh - 96px));
    --border-radius: var(--radius-lg);
    --box-shadow: 0 24px 70px rgb(0 0 0 / 24%);
  }
  .comment-modal-sheet::part(content) {
    position: static;
    overflow: hidden;
    border: 1px solid var(--w-border, var(--ion-color-light-shade));
    border-radius: var(--radius-lg);
    background: var(--w-card, var(--ion-background-color));
  }
  .comment-modal-sheet::part(backdrop) {
    background: rgba(26, 32, 24, 0.48);
    -webkit-backdrop-filter: blur(8px);
            backdrop-filter: blur(8px);
  }
}
.tip-popup-modal {
  --width: 90%;
  --max-width: 600px;
  --height: 460px;
  --max-height: 90vh;
  --border-radius: var(--radius-2xl);
  --background: var(--ion-color-light);
  --box-shadow: 0 10px 40px rgb(0 0 0 / 20%);
}
.tip-popup-modal.tip-popup-modal--empty {
  --height: 175px;
}
.tip-popup-modal.support-popup-modal {
  --height: auto;
}
.tip-popup-modal::part(content) {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-2xl);
  padding: 0;
}
.tip-popup-modal::part(backdrop) {
  background: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

body.platform-web .tip-popup-modal {
  --width: min(840px, calc(100vw - 64px));
  --max-width: 840px;
  --height: min(600px, calc(100dvh - 96px));
  --max-height: calc(100dvh - 96px);
  --border-radius: 24px;
  --background: var(--w-card, var(--ion-background-color));
  --box-shadow: 0 32px 90px rgb(25 38 22 / 28%);
}
body.platform-web .tip-popup-modal.tip-popup-modal--empty {
  --height: 240px;
}
body.platform-web .tip-popup-modal.support-popup-modal {
  --width: min(520px, calc(100vw - 64px));
  --height: auto;
}
body.platform-web .tip-popup-modal::part(content) {
  overflow: hidden;
  border: 1px solid var(--w-border, var(--ion-color-light-shade));
  border-radius: 24px;
  background: var(--w-card, var(--ion-background-color));
}
body.platform-web .tip-popup-modal::part(backdrop) {
  background: rgba(18, 27, 17, 0.58);
  -webkit-backdrop-filter: blur(7px);
          backdrop-filter: blur(7px);
}

body.platform-web.dark .tip-popup-modal {
  --background: #101713;
  --box-shadow: 0 38px 110px rgb(0 0 0 / 58%), 0 10px 34px rgb(0 0 0 / 36%);
}
body.platform-web.dark .tip-popup-modal::part(content) {
  border-color: rgba(168, 207, 143, 0.18);
  background: #101713;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}
body.platform-web.dark .tip-popup-modal::part(backdrop) {
  background: rgba(2, 7, 4, 0.76);
  -webkit-backdrop-filter: blur(8px) saturate(80%);
          backdrop-filter: blur(8px) saturate(80%);
}

@media (width < 720px) {
  body.platform-web .tip-popup-modal {
    --width: calc(100vw - 28px);
    --height: min(640px, calc(100dvh - 40px));
    --max-height: calc(100dvh - 40px);
  }
}
ion-toast {
  --border-radius: var(--radius-xl);
  --box-shadow: 0 4px 16px rgb(0 0 0 / 15%);
  --start: 16px;
  --end: 16px;
  --max-width: 100%;
}
ion-toast::part(container) {
  padding: 12px 16px;
}
ion-toast::part(message) {
  font-size: 14px;
  line-height: 1.4;
}
ion-toast::part(button) {
  font-weight: 600;
  text-transform: none;
  font-size: 14px;
}

.report-undo-toast {
  --background: var(--ion-color-dark);
  --color: var(--ion-color-dark-contrast);
}
.report-undo-toast::part(button) {
  color: var(--ion-color-primary);
}

.toast-success {
  --background: var(--ion-color-success);
  --color: var(--ion-color-success-contrast);
}

.toast-danger {
  --background: var(--ion-color-danger);
  --color: var(--ion-color-danger-contrast);
}

.toast-info {
  --background: var(--ion-color-medium);
  --color: var(--ion-color-medium-contrast);
}

/* --- ANDROID NATIVE PICTURE-IN-PICTURE (PiP) MODE --- */
body.android-native-pip ion-header,
body.android-native-pip app-header-container,
body.android-native-pip app-lesson-navigation,
body.android-native-pip .content-section,
body.android-native-pip .android-pip-btn {
  display: none !important;
}
body.android-native-pip ion-content.video-page,
body.android-native-pip ion-content {
  --background: #000;
}
body.android-native-pip .video-section {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
}
body.android-native-pip .video-wrapper {
  height: 100%;
  position: static;
}
body.android-native-pip video,
body.android-native-pip .video-player {
  object-fit: contain;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  background: black;
}

/* --- IN-APP PICTURE-IN-PICTURE (PiP) MODE --- */
.in-app-pip-container {
  position: fixed;
  bottom: 80px; /* Above the bottom tabs */
  right: 16px;
  width: 250px;
  height: 140px;
  z-index: 99999;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
  background: black;
  overflow: hidden;
  cursor: grab;
  touch-action: none;
}
.in-app-pip-container:active {
  cursor: grabbing;
}

.in-app-pip-container video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.in-app-pip-close-btn {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.6);
  color: white;
  border: none;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 100000;
}

@media (width < 768px) {
  .mobile-touch-target {
    min-width: 44px;
    min-height: 44px;
  }
}
