:root {
  color-scheme: light;
  --white: #ffffff;
  --ink: #281f23;
  --muted: #514046;
  --rose: #ac3e5b;
  --salmon: #f1a795;
  --blush: #fbe8e5;
  --link: #79253c;
  --ticket: polygon(18px 0, 100% 0, 100% calc(100% - 18px), calc(100% - 18px) 100%, 0 100%, 0 18px);
  --small-ticket: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
body { background: var(--white); color: var(--ink); border-top: 10px solid var(--rose); }
a { color: var(--link); }
a:hover { text-decoration-thickness: .12em; }
body > nav { color: var(--muted); }
main > header aside { background: var(--salmon); color: var(--ink); clip-path: var(--ticket); }
[data-kicker] { color: var(--link); }
[data-next] { color: var(--ink); background: var(--salmon); clip-path: var(--small-ticket); }
[data-next]:hover { background: var(--blush); }
[data-sheet] { background: var(--white); color: var(--ink); }
[data-sheet] > header { background: var(--rose); color: var(--white); clip-path: var(--ticket); }
[data-sheet] > header [data-kicker] { color: inherit; }
[data-sheet] > section { background: var(--blush); clip-path: var(--ticket); }
[data-sheet] > section:nth-of-type(3n + 2) { background: var(--white); }
[data-sheet] > section:nth-of-type(3n) { background: var(--salmon); }
[data-sheet] > section:nth-of-type(3n) [data-next] { background: var(--white); }
[data-sheet] > section:nth-of-type(3n) [data-next]:hover { background: var(--blush); }
[data-sheet] aside { color: var(--muted); }
[data-sheet] aside dt { color: var(--ink); }
[data-checks] input { appearance: none; background: transparent; border: 0; border-radius: 0; cursor: pointer; }
[data-checks] input::before { content: ''; position: absolute; inset: 9px; border: 2px solid var(--link); background: var(--white); clip-path: polygon(4px 0, 100% 0, 100% calc(100% - 4px), calc(100% - 4px) 100%, 0 100%, 0 4px); }
[data-checks] input:checked::before { background: var(--link); }
[data-checks] input:checked::after { content: ''; position: absolute; width: 7px; height: 13px; border-right: 2px solid var(--white); border-bottom: 2px solid var(--white); transform: rotate(45deg); top: 12px; left: 18px; }
[data-checks] input:checked + span { color: var(--muted); }
details { border-top: 2px solid var(--rose); }
summary { color: var(--link); text-decoration: underline; text-underline-offset: .2em; }
summary::marker { color: var(--link); }
[data-evidence-body] { background: var(--white); color: var(--ink); }
[data-map] { background: var(--salmon); color: var(--ink); clip-path: var(--ticket); }
[data-map] dl > div { border-top: 4px solid var(--rose); }
[data-prices] dl > div { border-top: 2px solid var(--rose); }
[data-prices] dl > div:last-child { border-bottom: 2px solid var(--rose); }
[data-ending] { background: var(--blush); clip-path: var(--ticket); }
body > footer { background: var(--rose); color: var(--white); clip-path: var(--ticket); }
[data-skip] { color: var(--white); background: var(--link); }
:focus-visible { outline: 3px solid var(--link); outline-offset: 4px; }
[data-next]:focus-visible, dialog button:focus-visible { outline-offset: -6px; }
[data-skip]:focus-visible { outline-color: var(--ink); }
dialog { color-scheme: light; color: var(--ink); background: var(--white); border: 0; border-top: 12px solid var(--rose); border-radius: 0; clip-path: var(--ticket); }
dialog::backdrop { background: #281f234d; }
dialog [data-evidence-body] { background: var(--white); border: 0; }
dialog button { background: var(--salmon); color: var(--ink); border: 0; clip-path: var(--small-ticket); }
dialog button:hover { background: var(--blush); }
dialog button svg { fill: none; stroke: currentColor; stroke-width: 1.7; }
::selection { color: var(--ink); background: var(--salmon); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
  [data-next], dialog, dialog button { clip-path: none; border: 2px solid ButtonText; }
  [data-checks] input { appearance: auto; }
  [data-checks] input::before, [data-checks] input::after { display: none; }
}
@media print {
  body { border: 0; }
  body, [data-sheet], [data-sheet] > header, [data-sheet] > section, [data-map], [data-ending], body > footer, main > header aside { background: white !important; color: #171717 !important; clip-path: none; }
  a, summary, aside, [data-kicker], aside dt, [data-checks] input:checked + span { color: #171717 !important; }
  [data-next] { background: white !important; color: #171717; clip-path: none; padding-inline: 0; }
  [data-map] dl > div, [data-prices] dl > div, details { border-color: #555; }
  [data-checks] input::before { inset: 6px; background: white !important; border-color: #171717; }
  [data-checks] input:checked::after { border-color: #171717; top: 7px; left: 12px; }
}
