:root {
  --sc-success: #198754;
  --sc-warning: #f59e0b;
  --sc-danger: #dc3545;
  --sc-ai: #6f42c1;
  --sc-muted: #64748b;
  --sc-navy: #0d1e67;
  --sc-navy-dark: #09164f;
  --sc-navy-light: #eef1fa;
  --sc-blue: #007bfc;
  --sc-blue-hover: #0067d9;
  --sc-blue-light: #eaf4ff;
  --sc-bg: #f7f9fc;
  --sc-surface: #fff;
  --sc-border: #e4eaf2;
  --sc-text: #172033;
  --sc-text-muted: #64748b;
  --status-new: #2563eb;
  --status-new-bg: #eff6ff;
  --status-review: #d97706;
  --status-review-bg: #fff7ed;
  --status-interested: #16a34a;
  --status-interested-bg: #f0fdf4;
  --status-discarded: #64748b;
  --status-discarded-bg: #f1f5f9;
  --status-error: #ba1a1a;
  --status-error-bg: #ffdad6;
  --urgency-high: #ea580c;
  --urgency-medium: #d97706;
  --urgency-low: #64748b;
  --action-primary: #007bfc;
  --action-primary-soft: #eaf4ff;
  --action-primary-hover: #0067d9;
  --action-internal: #0d1e67;
  --action-internal-soft: #eef1fa;
  --action-internal-hover: #09164f;
  --action-external: #12805c;
  --action-external-soft: #eaf7f0;
  --action-external-hover: #0f6b4e;
  --action-success: #16a34a;
  --action-success-soft: #f0fdf4;
  --action-success-hover: #15803d;
  --action-warning: #d97706;
  --action-warning-soft: #fff7ed;
  --action-warning-hover: #b45309;
  --action-danger: #dc2626;
  --action-danger-soft: #fef2f2;
  --action-danger-hover: #b91c1c;
  --action-neutral: #64748b;
  --action-neutral-soft: #f1f5f9;
  --action-neutral-hover: #475569;
  --action-disabled: #94a3b8;
  --action-disabled-soft: #f8fafc;
  --category-end-user-computing: #4f46e5;
  --category-end-user-computing-bg: #eef2ff;
  --category-business-email: #0891b2;
  --category-business-email-bg: #ecfeff;
  --category-cloud-hosting: #1d4ed8;
  --category-cloud-hosting-bg: #eff6ff;
  --category-cybersecurity: #7c3aed;
  --category-cybersecurity-bg: #f5f3ff;
  --category-microsoft-licensing: #c2410c;
  --category-microsoft-licensing-bg: #fff7ed;
  --category-backup-drp: #059669;
  --category-backup-drp-bg: #ecfdf5;
  --category-networking: #0f766e;
  --category-networking-bg: #f0fdfa;
  --category-generic: #64748b;
  --category-generic-bg: #f1f5f9;
  --section-process: #007bfc;
  --section-commercial: #12805c;
  --section-why: #7c3aed;
  --section-items: #4f46e5;
  --section-documents: #0891b2;
  --section-history: #d97706;
  --section-default: #007bfc;
  --financial-subtotal: #0d1e67;
  --financial-subtotal-bg: #eaf3ff;
  --financial-subtotal-border: #cfe2ff;
  --financial-tax: #9a6700;
  --financial-tax-bg: #fff4db;
  --financial-tax-border: #f6d48d;
  --financial-total: #157347;
  --financial-total-bg: #e7f7ed;
  --financial-total-border: #b7e4c7;
  --radius-control: 8px;
  --radius-card: 12px;
  --sc-focus-ring: rgb(0 123 252 / 20%);
}

.sc-btn-primary, .sc-btn-success, .sc-btn-warning, .sc-btn-secondary, .sc-btn-ai {
  min-height: 36px;
  border-radius: 8px;
  font-weight: 600;
}
.sc-btn-ai { background: var(--sc-ai); border-color: var(--sc-ai); color: #fff; }
.sc-btn-ai:hover { background: #5b35a2; color: #fff; }

body {
  background: var(--sc-bg);
  color: var(--sc-text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.43;
}

a { color: var(--sc-blue); }
a:hover { color: var(--sc-blue-hover); }
.brand-accent { color: var(--sc-blue); }

.app-shell { display: flex; min-height: 100vh; }
.main-content { flex: 1; min-width: 0; }
.content-wrap { margin: 0 auto; max-width: 1440px; padding: 28px 32px 36px; }

.sidebar {
  background: var(--sc-navy);
  flex: 0 0 240px;
  padding: 24px 16px;
  width: 240px;
}

.brand {
  color: #fff;
  display: block;
  font-size: 21px;
  font-weight: 600;
  letter-spacing: -0.02em;
  margin: 0 10px 30px;
  text-decoration: none;
}

.brand span { color: #fff; }
.brand small {
  color: rgb(255 255 255 / 72%);
  display: block;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  margin-top: 2px;
  text-transform: uppercase;
}

.sidebar .nav-link {
  border-radius: var(--radius-control);
  color: rgb(255 255 255 / 76%);
  display: flex;
  gap: 11px;
  align-items: center;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 4px;
  padding: 10px 12px;
}

.sc-nav-icon {
  color: currentColor;
  display: inline-flex;
  flex: 0 0 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
}

.sc-nav-icon svg {
  fill: none;
  height: 18px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
  width: 18px;
}

.sc-nav-label {
  display: inline-block;
  line-height: 1.2;
}

.sidebar .nav-link:hover { background: rgb(255 255 255 / 10%); color: #fff; }

.commercial-workspace-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 1fr);
}

.commercial-workspace-grid .commercial-log { grid-column: 1 / -1; }

.commercial-form-grid {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.commercial-form-grid .commercial-wide { grid-column: span 2; }

.commercial-summary-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.commercial-summary-grid > div {
  background: #f8fafc;
  border: 1px solid var(--sc-border);
  border-radius: 6px;
  padding: 10px;
}

.commercial-summary-grid strong { display: block; font-size: 13px; }
.commercial-summary-label { color: var(--sc-text-muted); display: block; font-size: 11px; margin-bottom: 3px; }
.commercial-summary-detail { color: var(--sc-text-muted); display: block; font-size: 12px; margin-top: 3px; }

.commercial-operating-status { border: 1px solid currentColor; border-radius: 6px; padding: 10px; }
.commercial-operating-status > span:last-child { display: block; font-size: 12px; margin-top: 3px; }

.commercial-contact-card { background: #f8fafc; border: 1px solid var(--sc-border); border-radius: 6px; padding: 14px; }
.commercial-contact-card h3 { color: var(--sc-navy); }
.commercial-contact-position { color: var(--sc-text-muted); font-size: 13px; margin-bottom: 14px; }
.commercial-contact-card dl { display: grid; gap: 5px 12px; grid-template-columns: 110px minmax(0, 1fr); margin: 0; }
.commercial-contact-card dt { color: var(--sc-text-muted); font-size: 12px; font-weight: 500; }
.commercial-contact-card dd { font-size: 13px; margin: 0; overflow-wrap: anywhere; }
.commercial-contact-action summary { color: var(--sc-blue); cursor: pointer; font-size: 13px; font-weight: 600; width: fit-content; }
.commercial-contact-action summary::marker { color: var(--sc-text-muted); }
.commercial-contact-add summary { color: var(--action-success); }

.commercial-alert { border-radius: 4px; display: inline-block; font-size: 12px; padding: 4px 8px; }
.commercial-alert-urgent { background: #fde8e8; color: #a51d2d; }
.commercial-alert-attention { background: #fff3cd; color: #7a5700; }
.commercial-alert-on_time { background: #e2f5e9; color: #176b3a; }
.commercial-alert-evaluation { background: #e5efff; color: #1c5bb8; }
.commercial-alert-closed { background: #eceff1; color: #4b5563; }

.commercial-activity { border-top: 1px solid var(--sc-border); padding: 10px 0; }
.commercial-activity-meta { color: var(--sc-text-muted); display: flex; flex-wrap: wrap; font-size: 12px; gap: 4px 10px; margin-bottom: 5px; }
.commercial-activity-meta span { color: var(--sc-text); font-weight: 500; }
.commercial-activity-type { background: #edf2f7; border-radius: 999px; color: #425466; display: inline-block; font-size: 11px; font-weight: 600; padding: 2px 7px; }
.commercial-activity p { font-size: 13px; margin: 5px 0 0; }
.commercial-activity-note { background: #f8fafc; border-left: 3px solid #a8b7c7; margin: 8px -4px; padding: 10px 12px; }
.commercial-activity-note .commercial-activity-type { background: #e4eaf0; }

@media (max-width: 991px) {
  .commercial-workspace-grid,
  .commercial-form-grid,
  .commercial-summary-grid { grid-template-columns: 1fr; }
  .commercial-form-grid .commercial-wide { grid-column: auto; }
}
.sidebar .nav-link.active { background: var(--sc-blue); color: #fff; }
.sc-nav-group-toggle { align-items: center; border: 0; display: flex; text-align: left; width: 100%; }
.sc-nav-group.is-active > .sc-nav-group-toggle { background: rgb(255 255 255 / 8%); color: #fff; }
.sc-nav-group-chevron { font-size: 18px; line-height: 1; margin-left: auto; transition: transform .15s ease; }
.sc-nav-group-toggle[aria-expanded="true"] .sc-nav-group-chevron { transform: rotate(180deg); }
.sc-nav-child { margin-left: 16px; }
.sc-nav-child .sc-nav-icon { height: 18px; width: 18px; }
.sc-nav-section-title { color: rgb(255 255 255 / 55%); display: block; font-size: 11px; font-weight: 600; letter-spacing: .06em; padding: 8px 12px 4px; text-transform: uppercase; }
.sc-nav-section .nav-link { margin-left: 8px; }
.sidebar hr { border-color: rgb(255 255 255 / 18%); margin: 18px 10px; }

.topbar {
  align-items: center;
  background: var(--sc-surface);
  border-bottom: 1px solid var(--sc-border);
  display: flex;
  height: 60px;
  padding: 0 32px;
}

.topbar .dropdown-toggle {
  background: var(--sc-surface);
  border-color: var(--sc-border);
  color: var(--sc-text);
  font-size: 13px;
  font-weight: 500;
}

.sc-page-title {
  align-items: center;
  color: var(--sc-navy);
  display: flex;
  font-size: 28px;
  font-weight: 600;
  gap: 10px;
  letter-spacing: -0.02em;
  line-height: 36px;
  margin: 0;
}

.sc-page-title::before {
  background: var(--sc-blue);
  border-radius: 4px;
  content: "";
  display: inline-block;
  flex: 0 0 4px;
  height: 24px;
}

.sc-page-subtitle {
  color: var(--sc-text-muted);
  font-size: 14px;
  font-weight: 400;
  margin: 4px 0 24px;
}

.sc-auth-title {
  color: var(--sc-navy);
  font-size: 28px;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 36px;
  margin: 0;
}

.sc-auth-subtitle {
  color: var(--sc-text-muted);
  font-size: 14px;
  font-weight: 400;
  margin: 4px 0 24px;
}

.small, small { font-size: 12px; }

.sc-card,
.panel,
.metric,
.filters {
  background: var(--sc-surface);
  border: 1px solid var(--sc-border);
  border-radius: var(--radius-card);
  box-shadow: none;
}

.panel { padding: 20px 24px; }
.panel > .h5, .panel > h2 { font-size: 18px; font-weight: 600; line-height: 24px; }
.metric { border-top: 3px solid var(--sc-blue); height: 100%; padding: 14px 16px 16px; }
.opportunity-kpis .metric { align-items: center; border-top-width: 3px; display: flex; gap: 12px; min-height: 106px; padding: 16px; }
.opportunity-kpis .metric-value { margin-top: 4px; }
.kpi-card__icon { align-items: center; background: var(--sc-navy-light); border-radius: 8px; color: var(--sc-blue); display: inline-flex; flex: 0 0 32px; height: 32px; justify-content: center; width: 32px; }
.kpi-card__icon svg { height: 17px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 17px; }
.metric--new .kpi-card__icon { background: var(--sc-blue-light); color: var(--sc-blue); }
.metric--review .kpi-card__icon { background: var(--status-review-bg); color: var(--urgency-high); }
.metric--interested .kpi-card__icon { background: var(--status-interested-bg); color: var(--status-interested); }
.metric--critical .kpi-card__icon { background: var(--status-error-bg); color: var(--status-error); }
.metric--teal .kpi-card__icon { background: #e4f4f1; color: #0f766e; }
.metric--general, .metric--operational { border-top-color: var(--sc-blue); }
.metric--commercial { border-top-color: var(--action-external); }
.metric--healthy, .metric--available { border-top-color: var(--action-success); }
.metric--attention { border-top-color: var(--action-warning); }
.metric--critical, .metric--degraded { border-top-color: var(--action-danger); }
.metric--new { border-top-color: var(--sc-blue-light); }
.metric--review { border-top-color: var(--action-warning); }
.metric--interested { border-top-color: var(--action-success); }
.metric--teal { border-top-color: #0f766e; }
.metric--projection { border-top-color: var(--category-cybersecurity); }
.metric--unknown { border-top-color: var(--action-neutral); }
.opportunity-header { margin-bottom: 20px; }
.opportunity-header .sc-page-subtitle { margin-bottom: 0; }
.opportunity-filters { align-items: stretch; margin-bottom: 20px; }
.opportunity-filters > div { display: flex; }
.opportunity-filters .form-control, .opportunity-filters .form-select, .opportunity-filters .btn { min-height: 40px; }
.opportunity-search { min-width: 280px; }
.sc-btn-secondary { background: var(--sc-surface); border: 1px solid var(--sc-border); color: var(--sc-text-muted); }
.sc-btn-secondary:hover { background: var(--sc-bg); border-color: var(--sc-border-strong); color: var(--sc-text); }
.metric-label {
  color: var(--sc-text-muted);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.metric-value { font-size: 26px; font-weight: 600; line-height: 32px; margin-top: 6px; }
.metric-value-money { color: var(--sc-navy); font-size: 22px; }
.metric-value-status { font-size: 20px; letter-spacing: 0.02em; }

.sc-projection-months {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.sc-projection-months span,
.sc-status-chip {
  background: var(--sc-navy-light);
  border: 1px solid #dce3f5;
  border-radius: 999px;
  color: var(--sc-navy);
  font-size: 12px;
  padding: 5px 9px;
}
.sc-projection-months strong { color: var(--category-cybersecurity); margin-right: 3px; }

.sc-status-definition dt { color: var(--sc-text-muted); font-weight: 500; }
.sc-status-definition dd { color: var(--sc-text); font-weight: 600; margin-bottom: 12px; }
.sc-status-counts > div {
  border-left: 2px solid var(--sc-blue-light);
  color: var(--sc-text-muted);
  font-size: 12px;
}
.sc-status-counts span { display: block; }
.sc-status-counts strong { color: var(--sc-navy); display: block; font-size: 20px; margin-top: 3px; }
.sc-status-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sc-status-chip { align-items: center; display: inline-flex; gap: 5px; }
.sc-status-chip--healthy { background: var(--action-success-soft); border-color: #bbebcd; color: var(--action-success-hover); }
.sc-status-chip--attention { background: var(--action-warning-soft); border-color: #f7d5a2; color: var(--action-warning-hover); }
.sc-status-chip--critical { background: var(--action-danger-soft); border-color: #fecaca; color: var(--action-danger-hover); }

.sc-commercial-summary { margin-top: 20px; }
.sc-summary-panel { height: 100%; padding: 16px; }
.sc-summary-panel .h6 { color: var(--sc-navy); font-size: 14px; margin-bottom: 12px; }
.sc-summary-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sc-summary-category {
  align-items: center;
  background: var(--sc-navy-light);
  border-radius: 999px;
  color: var(--sc-navy);
  display: inline-flex;
  font-size: 12px;
  font-weight: 500;
  gap: 6px;
  padding: 5px 8px;
}
.sc-summary-category strong { color: var(--sc-blue); font-weight: 600; }

.filters { margin-bottom: 20px; padding: 12px; }
.infima-projected-filters { align-items: stretch; }
.infima-projected-filters > div { min-width: 130px; }
.infima-projected-filters > div:first-child { min-width: 240px; }
.form-label { color: var(--sc-text); font-size: 14px; font-weight: 500; }
.form-control, .form-select {
  border-color: var(--sc-border);
  border-radius: var(--radius-control);
  color: var(--sc-text);
  font-size: 14px;
  min-height: 38px;
}
.form-control:focus, .form-select:focus {
  border-color: var(--sc-blue);
  box-shadow: 0 0 0 0.2rem var(--sc-focus-ring);
}

.btn { border-radius: var(--radius-control); font-size: 14px; font-weight: 500; }
.sc-btn-primary, .btn-primary {
  background: var(--action-primary);
  border-color: var(--action-primary);
  color: #fff;
}
.sc-btn-primary:hover, .btn-primary:hover, .sc-btn-primary:focus, .btn-primary:focus {
  background: var(--action-primary-hover);
  border-color: var(--action-primary-hover);
  color: #fff;
}
.sc-btn-secondary, .btn-outline-secondary, .btn-outline-primary {
  background: var(--sc-surface);
  border-color: var(--sc-border);
  color: var(--sc-navy);
}
.sc-btn-secondary:hover, .btn-outline-secondary:hover, .btn-outline-primary:hover {
  background: var(--sc-navy-light);
  border-color: var(--sc-border);
  color: var(--sc-navy);
}

.sc-btn-internal,
.sc-btn-action-internal {
  background: var(--action-internal-soft);
  border-color: var(--action-internal);
  color: var(--action-internal);
}

.sc-btn-internal:hover,
.sc-btn-internal:focus,
.sc-btn-action-internal:hover,
.sc-btn-action-internal:focus {
  background: #e3e8f7;
  border-color: var(--action-internal-hover);
  color: var(--action-internal-hover);
}

.sc-btn-internal:disabled,
.sc-btn-internal.disabled,
.sc-btn-action-internal:disabled,
.sc-btn-action-internal.disabled {
  background: var(--action-disabled-soft);
  border-color: var(--action-disabled);
  color: var(--action-disabled);
}

.sc-btn-external,
.sc-btn-action-external {
  background: var(--action-external-soft);
  border-color: var(--action-external);
  color: var(--action-external);
}

.sc-btn-external:hover,
.sc-btn-external:focus,
.sc-btn-action-external:hover,
.sc-btn-action-external:focus {
  background: #d8f0e4;
  border-color: var(--action-external-hover);
  color: var(--action-external-hover);
}

.sc-btn-external:disabled,
.sc-btn-external.disabled,
.sc-btn-action-external:disabled,
.sc-btn-action-external.disabled {
  background: var(--action-disabled-soft);
  border-color: var(--action-disabled);
  color: var(--action-disabled);
}

.sc-btn-success {
  background: var(--action-success-soft);
  border-color: var(--action-success);
  color: var(--action-success);
}

.sc-btn-success:hover,
.sc-btn-success:focus {
  background: #e2f8ea;
  border-color: var(--action-success-hover);
  color: var(--action-success-hover);
}

.sc-btn-warning {
  background: var(--action-warning-soft);
  border-color: var(--action-warning);
  color: var(--action-warning);
}

.sc-btn-warning:hover,
.sc-btn-warning:focus {
  background: #ffeedf;
  border-color: var(--action-warning-hover);
  color: var(--action-warning-hover);
}

.sc-btn-danger {
  background: var(--action-danger-soft);
  border-color: var(--action-danger);
  color: var(--action-danger);
}

.sc-btn-danger:hover,
.sc-btn-danger:focus {
  background: #fee5e5;
  border-color: var(--action-danger-hover);
  color: var(--action-danger-hover);
}

.sc-btn-neutral {
  background: var(--action-neutral-soft);
  border-color: var(--action-neutral);
  color: var(--action-neutral);
}

.sc-btn-neutral:hover,
.sc-btn-neutral:focus {
  background: #e6edf5;
  border-color: var(--action-neutral-hover);
  color: var(--action-neutral-hover);
}

.sc-btn-disabled,
.sc-btn-disabled:hover,
.sc-btn-disabled:focus {
  background: var(--action-disabled-soft);
  border-color: var(--action-disabled);
  color: var(--action-disabled);
}

.btn:focus-visible, .form-control:focus-visible, .form-select:focus-visible, a:focus-visible {
  box-shadow: 0 0 0 0.2rem var(--sc-focus-ring);
  outline: 0;
}

.table { --bs-table-bg: transparent; --bs-table-hover-bg: var(--sc-bg); margin-bottom: 0; }
.opportunity-table-card { background: var(--sc-surface); border: 1px solid var(--sc-border); border-radius: 14px; overflow: hidden; }
.opportunity-table-card .table-responsive { border-radius: 0; }
.sc-table th, .table th {
  background: #fbfcfe;
  border-bottom-color: var(--sc-border);
  color: #627087;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding: 14px 12px;
  text-transform: uppercase;
  white-space: nowrap;
}
.sc-table td, .table td {
  border-bottom-color: #eaeff5;
  color: var(--sc-text);
  font-size: 14px;
  padding: 15px 12px;
  vertical-align: middle;
}
.table-hover > tbody > tr:hover > * { --bs-table-accent-bg: #f8fafd; color: var(--sc-text); }
.object-cell { max-width: 420px; min-width: 280px; }
.object-description, .infima-list-clamp { -webkit-box-orient: vertical; -webkit-line-clamp: 2; display: -webkit-box; overflow: hidden; }
.workflow-cell { min-width: 138px; }
.workflow-select { border: 0; border-radius: 999px; font-size: 12px; font-weight: 500; padding: 5px 28px 5px 20px; }
.workflow-select { padding-left: 10px; }
.period-cell { font-size: 12px; line-height: 1.55; min-width: 202px; white-space: nowrap; }
.period-row { align-items: center; display: grid; gap: 8px; grid-template-columns: 58px 1fr; }
.period-row span { border-radius: 4px; font-size: 10px; font-weight: 600; letter-spacing: .02em; padding: 2px 4px; text-align: center; }
.period-row strong { color: var(--sc-text); font-weight: 400; }
.period-published span { background: var(--sc-blue-light); color: var(--sc-blue); }
.period-closing span { background: var(--status-error-bg); color: var(--status-error); }
.period-closing strong { color: var(--status-error); }
.period-duration span { background: var(--status-discarded-bg); color: var(--sc-text-muted); }
.period-remaining { margin-top: 2px; }
.period-remaining span { background: var(--status-interested-bg); color: var(--status-interested); }
.period-remaining strong { font-size: 13px; font-weight: 500; }
.period-remaining.remaining-critical span { background: var(--status-error-bg); color: var(--status-error); }
.period-closing.remaining-critical strong, .period-remaining.remaining-critical strong { color: var(--status-error); }
.period-remaining.remaining-attention span { background: var(--status-review-bg); color: var(--urgency-high); }
.period-closing.remaining-attention strong, .period-remaining.remaining-attention strong { color: var(--urgency-high); }
.opportunity-row > td:first-child { border-left: 3px solid transparent; }
.opportunity-row.workflow-reviewing > td:first-child { border-left-color: var(--action-warning); }
.opportunity-row.workflow-interested > td:first-child { border-left-color: var(--action-success); }
.opportunity-row.workflow-new.closing-soon > td:first-child { border-left-color: var(--action-danger); }
.entity-cell { font-weight: 500; line-height: 1.45; max-width: 260px; min-width: 200px; }
.sc-category-compact { font-size: 11px; padding: 4px 7px; }
.opportunity-secondary-summary { opacity: .86; }
.opportunity-secondary-summary .sc-summary-panel { padding: 12px 16px; }
.opportunity-secondary-summary .sc-summary-panel h2 { color: var(--sc-text-muted); font-size: 12px; margin-bottom: 8px; }
.opportunity-secondary-summary .sc-summary-chips { gap: 6px; }
.opportunity-secondary-summary .badge, .opportunity-secondary-summary .sc-summary-category { font-size: 11px; padding: 4px 7px; }

.sc-process-link {
  color: var(--sc-blue);
  font-weight: 600;
  text-decoration: none;
  text-underline-offset: 3px;
}

.sc-process-link:hover {
  color: var(--sc-blue-hover);
  text-decoration: underline;
}

.sc-process-link:visited {
  color: var(--sc-blue);
}

.sc-process-link:focus-visible {
  color: var(--sc-blue-hover);
}

.table-responsive { border-radius: var(--radius-control); }

.badge {
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  padding: 5px 8px;
}
.badge-score-high, .sc-score-high { background: var(--sc-navy-light); color: var(--sc-navy); }
.badge-score-good, .sc-score-good { background: var(--sc-blue-light); color: var(--sc-blue); }
.badge-score-mid, .sc-score-mid { background: var(--status-discarded-bg); color: var(--sc-text-muted); }
.badge-score-low, .sc-score-low { background: var(--status-discarded-bg); color: var(--sc-text-muted); }

.badge-workflow-new, .status-new { background: var(--status-new-bg); color: var(--status-new); }
.badge-workflow-reviewing, .status-reviewing { background: var(--status-review-bg); color: var(--status-review); }
.badge-workflow-interested, .status-interested { background: var(--status-interested-bg); color: var(--status-interested); }
.badge-workflow-discarded, .status-discarded { background: var(--status-discarded-bg); color: var(--status-discarded); }
.status-error { background: var(--status-error-bg); color: var(--status-error); }

.badge-urgency-CRITICAL { background: var(--status-error-bg); color: var(--status-error); }
.badge-urgency-HIGH, .urgency-high { background: var(--status-review-bg); color: var(--urgency-high); }
.badge-urgency-MEDIUM, .urgency-medium { background: var(--status-review-bg); color: var(--urgency-medium); }
.badge-urgency-LOW, .badge-urgency-UNKNOWN, .badge-urgency-EXPIRED, .urgency-low {
  background: var(--status-discarded-bg);
  color: var(--urgency-low);
}

.sc-financial-value {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  display: inline-flex;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  padding: 4px 8px;
  white-space: nowrap;
}

.sc-financial-value--subtotal {
  background: var(--financial-subtotal-bg);
  border-color: var(--financial-subtotal-border);
  color: var(--financial-subtotal);
}

.sc-financial-value--tax {
  background: var(--financial-tax-bg);
  border-color: var(--financial-tax-border);
  color: var(--financial-tax);
}

.sc-financial-value--total {
  background: var(--financial-total-bg);
  border-color: var(--financial-total-border);
  color: var(--financial-total);
  font-size: 13px;
  font-weight: 600;
  padding: 4px 8px;
}

.historical-cell { white-space: nowrap; }
.historical-link, .sc-history-link { color: var(--sc-blue); font-weight: 500; text-decoration: none; }
.historical-link:hover, .sc-history-link:hover { text-decoration: underline; }
.historical-pending { color: var(--sc-text-muted); font-size: 12px; }
.historical-error { color: var(--status-error); font-size: 12px; }

.evidence-item {
  background: transparent;
  border-left: 3px solid var(--sc-border);
  margin-bottom: 8px;
  padding: 8px 12px;
}
.evidence-positive { border-left-color: var(--status-interested); }
.evidence-penalty { border-left-color: var(--urgency-medium); }
.evidence-exclude { border-left-color: var(--status-error); }

.history-entry { border-color: var(--sc-border) !important; }

/* Canonical Ínfima Cuantía workspace. Color identifies zones without tinting content. */
.infima-header { border-top: 4px solid var(--sc-navy); }
.infima-header-meta { display: grid; gap: 2px 16px; grid-template-columns: auto minmax(160px, 260px); }
.infima-header-meta dt { color: var(--sc-text-muted); font-size: 12px; font-weight: 500; }
.infima-header-meta dd { font-weight: 600; margin: 0; text-align: right; }
.infima-metablock {
  --infima-zone: var(--sc-blue);
  background: var(--sc-surface);
  border: 1px solid var(--sc-border);
  border-left: 5px solid var(--infima-zone);
  border-radius: var(--radius-card);
  overflow: hidden;
}
.infima-metablock-management { --infima-zone: var(--sc-success); }
.infima-metablock-ai { --infima-zone: var(--sc-ai); }
.infima-metablock-header {
  align-items: center;
  border-bottom: 1px solid var(--sc-border);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 18px 20px;
}
.infima-metablock-header > div:first-child { display: grid; grid-template-columns: auto 1fr; }
.infima-metablock-header h2 { color: var(--sc-navy); font-size: 20px; font-weight: 600; line-height: 26px; margin: 0; }
.infima-metablock-header p { color: var(--sc-text-muted); grid-column: 2; margin: 2px 0 0; }
.infima-icon { color: var(--infima-zone); font-size: 21px; grid-row: 1 / 3; margin-right: 10px; }
.infima-icon svg { height: 22px; stroke: currentColor; width: 22px; }
.infima-header-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.infima-ai-action { align-items: center; display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.infima-ai-action small { color: var(--sc-text-muted); max-width: 250px; text-align: right; }
.infima-collapse-toggle { align-items: center; border: 1px solid currentColor; display: inline-flex; height: 36px; justify-content: center; padding: 0; width: 36px; }
.infima-collapse-toggle svg { height: 18px; stroke: currentColor; width: 18px; }
.infima-collapse-toggle-info { color: var(--sc-blue); background: var(--sc-blue-light); }
.infima-collapse-toggle-management { color: var(--sc-success); background: var(--action-success-soft); }
.infima-collapse-toggle-ai { color: var(--sc-ai); background: #f5f0ff; }
.infima-chevron-collapsed { display: none; }
.infima-collapse-toggle[aria-expanded="false"] .infima-chevron-expanded { display: none; }
.infima-collapse-toggle[aria-expanded="false"] .infima-chevron-collapsed { display: inline-flex; }
.sc-inline-icon { display: inline-flex; height: 16px; vertical-align: -3px; width: 16px; }
.sc-inline-icon svg { height: 16px; stroke: currentColor; width: 16px; }
.infima-source-actions .btn, .infima-ai-action .btn { align-items: center; display: inline-flex; gap: 5px; min-height: 36px; }
.infima-ai-action .btn:disabled { cursor: not-allowed; opacity: .62; }
.infima-metablock-summary { background: #fbfcfe; display: flex; flex-wrap: wrap; gap: 8px 24px; padding: 10px 20px; }
.infima-metablock-summary span { font-size: 12px; }
.infima-metablock-summary strong { color: var(--sc-text-muted); font-weight: 500; margin-right: 4px; }
.infima-metablock-body { padding: 20px; }
.infima-subblock { border-top: 1px solid var(--sc-border); padding: 20px 0; }
.infima-subblock:first-child { border-top: 0; padding-top: 0; }
.infima-subblock:last-child { padding-bottom: 0; }
.infima-subblock > h3:not(.sc-section-title), .infima-ai-grid h3 { color: var(--sc-navy); font-size: 15px; font-weight: 600; text-transform: uppercase; }
.infima-source-actions, .infima-ai-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; margin-bottom: 4px; }
.infima-source-actions form, .infima-ai-actions form { margin: 0; }
.infima-data-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.infima-data-grid > div { background: #f8fafc; border: 1px solid var(--sc-border); border-radius: var(--radius-control); padding: 10px 12px; }
.infima-data-grid dt { color: var(--sc-text-muted); font-size: 11px; font-weight: 500; margin-bottom: 3px; text-transform: uppercase; }
.infima-data-grid dd { margin: 0; overflow-wrap: anywhere; }
.infima-object-short { max-width: 340px; }
.infima-empty { color: var(--sc-text-muted); margin: 0; padding: 24px 12px; text-align: center; }
.infima-ai-grid { display: grid; gap: 0 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.infima-ai-wide { grid-column: 1 / -1; }
.infima-metablock-ai code { color: var(--sc-ai); font-size: 12px; overflow-wrap: anywhere; }
.infima-history-meta td { background: #fbfcfe; color: var(--sc-text-muted); font-size: 12px; padding-top: 0; }
.infima-history-meta summary, .infima-history-more summary { cursor: pointer; list-style: none; }
.infima-history-meta summary::-webkit-details-marker, .infima-history-more summary::-webkit-details-marker { display: none; }

@media (max-width: 767.98px) {
  .infima-header-meta, .infima-data-grid, .infima-ai-grid { grid-template-columns: 1fr; width: 100%; }
  .infima-header-meta dd { text-align: left; }
  .infima-ai-wide { grid-column: auto; }
  .infima-metablock-header { align-items: flex-start; flex-direction: column; }
  .infima-header-actions { justify-content: flex-start; width: 100%; }
  .infima-ai-action small { text-align: left; }
  .infima-projected-filters > div, .infima-projected-filters > div:first-child { min-width: 100%; }
}
.history-status { background: var(--status-discarded-bg); color: var(--sc-text-muted); }
.history-similarity { background: var(--sc-blue-light); color: var(--sc-blue); }
.history-cpc, .history-no-order { background: var(--status-discarded-bg); color: var(--sc-text-muted); }
.history-purchase-order { background: var(--status-interested-bg); color: var(--status-interested); }

.sc-category {
  border-radius: 999px;
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.2;
  padding: 4px 8px;
}

.sc-category-end-user-computing { background: var(--category-end-user-computing-bg); color: var(--category-end-user-computing); }
.sc-category-business-email { background: var(--category-business-email-bg); color: var(--category-business-email); }
.sc-category-cloud-hosting { background: var(--category-cloud-hosting-bg); color: var(--category-cloud-hosting); }
.sc-category-cybersecurity { background: var(--category-cybersecurity-bg); color: var(--category-cybersecurity); }
.sc-category-microsoft-licensing { background: var(--category-microsoft-licensing-bg); color: var(--category-microsoft-licensing); }
.sc-category-backup-drp { background: var(--category-backup-drp-bg); color: var(--category-backup-drp); }
.sc-category-networking { background: var(--category-networking-bg); color: var(--category-networking); }
.sc-category-generic { background: var(--category-generic-bg); color: var(--category-generic); }

.sc-section-title {
  align-items: center;
  color: var(--sc-navy);
  display: flex;
  font-size: 18px;
  font-weight: 600;
  gap: 10px;
  line-height: 24px;
  margin-bottom: 12px;
}

.sc-section-title::before {
  background: var(--section-default);
  border-radius: 4px;
  content: "";
  display: inline-block;
  flex: 0 0 4px;
  height: 18px;
}

.sc-section-process::before { background: var(--section-process); }
.sc-section-commercial::before { background: var(--section-commercial); }
.sc-section-why::before { background: var(--section-why); }
.sc-section-items::before { background: var(--section-items); }
.sc-section-documents::before { background: var(--section-documents); }
.sc-section-history::before { background: var(--section-history); }

.nco-feed-active { background: var(--status-interested-bg); color: var(--status-interested); }
.nco-feed-missing { background: var(--status-discarded-bg); color: var(--status-discarded); }
.nco-health-available, .nco-run-succeeded { background: var(--status-interested-bg); color: var(--status-interested); }
.nco-health-stale, .nco-health-degraded { background: var(--status-review-bg); color: var(--status-review); }
.nco-health-failed, .nco-health-incompatible, .nco-run-failed { background: var(--status-error-bg); color: var(--status-error); }

.sc-mobile-nav-link {
  align-items: center;
  border-radius: var(--radius-control);
  color: var(--sc-navy);
  display: flex;
  gap: 11px;
  padding: 10px 12px;
  text-decoration: none;
}

.sc-mobile-nav-link:hover {
  background: var(--sc-blue-light);
  color: var(--sc-navy);
}

.empty { color: var(--sc-text-muted); padding: 32px 12px; text-align: center; }
.pagination { --bs-pagination-color: var(--sc-blue); --bs-pagination-border-color: var(--sc-border); --bs-pagination-hover-color: var(--sc-blue-hover); --bs-pagination-hover-bg: var(--sc-bg); --bs-pagination-focus-box-shadow: 0 0 0 0.2rem var(--sc-focus-ring); }

@media (max-width: 991.98px) {
  .sidebar { display: none; }
  .content-wrap { padding: 20px 16px 28px; }
  .topbar { height: 56px; padding: 0 16px; }
  .sc-page-title { font-size: 24px; line-height: 32px; }
  .sc-page-title::before { height: 20px; }
  .object-cell { max-width: 220px; }
  .sc-table th:nth-child(5), .sc-table td:nth-child(5),
  .sc-table th:nth-child(6), .sc-table td:nth-child(6),
  .sc-table th:nth-child(7), .sc-table td:nth-child(7),
  .sc-table th:nth-child(8), .sc-table td:nth-child(8),
  .sc-table th:nth-child(9), .sc-table td:nth-child(9) { display: none; }
  .panel { padding: 16px; }
}
