/* Material actions need space for every row, even inside the lesson rail. */
.ma-menu{width:260px;min-width:0;max-width:calc(100vw - 32px);padding:10px}
.ma-menu-item{min-height:42px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.ma-menu-h{line-height:1.5;white-space:normal}
.cd-card-rail>.ma-card .ma-menu{max-height:min(380px,60vh);max-height:min(380px,60dvh);overscroll-behavior:contain}
.ma-menu.ma-menu-portal{position:fixed;right:auto;bottom:auto;z-index:1200;box-sizing:border-box;min-width:0;padding:12px;overflow-y:auto;overscroll-behavior:contain;animation:none;transform:none}
.ma-menu-portal .ma-menu-item{min-height:44px;padding:11px 10px;flex-shrink:0}
.ma-menu-portal .ma-menu-h{padding:12px 10px 7px}
.ma-menu-portal .ma-menu-empty{padding:8px 10px 12px}
.ma-menu-portal .ma-menu-item:focus-visible{outline:2px solid #3f5a48;outline-offset:-2px;background:#f3efe6}
@media(max-width:860px){
  /* Avoid Safari's filtered sticky layer being recomposited while scrolling. */
  .dash{background-attachment:scroll}
  .topnav{background:#fffefb;backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;transition:none;animation:none}
  .topnav .nav-right{align-items:center;flex-shrink:0}
  .topnav .nav-right>.bell-wrap,.topnav .nav-right>.user-chip{flex-shrink:0}
  .topnav .bell,#navLogout{flex-shrink:0;transition:background .15s,border-color .15s,color .15s}
}
@media(max-width:820px){
  .pfm{max-height:calc(100dvh - env(safe-area-inset-top) - 24px);overflow-y:auto;overscroll-behavior:contain}
  .pfm-grip,.pfm-head{touch-action:none}
}
