@import "https://fonts.googleapis.com/css2?family=Lato:wght@400;600;700&family=IBM+Plex+Sans:wght@400;600;700&family=JetBrains+Mono:wght@400;600&display=swap";

/* ../../../../../tmp/tmp-71-5grbF94tF7VM/pulserx/pulserx/public/pulserx.bundle.css */
:root {
  --prx-blue-700:#1D3878;
  --prx-blue-600:#244494;
  --prx-blue-100:#E4EAF6;
  --prx-gold-700:#735500;
  --prx-gold-600:#916B00;
  --prx-gold-500:#C68A00;
  --prx-gold-100:#FBF1DA;
  --prx-green-700:#157347;
  --prx-green-600:#1B8755;
  --prx-green-100:#E7F4EE;
  --prx-red-700:#B42318;
  --prx-red-100:#FBEAE8;
  --prx-red-logo:#D32F2F;
  --prx-gray-0:#FFFFFF;
  --prx-gray-25:#FAFAFA;
  --prx-gray-50:#F5F7F9;
  --prx-gray-200:#E4E7EB;
  --prx-gray-300:#C9CFD6;
  --prx-gray-600:#666666;
  --prx-gray-700:#494C4F;
  --prx-gray-800:#333333;
  --prx-gray-900:#0A0A0A;
  --prx-primary:var(--prx-blue-600);
  --prx-primary-hover:var(--prx-blue-700);
  --prx-primary-fg:#FFFFFF;
  --prx-accent:var(--prx-gold-600);
  --prx-accent-hover:var(--prx-gold-700);
  --prx-bg-page:var(--prx-gray-50);
  --prx-bg-card:var(--prx-gray-0);
  --prx-bg-panel:var(--prx-gray-25);
  --prx-bg-inverse:var(--prx-blue-600);
  --prx-bg-hover:#EEF1F5;
  --prx-bg-selected:var(--prx-blue-100);
  --prx-text-strong:var(--prx-gray-900);
  --prx-text-body:var(--prx-gray-800);
  --prx-text-muted:var(--prx-gray-600);
  --prx-text-subtle:var(--prx-gray-700);
  --prx-text-on-brand:#FFFFFF;
  --prx-link:var(--prx-blue-600);
  --prx-border:var(--prx-gray-200);
  --prx-border-strong:var(--prx-gray-300);
  --prx-divider:var(--prx-gray-200);
  --prx-success-fill:var(--prx-green-600);
  --prx-success-text:var(--prx-green-700);
  --prx-success-bg:var(--prx-green-100);
  --prx-success-border:#B5E0CB;
  --prx-warning-fill:var(--prx-gold-500);
  --prx-warning-text:#8A6100;
  --prx-warning-bg:var(--prx-gold-100);
  --prx-warning-border:#EBD9A6;
  --prx-danger-fill:var(--prx-red-700);
  --prx-danger-text:var(--prx-red-700);
  --prx-danger-bg:var(--prx-red-100);
  --prx-danger-border:#F1C7C2;
  --prx-info-fill:var(--prx-blue-600);
  --prx-info-text:var(--prx-blue-600);
  --prx-info-bg:var(--prx-blue-100);
  --prx-info-border:#BFCDEC;
  --prx-focus-ring:0 0 0 2px #FFFFFF, 0 0 0 4px var(--prx-blue-600);
  --prx-focus-glow:0 0 0 3px rgba(36,68,148,.15);
  --prx-focus-color:var(--prx-blue-600);
  --prx-font-sans:"Lato",
    system-ui,
    -apple-system,
    "Segoe UI",
    sans-serif;
  --prx-font-data:"IBM Plex Sans",
    system-ui,
    sans-serif;
  --prx-font-mono:"JetBrains Mono","Consolas",
    monospace;
  --prx-tnum:"tnum" 1, "lnum" 1;
  --prx-text-h1:1.75rem;
  --prx-text-h2:1.375rem;
  --prx-text-h3:1.125rem;
  --prx-text-h4:1rem;
  --prx-text-h5:0.875rem;
  --prx-text-h6:0.75rem;
  --prx-text-body-sz:0.875rem;
  --prx-text-data-sz:0.8125rem;
  --prx-text-small:0.75rem;
  --prx-text-caption:0.6875rem;
  --prx-lh-tight:1.25;
  --prx-lh-normal:1.5;
  --prx-lh-data:1.35;
  --prx-fw-bold:700;
  --prx-fw-semi:600;
  --prx-fw-reg:400;
  --prx-space-0_5:2px;
  --prx-space-1:4px;
  --prx-space-2:8px;
  --prx-space-3:12px;
  --prx-space-4:16px;
  --prx-space-5:20px;
  --prx-space-6:24px;
  --prx-space-8:32px;
  --prx-space-12:48px;
  --prx-row-h:32px;
  --prx-control-h:32px;
  --prx-tap-min:36px;
  --prx-page-pad:24px;
  --prx-radius-sm:4px;
  --prx-radius-md:6px;
  --prx-radius-lg:8px;
  --prx-radius-full:999px;
  --prx-shadow-sm:0 1px 2px rgba(36,68,148,.06);
  --prx-shadow-md:0 2px 6px rgba(36,68,148,.08);
  --prx-shadow-lg:0 6px 16px rgba(36,68,148,.12);
  --primary:var(--prx-primary);
  --text-color:var(--prx-text-body);
  --text-muted:var(--prx-text-muted);
  --bg-color:var(--prx-bg-page);
  --card-bg:var(--prx-bg-card);
  --border-color:var(--prx-border);
}
@media (max-width: 768px) {
  :root {
    --prx-text-body-sz:1rem;
    --prx-text-data-sz:0.9375rem;
    --prx-text-small:0.8125rem;
    --prx-row-h:48px;
    --prx-control-h:48px;
    --prx-tap-min:48px;
    --prx-page-pad:16px;
  }
}
[data-prx-mode=mobile] {
  --prx-text-body-sz:1rem;
  --prx-text-data-sz:0.9375rem;
  --prx-text-small:0.8125rem;
  --prx-row-h:48px;
  --prx-control-h:48px;
  --prx-tap-min:48px;
  --prx-page-pad:16px;
  --prx-text-h1:2rem;
}
.prx-num {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
}
.prx,
.prx * {
  box-sizing: border-box;
}
.prx {
  font-family: var(--prx-font-sans);
  color: var(--prx-text-body);
}
.prx-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--prx-space-2);
  height: var(--prx-control-h);
  min-height: var(--prx-tap-min);
  padding: 0 var(--prx-space-4);
  font-family: var(--prx-font-sans);
  font-size: var(--prx-text-body-sz);
  font-weight: var(--prx-fw-semi);
  line-height: 1;
  border: 1px solid transparent;
  border-radius: var(--prx-radius-sm);
  background: transparent;
  color: var(--prx-text-body);
  cursor: pointer;
  white-space: nowrap;
  transition:
    background .12s ease,
    border-color .12s ease,
    box-shadow .12s ease,
    color .12s ease;
}
.prx-btn svg {
  width: 16px;
  height: 16px;
  flex: none;
}
.prx-btn:focus-visible {
  outline: none;
  box-shadow: var(--prx-focus-ring);
}
.prx-btn:disabled,
.prx-btn[aria-disabled=true] {
  opacity: .45;
  cursor: not-allowed;
  pointer-events: none;
}
.prx-btn--primary {
  background: var(--prx-primary);
  color: #fff;
}
.prx-btn--primary:hover {
  background: var(--prx-primary-hover);
}
.prx-btn--primary:active {
  background: var(--prx-primary-hover);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .2);
}
.prx-btn--accent {
  background: var(--prx-accent);
  color: #fff;
}
.prx-btn--accent:hover {
  background: var(--prx-accent-hover);
}
.prx-btn--danger {
  background: var(--prx-danger-fill);
  color: #fff;
}
.prx-btn--danger:hover {
  background: #9A1D14;
}
.prx-btn--ghost {
  background: transparent;
  border-color: var(--prx-border-strong);
  color: var(--prx-text-body);
}
.prx-btn--ghost:hover {
  background: var(--prx-bg-hover);
  border-color: var(--prx-text-muted);
}
.prx-btn--override {
  background: #fff;
  border-color: var(--prx-warning-fill);
  color: var(--prx-warning-text);
  font-weight: var(--prx-fw-bold);
}
.prx-btn--override svg {
  color: var(--prx-warning-fill);
}
.prx-btn--override:hover {
  background: var(--prx-warning-bg);
  border-color: var(--prx-warning-text);
}
.prx-btn--icon {
  width: var(--prx-control-h);
  min-width: var(--prx-tap-min);
  padding: 0;
  color: var(--prx-text-muted);
}
.prx-btn--icon:hover {
  background: var(--prx-bg-hover);
  color: var(--prx-text-body);
}
.prx-btn--sm {
  height: 26px;
  min-height: 0;
  padding: 0 var(--prx-space-3);
  font-size: var(--prx-text-small);
}
.prx-onblue .prx-btn--ghost {
  border-color: rgba(255, 255, 255, .55);
  color: #fff;
}
.prx-onblue .prx-btn--ghost:hover {
  background: rgba(255, 255, 255, .14);
  border-color: #fff;
}
.prx-onblue .prx-btn--icon {
  color: rgba(255, 255, 255, .85);
}
.prx-onblue .prx-btn--icon:hover {
  background: rgba(255, 255, 255, .14);
  color: #fff;
}
.prx-onblue .prx-btn--override {
  background: rgba(255, 255, 255, .96);
}
.prx-field {
  display: flex;
  flex-direction: column;
  gap: var(--prx-space-1);
}
.prx-label {
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
  color: var(--prx-text-subtle);
}
.prx-label .req {
  color: var(--prx-danger-fill);
  margin-left: 2px;
}
.prx-hint {
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.prx-input,
.prx-select select,
.prx-textarea {
  width: 100%;
  height: var(--prx-control-h);
  min-height: var(--prx-tap-min);
  padding: 0 var(--prx-space-3);
  font-family: var(--prx-font-sans);
  font-size: var(--prx-text-body-sz);
  color: var(--prx-text-body);
  background: #fff;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-sm);
  transition: border-color .12s ease, box-shadow .12s ease;
}
.prx-textarea {
  height: auto;
  min-height: 88px;
  padding: var(--prx-space-2) var(--prx-space-3);
  line-height: var(--prx-lh-normal);
  resize: vertical;
}
.prx-input::-moz-placeholder,
.prx-textarea::-moz-placeholder {
  color: #98A0A8;
}
.prx-input::placeholder,
.prx-textarea::placeholder {
  color: #98A0A8;
}
.prx-input:focus,
.prx-textarea:focus,
.prx-select select:focus {
  outline: none;
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.prx-input:disabled,
.prx-textarea:disabled {
  background: var(--prx-bg-panel);
  color: var(--prx-text-muted);
  cursor: not-allowed;
}
.prx-input.is-invalid {
  border-color: var(--prx-danger-fill);
  box-shadow: 0 0 0 3px rgba(180, 35, 24, .12);
}
.prx-unit {
  display: flex;
  align-items: stretch;
  height: var(--prx-control-h);
  min-height: var(--prx-tap-min);
  background: #fff;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-sm);
  overflow: hidden;
}
.prx-unit:focus-within {
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.prx-unit input {
  flex: 1;
  min-width: 0;
  border: none;
  outline: none;
  padding: 0 var(--prx-space-3);
  text-align: right;
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: var(--prx-text-body-sz);
  color: var(--prx-text-body);
}
.prx-unit .unit {
  display: flex;
  align-items: center;
  padding: 0 var(--prx-space-3);
  background: var(--prx-bg-panel);
  border-left: 1px solid var(--prx-border);
  color: var(--prx-text-muted);
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
}
.prx-select {
  position: relative;
  display: block;
}
.prx-select select {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  padding-right: 34px;
  cursor: pointer;
}
.prx-select .prx-select-chev {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: var(--prx-text-muted);
  pointer-events: none;
}
.prx-date {
  position: relative;
}
.prx-date .prx-date-ic {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: var(--prx-text-muted);
  pointer-events: none;
}
.prx-date input {
  padding-right: 34px;
  font-family: var(--prx-font-data);
}
.prx-multiselect {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--prx-space-1);
  min-height: var(--prx-control-h);
  padding: var(--prx-space-1) var(--prx-space-2);
  background: #fff;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-sm);
  cursor: text;
}
.prx-multiselect:focus-within {
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.prx-tag {
  display: inline-flex;
  align-items: center;
  gap: var(--prx-space-1);
  height: 22px;
  padding: 0 var(--prx-space-1) 0 var(--prx-space-2);
  background: var(--prx-info-bg);
  color: var(--prx-primary);
  border: 1px solid var(--prx-info-border);
  border-radius: var(--prx-radius-sm);
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
}
.prx-tag button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--prx-primary);
  cursor: pointer;
  border-radius: 2px;
}
.prx-tag button:hover {
  background: rgba(36, 68, 148, .14);
}
.prx-tag button svg {
  width: 11px;
  height: 11px;
}
.prx-multiselect .prx-ms-input {
  flex: 1;
  min-width: 80px;
  border: none;
  outline: none;
  height: 24px;
  font-size: var(--prx-text-body-sz);
  color: var(--prx-text-body);
  background: transparent;
}
.prx-file {
  display: flex;
  align-items: center;
  gap: var(--prx-space-3);
  padding: var(--prx-space-3) var(--prx-space-4);
  background: var(--prx-bg-panel);
  border: 1px dashed var(--prx-border-strong);
  border-radius: var(--prx-radius-md);
}
.prx-file:hover {
  border-color: var(--prx-primary);
  background: #fff;
}
.prx-file .prx-file-ic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: none;
  color: var(--prx-primary);
  background: var(--prx-info-bg);
  border-radius: var(--prx-radius-sm);
}
.prx-file .prx-file-ic svg {
  width: 18px;
  height: 18px;
}
.prx-file .prx-file-main {
  flex: 1;
  min-width: 0;
}
.prx-file .prx-file-title {
  font-size: var(--prx-text-body-sz);
  font-weight: var(--prx-fw-semi);
  color: var(--prx-text-body);
}
.prx-file .prx-file-sub {
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.prx-onblue .prx-label {
  color: rgba(255, 255, 255, .92);
}
.prx-onblue .prx-hint {
  color: rgba(255, 255, 255, .7);
}
.prx-onblue .prx-file {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .4);
}
.prx-onblue .prx-file .prx-file-title {
  color: #fff;
}
.prx-onblue .prx-file .prx-file-sub {
  color: rgba(255, 255, 255, .7);
}
.prx-table-wrap {
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  overflow: hidden;
  background: #fff;
}
.prx-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-family: var(--prx-font-data);
  font-size: var(--prx-text-data-sz);
}
.prx-table thead th {
  position: sticky;
  top: 0;
  height: 36px;
  padding: 0 var(--prx-space-3);
  text-align: left;
  background: var(--prx-bg-panel);
  color: var(--prx-text-subtle);
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-bold);
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
  border-bottom: 1px solid var(--prx-border-strong);
}
.prx-table tbody td {
  height: var(--prx-row-h);
  padding: 0 var(--prx-space-3);
  color: var(--prx-text-body);
  border-bottom: 1px solid var(--prx-border);
  white-space: nowrap;
}
.prx-table tbody tr:last-child td {
  border-bottom: none;
}
.prx-table td.num,
.prx-table th.num {
  text-align: right;
  font-feature-settings: var(--prx-tnum);
}
.prx-table .col-check {
  width: 36px;
  text-align: center;
}
.prx-table tbody tr:hover td {
  background: var(--prx-bg-hover);
}
.prx-table tbody tr.is-selected td {
  background: var(--prx-bg-selected);
}
.prx-table tbody tr.is-selected td:first-child {
  box-shadow: inset 3px 0 0 var(--prx-primary);
}
.prx-table tbody tr.row-shortfall td {
  background: var(--prx-warning-bg);
}
.prx-table tbody tr.row-shortfall:hover td {
  background: #F8EBC9;
}
.prx-table tbody tr.row-shortfall td:first-child {
  box-shadow: inset 3px 0 0 var(--prx-warning-fill);
}
.prx-table tbody tr.row-override td:first-child {
  box-shadow: inset 3px 0 0 var(--prx-danger-fill);
}
.prx-check {
  width: 16px;
  height: 16px;
  accent-color: var(--prx-primary);
  cursor: pointer;
}
.prx-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 22px;
  padding: 0 var(--prx-space-2);
  font-family: var(--prx-font-sans);
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
  line-height: 1;
  border: 1px solid transparent;
  border-radius: var(--prx-radius-full);
  white-space: nowrap;
}
.prx-pill .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex: none;
  background: currentColor;
}
.prx-pill svg {
  width: 12px;
  height: 12px;
  flex: none;
}
.prx-pill--draft {
  background: #EEF1F5;
  color: #56606B;
  border-color: #D8DEE5;
}
.prx-pill--shortfall {
  background: var(--prx-warning-bg);
  color: var(--prx-warning-text);
  border-color: var(--prx-warning-border);
}
.prx-pill--complete {
  background: var(--prx-success-bg);
  color: var(--prx-success-text);
  border-color: var(--prx-success-border);
}
.prx-pill--closed {
  background: #E5E9EE;
  color: #3D4A59;
  border-color: #CCD4DE;
}
.prx-pill--cancelled {
  background: #F2ECEC;
  color: #7A5450;
  border-color: #E2D2D0;
}
.prx-pill--cancelled .label {
  text-decoration: line-through;
}
.prx-pill--awaiting {
  background: var(--prx-info-bg);
  color: var(--prx-info-text);
  border-color: var(--prx-info-border);
}
.prx-pill--override {
  background: var(--prx-gold-100);
  color: var(--prx-gold-700);
  border-color: var(--prx-warning-border);
}
.prx-chip-short {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 1px var(--prx-space-2);
  background: var(--prx-warning-bg);
  color: var(--prx-warning-text);
  border: 1px solid var(--prx-warning-border);
  border-radius: var(--prx-radius-sm);
  font-family: var(--prx-font-data);
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
}
.prx-chip-short svg {
  width: 12px;
  height: 12px;
  flex: none;
  color: var(--prx-warning-fill);
}
.prx-chip-short .sep {
  opacity: .5;
}
.prx-chip-short .exp {
  font-weight: var(--prx-fw-reg);
}
.prx-audit {
  display: flex;
  flex-direction: column;
  padding-left: var(--prx-space-1);
}
.prx-audit-item {
  position: relative;
  padding: 0 0 var(--prx-space-4) var(--prx-space-5);
  border-left: 2px solid var(--prx-border);
  margin-left: 4px;
}
.prx-audit-item:last-child {
  border-left-color: transparent;
  padding-bottom: 0;
}
.prx-audit-item::before {
  content: "";
  position: absolute;
  left: -6px;
  top: 3px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--prx-primary);
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px var(--prx-border);
}
.prx-audit-item.is-override::before {
  background: var(--prx-danger-fill);
}
.prx-audit-item.is-success::before {
  background: var(--prx-success-fill);
}
.prx-audit-head {
  display: flex;
  align-items: center;
  gap: var(--prx-space-2);
  font-size: var(--prx-text-small);
}
.prx-audit-head .time {
  font-family: var(--prx-font-mono);
  color: var(--prx-text-muted);
}
.prx-audit-head .who {
  font-weight: var(--prx-fw-bold);
  color: var(--prx-text-strong);
}
.prx-audit-head .sep {
  color: var(--prx-border-strong);
}
.prx-audit-action {
  margin-top: 2px;
  font-size: var(--prx-text-body-sz);
  font-weight: var(--prx-fw-semi);
  color: var(--prx-text-body);
}
.prx-audit-reason {
  margin-top: var(--prx-space-1);
  padding: var(--prx-space-2) var(--prx-space-3);
  background: var(--prx-bg-panel);
  border-left: 2px solid var(--prx-border-strong);
  border-radius: 0 var(--prx-radius-sm) var(--prx-radius-sm) 0;
  font-size: var(--prx-text-small);
  color: var(--prx-text-subtle);
}
.prx-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(10, 15, 30, .45);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  z-index: 1000;
}
.prx-modal {
  width: 480px;
  max-width: 100%;
  background: #fff;
  border-radius: var(--prx-radius-lg);
  box-shadow: var(--prx-shadow-lg);
  border-top: 4px solid var(--prx-warning-fill);
  overflow: hidden;
}
.prx-modal-head {
  display: flex;
  align-items: flex-start;
  gap: var(--prx-space-3);
  padding: var(--prx-space-5);
  border-bottom: 1px solid var(--prx-border);
}
.prx-modal-head .ic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: none;
  background: var(--prx-warning-bg);
  color: var(--prx-warning-fill);
  border-radius: var(--prx-radius-sm);
}
.prx-modal-head .ic svg {
  width: 20px;
  height: 20px;
}
.prx-modal-title {
  font-size: var(--prx-text-h3);
  font-weight: var(--prx-fw-bold);
  color: var(--prx-text-strong);
}
.prx-modal-sub {
  margin-top: 2px;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.prx-modal-body {
  display: flex;
  flex-direction: column;
  gap: var(--prx-space-4);
  padding: var(--prx-space-5);
}
.prx-counter {
  display: flex;
  justify-content: space-between;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.prx-counter.is-ok {
  color: var(--prx-success-text);
  font-weight: var(--prx-fw-semi);
}
.prx-modal-foot {
  display: flex;
  justify-content: flex-end;
  gap: var(--prx-space-2);
  padding: var(--prx-space-4) var(--prx-space-5);
  background: var(--prx-bg-panel);
  border-top: 1px solid var(--prx-border);
}
.prx-toast {
  display: flex;
  align-items: flex-start;
  gap: var(--prx-space-3);
  width: 360px;
  max-width: 100%;
  padding: var(--prx-space-3);
  background: #fff;
  border: 1px solid var(--prx-border);
  border-left: 4px solid var(--prx-ch, var(--prx-primary));
  border-radius: var(--prx-radius-md);
  box-shadow: var(--prx-shadow-md);
}
.prx-toast .ch {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: none;
  border-radius: var(--prx-radius-sm);
  background: color-mix(in srgb, var(--prx-ch) 14%, #fff);
  color: var(--prx-ch);
}
.prx-toast .ch svg {
  width: 18px;
  height: 18px;
}
.prx-toast .body {
  flex: 1;
  min-width: 0;
}
.prx-toast .t-title {
  font-size: var(--prx-text-body-sz);
  font-weight: var(--prx-fw-bold);
  color: var(--prx-text-strong);
}
.prx-toast .t-msg {
  margin-top: 1px;
  font-size: var(--prx-text-small);
  color: var(--prx-text-subtle);
}
.prx-toast .t-time {
  margin-top: var(--prx-space-1);
  font-family: var(--prx-font-mono);
  font-size: var(--prx-text-caption);
  color: var(--prx-text-muted);
}
.prx-toast .t-close {
  flex: none;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: var(--prx-text-muted);
  cursor: pointer;
  border-radius: 4px;
}
.prx-toast .t-close:hover {
  background: var(--prx-bg-hover);
  color: var(--prx-text-body);
}
.prx-toast--whatsapp {
  --prx-ch:#25925A;
}
.prx-toast--sms {
  --prx-ch:#244494;
}
.prx-toast--email {
  --prx-ch:#916B00;
}
.prx-appbar {
  display: flex;
  align-items: center;
  gap: var(--prx-space-4);
  height: 56px;
  padding: 0 var(--prx-space-4);
  background: #fff;
  border-bottom: 1px solid var(--prx-border);
}
.prx-logo {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px 8px;
  border: 1.5px solid var(--prx-red-logo);
  border-radius: var(--prx-radius-sm);
  flex: none;
}
.prx-logo .name {
  font-family: var(--prx-font-sans);
  font-weight: 800;
  font-size: 16px;
  color: var(--prx-primary);
  letter-spacing: -.01em;
}
.prx-logo .plus {
  color: var(--prx-red-logo);
  font-weight: 800;
  font-size: 13px;
  line-height: 1;
  align-self: flex-start;
  margin-top: 1px;
}
.prx-crumbs {
  display: flex;
  align-items: center;
  gap: var(--prx-space-1);
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.prx-crumbs a {
  color: var(--prx-text-muted);
  text-decoration: none;
}
.prx-crumbs a:hover {
  color: var(--prx-primary);
}
.prx-crumbs .here {
  color: var(--prx-text-strong);
  font-weight: var(--prx-fw-semi);
}
.prx-crumbs svg {
  width: 14px;
  height: 14px;
  color: var(--prx-border-strong);
}
.prx-search {
  position: relative;
  flex: 1;
  max-width: 420px;
}
.prx-search svg {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  color: var(--prx-text-muted);
  pointer-events: none;
}
.prx-search input {
  width: 100%;
  height: 34px;
  padding: 0 12px 0 32px;
  background: var(--prx-bg-page);
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-sm);
  font-size: var(--prx-text-small);
  color: var(--prx-text-body);
}
.prx-search input:focus {
  outline: none;
  background: #fff;
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.prx-appbar-right {
  display: flex;
  align-items: center;
  gap: var(--prx-space-2);
  margin-left: auto;
}
.prx-bell {
  position: relative;
}
.prx-bell .badge {
  position: absolute;
  top: 2px;
  right: 2px;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--prx-danger-fill);
  color: #fff;
  font-family: var(--prx-font-data);
  font-size: 9px;
  font-weight: 700;
  border-radius: 999px;
  border: 2px solid #fff;
}
.prx-usermenu {
  display: flex;
  align-items: center;
  gap: var(--prx-space-2);
  height: 38px;
  padding: 0 var(--prx-space-2);
  border-radius: var(--prx-radius-sm);
  cursor: pointer;
}
.prx-usermenu:hover {
  background: var(--prx-bg-hover);
}
.prx-avatar {
  width: 28px;
  height: 28px;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--prx-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
}
.prx-usermenu .uname {
  font-size: var(--prx-text-small);
  font-weight: var(--prx-fw-semi);
  color: var(--prx-text-body);
}
.prx-usermenu .uchev {
  width: 14px;
  height: 14px;
  color: var(--prx-text-muted);
}
.frame-d .vp-d {
  height: 840px;
  overflow: hidden;
  position: relative;
  background: var(--prx-bg-page);
}
.frame-p .screen {
  position: relative;
}
.frame-p .scr {
  flex: 1;
  min-height: 0;
}
.scr {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--prx-bg-page);
  font-family: var(--prx-font-sans);
  color: var(--prx-text-body);
}
.scr-top {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 50px;
  padding: 0 14px;
  background: #fff;
  border-bottom: 1px solid var(--prx-border);
  flex: none;
}
.scr-top .back {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: transparent;
  color: var(--prx-text-muted);
  border-radius: var(--prx-radius-sm);
  cursor: pointer;
}
.scr-top .back:hover {
  background: var(--prx-bg-hover);
  color: var(--prx-text-body);
}
.scr-top .back svg {
  width: 18px;
  height: 18px;
}
.scr-top .s-title {
  font-size: var(--prx-text-h4);
  font-weight: 800;
  color: var(--prx-text-strong);
}
.scr-top .s-right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
}
.scr-scroll {
  flex: 1;
  min-height: 0;
  overflow: auto;
}
.scr-foot {
  flex: none;
  background: #fff;
  border-top: 1px solid var(--prx-border);
  padding: 12px 16px;
  box-shadow: 0 -2px 8px rgba(36, 68, 148, .05);
}
.ind-head {
  background: #fff;
  border-bottom: 1px solid var(--prx-border);
  padding: 14px 16px;
}
.ind-head .h-grid {
  display: flex;
  gap: 16px;
  align-items: flex-end;
  flex-wrap: wrap;
}
.ind-head .h-grid .prx-field {
  flex: 1;
  min-width: 200px;
}
.prod-meta {
  display: flex;
  gap: 22px;
  flex: none;
}
.prod-meta .pm .pm-l {
  font-size: var(--prx-text-caption);
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--prx-text-muted);
  font-weight: 700;
}
.prod-meta .pm .pm-v {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: var(--prx-text-body-sz);
  font-weight: 700;
  color: var(--prx-text-strong);
  margin-top: 2px;
}
.bom-strip {
  margin-top: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: var(--prx-success-bg);
  border: 1px solid var(--prx-success-border);
  border-radius: var(--prx-radius-sm);
  color: var(--prx-success-text);
  font-size: var(--prx-text-small);
  font-weight: 700;
}
.bom-strip svg {
  width: 16px;
  height: 16px;
  flex: none;
}
.bom-strip .ghost-warn {
  margin-left: auto;
  color: var(--prx-text-muted);
  font-weight: 400;
  font-family: var(--prx-font-mono);
  font-size: var(--prx-text-caption);
}
.ind-table-wrap {
  padding: 16px;
}
.ind-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-family: var(--prx-font-data);
  font-size: var(--prx-text-data-sz);
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  overflow: hidden;
}
.ind-table thead th {
  height: 38px;
  padding: 0 12px;
  text-align: left;
  background: var(--prx-bg-panel);
  color: var(--prx-text-subtle);
  font-size: var(--prx-text-small);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  white-space: nowrap;
  border-bottom: 1px solid var(--prx-border-strong);
}
.ind-table th.num,
.ind-table td.num {
  text-align: right;
  font-feature-settings: var(--prx-tnum);
}
.ind-table tbody td {
  padding: 9px 12px;
  border-bottom: 1px solid var(--prx-border);
  color: var(--prx-text-body);
  vertical-align: middle;
}
.ind-table tbody tr.item:last-of-type td,
.ind-table tbody tr.item:last-child td {
}
.ind-table .it-name {
  font-family: var(--prx-font-sans);
  font-weight: 700;
  color: var(--prx-text-strong);
}
.ind-table .it-grade {
  font-family: var(--prx-font-mono);
  font-size: var(--prx-text-caption);
  color: var(--prx-text-muted);
}
.ind-table tr.item.is-short td {
  background: var(--prx-warning-bg);
}
.ind-table tr.item.is-short td:first-child {
  box-shadow: inset 3px 0 0 var(--prx-warning-fill);
}
.ind-table tr.item.is-issued td:first-child {
  box-shadow: inset 3px 0 0 var(--prx-success-fill);
}
.issue-edit {
  display: inline-flex;
  align-items: stretch;
  height: 32px;
  width: 128px;
  background: #fff;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-sm);
  overflow: hidden;
  margin-left: auto;
}
.issue-edit:focus-within {
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.issue-edit.maxed {
  border-color: var(--prx-warning-fill);
}
.issue-edit input {
  width: 100%;
  border: none;
  outline: none;
  text-align: right;
  padding: 0 8px;
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: var(--prx-text-data-sz);
  font-weight: 700;
  color: var(--prx-text-strong);
  background: transparent;
}
.issue-edit .u {
  display: flex;
  align-items: center;
  padding: 0 8px;
  background: var(--prx-bg-panel);
  border-left: 1px solid var(--prx-border);
  color: var(--prx-text-muted);
  font-size: var(--prx-text-caption);
  font-weight: 700;
}
td.issue-cell {
  text-align: right;
}
.sf-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 1px 7px;
  background: var(--prx-warning-bg);
  color: var(--prx-warning-text);
  border: 1px solid var(--prx-warning-border);
  border-radius: var(--prx-radius-sm);
  font-size: var(--prx-text-small);
  font-weight: 700;
}
.sf-chip svg {
  width: 12px;
  height: 12px;
  color: var(--prx-warning-fill);
}
.sf-zero {
  color: var(--prx-text-muted);
}
tr.subrow td {
  padding: 0;
  background: var(--prx-warning-bg);
  border-bottom: 1px solid var(--prx-warning-border);
}
.sub-inner {
  padding: 12px 16px 14px 50px;
  display: flex;
  gap: 16px;
  align-items: flex-end;
  flex-wrap: wrap;
}
.sub-inner .sub-tag {
  display: flex;
  align-items: center;
  gap: 6px;
  align-self: center;
  font-size: var(--prx-text-small);
  font-weight: 700;
  color: var(--prx-warning-text);
  margin-right: 4px;
}
.sub-inner .sub-tag svg {
  width: 14px;
  height: 14px;
}
.sub-inner .prx-field {
  min-width: 150px;
}
.sub-inner .prx-field .prx-label {
  color: var(--prx-warning-text);
}
.ing-list {
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ing-card {
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  overflow: hidden;
  box-shadow: var(--prx-shadow-sm);
}
.ing-card.short {
  border-color: var(--prx-warning-border);
  box-shadow: 0 0 0 1px var(--prx-warning-border);
}
.ing-card.issued {
  border-color: var(--prx-success-border);
}
.ing-h {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 12px 14px 10px;
}
.ing-h .ing-name {
  font-size: var(--prx-text-body-sz);
  font-weight: 800;
  color: var(--prx-text-strong);
  line-height: 1.25;
}
.ing-h .ing-grade {
  font-family: var(--prx-font-mono);
  font-size: var(--prx-text-caption);
  color: var(--prx-text-muted);
  margin-top: 2px;
}
.ing-h .ing-flag {
  margin-left: auto;
  flex: none;
}
.ing-mets {
  display: flex;
  border-top: 1px solid var(--prx-border);
}
.ing-mets .im {
  flex: 1;
  padding: 8px 14px;
  border-right: 1px solid var(--prx-border);
}
.ing-mets .im:last-child {
  border-right: none;
}
.ing-mets .im-l {
  font-size: var(--prx-text-caption);
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--prx-text-muted);
  font-weight: 700;
}
.ing-mets .im-v {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: var(--prx-text-body-sz);
  font-weight: 700;
  color: var(--prx-text-body);
  margin-top: 2px;
}
.ing-mets .im-v.short {
  color: var(--prx-warning-text);
}
.ing-issue {
  padding: 12px 14px;
  border-top: 1px solid var(--prx-border);
}
.ing-issue .ii-l {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.ing-issue .ii-l span {
  font-size: var(--prx-text-small);
  font-weight: 700;
  color: var(--prx-text-subtle);
}
.ing-issue .ii-l .cap {
  font-family: var(--prx-font-mono);
  font-weight: 400;
  color: var(--prx-text-muted);
  font-size: var(--prx-text-caption);
}
.stepper {
  display: flex;
  align-items: stretch;
  height: 50px;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-sm);
  overflow: hidden;
}
.stepper:focus-within {
  border-color: var(--prx-primary);
  box-shadow: var(--prx-focus-glow);
}
.stepper.maxed {
  border-color: var(--prx-warning-fill);
}
.stepper button {
  width: 52px;
  flex: none;
  border: none;
  background: var(--prx-bg-panel);
  color: var(--prx-primary);
  font-size: 24px;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.stepper button:active {
  background: var(--prx-bg-hover);
}
.stepper button:disabled {
  color: var(--prx-border-strong);
  cursor: not-allowed;
}
.stepper input {
  flex: 1;
  min-width: 0;
  border: none;
  outline: none;
  text-align: center;
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: 20px;
  font-weight: 700;
  color: var(--prx-text-strong);
  background: #fff;
}
.stepper .u {
  display: flex;
  align-items: center;
  padding: 0 12px;
  background: #fff;
  border-left: 1px solid var(--prx-border);
  color: var(--prx-text-muted);
  font-size: var(--prx-text-small);
  font-weight: 700;
}
.ing-short {
  padding: 12px 14px;
  background: var(--prx-warning-bg);
  border-top: 1px solid var(--prx-warning-border);
}
.ing-short .is-head {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: var(--prx-text-small);
  font-weight: 800;
  color: var(--prx-warning-text);
  margin-bottom: 10px;
}
.ing-short .is-head svg {
  width: 15px;
  height: 15px;
}
.ing-short .is-fields {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ing-short .prx-label {
  color: var(--prx-warning-text);
}
.foot-d {
  display: flex;
  align-items: center;
  gap: 16px;
}
.foot-sum {
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.foot-sum b {
  color: var(--prx-text-strong);
  font-weight: 700;
}
.foot-sum .sf {
  color: var(--prx-warning-text);
  font-weight: 700;
}
.foot-d .foot-act {
  margin-left: auto;
  display: flex;
  gap: 8px;
}
.foot-m .foot-sum {
  margin-bottom: 10px;
  text-align: center;
}
.foot-m .prx-btn {
  width: 100%;
  height: 52px;
  font-size: var(--prx-text-body-sz);
}
.foot-d .prx-btn {
  height: 38px;
}
.prx-backdrop.inframe {
  position: absolute;
  z-index: 60;
}
.toast-layer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  z-index: 70;
  pointer-events: none;
}
.toast-layer .prx-toast {
  pointer-events: auto;
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
}
.scr-foot.is-issued {
  background: var(--prx-success-bg);
  border-top-color: var(--prx-success-border);
}
.state-block {
  margin-bottom: 46px;
}
.state-head {
  max-width: 1500px;
  margin: 0 auto 14px;
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.state-head .badge {
  font-family: var(--prx-font-mono);
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  background: var(--prx-primary);
  padding: 3px 10px;
  border-radius: 999px;
}
.state-head .badge.b {
  background: var(--prx-warning-fill);
}
.state-head .badge.c {
  background: var(--prx-danger-fill);
}
.state-head h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 900;
  color: var(--prx-text-strong);
}
.state-head p {
  margin: 0;
  font-size: 13px;
  color: var(--prx-text-muted);
}
.pair {
  display: flex;
  gap: 34px;
  align-items: flex-start;
  flex-wrap: wrap;
  max-width: 1500px;
  margin: 0 auto;
}
.canvas {
  background: #E7EBEF;
  min-height: 100vh;
  padding: 28px;
}
.canvas-head {
  max-width: 1700px;
  margin: 0 auto 22px;
}
.canvas-head h1 {
  margin: 0 0 4px;
  font-family: var(--prx-font-sans);
  font-size: 20px;
  font-weight: 900;
  color: var(--prx-text-strong);
}
.canvas-head p {
  margin: 0;
  font-size: 14px;
  color: var(--prx-text-muted);
}
.stage-row {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  flex-wrap: wrap;
  max-width: 1700px;
  margin: 0 auto;
}
.stage-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.stage-cap {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--prx-font-mono);
  font-size: 12px;
  color: var(--prx-text-subtle);
}
.stage-cap b {
  font-family: var(--prx-font-sans);
  font-weight: 700;
  color: var(--prx-text-strong);
  font-size: 13px;
}
.frame-d {
  width: 1280px;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--prx-shadow-lg);
  border: 1px solid var(--prx-border-strong);
  background: #fff;
}
.frame-d .chrome {
  height: 38px;
  background: #dfe4ea;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border-bottom: 1px solid var(--prx-border-strong);
}
.frame-d .chrome .dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
}
.frame-d .chrome .url {
  margin-left: 10px;
  flex: 1;
  height: 22px;
  background: #fff;
  border-radius: 5px;
  display: flex;
  align-items: center;
  padding: 0 10px;
  font-family: var(--prx-font-mono);
  font-size: 11px;
  color: var(--prx-text-muted);
}
.frame-d .viewport {
  height: 840px;
  overflow: auto;
  background: var(--prx-bg-page);
}
.frame-p {
  width: 390px;
  border-radius: 34px;
  padding: 10px;
  background: #0E1726;
  box-shadow: var(--prx-shadow-lg);
}
.frame-p .screen {
  border-radius: 26px;
  overflow: hidden;
  background: var(--prx-bg-page);
  height: 820px;
  display: flex;
  flex-direction: column;
}
.frame-p .statusbar {
  height: 30px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 18px;
  flex: none;
  font-family: var(--prx-font-data);
  font-size: 12px;
  font-weight: 600;
  color: var(--prx-text-strong);
}
.frame-p .viewport-m {
  flex: 1;
  overflow: auto;
}
.scaler {
  transform-origin: top left;
}
.dash {
  font-family: var(--prx-font-sans);
  color: var(--prx-text-body);
}
.dash-body {
  padding: var(--prx-space-6);
  display: flex;
  flex-direction: column;
  gap: var(--prx-space-5);
}
.dash-m .dash-body {
  padding: var(--prx-space-3);
  gap: var(--prx-space-3);
}
.greet {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}
.greet h1 {
  margin: 0;
  font-size: var(--prx-text-h1);
  font-weight: 900;
  color: var(--prx-text-strong);
  letter-spacing: -.01em;
}
.greet .sub {
  margin-top: 3px;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.greet .sub b {
  color: var(--prx-text-subtle);
  font-weight: 700;
}
.dash-m .greet {
  display: block;
}
.dash-m .greet h1 {
  font-size: 22px;
  line-height: 1.2;
}
.dash-m .greet .sub {
  margin-top: 5px;
}
.attn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: var(--prx-danger-bg);
  border: 1px solid var(--prx-danger-border);
  border-radius: var(--prx-radius-md);
  color: var(--prx-danger-text);
  font-weight: 700;
  font-size: var(--prx-text-body-sz);
  cursor: pointer;
}
.attn svg {
  width: 18px;
  height: 18px;
  flex: none;
}
.attn .arrow {
  margin-left: auto;
}
.attn:hover {
  background: #F8DEDB;
}
.sec-label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 2px 0 -4px;
}
.sec-label .t {
  font-size: var(--prx-text-h6);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--prx-text-subtle);
}
.sec-label .ln {
  flex: 1;
  height: 1px;
  background: var(--prx-border);
}
.kpi-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.dash-m .kpi-row {
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.kpi {
  position: relative;
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  box-shadow: var(--prx-shadow-sm);
  padding: 16px 16px 14px;
  overflow: hidden;
}
.kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--k,var(--prx-primary));
}
.kpi .k-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.kpi .k-label {
  font-size: var(--prx-text-small);
  font-weight: 700;
  color: var(--prx-text-muted);
}
.kpi .k-ic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 6px;
  background: color-mix(in srgb, var(--k) 14%, #fff);
  color: var(--k);
}
.kpi .k-ic svg {
  width: 15px;
  height: 15px;
}
.kpi .k-num {
  margin-top: 10px;
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
  color: var(--prx-text-strong);
}
.dash-m .kpi .k-num {
  font-size: 30px;
}
.kpi .k-ctx {
  margin-top: 7px;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
  display: flex;
  align-items: center;
  gap: 5px;
}
.kpi .k-ctx .flag {
  font-weight: 700;
}
.kpi .k-ctx .flag.warn {
  color: var(--prx-warning-text);
}
.kpi .k-ctx .flag.danger {
  color: var(--prx-danger-text);
}
.kpi .k-ctx .flag.ok {
  color: var(--prx-success-text);
}
.qa-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.dash-m .qa-row {
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.qa {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 64px;
  padding: 0 16px;
  background: #fff;
  border: 1px solid var(--prx-border-strong);
  border-radius: var(--prx-radius-md);
  cursor: pointer;
  text-align: left;
  transition:
    box-shadow .12s ease,
    border-color .12s ease,
    transform .06s ease;
  font-family: var(--prx-font-sans);
}
.dash-m .qa {
  min-height: 72px;
}
.qa:hover {
  box-shadow: var(--prx-shadow-md);
  border-color: var(--prx-primary);
}
.qa:active {
  transform: translateY(1px);
}
.qa .qa-ic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  flex: none;
  border-radius: var(--prx-radius-sm);
  background: color-mix(in srgb, var(--qa,var(--prx-primary)) 14%, #fff);
  color: var(--qa,var(--prx-primary));
}
.qa .qa-ic svg {
  width: 20px;
  height: 20px;
}
.qa .qa-tx {
  font-size: var(--prx-text-body-sz);
  font-weight: 700;
  color: var(--prx-text-strong);
  line-height: 1.2;
}
.dash-cols {
  display: grid;
  grid-template-columns: 1.7fr 1fr;
  gap: 16px;
  align-items: start;
}
.col-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.card {
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  box-shadow: var(--prx-shadow-sm);
  overflow: hidden;
}
.card-head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--prx-border);
}
.card-head .c-title {
  font-size: var(--prx-text-h4);
  font-weight: 800;
  color: var(--prx-text-strong);
}
.card-head .c-meta {
  margin-left: auto;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.card-head .count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  background: var(--prx-danger-fill);
  color: #fff;
  font-family: var(--prx-font-data);
  font-size: 11px;
  font-weight: 700;
  border-radius: 999px;
}
.card-body {
  padding: 16px;
}
.crit {
  display: flex;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--prx-border);
  align-items: flex-start;
}
.crit:last-child {
  border-bottom: none;
}
.crit .sev {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex: none;
  border-radius: var(--prx-radius-sm);
}
.crit .sev svg {
  width: 18px;
  height: 18px;
}
.crit .sev--danger {
  background: var(--prx-danger-bg);
  color: var(--prx-danger-fill);
}
.crit .sev--warn {
  background: var(--prx-warning-bg);
  color: var(--prx-warning-fill);
}
.crit .c-main {
  flex: 1;
  min-width: 0;
}
.crit .c-title {
  font-size: var(--prx-text-body-sz);
  font-weight: 700;
  color: var(--prx-text-strong);
}
.crit .c-sub {
  margin-top: 2px;
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.crit .c-sub b {
  color: var(--prx-text-subtle);
}
.crit .c-act {
  display: flex;
  gap: 8px;
  align-items: center;
  flex: none;
}
.dash-m .crit {
  flex-wrap: wrap;
}
.dash-m .crit .c-act {
  width: 100%;
  padding-left: 44px;
}
.dash-m .crit .c-act .prx-btn {
  flex: 1;
}
.dept-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.dash-m .dept-grid {
  grid-template-columns: 1fr;
}
.dept {
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  box-shadow: var(--prx-shadow-sm);
  padding: 14px;
}
.dept .d-head {
  display: flex;
  align-items: center;
  gap: 8px;
}
.dept .d-ic {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  flex: none;
  background: color-mix(in srgb, var(--d,var(--prx-primary)) 14%, #fff);
  color: var(--d,var(--prx-primary));
}
.dept .d-ic svg {
  width: 16px;
  height: 16px;
}
.dept .d-name {
  font-size: var(--prx-text-body-sz);
  font-weight: 800;
  color: var(--prx-text-strong);
}
.dept .d-metrics {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.dept .d-met {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.dept .d-met .m-l {
  font-size: var(--prx-text-small);
  color: var(--prx-text-muted);
}
.dept .d-met .m-v {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: var(--prx-text-body-sz);
  font-weight: 700;
  color: var(--prx-text-body);
}
.dept .spark {
  margin-top: 12px;
}
.dept .spark svg {
  width: 100%;
  height: 30px;
  display: block;
}
.dept .spark .cap {
  margin-top: 4px;
  font-size: var(--prx-text-caption);
  color: var(--prx-text-muted);
}
.age {
  display: grid;
  grid-template-columns: 120px repeat(4, 1fr);
  gap: 6px;
  align-items: center;
}
.dash-m .age {
  grid-template-columns: 84px repeat(4, 1fr);
  gap: 4px;
}
.age .h {
  font-size: var(--prx-text-small);
  font-weight: 700;
  color: var(--prx-text-subtle);
  text-align: center;
}
.age .h.row {
  text-align: left;
}
.age .rl {
  font-size: var(--prx-text-small);
  font-weight: 700;
  color: var(--prx-text-body);
}
.age .cell {
  height: 46px;
  border-radius: var(--prx-radius-sm);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
}
.dash-m .age .cell {
  height: 52px;
}
.age .cell .n {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
.age .cell .b {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-top: 2px;
  opacity: .7;
}
.age .cell.b0 {
  background: var(--prx-success-bg);
  color: var(--prx-success-text);
  border-color: var(--prx-success-border);
}
.age .cell.b1 {
  background: var(--prx-warning-bg);
  color: var(--prx-warning-text);
  border-color: var(--prx-warning-border);
}
.age .cell.b2 {
  background: #FBE6C7;
  color: #8A5500;
  border-color: #EBCB95;
}
.age .cell.b3 {
  background: var(--prx-danger-bg);
  color: var(--prx-danger-text);
  border-color: var(--prx-danger-border);
}
.age .cell.zero {
  background: var(--prx-bg-panel);
  color: var(--prx-text-muted);
  border-color: var(--prx-border);
}
.flow {
  display: flex;
  align-items: stretch;
  gap: 0;
}
.dash-m .flow {
  flex-direction: column;
  gap: 8px;
}
.flow .stage {
  flex: 1;
  background: var(--prx-info-bg);
  border: 1px solid var(--prx-info-border);
  padding: 12px 8px;
  text-align: center;
  position: relative;
}
.flow .stage:first-child {
  border-radius: var(--prx-radius-sm) 0 0 var(--prx-radius-sm);
}
.flow .stage:last-child {
  border-radius: 0 var(--prx-radius-sm) var(--prx-radius-sm) 0;
  background: var(--prx-success-bg);
  border-color: var(--prx-success-border);
}
.dash-m .flow .stage {
  border-radius: var(--prx-radius-sm) !important;
}
.flow .stage .s-n {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: 24px;
  font-weight: 700;
  color: var(--prx-primary);
  line-height: 1;
}
.flow .stage:last-child .s-n {
  color: var(--prx-success-text);
}
.flow .stage .s-l {
  margin-top: 5px;
  font-size: var(--prx-text-caption);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  color: var(--prx-text-subtle);
}
.flow .conn {
  display: flex;
  align-items: center;
  color: var(--prx-border-strong);
  padding: 0 2px;
}
.dash-m .flow .conn {
  transform: rotate(90deg);
  align-self: center;
}
.flow .conn svg {
  width: 16px;
  height: 16px;
}
.alert {
  display: flex;
  gap: 10px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--prx-border);
  align-items: flex-start;
}
.alert:last-child {
  border-bottom: none;
}
.alert .a-dot {
  width: 30px;
  height: 30px;
  flex: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.alert .a-dot svg {
  width: 15px;
  height: 15px;
}
.alert .a-dot.danger {
  background: var(--prx-danger-bg);
  color: var(--prx-danger-fill);
}
.alert .a-dot.warn {
  background: var(--prx-warning-bg);
  color: var(--prx-warning-fill);
}
.alert .a-dot.info {
  background: var(--prx-info-bg);
  color: var(--prx-info-fill);
}
.alert .a-dot.ok {
  background: var(--prx-success-bg);
  color: var(--prx-success-fill);
}
.alert .a-main {
  flex: 1;
  min-width: 0;
}
.alert .a-tx {
  font-size: var(--prx-text-small);
  color: var(--prx-text-body);
  line-height: 1.45;
}
.alert .a-tx b {
  color: var(--prx-text-strong);
  font-weight: 700;
}
.alert .a-time {
  margin-top: 2px;
  font-family: var(--prx-font-mono);
  font-size: var(--prx-text-caption);
  color: var(--prx-text-muted);
}
.perf {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 16px;
  border-bottom: 1px solid var(--prx-border);
}
.perf:last-child {
  border-bottom: none;
}
.perf .p-l {
  font-size: var(--prx-text-body-sz);
  color: var(--prx-text-subtle);
  font-weight: 600;
}
.perf .p-r {
  display: flex;
  align-items: center;
  gap: 10px;
}
.perf .p-v {
  font-family: var(--prx-font-data);
  font-feature-settings: var(--prx-tnum);
  font-size: 20px;
  font-weight: 700;
  color: var(--prx-text-strong);
}
.perf .delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: var(--prx-text-small);
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 999px;
}
.perf .delta svg {
  width: 13px;
  height: 13px;
}
.perf .delta.up-good {
  background: var(--prx-success-bg);
  color: var(--prx-success-text);
}
.perf .delta.down-bad {
  background: var(--prx-danger-bg);
  color: var(--prx-danger-text);
}
.perf .delta.up-bad {
  background: var(--prx-danger-bg);
  color: var(--prx-danger-text);
}
.acc {
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: var(--prx-radius-md);
  box-shadow: var(--prx-shadow-sm);
  overflow: hidden;
}
.acc-head {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 52px;
  padding: 0 14px;
  background: #fff;
  border: none;
  cursor: pointer;
  font-family: var(--prx-font-sans);
  text-align: left;
}
.acc-head .ah-ic {
  color: var(--prx-text-muted);
  display: flex;
}
.acc-head .ah-ic svg {
  width: 18px;
  height: 18px;
}
.acc-head .ah-t {
  font-size: var(--prx-text-h4);
  font-weight: 800;
  color: var(--prx-text-strong);
}
.acc-head .ah-r {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
}
.acc-head .chev {
  transition: transform .18s ease;
  color: var(--prx-text-muted);
  display: flex;
}
.acc-head .chev svg {
  width: 18px;
  height: 18px;
}
.acc.open .acc-head .chev {
  transform: rotate(180deg);
}
.acc-body {
  display: none;
  border-top: 1px solid var(--prx-border);
}
.acc.open .acc-body {
  display: block;
}
.acc .count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  background: var(--prx-danger-fill);
  color: #fff;
  font-family: var(--prx-font-data);
  font-size: 11px;
  font-weight: 700;
  border-radius: 999px;
}
.notes-panel {
  max-width: 1700px;
  margin: 40px auto 0;
  background: #fff;
  border: 1px solid var(--prx-border);
  border-radius: 10px;
  padding: 24px 28px;
}
.notes-panel h3 {
  margin: 0 0 4px;
  font-size: 18px;
  font-weight: 900;
  color: var(--prx-text-strong);
}
.notes-panel .lead {
  margin: 0 0 18px;
  font-size: 14px;
  color: var(--prx-text-muted);
}
.notes-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px 32px;
}
@media (max-width:880px) {
  .notes-grid {
    grid-template-columns: 1fr;
  }
}
.notes-grid h4 {
  margin: 0 0 7px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--prx-accent);
  font-weight: 800;
}
.notes-grid ul {
  margin: 0;
  padding-left: 18px;
}
.notes-grid li {
  font-size: 13px;
  color: var(--prx-text-subtle);
  line-height: 1.6;
  margin-bottom: 5px;
}
.notes-grid li b {
  color: var(--prx-text-body);
}
.prx-input--error,
input.prx-input--error {
  border-color: var(--prx-danger-fill) !important;
  background: var(--prx-danger-bg);
  box-shadow: 0 0 0 1px var(--prx-danger-fill);
}
/*# sourceMappingURL=pulserx.bundle.B6XPKWG6.css.map */
