
[data-v-786726d7]:root {
  --flow-border-color: #a0aec0;
  --flow-blue: #3c82f6;
  --flow-purple: #5d81e7;
  --flow-green: #67c23a;
  --flow-background: #f7f8fa;
  --card-background: #fff;
  --text-primary: #333;
  --text-secondary: #888;
}
.system-flow-container[data-v-786726d7] {
  padding: 32px;
  background-color: var(--flow-background);
  font-family: 'PingFang SC', 'Helvetica Neue', Helvetica, 'Microsoft YaHei', Arial, sans-serif;
  overflow-x: auto;
}
.flow-header[data-v-786726d7] {
  text-align: center;
  margin-bottom: 56px;
}
.flow-header h1[data-v-786726d7] {
  font-size: 28px;
  color: var(--text-primary);
  font-weight: 600;
}
.flow-header p[data-v-786726d7] {
  font-size: 16px;
  color: var(--text-secondary);
}
.flow-wrapper[data-v-786726d7] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 160px;
  min-width: 1200px;
  position: relative;
}
.flow-column[data-v-786726d7] {
  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;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 280px;
}

/* CARDS */
.flow-card[data-v-786726d7] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: var(--card-background);
  border-radius: 8px;
  -webkit-box-shadow: 0 2px 8px rgba(99, 99, 99, 0.1);
          box-shadow: 0 2px 8px rgba(99, 99, 99, 0.1);
  padding: 12px 16px;
  width: 100%;
  min-height: 70px;
  border: 1px solid #e5e7eb;
}
.flow-card-dashed[data-v-786726d7] {
  background: var(--card-background);
  border-radius: 8px;
  padding: 8px 12px;
  width: 130px;
  text-align: center;
  border: 1px dashed var(--flow-border-color);
  color: #4a5568;
}
.icon-text[data-v-786726d7] { font-size: 24px; margin-right: 16px; width: 30px; text-align: center;
}
.flow-card div[data-v-786726d7]:not(.icon-text) { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; gap: 4px;
}
.flow-card strong[data-v-786726d7] { font-size: 16px; color: var(--text-primary); font-weight: 500;
}
.flow-card span[data-v-786726d7] { font-size: 12px; color: var(--text-secondary);
}

/* CARD MODIFIERS */
.flow-card.blue[data-v-786726d7] { background-color: var(--flow-blue); color: #fff; border: none;
}
.flow-card.blue strong[data-v-786726d7], .flow-card.blue span[data-v-786726d7] { color: #fff;
}
.flow-card.blue-border[data-v-786726d7] { border-color: var(--flow-blue);
}
.flow-card.highlight[data-v-786726d7] { background-color: #f0f6ff;
}
.flow-card.accent[data-v-786726d7] { border-color: var(--flow-green);
}
.flow-card.purple-solid[data-v-786726d7] { background-color: var(--flow-purple); color: #fff; border-color: var(--flow-purple);
}
.flow-card.purple-solid strong[data-v-786726d7], .flow-card.purple-solid span[data-v-786726d7] { color: #fff;
}

/* EXIT PROCESS CARD POSITIONS */
#exit-card[data-v-786726d7] { position: absolute; top: 780px; right: 0;
}
#weigh-out-card[data-v-786726d7] { position: absolute; top: 780px; right: -140px;
}

/* SIDE FLOW */
.side-flow[data-v-786726d7] {
  position: absolute;
  left: 450px;
  top: 328px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.flow-card-side[data-v-786726d7] {
  background: var(--card-background);
  border: 1px solid #e5e7eb;
  -webkit-box-shadow: 0 2px 8px rgba(99, 99, 99, 0.05);
          box-shadow: 0 2px 8px rgba(99, 99, 99, 0.05);
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 14px;
}
.flow-card-side.ledger[data-v-786726d7] {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 8px;
  background-color: #fafafa;
}
.side-connector[data-v-786726d7] {
  width: 24px;
  height: 1px;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, var(--flow-border-color)), color-stop(50%, transparent));
  background-image: linear-gradient(to right, var(--flow-border-color) 50%, transparent 50%);
  background-size: 8px 1px;
}

/* ARROWS & CONNECTORS */
.arrow-down[data-v-786726d7], .arrow-down-purple[data-v-786726d7], .arrow-down-stub[data-v-786726d7] {
  width: 1px;
  background-color: var(--flow-border-color);
  margin: 4px 0;
  position: relative;
}
.arrow-down[data-v-786726d7] { height: 32px;
}
.arrow-down-stub[data-v-786726d7] { height: 16px;
}
.arrow-down[data-v-786726d7]::after {
  content: '';
  position: absolute;
  left: -3px;
  bottom: -1px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--flow-border-color);
}
.arrow-down-purple[data-v-786726d7] { height: 32px; background-color: var(--flow-purple);
}
.arrow-down-purple[data-v-786726d7]::after {
  content: '';
  position: absolute;
  left: -3px;
  bottom: -1px;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--flow-purple);
}
.branch-container[data-v-786726d7] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-top: 8px;
}
.branch-connector-in[data-v-786726d7] {
  width: 60%;
  height: 16px;
  border-top: 1px solid var(--flow-border-color);
  border-left: 1px solid var(--flow-border-color);
  border-right: 1px solid var(--flow-border-color);
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
.arrow-merge[data-v-786726d7] {
  width: 60%;
  height: 16px;
  position: relative;
  border-bottom: 1px solid var(--flow-border-color);
  border-left: 1px solid var(--flow-border-color);
  border-right: 1px solid var(--flow-border-color);
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  margin-bottom: 8px;
}

/* SVG CONNECTORS */
.connector-svg[data-v-786726d7] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.connector-path-dotted[data-v-786726d7] {
  stroke: var(--flow-border-color);
  stroke-width: 1;
  fill: none;
  stroke-dasharray: 4 4;
}
.connector-path-solid[data-v-786726d7] {
  stroke: var(--flow-border-color);
  stroke-width: 1;
  fill: none;
}
.arrow-end[data-v-786726d7] {
  marker-end: url(#arrow-head);
}
.arrow-start[data-v-786726d7] {
  marker-start: url(#arrow-head-reverse);
}

