:root {
  --z-base: 1;
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-overlay: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-toast: 1080;
  --z-tooltip: 1090;
}
:focus-visible {
  outline: 2px solid var(--primary, #6c587b);
  outline-offset: 2px;
}
.skip-to-main {
  position: absolute;
  top: -100%;
  left: 0;
  z-index: var(--z-modal);
  padding: 0.75rem 1rem;
  background: #1e73be;
  color: white;
  text-decoration: none;
  font-weight: 600;
  transition: top 0.2s;
}
.skip-to-main:focus {
  top: 0;
}
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
[tabindex]:focus {
  outline: 2px solid var(--primary, #6c587b);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgb(108 88 123 / 30%);
}
:focus:not(:focus-visible) {
  outline: none;
}
.dropdown-menu:focus-within {
  display: block;
}
.modal[tabindex="-1"] {
  outline: none;
}
.nav-tabs [role=tab]:focus {
  outline: 2px solid var(--primary, #6c587b);
  outline-offset: -0.125rem;
}
table:focus {
  outline: 2px solid var(--primary, #6c587b);
}
td:focus,
th:focus {
  outline: 2px solid var(--primary, #6c587b);
  background-color: #f0f7ff;
}
.card:focus-within {
  outline: 2px solid var(--primary, #6c587b);
  outline-offset: 2px;
}
[aria-hidden=true]:focus {
  display: block;
  position: absolute;
  left: -9999px;
}
[role=button]:focus,
[role=checkbox]:focus,
[role=switch]:focus,
[role=slider]:focus {
  outline: 2px solid var(--primary, #6c587b);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
html.accessibility-mode {
  --a11y-font-scale: 1.12;
  --a11y-line-height: 1.6;
  --a11y-text: #111;
  --a11y-bg: #fff;
  --a11y-link: #004ea8;
  --a11y-link-visited: #5a2a86;
  --a11y-border: #5f5f5f;
}
html.accessibility-mode body {
  color: var(--a11y-text);
  background-color: var(--a11y-bg);
  font-size: calc(16px * var(--a11y-font-scale));
  line-height: var(--a11y-line-height);
}
html.accessibility-mode p,
html.accessibility-mode li,
html.accessibility-mode label,
html.accessibility-mode small,
html.accessibility-mode .text-muted {
  line-height: var(--a11y-line-height);
}
html.accessibility-mode a {
  color: var(--a11y-link);
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
html.accessibility-mode a:visited {
  color: var(--a11y-link-visited);
}
html.accessibility-mode a:hover,
html.accessibility-mode a:focus {
  color: #003d83;
}
html.accessibility-mode button,
html.accessibility-mode [role=button],
html.accessibility-mode input,
html.accessibility-mode select,
html.accessibility-mode textarea {
  min-height: 44px;
  border: 1px solid var(--a11y-border);
}
html.accessibility-mode .form-control,
html.accessibility-mode .btn,
html.accessibility-mode .dropdown-item {
  font-size: 1rem;
}
html.accessibility-mode input:focus,
html.accessibility-mode select:focus,
html.accessibility-mode textarea:focus,
html.accessibility-mode button:focus-visible,
html.accessibility-mode .btn:focus-visible,
html.accessibility-mode a:focus-visible {
  outline: 3px solid var(--primary, #6c587b);
  outline-offset: 2px;
}
html.accessibility-mode table {
  border-collapse: collapse;
}
html.accessibility-mode table th,
html.accessibility-mode table td {
  border: 1px solid var(--a11y-border);
  padding: 10px 12px;
}
html.accessibility-mode table th {
  background-color: #f1f1f1;
  color: #111;
}
html.accessibility-mode .skip-link {
  position: absolute;
  left: 0;
  top: -48px;
  z-index: var(--z-modal);
  padding: 10px 14px;
  background: #111;
  color: #fff;
  text-decoration: none;
}
html.accessibility-mode .skip-link:focus {
  top: 0;
}
html.high-contrast-mode body {
  background: #fff;
  color: #000;
}
html.high-contrast-mode a {
  color: #03a;
}
html.high-contrast-mode .btn,
html.high-contrast-mode button,
html.high-contrast-mode input,
html.high-contrast-mode select,
html.high-contrast-mode textarea,
html.high-contrast-mode .form-control,
html.high-contrast-mode .card,
html.high-contrast-mode .panel,
html.high-contrast-mode .modal-content,
html.high-contrast-mode .dropdown-menu {
  border: 0.125rem solid #000 !important;
  box-shadow: none !important;
}
html.high-contrast-mode .btn-primary {
  background: #000 !important;
  color: #fff !important;
}
@media (prefers-contrast: more) {
  body {
    background: #fff;
    color: #000;
  }
  a,
  button,
  input,
  select,
  textarea,
  .btn,
  .form-control {
    border-color: #000 !important;
  }
}
html {
  font-size: 100%;
  text-size-adjust: 100%;
}
body {
  overflow-x: hidden;
  word-break: break-word;
  overflow-wrap: break-word;
}
@media (width <= 400px) {
  .container,
  .container-fluid {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .col,
  [class*=col-] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .card,
  .panel,
  .widget-container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .dataTables_wrapper {
    overflow-x: auto;
  }
}
.page-content,
.main-content,
#page-body,
.content-area {
  max-width: 100%;
  overflow-x: hidden;
}
.stat-value,
.metric-number,
.kpi-number,
.counter-value,
.badge,
.label {
  white-space: normal;
  word-break: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
}
@media (resolution >= 192dpi), (resolution >= 2dppx) {
  table td,
  table th {
    word-break: break-word;
    overflow-wrap: break-word;
  }
}
@media (width <= 640px) {
  .sidebar,
  .left-sidebar,
  #left-sidebar {
    position: static !important;
    width: 100% !important;
    float: none !important;
  }
  .main-panel,
  .content-wrapper,
  .page-wrapper {
    margin-left: 0 !important;
    width: 100% !important;
  }
  .navbar .navbar-brand span,
  .logo-text {
    font-size: 1rem !important;
  }
}
.form-group,
.form-row {
  flex-wrap: wrap;
}
.form-group label,
.control-label {
  display: block;
  max-width: 100%;
}
.modal-dialog {
  max-width: min(560px, calc(100vw - 16px));
  margin: 8px auto;
}
@media (width <= 576px) {
  .modal-dialog {
    margin: 8px;
    max-width: calc(100vw - 16px);
  }
  .modal-body {
    padding: 12px;
  }
}
.stats-row,
.dashboard-stats,
.metric-row {
  flex-wrap: wrap;
  gap: 8px;
}
.stats-row > *,
.dashboard-stats > *,
.metric-row > * {
  min-width: 140px;
  flex: 1 1 140px;
}
.u-hidden,
.wizard-preview-link.u-hidden,
#industryLink.u-hidden,
#modelLink.u-hidden {
  display: none !important;
}
.glassmorphism-ui .input-mode-btn {
  color: #e5e7eb;
}
.glassmorphism-ui .input-mode-btn:hover,
.glassmorphism-ui .input-mode-btn.active {
  color: #14213d;
}
.solution-finder-step .sf-step-label {
  color: #595959;
}
.solution-finder-step.done .sf-step-label {
  color: #15803d;
}
.demo-industry-card p,
.demo-industry-users {
  color: #4a4a4a;
}
.text-success {
  color: #166534 !important;
}
[style*="color:#888"],
[style*="color:#999"],
[style*="color:#6a7c8f"],
[style*="color:#6f8193"] {
  color: #4a4a4a !important;
}
.pricing-page-shell [style*="color:#888"],
.pricing-page-shell [style*="color:#999"] {
  color: #4a4a4a !important;
}
.business-blueprint-page [style*="color:#6f8193"],
.industry-completeness-page [style*="color:#6a7c8f"] {
  color: #475569 !important;
}
a[style*="background:#2ecc71"],
a[style*="background:#33c56d"],
button[style*="background:#2ecc71"],
button[style*="background:#33c56d"] {
  background: #15803d !important;
}
a[style*="background:#16a085"],
button[style*="background:#16a085"] {
  background: #0f5f5a !important;
}
section[aria-label=Integrations] [style*="background:#4285F4"] {
  background: #3367D6 !important;
}
section[aria-label=Integrations] [style*="background:#FF4A00"] {
  background: #C73A00 !important;
}
section[aria-label=Integrations] [style*="background:#2CA01C"] {
  background: #1F7A1F !important;
}
section[aria-label=Integrations] [style*="background:#F22F46"] {
  background: #C41E2B !important;
}
section[aria-label=Integrations] [style*="background:#00A1E0"] {
  background: #0070A0 !important;
}
.btn-success {
  background-color: #166534 !important;
  border-color: #166534 !important;
  color: #fff !important;
}
.btn-success:hover,
.btn-success:focus {
  background-color: #14532d !important;
  border-color: #14532d !important;
}
.glassmorphism-ui .input-mode-btn {
  background: rgba(15, 23, 42, 0.55);
  color: #e5e7eb;
}
.glassmorphism-ui .input-mode-btn:hover,
.glassmorphism-ui .input-mode-btn.active {
  background: rgba(255, 255, 255, 0.92);
  color: #14213d;
}
section[aria-label=Integrations] [style*="background:#FF7A59"] {
  background: #C94A2B !important;
}
section[aria-label=Integrations] [style*="background:#2D8CFF"] {
  background: #1A5F9E !important;
}
section[aria-label=Integrations] [style*="background:#FF9900"] {
  background: #C77600 !important;
}
section[aria-label=Integrations] [style*="background:#96BF48"] {
  background: #6B8A30 !important;
}
[style*="color:#e98a5f"] {
  color: #c2410c !important;
}
[style*="color:#22c55e"] {
  color: #166534 !important;
}
[style*="color:#10b981"] {
  color: #166534 !important;
}
section[aria-label=Integrations] [style*="background:#FF7A59"],
section[aria-label=Integrations] [style*="background:#FF4A00"],
section[aria-label=Integrations] [style*="background:#FF9900"],
section[aria-label=Integrations] [style*="background:#96BF48"],
section[aria-label=Integrations] [style*="background:#2D8CFF"],
section[aria-label=Integrations] [style*="background:#00A1E0"],
section[aria-label=Integrations] [style*="background:#F22F46"],
section[aria-label=Integrations] [style*="background:#2CA01C"],
section[aria-label=Integrations] [style*="background:#FFE01B"] {
  color: #000 !important;
}
section[aria-label=Integrations] [style*="background:#C41E2B"] {
  color: #fff !important;
}
section[aria-label=Integrations] [style*="background:#C73A00"] {
  color: #fff !important;
}
section[aria-label=Integrations] [style*="background:#FF7A59"],
section[aria-label=Integrations] [style*="background:#FF4A00"],
section[aria-label=Integrations] [style*="background:#FF9900"],
section[aria-label=Integrations] [style*="background:#96BF48"],
section[aria-label=Integrations] [style*="background:#2D8CFF"],
section[aria-label=Integrations] [style*="background:#00A1E0"],
section[aria-label=Integrations] [style*="background:#F22F46"],
section[aria-label=Integrations] [style*="background:#2CA01C"],
section[aria-label=Integrations] [style*="background:#FFE01B"] {
  background: unset !important;
  color: #000 !important;
}
section[aria-label=Integrations] [style*="background:#C41E2B"],
section[aria-label=Integrations] [style*="background:#C73A00"],
section[aria-label=Integrations] [style*="background:#C94A2B"],
section[aria-label=Integrations] [style*="background:#1A5F9E"],
section[aria-label=Integrations] [style*="background:#0070A0"],
section[aria-label=Integrations] [style*="background:#1F7A1F"],
section[aria-label=Integrations] [style*="background:#6B8A30"] {
  color: #fff !important;
}
body:not(.appWrapper) .btn-success,
body:not(.appWrapper) .btn-success:hover,
body:not(.appWrapper) .btn-success:focus {
  background-color: #166534 !important;
  border-color: #166534 !important;
  color: #fff !important;
}
.glassmorphism-ui .input-mode-btn {
  background: #0f172a;
  color: #e5e7eb;
}
.glassmorphism-ui .input-mode-btn:hover,
.glassmorphism-ui .input-mode-btn.active {
  background: #fff;
  color: #14213d;
}
.btn-oauth-google {
  color: #0d47a1 !important;
  border-color: #0d47a1 !important;
}
.btn-oauth-google:hover,
.btn-oauth-google:focus {
  background: #0d47a1 !important;
  color: #fff !important;
}
.compliance-badge {
  color: #0f5f5a !important;
}
