@charset "UTF-8";

/* AI Jobs — the listing, brought onto the design system. RUN-1171.

   Scoped to `.px-aijobs`. Prefix `aij-`, verified free before use: no other stylesheet in
   resources/scss/** and no .vue selector owned `px-aijobs` or `aij-`.

   ⛔ SCOPE: this styles the page CHROME — the header, the tiles and the surface the table sits
   on. The table itself is `vue-good-table` and is deliberately left alone; the sibling facelift
   (`products.scss`, RUN-1157) did exactly the same and kept its table working. Restyling a
   third-party table's internals is a rewrite of working code, which the minimal-change policy
   forbids and which would take search, sorting and paging with it.

   ⚠️ LIGHT THEME ONLY, per CLAUDE.md. No `.dark-layout` block here by design. */

/* RUN-1466 (goals.md #26) — the token scope for the AI Jobs MODAL content: both wizards
   (`NewAiOptimization.vue`, `UpdateAiOptimization.vue`) and the approvals review
   (`PendingApprovals.vue`, and `ProductDetails.vue` inside its sidebar, which inherits it).

   🔑 It is declared here, at the TOP level of a stylesheet the blade loads on every page, and NOT
   inside `.px-aijobs` — BootstrapVue moves a `<b-modal>` to `<body>`, so nothing inside one descends
   from the listing's wrapper and every `var(--…)` in there would resolve to nothing with the build
   still green (`verify-modal-tokens`, RUN-1107). The class goes on each component's own root element,
   which travels with the modal.

   ⛔ The components' own rules stay in their `<style scoped>` blocks — moving 300 lines of shipped CSS
   into this file is a rewrite, not a port. What changed there is the VALUES: Tailwind-default literals
   became the design's tokens, against md_files/design/ai-wizard/. */

.px-aiwizard {
  --px-white: #ffffff;
  --px-navy-700: #28374F;
  --shadow-overlay: 0 12px 32px rgba(16, 24, 40, 0.24);
  --type-mono: var(--weight-regular) var(--text-sm) / 1.5 var(--font-mono);
  --px-grey-25: #fafafc;
  --px-grey-50: #f8f8f8;
  --px-grey-75: #f5f5f7;
  --px-grey-100: #f3f4f7;
  --px-grey-150: #edeef1;
  --px-grey-200: #ebe9f1;
  --px-grey-250: #e8e8ec;
  --px-grey-300: #d8d6de;
  --px-grey-400: #bbc1ca;
  --px-grey-450: #b9b9c3;
  --px-grey-500: #737a87;
  --px-grey-600: #6e6b7b;
  --px-grey-700: #5e5873;
  --px-grey-800: #4b465c;
  --px-grey-900: #2f2b3d;
  --px-ink: #151b22;
  --px-green-50: #e9f9ee;
  --px-green-100: #dcfce8;
  --px-green-150: #ecfdef;
  --px-green-200: #b6f0cc;
  --px-green-500: #28c76f;
  --px-green-550: #2bb669;
  --px-green-600: #22A44E;
  --px-green-700: #16a34a;
  --px-green-800: #127c3a;
  --px-green-900: #17a851;
  --px-blue-50: #e8eefc;
  --px-blue-100: #c5d0f6;
  --px-blue-400: #60a5fa;
  --px-blue-500: #1e4ed8;
  --px-blue-600: #0b57a6;
  --px-blue-700: var(--px-blue-600);
  --px-violet-50: #eeedfd;
  --px-violet-100: #e2e1f5;
  --px-violet-500: #7367f0;
  --px-violet-600: #5b54e8;
  --px-cyan-500: #00cfe8;
  --px-orange-400: #f28058;
  --px-rust-600: #b4451e;
  --px-navy-800: #1f2e47;
  --px-red-50: #fff6f4;
  --px-red-100: #fcd7d6;
  --px-red-500: #ea5455;
  --px-red-600: #cb4744;
  --px-amber-50: #fffbf0;
  --px-amber-200: #f1dfbd;
  --px-amber-500: #ff9f43;
  --px-amber-600: #d49838;
  --px-amber-700: #b45309;
  --price-cheapest: var(--px-green-900);
  --price-below: var(--px-green-500);
  --price-parity: var(--px-amber-600);
  --price-above: var(--px-orange-400);
  --price-expensive: var(--px-red-600);
  --text-heading: var(--px-grey-700);
  --text-body: var(--px-grey-600);
  --text-muted: var(--px-grey-500);
  --text-faint: var(--px-grey-450);
  --text-link: var(--px-blue-500);
  --text-code: var(--px-violet-600);
  --text-strong: var(--px-ink);
  --px-navy-900: #16233a;
  --surface-page: var(--px-grey-75);
  --surface-card: var(--px-white);
  --surface-subtle: var(--px-grey-100);
  --surface-sunken: var(--px-grey-50);
  --surface-inverse: var(--px-ink);
  --surface-overlay: rgba(21, 27, 34, 0.45);
  --border-subtle: var(--px-grey-150);
  --border-default: var(--px-grey-250);
  --border-strong: var(--px-grey-300);
  --action-primary: var(--px-green-600);
  --action-primary-strong: var(--px-green-700);
  --action-quiet-bg: var(--px-white);
  --action-quiet-border: var(--px-grey-300);
  --action-accent: var(--px-violet-500);
  --action-accent-hover: var(--px-violet-600);
  --action-danger: var(--px-red-500);
  --action-danger-hover: var(--px-red-600);
  --border-focus: var(--px-violet-500);
  --status-success-fg: var(--px-green-700);
  --status-success-bg: var(--px-green-50);
  --status-danger-fg: var(--px-red-600);
  --status-danger-bg: var(--px-red-50);
  --status-warning-fg: var(--px-amber-600);
  --status-warning-bg: var(--px-amber-50);
  --status-warning-border: var(--px-amber-200);
  --status-info-fg: var(--px-blue-500);
  --status-info-bg: var(--px-blue-50);
  --status-neutral-fg: var(--px-grey-500);
  --status-neutral-bg: var(--px-grey-100);
  --status-live: var(--px-green-900);
  --status-paused: var(--px-grey-400);
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 10px;
  --space-6: 12px;
  --space-7: 14px;
  --space-8: 16px;
  --space-9: 20px;
  --space-10: 24px;
  --space-11: 28px;
  --space-12: 32px;
  --space-14: 40px;
  --space-16: 48px;
  --card-padding: var(--space-10);
  --table-cell-x: var(--space-10);
  --table-cell-y: var(--space-9);
  --control-height-sm: 32px;
  --control-height-md: 40px;
  --control-height-lg: 46px;
  --control-padding-x: 18px;
  --stack-loose: var(--space-10);
  --font-core: "Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;
  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 15px;
  --text-lg: 16px;
  --text-xl: 18px;
  --text-2xl: 20px;
  --text-3xl: 24px;
  --text-4xl: 28px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.45;
  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-caps: 0.08em;
  --tracking-normal: 0;
  --type-page-title: var(--weight-semibold) var(--text-4xl)/var(--leading-tight) var(--font-core);
  --type-section-title: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-core);
  --type-card-title: var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-core);
  --type-body: var(--weight-regular) var(--text-base)/var(--leading-normal) var(--font-core);
  --type-body-md: var(--weight-regular) var(--text-md)/var(--leading-normal) var(--font-core);
  --type-label: var(--weight-medium) var(--text-base)/var(--leading-snug) var(--font-core);
  --type-table-head: var(--weight-semibold) var(--text-sm)/1.2 var(--font-core);
  --type-caption: var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-core);
  --type-eyebrow: var(--weight-semibold) var(--text-xs)/1.2 var(--font-core);
  --type-code: var(--weight-regular) var(--text-sm)/1.5 var(--font-mono);
  --type-metric: var(--weight-semibold) var(--text-4xl)/1.05 var(--font-core);
  --radius-xs: 4px;
  --radius-sm: 5px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-2xl: 14px;
  --radius-pill: 999px;
  --shadow-hairline: 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-card: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-raised: 0 4px 12px rgba(16, 24, 40, 0.07), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-dropdown: 0 8px 24px rgba(16, 24, 40, 0.14);
  --shadow-modal: 0 24px 64px rgba(16, 24, 40, 0.22), 0 2px 8px rgba(16, 24, 40, 0.1);
  --ring-focus: 0 0 0 3px rgba(115, 103, 240, 0.22);
  --ring-focus-green: 0 0 0 3px rgba(34, 164, 78, 0.22);
  --duration-fast: 140ms;
  --duration-base: 200ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --transition-control: background-color var(--duration-fast) var(--ease-standard),
      border-color var(--duration-fast) var(--ease-standard),
      color var(--duration-fast) var(--ease-standard),
      box-shadow var(--duration-fast) var(--ease-standard);
  --transition-surface: background-color var(--duration-base) var(--ease-standard);
  /* ── RUN-1519: the parts that still read "raw" — in BOTH wizards, so they live here and not in either file's
     scoped block (verify-ai-jobs-screen pins the two scoped blocks identical, AI-19). The vocabulary is the rule
     builder's (rule-builder.scss): a remove disc, a join pill, a segmented AND / OR, the white Add pill. ───── */
  /* every BootstrapVue form-group label in the wizard reads like `.ai-wizard__field-label` (13px, 600, heading ink) —
     "Lines truncate", "Product field", "Condition", "Value" were the theme's small grey label beside it */
  /* the rule builder's `px-rb__add`, value for value */
  /* the chosen service: its description and its price as a tag, not an alert box */
  /* the output clean-up: one switch per row, like the review toggle below it */
}

.px-aiwizard .aiw-lede {
  font: var(--type-body-md);
  color: var(--text-muted);
}

[dir] .px-aiwizard .aiw-lede {
  margin: 0 0 var(--space-7);
}

.px-aiwizard .form-group > label,
.px-aiwizard .form-group > legend.col-form-label,
.px-aiwizard .form-group > div > legend.col-form-label {
  font: var(--type-caption);
  font-size: 13px;
  font-weight: var(--weight-semibold);
  color: var(--text-heading);
}

[dir] .px-aiwizard .form-group > label, [dir] .px-aiwizard .form-group > legend.col-form-label, [dir] .px-aiwizard .form-group > div > legend.col-form-label {
  margin-bottom: 6px;
  padding-bottom: 0;
}

.px-aiwizard .aiw-seg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 2px;
}

[dir] .px-aiwizard .aiw-seg {
  padding: 3px;
  margin-bottom: var(--space-9);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-pill);
  background: var(--px-grey-75);
}

.px-aiwizard .aiw-seg__opt {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 6px;
  font: var(--type-label);
  font-weight: var(--weight-semibold);
  color: var(--text-muted);
}

[dir] .px-aiwizard .aiw-seg__opt {
  padding: 5px 14px;
  border: none;
  border-radius: var(--radius-pill);
  background: transparent;
  cursor: pointer;
}

.px-aiwizard .aiw-seg__opt small {
  font: var(--type-caption);
  color: inherit;
  opacity: 0.8;
}

.px-aiwizard .aiw-seg__opt.is-on {
  color: var(--text-strong);
  -webkit-box-shadow: var(--shadow-hairline);
}

[dir] .px-aiwizard .aiw-seg__opt.is-on {
  background: #fff;
          -webkit-box-shadow: var(--shadow-hairline);
                  box-shadow: var(--shadow-hairline);
  cursor: default;
}

.px-aiwizard .aiw-seg__opt:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 1px;
}

.px-aiwizard .aiw-cond {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: var(--space-7);
}

[dir] .px-aiwizard .aiw-cond {
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl);
  background: #fff;
}

[dir=ltr] .px-aiwizard .aiw-cond {
  padding: var(--space-8) var(--space-9) var(--space-6) var(--space-8);
}

[dir=rtl] .px-aiwizard .aiw-cond {
  padding: var(--space-8) var(--space-8) var(--space-6) var(--space-9);
}

[dir] .px-aiwizard .aiw-cond:hover {
  border-color: var(--border-default);
}

.px-aiwizard .aiw-cond__remove {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 26px;
  height: 26px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  color: var(--px-red-600);
}

[dir] .px-aiwizard .aiw-cond__remove {
  margin-top: 29px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: var(--px-red-50);
  cursor: pointer;
}

[dir] .px-aiwizard .aiw-cond__remove:hover {
  background: var(--px-red-100);
}

.px-aiwizard .aiw-cond__fields {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr));
  gap: var(--space-7);
  min-width: 0;
}

.px-aiwizard .aiw-cond__field {
  min-width: 0;
}

[dir] .px-aiwizard .aiw-cond__field {
  margin-bottom: var(--space-4);
}

.px-aiwizard .aiw-join {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 30px;
}

[dir=ltr] .px-aiwizard .aiw-join {
  padding-left: 21px;
}

[dir=rtl] .px-aiwizard .aiw-join {
  padding-right: 21px;
}

.px-aiwizard .aiw-join::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
}

[dir] .px-aiwizard .aiw-join::before {
  background: var(--border-default);
}

[dir=ltr] .px-aiwizard .aiw-join::before {
  left: 34px;
}

[dir=rtl] .px-aiwizard .aiw-join::before {
  right: 34px;
}

.px-aiwizard .aiw-join span {
  position: relative;
  font: var(--type-caption);
  font-weight: var(--weight-bold, 700);
  letter-spacing: var(--tracking-caps);
  color: var(--text-muted);
}

[dir] .px-aiwizard .aiw-join span {
  padding: 1px 10px;
  border-radius: var(--radius-pill);
  background: var(--px-grey-75);
  border: 1px solid var(--border-default);
}

.px-aiwizard .aiw-rules__none {
  font: var(--type-body-md);
  color: var(--text-faint);
}

[dir] .px-aiwizard .aiw-rules__none {
  margin: 0;
  padding: var(--space-9);
  border: 1px dashed var(--border-default);
  border-radius: var(--radius-xl);
  text-align: center;
}

.px-aiwizard .aiw-rules__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

[dir] .px-aiwizard .aiw-rules__foot {
  padding-top: var(--space-9);
}

.px-aiwizard .aiw-add {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-5);
  -webkit-box-shadow: 0 8px 20px #ddd;
  font: var(--type-body);
  font-weight: 500;
  white-space: nowrap;
  color: #777;
}

[dir] .px-aiwizard .aiw-add {
  padding: 8px 20px;
  border: 1px solid #ddd;
  border-radius: 99px;
  background: #fff;
          -webkit-box-shadow: 0 8px 20px #ddd;
                  box-shadow: 0 8px 20px #ddd;
  cursor: pointer;
}

.px-aiwizard .aiw-add:hover {
  -webkit-box-shadow: 0 8px 20px #bbb;
}

[dir] .px-aiwizard .aiw-add:hover {
          -webkit-box-shadow: 0 8px 20px #bbb;
                  box-shadow: 0 8px 20px #bbb;
}

.px-aiwizard .aiw-add__dot {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 20px;
  height: 20px;
  color: #fff;
}

[dir] .px-aiwizard .aiw-add__dot {
  border-radius: 99px;
  background: #0053b8;
}

[dir=ltr] .px-aiwizard .aiw-add__dot {
  -webkit-transform: scale(1.2) translateX(-5px);
  transform: scale(1.2) translateX(-5px);
}

[dir=rtl] .px-aiwizard .aiw-add__dot {
  -webkit-transform: scale(1.2) translateX(5px);
          transform: scale(1.2) translateX(5px);
}

.px-aiwizard .aiw-service {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--space-5);
  font: var(--type-body-md);
  color: var(--text-body);
}

[dir] .px-aiwizard .aiw-service {
  margin-top: var(--space-6);
  padding: var(--space-7) var(--space-8);
  border: 1px solid var(--px-violet-100);
  border-radius: var(--radius-lg);
  background: var(--px-violet-50);
}

[dir] .px-aiwizard .aiw-service__desc :last-child {
  margin-bottom: 0;
}

.px-aiwizard .aiw-service__price {
  -ms-flex-item-align: start;
      align-self: flex-start;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
  color: var(--px-violet-600);
}

[dir] .px-aiwizard .aiw-service__price {
  padding: 2px 10px;
  border-radius: var(--radius-pill);
  background: #fff;
  border: 1px solid var(--px-violet-100);
}

.px-aiwizard .aiw-clean {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
}

[dir] .px-aiwizard .aiw-clean {
  margin-bottom: var(--space-8);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-lg);
}

.px-aiwizard .aiw-clean__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: var(--space-6);
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
  text-transform: uppercase;
  letter-spacing: var(--tracking-caps);
  color: var(--text-faint);
}

[dir] .px-aiwizard .aiw-clean__title {
  padding: var(--space-6) var(--space-8);
  background: var(--px-grey-25);
  border-bottom: 1px solid var(--border-subtle);
}

.px-aiwizard .aiw-clean__title small {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 400;
}

.px-aiwizard .aiw-clean__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: var(--space-8);
}

[dir] .px-aiwizard .aiw-clean__row {
  padding: var(--space-6) var(--space-8);
}

[dir] .px-aiwizard .aiw-clean__row + .px-aiwizard .aiw-clean__row {
  border-top: 1px solid var(--border-subtle);
}

[dir] .px-aiwizard .aiw-clean__row .custom-switch {
  margin: 0;
}

.px-aiwizard .aiw-clean__label {
  font: var(--type-body-md);
  color: var(--text-body);
}

[dir] .px-aiwizard .aiw-clean__label {
  margin: 0;
}

@media (max-width: 575.98px) {
  .px-aiwizard {
    /* the remove disc moves to the row's corner so the three fields get the whole width */
  }

  .px-aiwizard .aiw-cond {
    position: relative;
  }

  [dir] .px-aiwizard .aiw-cond {
    padding: var(--space-7);
  }

  [dir=ltr] .px-aiwizard .aiw-cond {
    padding-right: 44px;
  }

  [dir=rtl] .px-aiwizard .aiw-cond {
    padding-left: 44px;
  }

  .px-aiwizard .aiw-cond__remove {
    position: absolute;
    top: var(--space-6);
  }

  [dir] .px-aiwizard .aiw-cond__remove {
    margin: 0;
  }

  [dir=ltr] .px-aiwizard .aiw-cond__remove {
    right: var(--space-6);
  }

  [dir=rtl] .px-aiwizard .aiw-cond__remove {
    left: var(--space-6);
  }

  .px-aiwizard .aiw-seg__opt small {
    display: none;
  }
}

.px-aijobs {
  --px-white: #ffffff;
  --px-navy-700: #28374F;
  --shadow-overlay: 0 12px 32px rgba(16, 24, 40, 0.24);
  --type-mono: var(--weight-regular) var(--text-sm) / 1.5 var(--font-mono);
  --px-grey-25: #fafafc;
  --px-grey-50: #f8f8f8;
  --px-grey-75: #f5f5f7;
  --px-grey-100: #f3f4f7;
  --px-grey-150: #edeef1;
  --px-grey-200: #ebe9f1;
  --px-grey-250: #e8e8ec;
  --px-grey-300: #d8d6de;
  --px-grey-400: #bbc1ca;
  --px-grey-450: #b9b9c3;
  --px-grey-500: #737a87;
  --px-grey-600: #6e6b7b;
  --px-grey-700: #5e5873;
  --px-grey-800: #4b465c;
  --px-grey-900: #2f2b3d;
  --px-ink: #151b22;
  --px-green-50: #e9f9ee;
  --px-green-100: #dcfce8;
  --px-green-150: #ecfdef;
  --px-green-200: #b6f0cc;
  --px-green-500: #28c76f;
  --px-green-550: #2bb669;
  --px-green-600: #22A44E;
  --px-green-700: #16a34a;
  --px-green-800: #127c3a;
  --px-green-900: #17a851;
  --px-blue-50: #e8eefc;
  --px-blue-100: #c5d0f6;
  --px-blue-400: #60a5fa;
  --px-blue-500: #1e4ed8;
  --px-blue-600: #0b57a6;
  --px-blue-700: var(--px-blue-600);
  --px-violet-50: #eeedfd;
  --px-violet-100: #e2e1f5;
  --px-violet-500: #7367f0;
  --px-violet-600: #5b54e8;
  --px-cyan-500: #00cfe8;
  --px-orange-400: #f28058;
  --px-rust-600: #b4451e;
  --px-navy-800: #1f2e47;
  --px-red-50: #fff6f4;
  --px-red-100: #fcd7d6;
  --px-red-500: #ea5455;
  --px-red-600: #cb4744;
  --px-amber-50: #fffbf0;
  --px-amber-200: #f1dfbd;
  --px-amber-500: #ff9f43;
  --px-amber-600: #d49838;
  --px-amber-700: #b45309;
  --price-cheapest: var(--px-green-900);
  --price-below: var(--px-green-500);
  --price-parity: var(--px-amber-600);
  --price-above: var(--px-orange-400);
  --price-expensive: var(--px-red-600);
  --text-heading: var(--px-grey-700);
  --text-body: var(--px-grey-600);
  --text-muted: var(--px-grey-500);
  --text-faint: var(--px-grey-450);
  --text-link: var(--px-blue-500);
  --text-code: var(--px-violet-600);
  --text-strong: var(--px-ink);
  --px-navy-900: #16233a;
  --surface-page: var(--px-grey-75);
  --surface-card: var(--px-white);
  --surface-subtle: var(--px-grey-100);
  --surface-sunken: var(--px-grey-50);
  --surface-inverse: var(--px-ink);
  --surface-overlay: rgba(21, 27, 34, 0.45);
  --border-subtle: var(--px-grey-150);
  --border-default: var(--px-grey-250);
  --border-strong: var(--px-grey-300);
  --action-primary: var(--px-green-600);
  --action-primary-strong: var(--px-green-700);
  --action-quiet-bg: var(--px-white);
  --action-quiet-border: var(--px-grey-300);
  --action-accent: var(--px-violet-500);
  --action-accent-hover: var(--px-violet-600);
  --action-danger: var(--px-red-500);
  --action-danger-hover: var(--px-red-600);
  --border-focus: var(--px-violet-500);
  --status-success-fg: var(--px-green-700);
  --status-success-bg: var(--px-green-50);
  --status-danger-fg: var(--px-red-600);
  --status-danger-bg: var(--px-red-50);
  --status-warning-fg: var(--px-amber-600);
  --status-warning-bg: var(--px-amber-50);
  --status-warning-border: var(--px-amber-200);
  --status-info-fg: var(--px-blue-500);
  --status-info-bg: var(--px-blue-50);
  --status-neutral-fg: var(--px-grey-500);
  --status-neutral-bg: var(--px-grey-100);
  --status-live: var(--px-green-900);
  --status-paused: var(--px-grey-400);
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 10px;
  --space-6: 12px;
  --space-7: 14px;
  --space-8: 16px;
  --space-9: 20px;
  --space-10: 24px;
  --space-11: 28px;
  --space-12: 32px;
  --space-14: 40px;
  --space-16: 48px;
  --card-padding: var(--space-10);
  --table-cell-x: var(--space-10);
  --table-cell-y: var(--space-9);
  --control-height-sm: 32px;
  --control-height-md: 40px;
  --control-height-lg: 46px;
  --control-padding-x: 18px;
  --stack-loose: var(--space-10);
  --font-core: "Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;
  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 15px;
  --text-lg: 16px;
  --text-xl: 18px;
  --text-2xl: 20px;
  --text-3xl: 24px;
  --text-4xl: 28px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.45;
  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-caps: 0.08em;
  --tracking-normal: 0;
  --type-page-title: var(--weight-semibold) var(--text-4xl)/var(--leading-tight) var(--font-core);
  --type-section-title: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-core);
  --type-card-title: var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-core);
  --type-body: var(--weight-regular) var(--text-base)/var(--leading-normal) var(--font-core);
  --type-body-md: var(--weight-regular) var(--text-md)/var(--leading-normal) var(--font-core);
  --type-label: var(--weight-medium) var(--text-base)/var(--leading-snug) var(--font-core);
  --type-table-head: var(--weight-semibold) var(--text-sm)/1.2 var(--font-core);
  --type-caption: var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-core);
  --type-eyebrow: var(--weight-semibold) var(--text-xs)/1.2 var(--font-core);
  --type-code: var(--weight-regular) var(--text-sm)/1.5 var(--font-mono);
  --type-metric: var(--weight-semibold) var(--text-4xl)/1.05 var(--font-core);
  --radius-xs: 4px;
  --radius-sm: 5px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-2xl: 14px;
  --radius-pill: 999px;
  --shadow-hairline: 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-card: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-raised: 0 4px 12px rgba(16, 24, 40, 0.07), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-dropdown: 0 8px 24px rgba(16, 24, 40, 0.14);
  --shadow-modal: 0 24px 64px rgba(16, 24, 40, 0.22), 0 2px 8px rgba(16, 24, 40, 0.1);
  --ring-focus: 0 0 0 3px rgba(115, 103, 240, 0.22);
  --ring-focus-green: 0 0 0 3px rgba(34, 164, 78, 0.22);
  --duration-fast: 140ms;
  --duration-base: 200ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --transition-control: background-color var(--duration-fast) var(--ease-standard),
      border-color var(--duration-fast) var(--ease-standard),
      color var(--duration-fast) var(--ease-standard),
      box-shadow var(--duration-fast) var(--ease-standard);
  --transition-surface: background-color var(--duration-base) var(--ease-standard);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--space-10);
  color: var(--text-body);
  /* ── header ─────────────────────────────────────────────────────────── */
  /* ── tiles ──────────────────────────────────────────────────────────── */
  /* ── the surface the existing table sits on ─────────────────────────── */
  /* ── RUN-1519: the listing on Channel Feeds' pattern (`cf-table`, `cf-note`, `cf-building`, `cf-empty`) ──────
     The panel keeps RUN-1466's surface; what sits on it is now the design's own table instead of vue-good-table's
     skin. Values are channel-feeds.scss's, so the two listings read as one product. */
  /* The page's three blocks sit inside ONE child of the flex root, so the root's gap never reached them and the
     tiles touched the card (measured: 0px between them). */
  /* the same rows as cards — shown only below 992px */
  /* ── RUN-1519: the empty state — Channel Feeds' `cf-empty`, with what a job can do ─────────────── */
  /* ── RUN-1519: loading — the page's own shape ───────────────────────────────────────────────── */
  /* ── responsive — RUN-1416 (Phase 5c, plan §5): this sheet had no rule at any width ──────────────
     Fixed at the screen's own container, per productxl-responsive.scss §3 ("wide content must be fixed
     at its own container, not masked globally"). The table is NOT touched: vue-good-table's own
     `.vgt-responsive` already scrolls it sideways in its container (AI-29, index.vue's style block). */
}

.px-aijobs .aij-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: var(--space-8);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.px-aijobs .aij-head__title {
  font: var(--type-page-title);
  color: var(--text-strong);
}

[dir] .px-aijobs .aij-head__title {
  margin: 0 0 var(--space-4);
}

.px-aijobs .aij-head__lede {
  max-width: 78ch;
  font: var(--type-body-md);
  color: var(--text-muted);
  text-wrap: pretty;
}

[dir] .px-aijobs .aij-head__lede {
  margin: 0;
}

.px-aijobs .aij-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(215px, 1fr));
  /* RUN-1416 (Phase 6): four tiles or two per row, keyed to the STRIP's own width, never 3 + 1. auto-fit at 215px
     orphans the fourth tile whenever the strip is 677–907px wide; the lg rule below catches that under 992px, but
     with the menu expanded at 1200–1223px the strip is 884–907px and the orphan came back. The track minimum is a
     width switch: clamp()'s middle term is hugely positive below a 908px strip and hugely negative above it, so at
     908px or more (four 215px tiles and three 16px gaps — where the line above fits four) a track may shrink to a
     quarter of the strip and the row holds all four; below it a track needs half, so the row holds two. × 100000,
     not the usual × 999: the ramp between the two must be narrower than a layout unit (1/64px) — at × 999 a
     907.75px strip still drew 3 + 1 (measured on a replica). The −16px and −12px leave room for three 16px gaps (or
     the phone's 12px) and sub-pixel rounding — literals, not tokens: a var() that failed to resolve would void the
     whole declaration (grid-template-columns: none), not fall back to the line above.
     ⛔ Not an @container query: laravel-mix 5 parses every .sass() output with resolve-url-loader's rework engine,
     which cannot parse that at-rule (measured: it throws on the first rule nested in it — price-sync.scss records
     the same). The line above stays as the fallback for a browser without clamp(). */
  grid-template-columns: repeat(auto-fit, minmax(clamp(calc(25% - 16px), calc((908px - 100%) * 100000), calc(50% - 12px)), 1fr));
  gap: var(--space-8);
}

.px-aijobs .aij-tile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--space-4);
  -webkit-box-shadow: var(--shadow-hairline);
  min-width: 0;
}

[dir] .px-aijobs .aij-tile {
  padding: var(--space-8);
  background: var(--surface-card);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl);
          -webkit-box-shadow: var(--shadow-hairline);
                  box-shadow: var(--shadow-hairline);
}

.px-aijobs .aij-tile__label {
  font: var(--type-caption);
  color: var(--text-faint);
}

.px-aijobs .aij-tile__value {
  font: var(--type-section-title);
  color: var(--text-strong);
  font-variant-numeric: tabular-nums;
  /* Semantic colour only where a judgement exists. "AI jobs" and "Active" are neutral
     facts; a running job and a waiting approval are states the user may want to act on. */
}

.px-aijobs .aij-tile__value--busy {
  color: var(--px-blue-600);
}

.px-aijobs .aij-tile__value--wait {
  color: var(--px-amber-600);
}

.px-aijobs .aij-tile__sub {
  font: var(--type-caption);
  color: var(--text-muted);
  text-wrap: pretty;
}

.px-aijobs .aij-panel {
  -webkit-box-shadow: var(--shadow-hairline);
}

[dir] .px-aijobs .aij-panel {
  background: var(--surface-card);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl);
          -webkit-box-shadow: var(--shadow-hairline);
                  box-shadow: var(--shadow-hairline);
  padding: var(--space-8);
}

[dir] .px-aijobs .aij-head {
  margin-bottom: var(--space-9);
}

[dir] .px-aijobs .aij-head + .aij-tiles {
  margin-bottom: var(--space-10);
}

.px-aijobs .aij-jobs {
  -webkit-box-shadow: var(--shadow-card);
}

[dir] .px-aijobs .aij-jobs {
  padding: 0;
          -webkit-box-shadow: var(--shadow-card);
                  box-shadow: var(--shadow-card);
  border-color: var(--border-default);
  border-radius: var(--radius-2xl);
}

.px-aijobs .aij-jobs__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.px-aijobs .aij-jobs__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: var(--space-8);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

[dir] .px-aijobs .aij-jobs__head {
  padding: var(--space-9) var(--space-10);
  border-bottom: 1px solid var(--border-subtle);
}

.px-aijobs .aij-jobs__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-5);
}

.px-aijobs .aij-jobs__title {
  font: var(--type-section-title);
  color: var(--text-strong);
}

.px-aijobs .aij-count {
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
  color: var(--text-muted);
}

[dir] .px-aijobs .aij-count {
  padding: 1px 8px;
  border-radius: var(--radius-pill);
  background: var(--px-grey-75);
  border: 1px solid var(--border-subtle);
}

.px-aijobs .aij-search {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 300px;
          flex: 0 1 300px;
  min-width: 0;
}

[dir] .px-aijobs .aij-search {
  margin: 0;
}

.px-aijobs .aij-search__icon {
  position: absolute;
  color: var(--text-faint);
  pointer-events: none;
}

[dir=ltr] .px-aijobs .aij-search__icon {
  left: 11px;
}

[dir=rtl] .px-aijobs .aij-search__icon {
  right: 11px;
}

.px-aijobs .aij-search__input {
  width: 100%;
  height: var(--control-height-sm);
  font: var(--type-body-md);
  color: var(--text-body);
  outline: none;
}

[dir] .px-aijobs .aij-search__input {
  background: #fff;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
}

[dir=ltr] .px-aijobs .aij-search__input {
  padding: 0 var(--space-7) 0 34px;
}

[dir=rtl] .px-aijobs .aij-search__input {
  padding: 0 34px 0 var(--space-7);
}

.px-aijobs .aij-search__input::-webkit-input-placeholder {
  color: var(--text-faint);
}

.px-aijobs .aij-search__input::-moz-placeholder {
  color: var(--text-faint);
}

.px-aijobs .aij-search__input:-ms-input-placeholder {
  color: var(--text-faint);
}

.px-aijobs .aij-search__input::-ms-input-placeholder {
  color: var(--text-faint);
}

.px-aijobs .aij-search__input::placeholder {
  color: var(--text-faint);
}

.px-aijobs .aij-search__input:focus {
  -webkit-box-shadow: 0 0 0 3px var(--px-blue-50);
}

[dir] .px-aijobs .aij-search__input:focus {
  border-color: var(--px-blue-500);
          -webkit-box-shadow: 0 0 0 3px var(--px-blue-50);
                  box-shadow: 0 0 0 3px var(--px-blue-50);
}

.px-aijobs .aij-nomatch {
  font: var(--type-body-md);
  color: var(--text-muted);
}

[dir] .px-aijobs .aij-nomatch {
  margin: 0;
  padding: var(--space-12) var(--space-10);
  text-align: center;
}

.px-aijobs .aij-link {
  font: inherit;
  font-weight: var(--weight-semibold);
  color: var(--text-link);
}

[dir] .px-aijobs .aij-link {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

.px-aijobs .aij-link:hover {
  text-decoration: underline;
}

.px-aijobs .aij-tablewrap {
  overflow-x: auto;
}

[dir] .px-aijobs .aij-tablewrap {
  padding: var(--space-6) var(--space-10) 0;
}

.px-aijobs .aij-table {
  width: 100%;
  table-layout: auto;
  border-collapse: separate;
  border-spacing: 0;
}

.px-aijobs .aij-table th {
  white-space: nowrap;
  font: var(--type-table-head);
  text-transform: uppercase;
  letter-spacing: var(--tracking-caps);
  color: var(--text-faint);
}

[dir] .px-aijobs .aij-table th {
  padding: var(--space-6) var(--space-7);
  border-bottom: 1px solid var(--border-subtle);
}

[dir=ltr] .px-aijobs .aij-table th {
  text-align: left;
}

[dir=rtl] .px-aijobs .aij-table th {
  text-align: right;
}

.px-aijobs .aij-table td {
  font: var(--type-body);
  color: var(--text-body);
  vertical-align: middle;
}

[dir] .px-aijobs .aij-table td {
  padding: var(--space-7);
  border-bottom: 1px solid var(--border-subtle);
}

[dir] .px-aijobs .aij-table tr:last-child td {
  border-bottom: 0;
}

[dir] .px-aijobs .aij-table tbody tr:hover td {
  background: var(--px-grey-25);
}

[dir] .px-aijobs .aij-table .custom-switch {
  margin: 0;
}

.px-aijobs .aij-sort {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  color: inherit;
}

[dir] .px-aijobs .aij-sort {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

.px-aijobs .aij-sort:hover,
.px-aijobs .aij-sort.is-on {
  color: var(--text-strong);
}

.px-aijobs .aij-name {
  display: block;
  min-width: 180px;
  font: var(--type-label);
  font-weight: var(--weight-semibold);
  color: var(--text-strong);
  text-wrap: pretty;
  overflow-wrap: anywhere;
}

.px-aijobs .aij-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--space-4) var(--space-5);
}

[dir] .px-aijobs .aij-meta {
  margin-top: 4px;
}

.px-aijobs .aij-chip {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  color: var(--px-violet-600);
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
}

[dir] .px-aijobs .aij-chip {
  padding: 1px 8px;
  border-radius: var(--radius-pill);
  background: var(--px-violet-50);
}

.px-aijobs .aij-id {
  font: var(--type-caption);
  font-variant-numeric: tabular-nums;
  color: var(--text-faint);
}

[dir] .px-aijobs .aij-id {
  padding: 0;
  border: none;
  background: none;
  cursor: default;
}

[dir] .px-aijobs .aij-id[type=button] {
  cursor: pointer;
}

.px-aijobs .aij-id[type=button]:hover,
.px-aijobs .aij-id[type=button].is-on {
  color: var(--text-strong);
}

.px-aijobs .aij-muted {
  color: var(--text-faint);
}

.px-aijobs .aij-note {
  display: block;
  max-width: 420px;
  font: var(--type-caption);
  line-height: 1.45;
  color: var(--text-muted);
  overflow-wrap: anywhere;
}

[dir] .px-aijobs .aij-note {
  padding: var(--space-5) var(--space-6);
  border-radius: var(--radius-md);
  background: var(--px-grey-75);
  border: 1px solid var(--border-subtle);
}

.px-aijobs .aij-note.is-success {
  color: var(--px-green-800);
}

[dir] .px-aijobs .aij-note.is-success {
  background: var(--status-success-bg);
  border-color: var(--px-green-200);
}

.px-aijobs .aij-note.is-warning {
  color: var(--px-amber-700);
}

[dir] .px-aijobs .aij-note.is-warning {
  background: var(--status-warning-bg);
  border-color: var(--status-warning-border);
}

.px-aijobs .aij-note.is-danger {
  color: var(--status-danger-fg);
}

[dir] .px-aijobs .aij-note.is-danger {
  background: var(--status-danger-bg);
  border-color: var(--px-red-100);
}

.px-aijobs .aij-note.is-info {
  color: var(--px-blue-600);
}

[dir] .px-aijobs .aij-note.is-info {
  background: var(--status-info-bg);
  border-color: var(--px-blue-100);
}

.px-aijobs .aij-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: var(--space-5);
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.px-aijobs .aij-actions .btn {
  white-space: nowrap;
}

.px-aijobs .aij-running,
.px-aijobs .aij-pending {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--space-4);
  height: 32px;
  white-space: nowrap;
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
}

[dir] .px-aijobs .aij-running, [dir] .px-aijobs .aij-pending {
  padding: 0 12px;
  border-radius: var(--radius-md);
}

.px-aijobs .aij-running {
  color: var(--px-green-700);
}

[dir] .px-aijobs .aij-running {
  border: 1px solid var(--px-green-200);
}

.px-aijobs .aij-running .spinner-border {
  width: 12px;
  height: 12px;
}

[dir] .px-aijobs .aij-running .spinner-border {
  border-width: 2px;
}

.px-aijobs .aij-pending {
  color: var(--px-amber-700);
}

[dir] .px-aijobs .aij-pending {
  border: 1px solid var(--status-warning-border);
  background: var(--status-warning-bg);
  cursor: pointer;
}

[dir] .px-aijobs .aij-pending:hover {
  border-color: var(--px-amber-600);
}

.px-aijobs .aij-more {
  color: var(--text-muted) !important;
}

[dir] .px-aijobs .aij-more {
  padding: 6px !important;
  border-radius: var(--radius-md);
}

.px-aijobs .aij-more:hover {
  color: var(--text-strong) !important;
}

[dir] .px-aijobs .aij-more:hover {
  background: var(--px-grey-75);
}

.px-aijobs .aij-cards {
  display: none;
}

.px-aijobs .aij-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--space-6);
}

[dir] .px-aijobs .aij-card {
  padding: var(--space-8);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-xl);
  background: #fff;
}

.px-aijobs .aij-card__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: var(--space-6);
}

[dir] .px-aijobs .aij-card__top .custom-switch {
  margin: 2px 0 0;
}

.px-aijobs .aij-card__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}

.px-aijobs .aij-card__text .aij-name {
  min-width: 0;
}

.px-aijobs .aij-card__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: var(--space-5);
}

.px-aijobs .aij-card__actions > * {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.px-aijobs .aij-card .aij-note {
  max-width: none;
}

.px-aijobs .aij-pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: var(--space-9);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font: var(--type-caption);
  color: var(--text-muted);
}

[dir] .px-aijobs .aij-pager {
  padding: var(--space-7) var(--space-10);
  border-top: 1px solid var(--border-subtle);
}

.px-aijobs .aij-pager__size {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-5);
}

[dir] .px-aijobs .aij-pager__size {
  margin: 0;
}

.px-aijobs .aij-pager__size select {
  height: 30px;
  font: var(--type-caption);
  font-weight: var(--weight-semibold);
  color: var(--text-strong);
}

[dir] .px-aijobs .aij-pager__size select {
  padding: 0 var(--space-5);
  background: #fff;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  cursor: pointer;
}

.px-aijobs .aij-pager__range {
  font-variant-numeric: tabular-nums;
}

.px-aijobs .aij-pager__nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: var(--space-4);
}

.px-aijobs .aij-pager__btn {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  color: var(--text-strong);
}

[dir] .px-aijobs .aij-pager__btn {
  padding: 0;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: #fff;
  cursor: pointer;
}

.px-aijobs .aij-pager__btn:disabled {
  color: var(--text-faint);
}

[dir] .px-aijobs .aij-pager__btn:disabled {
  background: var(--px-grey-25);
  cursor: default;
}

.px-aijobs .aij-empty {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-6);
}

[dir] .px-aijobs .aij-empty {
  padding: var(--space-16) var(--space-10);
  text-align: center;
}

.px-aijobs .aij-empty__icon {
  width: 56px;
  height: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--text-faint);
}

[dir] .px-aijobs .aij-empty__icon {
  border-radius: var(--radius-2xl);
  background: var(--px-grey-75);
  border: 1px solid var(--border-subtle);
}

.px-aijobs .aij-empty__title {
  font: var(--type-section-title);
  color: var(--text-strong);
}

.px-aijobs .aij-empty__text {
  max-width: 52ch;
  font: var(--type-body-md);
  color: var(--text-muted);
  text-wrap: pretty;
}

[dir] .px-aijobs .aij-empty__text {
  margin: 0;
}

.px-aijobs .aij-empty__ideas {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--space-5);
  list-style: none;
}

[dir] .px-aijobs .aij-empty__ideas {
  margin: var(--space-2) 0 var(--space-4);
  padding: 0;
}

.px-aijobs .aij-empty__ideas li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: var(--space-4);
  font: var(--type-caption);
  color: var(--text-body);
}

[dir] .px-aijobs .aij-empty__ideas li {
  padding: 5px 12px;
  border-radius: var(--radius-pill);
  background: #fff;
  border: 1px solid var(--border-subtle);
}

.px-aijobs .aij-empty__ideas li svg {
  color: var(--text-faint);
}

.px-aijobs .aij-loading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--space-8);
}

.px-aijobs .aij-skel {
  display: block;
}

[dir] .px-aijobs .aij-skel {
  border-radius: var(--radius-lg);
  background-size: 200% 100%;
}

[dir=ltr] .px-aijobs .aij-skel {
  background: -webkit-gradient(linear, left top, right top, from(#eef0f3), color-stop(50%, #f6f7f9), to(#eef0f3));
  background: linear-gradient(90deg, #eef0f3 0%, #f6f7f9 50%, #eef0f3 100%);
  -webkit-animation:  aij-skel-ltr 1.2s ease-in-out infinite;
  animation:  aij-skel-ltr 1.2s ease-in-out infinite;
}

[dir=rtl] .px-aijobs .aij-skel {
  background: -webkit-gradient(linear, left top, right top, from(#eef0f3), color-stop(50%, #f6f7f9), to(#eef0f3));
  background: linear-gradient(-90deg, #eef0f3 0%, #f6f7f9 50%, #eef0f3 100%);
  -webkit-animation:  aij-skel-rtl 1.2s ease-in-out infinite;
          animation:  aij-skel-rtl 1.2s ease-in-out infinite;
}

.px-aijobs .aij-skel--title {
  width: 160px;
  height: 28px;
}

.px-aijobs .aij-skel--lede {
  width: min(560px, 100%);
  height: 16px;
}

.px-aijobs .aij-skel--tile {
  height: 96px;
}

[dir] .px-aijobs .aij-skel--tile {
  border-radius: var(--radius-xl);
}

.px-aijobs .aij-skel--panel {
  height: 320px;
}

[dir] .px-aijobs .aij-skel--panel {
  border-radius: var(--radius-2xl);
}

@media (max-width: 991.98px) {
  .px-aijobs {
    /* auto-fit at 215px leaves the four tiles 3 + 1 when the strip is 677–907px wide (most tablets) — an
       orphan that reads as a missing tile; 2 × 2 below lg instead */
  }

  .px-aijobs .aij-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .px-aijobs .aij-tablewrap {
    display: none;
  }

  .px-aijobs .aij-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: var(--space-6);
  }

  [dir] .px-aijobs .aij-cards {
    padding: var(--space-8);
  }

  [dir] .px-aijobs .aij-jobs__head {
    padding: var(--space-8);
  }

  .px-aijobs .aij-search {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
  }

  .px-aijobs .aij-pager {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  [dir] .px-aijobs .aij-pager {
    padding: var(--space-7) var(--space-8);
  }
}

@media (max-width: 575.98px) {
  .px-aijobs {
    gap: var(--space-8);
    /* two tiles a row still fit a 320px phone once the padding is the design's smaller step */
    /* the header has wrapped by here: the New AI Job button takes the full row instead of hanging right */
  }

  .px-aijobs .aij-tiles {
    gap: var(--space-6);
  }

  [dir] .px-aijobs .aij-tile {
    padding: var(--space-6);
  }

  .px-aijobs .aij-head > .btn {
    width: 100%;
  }
}

@-webkit-keyframes aij-skel-ltr {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: -100% 0;
  }
}

@-webkit-keyframes aij-skel-rtl {
  0% {
    background-position: 0% 0;
  }

  100% {
    background-position: 200% 0;
  }
}

@keyframes aij-skel-ltr {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: -100% 0;
  }
}

@keyframes aij-skel-rtl {
  0% {
    background-position: 0% 0;
  }

  100% {
    background-position: 200% 0;
  }
}

/* AIJ-UX-16 — the popup rule (min-height 400px) for the Edit AI Job modal and both "Add project fields" pickers.
   Top level, unscoped: BootstrapVue moves a <b-modal> to <body>, so nothing here descends from `.px-aijobs`.
   The class arrives through each b-modal's `modal-class`. */

.aij-popup {
  --px-white: #ffffff;
  --px-navy-700: #28374F;
  --shadow-overlay: 0 12px 32px rgba(16, 24, 40, 0.24);
  --type-mono: var(--weight-regular) var(--text-sm) / 1.5 var(--font-mono);
  --px-grey-25: #fafafc;
  --px-grey-50: #f8f8f8;
  --px-grey-75: #f5f5f7;
  --px-grey-100: #f3f4f7;
  --px-grey-150: #edeef1;
  --px-grey-200: #ebe9f1;
  --px-grey-250: #e8e8ec;
  --px-grey-300: #d8d6de;
  --px-grey-400: #bbc1ca;
  --px-grey-450: #b9b9c3;
  --px-grey-500: #737a87;
  --px-grey-600: #6e6b7b;
  --px-grey-700: #5e5873;
  --px-grey-800: #4b465c;
  --px-grey-900: #2f2b3d;
  --px-ink: #151b22;
  --px-green-50: #e9f9ee;
  --px-green-100: #dcfce8;
  --px-green-150: #ecfdef;
  --px-green-200: #b6f0cc;
  --px-green-500: #28c76f;
  --px-green-550: #2bb669;
  --px-green-600: #22A44E;
  --px-green-700: #16a34a;
  --px-green-800: #127c3a;
  --px-green-900: #17a851;
  --px-blue-50: #e8eefc;
  --px-blue-100: #c5d0f6;
  --px-blue-400: #60a5fa;
  --px-blue-500: #1e4ed8;
  --px-blue-600: #0b57a6;
  --px-blue-700: var(--px-blue-600);
  --px-violet-50: #eeedfd;
  --px-violet-100: #e2e1f5;
  --px-violet-500: #7367f0;
  --px-violet-600: #5b54e8;
  --px-cyan-500: #00cfe8;
  --px-orange-400: #f28058;
  --px-rust-600: #b4451e;
  --px-navy-800: #1f2e47;
  --px-red-50: #fff6f4;
  --px-red-100: #fcd7d6;
  --px-red-500: #ea5455;
  --px-red-600: #cb4744;
  --px-amber-50: #fffbf0;
  --px-amber-200: #f1dfbd;
  --px-amber-500: #ff9f43;
  --px-amber-600: #d49838;
  --px-amber-700: #b45309;
  --price-cheapest: var(--px-green-900);
  --price-below: var(--px-green-500);
  --price-parity: var(--px-amber-600);
  --price-above: var(--px-orange-400);
  --price-expensive: var(--px-red-600);
  --text-heading: var(--px-grey-700);
  --text-body: var(--px-grey-600);
  --text-muted: var(--px-grey-500);
  --text-faint: var(--px-grey-450);
  --text-link: var(--px-blue-500);
  --text-code: var(--px-violet-600);
  --text-strong: var(--px-ink);
  --px-navy-900: #16233a;
  --surface-page: var(--px-grey-75);
  --surface-card: var(--px-white);
  --surface-subtle: var(--px-grey-100);
  --surface-sunken: var(--px-grey-50);
  --surface-inverse: var(--px-ink);
  --surface-overlay: rgba(21, 27, 34, 0.45);
  --border-subtle: var(--px-grey-150);
  --border-default: var(--px-grey-250);
  --border-strong: var(--px-grey-300);
  --action-primary: var(--px-green-600);
  --action-primary-strong: var(--px-green-700);
  --action-quiet-bg: var(--px-white);
  --action-quiet-border: var(--px-grey-300);
  --action-accent: var(--px-violet-500);
  --action-accent-hover: var(--px-violet-600);
  --action-danger: var(--px-red-500);
  --action-danger-hover: var(--px-red-600);
  --border-focus: var(--px-violet-500);
  --status-success-fg: var(--px-green-700);
  --status-success-bg: var(--px-green-50);
  --status-danger-fg: var(--px-red-600);
  --status-danger-bg: var(--px-red-50);
  --status-warning-fg: var(--px-amber-600);
  --status-warning-bg: var(--px-amber-50);
  --status-warning-border: var(--px-amber-200);
  --status-info-fg: var(--px-blue-500);
  --status-info-bg: var(--px-blue-50);
  --status-neutral-fg: var(--px-grey-500);
  --status-neutral-bg: var(--px-grey-100);
  --status-live: var(--px-green-900);
  --status-paused: var(--px-grey-400);
  --space-1: 2px;
  --space-2: 4px;
  --space-3: 6px;
  --space-4: 8px;
  --space-5: 10px;
  --space-6: 12px;
  --space-7: 14px;
  --space-8: 16px;
  --space-9: 20px;
  --space-10: 24px;
  --space-11: 28px;
  --space-12: 32px;
  --space-14: 40px;
  --space-16: 48px;
  --card-padding: var(--space-10);
  --table-cell-x: var(--space-10);
  --table-cell-y: var(--space-9);
  --control-height-sm: 32px;
  --control-height-md: 40px;
  --control-height-lg: 46px;
  --control-padding-x: 18px;
  --stack-loose: var(--space-10);
  --font-core: "Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;
  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 15px;
  --text-lg: 16px;
  --text-xl: 18px;
  --text-2xl: 20px;
  --text-3xl: 24px;
  --text-4xl: 28px;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.45;
  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-caps: 0.08em;
  --tracking-normal: 0;
  --type-page-title: var(--weight-semibold) var(--text-4xl)/var(--leading-tight) var(--font-core);
  --type-section-title: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-core);
  --type-card-title: var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-core);
  --type-body: var(--weight-regular) var(--text-base)/var(--leading-normal) var(--font-core);
  --type-body-md: var(--weight-regular) var(--text-md)/var(--leading-normal) var(--font-core);
  --type-label: var(--weight-medium) var(--text-base)/var(--leading-snug) var(--font-core);
  --type-table-head: var(--weight-semibold) var(--text-sm)/1.2 var(--font-core);
  --type-caption: var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-core);
  --type-eyebrow: var(--weight-semibold) var(--text-xs)/1.2 var(--font-core);
  --type-code: var(--weight-regular) var(--text-sm)/1.5 var(--font-mono);
  --type-metric: var(--weight-semibold) var(--text-4xl)/1.05 var(--font-core);
  --radius-xs: 4px;
  --radius-sm: 5px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-2xl: 14px;
  --radius-pill: 999px;
  --shadow-hairline: 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-card: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-raised: 0 4px 12px rgba(16, 24, 40, 0.07), 0 1px 3px rgba(16, 24, 40, 0.05);
  --shadow-dropdown: 0 8px 24px rgba(16, 24, 40, 0.14);
  --shadow-modal: 0 24px 64px rgba(16, 24, 40, 0.22), 0 2px 8px rgba(16, 24, 40, 0.1);
  --ring-focus: 0 0 0 3px rgba(115, 103, 240, 0.22);
  --ring-focus-green: 0 0 0 3px rgba(34, 164, 78, 0.22);
  --duration-fast: 140ms;
  --duration-base: 200ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --transition-control: background-color var(--duration-fast) var(--ease-standard),
      border-color var(--duration-fast) var(--ease-standard),
      color var(--duration-fast) var(--ease-standard),
      box-shadow var(--duration-fast) var(--ease-standard);
  --transition-surface: background-color var(--duration-base) var(--ease-standard);
}

.aij-popup .modal-body {
  min-height: 400px;
}

var map = {
	"./af": "./node_modules/moment/locale/af.js",
	"./af.js": "./node_modules/moment/locale/af.js",
	"./ar": "./node_modules/moment/locale/ar.js",
	"./ar-dz": "./node_modules/moment/locale/ar-dz.js",
	"./ar-dz.js": "./node_modules/moment/locale/ar-dz.js",
	"./ar-kw": "./node_modules/moment/locale/ar-kw.js",
	"./ar-kw.js": "./node_modules/moment/locale/ar-kw.js",
	"./ar-ly": "./node_modules/moment/locale/ar-ly.js",
	"./ar-ly.js": "./node_modules/moment/locale/ar-ly.js",
	"./ar-ma": "./node_modules/moment/locale/ar-ma.js",
	"./ar-ma.js": "./node_modules/moment/locale/ar-ma.js",
	"./ar-sa": "./node_modules/moment/locale/ar-sa.js",
	"./ar-sa.js": "./node_modules/moment/locale/ar-sa.js",
	"./ar-tn": "./node_modules/moment/locale/ar-tn.js",
	"./ar-tn.js": "./node_modules/moment/locale/ar-tn.js",
	"./ar.js": "./node_modules/moment/locale/ar.js",
	"./az": "./node_modules/moment/locale/az.js",
	"./az.js": "./node_modules/moment/locale/az.js",
	"./be": "./node_modules/moment/locale/be.js",
	"./be.js": "./node_modules/moment/locale/be.js",
	"./bg": "./node_modules/moment/locale/bg.js",
	"./bg.js": "./node_modules/moment/locale/bg.js",
	"./bm": "./node_modules/moment/locale/bm.js",
	"./bm.js": "./node_modules/moment/locale/bm.js",
	"./bn": "./node_modules/moment/locale/bn.js",
	"./bn-bd": "./node_modules/moment/locale/bn-bd.js",
	"./bn-bd.js": "./node_modules/moment/locale/bn-bd.js",
	"./bn.js": "./node_modules/moment/locale/bn.js",
	"./bo": "./node_modules/moment/locale/bo.js",
	"./bo.js": "./node_modules/moment/locale/bo.js",
	"./br": "./node_modules/moment/locale/br.js",
	"./br.js": "./node_modules/moment/locale/br.js",
	"./bs": "./node_modules/moment/locale/bs.js",
	"./bs.js": "./node_modules/moment/locale/bs.js",
	"./ca": "./node_modules/moment/locale/ca.js",
	"./ca.js": "./node_modules/moment/locale/ca.js",
	"./cs": "./node_modules/moment/locale/cs.js",
	"./cs.js": "./node_modules/moment/locale/cs.js",
	"./cv": "./node_modules/moment/locale/cv.js",
	"./cv.js": "./node_modules/moment/locale/cv.js",
	"./cy": "./node_modules/moment/locale/cy.js",
	"./cy.js": "./node_modules/moment/locale/cy.js",
	"./da": "./node_modules/moment/locale/da.js",
	"./da.js": "./node_modules/moment/locale/da.js",
	"./de": "./node_modules/moment/locale/de.js",
	"./de-at": "./node_modules/moment/locale/de-at.js",
	"./de-at.js": "./node_modules/moment/locale/de-at.js",
	"./de-ch": "./node_modules/moment/locale/de-ch.js",
	"./de-ch.js": "./node_modules/moment/locale/de-ch.js",
	"./de.js": "./node_modules/moment/locale/de.js",
	"./dv": "./node_modules/moment/locale/dv.js",
	"./dv.js": "./node_modules/moment/locale/dv.js",
	"./el": "./node_modules/moment/locale/el.js",
	"./el.js": "./node_modules/moment/locale/el.js",
	"./en-au": "./node_modules/moment/locale/en-au.js",
	"./en-au.js": "./node_modules/moment/locale/en-au.js",
	"./en-ca": "./node_modules/moment/locale/en-ca.js",
	"./en-ca.js": "./node_modules/moment/locale/en-ca.js",
	"./en-gb": "./node_modules/moment/locale/en-gb.js",
	"./en-gb.js": "./node_modules/moment/locale/en-gb.js",
	"./en-ie": "./node_modules/moment/locale/en-ie.js",
	"./en-ie.js": "./node_modules/moment/locale/en-ie.js",
	"./en-il": "./node_modules/moment/locale/en-il.js",
	"./en-il.js": "./node_modules/moment/locale/en-il.js",
	"./en-in": "./node_modules/moment/locale/en-in.js",
	"./en-in.js": "./node_modules/moment/locale/en-in.js",
	"./en-nz": "./node_modules/moment/locale/en-nz.js",
	"./en-nz.js": "./node_modules/moment/locale/en-nz.js",
	"./en-sg": "./node_modules/moment/locale/en-sg.js",
	"./en-sg.js": "./node_modules/moment/locale/en-sg.js",
	"./eo": "./node_modules/moment/locale/eo.js",
	"./eo.js": "./node_modules/moment/locale/eo.js",
	"./es": "./node_modules/moment/locale/es.js",
	"./es-do": "./node_modules/moment/locale/es-do.js",
	"./es-do.js": "./node_modules/moment/locale/es-do.js",
	"./es-mx": "./node_modules/moment/locale/es-mx.js",
	"./es-mx.js": "./node_modules/moment/locale/es-mx.js",
	"./es-us": "./node_modules/moment/locale/es-us.js",
	"./es-us.js": "./node_modules/moment/locale/es-us.js",
	"./es.js": "./node_modules/moment/locale/es.js",
	"./et": "./node_modules/moment/locale/et.js",
	"./et.js": "./node_modules/moment/locale/et.js",
	"./eu": "./node_modules/moment/locale/eu.js",
	"./eu.js": "./node_modules/moment/locale/eu.js",
	"./fa": "./node_modules/moment/locale/fa.js",
	"./fa.js": "./node_modules/moment/locale/fa.js",
	"./fi": "./node_modules/moment/locale/fi.js",
	"./fi.js": "./node_modules/moment/locale/fi.js",
	"./fil": "./node_modules/moment/locale/fil.js",
	"./fil.js": "./node_modules/moment/locale/fil.js",
	"./fo": "./node_modules/moment/locale/fo.js",
	"./fo.js": "./node_modules/moment/locale/fo.js",
	"./fr": "./node_modules/moment/locale/fr.js",
	"./fr-ca": "./node_modules/moment/locale/fr-ca.js",
	"./fr-ca.js": "./node_modules/moment/locale/fr-ca.js",
	"./fr-ch": "./node_modules/moment/locale/fr-ch.js",
	"./fr-ch.js": "./node_modules/moment/locale/fr-ch.js",
	"./fr.js": "./node_modules/moment/locale/fr.js",
	"./fy": "./node_modules/moment/locale/fy.js",
	"./fy.js": "./node_modules/moment/locale/fy.js",
	"./ga": "./node_modules/moment/locale/ga.js",
	"./ga.js": "./node_modules/moment/locale/ga.js",
	"./gd": "./node_modules/moment/locale/gd.js",
	"./gd.js": "./node_modules/moment/locale/gd.js",
	"./gl": "./node_modules/moment/locale/gl.js",
	"./gl.js": "./node_modules/moment/locale/gl.js",
	"./gom-deva": "./node_modules/moment/locale/gom-deva.js",
	"./gom-deva.js": "./node_modules/moment/locale/gom-deva.js",
	"./gom-latn": "./node_modules/moment/locale/gom-latn.js",
	"./gom-latn.js": "./node_modules/moment/locale/gom-latn.js",
	"./gu": "./node_modules/moment/locale/gu.js",
	"./gu.js": "./node_modules/moment/locale/gu.js",
	"./he": "./node_modules/moment/locale/he.js",
	"./he.js": "./node_modules/moment/locale/he.js",
	"./hi": "./node_modules/moment/locale/hi.js",
	"./hi.js": "./node_modules/moment/locale/hi.js",
	"./hr": "./node_modules/moment/locale/hr.js",
	"./hr.js": "./node_modules/moment/locale/hr.js",
	"./hu": "./node_modules/moment/locale/hu.js",
	"./hu.js": "./node_modules/moment/locale/hu.js",
	"./hy-am": "./node_modules/moment/locale/hy-am.js",
	"./hy-am.js": "./node_modules/moment/locale/hy-am.js",
	"./id": "./node_modules/moment/locale/id.js",
	"./id.js": "./node_modules/moment/locale/id.js",
	"./is": "./node_modules/moment/locale/is.js",
	"./is.js": "./node_modules/moment/locale/is.js",
	"./it": "./node_modules/moment/locale/it.js",
	"./it-ch": "./node_modules/moment/locale/it-ch.js",
	"./it-ch.js": "./node_modules/moment/locale/it-ch.js",
	"./it.js": "./node_modules/moment/locale/it.js",
	"./ja": "./node_modules/moment/locale/ja.js",
	"./ja.js": "./node_modules/moment/locale/ja.js",
	"./jv": "./node_modules/moment/locale/jv.js",
	"./jv.js": "./node_modules/moment/locale/jv.js",
	"./ka": "./node_modules/moment/locale/ka.js",
	"./ka.js": "./node_modules/moment/locale/ka.js",
	"./kk": "./node_modules/moment/locale/kk.js",
	"./kk.js": "./node_modules/moment/locale/kk.js",
	"./km": "./node_modules/moment/locale/km.js",
	"./km.js": "./node_modules/moment/locale/km.js",
	"./kn": "./node_modules/moment/locale/kn.js",
	"./kn.js": "./node_modules/moment/locale/kn.js",
	"./ko": "./node_modules/moment/locale/ko.js",
	"./ko.js": "./node_modules/moment/locale/ko.js",
	"./ku": "./node_modules/moment/locale/ku.js",
	"./ku.js": "./node_modules/moment/locale/ku.js",
	"./ky": "./node_modules/moment/locale/ky.js",
	"./ky.js": "./node_modules/moment/locale/ky.js",
	"./lb": "./node_modules/moment/locale/lb.js",
	"./lb.js": "./node_modules/moment/locale/lb.js",
	"./lo": "./node_modules/moment/locale/lo.js",
	"./lo.js": "./node_modules/moment/locale/lo.js",
	"./lt": "./node_modules/moment/locale/lt.js",
	"./lt.js": "./node_modules/moment/locale/lt.js",
	"./lv": "./node_modules/moment/locale/lv.js",
	"./lv.js": "./node_modules/moment/locale/lv.js",
	"./me": "./node_modules/moment/locale/me.js",
	"./me.js": "./node_modules/moment/locale/me.js",
	"./mi": "./node_modules/moment/locale/mi.js",
	"./mi.js": "./node_modules/moment/locale/mi.js",
	"./mk": "./node_modules/moment/locale/mk.js",
	"./mk.js": "./node_modules/moment/locale/mk.js",
	"./ml": "./node_modules/moment/locale/ml.js",
	"./ml.js": "./node_modules/moment/locale/ml.js",
	"./mn": "./node_modules/moment/locale/mn.js",
	"./mn.js": "./node_modules/moment/locale/mn.js",
	"./mr": "./node_modules/moment/locale/mr.js",
	"./mr.js": "./node_modules/moment/locale/mr.js",
	"./ms": "./node_modules/moment/locale/ms.js",
	"./ms-my": "./node_modules/moment/locale/ms-my.js",
	"./ms-my.js": "./node_modules/moment/locale/ms-my.js",
	"./ms.js": "./node_modules/moment/locale/ms.js",
	"./mt": "./node_modules/moment/locale/mt.js",
	"./mt.js": "./node_modules/moment/locale/mt.js",
	"./my": "./node_modules/moment/locale/my.js",
	"./my.js": "./node_modules/moment/locale/my.js",
	"./nb": "./node_modules/moment/locale/nb.js",
	"./nb.js": "./node_modules/moment/locale/nb.js",
	"./ne": "./node_modules/moment/locale/ne.js",
	"./ne.js": "./node_modules/moment/locale/ne.js",
	"./nl": "./node_modules/moment/locale/nl.js",
	"./nl-be": "./node_modules/moment/locale/nl-be.js",
	"./nl-be.js": "./node_modules/moment/locale/nl-be.js",
	"./nl.js": "./node_modules/moment/locale/nl.js",
	"./nn": "./node_modules/moment/locale/nn.js",
	"./nn.js": "./node_modules/moment/locale/nn.js",
	"./oc-lnc": "./node_modules/moment/locale/oc-lnc.js",
	"./oc-lnc.js": "./node_modules/moment/locale/oc-lnc.js",
	"./pa-in": "./node_modules/moment/locale/pa-in.js",
	"./pa-in.js": "./node_modules/moment/locale/pa-in.js",
	"./pl": "./node_modules/moment/locale/pl.js",
	"./pl.js": "./node_modules/moment/locale/pl.js",
	"./pt": "./node_modules/moment/locale/pt.js",
	"./pt-br": "./node_modules/moment/locale/pt-br.js",
	"./pt-br.js": "./node_modules/moment/locale/pt-br.js",
	"./pt.js": "./node_modules/moment/locale/pt.js",
	"./ro": "./node_modules/moment/locale/ro.js",
	"./ro.js": "./node_modules/moment/locale/ro.js",
	"./ru": "./node_modules/moment/locale/ru.js",
	"./ru.js": "./node_modules/moment/locale/ru.js",
	"./sd": "./node_modules/moment/locale/sd.js",
	"./sd.js": "./node_modules/moment/locale/sd.js",
	"./se": "./node_modules/moment/locale/se.js",
	"./se.js": "./node_modules/moment/locale/se.js",
	"./si": "./node_modules/moment/locale/si.js",
	"./si.js": "./node_modules/moment/locale/si.js",
	"./sk": "./node_modules/moment/locale/sk.js",
	"./sk.js": "./node_modules/moment/locale/sk.js",
	"./sl": "./node_modules/moment/locale/sl.js",
	"./sl.js": "./node_modules/moment/locale/sl.js",
	"./sq": "./node_modules/moment/locale/sq.js",
	"./sq.js": "./node_modules/moment/locale/sq.js",
	"./sr": "./node_modules/moment/locale/sr.js",
	"./sr-cyrl": "./node_modules/moment/locale/sr-cyrl.js",
	"./sr-cyrl.js": "./node_modules/moment/locale/sr-cyrl.js",
	"./sr.js": "./node_modules/moment/locale/sr.js",
	"./ss": "./node_modules/moment/locale/ss.js",
	"./ss.js": "./node_modules/moment/locale/ss.js",
	"./sv": "./node_modules/moment/locale/sv.js",
	"./sv.js": "./node_modules/moment/locale/sv.js",
	"./sw": "./node_modules/moment/locale/sw.js",
	"./sw.js": "./node_modules/moment/locale/sw.js",
	"./ta": "./node_modules/moment/locale/ta.js",
	"./ta.js": "./node_modules/moment/locale/ta.js",
	"./te": "./node_modules/moment/locale/te.js",
	"./te.js": "./node_modules/moment/locale/te.js",
	"./tet": "./node_modules/moment/locale/tet.js",
	"./tet.js": "./node_modules/moment/locale/tet.js",
	"./tg": "./node_modules/moment/locale/tg.js",
	"./tg.js": "./node_modules/moment/locale/tg.js",
	"./th": "./node_modules/moment/locale/th.js",
	"./th.js": "./node_modules/moment/locale/th.js",
	"./tk": "./node_modules/moment/locale/tk.js",
	"./tk.js": "./node_modules/moment/locale/tk.js",
	"./tl-ph": "./node_modules/moment/locale/tl-ph.js",
	"./tl-ph.js": "./node_modules/moment/locale/tl-ph.js",
	"./tlh": "./node_modules/moment/locale/tlh.js",
	"./tlh.js": "./node_modules/moment/locale/tlh.js",
	"./tr": "./node_modules/moment/locale/tr.js",
	"./tr.js": "./node_modules/moment/locale/tr.js",
	"./tzl": "./node_modules/moment/locale/tzl.js",
	"./tzl.js": "./node_modules/moment/locale/tzl.js",
	"./tzm": "./node_modules/moment/locale/tzm.js",
	"./tzm-latn": "./node_modules/moment/locale/tzm-latn.js",
	"./tzm-latn.js": "./node_modules/moment/locale/tzm-latn.js",
	"./tzm.js": "./node_modules/moment/locale/tzm.js",
	"./ug-cn": "./node_modules/moment/locale/ug-cn.js",
	"./ug-cn.js": "./node_modules/moment/locale/ug-cn.js",
	"./uk": "./node_modules/moment/locale/uk.js",
	"./uk.js": "./node_modules/moment/locale/uk.js",
	"./ur": "./node_modules/moment/locale/ur.js",
	"./ur.js": "./node_modules/moment/locale/ur.js",
	"./uz": "./node_modules/moment/locale/uz.js",
	"./uz-latn": "./node_modules/moment/locale/uz-latn.js",
	"./uz-latn.js": "./node_modules/moment/locale/uz-latn.js",
	"./uz.js": "./node_modules/moment/locale/uz.js",
	"./vi": "./node_modules/moment/locale/vi.js",
	"./vi.js": "./node_modules/moment/locale/vi.js",
	"./x-pseudo": "./node_modules/moment/locale/x-pseudo.js",
	"./x-pseudo.js": "./node_modules/moment/locale/x-pseudo.js",
	"./yo": "./node_modules/moment/locale/yo.js",
	"./yo.js": "./node_modules/moment/locale/yo.js",
	"./zh-cn": "./node_modules/moment/locale/zh-cn.js",
	"./zh-cn.js": "./node_modules/moment/locale/zh-cn.js",
	"./zh-hk": "./node_modules/moment/locale/zh-hk.js",
	"./zh-hk.js": "./node_modules/moment/locale/zh-hk.js",
	"./zh-mo": "./node_modules/moment/locale/zh-mo.js",
	"./zh-mo.js": "./node_modules/moment/locale/zh-mo.js",
	"./zh-tw": "./node_modules/moment/locale/zh-tw.js",
	"./zh-tw.js": "./node_modules/moment/locale/zh-tw.js"
};


function webpackContext(req) {
	var id = webpackContextResolve(req);
	return __webpack_require__(id);
}
function webpackContextResolve(req) {
	if(!__webpack_require__.o(map, req)) {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	}
	return map[req];
}
webpackContext.keys = function webpackContextKeys() {
	return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "./node_modules/moment/locale sync recursive ^\\.\\/.*$";