import {
  AppointmentRouteType,
  LocalAppointmentService
} from "./chunk-MGVWDYTN.js";
import "./chunk-FKLBEDMY.js";
import {
  InternalRouteService
} from "./chunk-B4U6NSGR.js";
import {
  InternalRoute,
  RouteLoadDirection
} from "./chunk-PRTLXG5I.js";
import {
  createCustomElement
} from "./chunk-DQUMCYPT.js";
import {
  AppointmentService
} from "./chunk-WJXFQPCB.js";
import "./chunk-QUJNR5CZ.js";
import {
  UiService
} from "./chunk-WUILV27O.js";
import "./chunk-JNQRPNRP.js";
import "./chunk-BN54ET2Y.js";
import "./chunk-7LL3CK47.js";
import {
  StorageService
} from "./chunk-M3LFBN7N.js";
import {
  EntityAttributeType,
  safePrice
} from "./chunk-N36JE2BE.js";
import "./chunk-DNHSR4U6.js";
import {
  BehaviorSubject,
  CommonModule,
  Component,
  CurrencyInputComponent,
  CurrencyPipe,
  DefaultValueAccessor,
  FormsModule,
  Injectable,
  Injector,
  Input,
  MaxLengthValidator,
  NgControlStatus,
  NgModel,
  NgModule,
  OrderByPipe,
  ReactiveFormsModule,
  Subject,
  UiModule,
  ViewChild,
  provideHttpClient,
  setClassMetadata,
  withInterceptorsFromDi,
  ɵsetClassDebugInfo,
  ɵɵadvance,
  ɵɵclassMap,
  ɵɵclassProp,
  ɵɵconditional,
  ɵɵconditionalCreate,
  ɵɵdefineComponent,
  ɵɵdefineInjectable,
  ɵɵdefineInjector,
  ɵɵdefineNgModule,
  ɵɵdirectiveInject,
  ɵɵelement,
  ɵɵelementEnd,
  ɵɵelementStart,
  ɵɵgetCurrentView,
  ɵɵinject,
  ɵɵinterpolate1,
  ɵɵlistener,
  ɵɵloadQuery,
  ɵɵnextContext,
  ɵɵpipe,
  ɵɵpipeBind2,
  ɵɵproperty,
  ɵɵqueryRefresh,
  ɵɵreference,
  ɵɵrepeater,
  ɵɵrepeaterCreate,
  ɵɵrepeaterTrackByIdentity,
  ɵɵresetView,
  ɵɵrestoreView,
  ɵɵtext,
  ɵɵtextInterpolate,
  ɵɵtextInterpolate1,
  ɵɵtextInterpolate2,
  ɵɵtwoWayBindingSet,
  ɵɵtwoWayListener,
  ɵɵtwoWayProperty,
  ɵɵviewQuery
} from "./chunk-VAMMRICA.js";
import "./chunk-IT26RCSL.js";
import "./chunk-RVA4KI76.js";

// src/app/appointment/internal-pricing/models/navigation.ts
var AppointmentPricingRouteType;
(function(AppointmentPricingRouteType2) {
  AppointmentPricingRouteType2["internal"] = "internal";
})(AppointmentPricingRouteType || (AppointmentPricingRouteType = {}));

// src/app/appointment/internal-pricing/services/pricing.service.ts
var _AppointmentPricingService = class _AppointmentPricingService {
  constructor(appointmentService, storageService, routeService) {
    this.appointmentService = appointmentService;
    this.storageService = storageService;
    this.routeService = routeService;
    this.routesInitialized = false;
  }
  initRoutes(initialRouteType = void 0, appointment, componentElm) {
    const routes = {
      [AppointmentPricingRouteType.internal]: new InternalRoute(AppointmentPricingRouteType.internal)
    };
    let initialRoute = AppointmentPricingRouteType.internal;
    this.routeService.init(routes, initialRoute, 500, componentElm);
    this.routesInitialized = true;
  }
};
_AppointmentPricingService.\u0275fac = function AppointmentPricingService_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _AppointmentPricingService)(\u0275\u0275inject(AppointmentService), \u0275\u0275inject(StorageService), \u0275\u0275inject(InternalRouteService));
};
_AppointmentPricingService.\u0275prov = /* @__PURE__ */ \u0275\u0275defineInjectable({ token: _AppointmentPricingService, factory: _AppointmentPricingService.\u0275fac, providedIn: "root" });
var AppointmentPricingService = _AppointmentPricingService;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(AppointmentPricingService, [{
    type: Injectable,
    args: [{
      providedIn: "root"
    }]
  }], () => [{ type: AppointmentService }, { type: StorageService }, { type: InternalRouteService }], null);
})();

// src/app/appointment/internal-pricing/components/internal/attributes/attributes.component.ts
var _c0 = ["componentElm"];
function AttributesComponent_For_2_Conditional_3_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "span", 5)(1, "p");
    \u0275\u0275text(2, "Can select multiple options.");
    \u0275\u0275elementEnd()();
  }
}
function AttributesComponent_For_2_Conditional_4_Conditional_0_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "span", 9)(1, "p");
    \u0275\u0275text(2, "Please answer the question.");
    \u0275\u0275elementEnd()();
  }
}
function AttributesComponent_For_2_Conditional_4_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275conditionalCreate(0, AttributesComponent_For_2_Conditional_4_Conditional_0_Template, 3, 0, "span", 9);
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    \u0275\u0275conditional(!attribute_r1.valid ? 0 : -1);
  }
}
function AttributesComponent_For_2_Conditional_5_Conditional_0_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "span", 9)(1, "p");
    \u0275\u0275text(2, "Please select an available option.");
    \u0275\u0275elementEnd()();
  }
}
function AttributesComponent_For_2_Conditional_5_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275conditionalCreate(0, AttributesComponent_For_2_Conditional_5_Conditional_0_Template, 3, 0, "span", 9);
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    \u0275\u0275conditional(!attribute_r1.valid ? 0 : -1);
  }
}
function AttributesComponent_For_2_Conditional_7_Template(rf, ctx) {
  if (rf & 1) {
    const _r2 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "input", 10, 0);
    \u0275\u0275listener("input", function AttributesComponent_For_2_Conditional_7_Template_input_input_0_listener() {
      \u0275\u0275restoreView(_r2);
      const inputElm_r3 = \u0275\u0275reference(1);
      const attribute_r1 = \u0275\u0275nextContext().$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, inputElm_r3.value));
    });
    \u0275\u0275elementEnd();
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275property("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment)("value", attribute_r1.values[0])("placeholder", attribute_r1.name + " Number");
  }
}
function AttributesComponent_For_2_Conditional_8_Template(rf, ctx) {
  if (rf & 1) {
    const _r5 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "button", 11, 1);
    \u0275\u0275listener("click", function AttributesComponent_For_2_Conditional_8_Template_button_click_0_listener() {
      \u0275\u0275restoreView(_r5);
      const attribute_r1 = \u0275\u0275nextContext().$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, "true"));
    });
    \u0275\u0275elementStart(2, "label");
    \u0275\u0275text(3, "Yes");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(4, "button", 11, 1);
    \u0275\u0275listener("click", function AttributesComponent_For_2_Conditional_8_Template_button_click_4_listener() {
      \u0275\u0275restoreView(_r5);
      const attribute_r1 = \u0275\u0275nextContext().$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, "false"));
    });
    \u0275\u0275elementStart(6, "label");
    \u0275\u0275text(7, "No");
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275classProp("checked", attribute_r1.values.indexOf("true") > -1);
    \u0275\u0275property("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment);
    \u0275\u0275advance(4);
    \u0275\u0275classProp("checked", attribute_r1.values.indexOf("false") > -1);
    \u0275\u0275property("disabled", attribute_r1.disabled);
  }
}
function AttributesComponent_For_2_Conditional_9_For_1_Template(rf, ctx) {
  if (rf & 1) {
    const _r6 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "button", 11, 1);
    \u0275\u0275listener("click", function AttributesComponent_For_2_Conditional_9_For_1_Template_button_click_0_listener() {
      const value_r7 = \u0275\u0275restoreView(_r6).$implicit;
      const attribute_r1 = \u0275\u0275nextContext(2).$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, value_r7));
    });
    \u0275\u0275elementStart(2, "label");
    \u0275\u0275text(3);
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const value_r7 = ctx.$implicit;
    const attribute_r1 = \u0275\u0275nextContext(2).$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275classProp("checked", attribute_r1.values.indexOf(value_r7) > -1);
    \u0275\u0275property("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment);
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate(value_r7);
  }
}
function AttributesComponent_For_2_Conditional_9_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275repeaterCreate(0, AttributesComponent_For_2_Conditional_9_For_1_Template, 4, 4, "button", 12, \u0275\u0275repeaterTrackByIdentity);
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    \u0275\u0275repeater(attribute_r1.possibleValues);
  }
}
function AttributesComponent_For_2_Conditional_10_For_1_Template(rf, ctx) {
  if (rf & 1) {
    const _r8 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "button", 11, 1);
    \u0275\u0275listener("click", function AttributesComponent_For_2_Conditional_10_For_1_Template_button_click_0_listener() {
      const value_r9 = \u0275\u0275restoreView(_r8).$implicit;
      const attribute_r1 = \u0275\u0275nextContext(2).$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, value_r9));
    });
    \u0275\u0275elementStart(2, "label");
    \u0275\u0275text(3);
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const value_r9 = ctx.$implicit;
    const attribute_r1 = \u0275\u0275nextContext(2).$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275classProp("checked", attribute_r1.values.indexOf(value_r9) > -1);
    \u0275\u0275property("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment);
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate(value_r9);
  }
}
function AttributesComponent_For_2_Conditional_10_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275repeaterCreate(0, AttributesComponent_For_2_Conditional_10_For_1_Template, 4, 4, "button", 12, \u0275\u0275repeaterTrackByIdentity);
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    \u0275\u0275repeater(attribute_r1.possibleValues);
  }
}
function AttributesComponent_For_2_Conditional_11_Template(rf, ctx) {
  if (rf & 1) {
    const _r10 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "input", 13, 0);
    \u0275\u0275listener("input", function AttributesComponent_For_2_Conditional_11_Template_input_input_0_listener() {
      \u0275\u0275restoreView(_r10);
      const inputElm_r11 = \u0275\u0275reference(1);
      const attribute_r1 = \u0275\u0275nextContext().$implicit;
      const ctx_r3 = \u0275\u0275nextContext();
      return \u0275\u0275resetView(ctx_r3.setAttribute(attribute_r1, inputElm_r11.value));
    });
    \u0275\u0275elementEnd();
  }
  if (rf & 2) {
    const attribute_r1 = \u0275\u0275nextContext().$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275property("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment)("value", attribute_r1.values[0] ?? null)("placeholder", attribute_r1.name);
  }
}
function AttributesComponent_For_2_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 4)(1, "label");
    \u0275\u0275text(2);
    \u0275\u0275elementEnd();
    \u0275\u0275conditionalCreate(3, AttributesComponent_For_2_Conditional_3_Template, 3, 0, "span", 5);
    \u0275\u0275conditionalCreate(4, AttributesComponent_For_2_Conditional_4_Template, 1, 1);
    \u0275\u0275conditionalCreate(5, AttributesComponent_For_2_Conditional_5_Template, 1, 1);
    \u0275\u0275elementStart(6, "div", 6);
    \u0275\u0275conditionalCreate(7, AttributesComponent_For_2_Conditional_7_Template, 2, 3, "input", 7);
    \u0275\u0275conditionalCreate(8, AttributesComponent_For_2_Conditional_8_Template, 8, 6);
    \u0275\u0275conditionalCreate(9, AttributesComponent_For_2_Conditional_9_Template, 2, 0);
    \u0275\u0275conditionalCreate(10, AttributesComponent_For_2_Conditional_10_Template, 2, 0);
    \u0275\u0275conditionalCreate(11, AttributesComponent_For_2_Conditional_11_Template, 2, 3, "input", 8);
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const attribute_r1 = ctx.$implicit;
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275classProp("disabled", attribute_r1.disabled || !ctx_r3.canModifyAppointment)("hidden", attribute_r1.shouldHide);
    \u0275\u0275advance(2);
    \u0275\u0275textInterpolate(attribute_r1.name);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.MultiSelect ? 3 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Input || attribute_r1.type == ctx_r3.EntityAttributeType.Number ? 4 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Select || attribute_r1.type == ctx_r3.EntityAttributeType.MultiSelect || attribute_r1.type == ctx_r3.EntityAttributeType.Boolean ? 5 : -1);
    \u0275\u0275advance(2);
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Number ? 7 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Boolean ? 8 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.MultiSelect ? 9 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Select ? 10 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(attribute_r1.type == ctx_r3.EntityAttributeType.Input ? 11 : -1);
  }
}
var _AttributesComponent = class _AttributesComponent {
  constructor(localAppointmentService, appointmentService, uiService) {
    this.localAppointmentService = localAppointmentService;
    this.appointmentService = appointmentService;
    this.uiService = uiService;
    this.EntityAttributeType = EntityAttributeType;
    this.attributes = [];
  }
  // #region Authentication
  get canModifyAppointment() {
    return this.localAppointmentService.canModifyAppointment;
  }
  toggleAttributeValue(attribute, value) {
    if (value.length > 0) {
      const existingIndex = attribute.values.findIndex((x) => x == value);
      if (existingIndex <= -1) {
        if (attribute.type == EntityAttributeType.MultiSelect) {
          attribute.values.push(value);
        } else {
          attribute.values = [value];
        }
      } else {
        attribute.values.splice(existingIndex, 1);
      }
    } else {
      attribute.values = [];
    }
  }
  setAttribute(attribute, value) {
    this.toggleAttributeValue(attribute, value);
    attribute.touched = true;
    this.changeAttribute(attribute);
  }
  changeAttribute(attribute) {
    if (this.job != null) {
      if (this.appointment != null) {
        this.appointment.changed$.next();
      }
    }
  }
  initAttributes() {
    if (this.job != null) {
      const entity = this.job;
      this.appointment?.changed$.next();
    }
  }
  init() {
  }
  // #endregion
  ngOnInit() {
    this.init();
  }
  ngOnDestroy() {
  }
};
_AttributesComponent.\u0275fac = function AttributesComponent_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _AttributesComponent)(\u0275\u0275directiveInject(LocalAppointmentService), \u0275\u0275directiveInject(AppointmentService), \u0275\u0275directiveInject(UiService));
};
_AttributesComponent.\u0275cmp = /* @__PURE__ */ \u0275\u0275defineComponent({ type: _AttributesComponent, selectors: [["attributes"]], viewQuery: function AttributesComponent_Query(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275viewQuery(_c0, 5);
  }
  if (rf & 2) {
    let _t;
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.componentElm = _t.first);
  }
}, inputs: { appointment: "appointment", job: "job", attributes: "attributes" }, standalone: false, decls: 4, vars: 3, consts: [["inputElm", ""], ["optionElm", ""], [1, "form"], [1, "input-wrap", 3, "disabled", "hidden"], [1, "input-wrap"], [1, "message"], [1, "input"], ["type", "number", 3, "disabled", "value", "placeholder"], ["type", "text", 3, "disabled", "value", "placeholder"], [1, "validation"], ["type", "number", 3, "input", "disabled", "value", "placeholder"], [1, "option", 3, "click", "disabled"], [1, "option", 3, "disabled", "checked"], ["type", "text", 3, "input", "disabled", "value", "placeholder"]], template: function AttributesComponent_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 2);
    \u0275\u0275repeaterCreate(1, AttributesComponent_For_2_Template, 12, 13, "div", 3, \u0275\u0275repeaterTrackByIdentity);
    \u0275\u0275pipe(3, "orderBy");
    \u0275\u0275elementEnd();
  }
  if (rf & 2) {
    \u0275\u0275advance();
    \u0275\u0275repeater(\u0275\u0275pipeBind2(3, 0, ctx.attributes, "displayOrder"));
  }
}, dependencies: [OrderByPipe], styles: ["\n\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%] {\n  margin-top: 1vw;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]   label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n  display: block;\n  width: 100%;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%] {\n  display: block;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]    > p[_ngcontent-%COMP%] {\n  color: var(--color1Alt3);\n  font-weight: var(--stdweight);\n  font-size: 1vw;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .validation[_ngcontent-%COMP%] {\n  display: block;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .validation[_ngcontent-%COMP%]    > p[_ngcontent-%COMP%] {\n  color: var(--error);\n  font-weight: var(--strong);\n  font-size: 1vw;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%] {\n  padding: 0.25vw 0 0.5vw;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .option[_ngcontent-%COMP%] {\n  display: block;\n  width: 100%;\n  margin-top: 0.25vw;\n  cursor: pointer;\n  padding: 0.25vw 0.5vw;\n  border-radius: 999px;\n  border: 0.1vw var(--color2Alt4) solid;\n  background-color: var(--color2Alt1);\n  text-align: center;\n  -moz-transition: background-color 0.2s, border-color 0.2s;\n  -o-transition: background-color 0.2s, border-color 0.2s;\n  -webkit-transition: background-color 0.2s, border-color 0.2s;\n  transition: background-color 0.2s, border-color 0.2s;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .option[_ngcontent-%COMP%]   label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  color: var(--color1);\n  -moz-transition: color 0.2s linear;\n  -o-transition: color 0.2s linear;\n  -webkit-transition: color 0.2s linear;\n  transition: color 0.2s linear;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .option.checked[_ngcontent-%COMP%] {\n  background-color: var(--color3);\n  border-color: transparent;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .option.checked[_ngcontent-%COMP%]   label[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .option[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   select[_ngcontent-%COMP%], \n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   input[_ngcontent-%COMP%], \n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   textarea[_ngcontent-%COMP%] {\n  display: block;\n  resize: none;\n  width: 100%;\n  border: 0.1vw var(--color2Alt3) solid;\n  border-radius: 1vw;\n  background-color: var(--color2Alt1);\n  padding: 1vw;\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  -moz-transition: background-color 0.2s, border-color 0.2s;\n  -o-transition: background-color 0.2s, border-color 0.2s;\n  -webkit-transition: background-color 0.2s, border-color 0.2s;\n  transition: background-color 0.2s, border-color 0.2s;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   select[_ngcontent-%COMP%]:focus, \n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]:focus, \n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   textarea[_ngcontent-%COMP%]:focus {\n  background-color: var(--color2);\n  border-color: var(--color3);\n}\n.form[_ngcontent-%COMP%]    > .input-wrap.disabled[_ngcontent-%COMP%] {\n  opacity: 0.6;\n  pointer-events: none;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap.hidden[_ngcontent-%COMP%] {\n  display: none;\n}\n.form[_ngcontent-%COMP%]    > .input-wrap[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n.form[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n.form.disabled[_ngcontent-%COMP%] {\n  opacity: 0.2;\n  -webkit-filter: blur(1vw);\n  -moz-filter: blur(1vw);\n  -o-filter: blur(1vw);\n  -ms-filter: blur(1vw);\n  filter: blur(1vw);\n}\n/*# sourceMappingURL=attributes.component.css.map */"] });
var AttributesComponent = _AttributesComponent;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(AttributesComponent, [{
    type: Component,
    args: [{ standalone: false, selector: "attributes", template: `<div class="form">
  @for (attribute of attributes | orderBy:'displayOrder'; track attribute) {
    <div class="input-wrap" [class.disabled]="attribute.disabled || !canModifyAppointment" [class.hidden]="attribute.shouldHide"
      >
      <label>{{attribute.name}}</label>
      @if (attribute.type == EntityAttributeType.MultiSelect) {
        <span class="message">
          <p>Can select multiple options.</p>
        </span>
      }
      @if (attribute.type == EntityAttributeType.Input
        || attribute.type == EntityAttributeType.Number) {
        @if (!attribute.valid) {
          <span class="validation">
            <p>Please answer the question.</p>
          </span>
        }
      }
      @if (attribute.type == EntityAttributeType.Select
        || attribute.type == EntityAttributeType.MultiSelect
        || attribute.type == EntityAttributeType.Boolean) {
        @if (!attribute.valid) {
          <span class="validation">
            <p>Please select an available option.</p>
          </span>
        }
      }
      <div class="input">
        @if (attribute.type == EntityAttributeType.Number) {
          <input type="number" [disabled]="attribute.disabled || !canModifyAppointment" #inputElm [value]="attribute.values[0]"
            (input)="setAttribute(attribute,inputElm.value)" [placeholder]="attribute.name + ' Number'" />
        }
        @if (attribute.type == EntityAttributeType.Boolean) {
          <button class="option" #optionElm [disabled]="attribute.disabled || !canModifyAppointment"
            (click)="setAttribute(attribute,'true')" [class.checked]="attribute.values.indexOf('true') > -1">
            <label>Yes</label>
          </button>
          <button class="option" #optionElm [disabled]="attribute.disabled"
            (click)="setAttribute(attribute,'false')" [class.checked]="attribute.values.indexOf('false') > -1">
            <label>No</label>
          </button>
        }
        @if (attribute.type == EntityAttributeType.MultiSelect) {
          @for (value of attribute.possibleValues; track value) {
            <button class="option" #optionElm [disabled]="attribute.disabled || !canModifyAppointment"
              (click)="setAttribute(attribute,value)" [class.checked]="attribute.values.indexOf(value) > -1"
              >
              <label>{{value}}</label>
            </button>
          }
        }
        @if (attribute.type == EntityAttributeType.Select) {
          @for (value of attribute.possibleValues; track value) {
            <button class="option" #optionElm [disabled]="attribute.disabled || !canModifyAppointment"
              (click)="setAttribute(attribute,value)" [class.checked]="attribute.values.indexOf(value) > -1"
              >
              <label>{{value}}</label>
            </button>
          }
        }
        @if (attribute.type == EntityAttributeType.Input) {
          <input type="text" [disabled]="attribute.disabled || !canModifyAppointment" #inputElm [value]="attribute.values[0] ?? null"
            (input)="setAttribute(attribute,inputElm.value)" [placeholder]="attribute.name" />
        }
      </div>
    </div>
  }
</div>`, styles: ["/* src/app/appointment/internal-pricing/components/internal/attributes/attributes.component.scss */\n.form > .input-wrap {\n  margin-top: 1vw;\n}\n.form > .input-wrap label {\n  font-size: 1.2vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n  display: block;\n  width: 100%;\n}\n.form > .input-wrap > .message {\n  display: block;\n}\n.form > .input-wrap > .message > p {\n  color: var(--color1Alt3);\n  font-weight: var(--stdweight);\n  font-size: 1vw;\n}\n.form > .input-wrap > .validation {\n  display: block;\n}\n.form > .input-wrap > .validation > p {\n  color: var(--error);\n  font-weight: var(--strong);\n  font-size: 1vw;\n}\n.form > .input-wrap > .input {\n  padding: 0.25vw 0 0.5vw;\n}\n.form > .input-wrap > .input > .option {\n  display: block;\n  width: 100%;\n  margin-top: 0.25vw;\n  cursor: pointer;\n  padding: 0.25vw 0.5vw;\n  border-radius: 999px;\n  border: 0.1vw var(--color2Alt4) solid;\n  background-color: var(--color2Alt1);\n  text-align: center;\n  -moz-transition: background-color 0.2s, border-color 0.2s;\n  -o-transition: background-color 0.2s, border-color 0.2s;\n  -webkit-transition: background-color 0.2s, border-color 0.2s;\n  transition: background-color 0.2s, border-color 0.2s;\n}\n.form > .input-wrap > .input > .option label {\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  color: var(--color1);\n  -moz-transition: color 0.2s linear;\n  -o-transition: color 0.2s linear;\n  -webkit-transition: color 0.2s linear;\n  transition: color 0.2s linear;\n}\n.form > .input-wrap > .input > .option.checked {\n  background-color: var(--color3);\n  border-color: transparent;\n}\n.form > .input-wrap > .input > .option.checked label {\n  color: var(--color2);\n}\n.form > .input-wrap > .input > .option:first-child {\n  margin-top: 0;\n}\n.form > .input-wrap > .input select,\n.form > .input-wrap > .input input,\n.form > .input-wrap > .input textarea {\n  display: block;\n  resize: none;\n  width: 100%;\n  border: 0.1vw var(--color2Alt3) solid;\n  border-radius: 1vw;\n  background-color: var(--color2Alt1);\n  padding: 1vw;\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  -moz-transition: background-color 0.2s, border-color 0.2s;\n  -o-transition: background-color 0.2s, border-color 0.2s;\n  -webkit-transition: background-color 0.2s, border-color 0.2s;\n  transition: background-color 0.2s, border-color 0.2s;\n}\n.form > .input-wrap > .input select:focus,\n.form > .input-wrap > .input input:focus,\n.form > .input-wrap > .input textarea:focus {\n  background-color: var(--color2);\n  border-color: var(--color3);\n}\n.form > .input-wrap.disabled {\n  opacity: 0.6;\n  pointer-events: none;\n}\n.form > .input-wrap.hidden {\n  display: none;\n}\n.form > .input-wrap:first-child {\n  margin-top: 0;\n}\n.form:first-child {\n  margin-top: 0;\n}\n.form.disabled {\n  opacity: 0.2;\n  -webkit-filter: blur(1vw);\n  -moz-filter: blur(1vw);\n  -o-filter: blur(1vw);\n  -ms-filter: blur(1vw);\n  filter: blur(1vw);\n}\n/*# sourceMappingURL=attributes.component.css.map */\n"] }]
  }], () => [{ type: LocalAppointmentService }, { type: AppointmentService }, { type: UiService }], { appointment: [{
    type: Input
  }], job: [{
    type: Input,
    args: ["job"]
  }], attributes: [{
    type: Input,
    args: ["attributes"]
  }], componentElm: [{
    type: ViewChild,
    args: ["componentElm"]
  }] });
})();
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && \u0275setClassDebugInfo(AttributesComponent, { className: "AttributesComponent" });
})();

// src/app/appointment/internal-pricing/components/itemized/itemized.component.ts
function ItemizedComponent_Conditional_1_For_17_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "tr")(1, "td", 5)(2, "span", 8);
    \u0275\u0275text(3);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(4, "span", 9);
    \u0275\u0275text(5);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(6, "td", 6)(7, "span", 10);
    \u0275\u0275text(8);
    \u0275\u0275pipe(9, "currency");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(10, "td", 7)(11, "span", 10);
    \u0275\u0275text(12);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(13, "td", 6)(14, "span", 10);
    \u0275\u0275text(15);
    \u0275\u0275pipe(16, "currency");
    \u0275\u0275elementEnd()()();
  }
  if (rf & 2) {
    const item_r1 = ctx.$implicit;
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", item_r1.name, " ");
    \u0275\u0275advance(2);
    \u0275\u0275textInterpolate1(" ", item_r1.description, " ");
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", \u0275\u0275pipeBind2(9, 5, item_r1.price, "USD"), " ");
    \u0275\u0275advance(4);
    \u0275\u0275textInterpolate1(" ", item_r1.quantity, " ");
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", \u0275\u0275pipeBind2(16, 8, item_r1.price * item_r1.quantity, "USD"), " ");
  }
}
function ItemizedComponent_Conditional_1_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 1)(1, "header")(2, "h3");
    \u0275\u0275text(3, "Additional Considerations");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(4, "div", 3)(5, "table")(6, "thead")(7, "th", 5);
    \u0275\u0275text(8, "Line Item");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(9, "th", 6);
    \u0275\u0275text(10, "Price");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(11, "th", 7);
    \u0275\u0275text(12, "Quantity");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(13, "th", 6);
    \u0275\u0275text(14, "Total");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(15, "tbody");
    \u0275\u0275repeaterCreate(16, ItemizedComponent_Conditional_1_For_17_Template, 17, 11, "tr", null, \u0275\u0275repeaterTrackByIdentity);
    \u0275\u0275elementEnd()()()();
  }
  if (rf & 2) {
    const ctx_r1 = \u0275\u0275nextContext();
    \u0275\u0275advance(16);
    \u0275\u0275repeater(ctx_r1.customItems);
  }
}
function ItemizedComponent_For_21_For_1_Conditional_7_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "span", 9);
    \u0275\u0275text(1);
    \u0275\u0275elementEnd();
  }
  if (rf & 2) {
    const item_r3 = \u0275\u0275nextContext().$implicit;
    \u0275\u0275advance();
    \u0275\u0275textInterpolate1(" ", item_r3.description, " ");
  }
}
function ItemizedComponent_For_21_For_1_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "tr")(1, "td", 4)(2, "span", 8);
    \u0275\u0275text(3);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(4, "td", 5)(5, "span", 8);
    \u0275\u0275text(6);
    \u0275\u0275elementEnd();
    \u0275\u0275conditionalCreate(7, ItemizedComponent_For_21_For_1_Conditional_7_Template, 2, 1, "span", 9);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(8, "td", 6)(9, "span", 10);
    \u0275\u0275text(10);
    \u0275\u0275pipe(11, "currency");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(12, "td", 7)(13, "span", 10);
    \u0275\u0275text(14);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(15, "td", 6)(16, "span", 10);
    \u0275\u0275text(17);
    \u0275\u0275pipe(18, "currency");
    \u0275\u0275elementEnd()()();
  }
  if (rf & 2) {
    const item_r3 = ctx.$implicit;
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", item_r3.entity == null ? null : item_r3.entity.name, " ");
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", item_r3.name, " ");
    \u0275\u0275advance();
    \u0275\u0275conditional(item_r3.description.length > 0 ? 7 : -1);
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", \u0275\u0275pipeBind2(11, 6, item_r3.price, "USD"), " ");
    \u0275\u0275advance(4);
    \u0275\u0275textInterpolate1(" ", item_r3.quantity, " ");
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate1(" ", \u0275\u0275pipeBind2(18, 9, item_r3.price * item_r3.quantity, "USD"), " ");
  }
}
function ItemizedComponent_For_21_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275repeaterCreate(0, ItemizedComponent_For_21_For_1_Template, 19, 12, "tr", null, \u0275\u0275repeaterTrackByIdentity);
  }
  if (rf & 2) {
    const detail_r4 = ctx.$implicit;
    \u0275\u0275repeater(detail_r4.lineItems);
  }
}
var _ItemizedComponent = class _ItemizedComponent {
  constructor() {
  }
  // #endregion
  // #region Pricing
  get price() {
    return this.appointment?.customPrice ?? this.appointment?.price;
  }
  // #endregion
  // #region Details
  get details() {
    return this.price?.details ?? [];
  }
  // #endregion
  // #region Additional Considerations
  get customItems() {
    return this.price?.customItems ?? [];
  }
  get hasCustomItems() {
    return this.customItems.length > 0;
  }
  // #endregion
  // #region Bootstrapping
  init() {
  }
  // #endregion
  ngOnInit() {
  }
  ngOnDestroy() {
  }
};
_ItemizedComponent.\u0275fac = function ItemizedComponent_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _ItemizedComponent)();
};
_ItemizedComponent.\u0275cmp = /* @__PURE__ */ \u0275\u0275defineComponent({ type: _ItemizedComponent, selectors: [["itemized-pricing"]], inputs: { appointment: "appointment" }, standalone: false, decls: 22, vars: 1, consts: [["id", "itemizedPricing"], [1, "pricing", "custom"], [1, "pricing", "standard"], [1, "data"], [1, "entity"], [1, "line-item"], [1, "price"], [1, "quantity"], [1, "name"], [1, "description"], [1, "value"]], template: function ItemizedComponent_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "section", 0);
    \u0275\u0275conditionalCreate(1, ItemizedComponent_Conditional_1_Template, 18, 0, "div", 1);
    \u0275\u0275elementStart(2, "div", 2)(3, "header")(4, "h3");
    \u0275\u0275text(5, "Standard Pricing");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(6, "div", 3)(7, "table")(8, "thead")(9, "th", 4);
    \u0275\u0275text(10, "Entity / Fixture");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(11, "th", 5);
    \u0275\u0275text(12, "Line Item");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(13, "th", 6);
    \u0275\u0275text(14, "Price");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(15, "th", 7);
    \u0275\u0275text(16, "Quantity");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(17, "th", 6);
    \u0275\u0275text(18, "Total");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(19, "tbody");
    \u0275\u0275repeaterCreate(20, ItemizedComponent_For_21_Template, 2, 0, null, null, \u0275\u0275repeaterTrackByIdentity);
    \u0275\u0275elementEnd()()()()();
  }
  if (rf & 2) {
    \u0275\u0275advance();
    \u0275\u0275conditional(ctx.hasCustomItems ? 1 : -1);
    \u0275\u0275advance(19);
    \u0275\u0275repeater(ctx.details);
  }
}, dependencies: [CurrencyPipe], styles: ["\n\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%] {\n  margin-top: 1vw;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  font-size: 1.3vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%] {\n  border: 0.1vw var(--color2Alt3) solid;\n  margin-top: 0.75vw;\n  margin-left: 1vw;\n  border-radius: 0.5vw;\n  overflow: hidden;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%] {\n  table-layout: fixed;\n  width: 100%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > thead[_ngcontent-%COMP%]   th[_ngcontent-%COMP%] {\n  background-color: var(--color2Alt2);\n  padding: 0.5vw 1vw;\n  font-size: 1.1vw;\n  text-align: left;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > tbody[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]   td[_ngcontent-%COMP%] {\n  padding: 0.5vw 1vw;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > tbody[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]    > .name[_ngcontent-%COMP%] {\n  font-size: 1.1vw;\n  color: var(--color1);\n  font-weight: var(--stdweight);\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > tbody[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]    > .description[_ngcontent-%COMP%] {\n  margin-top: 0.25vw;\n  font-size: 1vw;\n  color: var(--color1);\n  font-weight: var(--mdweight);\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > tbody[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]   td[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]    > tbody[_ngcontent-%COMP%]   tr[_ngcontent-%COMP%]:nth-of-type(even) {\n  background-color: var(--color2Alt1);\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.line-item[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.line-item[_ngcontent-%COMP%] {\n  width: 55%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.price[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.price[_ngcontent-%COMP%] {\n  width: 17.5%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.quantity[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.custom[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.quantity[_ngcontent-%COMP%] {\n  width: 10%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.entity[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.entity[_ngcontent-%COMP%] {\n  width: 20%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.line-item[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.line-item[_ngcontent-%COMP%] {\n  width: 35%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.price[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.price[_ngcontent-%COMP%] {\n  width: 17.5%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   th.quantity[_ngcontent-%COMP%], \n#itemizedPricing[_ngcontent-%COMP%]    > .pricing.standard[_ngcontent-%COMP%]    > .data[_ngcontent-%COMP%]    > table[_ngcontent-%COMP%]   td.quantity[_ngcontent-%COMP%] {\n  width: 10%;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .pricing[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n/*# sourceMappingURL=itemized.component.css.map */"] });
var ItemizedComponent = _ItemizedComponent;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(ItemizedComponent, [{
    type: Component,
    args: [{ standalone: false, selector: "itemized-pricing", template: `<section id="itemizedPricing">
  @if (hasCustomItems) {
    <div class="pricing custom">
      <header>
        <h3>Additional Considerations</h3>
      </header>
      <div class="data">
        <table>
          <thead>
            <th class="line-item">Line Item</th>
            <th class="price">Price</th>
            <th class="quantity">Quantity</th>
            <th class="price">Total</th>
          </thead>
          <tbody>
            @for (item of customItems; track item) {
              <tr>
                <td class="line-item">
                  <span class="name">
                    {{item.name}}
                  </span>
                  <span class="description">
                    {{item.description}}
                  </span>
                </td>
                <td class="price">
                  <span class="value">
                    {{item.price | currency:'USD'}}
                  </span>
                </td>
                <td class="quantity">
                  <span class="value">
                    {{item.quantity}}
                  </span>
                </td>
                <td class="price">
                  <span class="value">
                    {{(item.price * item.quantity) | currency:'USD'}}
                  </span>
                </td>
              </tr>
            }
          </tbody>
        </table>
      </div>
    </div>
  }
  <div class="pricing standard">
    <header>
      <h3>Standard Pricing</h3>
    </header>
    <div class="data">
      <table>
        <thead>
          <th class="entity">Entity / Fixture</th>
          <th class="line-item">Line Item</th>
          <th class="price">Price</th>
          <th class="quantity">Quantity</th>
          <th class="price">Total</th>
        </thead>
        <tbody>
          @for (detail of details; track detail) {
            @for (item of detail.lineItems; track item) {
              <tr>
                <td class="entity">
                  <span class="name">
                    {{item.entity?.name}}
                  </span>
                </td>
                <td class="line-item">
                  <span class="name">
                    {{item.name}}
                  </span>
                  @if (item.description.length > 0) {
                    <span class="description">
                      {{item.description}}
                    </span>
                  }
                </td>
                <td class="price">
                  <span class="value">
                    {{item.price | currency:'USD'}}
                  </span>
                </td>
                <td class="quantity">
                  <span class="value">
                    {{item.quantity}}
                  </span>
                </td>
                <td class="price">
                  <span class="value">
                    {{(item.price * item.quantity) | currency:'USD'}}
                  </span>
                </td>
              </tr>
            }
          }
        </tbody>
      </table>
    </div>
  </div>
</section>`, styles: ["/* src/app/appointment/internal-pricing/components/itemized/itemized.component.scss */\n#itemizedPricing > .pricing {\n  margin-top: 1vw;\n}\n#itemizedPricing > .pricing > header h3 {\n  font-size: 1.3vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPricing > .pricing > .data {\n  border: 0.1vw var(--color2Alt3) solid;\n  margin-top: 0.75vw;\n  margin-left: 1vw;\n  border-radius: 0.5vw;\n  overflow: hidden;\n}\n#itemizedPricing > .pricing > .data > table {\n  table-layout: fixed;\n  width: 100%;\n}\n#itemizedPricing > .pricing > .data > table > thead th {\n  background-color: var(--color2Alt2);\n  padding: 0.5vw 1vw;\n  font-size: 1.1vw;\n  text-align: left;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#itemizedPricing > .pricing > .data > table > tbody tr td {\n  padding: 0.5vw 1vw;\n}\n#itemizedPricing > .pricing > .data > table > tbody tr td > .name {\n  font-size: 1.1vw;\n  color: var(--color1);\n  font-weight: var(--stdweight);\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#itemizedPricing > .pricing > .data > table > tbody tr td > .description {\n  margin-top: 0.25vw;\n  font-size: 1vw;\n  color: var(--color1);\n  font-weight: var(--mdweight);\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#itemizedPricing > .pricing > .data > table > tbody tr td > .value {\n  font-size: 1.2vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPricing > .pricing > .data > table > tbody tr:nth-of-type(even) {\n  background-color: var(--color2Alt1);\n}\n#itemizedPricing > .pricing.custom > .data > table th.line-item,\n#itemizedPricing > .pricing.custom > .data > table td.line-item {\n  width: 55%;\n}\n#itemizedPricing > .pricing.custom > .data > table th.price,\n#itemizedPricing > .pricing.custom > .data > table td.price {\n  width: 17.5%;\n}\n#itemizedPricing > .pricing.custom > .data > table th.quantity,\n#itemizedPricing > .pricing.custom > .data > table td.quantity {\n  width: 10%;\n}\n#itemizedPricing > .pricing.standard > .data > table th.entity,\n#itemizedPricing > .pricing.standard > .data > table td.entity {\n  width: 20%;\n}\n#itemizedPricing > .pricing.standard > .data > table th.line-item,\n#itemizedPricing > .pricing.standard > .data > table td.line-item {\n  width: 35%;\n}\n#itemizedPricing > .pricing.standard > .data > table th.price,\n#itemizedPricing > .pricing.standard > .data > table td.price {\n  width: 17.5%;\n}\n#itemizedPricing > .pricing.standard > .data > table th.quantity,\n#itemizedPricing > .pricing.standard > .data > table td.quantity {\n  width: 10%;\n}\n#itemizedPricing > .pricing:first-child {\n  margin-top: 0;\n}\n/*# sourceMappingURL=itemized.component.css.map */\n"] }]
  }], () => [], { appointment: [{
    type: Input,
    args: ["appointment"]
  }] });
})();
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && \u0275setClassDebugInfo(ItemizedComponent, { className: "ItemizedComponent" });
})();

// src/app/appointment/internal-pricing/components/internal/internal.component.ts
var _c02 = ["pin1Elm"];
var _c1 = ["pin2Elm"];
var _c2 = ["pin3Elm"];
var _c3 = ["pin4Elm"];
var _c4 = ["componentElm"];
function InternalPricingComponent_Conditional_7_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 8)(1, "h4");
    \u0275\u0275text(2, "Missing Prices");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(3, "p");
    \u0275\u0275text(4, " Please add prices to each additional consideration. ");
    \u0275\u0275elementEnd()();
  }
}
function InternalPricingComponent_Conditional_8_For_1_Template(rf, ctx) {
  if (rf & 1) {
    const _r2 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "div", 41)(1, "div", 42)(2, "h5");
    \u0275\u0275text(3);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(4, "p");
    \u0275\u0275text(5);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(6, "div", 43)(7, "label");
    \u0275\u0275text(8, " Custom Price ");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(9, "div", 24)(10, "div", 44);
    \u0275\u0275element(11, "i", 21);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(12, "currency-input", 45);
    \u0275\u0275listener("currencyOutput", function InternalPricingComponent_Conditional_8_For_1_Template_currency_input_currencyOutput_12_listener($event) {
      const consideration_r3 = \u0275\u0275restoreView(_r2).$implicit;
      const ctx_r3 = \u0275\u0275nextContext(2);
      return \u0275\u0275resetView(ctx_r3.updateConsiderationPrice(consideration_r3, $event));
    });
    \u0275\u0275elementEnd()()()();
  }
  if (rf & 2) {
    const consideration_r3 = ctx.$implicit;
    const ctx_r3 = \u0275\u0275nextContext(2);
    \u0275\u0275classProp("warning", consideration_r3.price == 0);
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate2(" (", consideration_r3.quantity, ") ", consideration_r3.name, " ");
    \u0275\u0275advance(2);
    \u0275\u0275textInterpolate1(" ", consideration_r3.description, " ");
    \u0275\u0275advance(7);
    \u0275\u0275property("enabled", ctx_r3.canModifyAppointment)("currencyInput", consideration_r3.price);
  }
}
function InternalPricingComponent_Conditional_8_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275repeaterCreate(0, InternalPricingComponent_Conditional_8_For_1_Template, 13, 7, "div", 40, \u0275\u0275repeaterTrackByIdentity);
  }
  if (rf & 2) {
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275repeater(ctx_r3.considerations);
  }
}
function InternalPricingComponent_Conditional_9_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "p");
    \u0275\u0275text(1, " No additional considerations. ");
    \u0275\u0275elementEnd();
  }
}
function InternalPricingComponent_Conditional_10_Conditional_5_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 8)(1, "h4");
    \u0275\u0275text(2, "Missing Prices");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(3, "p");
    \u0275\u0275text(4, " Please add prices to each additional custom item. ");
    \u0275\u0275elementEnd()();
  }
}
function InternalPricingComponent_Conditional_10_Conditional_6_For_1_Template(rf, ctx) {
  if (rf & 1) {
    const _r5 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "div", 47)(1, "div", 42)(2, "h6");
    \u0275\u0275text(3);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(4, "h5");
    \u0275\u0275text(5);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(6, "div", 43)(7, "label");
    \u0275\u0275text(8, " Custom Price ");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(9, "div", 24)(10, "div", 44);
    \u0275\u0275element(11, "i", 21);
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(12, "currency-input", 45);
    \u0275\u0275listener("currencyOutput", function InternalPricingComponent_Conditional_10_Conditional_6_For_1_Template_currency_input_currencyOutput_12_listener($event) {
      const sku_r6 = \u0275\u0275restoreView(_r5).$implicit;
      const ctx_r3 = \u0275\u0275nextContext(3);
      return \u0275\u0275resetView(ctx_r3.updateCustomSkuPrice(sku_r6, $event));
    });
    \u0275\u0275elementEnd()()()();
  }
  if (rf & 2) {
    const sku_r6 = ctx.$implicit;
    const ctx_r3 = \u0275\u0275nextContext(3);
    \u0275\u0275classProp("warning", sku_r6.price == 0);
    \u0275\u0275advance(3);
    \u0275\u0275textInterpolate2("", sku_r6.entity == null ? null : sku_r6.entity.name, " ", sku_r6.entity == null ? null : sku_r6.entity.number);
    \u0275\u0275advance(2);
    \u0275\u0275textInterpolate2(" (", sku_r6.quantity, ") ", sku_r6.name, " ");
    \u0275\u0275advance(7);
    \u0275\u0275property("enabled", ctx_r3.canModifyAppointment)("currencyInput", sku_r6.price);
  }
}
function InternalPricingComponent_Conditional_10_Conditional_6_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275repeaterCreate(0, InternalPricingComponent_Conditional_10_Conditional_6_For_1_Template, 13, 8, "div", 46, \u0275\u0275repeaterTrackByIdentity);
  }
  if (rf & 2) {
    const ctx_r3 = \u0275\u0275nextContext(2);
    \u0275\u0275repeater(ctx_r3.customSkus);
  }
}
function InternalPricingComponent_Conditional_10_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "div", 9)(1, "header")(2, "h2");
    \u0275\u0275text(3, "Custom Line Items");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(4, "div", 7);
    \u0275\u0275conditionalCreate(5, InternalPricingComponent_Conditional_10_Conditional_5_Template, 5, 0, "div", 8);
    \u0275\u0275conditionalCreate(6, InternalPricingComponent_Conditional_10_Conditional_6_Template, 2, 0);
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const ctx_r3 = \u0275\u0275nextContext();
    \u0275\u0275advance(5);
    \u0275\u0275conditional(!ctx_r3.customSkusValid ? 5 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(ctx_r3.hasCustomSkus ? 6 : -1);
  }
}
var _InternalPricingComponent = class _InternalPricingComponent {
  constructor(localAppointmentService, appointmentService, appointmentPricingService, uiService) {
    this.localAppointmentService = localAppointmentService;
    this.appointmentService = appointmentService;
    this.appointmentPricingService = appointmentPricingService;
    this.uiService = uiService;
    this.pin1 = "";
    this.pin2 = "";
    this.pin3 = "";
    this.pin4 = "";
    this.showProtection = true;
    this.customSkus = [];
    this.viewingItemizedPrices = false;
    this.parPrice = 0;
    this.parPrice$ = new Subject();
    this.ablPrice = 0;
    this.ablPrice$ = new Subject();
    this.initialPromoPrice = 0;
    this.initialPromoPrice$ = new Subject();
    this.targetPrice = 0;
    this.targetPrice$ = new Subject();
    this.targetPromoPrice = 0;
    this.targetPromoPrice$ = new Subject();
    this.finalPrice = 0;
    this.finalPrice$ = new Subject();
  }
  get canModifyAppointment() {
    return this.localAppointmentService.canModifyAppointment;
  }
  watchChanges() {
    if (this.appointment != null) {
      this.changeSubscription = this.appointment.priceChanged$.subscribe({
        next: () => {
          this.initPrices();
        }
      });
    }
  }
  get validPin() {
    return this.pin1 == "1" && this.pin2 == "1" && this.pin3 == "1" && this.pin4 == "1";
  }
  get canValidateProtection() {
    return this.pin1.length == 1 && this.pin2.length == 1 && this.pin3.length == 1 && this.pin4.length == 1;
  }
  updatePin(input, e) {
    switch (input) {
      case 1:
        {
          if (e.key === "Backspace") {
          } else {
            const pin2Elm = this.pin2Elm?.nativeElement;
            this.pin2 = "";
            pin2Elm?.focus();
          }
        }
        break;
      case 2:
        {
          if (e.key === "Backspace") {
            const pin1Elm = this.pin1Elm?.nativeElement;
            pin1Elm?.focus();
          } else {
            const pin3Elm = this.pin3Elm?.nativeElement;
            this.pin3 = "";
            pin3Elm?.focus();
          }
        }
        break;
      case 3:
        {
          if (e.key === "Backspace") {
            const pin2Elm = this.pin2Elm?.nativeElement;
            pin2Elm?.focus();
          } else {
            const pin4Elm = this.pin4Elm?.nativeElement;
            this.pin4 = "";
            pin4Elm?.focus();
          }
        }
        break;
      case 4:
        {
          if (e.key === "Backspace") {
            const pin3Elm = this.pin3Elm?.nativeElement;
            pin3Elm?.focus();
          }
        }
        break;
    }
  }
  validateProtection() {
    if (this.validPin) {
      this.showProtection = false;
    }
  }
  // #endregion
  // #region Considerations
  get considerations() {
    return this.appointment?.price?.customItems ?? [];
  }
  get hasAdditionalConsiderations() {
    return this.considerations.length > 0;
  }
  get additionalConsiderationsValid() {
    const invalidConsideration = this.considerations.find((x) => x.price == 0 || x.price == null);
    return invalidConsideration == null;
  }
  updateConsiderationPrice(consideration, price) {
    if (price.amount != null) {
      consideration.price = price.amount;
      this.appointment?.changed$.next();
      this.initPrices();
    }
  }
  get hasCustomSkus() {
    return this.customSkus.length > 0;
  }
  get customSkusValid() {
    const invalidSku = this.customSkus.find((x) => x.price == 0 || x.price == null);
    return invalidSku == null;
  }
  updateCustomSkuPrice(customSku, price) {
    if (price.amount != null) {
      customSku.price = price.amount;
      this.appointment?.price?.details.forEach((detail) => {
        detail.lineItems.forEach((lineItem) => {
          if (lineItem.skuId == customSku.skuId && lineItem.entityId == customSku.entityId && price.amount != null) {
            lineItem.price = price.amount;
          }
        });
      });
      this.appointment?.changed$.next();
    }
  }
  initCustomSkus() {
    const customSkus = [];
    if (this.appointment?.price != null) {
      this.appointment.price.details.forEach((detail) => {
        detail.lineItems.forEach((lineItem) => {
          if (lineItem.skuCategory == "CUSTOM") {
            customSkus.push(lineItem);
          }
        });
      });
    }
    this.customSkus = customSkus;
  }
  // #endregion
  // #region Attributes
  get attributes() {
    return this.appointment?.job?.attributes ?? [];
  }
  viewItemizedPrices() {
    this.viewingItemizedPrices = true;
  }
  stopViewingItemizedPrices() {
    this.viewingItemizedPrices = false;
  }
  get warnOnPrice() {
    return this.finalPrice < this.ablPrice;
  }
  updateFinalPrice(result) {
    if (result.amount != null) {
      window.clearTimeout(this.finalPriceDebounce);
      const resultAmount = result.amount;
      this.finalPriceDebounce = window.setTimeout(() => {
        this.finalPrice = safePrice(resultAmount);
        if (this.appointment?.price != null) {
          this.appointment.price.finalPrice = this.finalPrice;
          this.appointment?.changed$.next();
        }
      }, 500);
    }
  }
  resetCustomPrice() {
    if (this.appointment != null) {
      this.appointmentService.resetCustomPrice(this.appointment);
    }
  }
  initPrices() {
    if (this.appointment?.price != null) {
      this.parPrice = this.appointment.price.parPrice;
      this.parPrice$.next(this.parPrice);
      this.ablPrice = this.appointment.price.ablPrice;
      this.ablPrice$.next(this.ablPrice);
      this.targetPrice = this.appointment.price.targetPrice;
      this.targetPrice$.next(this.targetPrice);
      if (this.finalPrice == 0 || this.targetPromoPrice != this.appointment.price.targetPromoPrice) {
        this.finalPrice = this.appointment.price.finalPrice;
        this.finalPrice$.next(this.finalPrice);
      }
      this.targetPromoPrice = this.appointment.price.targetPromoPrice;
      this.targetPromoPrice$.next(this.targetPromoPrice);
      this.initialPromoPrice = this.targetPrice - this.targetPrice * 0.2;
      this.initialPromoPrice$.next(this.initialPromoPrice);
    }
  }
  // #endregion
  // #region Navigation
  get canDisplayCustomerPrice() {
    return this.appointment != null && this.appointment.job != null && this.appointment.job.valid && this.additionalConsiderationsValid && this.customSkusValid;
  }
  goToExternalPricing() {
    if (this.finalPrice != null) {
      if (this.canModifyAppointment && this.appointment?.customPrice != null && this.appointment.customPrice.finalPrice > 0) {
        this.uiService.prompt("Lock In Your Price?", "You currently have a negotiated price with the customer. Do you want to overwrite it with this new price?", "Yes, use the new price", "No, keep the old price").subscribe({
          next: (confirmed) => {
            if (confirmed && this.appointment?.price?.finalPrice != null) {
              this.resetCustomPrice();
            } else if (this.appointment?.customPrice != null && this.appointment.price != null) {
              this.appointment.customPrice.details = structuredClone(this.appointment.price?.details);
              this.appointment.customPrice.customItems = structuredClone(this.appointment.price.customItems);
            }
            this.localAppointmentService.routeService.viewRoute(AppointmentRouteType.Negotiation, RouteLoadDirection.Forward, true, RouteLoadDirection.Reverse, ["adjustedexternal"]);
          }
        });
      } else {
        this.resetCustomPrice();
        this.localAppointmentService.routeService.viewRoute(AppointmentRouteType.Negotiation, RouteLoadDirection.Forward, true, RouteLoadDirection.Reverse, ["adjustedexternal"]);
      }
    }
  }
  killEvent(e) {
    e.stopPropagation();
  }
  init() {
    this.initPrices();
    this.initCustomSkus();
    this.watchChanges();
  }
  // #endregion
  ngAfterViewInit() {
    setTimeout(() => {
      this.init();
      setTimeout(() => {
        if (this.route != null) {
          this.route.initialized.next();
        }
      }, 32);
    }, 16);
  }
  ngOnDestroy() {
    this.changeSubscription?.unsubscribe();
  }
};
_InternalPricingComponent.\u0275fac = function InternalPricingComponent_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _InternalPricingComponent)(\u0275\u0275directiveInject(LocalAppointmentService), \u0275\u0275directiveInject(AppointmentService), \u0275\u0275directiveInject(AppointmentPricingService), \u0275\u0275directiveInject(UiService));
};
_InternalPricingComponent.\u0275cmp = /* @__PURE__ */ \u0275\u0275defineComponent({ type: _InternalPricingComponent, selectors: [["internal"]], viewQuery: function InternalPricingComponent_Query(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275viewQuery(_c02, 5);
    \u0275\u0275viewQuery(_c1, 5);
    \u0275\u0275viewQuery(_c2, 5);
    \u0275\u0275viewQuery(_c3, 5);
    \u0275\u0275viewQuery(_c4, 5);
  }
  if (rf & 2) {
    let _t;
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.pin1Elm = _t.first);
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.pin2Elm = _t.first);
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.pin3Elm = _t.first);
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.pin4Elm = _t.first);
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.componentElm = _t.first);
  }
}, inputs: { appointment: "appointment", route: "route" }, standalone: false, decls: 97, vars: 35, consts: [["pin1Elm", ""], ["pin2Elm", ""], ["pin3Elm", ""], ["pin4Elm", ""], ["id", "internalPricing"], [1, "primary"], [1, "considerations", "tile"], [1, "content"], [1, "message"], [1, "custom-skus", "tile"], [1, "attributes", "tile"], [3, "appointment", "job", "attributes"], [1, "secondary"], [1, "auto-prices"], [1, "auto-price", "retail"], [1, "value"], [3, "currencyInput", "update", "enabled"], [1, "auto-price", "promotional"], [1, "auto-price", "par"], [1, "auto-price", "abl"], [1, "price", "tile"], [1, "fa-solid", "fa-pencil"], [1, "controls"], [1, "control", 3, "click"], [1, "input"], [3, "currencyOutput", "enabled", "currencyInput", "update"], ["id", "mainNav"], [1, "island"], [1, "control", "success", 3, "click", "disabled"], [1, "fa-solid", "fa-arrow-right-long"], ["id", "protectedOverlay"], [1, "bg"], [1, "pin"], ["type", "tel", "maxlength", "1", 3, "ngModelChange", "keyup", "ngModel"], [1, "control", 3, "click", "disabled"], [1, "fa-solid", "fa-lock-keyhole"], ["id", "itemizedPrices"], [1, "modal"], [1, "fa-solid", "fa-xmark"], [3, "appointment"], [1, "consideration", 3, "warning"], [1, "consideration"], [1, "meta"], [1, "price"], [1, "icon"], [3, "currencyOutput", "enabled", "currencyInput"], [1, "sku", 3, "warning"], [1, "sku"]], template: function InternalPricingComponent_Template(rf, ctx) {
  if (rf & 1) {
    const _r1 = \u0275\u0275getCurrentView();
    \u0275\u0275elementStart(0, "section", 4)(1, "div", 5)(2, "div", 6)(3, "header")(4, "h2");
    \u0275\u0275text(5, "Additional Considerations");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(6, "div", 7);
    \u0275\u0275conditionalCreate(7, InternalPricingComponent_Conditional_7_Template, 5, 0, "div", 8);
    \u0275\u0275conditionalCreate(8, InternalPricingComponent_Conditional_8_Template, 2, 0);
    \u0275\u0275conditionalCreate(9, InternalPricingComponent_Conditional_9_Template, 2, 0, "p");
    \u0275\u0275elementEnd()();
    \u0275\u0275conditionalCreate(10, InternalPricingComponent_Conditional_10_Template, 7, 2, "div", 9);
    \u0275\u0275elementStart(11, "div", 10)(12, "header")(13, "h2");
    \u0275\u0275text(14, "Job Attributes");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(15, "div", 7);
    \u0275\u0275element(16, "attributes", 11);
    \u0275\u0275elementEnd()()();
    \u0275\u0275elementStart(17, "div", 12)(18, "div", 13)(19, "div", 14)(20, "header")(21, "h3");
    \u0275\u0275text(22, "Target Price");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(23, "div", 15);
    \u0275\u0275element(24, "currency-input", 16);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(25, "div", 17)(26, "header")(27, "h3");
    \u0275\u0275text(28, "Including 20%");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(29, "div", 15);
    \u0275\u0275element(30, "currency-input", 16);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(31, "div", 18)(32, "header")(33, "h3");
    \u0275\u0275text(34, "PAR");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(35, "div", 15);
    \u0275\u0275element(36, "currency-input", 16);
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(37, "div", 19)(38, "header")(39, "h3");
    \u0275\u0275text(40, "ABL");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(41, "div", 15);
    \u0275\u0275element(42, "currency-input", 16);
    \u0275\u0275elementEnd()()();
    \u0275\u0275elementStart(43, "div", 20)(44, "header")(45, "h2");
    \u0275\u0275element(46, "i", 21);
    \u0275\u0275text(47, " Your Price to the Customer After 20% Discount ");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(48, "div", 22)(49, "button", 23);
    \u0275\u0275listener("click", function InternalPricingComponent_Template_button_click_49_listener() {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.viewItemizedPrices());
    });
    \u0275\u0275elementStart(50, "label");
    \u0275\u0275text(51, "View Itemized Pricing");
    \u0275\u0275elementEnd()()()();
    \u0275\u0275elementStart(52, "div", 7)(53, "div", 24)(54, "currency-input", 25);
    \u0275\u0275listener("currencyOutput", function InternalPricingComponent_Template_currency_input_currencyOutput_54_listener($event) {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.updateFinalPrice($event));
    });
    \u0275\u0275elementEnd()()()()()();
    \u0275\u0275elementStart(55, "nav", 26)(56, "div", 27)(57, "div", 22)(58, "button", 28);
    \u0275\u0275listener("click", function InternalPricingComponent_Template_button_click_58_listener() {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.goToExternalPricing());
    });
    \u0275\u0275element(59, "i", 29);
    \u0275\u0275elementStart(60, "label");
    \u0275\u0275text(61, "Display Price to Customer");
    \u0275\u0275elementEnd()()()()();
    \u0275\u0275elementStart(62, "div", 30);
    \u0275\u0275element(63, "div", 31);
    \u0275\u0275elementStart(64, "div", 7)(65, "header")(66, "h2");
    \u0275\u0275text(67, "Please enter your PIN to continue.");
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(68, "div", 32)(69, "div", 24)(70, "input", 33, 0);
    \u0275\u0275twoWayListener("ngModelChange", function InternalPricingComponent_Template_input_ngModelChange_70_listener($event) {
      \u0275\u0275restoreView(_r1);
      \u0275\u0275twoWayBindingSet(ctx.pin1, $event) || (ctx.pin1 = $event);
      return \u0275\u0275resetView($event);
    });
    \u0275\u0275listener("keyup", function InternalPricingComponent_Template_input_keyup_70_listener($event) {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.updatePin(1, $event));
    });
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(72, "div", 24)(73, "input", 33, 1);
    \u0275\u0275twoWayListener("ngModelChange", function InternalPricingComponent_Template_input_ngModelChange_73_listener($event) {
      \u0275\u0275restoreView(_r1);
      \u0275\u0275twoWayBindingSet(ctx.pin2, $event) || (ctx.pin2 = $event);
      return \u0275\u0275resetView($event);
    });
    \u0275\u0275listener("keyup", function InternalPricingComponent_Template_input_keyup_73_listener($event) {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.updatePin(2, $event));
    });
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(75, "div", 24)(76, "input", 33, 2);
    \u0275\u0275twoWayListener("ngModelChange", function InternalPricingComponent_Template_input_ngModelChange_76_listener($event) {
      \u0275\u0275restoreView(_r1);
      \u0275\u0275twoWayBindingSet(ctx.pin3, $event) || (ctx.pin3 = $event);
      return \u0275\u0275resetView($event);
    });
    \u0275\u0275listener("keyup", function InternalPricingComponent_Template_input_keyup_76_listener($event) {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.updatePin(3, $event));
    });
    \u0275\u0275elementEnd()();
    \u0275\u0275elementStart(78, "div", 24)(79, "input", 33, 3);
    \u0275\u0275twoWayListener("ngModelChange", function InternalPricingComponent_Template_input_ngModelChange_79_listener($event) {
      \u0275\u0275restoreView(_r1);
      \u0275\u0275twoWayBindingSet(ctx.pin4, $event) || (ctx.pin4 = $event);
      return \u0275\u0275resetView($event);
    });
    \u0275\u0275listener("keyup", function InternalPricingComponent_Template_input_keyup_79_listener($event) {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.updatePin(4, $event));
    });
    \u0275\u0275elementEnd()()();
    \u0275\u0275elementStart(81, "div", 22)(82, "button", 34);
    \u0275\u0275listener("click", function InternalPricingComponent_Template_button_click_82_listener() {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.validateProtection());
    });
    \u0275\u0275element(83, "i", 35);
    \u0275\u0275elementStart(84, "label");
    \u0275\u0275text(85, "Verify Access");
    \u0275\u0275elementEnd()()()()();
    \u0275\u0275elementStart(86, "aside", 36);
    \u0275\u0275element(87, "div", 31);
    \u0275\u0275elementStart(88, "div", 37)(89, "header")(90, "h2");
    \u0275\u0275text(91, "Itemized Prices");
    \u0275\u0275elementEnd();
    \u0275\u0275elementStart(92, "div", 22)(93, "button", 23);
    \u0275\u0275listener("click", function InternalPricingComponent_Template_button_click_93_listener() {
      \u0275\u0275restoreView(_r1);
      return \u0275\u0275resetView(ctx.stopViewingItemizedPrices());
    });
    \u0275\u0275element(94, "i", 38);
    \u0275\u0275elementEnd()()();
    \u0275\u0275elementStart(95, "div", 7);
    \u0275\u0275element(96, "itemized-pricing", 39);
    \u0275\u0275elementEnd()()();
  }
  if (rf & 2) {
    \u0275\u0275advance(7);
    \u0275\u0275conditional(!ctx.additionalConsiderationsValid ? 7 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(ctx.hasAdditionalConsiderations ? 8 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(!ctx.hasAdditionalConsiderations ? 9 : -1);
    \u0275\u0275advance();
    \u0275\u0275conditional(ctx.hasCustomSkus ? 10 : -1);
    \u0275\u0275advance(6);
    \u0275\u0275property("appointment", ctx.appointment)("job", ctx.appointment == null ? null : ctx.appointment.job)("attributes", ctx.attributes);
    \u0275\u0275advance(8);
    \u0275\u0275property("currencyInput", ctx.targetPrice)("update", ctx.targetPrice$)("enabled", false);
    \u0275\u0275advance(6);
    \u0275\u0275property("currencyInput", ctx.initialPromoPrice)("update", ctx.initialPromoPrice$)("enabled", false);
    \u0275\u0275advance(6);
    \u0275\u0275property("currencyInput", ctx.parPrice)("update", ctx.parPrice$)("enabled", false);
    \u0275\u0275advance(6);
    \u0275\u0275property("currencyInput", ctx.ablPrice)("update", ctx.ablPrice$)("enabled", false);
    \u0275\u0275advance();
    \u0275\u0275classProp("warning", ctx.warnOnPrice);
    \u0275\u0275advance(11);
    \u0275\u0275property("enabled", ctx.canModifyAppointment)("currencyInput", ctx.finalPrice)("update", ctx.finalPrice$);
    \u0275\u0275advance(4);
    \u0275\u0275property("disabled", !ctx.canDisplayCustomerPrice);
    \u0275\u0275advance(4);
    \u0275\u0275classProp("active", ctx.showProtection);
    \u0275\u0275advance(8);
    \u0275\u0275twoWayProperty("ngModel", ctx.pin1);
    \u0275\u0275advance(3);
    \u0275\u0275twoWayProperty("ngModel", ctx.pin2);
    \u0275\u0275advance(3);
    \u0275\u0275twoWayProperty("ngModel", ctx.pin3);
    \u0275\u0275advance(3);
    \u0275\u0275twoWayProperty("ngModel", ctx.pin4);
    \u0275\u0275advance(3);
    \u0275\u0275property("disabled", !ctx.canValidateProtection);
    \u0275\u0275advance(4);
    \u0275\u0275classProp("active", ctx.viewingItemizedPrices);
    \u0275\u0275advance(10);
    \u0275\u0275property("appointment", ctx.appointment);
  }
}, dependencies: [CurrencyInputComponent, DefaultValueAccessor, NgControlStatus, MaxLengthValidator, NgModel, AttributesComponent, ItemizedComponent], styles: ["\n\n.tooltip[_ngcontent-%COMP%] {\n  position: absolute;\n  z-index: 11;\n  width: 24vw;\n  background-color: var(--color5Alt3);\n  border: 0.5vw var(--color5Alt4) solid;\n  box-shadow:\n    0 0 0.1vw var(--color2),\n    0 0 0.2vw var(--color2),\n    0 0 1vw var(--color2),\n    0 0 3vw var(--color2),\n    0 0 5vw var(--color2),\n    0 0 7vw var(--color2);\n  border-radius: 0.5vw;\n  padding: 1vw;\n  opacity: 0;\n  pointer-events: none;\n  -moz-transition: opacity 0.1s linear;\n  -o-transition: opacity 0.1s linear;\n  -webkit-transition: opacity 0.1s linear;\n  transition: opacity 0.1s linear;\n}\n.tooltip[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0.5vw;\n  right: 0.5vw;\n  cursor: pointer;\n}\n.tooltip[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  font-size: 1.4vw;\n  color: var(--color2);\n}\n.tooltip[_ngcontent-%COMP%]    > h3[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  font-style: italic;\n}\n.tooltip[_ngcontent-%COMP%]    > p[_ngcontent-%COMP%] {\n  margin-top: 0.5vw;\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  color: var(--color2Alt1);\n  line-height: 1.2;\n}\n.tooltip[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%] {\n  margin-top: 0.5vw;\n}\n.tooltip[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  cursor: pointer;\n  display: block;\n}\n.tooltip[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color2);\n  font-weight: var(--stronger);\n}\n.tooltip.active[_ngcontent-%COMP%] {\n  opacity: 1;\n}\n/*# sourceMappingURL=tooltips.component.css.map */", "\n\n#internalPricing[_ngcontent-%COMP%] {\n  position: absolute;\n  top: calc(var(--systemOffset-top) + 6vw);\n  left: 2vw;\n  right: 2vw;\n  bottom: 6vw;\n  display: flex;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%] {\n  border: 0.1vw var(--color2Alt2) solid;\n  border-radius: 1vw;\n  background-color: var(--color2);\n  overflow-x: hidden;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  padding: 0.75vw 1vw;\n  background-color: var(--color2Alt3);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  position: sticky;\n  top: 0;\n  z-index: 1;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n  color: var(--color1);\n  font-weight: var(--stronger);\n  line-height: 1;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: center;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: center;\n  cursor: pointer;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]   i[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color3);\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]   label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n  margin-left: 0.5vw;\n}\n#internalPricing[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   p[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%] {\n  width: 35%;\n  display: flex;\n  flex-direction: column;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  padding: 0.5vw 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]   .tile[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  font-size: 1.3vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%] {\n  margin-top: 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: rgba(var(--color4Alt3-raw), 0.8);\n  -webkit-backdrop-filter: blur(0.2vw);\n  -moz-backdrop-filter: blur(0.2vw);\n  -o-backdrop-filter: blur(0.2vw);\n  -ms-backdrop-filter: blur(0.2vw);\n  backdrop-filter: blur(0.2vw);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  padding: 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%] {\n  background-color: var(--error);\n  border: 0.3vw var(--errorAlt3) solid;\n  border-radius: 1vw;\n  padding: 0.5vw 1vw;\n  pointer-events: none;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   h4[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   h4[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  font-weight: var(--stronger);\n  color: var(--color2);\n  text-align: center;\n  text-transform: uppercase;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   p[_ngcontent-%COMP%] {\n  margin-top: 0.5vw;\n  color: var(--color2);\n  font-size: 1.2vw;\n  font-weight: var(--strong);\n  text-align: center;\n  line-height: 1.2;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%] {\n  border-bottom: 0.1vw var(--color1Alt3) dashed;\n  margin-top: 1vw;\n  display: flex;\n  align-items: center;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%] {\n  padding: 0.5vw 1vw;\n  width: calc(60% - 1vw);\n  margin-right: 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h5[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h5[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h5[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h5[_ngcontent-%COMP%] {\n  font-size: 1.4vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n  line-height: 1;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color1Alt3);\n  font-weight: var(--strong);\n  line-height: 1;\n  text-transform: uppercase;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%] {\n  font-size: 1.4vw;\n  color: var(--color1Alt4);\n  font-weight: var(--mdweight);\n  line-height: 1;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%] {\n  width: 40%;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  font-size: 1vw;\n  text-transform: uppercase;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: center;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%] {\n  margin-right: 0.25vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]    > .icon[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input {\n  flex: 1;\n  display: block;\n  width: 100%;\n  font-size: 1.8vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku.warning[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration.warning[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku.warning[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration.warning[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input {\n  color: var(--errorAlt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]:first-child, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]:first-child, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .sku[_ngcontent-%COMP%]:first-child, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .consideration[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n  padding-top: 0;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > p[_ngcontent-%COMP%], \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > p[_ngcontent-%COMP%] {\n  font-size: 1.8vw;\n  color: var(--color1);\n  text-align: center;\n  font-weight: var(--ltweight);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .considerations[_ngcontent-%COMP%]:first-child, \n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .custom-skus[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .attributes[_ngcontent-%COMP%] {\n  margin-top: 1vw;\n  flex: 1;\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .attributes[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: rgba(var(--color3-raw), 0.8);\n  -webkit-backdrop-filter: blur(0.2vw);\n  -moz-backdrop-filter: blur(0.2vw);\n  -o-backdrop-filter: blur(0.2vw);\n  -ms-backdrop-filter: blur(0.2vw);\n  backdrop-filter: blur(0.2vw);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .attributes[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .primary[_ngcontent-%COMP%]    > .attributes[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  padding: 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%] {\n  margin-left: 2vw;\n  width: calc(65% - 2vw);\n  display: flex;\n  flex-direction: column;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%] {\n  flex: 1;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  padding: 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%] {\n  margin-top: 1vw;\n  background-color: var(--color2);\n  border-radius: 1vw;\n  border: 0.2vw var(--color2Alt2) solid;\n  position: relative;\n  overflow: hidden;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: auto;\n  bottom: 0;\n  width: 3vw;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  background-color: var(--color2Alt2);\n  -moz-transition: background-color 0.2s linear;\n  -o-transition: background-color 0.2s linear;\n  -webkit-transition: background-color 0.2s linear;\n  transition: background-color 0.2s linear;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  display: block;\n  font-size: 2vw;\n  color: var(--color2Alt4);\n  -moz-transition: color 0.2s linear;\n  -o-transition: color 0.2s linear;\n  -webkit-transition: color 0.2s linear;\n  transition: color 0.2s linear;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%] {\n  position: relative;\n  padding: 1vw 2vw 1vw 4vw;\n  flex: 1;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]    > .details[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: center;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]    > .details[_ngcontent-%COMP%]    > .discount[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n  line-height: 1;\n  color: var(--greenAlt3);\n  font-weight: var(--stronger);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]    > .details[_ngcontent-%COMP%]    > .auto[_ngcontent-%COMP%] {\n  margin-left: 1vw;\n  padding: 0.5vw 1vw;\n  border-radius: 999px;\n  background-color: rgba(var(--yellow-raw), 0.2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]    > .details[_ngcontent-%COMP%]    > .auto[_ngcontent-%COMP%]   h6[_ngcontent-%COMP%] {\n  font-size: 1vw;\n  color: rgb(153, 117, 0);\n  font-weight: var(--strong);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .meta[_ngcontent-%COMP%]    > .name[_ngcontent-%COMP%]   h4[_ngcontent-%COMP%] {\n  font-size: 2vw;\n  line-height: 1;\n  color: var(--color1);\n  font-weight: var(--stronger);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%] {\n  margin-left: 1vw;\n  width: 25%;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  text-transform: uppercase;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input {\n  font-size: 1.8vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion.active[_ngcontent-%COMP%] {\n  border-color: var(--green);\n  background-color: rgba(var(--green-raw), 0.1);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion.active[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  background-color: var(--green);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .promotions[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .promotion.active[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: flex-start;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%] {\n  margin-left: 1vw;\n  width: calc(25% - 1vw);\n  display: flex;\n  flex-direction: column;\n  border: 0.4vw transparent solid;\n  border-radius: 1vw;\n  overflow: hidden;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  padding: 0 1vw 0.25vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n  font-weight: var(--strong);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  padding: 0.5vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%]     input {\n  font-size: 2vw;\n  font-weight: var(--strong);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]:first-child {\n  margin-top: 0;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.retail[_ngcontent-%COMP%] {\n  border-color: var(--color3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.retail[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: var(--color3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.retail[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.retail[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  background-color: rgba(var(--color3Alt4-raw), 0.05);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.retail[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%]     input {\n  color: var(--color3Alt4);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.promotional[_ngcontent-%COMP%] {\n  border-color: var(--success);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.promotional[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: var(--success);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.promotional[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.promotional[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  background-color: rgba(var(--successAlt4-raw), 0.05);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.promotional[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%]     input {\n  color: var(--successAlt4);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.par[_ngcontent-%COMP%] {\n  border-color: var(--color4Alt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.par[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: var(--color4Alt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.par[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.par[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  background-color: rgba(var(--color4Alt4-raw), 0.05);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.par[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%]     input {\n  color: var(--color4Alt4);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.abl[_ngcontent-%COMP%] {\n  border-color: var(--errorAlt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.abl[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  background-color: var(--errorAlt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.abl[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%] {\n  color: var(--color2);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.abl[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%] {\n  background-color: rgba(var(--errorAlt4-raw), 0.05);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price.abl[_ngcontent-%COMP%]    > .value[_ngcontent-%COMP%]     input {\n  color: var(--errorAlt4);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .auto-prices[_ngcontent-%COMP%]    > .auto-price[_ngcontent-%COMP%]:first-child {\n  margin-left: 0;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%] {\n  margin-top: 2vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  padding: 0 1vw;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .price[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input {\n  font-size: 9vw;\n  color: var(--color3);\n  font-weight: var(--stronger);\n  line-height: 1;\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .price.warning[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .message[_ngcontent-%COMP%]   p[_ngcontent-%COMP%] {\n  color: var(--errorAlt3);\n}\n#internalPricing[_ngcontent-%COMP%]    > .secondary[_ngcontent-%COMP%]    > .price.warning[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]     input {\n  color: var(--error);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%] {\n  position: absolute;\n  bottom: 1vw;\n  right: 1vw;\n  z-index: calc(var(--navLayer) + 1);\n  background-color: var(--color2);\n  border-radius: 999px;\n  padding: 0.5vw 1vw;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%] {\n  display: flex;\n  align-items: center;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  position: relative;\n  margin-left: 1vw;\n  padding: 0.8vw 2vw;\n  border-radius: 999px;\n  cursor: pointer;\n  margin-left: 1vw;\n  display: flex;\n  align-items: center;\n  background-color: var(--color3);\n  border: 0.1vw transparent solid;\n  -moz-transition: background-color 0.1s linear;\n  -o-transition: background-color 0.1s linear;\n  -webkit-transition: background-color 0.1s linear;\n  transition: background-color 0.1s linear;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%]:last-child, \n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%]:last-child {\n  margin-left: 0.5vw;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color2);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  font-size: 1.2vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  line-height: 1;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control.success[_ngcontent-%COMP%] {\n  background-color: var(--success);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control.alternate[_ngcontent-%COMP%] {\n  background-color: var(--color2);\n  border-color: var(--color1);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control.alternate[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  color: var(--color1);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[disabled][_ngcontent-%COMP%] {\n  opacity: 0.6;\n  pointer-events: none;\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:active {\n  background-color: var(--color3Alt4);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:active.success {\n  background-color: var(--successAlt4);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:active.alternate {\n  background-color: var(--color2Alt2);\n}\n#mainNav[_ngcontent-%COMP%]    > .island[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:first-child {\n  margin-left: 0;\n}\n#itemizedPrices[_ngcontent-%COMP%] {\n  pointer-events: none;\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: var(--sideNav-layer);\n  opacity: 0;\n  background-color: rgba(var(--color1-raw), 0.4);\n  -webkit-backdrop-filter: blur(0.5vw);\n  -moz-backdrop-filter: blur(0.5vw);\n  -o-backdrop-filter: blur(0.5vw);\n  -ms-backdrop-filter: blur(0.5vw);\n  backdrop-filter: blur(0.5vw);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%] {\n  display: block;\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  background-color: var(--color2);\n  border: 0.1vw var(--color2Alt2) solid;\n  width: 70vw;\n  height: 60vh;\n  border-radius: 1vw;\n  z-index: calc(var(--sideNav-layer) + 1);\n  opacity: 0;\n  overflow-x: hidden;\n  box-shadow: 0 0.2vw 1vw rgba(var(--black-raw), 0.1);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%] {\n  position: sticky;\n  top: 0;\n  background-color: var(--color2);\n  border-bottom: 0.1vw var(--color2Alt2) solid;\n  padding: 1vw;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  font-size: 1.4vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  cursor: pointer;\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  font-size: 1.6vw;\n  color: var(--color1);\n}\n#itemizedPrices[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  padding: 2vw;\n}\n#itemizedPrices.active[_ngcontent-%COMP%] {\n  pointer-events: initial;\n}\n#itemizedPrices.active[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  opacity: 1;\n}\n#itemizedPrices.active[_ngcontent-%COMP%]    > .modal[_ngcontent-%COMP%] {\n  opacity: 1;\n}\n#protectedOverlay[_ngcontent-%COMP%] {\n  pointer-events: none;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  background-color: var(--color2);\n  z-index: calc(var(--navLayer) + 100);\n  opacity: 0;\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  width: 50vw;\n  z-index: calc(var(--navLayer) + 101);\n  opacity: 0;\n  -moz-transform: translate(-50%, -50%) scale(0.8);\n  -ms-transform: translate(-50%, -50%) scale(0.8);\n  -o-transform: translate(-50%, -50%) scale(0.8);\n  -webkit-transform: translate(-50%, -50%) scale(0.8);\n  transform: translate(-50%, -50%) scale(0.8);\n  -moz-transition: transform 0.2s, opacity 0.2s;\n  -o-transition: transform 0.2s, opacity 0.2s;\n  -webkit-transition: transform 0.2s, opacity 0.2s;\n  transition: transform 0.2s, opacity 0.2s;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > header[_ngcontent-%COMP%]   h2[_ngcontent-%COMP%] {\n  font-size: 3vw;\n  color: var(--color1);\n  text-align: center;\n  font-weight: var(--strong);\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .pin[_ngcontent-%COMP%] {\n  margin-top: 3vw;\n  display: flex;\n  justify-content: center;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .pin[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%] {\n  border: 0.2vw var(--color2Alt4) solid;\n  width: 9vw;\n  border-radius: 1vw;\n  -moz-transition: border-color 0.2s linear;\n  -o-transition: border-color 0.2s linear;\n  -webkit-transition: border-color 0.2s linear;\n  transition: border-color 0.2s linear;\n  margin-left: 1vw;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .pin[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]   input[_ngcontent-%COMP%] {\n  display: block;\n  width: 100%;\n  font-size: 9vw;\n  text-align: center;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .pin[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]:focus-within {\n  border-color: var(--color3);\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .pin[_ngcontent-%COMP%]    > .input[_ngcontent-%COMP%]:first-child {\n  margin-left: 0;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%] {\n  margin-top: 3vw;\n  display: flex;\n  justify-content: center;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%] {\n  position: relative;\n  margin-left: 1vw;\n  padding: 0.8vw 2vw;\n  border-radius: 999px;\n  cursor: pointer;\n  margin-left: 1vw;\n  display: flex;\n  align-items: center;\n  background-color: var(--color3);\n  border: 0.1vw transparent solid;\n  -moz-transition: background-color 0.1s linear;\n  -o-transition: background-color 0.1s linear;\n  -webkit-transition: background-color 0.1s linear;\n  transition: background-color 0.1s linear;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%]:last-child, \n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%]:last-child {\n  margin-left: 1vw;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > i[_ngcontent-%COMP%] {\n  font-size: 3vw;\n  color: var(--color2);\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]    > label[_ngcontent-%COMP%] {\n  font-size: 2.4vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  line-height: 1;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[disabled][_ngcontent-%COMP%] {\n  opacity: 0.6;\n  pointer-events: none;\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:active {\n  background-color: var(--color3Alt4);\n}\n#protectedOverlay[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%]    > .controls[_ngcontent-%COMP%]    > .control[_ngcontent-%COMP%]:first-child {\n  margin-left: 0;\n}\n#protectedOverlay.active[_ngcontent-%COMP%] {\n  pointer-events: initial;\n}\n#protectedOverlay.active[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  opacity: 1;\n}\n#protectedOverlay.active[_ngcontent-%COMP%]    > .content[_ngcontent-%COMP%] {\n  opacity: 1;\n  -moz-transform: translate(-50%, -50%) scale(1);\n  -ms-transform: translate(-50%, -50%) scale(1);\n  -o-transform: translate(-50%, -50%) scale(1);\n  -webkit-transform: translate(-50%, -50%) scale(1);\n  transform: translate(-50%, -50%) scale(1);\n}\n/*# sourceMappingURL=internal.component.css.map */"] });
var InternalPricingComponent = _InternalPricingComponent;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(InternalPricingComponent, [{
    type: Component,
    args: [{ standalone: false, selector: "internal", template: '<section id="internalPricing">\n  <div class="primary">\n    <div class="considerations tile">\n      <header>\n        <h2>Additional Considerations</h2>\n      </header>\n      <div class="content">\n        @if (!additionalConsiderationsValid) {\n          <div class="message">\n            <h4>Missing Prices</h4>\n            <p>\n              Please add prices to each additional consideration.\n            </p>\n          </div>\n        }\n        @if (hasAdditionalConsiderations) {\n          @for (consideration of considerations; track consideration) {\n            <div class="consideration" [class.warning]="consideration.price == 0"\n              >\n              <div class="meta">\n                <h5>\n                  ({{consideration.quantity}}) {{consideration.name}}\n                </h5>\n                <p>\n                  {{consideration.description}}\n                </p>\n              </div>\n              <div class="price">\n                <label>\n                  Custom Price\n                </label>\n                <div class="input">\n                  <div class="icon">\n                    <i class="fa-solid fa-pencil"></i>\n                  </div>\n                  <currency-input [enabled]="canModifyAppointment" [currencyInput]="consideration.price"\n                  (currencyOutput)="updateConsiderationPrice(consideration,$event)"></currency-input>\n                </div>\n              </div>\n            </div>\n          }\n        }\n        @if (!hasAdditionalConsiderations) {\n          <p>\n            No additional considerations.\n          </p>\n        }\n      </div>\n    </div>\n    @if (hasCustomSkus) {\n      <div class="custom-skus tile">\n        <header>\n          <h2>Custom Line Items</h2>\n        </header>\n        <div class="content">\n          @if (!customSkusValid) {\n            <div class="message">\n              <h4>Missing Prices</h4>\n              <p>\n                Please add prices to each additional custom item.\n              </p>\n            </div>\n          }\n          @if (hasCustomSkus) {\n            @for (sku of customSkus; track sku) {\n              <div class="sku" [class.warning]="sku.price == 0">\n                <div class="meta">\n                  <h6>{{sku.entity?.name}} {{sku.entity?.number}}</h6>\n                  <h5>\n                    ({{sku.quantity}}) {{sku.name}}\n                  </h5>\n                </div>\n                <div class="price">\n                  <label>\n                    Custom Price\n                  </label>\n                  <div class="input">\n                    <div class="icon">\n                      <i class="fa-solid fa-pencil"></i>\n                    </div>\n                    <currency-input [enabled]="canModifyAppointment" [currencyInput]="sku.price"\n                    (currencyOutput)="updateCustomSkuPrice(sku,$event)"></currency-input>\n                  </div>\n                </div>\n              </div>\n            }\n          }\n        </div>\n      </div>\n    }\n    <div class="attributes tile">\n      <header>\n        <h2>Job Attributes</h2>\n      </header>\n      <div class="content">\n        <attributes [appointment]="appointment" [job]="appointment?.job" [attributes]="attributes"></attributes>\n      </div>\n    </div>\n  </div>\n  <div class="secondary">\n    <div class="auto-prices">\n      <div class="auto-price retail">\n        <header>\n          <h3>Target Price</h3>\n        </header>\n        <div class="value">\n          <currency-input [currencyInput]="targetPrice" [update]="targetPrice$"\n          [enabled]="false"></currency-input>\n        </div>\n      </div>\n      <div class="auto-price promotional">\n        <header>\n          <h3>Including 20%</h3>\n        </header>\n        <div class="value">\n          <currency-input [currencyInput]="initialPromoPrice" [update]="initialPromoPrice$"\n          [enabled]="false"></currency-input>\n        </div>\n      </div>\n      <div class="auto-price par">\n        <header>\n          <h3>PAR</h3>\n        </header>\n        <div class="value">\n          <currency-input [currencyInput]="parPrice" [update]="parPrice$" [enabled]="false"></currency-input>\n        </div>\n      </div>\n      <div class="auto-price abl">\n        <header>\n          <h3>ABL</h3>\n        </header>\n        <div class="value">\n          <currency-input [currencyInput]="ablPrice" [update]="ablPrice$" [enabled]="false"></currency-input>\n        </div>\n      </div>\n    </div>\n    <div class="price tile" [class.warning]="warnOnPrice">\n      <header>\n        <h2>\n          <i class="fa-solid fa-pencil"></i> Your Price to the Customer After 20% Discount\n        </h2>\n        <div class="controls">\n          <button class="control" (click)="viewItemizedPrices()">\n            <label>View Itemized Pricing</label>\n          </button>\n        </div>\n      </header>\n      <div class="content">\n        <div class="input">\n          <currency-input [enabled]="canModifyAppointment" [currencyInput]="finalPrice" [update]="finalPrice$"\n          (currencyOutput)="updateFinalPrice($event)"></currency-input>\n        </div>\n      </div>\n    </div>\n  </div>\n</section>\n\n<nav id="mainNav">\n  <div class="island">\n    <div class="controls">\n      <button class="control success" (click)="goToExternalPricing()" [disabled]="!canDisplayCustomerPrice">\n        <i class="fa-solid fa-arrow-right-long"></i>\n        <label>Display Price to Customer</label>\n      </button>\n    </div>\n  </div>\n</nav>\n\n<div id="protectedOverlay" [class.active]="showProtection">\n  <div class="bg"></div>\n  <div class="content">\n    <header>\n      <h2>Please enter your PIN to continue.</h2>\n    </header>\n    <div class="pin">\n      <div class="input">\n        <input [(ngModel)]="pin1" #pin1Elm (keyup)="updatePin(1,$event)" type="tel" maxlength="1" />\n      </div>\n      <div class="input">\n        <input [(ngModel)]="pin2" #pin2Elm (keyup)="updatePin(2,$event)" type="tel" maxlength="1" />\n      </div>\n      <div class="input">\n        <input [(ngModel)]="pin3" #pin3Elm (keyup)="updatePin(3,$event)" type="tel" maxlength="1" />\n      </div>\n      <div class="input">\n        <input [(ngModel)]="pin4" #pin4Elm (keyup)="updatePin(4,$event)" type="tel" maxlength="1" />\n      </div>\n    </div>\n    <div class="controls">\n      <button class="control" [disabled]="!canValidateProtection" (click)="validateProtection()">\n        <i class="fa-solid fa-lock-keyhole"></i>\n        <label>Verify Access</label>\n      </button>\n    </div>\n  </div>\n</div>\n\n<aside id="itemizedPrices" [class.active]="viewingItemizedPrices">\n  <div class="bg"></div>\n  <div class="modal">\n    <header>\n      <h2>Itemized Prices</h2>\n      <div class="controls">\n        <button class="control" (click)="stopViewingItemizedPrices()">\n          <i class="fa-solid fa-xmark"></i>\n        </button>\n      </div>\n    </header>\n    <div class="content">\n      <itemized-pricing [appointment]="appointment"></itemized-pricing>\n    </div>\n  </div>\n</aside>', styles: ["/* src/app/shared/ui/components/tooltips/tooltips.component.scss */\n.tooltip {\n  position: absolute;\n  z-index: 11;\n  width: 24vw;\n  background-color: var(--color5Alt3);\n  border: 0.5vw var(--color5Alt4) solid;\n  box-shadow:\n    0 0 0.1vw var(--color2),\n    0 0 0.2vw var(--color2),\n    0 0 1vw var(--color2),\n    0 0 3vw var(--color2),\n    0 0 5vw var(--color2),\n    0 0 7vw var(--color2);\n  border-radius: 0.5vw;\n  padding: 1vw;\n  opacity: 0;\n  pointer-events: none;\n  -moz-transition: opacity 0.1s linear;\n  -o-transition: opacity 0.1s linear;\n  -webkit-transition: opacity 0.1s linear;\n  transition: opacity 0.1s linear;\n}\n.tooltip > .control {\n  position: absolute;\n  top: 0.5vw;\n  right: 0.5vw;\n  cursor: pointer;\n}\n.tooltip > .control > i {\n  font-size: 1.4vw;\n  color: var(--color2);\n}\n.tooltip > h3 {\n  font-size: 1.6vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  font-style: italic;\n}\n.tooltip > p {\n  margin-top: 0.5vw;\n  font-size: 1.2vw;\n  font-weight: var(--stdweight);\n  color: var(--color2Alt1);\n  line-height: 1.2;\n}\n.tooltip > .controls {\n  margin-top: 0.5vw;\n}\n.tooltip > .controls > .control {\n  cursor: pointer;\n  display: block;\n}\n.tooltip > .controls > .control > label {\n  font-size: 1.2vw;\n  color: var(--color2);\n  font-weight: var(--stronger);\n}\n.tooltip.active {\n  opacity: 1;\n}\n/*# sourceMappingURL=tooltips.component.css.map */\n", "/* src/app/appointment/internal-pricing/components/internal/internal.component.scss */\n#internalPricing {\n  position: absolute;\n  top: calc(var(--systemOffset-top) + 6vw);\n  left: 2vw;\n  right: 2vw;\n  bottom: 6vw;\n  display: flex;\n}\n#internalPricing .tile {\n  border: 0.1vw var(--color2Alt2) solid;\n  border-radius: 1vw;\n  background-color: var(--color2);\n  overflow-x: hidden;\n}\n#internalPricing .tile > header {\n  padding: 0.75vw 1vw;\n  background-color: var(--color2Alt3);\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  position: sticky;\n  top: 0;\n  z-index: 1;\n}\n#internalPricing .tile > header h2 {\n  font-size: 1.6vw;\n  color: var(--color1);\n  font-weight: var(--stronger);\n  line-height: 1;\n}\n#internalPricing .tile > header > .controls {\n  display: flex;\n  align-items: center;\n}\n#internalPricing .tile > header > .controls > .control {\n  display: flex;\n  align-items: center;\n  cursor: pointer;\n}\n#internalPricing .tile > header > .controls > .control i {\n  font-size: 1.2vw;\n  color: var(--color3);\n}\n#internalPricing .tile > header > .controls > .control label {\n  font-size: 1.2vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n  margin-left: 0.5vw;\n}\n#internalPricing .tile > header > .message p {\n  font-size: 1.2vw;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing > .primary {\n  width: 35%;\n  display: flex;\n  flex-direction: column;\n}\n#internalPricing > .primary .tile > header {\n  padding: 0.5vw 1vw;\n}\n#internalPricing > .primary .tile > header h2 {\n  font-size: 1.3vw;\n}\n#internalPricing > .primary > .considerations,\n#internalPricing > .primary > .custom-skus {\n  margin-top: 1vw;\n}\n#internalPricing > .primary > .considerations > header,\n#internalPricing > .primary > .custom-skus > header {\n  background-color: rgba(var(--color4Alt3-raw), 0.8);\n  -webkit-backdrop-filter: blur(0.2vw);\n  -moz-backdrop-filter: blur(0.2vw);\n  -o-backdrop-filter: blur(0.2vw);\n  -ms-backdrop-filter: blur(0.2vw);\n  backdrop-filter: blur(0.2vw);\n}\n#internalPricing > .primary > .considerations > header h2,\n#internalPricing > .primary > .custom-skus > header h2 {\n  color: var(--color2);\n}\n#internalPricing > .primary > .considerations > .content,\n#internalPricing > .primary > .custom-skus > .content {\n  padding: 1vw;\n}\n#internalPricing > .primary > .considerations > .content > .message,\n#internalPricing > .primary > .custom-skus > .content > .message {\n  background-color: var(--error);\n  border: 0.3vw var(--errorAlt3) solid;\n  border-radius: 1vw;\n  padding: 0.5vw 1vw;\n  pointer-events: none;\n}\n#internalPricing > .primary > .considerations > .content > .message h4,\n#internalPricing > .primary > .custom-skus > .content > .message h4 {\n  font-size: 1.2vw;\n  font-weight: var(--stronger);\n  color: var(--color2);\n  text-align: center;\n  text-transform: uppercase;\n}\n#internalPricing > .primary > .considerations > .content > .message p,\n#internalPricing > .primary > .custom-skus > .content > .message p {\n  margin-top: 0.5vw;\n  color: var(--color2);\n  font-size: 1.2vw;\n  font-weight: var(--strong);\n  text-align: center;\n  line-height: 1.2;\n}\n#internalPricing > .primary > .considerations > .content > .sku,\n#internalPricing > .primary > .considerations > .content > .consideration,\n#internalPricing > .primary > .custom-skus > .content > .sku,\n#internalPricing > .primary > .custom-skus > .content > .consideration {\n  border-bottom: 0.1vw var(--color1Alt3) dashed;\n  margin-top: 1vw;\n  display: flex;\n  align-items: center;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .meta,\n#internalPricing > .primary > .considerations > .content > .consideration > .meta,\n#internalPricing > .primary > .custom-skus > .content > .sku > .meta,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .meta {\n  padding: 0.5vw 1vw;\n  width: calc(60% - 1vw);\n  margin-right: 1vw;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .meta h5,\n#internalPricing > .primary > .considerations > .content > .consideration > .meta h5,\n#internalPricing > .primary > .custom-skus > .content > .sku > .meta h5,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .meta h5 {\n  font-size: 1.4vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n  line-height: 1;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .meta h6,\n#internalPricing > .primary > .considerations > .content > .consideration > .meta h6,\n#internalPricing > .primary > .custom-skus > .content > .sku > .meta h6,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .meta h6 {\n  font-size: 1.2vw;\n  color: var(--color1Alt3);\n  font-weight: var(--strong);\n  line-height: 1;\n  text-transform: uppercase;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .meta p,\n#internalPricing > .primary > .considerations > .content > .consideration > .meta p,\n#internalPricing > .primary > .custom-skus > .content > .sku > .meta p,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .meta p {\n  font-size: 1.4vw;\n  color: var(--color1Alt4);\n  font-weight: var(--mdweight);\n  line-height: 1;\n  -ms-text-overflow: ellipsis;\n  -o-text-overflow: ellipsis;\n  text-overflow: ellipsis;\n  display: block;\n  white-space: nowrap;\n  overflow: hidden;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price,\n#internalPricing > .primary > .considerations > .content > .consideration > .price,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price {\n  width: 40%;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price > label,\n#internalPricing > .primary > .considerations > .content > .consideration > .price > label,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price > label,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price > label {\n  font-size: 1vw;\n  text-transform: uppercase;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price > .input,\n#internalPricing > .primary > .considerations > .content > .consideration > .price > .input,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price > .input,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price > .input {\n  display: flex;\n  align-items: center;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price > .input > .icon,\n#internalPricing > .primary > .considerations > .content > .consideration > .price > .input > .icon,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price > .input > .icon,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price > .input > .icon {\n  margin-right: 0.25vw;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price > .input > .icon > i,\n#internalPricing > .primary > .considerations > .content > .consideration > .price > .input > .icon > i,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price > .input > .icon > i,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price > .input > .icon > i {\n  font-size: 1.6vw;\n}\n#internalPricing > .primary > .considerations > .content > .sku > .price > .input ::ng-deep input,\n#internalPricing > .primary > .considerations > .content > .consideration > .price > .input ::ng-deep input,\n#internalPricing > .primary > .custom-skus > .content > .sku > .price > .input ::ng-deep input,\n#internalPricing > .primary > .custom-skus > .content > .consideration > .price > .input ::ng-deep input {\n  flex: 1;\n  display: block;\n  width: 100%;\n  font-size: 1.8vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n}\n#internalPricing > .primary > .considerations > .content > .sku.warning > .price > .input ::ng-deep input,\n#internalPricing > .primary > .considerations > .content > .consideration.warning > .price > .input ::ng-deep input,\n#internalPricing > .primary > .custom-skus > .content > .sku.warning > .price > .input ::ng-deep input,\n#internalPricing > .primary > .custom-skus > .content > .consideration.warning > .price > .input ::ng-deep input {\n  color: var(--errorAlt3);\n}\n#internalPricing > .primary > .considerations > .content > .sku:first-child,\n#internalPricing > .primary > .considerations > .content > .consideration:first-child,\n#internalPricing > .primary > .custom-skus > .content > .sku:first-child,\n#internalPricing > .primary > .custom-skus > .content > .consideration:first-child {\n  margin-top: 0;\n  padding-top: 0;\n}\n#internalPricing > .primary > .considerations > .content > p,\n#internalPricing > .primary > .custom-skus > .content > p {\n  font-size: 1.8vw;\n  color: var(--color1);\n  text-align: center;\n  font-weight: var(--ltweight);\n}\n#internalPricing > .primary > .considerations:first-child,\n#internalPricing > .primary > .custom-skus:first-child {\n  margin-top: 0;\n}\n#internalPricing > .primary > .attributes {\n  margin-top: 1vw;\n  flex: 1;\n}\n#internalPricing > .primary > .attributes > header {\n  background-color: rgba(var(--color3-raw), 0.8);\n  -webkit-backdrop-filter: blur(0.2vw);\n  -moz-backdrop-filter: blur(0.2vw);\n  -o-backdrop-filter: blur(0.2vw);\n  -ms-backdrop-filter: blur(0.2vw);\n  backdrop-filter: blur(0.2vw);\n}\n#internalPricing > .primary > .attributes > header h2 {\n  color: var(--color2);\n}\n#internalPricing > .primary > .attributes > .content {\n  padding: 1vw;\n}\n#internalPricing > .secondary {\n  margin-left: 2vw;\n  width: calc(65% - 2vw);\n  display: flex;\n  flex-direction: column;\n}\n#internalPricing > .secondary > .promotions {\n  flex: 1;\n}\n#internalPricing > .secondary > .promotions > .content {\n  padding: 1vw;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion {\n  margin-top: 1vw;\n  background-color: var(--color2);\n  border-radius: 1vw;\n  border: 0.2vw var(--color2Alt2) solid;\n  position: relative;\n  overflow: hidden;\n  cursor: pointer;\n  display: flex;\n  align-items: center;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .control {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: auto;\n  bottom: 0;\n  width: 3vw;\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  background-color: var(--color2Alt2);\n  -moz-transition: background-color 0.2s linear;\n  -o-transition: background-color 0.2s linear;\n  -webkit-transition: background-color 0.2s linear;\n  transition: background-color 0.2s linear;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .control > i {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  display: block;\n  font-size: 2vw;\n  color: var(--color2Alt4);\n  -moz-transition: color 0.2s linear;\n  -o-transition: color 0.2s linear;\n  -webkit-transition: color 0.2s linear;\n  transition: color 0.2s linear;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta {\n  position: relative;\n  padding: 1vw 2vw 1vw 4vw;\n  flex: 1;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta > .details {\n  display: flex;\n  align-items: center;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta > .details > .discount h6 {\n  font-size: 1.6vw;\n  line-height: 1;\n  color: var(--greenAlt3);\n  font-weight: var(--stronger);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta > .details > .auto {\n  margin-left: 1vw;\n  padding: 0.5vw 1vw;\n  border-radius: 999px;\n  background-color: rgba(var(--yellow-raw), 0.2);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta > .details > .auto h6 {\n  font-size: 1vw;\n  color: rgb(153, 117, 0);\n  font-weight: var(--strong);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .meta > .name h4 {\n  font-size: 2vw;\n  line-height: 1;\n  color: var(--color1);\n  font-weight: var(--stronger);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .price {\n  margin-left: 1vw;\n  width: 25%;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .price > label {\n  font-size: 1.2vw;\n  text-transform: uppercase;\n  font-weight: var(--strong);\n  color: var(--color1);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion > .price > .input ::ng-deep input {\n  font-size: 1.8vw;\n  color: var(--color3);\n  font-weight: var(--strong);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion:first-child {\n  margin-top: 0;\n}\n#internalPricing > .secondary > .promotions > .content > .promotion.active {\n  border-color: var(--green);\n  background-color: rgba(var(--green-raw), 0.1);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion.active > .control {\n  background-color: var(--green);\n}\n#internalPricing > .secondary > .promotions > .content > .promotion.active > .control > i {\n  color: var(--color2);\n}\n#internalPricing > .secondary > .auto-prices {\n  display: flex;\n  align-items: flex-start;\n}\n#internalPricing > .secondary > .auto-prices > .auto-price {\n  margin-left: 1vw;\n  width: calc(25% - 1vw);\n  display: flex;\n  flex-direction: column;\n  border: 0.4vw transparent solid;\n  border-radius: 1vw;\n  overflow: hidden;\n}\n#internalPricing > .secondary > .auto-prices > .auto-price > header {\n  padding: 0 1vw 0.25vw;\n}\n#internalPricing > .secondary > .auto-prices > .auto-price > header h3 {\n  font-size: 1.6vw;\n  font-weight: var(--strong);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price > .value {\n  padding: 0.5vw;\n}\n#internalPricing > .secondary > .auto-prices > .auto-price > .value ::ng-deep input {\n  font-size: 2vw;\n  font-weight: var(--strong);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price:first-child {\n  margin-top: 0;\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.retail {\n  border-color: var(--color3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.retail > header {\n  background-color: var(--color3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.retail > header h3 {\n  color: var(--color2);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.retail > .value {\n  background-color: rgba(var(--color3Alt4-raw), 0.05);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.retail > .value ::ng-deep input {\n  color: var(--color3Alt4);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.promotional {\n  border-color: var(--success);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.promotional > header {\n  background-color: var(--success);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.promotional > header h3 {\n  color: var(--color2);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.promotional > .value {\n  background-color: rgba(var(--successAlt4-raw), 0.05);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.promotional > .value ::ng-deep input {\n  color: var(--successAlt4);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.par {\n  border-color: var(--color4Alt3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.par > header {\n  background-color: var(--color4Alt3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.par > header h3 {\n  color: var(--color2);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.par > .value {\n  background-color: rgba(var(--color4Alt4-raw), 0.05);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.par > .value ::ng-deep input {\n  color: var(--color4Alt4);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.abl {\n  border-color: var(--errorAlt3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.abl > header {\n  background-color: var(--errorAlt3);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.abl > header h3 {\n  color: var(--color2);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.abl > .value {\n  background-color: rgba(var(--errorAlt4-raw), 0.05);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price.abl > .value ::ng-deep input {\n  color: var(--errorAlt4);\n}\n#internalPricing > .secondary > .auto-prices > .auto-price:first-child {\n  margin-left: 0;\n}\n#internalPricing > .secondary > .price {\n  margin-top: 2vw;\n}\n#internalPricing > .secondary > .price > .content {\n  padding: 0 1vw;\n}\n#internalPricing > .secondary > .price > .content > .input ::ng-deep input {\n  font-size: 9vw;\n  color: var(--color3);\n  font-weight: var(--stronger);\n  line-height: 1;\n}\n#internalPricing > .secondary > .price.warning > header > .message p {\n  color: var(--errorAlt3);\n}\n#internalPricing > .secondary > .price.warning > .content > .input ::ng-deep input {\n  color: var(--error);\n}\n#mainNav > .island {\n  position: absolute;\n  bottom: 1vw;\n  right: 1vw;\n  z-index: calc(var(--navLayer) + 1);\n  background-color: var(--color2);\n  border-radius: 999px;\n  padding: 0.5vw 1vw;\n}\n#mainNav > .island > .controls {\n  display: flex;\n  align-items: center;\n}\n#mainNav > .island > .controls > .control {\n  position: relative;\n  margin-left: 1vw;\n  padding: 0.8vw 2vw;\n  border-radius: 999px;\n  cursor: pointer;\n  margin-left: 1vw;\n  display: flex;\n  align-items: center;\n  background-color: var(--color3);\n  border: 0.1vw transparent solid;\n  -moz-transition: background-color 0.1s linear;\n  -o-transition: background-color 0.1s linear;\n  -webkit-transition: background-color 0.1s linear;\n  transition: background-color 0.1s linear;\n}\n#mainNav > .island > .controls > .control > i:last-child,\n#mainNav > .island > .controls > .control > label:last-child {\n  margin-left: 0.5vw;\n}\n#mainNav > .island > .controls > .control > i {\n  font-size: 1.2vw;\n  color: var(--color2);\n}\n#mainNav > .island > .controls > .control > label {\n  font-size: 1.2vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  line-height: 1;\n}\n#mainNav > .island > .controls > .control.success {\n  background-color: var(--success);\n}\n#mainNav > .island > .controls > .control.alternate {\n  background-color: var(--color2);\n  border-color: var(--color1);\n}\n#mainNav > .island > .controls > .control.alternate > label {\n  color: var(--color1);\n}\n#mainNav > .island > .controls > .control[disabled] {\n  opacity: 0.6;\n  pointer-events: none;\n}\n#mainNav > .island > .controls > .control:active {\n  background-color: var(--color3Alt4);\n}\n#mainNav > .island > .controls > .control:active.success {\n  background-color: var(--successAlt4);\n}\n#mainNav > .island > .controls > .control:active.alternate {\n  background-color: var(--color2Alt2);\n}\n#mainNav > .island > .controls > .control:first-child {\n  margin-left: 0;\n}\n#itemizedPrices {\n  pointer-events: none;\n}\n#itemizedPrices > .bg {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: var(--sideNav-layer);\n  opacity: 0;\n  background-color: rgba(var(--color1-raw), 0.4);\n  -webkit-backdrop-filter: blur(0.5vw);\n  -moz-backdrop-filter: blur(0.5vw);\n  -o-backdrop-filter: blur(0.5vw);\n  -ms-backdrop-filter: blur(0.5vw);\n  backdrop-filter: blur(0.5vw);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPrices > .modal {\n  display: block;\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  background-color: var(--color2);\n  border: 0.1vw var(--color2Alt2) solid;\n  width: 70vw;\n  height: 60vh;\n  border-radius: 1vw;\n  z-index: calc(var(--sideNav-layer) + 1);\n  opacity: 0;\n  overflow-x: hidden;\n  box-shadow: 0 0.2vw 1vw rgba(var(--black-raw), 0.1);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPrices > .modal > header {\n  position: sticky;\n  top: 0;\n  background-color: var(--color2);\n  border-bottom: 0.1vw var(--color2Alt2) solid;\n  padding: 1vw;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n}\n#itemizedPrices > .modal > header h2 {\n  font-size: 1.4vw;\n  color: var(--color1);\n  font-weight: var(--strong);\n}\n#itemizedPrices > .modal > header > .controls > .control {\n  cursor: pointer;\n}\n#itemizedPrices > .modal > header > .controls > .control > i {\n  font-size: 1.6vw;\n  color: var(--color1);\n}\n#itemizedPrices > .modal > .content {\n  padding: 2vw;\n}\n#itemizedPrices.active {\n  pointer-events: initial;\n}\n#itemizedPrices.active > .bg {\n  opacity: 1;\n}\n#itemizedPrices.active > .modal {\n  opacity: 1;\n}\n#protectedOverlay {\n  pointer-events: none;\n}\n#protectedOverlay > .bg {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  background-color: var(--color2);\n  z-index: calc(var(--navLayer) + 100);\n  opacity: 0;\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#protectedOverlay > .content {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  width: 50vw;\n  z-index: calc(var(--navLayer) + 101);\n  opacity: 0;\n  -moz-transform: translate(-50%, -50%) scale(0.8);\n  -ms-transform: translate(-50%, -50%) scale(0.8);\n  -o-transform: translate(-50%, -50%) scale(0.8);\n  -webkit-transform: translate(-50%, -50%) scale(0.8);\n  transform: translate(-50%, -50%) scale(0.8);\n  -moz-transition: transform 0.2s, opacity 0.2s;\n  -o-transition: transform 0.2s, opacity 0.2s;\n  -webkit-transition: transform 0.2s, opacity 0.2s;\n  transition: transform 0.2s, opacity 0.2s;\n}\n#protectedOverlay > .content > header h2 {\n  font-size: 3vw;\n  color: var(--color1);\n  text-align: center;\n  font-weight: var(--strong);\n}\n#protectedOverlay > .content > .pin {\n  margin-top: 3vw;\n  display: flex;\n  justify-content: center;\n}\n#protectedOverlay > .content > .pin > .input {\n  border: 0.2vw var(--color2Alt4) solid;\n  width: 9vw;\n  border-radius: 1vw;\n  -moz-transition: border-color 0.2s linear;\n  -o-transition: border-color 0.2s linear;\n  -webkit-transition: border-color 0.2s linear;\n  transition: border-color 0.2s linear;\n  margin-left: 1vw;\n}\n#protectedOverlay > .content > .pin > .input input {\n  display: block;\n  width: 100%;\n  font-size: 9vw;\n  text-align: center;\n}\n#protectedOverlay > .content > .pin > .input:focus-within {\n  border-color: var(--color3);\n}\n#protectedOverlay > .content > .pin > .input:first-child {\n  margin-left: 0;\n}\n#protectedOverlay > .content > .controls {\n  margin-top: 3vw;\n  display: flex;\n  justify-content: center;\n}\n#protectedOverlay > .content > .controls > .control {\n  position: relative;\n  margin-left: 1vw;\n  padding: 0.8vw 2vw;\n  border-radius: 999px;\n  cursor: pointer;\n  margin-left: 1vw;\n  display: flex;\n  align-items: center;\n  background-color: var(--color3);\n  border: 0.1vw transparent solid;\n  -moz-transition: background-color 0.1s linear;\n  -o-transition: background-color 0.1s linear;\n  -webkit-transition: background-color 0.1s linear;\n  transition: background-color 0.1s linear;\n}\n#protectedOverlay > .content > .controls > .control > i:last-child,\n#protectedOverlay > .content > .controls > .control > label:last-child {\n  margin-left: 1vw;\n}\n#protectedOverlay > .content > .controls > .control > i {\n  font-size: 3vw;\n  color: var(--color2);\n}\n#protectedOverlay > .content > .controls > .control > label {\n  font-size: 2.4vw;\n  color: var(--color2);\n  font-weight: var(--strong);\n  line-height: 1;\n}\n#protectedOverlay > .content > .controls > .control[disabled] {\n  opacity: 0.6;\n  pointer-events: none;\n}\n#protectedOverlay > .content > .controls > .control:active {\n  background-color: var(--color3Alt4);\n}\n#protectedOverlay > .content > .controls > .control:first-child {\n  margin-left: 0;\n}\n#protectedOverlay.active {\n  pointer-events: initial;\n}\n#protectedOverlay.active > .bg {\n  opacity: 1;\n}\n#protectedOverlay.active > .content {\n  opacity: 1;\n  -moz-transform: translate(-50%, -50%) scale(1);\n  -ms-transform: translate(-50%, -50%) scale(1);\n  -o-transform: translate(-50%, -50%) scale(1);\n  -webkit-transform: translate(-50%, -50%) scale(1);\n  transform: translate(-50%, -50%) scale(1);\n}\n/*# sourceMappingURL=internal.component.css.map */\n"] }]
  }], () => [{ type: LocalAppointmentService }, { type: AppointmentService }, { type: AppointmentPricingService }, { type: UiService }], { appointment: [{
    type: Input,
    args: ["appointment"]
  }], pin1Elm: [{
    type: ViewChild,
    args: ["pin1Elm"]
  }], pin2Elm: [{
    type: ViewChild,
    args: ["pin2Elm"]
  }], pin3Elm: [{
    type: ViewChild,
    args: ["pin3Elm"]
  }], pin4Elm: [{
    type: ViewChild,
    args: ["pin4Elm"]
  }], route: [{
    type: Input,
    args: ["route"]
  }], componentElm: [{
    type: ViewChild,
    args: ["componentElm"]
  }] });
})();
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && \u0275setClassDebugInfo(InternalPricingComponent, { className: "InternalPricingComponent" });
})();

// src/app/appointment/internal-pricing/components/layout/layout.component.ts
var _c03 = ["componentElm"];
function PricingLayoutComponent_Conditional_0_Conditional_3_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275element(0, "internal", 7);
  }
  if (rf & 2) {
    const ctx_r0 = \u0275\u0275nextContext(2);
    \u0275\u0275classMap(\u0275\u0275interpolate1("route ", ctx_r0.internalRoute == null ? null : ctx_r0.internalRoute.loadDirection));
    \u0275\u0275classProp("animate", ctx_r0.internalRoute == null ? null : ctx_r0.internalRoute.animating)("closing", ctx_r0.internalRoute == null ? null : ctx_r0.internalRoute.closing)("rendered", ctx_r0.internalRoute == null ? null : ctx_r0.internalRoute.rendered);
    \u0275\u0275property("appointment", ctx_r0.appointment)("route", ctx_r0.internalRoute);
  }
}
function PricingLayoutComponent_Conditional_0_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275elementStart(0, "section", 1, 0)(2, "div", 5);
    \u0275\u0275conditionalCreate(3, PricingLayoutComponent_Conditional_0_Conditional_3_Template, 1, 11, "internal", 6);
    \u0275\u0275elementEnd()();
  }
  if (rf & 2) {
    const ctx_r0 = \u0275\u0275nextContext();
    \u0275\u0275advance(3);
    \u0275\u0275conditional((ctx_r0.internalRoute == null ? null : ctx_r0.internalRoute.active) ? 3 : -1);
  }
}
function PricingLayoutComponent_Conditional_3_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275element(0, "itemized-pricing", 4);
  }
  if (rf & 2) {
    const ctx_r0 = \u0275\u0275nextContext();
    \u0275\u0275property("appointment", ctx_r0.appointment);
  }
}
var _PricingLayoutComponent = class _PricingLayoutComponent {
  constructor(localAppointmentService, appointmentPricingService) {
    this.localAppointmentService = localAppointmentService;
    this.appointmentPricingService = appointmentPricingService;
    this.routeParams = new BehaviorSubject([]);
    this.viewingItemizedPricing = false;
    this.closingItemizedPricing = false;
  }
  get routesInitialized() {
    return this.appointmentPricingService.routesInitialized;
  }
  get routes() {
    return this.appointmentPricingService.routeService.routes;
  }
  watchParams() {
    if (this.route != null) {
      this.paramsSubscription = this.route.params.subscribe({
        next: (params) => {
          const componentElm = this.componentElm?.nativeElement;
          if (componentElm != null && this.appointment != null) {
            let route = params[0]?.toLowerCase();
            if (route != null) {
              const routeMatches = Object.values(AppointmentPricingRouteType).includes(route);
              const routeParams = params.slice(1);
              this.routeParams.next(routeParams);
              if (routeMatches) {
                if (!this.routesInitialized) {
                  this.appointmentPricingService.initRoutes(route, this.appointment, componentElm);
                } else {
                  this.viewRoute(route);
                }
              } else {
                if (!this.routesInitialized) {
                  this.appointmentPricingService.initRoutes(void 0, this.appointment, componentElm);
                }
              }
            } else {
              if (!this.routesInitialized) {
                this.appointmentPricingService.initRoutes(void 0, this.appointment, componentElm);
              }
            }
          }
        }
      });
    }
  }
  viewRoute(name) {
    if (name != null) {
      this.appointmentPricingService.routeService.viewRoute(name, RouteLoadDirection.Forward, true);
    }
  }
  watchRoute() {
    this.routeSubscription = this.appointmentPricingService.routeService.activeRoute.subscribe({
      next: (route) => {
        if (route != null) {
          switch (route.type) {
          }
        }
      }
    });
  }
  initRouting() {
    if (this.appointment?.customPrice?.finalPrice == null || this.appointment.customPrice.finalPrice <= 0) {
      const componentElm = this.componentElm?.nativeElement;
      if (componentElm != null && this.appointment != null) {
        this.appointmentPricingService.initRoutes(AppointmentPricingRouteType.internal, this.appointment, componentElm);
      }
    }
    setTimeout(() => {
      this.watchParams();
      this.watchRoute();
    }, 0);
  }
  viewItemizedPricing() {
    window.clearTimeout(this.itemizedPricingTimer);
    this.closingItemizedPricing = false;
    this.viewingItemizedPricing = true;
  }
  stopViewingItemizedPricing() {
    window.clearTimeout(this.itemizedPricingTimer);
    this.closingItemizedPricing = true;
    this.itemizedPricingTimer = window.setTimeout(() => {
      this.viewingItemizedPricing = false;
      this.closingItemizedPricing = false;
    }, 250);
  }
  // #endregion
  // #region Internal
  get internalRoute() {
    return this.routes[AppointmentPricingRouteType.internal];
  }
  // #endregion
  // #region Authentication
  get canModifyAppointment() {
    return this.localAppointmentService.canModifyAppointment;
  }
  // #endregion
  // #region Navigation
  get routeService() {
    return this.localAppointmentService.routeService;
  }
  init() {
    if (this.appointment != null) {
      this.initRouting();
    }
  }
  // #endregion
  ngAfterViewInit() {
    setTimeout(() => {
      this.init();
      setTimeout(() => {
        if (this.route != null) {
          this.route.initialized.next();
        }
      }, 32);
    }, 16);
  }
  ngOnDestroy() {
  }
};
_PricingLayoutComponent.\u0275fac = function PricingLayoutComponent_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _PricingLayoutComponent)(\u0275\u0275directiveInject(LocalAppointmentService), \u0275\u0275directiveInject(AppointmentPricingService));
};
_PricingLayoutComponent.\u0275cmp = /* @__PURE__ */ \u0275\u0275defineComponent({ type: _PricingLayoutComponent, selectors: [["ng-component"]], viewQuery: function PricingLayoutComponent_Query(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275viewQuery(_c03, 5);
  }
  if (rf & 2) {
    let _t;
    \u0275\u0275queryRefresh(_t = \u0275\u0275loadQuery()) && (ctx.componentElm = _t.first);
  }
}, inputs: { appointment: "appointment", route: "route" }, standalone: false, decls: 4, vars: 6, consts: [["componentElm", ""], ["id", "pricingLayout"], ["id", "itemizedPricing"], [1, "bg"], [3, "appointment"], [1, "routes"], [3, "class", "appointment", "animate", "closing", "rendered", "route"], [3, "appointment", "route"]], template: function PricingLayoutComponent_Template(rf, ctx) {
  if (rf & 1) {
    \u0275\u0275conditionalCreate(0, PricingLayoutComponent_Conditional_0_Template, 4, 1, "section", 1);
    \u0275\u0275elementStart(1, "aside", 2);
    \u0275\u0275element(2, "div", 3);
    \u0275\u0275conditionalCreate(3, PricingLayoutComponent_Conditional_3_Template, 1, 1, "itemized-pricing", 4);
    \u0275\u0275elementEnd();
  }
  if (rf & 2) {
    \u0275\u0275conditional(ctx.appointment != null ? 0 : -1);
    \u0275\u0275advance();
    \u0275\u0275classProp("active", ctx.viewingItemizedPricing)("closing", ctx.closingItemizedPricing);
    \u0275\u0275advance(2);
    \u0275\u0275conditional(ctx.viewingItemizedPricing ? 3 : -1);
  }
}, dependencies: [InternalPricingComponent, ItemizedComponent], styles: ['\n\n@-webkit-keyframes _ngcontent-%COMP%_forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-moz-keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-o-keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@keyframes _ngcontent-%COMP%_forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-webkit-keyframes _ngcontent-%COMP%_forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-moz-keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-o-keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@keyframes _ngcontent-%COMP%_forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-webkit-keyframes _ngcontent-%COMP%_reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-moz-keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-o-keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@keyframes _ngcontent-%COMP%_reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-webkit-keyframes _ngcontent-%COMP%_reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-moz-keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-o-keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@keyframes _ngcontent-%COMP%_reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route[_ngcontent-%COMP%] {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  will-change: transform;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route[_ngcontent-%COMP%]:not(.rendered):not(.animate) {\n  opacity: 0;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route.forward.animate[_ngcontent-%COMP%]:not(.closing) {\n  -moz-animation-name: forwardRouteLoadIn;\n  -ms-animation-name: forwardRouteLoadIn;\n  -o-animation-name: forwardRouteLoadIn;\n  -webkit-animation-name: _ngcontent-%COMP%_forwardRouteLoadIn;\n  animation-name: _ngcontent-%COMP%_forwardRouteLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route.forward.animate.closing[_ngcontent-%COMP%] {\n  -moz-animation-name: forwardRouteLoadOut;\n  -ms-animation-name: forwardRouteLoadOut;\n  -o-animation-name: forwardRouteLoadOut;\n  -webkit-animation-name: _ngcontent-%COMP%_forwardRouteLoadOut;\n  animation-name: _ngcontent-%COMP%_forwardRouteLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route.reverse.animate[_ngcontent-%COMP%]:not(.closing) {\n  -moz-animation-name: reverseRouteLoadIn;\n  -ms-animation-name: reverseRouteLoadIn;\n  -o-animation-name: reverseRouteLoadIn;\n  -webkit-animation-name: _ngcontent-%COMP%_reverseRouteLoadIn;\n  animation-name: _ngcontent-%COMP%_reverseRouteLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route.reverse.animate.closing[_ngcontent-%COMP%] {\n  -moz-animation-name: reverseRouteLoadOut;\n  -ms-animation-name: reverseRouteLoadOut;\n  -o-animation-name: reverseRouteLoadOut;\n  -webkit-animation-name: _ngcontent-%COMP%_reverseRouteLoadOut;\n  animation-name: _ngcontent-%COMP%_reverseRouteLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout[_ngcontent-%COMP%]    > .routes[_ngcontent-%COMP%]    > .route[_ngcontent-%COMP%]:after {\n  content: "";\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: 10;\n  background-color: rgba(var(--color1-raw), 0.2);\n  -webkit-backdrop-filter: blur(0.1vw);\n  -moz-backdrop-filter: blur(0.1vw);\n  -o-backdrop-filter: blur(0.1vw);\n  -ms-backdrop-filter: blur(0.1vw);\n  backdrop-filter: blur(0.1vw);\n  opacity: 0;\n  pointer-events: none;\n  -moz-transition: opacity 0.1s linear;\n  -o-transition: opacity 0.1s linear;\n  -webkit-transition: opacity 0.1s linear;\n  transition: opacity 0.1s linear;\n}\n@-webkit-keyframes _ngcontent-%COMP%_modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-moz-keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-o-keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@keyframes _ngcontent-%COMP%_modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-webkit-keyframes _ngcontent-%COMP%_modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@-moz-keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@-o-keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@keyframes _ngcontent-%COMP%_modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n#itemizedPricing[_ngcontent-%COMP%] {\n  pointer-events: none;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: calc(var(--sideNav-layer) + 1);\n  opacity: 0;\n  background-color: rgba(var(--color2-raw), 0.4);\n  -webkit-backdrop-filter: blur(0.5vw);\n  -moz-backdrop-filter: blur(0.5vw);\n  -o-backdrop-filter: blur(0.5vw);\n  -ms-backdrop-filter: blur(0.5vw);\n  backdrop-filter: blur(0.5vw);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPricing[_ngcontent-%COMP%]    > itemized-pricing[_ngcontent-%COMP%] {\n  display: block;\n  position: fixed;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  background-color: var(--color2);\n  border: 0.1vw var(--color2Alt2) solid;\n  width: 40vw;\n  border-radius: 1vw;\n  z-index: calc(var(--sideNav-layer) + 2);\n  opacity: 0;\n  overflow: hidden;\n  box-shadow: 0 0.2vw 1vw rgba(var(--black-raw), 0.1);\n  -moz-animation-name: modalLoadIn;\n  -ms-animation-name: modalLoadIn;\n  -o-animation-name: modalLoadIn;\n  -webkit-animation-name: _ngcontent-%COMP%_modalLoadIn;\n  animation-name: _ngcontent-%COMP%_modalLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutCubic);\n  -ms-animation-timing-function: var(--easeInOutCubic);\n  -o-animation-timing-function: var(--easeInOutCubic);\n  -webkit-animation-timing-function: var(--easeInOutCubic);\n  animation-timing-function: var(--easeInOutCubic);\n  -moz-animation-duration: 0.2s;\n  -ms-animation-duration: 0.2s;\n  -o-animation-duration: 0.2s;\n  -webkit-animation-duration: 0.2s;\n  animation-duration: 0.2s;\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#itemizedPricing.active[_ngcontent-%COMP%] {\n  pointer-events: initial;\n}\n#itemizedPricing.active[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  opacity: 1;\n}\n#itemizedPricing.closing[_ngcontent-%COMP%]    > .bg[_ngcontent-%COMP%] {\n  opacity: 0;\n}\n#itemizedPricing.closing[_ngcontent-%COMP%]    > itemized-pricing[_ngcontent-%COMP%] {\n  -moz-animation-name: modalLoadOut;\n  -ms-animation-name: modalLoadOut;\n  -o-animation-name: modalLoadOut;\n  -webkit-animation-name: _ngcontent-%COMP%_modalLoadOut;\n  animation-name: _ngcontent-%COMP%_modalLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutCubic);\n  -ms-animation-timing-function: var(--easeInOutCubic);\n  -o-animation-timing-function: var(--easeInOutCubic);\n  -webkit-animation-timing-function: var(--easeInOutCubic);\n  animation-timing-function: var(--easeInOutCubic);\n  -moz-animation-duration: 0.2s;\n  -ms-animation-duration: 0.2s;\n  -o-animation-duration: 0.2s;\n  -webkit-animation-duration: 0.2s;\n  animation-duration: 0.2s;\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n/*# sourceMappingURL=layout.component.css.map */'] });
var PricingLayoutComponent = _PricingLayoutComponent;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(PricingLayoutComponent, [{
    type: Component,
    args: [{ standalone: false, template: '@if (appointment != null) {\n  <section id="pricingLayout" #componentElm>\n    <div class="routes">\n      @if (internalRoute?.active) {\n        <internal class="route {{internalRoute?.loadDirection}}"\n          [appointment]="appointment"\n          [class.animate]="internalRoute?.animating"\n          [class.closing]="internalRoute?.closing"\n          [class.rendered]="internalRoute?.rendered"\n        [route]="internalRoute"></internal>\n      }\n    </div>\n  </section>\n}\n\n<aside id="itemizedPricing" [class.active]="viewingItemizedPricing" [class.closing]="closingItemizedPricing">\n  <div class="bg"></div>\n  @if (viewingItemizedPricing) {\n    <itemized-pricing\n      [appointment]="appointment"\n    ></itemized-pricing>\n  }\n</aside>', styles: ['/* src/app/appointment/internal-pricing/components/layout/layout.component.scss */\n@-webkit-keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-moz-keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-o-keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@keyframes forwardRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-webkit-keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-moz-keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-o-keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@keyframes forwardRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-webkit-keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-moz-keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-o-keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@keyframes reverseRouteLoadIn {\n  0% {\n    -moz-transform: translateY(100%);\n    -ms-transform: translateY(100%);\n    -o-transform: translateY(100%);\n    -webkit-transform: translateY(100%);\n    transform: translateY(100%);\n  }\n  100% {\n    -moz-transform: translateY(0);\n    -ms-transform: translateY(0);\n    -o-transform: translateY(0);\n    -webkit-transform: translateY(0);\n    transform: translateY(0);\n  }\n}\n@-webkit-keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-moz-keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@-o-keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n@keyframes reverseRouteLoadOut {\n  0% {\n    -moz-transform: scale(1);\n    -ms-transform: scale(1);\n    -o-transform: scale(1);\n    -webkit-transform: scale(1);\n    transform: scale(1);\n    opacity: 1;\n  }\n  100% {\n    -moz-transform: scale(0.8);\n    -ms-transform: scale(0.8);\n    -o-transform: scale(0.8);\n    -webkit-transform: scale(0.8);\n    transform: scale(0.8);\n    opacity: 0;\n  }\n}\n#pricingLayout > .routes > .route {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  will-change: transform;\n}\n#pricingLayout > .routes > .route:not(.rendered):not(.animate) {\n  opacity: 0;\n}\n#pricingLayout > .routes > .route.forward.animate:not(.closing) {\n  -moz-animation-name: forwardRouteLoadIn;\n  -ms-animation-name: forwardRouteLoadIn;\n  -o-animation-name: forwardRouteLoadIn;\n  -webkit-animation-name: forwardRouteLoadIn;\n  animation-name: forwardRouteLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout > .routes > .route.forward.animate.closing {\n  -moz-animation-name: forwardRouteLoadOut;\n  -ms-animation-name: forwardRouteLoadOut;\n  -o-animation-name: forwardRouteLoadOut;\n  -webkit-animation-name: forwardRouteLoadOut;\n  animation-name: forwardRouteLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout > .routes > .route.reverse.animate:not(.closing) {\n  -moz-animation-name: reverseRouteLoadIn;\n  -ms-animation-name: reverseRouteLoadIn;\n  -o-animation-name: reverseRouteLoadIn;\n  -webkit-animation-name: reverseRouteLoadIn;\n  animation-name: reverseRouteLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout > .routes > .route.reverse.animate.closing {\n  -moz-animation-name: reverseRouteLoadOut;\n  -ms-animation-name: reverseRouteLoadOut;\n  -o-animation-name: reverseRouteLoadOut;\n  -webkit-animation-name: reverseRouteLoadOut;\n  animation-name: reverseRouteLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutQuad);\n  -ms-animation-timing-function: var(--easeInOutQuad);\n  -o-animation-timing-function: var(--easeInOutQuad);\n  -webkit-animation-timing-function: var(--easeInOutQuad);\n  animation-timing-function: var(--easeInOutQuad);\n  -moz-animation-duration: var(--routeTransition);\n  -ms-animation-duration: var(--routeTransition);\n  -o-animation-duration: var(--routeTransition);\n  -webkit-animation-duration: var(--routeTransition);\n  animation-duration: var(--routeTransition);\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#pricingLayout > .routes > .route:after {\n  content: "";\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: 10;\n  background-color: rgba(var(--color1-raw), 0.2);\n  -webkit-backdrop-filter: blur(0.1vw);\n  -moz-backdrop-filter: blur(0.1vw);\n  -o-backdrop-filter: blur(0.1vw);\n  -ms-backdrop-filter: blur(0.1vw);\n  backdrop-filter: blur(0.1vw);\n  opacity: 0;\n  pointer-events: none;\n  -moz-transition: opacity 0.1s linear;\n  -o-transition: opacity 0.1s linear;\n  -webkit-transition: opacity 0.1s linear;\n  transition: opacity 0.1s linear;\n}\n@-webkit-keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-moz-keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-o-keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@keyframes modalLoadIn {\n  0% {\n    opacity: 0;\n  }\n  100% {\n    opacity: 1;\n  }\n}\n@-webkit-keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@-moz-keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@-o-keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n@keyframes modalLoadOut {\n  0% {\n    opacity: 1;\n  }\n  100% {\n    opacity: 0;\n  }\n}\n#itemizedPricing {\n  pointer-events: none;\n}\n#itemizedPricing > .bg {\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  z-index: calc(var(--sideNav-layer) + 1);\n  opacity: 0;\n  background-color: rgba(var(--color2-raw), 0.4);\n  -webkit-backdrop-filter: blur(0.5vw);\n  -moz-backdrop-filter: blur(0.5vw);\n  -o-backdrop-filter: blur(0.5vw);\n  -ms-backdrop-filter: blur(0.5vw);\n  backdrop-filter: blur(0.5vw);\n  -moz-transition: opacity 0.2s linear;\n  -o-transition: opacity 0.2s linear;\n  -webkit-transition: opacity 0.2s linear;\n  transition: opacity 0.2s linear;\n}\n#itemizedPricing > itemized-pricing {\n  display: block;\n  position: fixed;\n  top: 50%;\n  left: 50%;\n  -moz-transform: translate(-50%, -50%);\n  -ms-transform: translate(-50%, -50%);\n  -o-transform: translate(-50%, -50%);\n  -webkit-transform: translate(-50%, -50%);\n  transform: translate(-50%, -50%);\n  background-color: var(--color2);\n  border: 0.1vw var(--color2Alt2) solid;\n  width: 40vw;\n  border-radius: 1vw;\n  z-index: calc(var(--sideNav-layer) + 2);\n  opacity: 0;\n  overflow: hidden;\n  box-shadow: 0 0.2vw 1vw rgba(var(--black-raw), 0.1);\n  -moz-animation-name: modalLoadIn;\n  -ms-animation-name: modalLoadIn;\n  -o-animation-name: modalLoadIn;\n  -webkit-animation-name: modalLoadIn;\n  animation-name: modalLoadIn;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutCubic);\n  -ms-animation-timing-function: var(--easeInOutCubic);\n  -o-animation-timing-function: var(--easeInOutCubic);\n  -webkit-animation-timing-function: var(--easeInOutCubic);\n  animation-timing-function: var(--easeInOutCubic);\n  -moz-animation-duration: 0.2s;\n  -ms-animation-duration: 0.2s;\n  -o-animation-duration: 0.2s;\n  -webkit-animation-duration: 0.2s;\n  animation-duration: 0.2s;\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n#itemizedPricing.active {\n  pointer-events: initial;\n}\n#itemizedPricing.active > .bg {\n  opacity: 1;\n}\n#itemizedPricing.closing > .bg {\n  opacity: 0;\n}\n#itemizedPricing.closing > itemized-pricing {\n  -moz-animation-name: modalLoadOut;\n  -ms-animation-name: modalLoadOut;\n  -o-animation-name: modalLoadOut;\n  -webkit-animation-name: modalLoadOut;\n  animation-name: modalLoadOut;\n  -moz-animation-iteration-count: 1;\n  -ms-animation-iteration-count: 1;\n  -o-animation-iteration-count: 1;\n  -webkit-animation-iteration-count: 1;\n  animation-iteration-count: 1;\n  -moz-animation-timing-function: var(--easeInOutCubic);\n  -ms-animation-timing-function: var(--easeInOutCubic);\n  -o-animation-timing-function: var(--easeInOutCubic);\n  -webkit-animation-timing-function: var(--easeInOutCubic);\n  animation-timing-function: var(--easeInOutCubic);\n  -moz-animation-duration: 0.2s;\n  -ms-animation-duration: 0.2s;\n  -o-animation-duration: 0.2s;\n  -webkit-animation-duration: 0.2s;\n  animation-duration: 0.2s;\n  -moz-animation-direction: normal;\n  -ms-animation-direction: normal;\n  -o-animation-direction: normal;\n  -webkit-animation-direction: normal;\n  animation-direction: normal;\n  -moz-animation-delay: 0s;\n  -ms-animation-delay: 0s;\n  -o-animation-delay: 0s;\n  -webkit-animation-delay: 0s;\n  animation-delay: 0s;\n  -moz-animation-fill-mode: forwards;\n  -ms-animation-fill-mode: forwards;\n  -o-animation-fill-mode: forwards;\n  -webkit-animation-fill-mode: forwards;\n  animation-fill-mode: forwards;\n}\n/*# sourceMappingURL=layout.component.css.map */\n'] }]
  }], () => [{ type: LocalAppointmentService }, { type: AppointmentPricingService }], { appointment: [{
    type: Input,
    args: ["appointment"]
  }], route: [{
    type: Input,
    args: ["route"]
  }], componentElm: [{
    type: ViewChild,
    args: ["componentElm"]
  }] });
})();
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && \u0275setClassDebugInfo(PricingLayoutComponent, { className: "PricingLayoutComponent" });
})();

// src/app/appointment/internal-pricing/internal-pricing.module.ts
var _InternalPricingModule = class _InternalPricingModule {
  constructor(injector) {
    this.injector = injector;
    this.ngDoBootstrap();
  }
  ngDoBootstrap() {
    const el = createCustomElement(PricingLayoutComponent, { injector: this.injector });
    customElements.define("appointment-internal-pricing", el);
  }
};
_InternalPricingModule.\u0275fac = function InternalPricingModule_Factory(__ngFactoryType__) {
  return new (__ngFactoryType__ || _InternalPricingModule)(\u0275\u0275inject(Injector));
};
_InternalPricingModule.\u0275mod = /* @__PURE__ */ \u0275\u0275defineNgModule({ type: _InternalPricingModule });
_InternalPricingModule.\u0275inj = /* @__PURE__ */ \u0275\u0275defineInjector({ providers: [
  AppointmentPricingService,
  InternalRouteService,
  provideHttpClient(withInterceptorsFromDi())
], imports: [
  UiModule,
  CommonModule,
  FormsModule,
  ReactiveFormsModule
] });
var InternalPricingModule = _InternalPricingModule;
(() => {
  (typeof ngDevMode === "undefined" || ngDevMode) && setClassMetadata(InternalPricingModule, [{
    type: NgModule,
    args: [{
      declarations: [
        PricingLayoutComponent,
        InternalPricingComponent,
        AttributesComponent,
        ItemizedComponent
      ],
      imports: [
        UiModule,
        CommonModule,
        FormsModule,
        ReactiveFormsModule
      ],
      providers: [
        AppointmentPricingService,
        InternalRouteService,
        provideHttpClient(withInterceptorsFromDi())
      ]
    }]
  }], () => [{ type: Injector }], null);
})();
export {
  InternalPricingModule
};
//# sourceMappingURL=chunk-6K3U7TWW.js.map
