
.group:after {
  content: "";
  display: table;
  clear: both;
}

body {
	font-size: 11px;
  	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
   	font-weight: normal;
}

textarea {
    font-family: Helvetica, Arial, Geneva, sans-serif;
    font-size: 11px;
    padding: 1px;
    border: 1px solid #333333;
}

input[type="text"], #BillingScene input[type="text"] {
    font-family: Helvetica, Arial, Geneva, sans-serif;
    font-size: 11px;
    border: 1px solid #333333;
    width: 100px;
    text-align: left;
}

input[type="checkbox"], input[type="radio"] {
    width: auto;
    height: auto;
}


.error {
    color: red; font-weight: bold;
}

.success {
    color: green;
}
.incompleteField {
    background-color: lightPink;
}

.formSubmit {
    background-image: url("/assets/images/prestolegato/register.png");
    cursor: pointer;
    margin-top: 6px;
    margin-left: 250px;
    width: 152px;
    height: 22px;
}

.stuRegListLink {
    width: 285px;
    line-height: 10px;
    font-size: 9px;
    padding: 1px 3px;
    background-color: #f5f5f5;
    color: #444;
    cursor: pointer;
    border-bottom: 1px solid #888;
}
.selreg {
    background-color: #ed2;
    font-weight: bold;
}
.enteredData {
    color: #11CC11;
}
.missedClass {
    color: red;
}

.availDiv {
    width: 11px;
    height: 11px;
    border: 1px solid #888;
}

.stuRegListLink:hover {
    background-color: #ed2;
    color: black;
}

.studentSidebarDiv {
    width: 215px;
    line-height: 11px;
    font-size: 9px;
    padding: 1px 3px 1px 10px;
    background-color: #f5f5f5;
    color: #444;
    cursor: pointer;
    border-bottom: 1px solid #888;
}
.studentSidebarDiv:hover {
    font-weight: bold;
    background-color: #f2f595;
    color: black;
}
.availBox {
    width: 10px;
    height: 15px;
    border: 1px solid #888;
}
.segmentDiv {
    border: 1px solid #aaa;
    height: 20px;
    width: 1100px;
    margin-left: 3px;
}

.selectedVideo {
    background-color: #e67;
}

.invisEdit {
    background-color: white;
    position: relative;
    border: 1px solid #888;
    z-index: 200;
    width: 250px;
    height: 100px;
}

.segView {
    width: 75px;  
    height: 20px; 
    float:left;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-size: 9px;
}

.segmentBlockChartCell {
    float: left;
    width: 143px;
    height: 20px;
    text-align: center;
}

.segmentScheduleRowStartCell {
    float: left;
    width: 70px;
    height: 15px;
    line-height: 15px;
    text-align: right;
    margin-right: 5px;
    font-weight: bold;
    font-size: 11px;
    
}

.emailBoxStyle {
    float: left; 
    width: 80px; 
    text-align: center; 
    border-right: 1px solid #E1DEDE;
    padding: 1px;
    height: 10px; 
    line-height: 12px;
}

.placeholderLesson, .potentialBuddingStudentLesson, .buddingStudentLesson, .realStudentLesson {
    float: left;
    width: 30px;
    height: 18px;
    border-left: 1px solid #eee;
    overflow: hidden;
    line-height: 9px;
    font-size: 10px;
    font-family: "arial narrow", "arial";
    
    padding: 1px 0px;
    text-align: center;
    display: inline-block;
    vertical-align: center;
}
.potentialBuddingStudentLesson {
    background-color: #ff8;
}
.buddingStudentLesson {
    cursor: pointer;
}
.highlightSidebar {
    background-color: #eee;
}



.lessonOk {
    color: rgb(135, 122,121); /*#aa7700;*/
    
}
.lessonLike {
    /*color: white;*/
    color: rgb(35, 125, 188);
}
.lessonLove {
    color: rgb(24, 209, 71);
}

.availBoxOk {
    background-color: rgb(135, 122,121); 
}
.availBoxLike {
    background-color: rgb(35, 125, 188);
}
.availBoxLove {
    background-color: rgb(24, 209, 71);
}

.lessonNone {
    background-color: #ccc;
}

.swapLessonHover {
    background-color: lightBlue;
}

.studioDayBlock {
    margin-top: 11px;
}

.potentialDropStudent {
    background-color: blue;
} 

.segmentScheduleRowCell {
    float: left;
    width: 31px;
    height: 15px;
    line-height: 12px;
    font-size: 10px;
    
    padding: 1px 0px;
    text-align: center;
    display: inline-block;
    vertical-align: center;
}

.mappreview {
    border: 1px solid black;
    background-color: white;
    width: 500px;
    height: 300px;
    text-align: center;
    z-index: 4000;
    
}

.highlightOK {
    background-color: rgb(165, 152,151);
}
.highlightLIKE {
    background-color: rgb(65, 155, 218);
}
.highlightLOVE {
    background-color: rgb(54, 239, 101);
}

.lowhighlightOK {
    background-color: rgb(215, 202,201);
}
.lowhighlightLIKE {
    background-color: rgb(115, 205, 255);
}
.lowhighlightLOVE {
    background-color: rgb(104, 255, 151);
}

.myLesson {
    background-color: #e92;
}

select {
    font-family:  Helvetica, Arial, Geneva, sans-serif;
    font-size: 11px;
    border: 1px solid black;
}   

.chartBox {
    float: left; 
    text-align: center; 
    width: 20px; 
    height: 11px; 
    border-right: 1px solid black;
    border-bottom: 1px solid black;
    padding: 2px;
}

.button {
    border: 1px solid black;
    padding: 2px;
    cursor: pointer;
    text-align: center;
    font-weight: bold;
    width: 100px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    box-shadow: 1px 1px 4px 0 #8E8E8E;
}

.button:hover {
    box-shadow: 1px 1px 7px 0 #6E6E6E;
}

.billingtool td {
     vertical-align: middle;   
}

.billingtool input {
    border: 1px solid #e5e5e5;    
    /*width: 50px;
    text-align: center;
    */
    padding-top: 2px;
    
    margin-left: -1px;
    
    font-size: 10px;
}

.billingtool select {
    font-size: 10px;
}


.billingtool textarea {
    font-size: 10px;
  	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
   	font-weight: normal;
}

.tabFrame {
    position: relative;
}

.box {
    border: 1px solid black;
    margin: 3px;
    padding: 2px;
    
    overflow-y: hidden;
}
.noActivity,
.ajaxActivity {
    position: absolute;
    top: 2px;
    right: 10px;
    
    width:  38px;
    height: 45px;
}

.noActivity {
    background-image: url("/assets/images/prestolegato/aniOff.gif");
}

.ajaxActivity {
    background-image: url("/assets/images/prestolegato/ani.gif");
}

/*******************/

.topTabBar {
    width: 100%;
    height: 1px;
    
    background-color: #000;
    z-index: 10;
    
    position: absolute;
    top: 18px;
    left: 0px;
}

.tabBox {
    position: relative;
    z-index: 5;
    font-size: 11px;
    font-weight: normal;
    height: 10px;
    
    background-color: #eee;
    border-top: 1px solid black;
    border-left: 1px solid black;
    border-right: 1px solid black;
    cursor: pointer;
    text-align: center;
    text-transform: uppercase;
    
    padding: 3px 5px 3px 5px;
    margin-right: 1px;
}

.tabBox:hover {
    background-color: #ffe;
}

.selectedTab {
    
    background-color: #fff;
    height: 11px;
    padding-bottom: 4px;
    font-weight: bold;  
    position: relative;
    z-index: 20;
}

.selectedTab:hover {
    background-color: #fff;
}

.tabRow {
    margin-left: 20px;
    margin-top: 1px;
}
.tabContentFrame {
    position: relative;
}

.hiddenTabContent {
    display: none;
}

#mainTabs {
    margin-left: 0px;
    margin-top: 30px;
}

.tabFrame {
    padding-left: 1px;
}

#mainTabs .tabContentFrame {
    
}
/**********************/
#familyResultTable .listtableRow {
    cursor: pointer;
    height: 12px;
    font-size: 10px;
    color: #333;
    margin-left: 1px;
    margin-top: 1px;
    
}

#familyResultTable .listtableRow:hover {
    background-color: #ff6;
}

#familySearchResults {
    border-right: 1px solid black;
    overflow-y: auto;
}

/**********************/
@font-face {
    font-family: Maestro2;
    src: url("/assets/fonts/Maestro.ttf");
}
@font-face {
    font-family: "Arial Black";
    src: url("/assets/fonts/Arial Black.ttf");
}
@font-face {
    font-family: MyriadPro;
    font-weight: normal;
    font-stretch: normal;
    src: url("/assets/fonts/MyriadPro-Regular.otf") format("opentype");
}
@font-face {
    font-family: MyriadPro;
    font-weight: bold;
    font-stretch: normal;
    src: url("/assets/fonts/MyriadPro-Bold.otf") format("opentype");
}
@font-face {
    font-family: "MyriadPro Condensed";
    font-weight: normal;
    font-stretch: condensed;
    src: url("/assets/fonts/MyriadPro-Cond.otf") format("opentype");
}
@font-face {
    font-family: "MyriadPro Condensed";
    font-weight: bold;
    font-stretch: condensed;
    src: url("/assets/fonts/MyriadPro-BoldCond.otf") format("opentype");
}
@font-face {
    font-family: MyriadPro;
    font-weight: bold;
}

#studentTabBody .studentTabs {
    position: inherit;
    top: 0px; 
    left: 0px;
    margin-top: -30px;
}

/***********************/

#treeTest {
    margin: 5px;
}


.treeNode {
    vertical-align: middle;
}

.invisibleNode {
    display: none;
}

.invisibleArrow,
.expandArrow {
    width: 6px;
    height: 11px;
    cursor: pointer;
    
    margin-bottom: 2px;
}

.expandArrow {
    background-image: url('/assets/images/billing/rightArrow.gif');
}

.expanded { 
    width: 11px;
    height: 6px;
    background-image: url('/assets/images/billing/downArrow.gif');
}

.nodeTag {
    margin-left: 6px;
    cursor: pointer;
}

.selectedNode {
    font-weight: bold;
    background-color: #ee7;
}

/* listtable */

#listtable_familyResults .listtable {
    border-right: 1px solid black;
}

#listtable_familyResults .listtable_body {
     border-top: 1px solid black;
}

#listtable_familyResults .listtableHeaderColumn {
    margin-top: 3px;
    margin-bottom: 1px;
    text-align: center;
    font-size: 12px;
}

#listtable_familyResults .listtableColumn {
    border-right: 1px solid black;
    font-size: 11px;
    
    height: 11px;
    padding: 2px;
}

#listtable_familyResults .lastColumn {
    border-right: none;
}

#listtable_familyResults .listtableRow {
    cursor: pointer;
}

#listtable_familyResults .evenRow {
    /*background-color: #eeeeee;*/
}


#listtable_summaryAccountHistory .listtable_body {
     border-top: 1px solid black;
}
#listtable_summaryAccountHistory .evenRow {
    /*background-color: #eeeeee;*/
}
#listtable_summaryAccountHistory .listtableColumn {
    border-right: 1px solid black;
    font-size: 11px;
    padding: 1px;
    height: 24px;
    
}
#listtable_summaryAccountHistory .listtableRow {
    height: 23px;
    border-bottom: 1px solid black;
}

#listtable_summaryAccountHistory .lastColumn {
    border-right: none;
}

#listtable_summaryAccountHistory .lastColumn {
    border-right: none;
}

#listtable_summaryAccountHistory .amountColumn {
    text-align: right;
    padding-right: 2px;
}

.selectedRow {
    background-color: #eeee77;
}

.unpaidBalance {
    color: #f77;
}

.paidBalance {
    color: #7f7;
}

/*-------------*/

.ticketSearch {
    width: 100%;
    height: 100px;
    border-bottom: 1px solid black;
}

#ticketResults {
    position: absolute;
    left: 2px;
    top: 101px;
    
    height: 300px;
    width: 100%;
}

.ticketView {
    width: 100%;
    height: 138px;
    overflow-y: auto;
    border-bottom: 1px solid black;
}

.ticketView select {
    font-size: 10px;
    width: 120px;
}

.ticketView input {
    font-size: 10px;
    width: 120px;
}
.ticketNoteField {
    width: 270px; 
    height: 70px; 
    padding: 1px;
    
    font-size: 11px;
    line-height: 11px;
    font-family: helvetica;
}

.namePicker {
    background-color: #eee;
    z-index: 10;
    border: 1px solid black;
    
}

.namePicker ul {
    list-style-type:none;
}

ul li.selected {
    background-color: #ff6;
}


/*PARENT TALKS*/
#parentTalksForm {
        font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
        font-weight: normal;
        font-size: 11px;
}

#parentTalksForm select,
#parentTalksForm input {
    width: 100px;   
    margin-right: 20px;
    text-align: left;
    padding-left: 2px;
}
#parentTalksForm textarea {
    margin-right: 20px;
}

.btnNewTalk {    
    margin-right: 10px;
    margin-top: 4px;
    margin-bottom: 4px;        
    background-image: url("/assets/images/plus.png");
    cursor: pointer; 
    width: 20px; 
    height: 20px;
}

.btnSaveTalk {
    margin-right: 10px;
    margin-top: 4px;
    background-image: url("/assets/images/check.png");
    cursor: pointer; 
    width: 20px; 
    height: 20px;
}

.btnDeleteTalk {    
    margin-right: 10px;
    background-image: url("/assets/images/minus.png");
    cursor: pointer; 
    width: 20px; 
    height: 20px;
}

.divider {
    height: 1px;   
    background-color: #9DA5B4;
    width: 800px;
}

/*BUDDING REGISTRATIONS*/
.buddingRegistrations {
    line-height: 16px;  
}

.buddingRegistrations td {
    vertical-align: top;    
}

.buddingRegistrations .headline{
    font-size: 14px;
}

.buddingRegistrations .bigHeadline {
    color: #968c8c;
    font-size: 18px;
    margin-top: 30px;
}

.buddingRegistrations .divider {
    width: 692px;
    height: 2px;
    line-height: 1px;
    font-size: 1px;
    margin-top: 4px;
    margin-bottom: 4px;
    background-color: #e1dede;
}

.buddingRegistrations .row {
    margin-top: 8px;    
    margin-bottom: 8px;        
}

.generateBillTab {
    margin: 10px;    
}

.generateBillTab td {
    vertical-align: top;   
}

.btnStyle {
    cursor:pointer;
    background-color: #c3bdbc;
    font-weight:bold;
    width: 120px;
    height: 16px;
    text-align:center;
}

#familySearchBar td,
#templatesTab td,
#comm_log_div td, 
#billing_admin td,
#statementsAndLetters td {
    vertical-align: top;
}

#tabframe_frame_billingTabs td {
    vertical-align: top;   
}

#billing_admin {
    margin: 20px;   
}

.accountsView {
    height: 400px;   
    overflow-y: auto;
    overflow-x: visible;
}

.account_row1 {
    background-color: white;
}

.account_row2 {
    background-color: lightGray;    
}

.accountsList {
    background-color: white;
}

#billing_admin .rowHeader {
    font-weight: bold;
    text-align: left;
    border-left: 1px solid black;    
}

#billing_admin .cell { 
    text-align: left;
    padding-top: 2px;
    padding-left: 2px;
}

/*
accountBox pos detail
accountBox neg detail
accountBox pos summary
accountBox neg summary
*/
.accountBox {
    background-color: #e7e7e7;
    border-style: solid;
    padding: 2px;
    width: 200px;
    cursor: pointer;
    
}
.accountBox:hover {
    background-color: #B7B7B7;
}

.pos {
    border-color: #3d8b42;
    color: #3d8b42;
}
.neg {
    border-color: #8b3d3d;
    color: #8b3d3d;
}
.headline {
    border-color: #8b3d3d;
    color: #8b3d3d;    
}

.detail { 
    font-weight: normal;

    border-width: 1px; 
    border-bottom-width: 0px;

    margin-left: 4px;
    border-right-width: 2px;
    border-left-width: 2px;
}
.summary { 
    font-weight: bold;
    
    padding-right: 7px;
    position: relative; top: 1px;
    margin-top: 6px;

    -moz-border-radius: 5px;
    border-top-width: 3px;
    border-bottom-width: 1px;
} 

.accountTail {
    width: 206px;
    border: 1px solid;        
    margin-left: 4px;
}

.colorBoxContainer {
    width: 20px;
    height: 1px;
}
.colorBox {
    background-repeat: no-repeat;
    position: relative;
    top: -2px;
    left: -2px;
    height: 17px;
}
.posColor {
    background-color: #3d8b42;
}

.negColor {
    background-color: #8b3d3d;
}

.rightArrow {
    background-image: url("/assets/images/billing/bigRightArrow.png");
}
.downArrow {
    background-image: url("/assets/images/billing/bigDownArrow.png");
}

.floatMinusButton {
    background-image: url("/assets/images/billing/minus.png");
    cursor: pointer;
}

.minusButton {
    background-image: url("/assets/images/billing/minus.png");
    cursor: pointer;
    background-repeat: no-repeat;
    position: relative;
    top: -2px;
    left: -2px;
    width: 23px;
}

.accountEntryHandle {
    background-image: url("/assets/images/billing/handle.png");
    width: 37px;
    height: 37px;
    background-repeat: no-repeat;
    position: absolute;
    text-align: center;
    padding-top: 10px;
    font-weight: bold;
    font-size: 16px;
    color: white;
    z-index: 10000;    
}

.emptyContainer {
   width: 0px;
   height: 0px;
   overflow: visible;
}

.entryBox {
    background-color: #fff;
    border: 1px solid #000;
    color: black;
    -moz-border-radius: 5px;
    margin-top: 10px;
    overflow: hidden;
}
#detailsdiv .entryBox {
    background-color: transparent;
    color: #9DA5B4;
    border: 1px solid #666;
    margin: 2px;
}

.accountBoxHeadline {
    font-weight: bold;
    font-size: 14px;      
}

#detailsdiv .accountBoxHeadline {
    font-size: 11px;    
}

.accountHR {
    width: 100%;
    height: 1px;
    background-color: #000;
}
#detailsdiv .accountHR {
    height: 1px;
    background-color: #666;
}

.entryDirectionLeft, 
.entryDirectionRight {
    width: 36px;
    height: 21px;
    background-repeat: no-repeat;
}
.entryDirectionLeft {
    background-image: url("/assets/images/billing/arrowLeft.png");
}
.entryDirectionRight {
    background-image: url("/assets/images/billing/arrowRight.png");
}

.entryBtn {
    cursor: pointer; 
    margin: 3px; 
    padding: 2px; 
}

#detailsdiv .entryBtn {
    cursor: pointer;
    border: 1px solid #666;
    -moz-border-radius: 4px;
}

.batchViewRow {
    padding: 3px;   
}
.batchViewHR {
    width: 100%;
    height: 2px;
    background-color: #434ec5;
}


.batchButton,
.batchHeadline {
    color: #434ec5;
    font-weight: bold;
    font-size: 14px;
}

.batchButton {
    border: 2px solid #434ec5;
    padding: 3px;
    text-align: center;
    cursor: pointer;    
    height: 14px;
    -moz-border-radius: 4px;
}
.batchButton:hover {
    background-color: #f6f6f6;
}

#detailsdiv .batchButton:hover {
    background: transparent;
}

.batchState {
    -moz-border-radius: 8px;
    border-width: 2px;
    border-style: solid;

    background-color: #f6f6f6;

    line-height: 10px;
    font-weight: bold;
    font-size: 11px;
    text-align: center;

    padding: 3px;
    padding-top: 8px;
    width: 77px;
    height: 22px;
}

.stateAvailable:hover,
.stateSelected { border-top-width: 4px; border-bottom-width: 4px; height: 20px; padding-top: 6px; }
.stateUnselected { border-width: 2px;}

.stateAvailable { border-color: #434ec5; cursor: pointer}
.stateUnavailable { border-color: #b0b0b0; }

.stateComplete { color: #434ec5; }
.stateIncomplete { color: #b0b0b0; }

.stateMenu {
    width: 800px;
    height: 85px;    
    
    padding-top: 6px;
    text-align: center;
    
    -moz-border-radius: 8px;
    border: 2px solid #f6f6f6;
    margin-bottom: 10px;

    
}
.batchSummary {
    width: 150px;
    font-weight: bold;
    color: #434ec5;
}
.roundedBox {
    margin: 4px;
    padding: 20px;
    -moz-border-radius: 4px;
    border: 1px solid gray;   
}
.checkAll {
    cursor: pointer;
    background-image: url('/assets/images/billing/check_full.png');
    width: 22px;
    height: 24px;
    margin-left: 2px;
    background-repeat: no-repeat;
}
.uncheckAll {
    cursor: pointer;
    background-image: url('/assets/images/billing/check_empty.png');
    width: 22px;
    height: 22px;
    margin-left: 6px;
    margin-top: 4px;
    background-repeat: no-repeat;
}
.plus_clear {
    background-image: url('/assets/images/billing/plus_clear.png');
    width: 13px;
    height: 13px;
    background-repeat: no-repeat;
    cursor: pointer;    
}
.btnApproved {
    background-image: url('/assets/images/billing/approved_button.png');
    width: 47px;
    height: 16px;
    margin-right: 4px;
    background-repeat: no-repeat;
    cursor: pointer;
}
.btnSubmit {
    background-image: url('/assets/images/billing/submit_button.png');
    width: 47px;
    height: 16px;
    margin-right: 4px;
    background-repeat: no-repeat;
    cursor: pointer;    
}
.btnPost {
    background-image: url('/assets/images/billing/post.png');
    width: 11px;
    height: 19px;
    background-repeat: no-repeat;
    cursor: pointer;    
}

.btnPostAll {
    background-image: url('/assets/images/billing/postall.png');
    width: 48px;
    height: 40px;
    background-repeat: no-repeat;
    cursor: pointer;    
}

#teacherDriving input {
    margin: 4px;
}

#teacherConfig input {
    margin: 5px;
}
#teacherConfig div {
    margin: 5px;
}

.stuCourseBtn {
    color: #aaa;
}

.stuCourseBtn:hover {
    color: #bfc7d6;
}

.selectedStuCourse {
    /*color: rgb(245,246,121);*/
    font-weight: bold;
    color: #ee0;
    background-color: #aaa;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
}

.selectedStuCourse:hover {
    color: #ee0;
}

#printingdiv .reportMainDiv {
    width: 410px;
    margin-left: 2px;
}
#printingdiv .outerReportDiv {
    margin-top: 0px;
}
#printingdiv .reportRow {
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
}   


/* store admin */

.storeAdminFolderContainer {
    padding: 8px;
    margin: 8px 12px;
    border: 1px solid #888;
    width: 210px;
    float: left;
}
.storeMenuButton {
    width: 200px;
    height: 16px;
    margin: 3px 8px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
    padding: 2px;
    border: 1px solid #aaa;
    font-weight: normal;
}
.storeMenuButton.selected {
    background-color: #fffeff;
    font-weight: bold;
}
.storeMenuButton:hover {
    background-color: #fffeff;
}

.storeDetailsView {
    clear: both;
    border: 1px solid #aaa;
    padding: 8px;
    margin: 15px; 
    min-height: 300px;
}
.store-item-wrap {
    float: left;
    width: 244px;
}


/* Teacher File admin*/
.dropzone.dz-clickable {
    cursor: pointer;
}
.dropzone {
    border: 1px solid rgba(0, 0, 0, 0.03);
    min-height: 360px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    background: rgba(0, 0, 0, 0.03);
    padding: 23px;
}
.teacher-file-admin .panel {
    float: left; 
    width: 350px;
    min-height: 500px;
    border: 1px solid #888;
    padding: .2em;
    margin: .2em;
}
.teacher-file-admin ul li {
    cursor: pointer;
    padding: .2em;
    font-size: 12pt;
    
}

.teacher-file-admin ul li.selected {
    color: white;
    background-color: #1a2;
}

