/* Business planner: flow, selections, mockup, and review panels */
.business-coordination-actor-pill {
  border: 1px solid #bfd5c6; border-radius: 999px; padding: 6px 12px 6px 8px; font-size: 13px; font-weight: 700;
  color: #294c3c; background: linear-gradient(180deg, #ffffff 0%, #edf7f1 100%); display: inline-flex;
  align-items: center; gap: 8px; box-shadow: 0 8px 18px rgba(55, 89, 67, 0.08);
}
.business-coordination-actor-icon {
  width: 32px; height: 32px; border-radius: 50%; background: linear-gradient(135deg, #e8fff1 0%, #cbeed8 100%);
  border: 1px solid rgba(80, 132, 101, 0.26); position: relative; display: inline-flex; align-items: center;
  justify-content: center; overflow: hidden; flex: 0 0 32px;
}
.business-coordination-actor-icon img {
  width: 100%; height: 100%; object-fit: cover; display: block; position: relative; z-index: 1;
}
.business-coordination-actor-initials {
  position: absolute; inset: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 13px;
  font-weight: 700; color: #28513e; letter-spacing: 0.04em;
}
.business-coordination-actor-icon.has-image:not(.icon-fallback) .business-coordination-actor-initials {
  display: none;
}
.business-coordination-actor-icon.icon-fallback .business-coordination-actor-initials {
  display: inline-flex; position: static;
}
.business-coordination-actor-arrow {
  font-size: 21px; line-height: 1; color: #2f7b57; font-weight: 700; display: inline-flex; align-items: center;
  justify-content: center; min-width: 18px;
}
.business-coordination-path-inline {
  margin-top: 4px; border: 1px dashed #c6d0d8; border-radius: 10px;
  background: linear-gradient(180deg, #f7fbff 0%, #eef7f1 100%); padding: 9px 11px; font-size: 14px;
  line-height: 1.35; font-weight: 600; color: #244f3b; overflow-wrap: anywhere;
}
.business-option-icon {
  width: 58px; height: 58px; border-radius: 16px; border: 2px solid #1b1d1f; object-fit: cover; flex: 0 0 58px;
  background: #fff;
}
.business-tech-stack { display: grid; gap: 14px; }
.business-tech-stack.compact { gap: 10px; }
.business-tech-group { display: grid; gap: 8px; }
.business-tech-choice { display: grid; gap: 8px; align-content: start; }
.business-tech-choice.has-subtech { grid-column: 1 / -1; }
.business-tech-choice.has-subtech > .business-tech-option { max-width: 240px; }
.business-tech-group-title {
  font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #56656f;
}
.business-tech-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.business-tech-grid.compact { grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 8px; }
.business-tech-option {
  display: flex; align-items: center; gap: 8px; border: 1px solid #c0c9d0; border-radius: 14px; background: #f8fbfd;
  padding: 8px 10px; cursor: pointer; text-align: left;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
  box-shadow: 0 6px 18px rgba(50, 58, 64, 0.06);
}
.business-tech-option.active {
  border-color: #00662C; box-shadow: 0 0 0 3px rgba(0, 102, 44, 0.18), 0 10px 22px rgba(42, 49, 55, 0.1);
  background: #eef7f1; transform: translateY(-1px);
}
.business-tech-option.compact-subchoice { width: 100%; }
.business-tech-icon {
  width: 34px; height: 34px; border-radius: 10px; border: 1px solid #1b1d1f; object-fit: cover; flex: 0 0 auto;
}
.business-tech-name {
  font-size: 12px; font-weight: 700; color: #1f2d38; line-height: 1.25;
}
.business-microgrid-stack { margin-top: 8px; display: grid; gap: 6px; }
.business-subtech-panel {
  display: grid; gap: 8px; padding: 8px 10px; border: 1px solid #d8e1e6; border-radius: 14px; background: #f6f9fb;
  overflow: hidden;
}
.business-subtech-title {
  font-size: 11px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: #52616d;
}
.business-subtech-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); gap: 8px; }
.business-subtech-card { display: grid; gap: 6px; align-content: start; }
.business-subtech-card.has-taxonomy { grid-column: 1 / -1; }
.business-subtech-pills,
.business-horizon-inline-actions {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px;
}
.business-subtech-pill {
  border: 1px solid #c0c9d0; border-radius: 999px; background: #ffffff; color: #27404c; font-size: 11px;
  font-weight: 600; line-height: 1.2; padding: 5px 8px; cursor: pointer; max-width: 100%;
}
.business-subtech-pill.active {
  border-color: #00662C; background: #eef7f1; box-shadow: 0 0 0 2px rgba(0, 102, 44, 0.12);
}
.business-microgrid-panel {
  padding: 7px 9px; border: 1px solid #c9d6cd; border-radius: 12px;
  background: linear-gradient(180deg, #f7fbf7 0%, #eef5f0 100%); display: flex; align-items: center;
  justify-content: space-between; gap: 10px; box-sizing: border-box; max-width: 100%; min-width: 0;
}
.business-microgrid-question {
  margin: 0; color: #425462; font-size: 13px; line-height: 1.25; flex: 1; min-width: 0; overflow-wrap: anywhere;
}
.business-microgrid-panel .business-dept-cell-toggle { margin-top: 0; flex: 0 0 auto; }
.business-dept-grid {
  display: grid; grid-template-columns: repeat(var(--business-dept-columns, 3), minmax(0, 1fr)); gap: 6px;
}
.business-dept-grid.compact {
  grid-template-columns: repeat(var(--business-dept-columns, 3), minmax(0, 1fr)); gap: 6px;
}
.business-dept-grid.business-dept-grid-dense { gap: 4px; }
.business-dept-grid.business-dept-grid-dense .business-dept-cell { padding: 6px 5px; gap: 4px; }
.business-dept-grid.business-dept-grid-dense .business-dept-cell-icon { width: 30px; height: 30px; flex: 0 0 30px; }
.business-dept-grid.business-dept-grid-dense .business-dept-cell-title { font-size: 11px; line-height: 1.2; }
.business-dept-cell {
  border: 1px solid #c3ccd4; border-radius: 16px; background: linear-gradient(180deg, #ffffff 0%, #eff3f6 100%);
  padding: 8px 6px; display: grid; justify-items: center; align-content: start; gap: 5px;
  box-shadow: 0 6px 16px rgba(50, 58, 64, 0.07); cursor: pointer; text-align: center;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, background 0.18s ease;
}
.business-dept-cell.active {
  border-color: #00662C; box-shadow: 0 0 0 3px rgba(0, 102, 44, 0.24), 0 12px 28px rgba(42, 49, 55, 0.12);
  background: linear-gradient(180deg, #ffffff 0%, #e2e8ed 100%); transform: translateY(-1px);
}
.business-dept-cell.focused { border-color: #0f5d38; background: linear-gradient(180deg, #ffffff 0%, #dff0e6 100%); }
.business-dept-cell-top {
  display: flex; align-items: center; justify-content: center; gap: 6px; flex-wrap: wrap; min-height: 22px;
}
.business-dept-cell-icon { width: 34px; height: 34px; flex: 0 0 34px; }
.business-dept-cell-title {
  margin: 0; font-size: 12px; font-weight: 800; color: #1e2c38;
}
.business-dept-cell-toggle {
  appearance: none; border: none; background: transparent; padding: 0; margin-top: 2px; cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center;
}
.business-dept-cell-toggle-track {
  width: 42px; height: 24px; border-radius: 999px; background: #b8c2ca;
  box-shadow: inset 0 0 0 1px rgba(43, 53, 60, 0.10); position: relative;
  transition: background 0.18s ease, box-shadow 0.18s ease;
}
.business-dept-cell-toggle-knob {
  position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 999px; background: #ffffff;
  box-shadow: 0 4px 10px rgba(44, 52, 58, 0.18); transition: transform 0.18s ease;
}
.business-dept-cell-toggle.active .business-dept-cell-toggle-track {
  background: #1f8a48; box-shadow: inset 0 0 0 1px rgba(8, 86, 40, 0.18);
}
.business-dept-cell-toggle.active .business-dept-cell-toggle-knob { transform: translateX(18px); }
.business-dept-cell-toggle:focus-visible { outline: none; }
.business-dept-cell-toggle:focus-visible .business-dept-cell-toggle-track {
  box-shadow: 0 0 0 3px rgba(0, 102, 44, 0.18), inset 0 0 0 1px rgba(43, 53, 60, 0.10);
}
.business-dept-note-copy {
  margin: 0; color: #5d6b76; font-size: 13px; line-height: 1.5;
}
.business-dept-log-instruction, .business-dept-editing-copy {
  font-size: 13px; line-height: 1.45;
}
.business-dept-editing-copy { margin-top: 3px; color: #31424c; }
.business-dept-log-input { min-height: 92px; }
.business-spec-notes { min-height: 92px; }
.business-rate-case-file-input {
  max-width: 100%; font: inherit; width: min(260px, 100%); min-width: 210px; flex: 0 1 260px; color: #31424c;
  font-size: 12px; line-height: 1.2;
}
.business-pain-mandate-list { display: flex; flex-wrap: wrap; gap: 6px; }
.business-mandate-heading-row {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; min-width: 0;
}
.business-mandate-heading-row .business-inline-prompt-tight { flex: 0 0 auto; }
.business-pain-mandate-list-inline { flex: 1 1 260px; min-width: 0; margin: 0; }
.business-dashboard-panel[data-business-dashboard-step="1"] .business-mandate-heading-row .business-pain-mandate-list-inline {
  flex-wrap: wrap; overflow-x: visible; overflow-y: visible;
}
.business-mandate-empty-inline { margin: 0; min-width: 0; }
.business-mandate-chip-wrap { display: inline-flex; }
.business-mandate-detail-chip { cursor: pointer; text-decoration: none; font-family: inherit; }
.business-rate-case-inline {
  margin-top: 10px; padding: 8px 10px; border: 1px solid #cfdbd4; border-radius: 12px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(240, 246, 242, 0.84) 100%); display: grid;
  gap: 6px;
}
.business-rate-case-instruction {
  margin: 0; color: #52636c; font-size: 11.5px; line-height: 1.3;
}
.business-rate-case-file-input::file-selector-button,
.business-rate-case-file-input::-webkit-file-upload-button {
  min-height: 32px; margin-right: 8px; border: 1px solid #95b7a1; border-radius: 999px; background: #f8fcf9;
  color: #0f5f33; padding: 7px 14px; font: inherit; font-weight: 800; cursor: pointer;
}
.business-attachment-list { display: grid; gap: 10px; }
.business-attachment-item {
  border: 1px solid #c4cdd4; border-radius: 16px; background: linear-gradient(180deg, #ffffff 0%, #eff3f5 100%);
  padding: 12px;
}
.guided-form-hidden { display: none; }
.guided-step-card {
  border: 1px solid #d7e5db; border-radius: 10px; background: #fcfefd; padding: 12px;
}
.guided-primary-btn, .guided-secondary-btn {
  border: 1px solid #00662c; border-radius: 8px; background: #00662c; color: #fff; font-weight: 700; font-size: 13px;
  padding: 8px 12px; cursor: pointer;
}
.guided-secondary-btn { background: #fff; color: #00662c; }
.guided-primary-btn:disabled, .guided-secondary-btn:disabled {
  opacity: 0.45; cursor: not-allowed;
}
.guided-badge-row {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px;
}
.guided-badge {
  border-radius: 999px; padding: 4px 8px; font-size: 11px; font-weight: 700; background: #edf5ef; color: #3b5f4a;
}
.guided-badge.recommended { background: #e4f4e8; color: #15623d; }
.guided-badge.override { background: #fff4de; color: #8a6422; }
.guided-related-list { display: flex; flex-wrap: wrap; gap: 8px; }
.guided-related-list.compact, .business-tech-stack.compact {
  margin-top: 12px;
}
.guided-chip {
  border: 1px solid #bfd5c6; border-radius: 999px; padding: 4px 8px 4px 10px; font-size: 12px; color: #325746;
  background: #f9fcfa; display: inline-flex; align-items: center; gap: 6px;
}
.guided-chip-remove {
  width: 18px; height: 18px; border-radius: 50%; border: 1px solid #9db9a7; background: #ffffff; color: #365a49;
  font-size: 11px; line-height: 1; cursor: pointer; padding: 0;
}
.guided-chip-remove:hover { border-color: #6a9880; background: #eef7f1; }
.guided-empty { color: #6f7f76; font-size: 12px; font-style: italic; }
.business-dashboard-frame { position: relative; grid-template-rows: minmax(0, 1fr) auto; padding-bottom: 0; }
.business-challenge-panel .business-title-with-info { margin-bottom: 5px; }
.business-challenge-question-title { font-size: 16px; line-height: 1.15; }
.business-pain-category-grid,
.business-dashboard-panel[data-business-dashboard-step="1"] .business-pain-category-grid {
  display: flex; flex-wrap: wrap; align-items: flex-start; gap: 6px; margin: 4px 0 7px;
}
.business-pain-point-action-row {
  display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 4px;
}
.business-pain-point-action-row .business-select {
  flex: 1 1 300px; width: auto; min-width: min(100%, 260px); max-width: 520px;
}
.business-pain-point-action-row .business-secondary-action {
  width: auto; height: auto; min-height: 34px; padding: 7px 12px; flex: 0 0 auto; white-space: nowrap;
}
.business-horizon-inline {
  display: flex; align-items: center; flex-wrap: wrap; gap: 7px 9px; margin-top: 8px; padding-top: 7px;
  border-top: 1px dashed rgba(148, 169, 157, 0.55);
}
.business-horizon-inline-sentence {
  flex: 1 1 620px; min-width: 0; font-size: 12px; line-height: 1.32; color: #385443;
}
.business-horizon-override-label {
  color: #2f4638; font-size: 11px; font-weight: 800; line-height: 1.15; text-transform: uppercase;
}
.business-horizon-inline-btn {
  appearance: none; border: 1px solid #bfcfbd; border-radius: 999px; background: #f8fbf8; color: #214532;
  padding: 5px 10px; width: max-content; max-width: 100%; flex: 0 0 auto; font-size: 11px; font-weight: 800;
  line-height: 1.15; cursor: pointer; box-shadow: 0 3px 8px rgba(46, 68, 54, 0.08);
}
.business-horizon-inline-btn:hover { border-color: #6f9f80; background: #edf8ef; }
.business-scenario-program-panel { padding: 8px 10px; }
.business-scenario-program-grid {
  display: grid; grid-template-columns: repeat(2, minmax(230px, 1fr)); gap: 10px; align-items: start;
}
.business-scenario-program-field { min-width: 0; }
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-category-panel .business-select {
  width: auto; min-width: min(100%, 280px); max-width: min(100%, 430px);
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-category-panel .guided-secondary-btn {
  width: auto; flex: 0 0 auto; white-space: nowrap;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-technologies-panel {
  width: 100%; max-width: 100%; padding: 10px 12px; box-sizing: border-box; overflow: hidden;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-grid.compact,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-subtech-grid {
  display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-choice {
  display: flex; flex-direction: column; align-items: flex-start; width: fit-content; max-width: 100%;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-choice.has-subtech {
  width: fit-content; max-width: 100%;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-choice.has-subtech > .business-tech-option {
  max-width: min(100%, 290px);
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-option,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-option.compact-subchoice {
  width: fit-content; max-width: min(100%, 290px); min-height: 50px; flex: 0 1 auto;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-subtech-panel {
  width: fit-content; max-width: 100%;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-subtech-card,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-subtech-card.has-taxonomy {
  display: grid; gap: 6px; width: fit-content; max-width: 100%; grid-column: auto;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-subtech-pills {
  display: flex; flex-wrap: wrap; gap: 5px; max-width: min(100%, 560px);
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-name {
  white-space: normal; overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .business-carousel-grid, .business-tech-grid, .business-carousel-step1-grid {
    grid-template-columns: 1fr;
  }
  .business-planner-shell { padding: 14px; border-radius: 24px; }
  .business-carousel-shell { padding: 14px; }
  .business-dashboard-shell { overflow: hidden; }
  .business-dashboard-shell.business-scroll-needed { overflow-y: auto; overflow-x: hidden; }
  .business-dashboard-frame { grid-template-columns: 1fr; }
  .business-dashboard-panel { min-height: 260px; }
  .business-dashboard-panel .business-carousel-title { font-size: 22px; }
  .business-carousel-card { min-height: auto; }
}
.business-mockup-frame {
  display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; gap: 0; min-height: 100%;
  box-sizing: border-box; padding-bottom: 10px;
}
.business-mockup-frame .business-dashboard-panel {
  border: 2px solid #222a30; border-radius: 8px; background: #ffffff; box-shadow: none; min-height: 0; min-width: 0;
  overflow: hidden;
}
.business-mockup-frame .business-dashboard-panel-body { padding: 6px; overflow: hidden; min-width: 0; }
.business-mockup-frame .business-carousel-card, .business-mockup-frame .business-mini-panel {
  border: 0; border-radius: 6px; background: transparent; box-shadow: none;
}
.business-mockup-frame .business-carousel-card { border: 0; padding: 8px 10px; gap: 8px; }
.business-mockup-frame .business-carousel-card::before { content: none; }
.business-mockup-frame .business-carousel-card-header { align-items: center; gap: 8px; }
.business-mockup-frame .business-carousel-title,
.business-mockup-frame .business-mini-panel-title,
.business-mockup-frame .business-panel-title {
  font-size: 15px; line-height: 1.18;
}
.business-mockup-frame .business-card-tool-btn {
  width: 34px; height: 28px; border-radius: 4px; border-width: 1px; box-shadow: none;
}
.business-mockup-frame .business-card-tool-btn svg { width: 15px; height: 15px; }
.business-mockup-frame .business-select,
.business-mockup-frame .business-input,
.business-mockup-frame .business-textarea {
  border-radius: 4px; padding: 8px 9px; font-size: 12px;
}
.business-mockup-frame .guided-primary-btn,
.business-mockup-frame .guided-secondary-btn,
.business-mockup-frame .business-secondary-action {
  border-radius: 4px; font-size: 12px; padding: 7px 10px;
}
.business-challenge-entry-row {
  display: grid; grid-template-columns: minmax(300px, 0.38fr) minmax(420px, 0.62fr); gap: 12px; align-items: start;
}
.business-challenge-entry-row .business-pain-category-grid {
  display: grid; grid-template-columns: repeat(2, minmax(130px, 1fr)); grid-auto-rows: minmax(46px, auto); gap: 7px;
  width: 100%; margin: 0;
}
.business-mockup-frame .business-dashboard-panel[data-business-dashboard-step="1"] .business-challenge-entry-row .business-pain-category-grid {
  display: grid; grid-template-columns: repeat(2, minmax(130px, 1fr)); grid-auto-rows: minmax(46px, auto); gap: 7px;
  margin: 0;
}
.business-challenge-entry-row .business-pain-point-action-row {
  display: grid; margin-top: 0; grid-template-columns: minmax(0, 1fr) auto; align-items: start;
}
.business-challenge-control-stack {
  display: grid; gap: 7px; align-content: start; min-width: 0;
}
.business-challenge-control-stack .business-pain-point-action-row .business-select { width: 100%; max-width: none; }
.business-challenge-control-stack .business-mandate-inline-block { min-width: 0; }
.business-challenge-control-stack .business-inline-prompt-tight { margin-top: 0; }
.business-challenge-horizon-wide { margin-top: 4px; min-width: 0; }
.business-challenge-horizon-wide .business-horizon-inline {
  margin-top: 0; padding-top: 0; border-top: 0; max-width: 100%;
}
.business-mandate-inline-block, .business-horizon-inline-block {
  min-width: 0;
}
.business-merged-definition-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, 0.38fr); gap: 12px; align-items: start;
}
.business-definition-summary {
  margin: 8px 0 0; color: #47545c; font-size: 13px; line-height: 1.4;
}
.business-resource-coordination-layout {
  display: grid; grid-template-columns: minmax(300px, 0.38fr) minmax(500px, 0.62fr); gap: 18px; align-items: start;
  min-width: 0; min-height: 100%;
}
.business-resource-coordination-layout.business-resource-scale-only {
  grid-template-columns: minmax(0, 720px); max-width: 720px;
}
.business-resource-coordination-layout.business-resource-scale-only .business-resource-selection-unit {
  padding-right: 0;
}
.business-resource-selection-grid {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; align-items: start; min-width: 0;
}
.business-resource-selection-grid > * { min-width: 0; }
.business-resource-selection-grid .business-technologies-panel {
  border-top: 1px solid #d5dde2; border-left: 0; padding-left: 0; box-sizing: border-box; max-width: 100%;
  overflow: hidden;
}
.business-dashboard-tech-toggles {
  margin: 4px 0 7px; width: 100%; max-width: 100%; min-width: 0; overflow: hidden; box-sizing: border-box;
}
.business-dashboard-tech-toggles .business-microgrid-panel {
  padding: 5px 7px; width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; overflow: hidden;
}
.business-dashboard-tech-toggles .business-microgrid-question {
  font-size: 10.5px; line-height: 1.2; min-width: 0; max-width: calc(100% - 46px); overflow-wrap: anywhere;
}
.business-resource-selection-unit, .business-coordination-unit {
  display: grid; align-content: start; gap: 8px; min-width: 0;
}
.business-resource-selection-unit { padding-right: 4px; }
.business-coordination-unit { border-left: 1px solid #d3dde4; padding-left: 18px; }
.business-resource-selection-unit .business-carousel-card-header,
.business-coordination-unit .business-carousel-card-header {
  min-width: 0;
}
.business-coordination-unit .business-coordination-roles-shell {
  display: grid; gap: 8px; margin-top: 0; min-width: 0;
}
.business-coordination-unit .business-coordination-path-panel { padding: 2px 0 6px; display: grid; gap: 7px; }
.business-coordination-unit .business-coordination-path-toolbar { min-height: 0; margin-bottom: 2px; }
.business-coordination-unit .business-coordination-path-actors {
  justify-content: center; margin-bottom: 0; min-height: 0;
}
.business-coordination-unit .business-coordination-path-chain {
  display: flex; justify-content: center; overflow-x: hidden; scrollbar-width: none;
}
.business-coordination-unit .business-coordination-path-zigzag { width: fit-content; max-width: 100%; }
.business-coordination-unit .business-coordination-path-row {
  justify-content: flex-start; flex-wrap: nowrap; gap: 4px; width: fit-content; max-width: 100%;
}
.business-coordination-unit .business-coordination-path-row.reverse { justify-content: flex-end; margin-left: 0; }
.business-coordination-path-zigzag {
  display: grid; gap: 2px; width: max-content; max-width: 100%;
}
.business-coordination-path-zigzag .business-coordination-path-row { width: fit-content; max-width: 100%; }
.business-coordination-path-connector {
  display: flex; align-items: center; height: 18px; color: #2f7b57; font-size: 22px; font-weight: 800; line-height: 1;
  pointer-events: none;
}
.business-coordination-path-connector.from-right { justify-content: flex-end; padding-right: 38px; }
.business-coordination-path-connector.from-left { justify-content: flex-start; padding-left: 38px; }
.business-coordination-unit .business-coordination-actor-pill {
  flex: 0 1 auto; width: fit-content; min-width: 0; max-width: 156px; box-shadow: none; padding: 5px 7px 5px 5px;
  gap: 5px; font-size: 11.5px; line-height: 1.15;
}
.business-coordination-unit .business-coordination-actor-pill > span:last-child {
  min-width: 0; max-width: 96px; overflow-wrap: anywhere;
}
.business-coordination-unit .business-coordination-actor-icon { width: 27px; height: 27px; flex-basis: 27px; }
.business-coordination-unit .business-coordination-actor-arrow { flex: 0 0 13px; min-width: 13px; font-size: 17px; }
.business-coordination-unit .business-coordination-path-inline {
  font-size: 13.5px; line-height: 1.45; max-width: 100%; box-sizing: border-box;
}
.business-coordination-path-action-row { display: flex; justify-content: center; align-items: center; }
.business-coordination-customize-btn { justify-self: center; }
.business-actor-definition-panel {
  display: grid; gap: 7px; margin-top: 2px; padding-top: 8px; border-top: 1px solid #d5dde2;
}
.business-actor-definition-title {
  color: #31424c; font-size: 11px; font-weight: 900; letter-spacing: 0.02em; text-transform: uppercase;
}
.business-actor-definition-list { display: grid; gap: 7px; }
.business-actor-definition-item { display: grid; gap: 3px; }
.business-actor-definition-head {
  display: flex; flex-wrap: wrap; gap: 6px; align-items: baseline;
}
.business-actor-definition-name { color: #173025; font-size: 12.5px; font-weight: 900; }
.business-actor-definition-role {
  color: #54626a; font-size: 10px; font-weight: 800; text-transform: uppercase;
}
.business-actor-definition-item p {
  margin: 0; color: #243c32; font-size: 12.5px; line-height: 1.35;
}
.business-coordination-unit .business-coordination-controls-panel { padding: 4px 0 0; }
.business-dashboard-panel[data-business-dashboard-step="3"] .business-coordination-unit .business-coordination-path-panel {
  padding: 2px 0 6px;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-coordination-unit .business-coordination-controls-panel {
  padding: 4px 0 0;
}
.business-coordination-unit .business-coordination-mechanism-grid-structured {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px 10px;
}
.business-coordination-unit .business-coordination-mechanism-grid-structured > .business-coordination-mechanism-field {
  grid-column: span 3;
}
.business-coordination-unit .business-coordination-mechanism-grid-structured > .business-coordination-mechanism-field-top {
  grid-column: span 2;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-category-panel {
  width: 100%; max-width: 100%; padding: 6px 10px; box-sizing: border-box; overflow: hidden;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-dashboard-panel-body {
  overflow-y: hidden; overflow-x: hidden;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-dashboard-panel-body.business-scroll-needed {
  overflow-y: auto; overflow-x: hidden;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-scale-row {
  display: grid; grid-template-columns: auto minmax(150px, 1fr); align-items: center; width: 100%;
}
.business-resource-scale-row {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap; min-width: 0; max-width: 100%;
}
.business-resource-scale-row .business-title-with-info { margin-bottom: 0; flex: 0 0 auto; }
.business-resource-scale-row .business-select {
  width: min(360px, 100%); flex: 1 1 280px; min-width: 0; max-width: 100%; box-sizing: border-box;
  text-overflow: ellipsis;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-scale-row .business-select {
  width: auto; min-width: 0; max-width: 100%; flex: initial;
}
.business-resource-scale-row .guided-secondary-btn { flex: 0 0 auto; }
.business-resource-selection-unit .business-resource-scale-row { max-width: 100%; }
.business-resource-selection-unit .business-tech-summary-row {
  grid-template-columns: minmax(0, 1fr); justify-content: start; align-items: start; gap: 8px;
}
.business-resource-selection-unit .business-selected-tech-grid {
  display: flex; flex-wrap: wrap; align-items: flex-start; gap: 7px; width: 100%; max-width: 100%;
}
.business-resource-selection-unit .business-selected-tech-option,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-selection-unit .business-selected-tech-option,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-resource-selection-unit .business-tech-option.business-selected-tech-option {
  width: fit-content; min-width: 0; max-width: 142px; min-height: 52px; padding: 5px 7px; gap: 7px; flex: 0 1 auto;
}
.business-resource-selection-unit .business-selected-tech-option .business-tech-name {
  max-width: 72px; overflow-wrap: anywhere;
}
.business-resource-selection-unit .business-tech-customize-btn { justify-self: center; }
.business-tech-customize-action-row {
  display: flex; justify-content: center; width: 100%; justify-self: center;
}
.business-tech-summary-row {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; align-items: start; min-width: 0; padding-right: 0;
}
.business-tech-summary-grid { min-width: 0; }
.business-selected-tech-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(152px, 1fr)); gap: 7px; }
.business-selected-tech-option {
  min-height: 46px; width: 100%; max-width: none; min-width: 0;
}
.business-dashboard-panel[data-business-dashboard-step="3"] .business-selected-tech-option,
.business-dashboard-panel[data-business-dashboard-step="3"] .business-tech-option.business-selected-tech-option {
  width: 100%; max-width: none; min-width: 0; flex: initial;
}
.business-tech-customize-btn { white-space: nowrap; justify-self: end; max-width: 100%; }
.business-tech-customize-overlay {
  position: fixed; inset: 0; z-index: 1500; display: flex; align-items: center; justify-content: center;
  padding: 20px; background: rgba(22, 31, 28, 0.34); box-sizing: border-box;
}
.business-tech-customize-box {
  width: min(980px, calc(100vw - 42px)); max-height: min(82vh, 760px); overflow: auto; border: 2px solid #222a30;
  border-radius: 8px; background: #ffffff; padding: 14px; box-shadow: 0 22px 48px rgba(22, 31, 28, 0.24);
}
.business-tech-customize-stack { margin-top: 10px; }
.business-customize-confirm-row {
  display: flex; justify-content: flex-end; gap: 10px; align-items: center; margin-top: 12px; padding-top: 10px;
  border-top: 1px solid #d5dde2;
}
.business-coordination-customize-box { width: min(1040px, calc(100vw - 42px)); }
.business-coordination-customize-box .business-coordination-unit { border-left: 0; padding-left: 0; }
.business-coordination-customize-box .business-carousel-card-header { display: none; }
.business-departments-card { height: auto; min-height: 0; overflow: visible; }
.business-departments-dashboard-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(190px, 0.34fr); gap: 10px; align-items: stretch;
  min-width: 0;
}
.business-departments-dashboard-table {
  border: 0; border-radius: 0; padding: 0; min-height: 112px; min-width: 0; overflow: visible; box-sizing: border-box;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-grid {
  grid-template-columns: repeat(var(--business-dept-columns, 3), minmax(68px, 1fr)); gap: 7px; overflow: visible;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dashboard-panel-body { overflow: hidden; }
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dashboard-panel-body.business-scroll-needed {
  overflow-y: auto; overflow-x: hidden;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-cell {
  border-radius: 4px; padding: 6px 6px 8px; gap: 5px; min-height: 106px; align-content: start; overflow: visible;
  box-sizing: border-box; transform: none;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-cell.active { transform: none; }
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-cell-icon {
  width: 34px; height: 34px; flex-basis: 34px; object-fit: contain; border-radius: 8px;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-option-icon.business-dept-cell-icon {
  object-fit: contain; width: 34px; height: 34px; flex-basis: 34px;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-cell-title {
  font-size: 10.5px; line-height: 1.15; min-height: 24px; display: flex; align-items: center;
}
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-cell-top { min-height: 18px; }
.business-dashboard-panel[data-business-dashboard-step="5"] .guided-badge { font-size: 9.5px; padding: 2px 5px; }
.business-dashboard-panel[data-business-dashboard-step="5"] .business-dept-log-input,
.business-dashboard-panel[data-business-dashboard-step="5"] .business-spec-notes {
  min-height: 92px;
}
.business-dashboard-inline-locked {
  border: 1px dashed #7b858c; border-radius: 6px; padding: 12px; background: #f8fafb;
}
.business-step-empty-state {
  display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 12px; align-items: start;
  border: 1px solid rgba(0, 102, 44, 0.18); border-radius: 12px;
  background: linear-gradient(180deg, #fbfefd 0%, #eef7f1 100%); padding: 13px 14px; color: #173c2b;
}
.business-step-empty-icon {
  width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%;
  background: #e2f2e8; color: #00662c; font-weight: 900; box-shadow: inset 0 0 0 1px rgba(0, 102, 44, 0.16);
}
.business-step-empty-title {
  font-size: 14px; font-weight: 900; line-height: 1.25; color: #0d2b1f;
}
.business-step-empty-copy {
  margin: 4px 0 0; font-size: 13px; line-height: 1.35; color: #55675d;
}
.business-mockup-frame .business-dashboard-panel-locked { min-height: 0; }

@media (max-width: 1180px) {
  .business-challenge-entry-row,
  .business-merged-definition-grid,
  .business-departments-dashboard-grid,
  .business-resource-coordination-layout,
  .business-resource-selection-grid,
  .business-coordination-unit .business-coordination-mechanism-grid-structured {
    grid-template-columns: minmax(0, 1fr);
  }
  .business-mockup-frame .business-pain-category-grid { grid-template-columns: repeat(auto-fit, minmax(136px, 1fr)); }
  .business-coordination-unit .business-coordination-mechanism-grid-structured > .business-coordination-mechanism-field,
  .business-coordination-unit .business-coordination-mechanism-grid-structured > .business-coordination-mechanism-field-top {
    grid-column: auto;
  }
  .business-tech-summary-row { grid-template-columns: minmax(0, 1fr); }
}
