
/* Authoritative HIDET layout:
   Once the ribbon is display:none it no longer occupies a grid item.
   Therefore the app must have TWO rows, not a 0-height placeholder row.
   Row 1 = main/canvas; Row 2 = status. */
body.pfcHideTop .app,
body.maxWindowMode.pfcHideTop .app{
  grid-template-rows:minmax(0,1fr) 27px!important;
}

/* Ribbon only is removed. */
body.pfcHideTop .app>.ribbon,
body.maxWindowMode.pfcHideTop .app>.ribbon{
  display:none!important;
}

/* Main becomes the first visible grid child and must retain full available height. */
body.pfcHideTop .app>.main,
body.maxWindowMode.pfcHideTop .app>.main{
  display:grid!important;
  grid-row:auto!important;
  min-height:0!important;
  height:auto!important;
  visibility:visible!important;
  overflow:hidden!important;
}

/* Canvas host and canvas stay visible and fill the main row. */
body.pfcHideTop .app>.main>.canvas-wrap,
body.maxWindowMode.pfcHideTop .app>.main>.canvas-wrap{
  display:block!important;
  position:relative!important;
  min-width:0!important;
  min-height:0!important;
  width:auto!important;
  height:auto!important;
  visibility:visible!important;
  overflow:hidden!important;
}
body.pfcHideTop #canvas,
body.maxWindowMode.pfcHideTop #canvas{
  display:block!important;
  width:100%!important;
  height:100%!important;
  visibility:visible!important;
}
body.pfcHideTop .app>.status,
body.maxWindowMode.pfcHideTop .app>.status{
  display:flex!important;
  grid-row:auto!important;
}
