/* Desktop page frame. No rule in this file applies below 1024px. */
@media(min-width:1024px){
  body{--desktop-content-width:min(92%,1100px);--desktop-side-space:max(4%,calc((100% - 1100px)/2))}
  /* Full-width page backgrounds; centered functional content. */
  body #board-page>.board-sticky>.statusbar{background:#f2f5f7}
  /* Train number sits below the service type in the centered two-column board. */
  body #board-page .board .train-main{flex-direction:column;align-items:flex-start;gap:3px}
  body #board-page .board .train-type .type-dot{order:1}
  body #train-detail>.detail-sticky>.detail-overview,
  body #train-detail>.detail-route-section{
    width:var(--desktop-content-width);margin-left:auto;margin-right:auto
  }
  body #train-detail>.detail-sticky>.detail-overview,
  body #train-detail>.detail-route-section{padding-left:0;padding-right:0}
  /* These headers retain their full-width background and border. */
  body .terms-header,body .not-found-page>.topbar,
  body #train-detail>.detail-sticky>.detail-topbar{
    padding-left:var(--desktop-side-space);padding-right:var(--desktop-side-space)
  }
  body .footer{padding-left:var(--desktop-side-space);padding-right:var(--desktop-side-space)}
  body #board-page .footer{padding-left:24px;padding-right:24px}
  body .terms-content{width:var(--desktop-content-width)}
  body .not-found-page>.not-found-content{width:var(--desktop-content-width);margin-left:auto;margin-right:auto}
  /* Topic pages have 24px inner padding: compensate on the outside only. */
  body .poke-page,body .special-page{width:min(calc(92% + 48px),1148px);max-width:none}
  body .poke-page>.poke-header{padding-left:24px;padding-right:24px}
  body .special-page>.special-header{
    position:relative;isolation:isolate;min-height:78px;margin:-24px -24px 24px;
    padding:16px 24px;background:#fff;border-bottom:1px solid var(--line,#e6ebee)
  }
  body .special-page>.special-header{position:sticky;top:0;z-index:40}
  body .poke-page>.footer,body .special-page>.footer{padding-left:0;padding-right:0;position:relative;isolation:isolate}
  /* Paint the topic headers/footers to the viewport edges without clipping controls. */
  body .poke-page>.poke-header{isolation:isolate;clip-path:none;box-shadow:none}
  body .poke-page>.footer{clip-path:none;box-shadow:none}
  body .poke-page>.poke-header::before,body .special-page>.special-header::before,
  body .poke-page>.footer::before,body .special-page>.footer::before{
    content:"";position:absolute;inset:0;z-index:-1;background:inherit;
    box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax);pointer-events:none
  }
  body .poke-page>.footer::before,body .special-page>.footer::before{box-shadow:0 0 0 100vmax #fbfcfd}
  body .poke-page>.poke-header::after,body .special-page>.special-header::after,
  body .poke-page>.footer::after,body .special-page>.footer::after{
    content:"";position:absolute;left:0;right:0;height:1px;z-index:-1;
    background:var(--line,#e6ebee);box-shadow:0 0 0 100vmax var(--line,#e6ebee);
    clip-path:inset(0 -100vmax);pointer-events:none
  }
  body .poke-page>.poke-header::after,body .special-page>.special-header::after{bottom:-1px}
  body .poke-page>.footer::after,body .special-page>.footer::after{top:-1px}
  body .detail-position-button{right:var(--desktop-side-space)}
}
