
.app-page-shell{width:100%;min-width:0;}
.app-page-inner{width:100%;min-width:0;}
.app-page-shell[data-mode="board"]{
  flex:1;min-width:0;min-height:0;display:flex;width:100%;height:100%;
}
.app-page-shell[data-mode="board"] .app-page-inner,
.app-page-shell[data-mode="board"] #root{
  flex:1;min-width:0;min-height:0;display:flex;width:100%;height:100%;
}
.app-page-shell[data-mode="board"] .app-page-inner{
  max-width:1200px;
  margin:0 auto;
}
/* Board fills the viewport under the fixed nav; site footer sits below the fold. */
body:has(.app-page-shell[data-mode="board"]) > .page-main{
  display:flex;
  padding:0;
  flex:0 0 auto;
  height:calc(100vh - var(--chrome-nav-height));
  height:calc(100dvh - var(--chrome-nav-height));
  min-height:calc(100vh - var(--chrome-nav-height));
  min-height:calc(100dvh - var(--chrome-nav-height));
  max-height:calc(100vh - var(--chrome-nav-height));
  max-height:calc(100dvh - var(--chrome-nav-height));
  overflow:hidden;
}
body:has(.app-page-shell[data-mode="board"]) > .site-chrome-footer{
  margin-top:0;
}
