html, body{
  margin:0;
  padding:0;
  width:100%;
  min-height:100%;
  background:#eff1f5;
  color:#3e444e;
  font-family:-apple-system, BlinkMacSystemFont, sans-serif;
  text-align:center;
}

*{
  box-sizing:border-box;
}

a{
  color:inherit;
  text-decoration:none;
}

img{
  display:block;
  max-width:100%;
}

button{
  font:inherit;
}

.tap{
  transition:transform .08s ease, opacity .08s ease;
}

.tap:active{
  transform:scale(.96);
  opacity:.85;
}

.back{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border:none;
  border-radius:999px;
  background:#94F22A;
  color:#000;
  font-family:-apple-system, BlinkMacSystemFont, sans-serif;
  font-size:14px;
  font-weight:600;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}

.page-topbar{
  display:flex;
  justify-content:flex-end;
  width:100%;
  margin-bottom:18px;
}

@keyframes blinkCursor{
  0%,60% { opacity:1; }
  61%,100% { opacity:0; }
}

.page-fab-back{
  position:fixed;
  right:max(16px, env(safe-area-inset-right));
  bottom:calc(32px + env(safe-area-inset-bottom));
  z-index:1200;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 14px;
  border:none;
  border-radius:999px;
  background:#94F22A;
  color:#000;
  font-family:-apple-system, BlinkMacSystemFont, sans-serif;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}

.page-fab-back:active{
  transform:scale(.96);
}

.page-column{
  width:100%;
  max-width:480px;
  margin:0 auto;
  box-sizing:border-box;
}

.page-fab-back{
  bottom:calc(16px + env(safe-area-inset-bottom));
  transition:bottom .25s ease;
}

body.player-active .page-fab-back{
  bottom:calc(96px + env(safe-area-inset-bottom));
}

body.full-player-open .page-fab-back{
  opacity:0;
  pointer-events:none;
}

