:root {
  --ic-primary:               #3d5a80;
  --ic-primary-rgb:           61, 90, 128;
  --ic-primary-dark:          #3d5a80;

  --ic-secondary:               #608ec4;
  --ic-secondary-rgb:           96, 142, 196;
  --ic-secondary-dark:          #608ec4;

  --bs-primary:               var(--ic-primary);
  --bs-primary-rgb:           var(--ic-primary-rgb);
  --bs-link-color:            var(--ic-secondary);
  --bs-link-color-rgb:        var(--ic-secondary-rgb);
  --bs-link-hover-color:      var(--ic-secondary-dark);
  --bs-primary-text-emphasis: var(--ic-primary);

  --bs-secondary:               var(--ic-secondary);
  --bs-secondary-rgb:           var(--ic-secondary-rgb);
  --bs-secondary-text-emphasis: var(--ic-secondary);
}

body { background-color: #eaedf1; }

.text-num { text-align: right !important; font-variant-numeric: tabular-nums; }

.section-label { font-size: 1rem; text-transform: uppercase; overflow-wrap: break-word; }

.input-group:focus-within .input-group-text { border-color: #86b7fe; color: var(--ic-primary) !important; }

.breadcrumb-item a { text-decoration: none; }

.card-hover { transition: box-shadow .15s; cursor: pointer; }
.card-hover:hover { box-shadow: 0 .25rem .75rem rgba(0,0,0,.12) !important; }

.ic-chart-wrap { overflow: hidden; }
.ic-tip { font-size: .8rem; line-height: 1.4; }
.ic-leg-dot { display: inline-block; width: 14px; height: 3px; vertical-align: middle; border-radius: 2px; margin-right: 4px; }


@media print {
  a[href]::after { content: none !important; }

  body { background-color: #fff !important; }

  .ic-nav, .breadcrumb { display: none !important; }

  main.container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  .bg-light, .table-light { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  .table-hover tbody tr:hover > * { background-color: transparent !important; }

  .card-hover { cursor: default; transition: none; }


  footer.container { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding-top: 1rem !important; border-top: 1px solid #dee2e6; }

  .card  { break-inside: avoid; }
  section { break-inside: avoid; }
  tr     { break-inside: avoid; }
  h2, h3 { break-after: avoid; }

  .ic-chart-wrap .uplot,
  .ic-chart-wrap .u-wrap { width: 100% !important; }
  .ic-chart-wrap canvas { width: 100% !important; height: auto !important; }
}
