/* Three-column desktop layout: navigation / page / rankings. */
.mainbody { width: 1160px; max-width: calc(100% - 28px); }
.site-layout { display: grid; grid-template-columns: 192px minmax(0, 1fr) 192px; gap: 12px; align-items: start; }
.site-main-column { min-width: 0; }
.site-layout .site-sidebar-left { float: none; width: 100%; margin: 0; }
.site-sidebar-right { min-width: 0; width: 100%; font-size: 12px; }
.site-main-column > .navbar, .site-main-column > .eventbar, .site-main-column > .newscont { float: none; width: 100%; box-sizing: border-box; }
.site-main-column > .eventbar { margin-top: 4px; }
.site-main-column > .newscont { margin-top: 4px; }
.site-sidebar-right .sidebar-pokemon-day { position: relative; display: block; width: 100%; height: 150px; margin: 0; background-position: center bottom; background-repeat: no-repeat; background-color: transparent; border-radius: 0; }
.pokemon-day-title { display: block; max-width: calc(100% - 16px); width: auto; height: 35px; margin: 0 auto; padding-top: 8px; }
.mainbody > .footer { display: flex; box-sizing: border-box; width: calc(100% - 408px); margin-left: 204px; clear: both; }
@media screen and (min-width: 722px) and (max-width: 1050px) {
 .site-layout { grid-template-columns: 170px minmax(0,1fr) 170px; gap: 8px; }
 .mainbody > .footer { width: calc(100% - 356px); margin-left: 178px; }
}
@media screen and (max-width: 721px) {
 .mainbody { max-width: 100%; }
 .site-layout { display: block; }
 .site-layout .site-sidebar-left { width: 50%; margin: 0; }
 .site-main-column { width: 100%; }
 .site-sidebar-right { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; padding: 12px; box-sizing: border-box; }
 .site-sidebar-right > .menu_button { grid-column: 1 / -1; }
 .site-sidebar-right > .nav_links_highscores { grid-column: 1 / -1; }
 .site-sidebar-right .sidebar-pokemon-day { grid-column: 1 / -1; margin-bottom: 18px; }
 .mainbody > .footer { width: 100%; margin-left: 0; }
}

@media screen and (min-width: 722px) { .site-sidebar-right { margin-top: -150px; } }

/* Contain floated tables so the page background covers the full listing. */
.site-main-column > .newscont { display: flow-root; }

.site-main-column > .navbar { min-height: 70px; height: auto; }
.site-main-column .navNextEvent { position: static; margin: 4px 0 0; line-height: 18px; font-size: 11px; text-align: left; }

/* Keep navigation and next-event countdown in separate layout rows. */
.site-main-column > .navbar { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 3px; padding: 8px 10px; min-height: 70px; }
.site-main-column .menuNavbar { position: static; margin: 0; padding: 0; text-align: left; line-height: 24px; }
.site-main-column .menuNavbar > a > div { padding-top: 0; }
.site-main-column .navbarDivisor { width: 100%; margin: 3px 0; }
.site-main-column .navNextEvent { position: static; margin: 0; clear: both; flex: none; }
/* Navigation divider and event emphasis, matching the compact two-line header. */
.site-main-column .menuNavbar { display: flex; flex-wrap: wrap; align-items: center; column-gap: 3px; }
.site-main-column .menuNavbar > a:first-child::before { content: "◒"; color: #3697e1; margin-right: 3px; }
.site-main-column .navbarDivisor { flex-basis: 100%; width: 100%; max-width: 405px; height: 1px; margin: 3px 0; }
.site-main-column .navNextEvent { font-size: 11px; font-weight: 700; margin-left: 0; line-height: 18px; }

/* Divider occupies its own full row beneath navigation links. */
.site-main-column .menuNavbar > .navbarDivisor { display: block; flex: 0 0 100%; width: 100%; max-width: 405px; height: 1px; border: 0; margin: 3px 0; }

.site-main-column .menuNavbar { display: block; }
.site-main-column .menuNavbar > .navbarDivisor { width: 405px; max-width: 100%; }
