/* Loading and network (board B, GapOffline, GapOfflineTable and GapUpdate; design/gaps/gaps.py b_offline, b_offline_table,
   b_update). Offline: the top bar and the tab bar stay as they are; what's under them dims as the board's .dim (42%, colour
   drawn down). The bottom button stays lit in the kit's off state (network.js), as the table page draws it. Pages differ in
   depth (main holds the page, or a view that holds it), so the rule looks two levels in for the parts that stay.
   Only the dim's opacity moves (MotionSpec: transform and opacity only); the colour draws down with it at once, no filter
   transition repainting every block each frame. The toasts sit 100 above the bottom, or 160 over a bottom button, as drawn. Sizes, colours and type come from kit.css. */
html.k-net-off main > :not(.k-top,.k-lap-hd,.home-hdr,.k-toast,.pcta,.pfoot,.k-foot,#tabs):not(:has(.k-top,.k-lap-hd,.home-hdr,.pcta,.k-foot,.k-tabs)),
html.k-net-off main > :has(.k-top,.k-lap-hd,.home-hdr,.pcta,.k-foot) > :not(.k-top,.k-lap-hd,.home-hdr,.k-toast,.pcta,.pfoot,.k-foot,.k-tabs,.k-tabs-fade):not(:has(.k-top,.k-lap-hd,.home-hdr,.pcta,.k-foot,.k-tabs)){opacity:.42;filter:saturate(.4)}
.k-net-toast{z-index:150;bottom:calc(env(safe-area-inset-bottom) + 100px)!important}
.k-net-toast.k-net-foot{bottom:calc(env(safe-area-inset-bottom) + 160px)!important}
.k-net-icon{display:block;width:24px;height:24px;border-radius:6px}
@media (prefers-reduced-motion:no-preference){
  html.k-net-off main > :not(.k-top,.k-lap-hd,.home-hdr,.k-toast,.pcta,.pfoot,.k-foot,#tabs),
  html.k-net-off main > * > :not(.k-top,.k-lap-hd,.home-hdr,.k-toast,.pcta,.pfoot,.k-foot,.k-tabs,.k-tabs-fade){transition:opacity var(--m-smooth-ms,520ms) var(--m-smooth,ease-out)}
  .k-net-toast{animation:nv-rise var(--m-smooth-ms,520ms) var(--m-smooth,ease-out) both}
}
