/*
 * P95 - czytelne wykresy analizy odcink�w.
 * Ten arkusz jest �adowany po starszych stylach P31/P59.
 */

.ow-analysis-v2-metric-icon {
  display: inline-grid !important;
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  place-items: center !important;
  color: currentColor !important;
}

.ow-analysis-v2-metric-icon svg {
  width: 100% !important;
  height: 100% !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.ow-analysis-v2-view-switch {
  display: inline-grid !important;
  grid-template-columns: repeat(2, minmax(118px, 1fr)) !important;
  gap: 4px !important;
  margin: 0 0 12px !important;
  padding: 4px !important;
  border: 1px solid #cbdce8 !important;
  border-radius: 14px !important;
  background: #edf5f8 !important;
}

.ow-analysis-v2-view-switch button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-height: 38px !important;
  padding: 7px 14px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: #476379 !important;
  background: transparent !important;
  font: 850 12px/1.1 system-ui, sans-serif !important;
  cursor: pointer !important;
}

.ow-analysis-v2-view-switch button.is-active {
  color: #08766e !important;
  background: #fff !important;
  box-shadow: 0 2px 9px rgba(15, 59, 70, .13) !important;
}

.ow-analysis-v2-comparison-title h3,
.ow-analysis-v2-chart-card h4,
.ow-analysis-v2-sort {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.ow-analysis-v2-sort .ow-analysis-v2-metric-icon {
  width: 15px !important;
  height: 15px !important;
  flex-basis: 15px !important;
  color: #08766e !important;
}

.ow-analysis-v2-table-scroll {
  width: 100% !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain !important;
  scrollbar-width: thin !important;
}

.ow-analysis-v2-table-scroll .ow-analysis-v2-table {
  min-width: 1010px !important;
}

.ow-analysis-v2-chart-sections {
  display: grid !important;
  gap: 16px !important;
}

.ow-analysis-v2-chart-leg {
  overflow: hidden !important;
  border: 1px solid rgba(15, 118, 110, .26) !important;
  border-radius: 18px !important;
  background: #f8fbfc !important;
}

.ow-analysis-v2-chart-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  padding: 12px !important;
}

.ow-analysis-v2-chart-card {
  min-width: 0 !important;
  padding: 12px !important;
  border: 1px solid #d6e4ea !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 3px 10px rgba(15, 23, 42, .045) !important;
}

.ow-analysis-v2-chart-card > header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  min-height: 28px !important;
  margin-bottom: 10px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid #e4edf2 !important;
}

.ow-analysis-v2-chart-card h4 {
  margin: 0 !important;
  color: #17324d !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.ow-analysis-v2-chart-card h4 .ow-analysis-v2-metric-icon {
  color: #08766e !important;
}

.ow-analysis-v2-chart-card header small {
  overflow: hidden !important;
  color: #658095 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.ow-analysis-v2-bars {
  display: grid !important;
  gap: 7px !important;
}

.ow-analysis-v2-bar-row {
  display: grid !important;
  grid-template-columns: minmax(62px, 78px) minmax(70px, 1fr) 60px !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
}

.ow-analysis-v2-bar-label {
  overflow: hidden !important;
  color: #334e65 !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.ow-analysis-v2-bar-track {
  display: block !important;
  height: 9px !important;
  overflow: hidden !important;
  border-radius: 99px !important;
  background: #e7eff3 !important;
}

.ow-analysis-v2-bar-track i {
  display: block !important;
  width: var(--ow-analysis-bar, 0%) !important;
  height: 100% !important;
  min-width: 0 !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #37b8ad, #08766e) !important;
  transition: width .18s ease !important;
}

.ow-analysis-v2-bar-row strong {
  color: #17324d !important;
  font-size: 10px !important;
  font-variant-numeric: tabular-nums !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.ow-analysis-v2-bar-row.is-reference .ow-analysis-v2-bar-label,
.ow-analysis-v2-bar-row.is-reference strong {
  color: #00675f !important;
  font-weight: 950 !important;
}

.ow-analysis-v2-bar-row.is-reference .ow-analysis-v2-bar-track {
  outline: 2px solid rgba(8, 118, 110, .18) !important;
  outline-offset: 2px !important;
}

.ow-analysis-v2-chart-card[data-chart-metric="durationSec"] .ow-analysis-v2-bar-track i,
.ow-analysis-v2-chart-card[data-chart-metric="lowSpeedSec"] .ow-analysis-v2-bar-track i {
  background: linear-gradient(90deg, #fb923c, #d97706) !important;
}

.ow-analysis-v2-chart-card[data-chart-metric="avgSpeed"] .ow-analysis-v2-bar-track i,
.ow-analysis-v2-chart-card[data-chart-metric="maxSpeed"] .ow-analysis-v2-bar-track i {
  background: linear-gradient(90deg, #38bdf8, #087ac1) !important;
}

.ow-analysis-v2-chart-card[data-chart-metric="avgVmg"] .ow-analysis-v2-bar-track i {
  background: linear-gradient(90deg, #818cf8, #4f46e5) !important;
}

.ow-analysis-v2-chart-card[data-chart-metric="stability"] .ow-analysis-v2-bar-track i {
  background: linear-gradient(90deg, #4ade80, #16803f) !important;
}

#ow-analysis-v2-legs-panel .ow-analysis-v2-header {
  padding: 14px 18px !important;
}

#ow-analysis-v2-legs-panel .ow-analysis-v2-title {
  font-size: 20px !important;
  line-height: 1.1 !important;
}

#ow-analysis-v2-legs-panel .ow-analysis-v2-body {
  padding: 13px 15px 18px !important;
}

@media (max-width: 1120px) {
  .ow-analysis-v2-chart-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 620px) {
  #ow-analysis-v2-legs-panel .ow-analysis-v2-header {
    padding: 11px 13px !important;
  }

  #ow-analysis-v2-legs-panel .ow-analysis-v2-title {
    font-size: 18px !important;
  }

  #ow-analysis-v2-legs-panel .ow-analysis-v2-body {
    padding: 10px !important;
    font-size: 12px !important;
  }

  .ow-analysis-v2-status {
    margin-bottom: 8px !important;
    padding: 8px 10px !important;
    font-size: 11px !important;
  }

  .ow-analysis-v2-view-switch {
    display: grid !important;
    width: 100% !important;
    margin-bottom: 9px !important;
  }

  .ow-analysis-v2-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin-bottom: 10px !important;
    padding: 9px !important;
  }

  .ow-analysis-v2-controls label:first-child {
    grid-column: 1 / -1 !important;
  }

  .ow-analysis-v2-controls input,
  .ow-analysis-v2-controls select {
    height: 36px !important;
    padding-inline: 8px !important;
    font-size: 11px !important;
  }

  .ow-analysis-v2-chart-sections {
    gap: 11px !important;
  }

  .ow-analysis-v2-chart-grid {
    gap: 8px !important;
    padding: 8px !important;
  }

  .ow-analysis-v2-chart-card {
    padding: 10px !important;
  }

  .ow-analysis-v2-chart-card > header {
    margin-bottom: 8px !important;
  }

  .ow-analysis-v2-bar-row {
    grid-template-columns: 68px minmax(54px, 1fr) 54px !important;
    gap: 5px !important;
  }

  .ow-analysis-v2-leg-header {
    align-items: center !important;
    padding: 9px 10px !important;
  }

  .ow-analysis-v2-leg-header h3 {
    font-size: 14px !important;
  }

  .ow-analysis-v2-leg-header small {
    max-width: 46% !important;
    font-size: 9px !important;
  }

  .ow-analysis-v2-comparison-title {
    align-items: center !important;
    padding: 9px 10px !important;
  }

  .ow-analysis-v2-comparison-title h3,
  .ow-analysis-v2-leg-insights h3 {
    font-size: 14px !important;
  }

  .ow-analysis-v2-table-scroll .ow-analysis-v2-table {
    min-width: 920px !important;
  }
}
