/* Light paper directions inside the dark dispatch app. */
.pr-page { color: #f4f1ea; }
.pr-page h1, .pr-page h2 { font-family: Oswald, sans-serif; letter-spacing: .02em; }
.pr-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.pr-primary-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 12px 0 18px; }
.pr-primary {
  flex: 1 1 220px;
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #f57906;
  color: #14110e;
  font-family: Oswald, sans-serif;
  font-size: 1.35rem;
  letter-spacing: .03em;
  border-radius: 10px;
  padding: 16px;
  cursor: pointer;
  position: relative;
}
.pr-primary input, .pr-secondary input[type=file] {
  position: absolute;
  inset: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.pr-secondary { position: relative; display: inline-flex; align-items: center; min-height: 48px; }
.pr-sheet {
  background: #fff;
  color: #161616;
  padding: 22px 20px 32px;
  border-radius: 8px;
  max-width: 760px;
}
.pr-sheet h1, .pr-sheet h2, .pr-sheet h3 { font-family: Georgia, 'Times New Roman', serif; color: #161616; }
.pr-brand { font-family: Oswald, sans-serif; letter-spacing: .08em; text-transform: uppercase; font-size: .85rem; }
.pr-advisory { margin: 6px 0; padding: 8px 10px; border-left: 4px solid #888; }
.pr-adv-block { border-color: #9b1c1c; background: #fde8e8; }
.pr-adv-warn { border-color: #b7791f; background: #fff6e0; }
.pr-adv-info { border-color: #2b6cb0; background: #e8f1fb; }
.pr-stop { border-top: 1px solid #ddd; padding: 12px 0; }
.pr-dist { font-variant-numeric: tabular-nums; font-weight: 700; }
.pr-steps-hidden .pr-steps { display: none; }
.pr-lane-svg { vertical-align: middle; }
.pr-lane-active { fill: #f57906; stroke: #111; }
.pr-lane-idle { fill: #fff; stroke: #111; }
.pr-lane-glyph { font-size: 16px; fill: #111; }
.pr-approx { font-size: .85rem; font-style: italic; }
.pr-lane-toggle {
  min-width: 48px;
  min-height: 48px;
  padding: 12px 16px;
  border-radius: 8px;
  font-weight: 700;
}
.pr-lane-on { background: #f57906; color: #14110e; border: 2px solid #f57906; }
.pr-lane-off {
  background: transparent;
  color: inherit;
  border: 2px solid currentColor;
  text-decoration: line-through;
}
.pr-lane-popup {
  position: fixed;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  z-index: 40;
  background: #fff;
  color: #161616;
  padding: 16px;
  border-radius: 12px;
  box-shadow: 0 12px 40px rgba(0,0,0,.35);
  max-width: min(420px, calc(100vw - 24px));
}
.pr-map {
  height: 320px;
  background: #1c1c1c;
  border: 1px solid #333;
  border-radius: 8px;
  position: relative;
  touch-action: manipulation;
}
.pr-pin-list { list-style: none; padding: 0; }
.pr-pin-list li { display: flex; gap: 8px; align-items: center; margin: 6px 0; }
.pr-progress { margin: 12px 0; }
.pr-progress li[data-status="done"] { color: #9ae6b4; }
.pr-progress li[data-status="active"] { color: #f57906; }
.pr-banner { background: #3b2a12; color: #ffe7c2; padding: 10px 12px; border-radius: 8px; }
#pr-lane-host:empty { display: none; }

@media print {
  body { background: #fff !important; color: #000 !important; }
  header, footer, .test-strip, .pr-actions, .pr-hide-steps, .pr-lane-toggle, #identity, .skip-link { display: none !important; }
  .pr-sheet, .pr-sheet * { color: #000 !important; background: #fff !important; }
  .pr-sheet { font-size: 11pt; max-width: none; box-shadow: none; }
  .pr-sheet-head { display: table-header-group; }
  .pr-stop { break-inside: avoid; page-break-inside: avoid; }
  .pr-page-num::after { content: counter(page); }
  @page { margin: 0.6in; }
}
