/* Cross-site Web Interface Guidelines baseline.
 * Loaded by every public HTML document, including printable resources. */

:root {
  --focus-ring-color: #b18400;
  --focus-ring-offset: 3px;
}

html {
  scroll-padding-top: 8rem;
  -webkit-tap-highlight-color: rgba(177, 132, 0, 0.18);
}

body {
  max-width: 100%;
  overflow-wrap: break-word;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
  height: auto;
}

table,
pre {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}

.table-scroll {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}

@media (max-width: 640px) {
  table {
    min-width: 0 !important;
  }

  .quick-status {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .status-card {
    min-width: 0;
    max-width: 100%;
  }

  .summary-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .summary-item,
  .summary-item .details {
    min-width: 0;
  }

  .checklist-item {
    grid-template-columns: 24px minmax(0, 1fr) !important;
  }

  .checklist-item .status-tag {
    grid-column: 2;
    justify-self: start;
    white-space: normal;
  }
}

:where(h1, h2, h3, h4, h5, h6, [id]) {
  scroll-margin-top: 8rem;
}

:where(a, button, input, select, textarea, summary, [tabindex]):not([tabindex="-1"]) {
  touch-action: manipulation;
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--focus-ring-color) !important;
  outline-offset: var(--focus-ring-offset) !important;
}

:where(input, select, textarea) {
  min-width: 0;
}

select {
  background-color: #ffffff;
  color: #1c1d1a;
}

.task-marker {
  display: inline-block;
  width: 1.25em;
  margin-left: -1.6em;
  margin-right: 0.35em;
  color: currentColor;
  font-weight: 700;
  text-align: center;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

@media print {
  table {
    display: table;
    overflow: visible;
  }
}
