html {
  height: 100%;
}

BODY
{
  background-color: white;
  font-family: "Open Sans", sans-serif;
  font-size: 11pt;
  color:#333;
  height: 100%;
  min-width: 1340px;
}

.standardMainContent {
  min-height: calc(100vh - 53px);
  display: flex;
  position: relative;
  top: 53px;
}

.customMainContent {
  height: calc(100% - 131px);
}

TH
{
  background-color: #f4f7f9;
  color: #344563;
  padding: 10px 12px;
  text-align: left;
  font-weight: normal;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
TD
{
  font: 11pt "Open Sans", sans-serif;
}
A
{
  text-decoration: none;
  color: #0145cd;
  cursor:pointer;
}
A.tt
{
  cursor: pointer;
}
A IMG
{
  border: none;
}
A.Btn
{
  display: inline-block;
  border-radius: 4px;
  font: 11pt "Open Sans", sans-serif;
  color: white;
  background: #4862ae;
  padding: 6px 12px;
  white-space: nowrap;
  margin: 3px 0;
}
A.BtnX
{
  display: inline-block;
  border-radius: 3px;
  font: 8pt Verdana;
  color: white;
  background: #4862ae;
  padding: 2px 4px;
  white-space: nowrap;
}
A.Btn:hover
{
  background-color: #41538b;
}

A.ColBtnX
{
  display: inline-block;
  font: 10pt Verdana;
  padding: 0 5px 3px 5px;
  white-space: nowrap;
  color: black;
}
A.ColBtnX:hover
{
  background-color: #ccc;
  border-radius: 50%;
}

.link
{
  color: #0145cd;
  cursor:pointer;
}
.dragable
{
  cursor: pointer;
}
H1
{
  font-family: Arial;
  font-size: 15pt;
  font-weight: bold;
}
H2
{
  font-family: Arial;
  font-size: 14pt;
  font-weight: bold;
}
H3
{
  font-family: Arial;
  font-size: 13pt;
  font-weight: bold;
}
H4
{
  font-family: Arial;
  font-size: 12pt;
  font-weight: bold;
}
H5
{
  font-size: 11pt;
  font-weight: bold;
}
.H5
{
  font-family: Arial;
  font-size: 11pt;
  font-weight: bold;
}
H6
{
  font-family: "Open Sans", sans-serif;
  font-size: 12pt;
  font-weight: bold;
}

.checkboxscroll {
  border:2px solid #ccc;
  width:297px;
  height: 100px;
  overflow-y: scroll;
}

.instructordropdown {
  width:300px;
}

.sideBar {
  height: 100%;
  position: relative;
}

.formTitle
{
  font-family: "Open Sans", sans-serif;
  font-size: 16pt;
  font-weight: 500;
  color: #1d3680;
  padding-bottom: 14px;
}
.SectionSpace
{
  padding-top: 20px;
}
TABLE.SectionSpace
{
  margin-top: 20px;
}
.WithinSectionSpace
{
  padding-top: 14px;
}
TABLE.WithinSectionSpace
{
  margin-top: 14px;
}
.errMsg
{
  color: #cc0000;
  font-weight: bold;
  font-size: 10pt;
}
INPUT
{
  font-family: "Open Sans", sans-serif;
  font-size: 11pt;
  border: 1px solid #dedede;
  padding: 5px;
}
TEXTAREA
{
  font-family: "Open Sans", sans-serif;
  font-size: 11pt;
  border: 1px solid #dedede;
  line-height: 150%;
}
SELECT
{
  font-family: "Open Sans", sans-serif;
  font-size: 11pt;
  border: 1px solid #dedede;
  max-width: 450px;
  padding: 5px;
}
.boldRed
{
  color: #cc0000;
  font-weight: 500;
}
.nowrap
{
  white-space: nowrap;
}
SPAN.notApplied
{
  color: #8b0000;
  font-weight: bold;
  cursor: pointer;
}
DIV.modifiedBy
{
  color: #1d3680;
  padding-top: 20px;
  padding-bottom: 20px;
}
SPAN.receipt
{
  font-size: 12pt;
}
PRE
{
  font-family: Arial;
}

.regMsgGlobal
{
  font-family: Arial;
  font-size: 12pt;
}

.ReportName
{
  font-family: "Open Sans", sans-serif;
  font-size: 16pt;
  font-weight: 500;
  color: #1d3680;
  padding-bottom: 10px;
  padding-top: 20px;
}
.reportDate {
  font-size: 11pt;
}

OL, UL
{
  line-height: 150%;
}
UL.Tree
{
  margin: 0em;
  padding: 0em;
  list-style-image: url(../images/ul_closed.gif);
}
UL.Tree LI
{
  margin: 0.5em 0em 0.5em 1.5em;
  padding: 0em;
}
UL.Tree LI.Open
{
  margin: 0.5em 0em 0.5em 1.5em;
  padding: 0em;
  list-style-image: url(../images/ul_open.gif);
}
DIV.MWSz
{
  padding: 12px 2px;
  text-align: center;
}
TABLE.Layout
{
  border-collapse: collapse;
  border: 0px;
}
TABLE.Layout > TBODY > TR > TD
{
  padding: 0px;
}
TABLE.Layout > TBODY > TR > TD.Top
{
  vertical-align: top;
}
TABLE.Layout > TBODY > TR > TD.RHS
{
  vertical-align: top;
  padding-left: 50px;
}
TABLE.PaddedLayout
{
  border-collapse: collapse;
  border: 0px;
}
TABLE.PaddedLayout > TBODY > TR > TD
{
  padding: 4px 8px 4px 0px;
}
TABLE.SimpleSD
{
  border-collapse: collapse;
}
TABLE.SimpleSD TR:nth-child(odd)
{
}
TABLE.SimpleSD TH
{
  background-color: #f4f7f9;
  color: #344563;
  padding: 5px 12px;
  text-align: left;
  font-weight: normal;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
}

TABLE.SimpleSD TH:first-child {
  border-left: 1px solid #e0e0e0;
}

TABLE.SimpleSD TH.AR
{
  text-align: right;
}

TABLE.SimpleSD TD
{
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #dedede;
  padding: 5px 12px;
}

TABLE.SimpleSD TD.AR
{
  text-align: right;
}

TABLE.SimpleSD TR:hover {
  background-color: #dae3ff;
}

DIV.MultiTable
{
  font-size: 13pt;
  color: #1d3680;
  padding: 30px 0px 10px 0px;
}
DIV.WithinMultiTable
{
  padding-top: 10px;
}
/* banner without a custom image */
TABLE.StandardBanner
{
  border-collapse: collapse;
  border: 0px;
  width: 100%;
  min-width: 1260px;
}
TABLE.StandardBanner TD
{
  padding: 2px;
}
TABLE.StandardBanner TD:first-child
{
  vertical-align: middle;
  font: 21pt Verdana,sans-serif;
  color: #1d3680;
  padding-left: 35px;
}
TABLE.StandardBanner TD:last-child
{
  text-align: right;
  vertical-align: bottom;
}
TABLE.StandardBanner TD > A > SPAN
{
  color: #1d3680;
}

.mainContent
{
  border-collapse: collapse;
  border: 0px;
  width: 100%;
  overflow-y: auto;
  min-height: 700px;
  position: relative;
}

.wideContent {
  margin-left: 70px;
}

.narrowContent {
  margin-left: 300px;
}

.Content
{
  vertical-align: top;
  padding: 0 30px;
  overflow-x: auto;
  width: 100%;
  min-height: calc(100vh - 53px);
  -ms-overflow-style: none;  /* Hide scrollbar for IE and Edge */
  scrollbar-width: none;  /* Hide scrollbar for Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.Content::-webkit-scrollbar {
  display: none;
}

.contentInfo {
  margin-top: 25px;
}

/* Home Classes Students Families Instructors Charges/Payments Email/Text Reports Admin tabs */
TABLE.Tabs
{
  width: 100%;
  border-collapse: collapse;
}
TABLE.Tabs TD
{
  background-color: #4862ae;
  margin-right:2px; 
  border-top:1px solid #4862ae;
  padding:6px 2px 6px 2px;
  width:11.111%;
  font: 11pt Verdana;
}
TABLE.Tabs TD:hover
{
  background-color: #40589c;
}
TABLE.Tabs TD.sel
{
  background-color: #ffffff;
}
TABLE.Tabs TD.right
{
  border-right: 0px;
}
TABLE.Tabs TD A
{
  color: white;
}
TABLE.Tabs TD.sel A
{
  color: #0145cd;
}
/* New  Save Changes  Delete ... buttons */
.ButtonBar
{
  width: 100%;
}

.ButtonBar > A
{
  display: inline-block;
  text-align: left;
  vertical-align: bottom;
  padding: 6px 12px;
  margin-right: 10px;
  font: 11pt "Open Sans", sans-serif;
  color: #0145cd;
  white-space:nowrap;
  border: 1px solid #dedede;
  border-radius: 4px;
  margin-top: 25px;
}

.ButtonBar  > .menuButton {
  display: inline-flex;
  text-align: left;
  vertical-align: bottom;
  padding: 0;
  margin-top: 25px;
}

.menuButton .menuLink {
  font: 11pt "Open Sans", sans-serif;
  background-color: white;
  border: 1px solid #dedede;
  border-radius: 4px;
  padding: 6px 12px;
  color: #0145cd;
  white-space:nowrap;
}

.ButtonBar > A:hover, .ButtonBar > .menuButton .menuLink:hover
{
  color: #002266;
  background-color: #dae3ff;
}

.ButtonBar > span
{
  display: inline-block;
  text-align: left;
  vertical-align: bottom;
  padding: 20px 60px 10px 0;
  font: 10pt Verdana;
}
.ButtonBar:last-child > A:last-child
{
  padding-right:20px;
}
TABLE.Help
{
  border-collapse: collapse;
}
TABLE.Help TD
{
  padding: 10px;
  text-align: left;
  vertical-align: top;
}
TABLE.Help TR:first-child
{
  border-bottom: 1px solid #b0b0b0;
}
TABLE.Help TD DIV
{
  padding-bottom: 5px;
}
TABLE.Help UL
{
  padding-left: 0px;
  list-style-position: inside;
}

.SeasonTabsContainer {
  border-bottom: 1px solid #dedede;
  margin-bottom: 16px;
}

TABLE.SeasonTabs
{
  border-collapse: collapse;
  width: 100%;
}
TABLE.SeasonTabs TD
{
  padding: 8px 16px 16px 16px;
  font: 11pt "Open Sans", sans-serif;
  border: 0;
  text-align: center;
}
TABLE.SeasonTabs TD:first-child
{
  border-left: 0px;
}
TABLE.SeasonTabs TD:last-child
{
  border-right: 0px;
}
TABLE.SeasonTabs TD.Sel
{
  border-bottom: 4px solid #f58521;
}
TABLE.CompressedCal
{
  border-collapse: collapse;
  width: 100%;
  margin-top: 32px;
}
TABLE.CompressedCal TR.DayHdr TH
{
  color: #333;
  padding: 8px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-left: 2px solid #e0e0e0;
  background-color: #f4f7f9;
}
TABLE.CompressedCal TR.DayHdr TH:first-child {
  border-left: 1px solid #e0e0e0;
}

TABLE.CompressedCal TR.DayHdr TH:last-child {
  border-right: 1px solid #e0e0e0;
}

TABLE.CompressedCal TR.FieldHdr TH
{
  background-color: #f4f7f9;
  color: #333;
  border-width: 0px 1px 1px 1px;
  border-style: solid;
  border-color: #dedede;
  padding: 4px;
  text-align: left;
}
TABLE.CompressedCal TD
{
  border-width: 1px 0;
  border-style: solid;
  border-color: #dedede;
  padding: 3px;
}
TABLE.CompressedCal A
{
  color: #333;
}
TABLE.CompressedCal TR:nth-child(even)
{
}
TABLE.CompressedCal TD:nth-child(5n+5), TABLE.CompressedCal TR.FieldHdr TH:nth-child(5n+5)
{
  border-right-color: #e0e0e0;
  border-right-width: 2px;
}
TABLE.CompressedCal TR.FieldHdr TH:first-child
{
  border-left: 1px solid #e0e0e0;
}

TABLE.CompressedCal TD:first-child {
  border-left: none;
}

TABLE.CompressedCal TR.FieldHdr TH:last-child
{
  border-right: 1px solid #e0e0e0;
}

TABLE.CompressedCal TD:last-child {
  border-right: none;
}

SPAN.openClass
{
  color: #008000;
}

SPAN.fullClass
{
  color: #8b0000;
}

.highlightedClass {
  background-color: lightgoldenrodyellow;
}

TABLE.MonthCal
{
  border-collapse: collapse;
  width: 100%;
  margin-top: 8px;
}
TABLE.MonthCal TH
{
  color: #344563;
  border-top: 1px solid #e0e0e0;
  background-color: #f4f7f9;
  padding: 8px;
  width: 14.285%;
  border-left: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
}
TABLE.MonthCal TD
{
  padding: 4px;
}
TABLE.MonthCal TD.Weekday
{
  border: 1px solid #dedede;
  background-color: #fff;
  vertical-align: top;
}
TABLE.MonthCal TD.WeekendDay
{
  border: 1px solid #dedede;
  background-color: #fff;
  vertical-align: top;
}
TABLE.MonthCal TD.Today
{
  border: 2px solid #97aace;
  background-color: #fff;
  vertical-align: top;
  font-weight: bold;
}
TABLE.MonthCal TD.Holiday
{
  border: 1px solid #dedede;
  background-color: #e1e1e1;
  vertical-align: top;
}
TABLE.MonthCal TD.Holiday > DIV:first-child
{
  background-color: #e1e1e1;
}
TABLE.MonthCal TD.Empty
{
  border: 1px solid #dedede;
  background-color: #f4f7f9;
  width:110px;
  max-width:110px;
}
TABLE.MonthCal DIV
{
  padding: 2px;
}
TABLE.MonthCal DIV:nth-child(odd)
{
  background-color: #f4f7f9;
}
TABLE.MonthCal TD > DIV:first-child
{
  background-color: #ffffff;
}
TABLE.MonthCal DIV.MoreLink
{
  color: #0145cd;
  cursor: pointer;
}
TABLE.MonthCal DIV.MoreInfo
{
  display:none;
}
TABLE.WeekCal
{
  border-collapse: collapse;
  width: 100%;
  margin-top: 8px;
}
TABLE.WeekCal TH
{
  border-left: 2px solid #e0e0e0;
}

TABLE.WeekCal TH:first-child {
  border-left: 1px solid #e0e0e0;
}

TABLE.WeekCal TH:last-child {
  border-right: 1px solid #e0e0e0;
}

TABLE.WeekCal TD
{
  padding: 4px;
  border-width: 1px 0;
  border-style: solid;
  border-color: #dedede;
}
TABLE.WeekCal TD:first-child
{
  border-left: 0px;
}
TABLE.WeekCal TD:last-child
{
  border-right: 0px;
}
TABLE.WeekCal TD.BeforeToday
{
  background-color: #e1e1e1;
}
TABLE.WeekCal TD.Holiday
{
  background-color: #e1e1e1;
}
TABLE.WeekCal TD.DayBorder
{
  border-left: 2px solid #e0e0e0;
}
TABLE.WeekCal TR:nth-child(odd)
{
}
TABLE.DailyStaffCal
{
  border-collapse: collapse;
  width: 100%;
  margin-top: 8px;
}
TABLE.DailyStaffCal TH
{
  border-left: 2px solid #e0e0e0;
}

TABLE.DailyStaffCal TH:first-child {
  border-left: 1px solid #e0e0e0;
}

TABLE.DailyStaffCal TH:last-child {
  border-right: 1px solid #e0e0e0;
}

TABLE.DailyStaffCal TD
{
  padding: 4px;
  border-width: 1px 0;
  border-style: solid;
  border-color: #dedede;
}
TABLE.DailyStaffCal TD:first-child
{
  border-left: 0px;
}
TABLE.DailyStaffCal TD:last-child
{
  border-right: 0px;
}
TABLE.DailyStaffCal TD.Holiday
{
  background-color: #e1e1e1;
}
TABLE.DailyStaffCal TD.DayBorder
{
  border-left: 2px solid #e0e0e0;
}
TABLE.DailyStaffCal TR:nth-child(odd)
{
}
DIV.ListCalHeading
{
  background-color: #97aace;
  color: white;
  padding: 3px;
  font-size: 11pt;
}
TABLE.ListCalFilters
{
  border-collapse: collapse;
  border-width: 8px 0px;
  border-style: solid;
  border-color: #f0f0f0;
  width: 100%;
}
TABLE.ListCalFilters TD
{
  padding: 5px 10px;
  background-color: #f0f0f0;
}
TABLE.ListCalFilters TD TD
{
  padding: 0px 2px;
}
#ListCalClasses .L1
{
  font-size: 11pt;
  font-weight: bold;
  padding: 2px 0px;
}
#ListCalClasses .L2
{
  font-weight: bold;
  padding: 2px 0px;
}
#ListCalClasses .L3
{
  padding: 2px 0px;
}
#ListCalClasses .L4
{
  padding: 2px 0px;
}
#ListCalClasses .E
{
  padding: 7px 3px;
}
#ListCalClasses .O
{
  background-color: #f0f0f0;
  padding: 7px 3px;
}
#ListCalClasses A
{
  color: #333;
}
#ListCalClasses A.Btn
{
  color: white;
}
.ListCalApplyFiltersMsg
{
  padding:20px 0px;
  text-align:center;
  font-size: 11pt;
  color: #cc0000;
  font-weight: bold;
}
TABLE.TimeBlock
{
  border-collapse: collapse;
  border: 1px solid #dedede;
  width: 100%;
  margin-bottom: 16px;
}
TABLE.TimeBlock TH
{
  font: 10pt Verdana;
  padding: 8px;
}
TABLE.TimeBlock TD
{
  height: 120px;
  padding: 0px;
  white-space: nowrap;
  border: 1px solid #dedede;
}
TABLE.TimeBlock TD:first-child
{
  width: 40px;
  padding-left: 8px;
}
TABLE.TimeBlock TD + TD
{
}
TABLE.TimeBlock TD > DIV
{
  position: relative;
  width: 100%;
  height: 120px;
}
TABLE.TimeBlock TD > DIV > DIV
{
  position: absolute;
}
TABLE.TimeBlock TD > DIV > DIV > DIV
{
  position: absolute;
  top: 0px;
  left: 2px;
  right: 2px;
  bottom: 0px;
  white-space: normal;
  overflow: hidden;
  padding: 6px;
  border-radius: 0px;
}
TABLE.TimeBlock TD > DIV > DIV > SPAN
{
  position: absolute;
  display: none;
  background-color: white;
  padding: 8px;
  border: 1px solid #b0b0b0;
  border-radius: 0px;
  white-space: normal;
  line-height: 1.5;
  z-index: 200000;
}
TABLE.TimeBlockTBD
{
  border-collapse: collapse;
  border: 1px solid #dedede;
  width: 100%;
}
TABLE.TimeBlockTBD TH
{
  font: 10pt Verdana;
  padding: 8px;
}
TABLE.TimeBlockTBD TD
{
  padding: 1px 2px;
}
TABLE.TimeBlockTBD TD > DIV
{
  position: relative;
}
TABLE.TimeBlockTBD TD > DIV > DIV
{
  overflow: hidden;
  padding: 6px;
  border-radius: 0px;
}
TABLE.TimeBlockTBD TD > DIV > SPAN
{
  position: absolute;
  display: none;
  background-color: white;
  padding: 8px;
  border: 1px solid #b0b0b0;
  border-radius: 0px;
  line-height: 1.5;
  z-index: 200000;
}
/* This is for FamilyLedger */
TABLE.LedgerHeader
{
  border-collapse: collapse;
  width: 100%;
  border: 0px;
  margin: 12px 0px;
}
TABLE.LedgerHeader TD:first-child
{
  color: #1d3680;
  font-size: 13pt;
}
Table.LedgerHeader TD:last-child
{
  text-align: right;
}
TABLE.Ledger
{
  border-collapse: collapse;
  width: 100%;
  border: 0px;
}

#tab-ledger-content {
  overflow-x: auto;
}

TABLE.Ledger TH
{
  text-align: left;
  font-weight: normal;
  background-color: #f4f7f9;
  color: #344563;
  padding: 5px 12px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-left:1px solid #e0e0e0;
}
TABLE.Ledger TH.R
{
  text-align: right;
}

TABLE.Ledger TR:hover {
  background-color: #dae3ff;
}

TABLE.Ledger TR:nth-child(odd)
{
}
TABLE.Ledger TD
{
  border-width: 1px 0;
  border-style: solid;
  border-color: #e0e0e0;
  text-align: left;
  padding: 5px 12px;
  border-left:none;
  border-right:none;
}
TABLE.Ledger TH:first-child
{
  border-left: none;
}
TABLE.Ledger TD.N
{
  text-align: right;
}
TABLE.Ledger TR.S TD
{
  padding: 0;
  border-width: 1px 0px 0px 0px;
  border-style: solid;
  border-color: #e0e0e0;
}

#attendancetable
{
  max-height: 700px;
  width: 100%;
  overflow-x: auto;
  overflow-y: auto;
}

.freezecolumn {
  width: 100px;
  background-color: #fff;
  position: sticky;
  left: 0;
  z-index: 1;
}

.freezetoprow {
  position: sticky;
  top: 0;
  z-index: 2;
}

.freezebottomrow {
  position: sticky;
  background-color: #fff;
  bottom: 0;
  z-index: 2;
}

TABLE.Form
{
  border-collapse: collapse;
  width: 100%;
}
TABLE.Form > TBODY > TR > TD
{
  padding: 4px 16px 4px 0px;
  border: 0;
}
TABLE.Form > TBODY > TR > TD:last-child
{
  width: 80%; /* make form fields take up as much space as possible after labels take what they need */
}
  /* do not make SELECT width: 100% because that puts mon, day, and year of calendar control on different lines */
TABLE.Form > TBODY > TR > TD > INPUT
{
  width: 100%;
  min-width: 150px; /* on pages like ManageProps, the table can consume too much space, and the width of the input will be tiny if set to a percentage */
  max-width: 500px;
}

TABLE.Form > TBODY > TR > TD > TEXTAREA
{
  width: 100%;
  min-width: 150px; /* on pages like ManageProps, the table can consume too much space, and the width of the input will be tiny if set to a percentage */
  max-width: 505px;
}
/* make class type icons work */
TABLE.Form > TBODY > TR > TD > INPUT[type="radio"]
{
  width: auto;
  min-width: 1px;
}
TABLE.FormEx
{
  border-collapse: collapse;
  border: 0px;
  width: 100%;
}
TABLE.FormEx > TBODY > TR > TD
{
  padding: 4px 16px 4px 0px;
}
TABLE.FormEx > TBODY > TR > TD:last-child
{
  width: 80%; /* make form fields take up as much space as possible after labels take what they need */
}
  /* do not make SELECT width: 100% because that puts mon, day, and year of calendar control on different lines */
TABLE.FormEx > TBODY > TR > TD > SPAN > INPUT
{
  width: 100%;
  min-width: 150px;
  max-width: 500px;
}

TABLE.FormEx > TBODY > TR > TD > SPAN > TEXTAREA
{
  width: 100%;
  min-width: 150px;
  max-width: 505px;
}

TABLE.WeekdayCheckboxes
{
  border-collapse: collapse;
}
TABLE.WeekdayCheckboxes TD
{
  text-align: center;
  padding: 1px;
}
TABLE.FlexForm
{
  border-collapse: collapse;
}
TABLE.FlexForm > TBODY > TR > TD
{
  padding: 4px 16px 4px 0px;
}
/* Used by ReportTableEx and ReportTable */
DIV.ReportButtonTitleLine
{
  padding: 20px 0 20px 0;
}
.ReportButtonTitleLine a {
  margin-right: 10px;
}

.ReportBreadcrumb {
  padding-top: 12px;
}

.ReportBreadcrumb .screenOnly {
  padding-left: 12px;
}

DIV.ReportTable /* used by header line */
{
  font-family: "Open Sans", sans-serif;
  font-size: 16pt;
  font-weight: 500;
  color: #1d3680;
  padding-bottom: 14px;
}

DIV.ReportTableSubtitle {
  font-size: 13pt;
  padding-bottom: 14px;
  color: #1d3680;
}

DIV.ReportTableNoItemsMsg {
  padding-top: 14px;
}

Table.ReportTable
{
  border-collapse: collapse;
  border: 0px;
}
TABLE.ReportTable TH
{
  text-align: left;
  vertical-align: top;
  font-weight: normal;
  background-color: #f4f7f9;
  color: #344563;
  padding: 5px 12px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  border-left:1px solid #e0e0e0;
}

TABLE.ReportTable TH.Closeable:hover {
  background-color: #e3e6e9;
}

TABLE.ReportTable TH > A
{
  color: white;
}
TABLE.ReportTable TH.R
{
  text-align: right;
}

TABLE.ReportTable TR:hover {
  background-color: #dae3ff;
}

TABLE.ReportTable TR:nth-child(odd)
{
}
TABLE.ReportTable TD
{
  border-width: 1px 0;
  border-style: solid;
  border-color: #e0e0e0;
  text-align: left;
  padding: 5px 12px;
  border-left:none;
  border-right:none;
}
TABLE.ReportTable TD.AC
{
  text-align: center;
}
TABLE.ReportTable TD.AR
{
  text-align: right;
}

TABLE.ReportTable TH:last-child {
  border-right: 1px solid #e0e0e0;
}

TABLE.ReportTable A.Heading
{
  color: #333;
}
TABLE.ReportTable TR.Subtotal TD
{
  background-color: #f0f0aa;
}
TABLE.AttendanceRoster
{
  border-collapse: collapse;
  width: 100%;
  text-align: center;
}
TABLE.AttendanceRoster TH
{
  text-align: left;
  vertical-align: top;
  font-weight: normal;
  background-color: #f4f7f9;
  color: #344563;
  padding: 5px 12px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
TABLE.AttendanceRoster TD
{
  border-width: 1px 0;
  border-style: solid;
  border-color: #e0e0e0;
  text-align: left;
  padding: 5px 12px;
}
TABLE.StudentSignIn
{
  border-collapse: collapse;
  width: 100%;
  text-align: center;
}
TABLE.StudentSignIn TH
{
  text-align: left;
  vertical-align: top;
  font-weight: normal;
  background-color: #f4f7f9;
  color: #344563;
  padding: 5px 12px;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
TABLE.StudentSignIn TD
{
  border-width: 1px 0;
  border-style: solid;
  border-color: #e0e0e0;
  text-align: left;
  padding: 5px 12px;
}
OL.ReportsHome LI
{
  white-space: nowrap;
}
.ReportSubCat
{
  padding-left: 16px;
}
DIV.TabContentTab
{
  display: inline-block;
  border: 1px solid #dedede;
  padding: 8px;
  width: 18%;
  font-family: Verdana;
  font-size: 11pt;
  font-weight: bold;
}
DIV.TabContentTabSel
{
  border-bottom: 0px;
}
DIV.TabContentTabBg
{
  background-color: #dedede;
}
DIV.TabContent
{
  border: 1px solid #dedede; 
  padding: 8px;
}
.LoginBody
{
  background-color: #4862ae;
  color: #333;
  font-family: Verdana;
  font-size: 16px; /* fixed */
  margin: 0px;
}
.LoginContainer
{
  display: table;
  margin: 0px auto;
}
.Pad24
{
  padding: 24px;
}
.LoginBox
{
  max-width: 600px;
  min-width: 400px;
  margin: 0px auto;
  box-shadow: 0 2px 24px 0 rgba(0, 0, 0, 0.5);
  border: solid 1px #c2c6cc;
  background-color: #ffffff;
}
.LoginStudioNameOrLogo
{
  padding: 32px;
  text-align: center;
}
.LoginStudioName
{
  font-size: 36px; /* fixed */
  font-weight: bold;
  line-height: 1.33;
  letter-spacing: 0.6px;
  text-align: center;
  color: #1d3680;
}
.LoginLogo
{
  margin: 0px auto;
  max-width: 100%;
}
.LoginSpace1
{
  padding-top: 32px;
}
.LoginSpace2
{
  padding-top: 24px;
}
.LoginLabel
{
  width: 300px;
  margin: 0px auto;
  line-height: 1.31;
  letter-spacing: -0.3px;
}
DIV.LoginLine
{
  margin: 0px auto;
  width: 300px;
  text-align: center;
}
INPUT.Login
{
  border-radius: 4px;
  border: solid 1px #a5aab8;
  width: 276px;
  padding: 12px;
  font-family: Verdana;
  font-size: 16px; /* fixed */
}
.LoginButton
{
  font-family: "Open Sans", sans-serif;
  width: 162px;
  height: 48px;
  border-radius: 4px;
  background-color: #ff8402;
  padding: 8px 20px;
  line-height: 2;
  letter-spacing: 0.3px;
  color: white;
}

.LoginButton:hover {
  background-color: #d26e04;
}

.LoginPowerBy
{
  font-size: 14px; /* fixed */
  letter-spacing: 0.2px;
  text-align: center;
  color: #ffffff;
  padding-top: 70px;
  margin: 0px auto;
}
.LoginSDLogo
{
  padding-top: 16px;
  padding-bottom: 93px;
  text-align: center;
}
.LoginCopyright
{
  font-size: 14px; /* fixed */
  letter-spacing: 0.2px;
  text-align: center;
  color: white;
}
.LoginErrMsg
{
  color: #cc0000;
  text-align: center;
}
.LoginForm
{
  display: none;
}
.LoginNoScriptMsg
{
  color: #cc0000;
  text-align: center;
}
DIV.HomePageNewFeature
{
  background-color: #4862ae;
  border-radius: 4px;
  font-family: Verdana;
  font-size: 16px; /* fixed */
  color: white;
  padding: 16px;
  margin-bottom: 16px;
}
TABLE.HomePageStats
{
  border-collapse: collapse;
  border: 0px;
  width: 100%;
}
TABLE.HomePageStats TD
{
  vertical-align: top;
  width: 33.33%;
}
TABLE.HomePageStats TD:first-child
{
  padding-bottom: 10px;
}
TABLE.HomePageStats DIV.Box
{
  background-color: white;
  margin: 0 0 30px 0;
  border: 1px solid #e0e0e0;
}
TABLE.HomePageStats DIV.Title
{
  color: #344563;
  font-family: Verdana;
  font-size: 11pt;
  font-weight: bold;
  font-style: normal;
  padding: 16px 16px 16px 0;
  border-bottom: 3px solid #4862ae;
  margin: 0;
}
TABLE.HomePageStats TABLE.Grid
{
  border: 0px;
  border-spacing: 16px;
  width: 100%;
}
TABLE.HomePageStats TABLE.Grid TD
{
  padding: 0px;
  text-align: center;
}

.statIcon {
  font-size: 24px;
  padding: 4px 0 0 4px;
  color: #344563;
  white-space: nowrap;
  text-align: center;
}

TABLE.statTable {
  width: 100%;
  margin-left: 100px;
  border-collapse: collapse;
}


TABLE.statTable .Stat
{
  padding: 0 8px;
  font-size: 30px;
  font-weight: 600;
  color: #344563;
}

TABLE.statTable .Label
{
  font-family: "Open Sans", sans-serif;
  font-size: 11pt;
  text-align: left;
  color: #0145cd;
  margin-left: 10px;
}

TABLE.statTable TD {
  padding: 5px 5px 5px 35px;
  border-left: 1px solid #e0e0e0;
}

@media screen and (max-width: 2200px) {
  TABLE.statTable {
    margin-left: 0;
  }

  TABLE.statTable TD {
    padding: 5px 5px 5px 15px;
  }
}

TABLE.HomePageStats TABLE.Grid DIV.Label:hover {
  color: #002266;
}

TABLE.HomePageStats Table.Grid DIV.LabelRight
{
  font: 11pt Verdana;
  line-height: 1.28;
  color: #0145cd;
  text-align: left;
  display: inline-block;
  padding: 14px;
  vertical-align: middle;
  width: 150px;
  overflow: visible;
}
TABLE.HomePageStats Table.Grid IMG
{
  vertical-align: middle;
  padding: 16px 0px;
}

.topBarContainer {
  font-weight: 400;
  font-style: normal;
  display: flex;
  position: fixed;
  width: 100%;
  background: white;
  z-index: 10;
}

.topBar {
  border-bottom: 1px solid #dedede;
  display: flex;
  height: 52px;
  width: 100%;
}

.tabContainer {
  font-size: 11pt;
  display: flex;
  margin-bottom: 20px;
  margin-top: 5px;
  border-bottom: 1px solid #dedede;
}

.tab {
  padding: 15px 20px;
  cursor: pointer;
}

.selectedTab {
  padding: 15px 20px;
  border-bottom: 4px solid #f58521;
}

.topBarSeparator {
  width: 100%;
}

.topLinkBox {
  padding: 8px;
  margin: 4px 15px 4px 0;
  position: relative;
}

.topLinkBox:hover {
  background-color: #dae3ff;
  border-radius: 50%;
}

.topLinkBox i {
  font-size: 22pt;
  color: #344563;
}

.topLinkBox:hover .Tooltip {
  visibility: visible;
  opacity: 1;
  margin-top: 45px;
  right: 5px;
}

.accountMenu {
  top: 62px;
  right: 12px;
}

@media screen and (max-width: 1340px) {
  .accountMenu {
    right: calc(100% - 1335px);
  }
}

.helpMenu {
  top: 62px;
  right: 72px;
}

@media screen and (max-width: 1340px) {
  .helpMenu {
    right: calc(100% - 1395px);
  }
}

.menuItem {
  text-align: left;
  padding: 12px;
}

.menuItem .title {
  font-size: 13pt;
}

.menuItem .accountItemContent {
  display: flex;
}

.menuItem .accountItemContent i {
  font-size: 30pt;
  padding: 5px 5px 5px 0;
  margin-right: 10px;
}

.menuItem .accountItemContent .accountInfo .login {
  font-size: 13pt;
  padding-top: 3px;
}

.menuItem .accountItemContent .accountInfo .type {
  font-size: 9pt;
}


.menuItem .studioInfo {
  margin-top: 15px;
}

.menuSplitter {
  margin: 3px;
  border-bottom: 1px solid #dedede;
}

.menuLinkItem {
  padding: 12px;
  text-align: left;
}

.menuLinkItem:hover {
  background-color: #dae3ff;
  color: #002266;
}

.menuLink:focus .topLinkBox {
  background-color: #dae3ff;
  border-radius: 50%;
}

.chartsContainer {
  display: flex;
  background-color: white;
  border-radius: 5px;
}

TABLE.HomePageStats .chartsContainer DIV.Box {
  margin: 0;
  flex-grow: 1;
  background-color: white;
  border: 0;
}

TABLE.HomePageStats .chartsContainer DIV.Box DIV.Title {
  margin-right: 0;
}

.activateLink {
  margin: 10px 20px 10px 45px;
  color: white;
  padding: 6px 10px 6px 20px;
  background-color: #f58521;
  border-radius: 5px;
  min-width: 136px;
  font: 11pt "Open Sans", sans-serif;
}

.activateLink:hover {
  background-color: #dc7f31;
}

.legendBox {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

.legendItem {
  margin-left: 10px;
}

.color-green {
  color: green;
}

.color-yellow {
  color: yellow;
}

.color-red {
  color: red;
}

.color-blue {
  color: blue;
}

.trendsLink {
  text-align: left;
  padding-top: 15px;
  font: 10pt Verdana;
}

.warningBox {
  background-color: #FDF7DF;
  border: 1px solid #FEEC6F;
  padding: 10px 20px 0 20px;
  margin: 0 0 20px 0;
}

.warningBox .title {
  font-size: 12pt;
  color: #a57f04;
  font-weight: bold;
}

.warningBox .title i {
  font-size: 20px;
  padding-right: 10px;
}

.infoBox
{
  border: 1px solid #DEE;
  background-color: #eef8ff;
  padding: 20px 20px 10px 20px;
  margin: 0 0 20px 0;
}

.infoBox .title {
  font-weight: bold;
  font-size: 12pt;
  color: #4e63a2;
}

.infoBox .title i {
  font-size: 20px;
  padding-right: 10px;
}

.warningBox li {
  margin-left: -20px;
}

.sideBarSeparator {
  min-height: 80px;
}

.dwr-iframe-div {
  display: none;
}

.todayScheduleContainer Table.ReportTable {
  width: 100%;
}

.ClipBoard, .ReportClipBoard {
  position: relative;
  display: inline-block;
}

.Tooltip {
  visibility: hidden;
  background-color: #555;
  color: #fff;
  text-align: center;
  position: absolute;
  padding: 5px;
  z-index: 20;
  opacity: 0;
  transition: opacity 0.5s;
}

.ClipBoard:hover .Tooltip {
  visibility: visible;
  opacity: 1;
  bottom: 150%;
  left: 50%;
  margin-left: -75px;
}

.ReportClipBoard .Tooltip {
  visibility: visible;
  opacity: 1;
  display: none;
  top: 50px;
  left: 20px;
}

.sideNavCollapsed .sideNavItem:hover .Tooltip, .sideNavCollapsed .sideNavSelectedItem:hover .Tooltip {
  visibility: visible;
  opacity: 1;
  margin-left: 25px;
}

.EnrollLinkText{
  width: 400px;
  margin-right: 10px;
}

INPUT[type="checkbox"]:checked + label.strikethrough
{
  text-decoration: line-through;
}

.shell {
  position: relative;
  line-height: 1;
}

.shell span {
  position: absolute;
  left: 3px;
  top: 1px;
  color: #cccccc;
  pointer-events: none;
  z-index: -1;
}

.shell span i {
  color: transparent;
  opacity: 0;
  visibility: hidden;
}

input.masked,
.shell span {
  padding-right: 10px;
  background-color: transparent;
  text-transform: uppercase;
}

.tagLabel {
  padding-bottom: 10px;
}

.urlErrorMessage {
  font-size: 20px; /* fixed */
  letter-spacing: 0.2px;
  text-align: center;
  color: black;
  padding-top: 20px;
  padding-bottom: 50px;
  margin: 0px auto;
}

.urlErrorLogo {
  padding-top: 30px;
  padding-bottom: 16px;
  text-align: center;
}
.urlErrorCopyright {
  text-align: center;
}

.authorization {
  border: 1px solid black;
  border-collapse: collapse;
}

.sideNavExpanded, .sideNavCollapsed {
  background-color: #3d5395;
  font-weight: 400;
  font-style: normal;
  display: flex;
  flex-flow: column;
  min-height: calc(100vh - 53px);
  position: fixed;
  z-index: 10;
}

.sideNavTopExpanded, .sideNavTopCollapsed {
  background-color: #3d5395;
  font-weight: 400;
  font-style: normal;
  display: flex;
  flex-flow: column;
}

.sideNavExpanded, .sideNavTopExpanded {
  width: 300px;
  min-width: 300px;
}

.sideNavCollapsed, .sideNavTopCollapsed {
  width: 70px;
  min-width: 70px;
}

.sideNavTopExpanded .sideNavCtrl {
  width: 20px;
  margin: 8px 0;
  padding: 7px;
  border-radius: 50%;
  color: white;
}

.sideNavTopCollapsed .sideNavCtrl {
  padding: 15px;
  text-align: left;
  color: white;
}

.sideNavTopExpanded .sideNavCtrlBar {
  display: flex ;
  direction: rtl;
  padding-right: 20px;
}

.sideNavCtrl:hover .Tooltip {
  visibility: visible;
  opacity: 1;
}

.sideNavTopCollapsed .sideNavCtrl .Tooltip {
  margin-left: 25px;
}

.sideNavTopExpanded .sideNavCtrl .Tooltip {
  margin-right: -176px;
}

.sideNavTopCollapsed .sideNavCtrl:hover .Tooltip:after {
  content: "Expand Sidebar";
}

.sideNavTopExpanded .sideNavCtrl:hover .Tooltip:after {
  content: "Collapse Sidebar";
}

.sideNavItem {
  padding: 15px 16px;
  text-align: left;
  color: white;
}

.sideNavSelectedItem {
  padding: 15px 16px;
  text-align: left;
  color: white;
  background-color: #263666;
}

.sideNavItem i, .sideNavSelectedItem i, .sideNavTopCollapsed .sideNavCtrl i {
  font-size: 16pt;
  width: 35px;
  text-align: center;
}

.sideNavTopExpanded .sideNavCtrl i {
  font-size: 11pt;
  width: 20px;
  text-align: center;
}

.sideNavExpanded .sideNavItem .sideItemText, .sideNavExpanded .sideNavSelectedItem .sideItemText {
  padding-left: 10px;
  display: inline;
}

.sideNavCollapsed .sideNavItem .sideItemText, .sideNavCollapsed .sideNavSelectedItem .sideItemText {
  display: none;
}

.sideNavItem:hover, .sideNavSelectedItem:hover, .sideNavCtrl:hover {
  background-color: #dae3ff;
  color: #182a42;
}

.topBarBanner {
  height: 50px;
  padding: 0 10px 0 20px;
}

.studio-name {
  white-space: nowrap ;
  font-size: 28px;
  font-weight: 600;
  color: #344563;
  margin-top: 5px;
}

.calendarBtn {
  font-size: 20px;
  vertical-align: middle;
  margin-left: 3px;
  color: #4862ae;
}

.homeCenter {

}

.goingOnTodayContainer {
  margin-bottom: 30px;
}

.sideNavExpanded .copyright
{
  color: #b6bdce;
  padding: 15px;
  font: 9pt Verdana;
  display: block;
  position: absolute;
  bottom: 15px;
}

.sideNavCollapsed .copyright {
  display: none;
}

@media only screen and (max-height: 740px) {
  .copyright {
    display: none !important;
  }
}

.searchBox {
  margin-right: 20px;
  position: relative;
}

.searchInput {
  height: 21px;
  margin: 10px 0 0 15px;
  min-width: 350px;
  padding: 5px 5px 5px 30px;
  border-radius: 2px;
}

.searchIcon {
  position: absolute;
  margin-top: 18px;
  margin-left: 22px;
}

.contentContainer {
  display: flex;
}

.searchResultBar {
  height: 80px;
  display: flex;
}

.searchResultNav {
  padding-top: 25px;
  padding-right: 30px;
  text-align: right;
  width: 100%;
}

.searchResultNav a:hover .Tooltip {
  visibility: visible;
  opacity: 1;
}

.searchResultNav a .Tooltip {
  margin-top: 30px;
  margin-left: -10px;
}

.searchResultItem {
  margin: 0 30px 15px 30px;
  padding-bottom: 5px;
  border-bottom: 1px solid #e0e0e0;
}

.searchResultPanel {
  width: 350px;
  min-width: 350px;
  border-right: 1px solid #e0e0e0;
}

.searchResultLabel {
  padding-top: 25px;
  padding-left: 30px;
}

.searchResultsShowAll {
  margin: 0 30px 15px 30px;
}

.bottomSpaced {
  margin-bottom: 25px;
}

TABLE.ReportTable TH.AR {
  text-align: right;
}

.menu {
  visibility: hidden;
  background-color: white;
  position: absolute;
  border: 1px solid #dedede;
  border-radius: 5px 5px 5px 5px;
  box-shadow: 0 5px 15px 0 rgba(194, 198, 204, 0.5);
  min-width: 200px;
  font-weight: normal;
  padding: 3px;
  z-index: 1;
}

.menuButton .menu {
  margin-top: 45px;
}

.menuLink + .menu:active,
.menuLink:focus + .menu {
  visibility: visible;
}

.insights {
  display: flex;
  border-bottom: 1px solid #e0e0e0;
  padding: 10px 0 30px 0;
}

.chartBox {
  padding-right: 10px;
}

.chartBox .donut-chart {
  margin: 30px;
}

.chartTitle {
  text-align: center;
  padding: 10px;
}

.noTabsSectionStart {
  border-width: 1px 0 0 0;
  border-top: 1px solid #dedede;
  margin-top: 30px;
  margin-bottom: 40px;
}

.boldRed:hover .Tooltip {
  visibility: visible;
  opacity: 1;
  margin-top: 45px;
}

.switch {
  position: relative;
  display: inline-block;
  width: 55px;
  height: 29px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 34px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 21px;
  width: 21px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
  border-radius: 50%;
}

input:checked + .slider {
  background-color: #3d5395;
}

input:focus + .slider {
  box-shadow: 0 0 1px #3d5395;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

@media print {
  table.AttendanceRoster th, table.AttendanceRoster td {
    font-size: 9pt;
    padding: 2px;
  }
  table.AttendanceRoster .dateHeader {
    max-width: 30px;
  }
}

.warningCell {
  color: #a57f04;
  padding-right: 10px;
  display: flex;
  align-items: center;
}

.schedule-class-type:hover .Tooltip {
  visibility: visible;
  opacity: 1;
}

.donut-chart-legend {
  display: flex;
  flex: 1 1 0;
  flex-direction: row;
}

.donut-chart-legend-series {
  display: block;
  text-align: right;
  font-size: 19px;
}

.donut-chart-legend-series .series, .donut-chart-legend-bullets .bullet, .donut-chart-legend-labels .label {
  height: 40px;
  padding-top: 10px;
}

.donut-chart-legend-bullets .bullet i {
  margin: 7px 10px 0 10px;
}

.donut-chart-legend-labels .label span {
  display: inline-flex;
  margin-top: 3px;
}

.donut-chart-legend-series .series:not(.is-last), .donut-chart-legend-bullets .bullet:not(.is-last), .donut-chart-legend-labels .label:not(.is-last) {
  border-bottom: 1px solid #e0e0e0;
}

.donut-chart-legend-series, .donut-chart-legend-bullets, .donut-chart-legend-labels {
  display: flex;
  flex-direction: column;
}

.donut-chart-legend-labels {
  flex: 1 1 0%;
}

.donut-chart-legend-labels .label {
  padding-right: 20px;
}

.donut-chart-legend-outline {
  text-wrap: nowrap;
  /*width: 350px;*/
  padding-top: 25px;
  padding-right: 20px;
}
.field-icon {
  float: right;
  margin-left: -25px;
  margin-right: 5px;
  margin-top: -30px;
  position: relative;
  z-index: 2;
}
.table-field-icon {
  margin-left: -25px;
  margin-right: 5px;
  margin-top: -30px;
  position: relative;
  z-index: 2;
}

.action-cell {
  direction: rtl;
}

.SimpleSD .menuButton, .ReportTable .menuButton {
  position: relative;
  margin: 8px 0;
}

.SimpleSD .menuButton .menuLink, .ReportTable .menuButton .menuLink {
  background-color: #4862ae;
  color: white;
  border: 0;
  margin: 3px 0;
}

.SimpleSD .menuButton .menuLink:hover, .ReportTable .menuButton .menuLink:hover {
  background-color: #41538b;
}

.inline-menu {
  visibility: hidden;
  background-color: white;
  position: absolute;
  border: 1px solid #dedede;
  border-radius: 5px 5px 5px 5px;
  box-shadow: 0 5px 15px 0 rgba(194, 198, 204, 0.5);
  min-width: 200px;
  font-weight: normal;
  padding: 3px;
  z-index: 1;
}

.tabContent .ReportTable {
  width: 100%;
}

#tab-instructors-content .ReportTable td.AR:last-child, #tab-schedule-content .ReportTable td.AR:last-child  {
  direction: rtl;
}

#tab-schedule-content .ReportTable td {
  height: 36px;
}

.date-spec-enrollment-bar {
  display: flex;
}

.date-spec-enrollment-bar .menuButton {
  margin-top: 10px;
}

.date-spec-enrollment-bar .menuButton .menu {
  margin-top: 20px;
}

.date-spec-enrollment-bar .menuButton .menuLink {
  background-color: #4862ae;
  color: white;
  border: 0;
}

.date-spec-enrollment-bar .menuButton .menuLink:hover {
  background-color: #41538b;
}

.date-spec-enrollment-bar .bar-link {
  margin-top: 10px;
}