
.onlinereg {
	margin-bottom:60px;
}
.onlinereg .button-small, .onlinereg .button-small:hover {
	font-size:11pt;
	font-weight:600;
	border:none;
	background-color:var(--color-red);
	color:#fff;
	height:30px; line-height:22.5px;
	border-radius:5px;
	padding: 5px 10px;
}

.co-login-window {}
.co-login-window input[type="text"], .co-login-window input[type="password"], .co-login-window input:-webkit-autofill, .onlineregtable input[type="text"], .onlineregtable input[type="password"], .onlineregtable input[type="date"] {}
.co-login-window .co-login-headline {
	font-size:1.5rem;
	font-weight:500;
	text-transform:uppercase;
}
.co-login-window .forgot a {}
.onlinereg .breadcrumb {
	background-color: #fff;
	margin-bottom:40px;
	border:1px solid #aaa;
}
.onlinereg .breadcrumb a {
	top:-30px;
}
.onlinereg .action-button-container {
	right:5px; top:3px;
}
.onlinereg .action-button, .onlinereg .action-button:hover {
	margin:3px 1px 0 0;
	height:34px; line-height: 27px;
	border:none;
	background-color: var(--color-red);
	color: #fff;
	border-radius: 5px;
}

.onlinereg .subheadline {
	margin-bottom:30px;
	font-weight:500;
	font-size:20pt;
}

.school-info {
	background-color:#fff;
	border-raidus:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border:none;
}
.school-headline {font-size:24pt;}
#school-search {
	font-size:13pt;
	border:1px solid #ccc;
}
.partner-tabs {
	margin-top:30px;
	justify-content:space-between;
}
.partner-tab a {
	background-color:#fff;
	border:1px solid #aaa;
	transition:0.2s ease-in-out;
}
.partner-tab a:hover {
	transform:scale(110%);
}
.partner-search-container {
	background-color:#fff;
	border:1px solid #aaa;
	border-raidus:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	margin-bottom:85px;
}
.partner-search-container td.partner-label {
	font-size:18pt;
	color:var(--color-red);
}
input.partner-search {
	font-size:13pt;
	border:1px solid rgba(0,143,189,0.5);
	padding-left:40px;
}
.partner-check {color:rgba(0,143,189,0.5);}
.pchecked {color:green;}
.partner-search-button {
	padding:5px;
	font-size:10pt;
	border:1px solid rgba(0,143,189,0.25);
	box-shadow:none;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
}
.partner-search-enable, .partner-search-disable {
	display:block;
	margin:0; padding:3px;
	font-size:0.75rem;
	font-weight:500;
}
.partner-search-container .down-arrow {color:#85d2eb;}
.padd button {
	display:inline-flex;
	flex-direction:column;
	align-items:center !important;
	justify-content:center !important;
}
.partnerships-filter-container {
	width:100%;
}
.partner-search-results {
	border:1px solid #8dc5db;
	left:15px; top:43px;
}
.partner-search-results ul li a, .partner-search-results ul li p, .partner-search-results ul li span {font-size:13pt;}
.partner-search-results ul li.add-partner-li {
	border-top:1px dotted var(--color-red);
}
#partner-add-button {
	height:120px;
	border:none;
	background-color:var(--color-red);
	color:#fff;
	font-size: 1rem;
	text-transform: uppercase;
	font-weight: 500;
	margin-bottom:-85px;
}
.add-button-disabled {
	opacity:1 !important;
	background-color: #fff !important;
	border: 1px solid #ddd !important;
	color: #ddd !important;
}
#partner-add-button.add-button-disabled:hover {
	text-shadow:none;
}
.partnerships-container table {border:none;}
.partnerships-container table tr td {
	padding-top:12px;
	font-size:13pt;
	border:none;
}
.partnerships-container table tr td:last-child {
	padding-top:5px;
}
.partnerships-container .remove-partnership {
	font-size:18pt;
	color:#000;
	display:inline-block;
	margin-top:-6px;
}
.partnerships-container .remove-partnership:hover {
	text-decoration:none;
	color:var(--color-red);;
}
.person-edit-button {
	background:none;
	border-color:var(--color-red);
	padding:3px 4px 0 4px;
}
.person-edit-button:hover {
	background-color:rgba(255,255,255,0.33);
}

.grid-header {}
.grid-header div:last-child {
	font-size:1rem;
	color:var(--text-color);
	font-family:"Outfit", sans-serif;
}
.grid-header div:first-child {
	font-size:1.75rem;
	font-weight:400;
	color:var(--color-red);
	margin-bottom:30px;
}
.grid-subheader {
	font-size:1.1rem;
	text-align:center;
	color:#000;
	font-weight:600;
	font-family:"Outfit", sans-serif;
	margin:25px 0 15px 0;
}
.grid-header-hint {
	font-weight: 500;
	font-size: 0.9rem;
	font-style: italic;
	margin-bottom: 20px;
	color: #666;
}
.age-tab-container {
	display:flex;
	justify-content:center;
	padding:2.5px 0 15px 0;
}
.age-tab {
	display:flex;
	border:1px solid var(--color-red);
	padding:7.5px 15px;
	background-color:rgba(255,255,255,0.33);
	border-radius:4px;
	transition:0.2s ease-in-out;
	font-weight:600;
}
.age-tab:hover {
	display:inline-block;
	background-color:#fff;
	transform:scale(1.1);
	text-decoration:none;
}
.age-tab.age-tab-selected {
	background-color:var(--color-red);
	color:#fff;
}

.grid-wrapper {
	margin-bottom:60px;
}
.freestyle-grid td {
	border:1px solid #ccc;
	font-size:11pt;
}
.multi-dance-list {
	margin-bottom:45px;
}
.multi-dance-list li {
	border-bottom:1px solid #ccc;
}


#purchases-for {
	margin-top:-25px;
	color:#e53c00;
}
#purchase-items .pi-category h4 {
	font-size:1.75rem;
	border-bottom:1px dotted var(--color-red);
}
#purchase-items table.cat-items td.col-icon i, #purchase-summary-items td.col-icon i {
	color:var(--color-red);
}
#purchase-items table.cat-items td.col-action button {
	margin-top:-7px;
	border-color:var(--color-red);
	padding:0 5px;
	height: 32px;
	transition:0.2s ease-in-out;
}
#purchase-items table.cat-items td.col-action button:hover {
	background-color:rgba(255,255,255,0.33);
	transform:scale(105%);
}
#purchase-summary-items td, #purchase-summary-items th {
	border:none;
	border-bottom:1px dotted var(--color-red);
}
#purchase-items button div, #purchase-items button div i {
	color:var(--color-red);
	position:relative;
	top:1px;
	margin-right:2.5px;
}

#purchase-popup textarea {
	color:#000 !important;
}
#purchase-popup textarea::placeholder {
	color:#aaa !important;
}

.onlinereg-invoice .invoice-entries-header td {
	verical-align:bottom;
	border-bottom:1px solid var(--color-red);
	padding-left:110px;
	position:relative;
	font-weight:600;
}
.onlinereg-invoice .invoice-entries-header td.entries-for {
	color:var(--color-red);
}
.entries-for small {
	display:inline-block;
	position:absolute;
	left:0; top:0px;
	border:1px solid var(--color-red);
	width:95px;
	font-size:9pt;
	text-transform:uppercase;
	padding:5px 10px;
	background-color:#fff;
	text-align:right;
	margin-right:20px;
	font-weight:500;
}
.invoice-subtotal div {color:#e53c00; font-size:18pt; font-weight:600;}
.invoice-subtotal small {
	font-size:9pt;
	padding-right:10px;
	font-weight:600;
}
.onlinereg .invoice-line-item .menu-icon {background-color:#fff;}

.onlinereg .invoice-line-item {position:relative;}
.onlinereg .invoice-line-item.selected td {
	background-color:rgba(255,255,255,0.5);
	text-shadow:0 0 1px rgba(0,0,0,0.5);
}
.onlinereg .invoice-line-item td.entry-check i {
	display:block;
	position:relative;
	color: var(--accentcolor);
}
.onlinereg-invoice td.entry-label .entry-ctype {
	background-color:#fff;
	border: 1px solid #000;
	padding: 4px 2px 2px 2px;
	top: -2px;
	position: relative;
}
.item-action-buttons button, .item-action-buttons button:hover {
	background-color:var(--color-red);
	color:#fff;
	height:30px;
	padding:3px 10px 0 10px;
	border:none;
}

.payments {width:100%; max-width:calc(100vw - 40px); overflow-x:scroll;}
.payments table {margin-bottom:40px; border:1px solid #000;}
.payments table td {padding:10px 15px; border-bottom:1px dotted #000;}
.payments table tr:nth-child(odd) td {background-color:rgba(0,143,189,0.07);}
.payments table tr:nth-child(even) td {background-color:rgba(0,143,189,0.03);}
.payments table th {background-color:#000; color:#fff; padding:5px 15px; white-space:nowrap;}
	
.onlinereg .invoice-total {
	margin:30px auto;
	width:100%;
	max-width:600px;
	padding:30px 15px 90px 15px;
	background-color:#fff;
	border:2px solid var(--color-red);
	margin-bottom:-100px;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}
.onlinereg .invoice-total h1 {font-weight:500; font-size:5rem;}
.onlinereg .invoice-total h1 span {letter-spacing:-5px;}
.onlinereg .invoice-total sup {
	font-size: 1.5rem;
	top: -4px;
	line-height: 1;
	margin-left:5px;
}
.onlinereg .invoice-total .asterisk-fee {
	font-size:3rem;
	margin:-5px;
}
.onlinereg .invoice-actions button, .onlinereg .invoice-actions button:hover {
	background-color:var(--color-red);
	color:#fff;
	border:none;
}
.invoice-fee-warning {
	margin:60px auto 0 auto;
	font-weight:500;
	padding:30px;
	line-height: 1.25rem;
	color:#fff;
	background-color:#000;
	border-radius:10px;
}

.tooltipster-box {
	background-color:#000;
	font-size:12pt;
	font-weight:500;
	line-height:1rem;
}
.tooltipster-box::after {
	content:"\25B2";
	transform:rotate(180deg);
	bottom:-18px;
}

#invoice-switch-entry-type .popup-content {
	padding: 75px 0 20px 0;
}