/* Skin: warm paper, dark ink, restrained yellow marks, orange actions. */
:root { color-scheme: light; --paper: #FFFBED; --soft-paper: #FAF6E3; --ink: #1A1A1A; --canvas: #262626; --action: #F09A38; --pressed: #D87E1F; --highlight: #F5D773; --quiet: #626159; --rule: #D8D2BA; }
.guide { color: var(--ink); background: var(--canvas); }
.masthead { color: var(--paper); }
.masthead__home { color: var(--paper); text-decoration: none; }
.masthead__mark { stroke: var(--highlight); stroke-width: 1.8; fill: none; stroke-linecap: round; stroke-linejoin: round; }
.masthead__aside { color: #8E8E93; }
.rail { background: var(--soft-paper); border: 1px solid #DDD5B8; border-radius: 4px 16px 16px 16px; }
.rail__tab { background: var(--highlight); border-radius: 5px 8px 0 0; }
.rail__intro, .rail__closing { color: var(--quiet); }
.rail__item { border-bottom: 1px solid var(--rule); }
.note { background: var(--paper); border: 1px solid #E3DDC8; border-top: 5px solid var(--highlight); border-radius: 18px; box-shadow: 0 16px 48px #00000020; }
.note:focus { outline: none; }
.note__eyebrow { color: #875014; }
.note__date { color: var(--quiet); }
.note__lead { color: #46443C; }
.action { color: var(--ink); background: var(--action); border: 1px solid #D98425; border-radius: 10px; text-decoration: none; }
.action:hover, .action:active { background: var(--pressed); }
.route-sketch { border: 1px dashed #BCB39A; background: var(--soft-paper); border-radius: 10px; }
.route-sketch__dot { background: var(--highlight); border: 1.5px solid var(--ink); border-radius: 50%; }
.route-sketch__dot--outline { background: transparent; }
.route-sketch__dot--square { border-radius: 3px; background: var(--action); }
.route-sketch__join { color: #6A624D; }
.route-sketch__caption { color: var(--quiet); }
.note-section { border-top: 1px solid var(--rule); }
.note-ref { color: #815019; text-decoration: underline; text-underline-offset: 4px; }
.note-ref:hover { color: var(--ink); }
.product-comparison__item { border: 1px solid var(--rule); border-radius: 10px; background: var(--soft-paper); }
.product-comparison__mark { color: #815019; }
.entry { color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--rule); }
.entry:last-child { border-bottom: 0; }
.entry:hover .entry__title { text-decoration: underline; text-underline-offset: 4px; }
.entry__summary { color: var(--quiet); }
.entry__arrow { color: #875014; }
.visit-table__caption { color: var(--quiet); }
.visit-table__head { color: #545247; }
.visit-table__row { border-bottom: 1px solid var(--rule); }
.questions__item { background: var(--soft-paper); border: 1px solid var(--rule); border-radius: 8px; }
.questions__item::before { border: 1px solid #9E6D2E; border-radius: 2px; background: var(--highlight); }
.bill-sketch { border: 1px dashed #BCB39A; background: var(--soft-paper); border-radius: 10px; }
.bill-sketch__part { border-bottom: 1px solid #BFB498; }
.bill-sketch__operator { color: var(--quiet); }
.bill-sketch__total { background: var(--highlight); border-radius: 7px; border: 1px solid #D5B44B; }
.bill-sketch__caption { color: var(--quiet); }
.price-note { border-left: 4px solid var(--action); background: var(--soft-paper); border-radius: 0 8px 8px 0; }
.next-card { color: var(--ink); border: 1px solid #DDC573; background: #F8E7A0; text-decoration: none; border-radius: 10px; }
.next-card:hover { background: #F5DF85; }
.next-card__preview { color: #55513E; }
.next-card__arrow { color: #815019; }
.footnotes { border-top: 1px solid var(--rule); }
.footnotes__item { border-bottom: 1px solid var(--rule); }
.footnotes__item:target { background: #F8E7A0; outline: 2px solid #A46A1E; outline-offset: 5px; border-radius: 3px; }
.footnotes__letter { color: #815019; }
.footnotes__text { color: #565348; }
.footnotes__link, .footnotes__return { color: #565348; text-decoration: underline; text-underline-offset: 4px; }
.footnotes__link:hover, .footnotes__return:hover { color: var(--ink); }
.site-footer { color: #DEDBCD; }
.site-footer__link { color: var(--paper); text-decoration: underline; text-underline-offset: 4px; }
.dock { background: var(--soft-paper); border: 1px solid #CCC5AD; border-radius: 16px; box-shadow: 0 6px 28px #00000050; }
.dock__link { color: #535148; border: 1px solid transparent; border-radius: 10px; text-decoration: none; }
.dock__link:hover { background: #EFE8CD; color: var(--ink); }
.dock__link--current { color: var(--ink); background: var(--highlight); border-color: #D7BA53; }
.dock__icon { fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.skip-link { color: var(--ink); background: var(--highlight); border: 2px solid var(--ink); border-radius: 8px; text-decoration: none; }
a:focus-visible { outline: 3px solid #A86414; outline-offset: 4px; }
.masthead__home:focus-visible, .site-footer__link:focus-visible { outline-color: var(--highlight); }
@media (max-width: 600px) {
  .note { border-radius: 14px; box-shadow: none; }
  .visit-table__row { border: 1px solid var(--rule); border-radius: 9px; background: var(--soft-paper); }
  .dock { border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
@media print {
  .guide { background: white; color: var(--ink); }
  .note { border: 0; box-shadow: none; }
  .site-footer, .site-footer__link, .masthead__home { color: var(--ink); }
}
