.xy-outer {
  position: relative;
  overflow-x: hidden;
  overflow-y: hidden;
}

.xy-inner {  
  height: 360px;
  overflow: hidden;
}

.xy-header-top {
  position: relative;
  z-index: 1;
}

.xy-header-left {
  position: absolute;
  left: 0;
  top: 0;
  
}

.xy-corner {
  position: absolute;
  top: 0;
  left: 0;  
  z-index: 1;
}

.xy-header-left, .xy-corner  {
	width: 50%;
}
.xy-inner {
	margin-left: 50%;
}

.xy-content {
  cursor: move;
  position: relative;
  left: 0;
  top: 0;
  
}

.xy-scroll {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0);
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  right: 0;
}

.xy-scroll-x {
  padding-left: 50%;
  height: 10px;
  width: 100%;
}

.xy-scroll-y {
  width: 10px;
  height: 100%;
}

.xy-bar {
  background-color: #aaa;
  background-color: rgba(100, 100, 100, 0.5);
  border-radius: 2px;
  cursor: pointer;
  position: relative;
  opacity: 0.7;
  transition: opacity .3s ease-in-out;
}
.active .xy-bar {
  opacity: 1;
}

.xy-bar-x {
  height: 10px;
  width: 100px;
  bottom: 0;
  left: 0;
}

.xy-bar-y {
  width: 10px;
  height: 50px;
  top: 50px;
}

#target {
  /*width: 640px;*/
  width: 100%;
}
#target .xy-header-top .table {
  background: #fafafa;
}
#target .xy-corner div {
  background: #dadada;
  padding: 14px;
}
#target .fixed {
  table-layout: fixed;
  /* width: 100%; */
}
#target .fixed .col-sm {
  width: 100px;
}
#target .fixed td, #target .fixed th, .xy-footer-right th, #target .fixed col{
  /*vertical-align: top;*/
  width: 75px;
  padding: 12px;
}
#target .col-header-cat th {
	width: 300px;
}

#target .fixed th {
  border-bottom: 0 none;
}
.xy-header-left table th, .xy-corner table th {
	border: 1px solid #ddd;	
}
.xy-header-left table td, .xy-content table td {
	font-size: 11px !important;
}
.xy-footer-left {
	width: 100%;
	/*max-width: 1566px;*/
    overflow: hidden;
}
.fixed-footer  > .xy-footer-left {
	width: 100%;
	max-width: 100% !important;
}
.fixed-footer {
	width: 100% !important;
}

.footer {
	width: 575px;
	float: left;
	position: absolute;
	z-index: 1;
}
.xy-footer-right {
	position: relative;
	margin-left: 50%;
}
.no-margin {
	margin: 0px;
}
.height-30 {
	height: 30px;
}
#target .date, #target .mgr, #target .grn, #target .cgy, #target {
  /*vertical-align: top;*/
  /*width: 16% !important;*/
}
#target td.date, #target .cgy{
  /*vertical-align: top;*/
  padding: 12px !important;
}
#target .group-name{
  /*vertical-align: top;*/
  width: 36% !important;
}
#target .aelost, #target .aecomp, .xy-footer-right  .aelost, .xy-footer-right .aecomp{
  /*vertical-align: top;*/
  width: 200px !important;
}
#target .notes, #target .comments, .xy-footer-right  .notes, .xy-footer-right .comments{
  /*vertical-align: top;*/
  width: 400px !important;
  border-right: 1px solid lightgrey;
}
.footer .total-group-book { width: 65%; }
.footer .grn{ width: 35%; }
.footer .filler{ width: 35%; }
.footer-grid {
	padding: 0px;
}
.pace {
	background-color: #C0FFA2;
}
.report-header-row.pace, .report-header-row.actual {
	color: black !important;
}
.actual {
	background-color: #CAFFEC;
}
#pace-report-normal {
	
}
.overflow-control { overflow: hidden; display: inline-block; }
.no-top-border { border-top: none; }
.legend { float: right !important; }
.material-icons {  cursor: pointer; }
.paddingtop8 { padding-top: 8px !important; }



#view-source {
	position: fixed;
	display: block;
	right: 0;
	bottom: 0;
	margin-right: 40px;
	margin-bottom: 40px;
	z-index: 900;
}
.ng-cloak { display:none; }