/* Original site styling is in assets/*-styles.css. Only offline UI is styled here. */
#offline-dialog { margin:auto; width:min(600px,calc(100% - 32px)); max-height:85dvh; overflow:auto; border:0; border-top:5px solid #dc0a1c; padding:36px; color:#262626; background:#fff; box-shadow:0 20px 90px #0005; font:16px/1.65 Ubuntu,Arial,sans-serif; }
#offline-dialog::backdrop { background:#0009; }
#offline-dialog:not([open]) { display:none; }
#offline-dialog h2 { font-size:26px; font-weight:700; margin:8px 0 18px; padding-right:20px; }
#offline-dialog p { margin:14px 0; }
#offline-dialog .offline-eyebrow { color:#dc0a1c; font-size:12px; letter-spacing:1px; font-weight:bold; }
#offline-dialog code { display:block; background:#f3f3f3; padding:12px; margin-top:20px; font-size:12px; overflow-wrap:anywhere; }
#offline-dialog button { cursor:pointer; }
#offline-dialog .offline-close { position:absolute; top:12px; right:16px; padding:4px 8px; font-size:32px; line-height:1; }
#offline-dialog .offline-done { background:#dc0a1c;color:white;padding:10px 30px;margin-top:24px; }
.offline-results { list-style:none;padding:0; }
.offline-results button { text-align:left;width:100%;padding:12px 8px;border-bottom:1px solid #ddd; }
.offline-results button:hover,.offline-results button:focus-visible { color:#dc0a1c;background:#f7f7f7; }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } *,*::before,*::after { animation-duration:.01ms!important;transition-duration:.01ms!important; } }
/* Keep the original desktop menu within intermediate tablet widths. */
@media (min-width:1024px) and (max-width:1279px) {
 .snowdog-topmenu-desktop > ul > li { padding-left:12px; padding-right:12px; }
 .snowdog-topmenu-desktop > ul > li > .group > span,
 .snowdog-topmenu-desktop > ul > li > .group > a { font-size:14px; white-space:nowrap; }
}
