:root {
  --journal-ink: #20352c;
  --journal-honey: #f5cb5c;
}

body {
  background: #f7f8f5;
  color: var(--journal-ink);
}

.site-header { background: var(--journal-honey); }
.brand { color: #17251f; font-size: 1.5rem; font-weight: 700; text-decoration: none; }
.nav-list { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; padding: 0; margin: 0; list-style: none; }
.nav-list a { color: #17251f; }
.nav-list [aria-disabled] { color: #555140; }
.form-panel { width: 100%; max-width: 38rem; }
.account-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1rem; }
.card { min-width: 0; }
.btn-primary { --bs-btn-bg: #285d43; --bs-btn-border-color: #285d43; --bs-btn-hover-bg: #17422d; --bs-btn-hover-border-color: #17422d; }
.skip-link { position: absolute; top: -5rem; background: white; padding: 1rem; z-index: 10; }
.skip-link:focus { top: 0; }
:focus-visible { outline: 3px solid #1346a5; outline-offset: 3px; }
summary { cursor: pointer; }
.preserve-lines { white-space: pre-wrap; overflow-wrap: anywhere; }
.history-list { padding-left: 1.25rem; overflow-wrap: anywhere; }
.history-list li { margin-bottom: .75rem; }
.report-chart { width: 100%; max-width: 72rem; border-block: 1px solid #c8d1ca; padding: .5rem 0; }
.report-chart svg { display: block; width: 100%; min-height: 12rem; overflow: visible; }
.chart-axis { stroke: #73847a; stroke-width: 1; }
.chart-line { fill: none; stroke: #285d43; stroke-width: 2; vector-effect: non-scaling-stroke; }
.chart-point { fill: #285d43; stroke: white; stroke-width: 1; }
.chart-point.suspect { fill: #bd4d2d; }
.chart-marker line, .chart-marker circle { stroke: #bd4d2d; fill: #bd4d2d; vector-effect: non-scaling-stroke; }
.inspection-info-dialog { width: min(42rem, calc(100vw - 2rem)); max-height: min(80vh, 48rem); border: 0; border-top: 4px solid #285d43; padding: 1.25rem; color: #20352c; }
.inspection-info-dialog::backdrop { background: rgb(16 28 22 / 55%); }
.inspection-dialog-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.inspection-question { overflow-wrap: anywhere; }

@media print {
  nav, button, .skip-link { display: none; }
  .report-tools { display: none !important; }
  body, .site-header { background: white; }
  .report-page { max-width: none !important; }
  .report-chart { break-inside: avoid; }
  .inspection-info-button, .inspection-tools, .inspection-question form { display: none !important; }
  .inspection-description { display: block; }
  table { break-inside: auto; }
  tr { break-inside: avoid; }
}
