:root {
	--page-margin:20px;
	--navbar-margin:20px;
	--navbar-height:50px;
	--drawer-width:300px;
	--footer-height:171px;
	--form-element-height:40px;
	--ndca-blue:#337ab7;
	--ndca-red:#c8281b;
}

#or-navcontainer, #footer-lower, button, .btn, button:hover, .btn:hover {
	background: -webkit-linear-gradient(top, #cc0000 0%, #780000 100%);
	color:#fff;
}
button, .btn {
	border:none;
	height:var(--form-element-height);
	font-family: "PT Sans Narrow", "Arial Narrow", Arial, Helvetica, sans-serif;
	text-transform:uppercase;
	font-size:1.2rem;
}
button:hover, .btn:hover {
	color:#fff;
	text-shadow:0 0 3px #fff;
}
button:focus, .btn:focus {
	outline:none !important;
	color:#fff;
	text-shadow:none;
}

button.btn-secondary, button.btn-secondary:hover {
	background: -webkit-linear-gradient(top, #55a0e1 0%, #0e5088 100%);
}

input {
	height:var(--form-element-height);
	padding:0 10px;
}

#or-global-error, #or-global-message {
	position:absolute;
	width:100%; height:calc(100% - 90px);
	display:flex;
	flex-direction:row;
	justify-content:center;
	align-items:center;
}
#or-global-error h1, #or-global-message h1 {
	margin:0 0 0 -3px;
}
#or-global-error h1 {color:var(--ndca-red);}
#or-global-message h1 {color:var(--ndca-blue);}
#or-global-error i.fa-exclamation-triangle, #or-global-message i.fa-info-circle {
	font-size:75px;
	margin-right:30px;
}
#or-global-error i.fa-exclamation-triangle {color:orange;}
#or-global-message i.fa-info-circle {color:var(--ndca-blue);}
#or-global-error a, #or-global-message a {
	margin:0 5px;
}

#or-navcontainer {
	position:fixed;
	left:0; top:0;
	z-index:999;
	width:100vw; height:var(--navbar-height);
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
	height:var(--navbar-height);
	color:#fff;
}
#or-nav-buffer {
	height:var(--navbar-height);
}

#or-back-button {
	position:fixed;
	z-index:999;
	color:#fff;
	left:15px; top:0;
	font-size:30px;
	height: var(--navbar-height);
	font-size: 25px;
	transform: translateX(0);
	line-height: var(--navbar-height);
	padding:0 5px;
	cursor:pointer;
	transition:0.2s ease-in-out;
	opacity:1;
	pointer-events:auto;
	transform:translateX(135px);
}
#or-back-button.no-going-back {
	opacity:0;
	pointer-events:none;
}
#or-back-button.after-scroll {
	transform:translateX(0);
}

#or-nav-user {
	display:flex;
	flex-direction:row;
	align-items:center;
	margin-right:calc(var(--navbar-margin) - 10px);
	height:var(--navbar-height);
	cursor:pointer;
}
#or-nav-user i {
	font-size:20px;
	padding:0 10px;
	width:40px;
}
#or-user-name {
	font-family: "PT Sans Narrow", "Arial Narrow", Arial, Helvetica, sans-serif;
	font-size: 13pt;
	text-transform: uppercase;
	text-shadow: -1px -1px rgba(0,0,0,0.5);
	margin-right:10px;
}

#or-header-comp {
	margin-left:var(--navbar-margin);
	display:flex;
	flex-direction:row;
	align-items:flex-start;
	color:#000;
	margin-top:-35px;
}
#or-header-comp h3 {
	margin:45px 0 0 0;
	white-space:nowrap;
	overflow-x:hidden;
	text-overflow:ellipsis;
	width:calc(100vw - 175px);
}
#or-header-comp img {
	width:120px; height:120px;
	border:5px solid #fff;
	box-shadow:3px 3px 10px rgba(0,0,0,0.25);
	margin-right:15px;
	z-index:999;
	object-fit:cover;
}

#main {
	min-height:calc(100vh - 369px);
	margin:var(--page-margin);
	padding:15px 5px;
}
@media (max-height:740px) {
	#main {
		min-height:550px;
	}
}

#login-underlay {
	position: absolute;
	left: 0; top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 1;
}
#login-pane {
	position:relative;
	width: 450px;
	border: 1px solid #ccc;
	box-shadow: 0 0 15px rgba(0,0,0,0.15);
	z-index: 3;
	padding: 75px 30px 30px 30px;
	background-color:#fff;
	border-radius:7.5px;
}
#login-pane > div {
	display: flex;
	flex-direction: row;
	align-items: center;
	margin: 10px 0;
}
#login-pane label {
	width: 120px;
	text-align: right;
	padding-right: 10px;
	margin-bottom: 0;
}
#login-pane input {
	width: calc(100% - 120px);
	background-color: #ffffdd;
	border: 1px solid #aaa;
}
#login-pane #login-message-container {
	height:30px;
	margin:0 0 -10px 0;
}
#login-message, #login-message * {
	display:block;
	line-height:12pt;
}

#login-pane #login-logo-container {
	position:absolute;
	left:0; top:-92px;
	width:100%;
	margin: -10px 0 20px 0;
	display:flex;
	flex-direction:row;
	justify-content:center;
}
#login-pane #login-logo {
	width:180px; height:180px;
}
#login-underlay > p {margin-top:15px;}

.logged-in, .logged-out {
	display:none;
}

@media(max-width:600px) {
	
	html, body {
		overflow-x:hidden;
	}
	#login-pane {
		width:100%;
		padding:75px 15px 30px 15px;
	}
	#login-pane div.login-pane-row {
		display:flex;
		flex-direction:column-reverse;
		align-items:flex-start;
	}
	#login-pane div.login-pane-row label {
		text-align:left;
		width:100%;
		margin:0;
	}
	#login-pane input {
		width:100%;
	}
	
}

.wizard-page {
	padding:0 15px 10px 15px;
	min-height: 300px;
}
.nlm-button-menu {
	list-style-type:none;
	display:flex;
	flex-direction:row;
	margin:30px 0; padding:0;
	width:100%;
}
.nlm-button-menu > li {
	margin:0 10px;
	width:50%;
}
.nlm-button-menu > li:first-child {margin-left:0;}
.nlm-button-menu > li:last-child {margin-right:0;}
.nlm-button-menu button, .wizard-form button {width:100%;}
.nlm-button-menu li p {
	margin-top:15px;
}
#or-new-login-modal .back-button, #or-new-login-modal .back-button:hover {
	background: #eee;
	color: #aaa;
	border: 1px solid #aaa;
	height: 36px;
	line-height: 15px;}
.wizard-page ul li p, .wizard-page ul li ul li {
	font-size:1rem;
	line-height:1.2rem;
}
.wizard-page ul li ul li {margin-bottom:5px;}
.wizard-form {margin-bottom:30px;}
.wizard-reg-search-container {
	position:relative;
}
#wizard-reg-search, .wizard-form input {
	background-color:#ffffdd;
}
div.wizard-form input {
	padding-left:10px;
	margin-bottom:7.5px;
}
.wizard-reg-search-container i {
	position:absolute;
	left:7.5px; top:7.5px;
	font-size:24px;
	color:#ccc;
}
.wizard-reg-search-container .btn {
	position:absolute;
	right:5px; top:5px;
	height:31px;
	line-height:15px;
}
#wizard-search-results {
	height:210px;
	border:1px solid #ccc;
	overflow-y:scroll;
	margin:15px 0;
}
#wizard-search-results ul {
	list-style-type:none;
	margin:10px; padding:0;
}
#wizard-search-results ul li {
	padding:3px 0;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
	transition:0.2s ease-in-out;
}
#wizard-search-results ul li:hover {
	background-color:#ffffdd;
	font-weight:bold;
}
#wizard-search-results ul li i {
	color:var(--ndca-blue);
	width:33px;
	font-size:18px;
}
#wizard-search-results ul li span {
	display:inline-block;
	width:calc(50% - 45px);
}
#wizard-search-results ul li .wizard-search-ndca {
	font-weight:bold;
	width:60px;
	margin-right:10px;
}
#reset-email-code-container {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	margin:30px 0;
}
#reset-email-code {
	padding-left:15px !important;
	margin-right:10px;
}
#reset-email-code-container button {width:120px;}
#wizard-reset-email-hint, #wizard-code-hint {
	display:block;
	margin:-27.5px 0 27.5px 0;
}
#wizard-new-pw-hint, #wizard-new-login-hint {
	display:block;
	margin:-20px 0 20px 0;
}


#or-drawer-container {
	position:fixed;
	left:calc(100vw - var(--drawer-width));
	width:var(--drawer-width); height:calc(100vh - var(--navbar-height));
	transform:translateX(var(--drawer-width));
	transition:0.5s ease-in-out;
	top:var(--navbar-height);
	z-index:998;
	opacity:0;
}
#or-drawer-container.open {
	transform:translateX(0);
	opacity:1;
}
#or-drawer {
	position:absolute;
	right:0; top:0;
	background-color:var(--ndca-blue);
	background-image: url(https://www.ndca.org/images/banner-bg-vertical.jpg);
	color:#fff;
	width:100%; height:100%;
	padding:30px;
}
#or-drawer ul {
	list-style-type:none;
	font-size: 1.2rem;
	text-shadow: -1px -1px rgba(0,0,0,0.5);
	margin:0; padding:0;
}
#or-drawer li {
	display:flex;
	flex-direction:row;
	align-items:center;
	color:rgba(255,255,255,0.85);
	height:40px;
	cursor:pointer;
}
#or-drawer li:hover {
	color:#fff;
	text-shadow:0 0 5px rgba(255,255,255,0.5);
	text-decoration:none;
	transition:0.2s ease-in-out;
}
#or-drawer li i.fas {
	font-size:1.5rem;
	margin-right:20px;
	width:30px;
	text-align:center;
}

#content .content-section {
	margin-bottom:45px;
}
#content h3 {
	margin:0; padding:0;
	text-align:center;
	color:#cc0000;
	margin-bottom:10px;
}
#entries, #purchases, #purchase-form-category-container {
	background-color:#fff;
	padding:10px 30px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

#content #entries h5, #content #purchases h5, .purchase-category-header {
	font-size:15pt;
	border-bottom:1px solid #ddd;
	margin-bottom:7.5px;
}
#content .purchase-list {
	list-style-type:none;
	margin:0 0 30px 0;
	padding:0;
}
#content .purchase-list li {
	display:flex;
	flex-direction:row;
	justify-content:flex-start;
	align-items:flex-start;
	cursor:pointer;
}
#content #purchase-cat-Rooms .purchase-list li {
	margin-bottom:10px;
}
#content .purchase-list li.dropped {
	font-style:italic;
	text-decoration:line-through;
	opacity:0.5;
	cursor:no-drop;
}
#content .purchase-list li input[type=checkbox] {
	pointer-events:none;
	position:relative;
	top:3.5px;
}
#content .purchase-list li input[type=checkbox], #content #entries h5 .toggle-checked-all, #content #purchases h5 .toggle-checked-all {
	padding:0;
	margin:0 10px 0 0;
	width:15px; height:15px;
}
#content #entries h5 .toggle-checked-all, #content #purchases h5 .toggle-checked-all {cursor:pointer;}
#content .purchase-list li.dropped input[type=checkbox] {
	opacity:0.5;
}
#content li .add-entries-link, #content li .add-purchases-link, #content li .cancel-items-link {
	font-weight:600; margin-top:5px;
}
#content .purchase-list li .add-entries-link:hover, #content .purchase-list li .add-entries-link:focus,
	#content .purchase-list li .cancel-items-link:hover, #content .purchase-list li .cancel-items-link:focus {text-decoration:none;}
#content .purchase-list li .add-entries-link .fa-plus-circle,
	#content .purchase-list li .add-purchases-link .fa-plus-circle,
	#content li .cancel-items-link .fa-minus-circle {
		margin-right:10px;
	}
#content .purchase-list li .cancel-items-link {color:#cc0000;}

#pcat-3 .purchase-list {width:100%;}
#pcat-3 .purchase-list tr td {
	vertical-align:top;
	line-height:1rem;
}
#pcat-3 .purchase-list tr td:first-child {width:45px;}
#pcat-3 .purchase-list tr td:last-child {
	text-align:right;
	padding-right:0;
}
.room-row.to-delete {
	display:none;
}
.room-row.canceled {
	text-decoration:line-through;
	color:#999;
}
.room-row.canceled .room-actions {
	cursor:no-drop;
}
.room-row.canceled td button.btn {
	pointer-events:none;
	background:none;
	background-color:#eee;
	border:1px solid #ccc;
	color:#aaa;
}
.room-row td i {
	margin:-5px 7.5px 0 0;
	position:relative;
	top:3px;
	color:#bbb;
	font-size:20px;
}
.room-row td ul i {
	font-size:16px;
	top:4px;
}
.room-row td button {
	height:25px;
	background:none;
	text-transform:none;
	font-size:0.9rem;
	margin-left:5px;
	padding:0 10px;
	font-family:"Raleway", Verdana, Geneva, sans-serif;
}
.room-row td button.btn-primary, .room-row td button.btn-primary:hover {background:none; background-color:var(--ndca-blue);}
.room-row td button.btn-danger, .room-row td button.btn-danger:hover {background:none; background-color:#cc0000;}

.no-items {
	color:#aaa;
	text-align:center;
	padding:60px 0;
}
.global-add-wrapper {
	text-align:left;
	margin-top:7.5px;
	padding-top:5px;
}
button.btn-add, button.btn-add:hover,
	.solo-cat-container button, .solo-cat-container button:hover,
	.search-container button, .search-container button:hover,
	#entries-summary-inner button, #entries-summary-inner button:hover,
	#purchase-summary-inner button, #purchase-summary-inner button:hover,
	#setup-page button, #setup-page button:hover,
	.button-row button, .button-row button:hover {
		font-family:Arial, Helvetica;
		text-transform:capitalize;
		font-size:0.9rem;
		height:30px;
		background:none;
		background-color:var(--ndca-blue);
		line-height:0;
}
button i {margin-right:5px;}

.search-container {
	width:100%;
	position:relative;
}
.search-container input, #wizard-reg-search, .wizard-form input, #reset-email-code {
	width:100%;
	padding-left:40px;
	border-radius:4px;
	height:40px;
	border:1px solid #aaa;
}
.search-container .fa-search {
	position:absolute;
	left:12px; top:9px;
	font-size:21px;
	color:#aaa;
}
.search-container button {
	position:absolute;
	right:6px; top:5px;
}
.search-container .fa-times {
	position:absolute;
	right:80px; top:5px;
	height:30px; line-height:30px;
	padding:0 7.5px;
	cursor:pointer;
	color:#ccc;
	display:none;
}

#entries-search-results {
	margin:10px 2.5px 30px 2.5px;
	background-color:rgba(255,255,255,0.33);
	border:1px solid #fff;
}
#entries-search-results > div {
	padding:45px 15px;
	margin:0 auto;
	width:100%;
	max-width:860px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	text-align:left;
}
#entries-search-results ul {
	list-style-type:none;
	margin:0;
	padding:15px;
	column-count:4;
}
@media(max-width:1300px) {#entries-search-results ul {column-count:3;}}
@media(max-width:1000px) {#entries-search-results ul {column-count:2;}}
@media(max-width:700px) {#entries-search-results ul {column-count:1;}}
#entries-search-results ul li {
	color:#666;
	display:flex;
	flex-direction:row;
	align-items:center;
	flex-wrap:nowrap;
	cursor:pointer;
}
#entries-search-results ul li i {
	width:15px;
	text-align:center;
}
#entries-search-results ul li span {
	margin-left:10px;
}
#entries-search-results ul li .status-icon {
	display:inline-block;
	text-align:center;
	font-size:0.75rem;
	text-transform:uppercase;
	border:1px solid #666;
	background-color:#fff;
	border-radius:3px;
	width:35px;
}

#entries-search-results > div.intro {
	padding:30px 0;
	display:block;
}
#entries-search-results > div.intro ul {
	display:block;
	list-style-type:disc;
	column-count:1;
	padding:0 0 0 30px;
}
#entries-search-results > div.intro ul li {
	display:list-item;
	margin:10px 0;
	cursor:default;
}

#team-members {
	height:40px;
	margin:10px 0;
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:center;
}
#team-members .team-pill {
	height:40px;
	background-color:#aaa;
	color:#fff;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	align-items:center;
	justify-content:space-between;
	border-radius:20px;
	padding:0 5px;
	font-weight:600;
}
#team-members .team-pill-m {
	background-color:#337ab7;
	background: -webkit-linear-gradient(top, #337ab7 0%, #004179 100%);
}
#team-members .team-pill-f {
	background-color:#c8281b;
	background: -webkit-linear-gradient(top, #cc0000 0%, #780000 100%);
}
#team-members .team-pill i {
	background-color:rgba(255,255,255,0.5);
	border-radius:100%;
	width:30px; height:30px;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
}
#team-members .team-pill-name {
	margin:0 10px;
}
#team-members .team-pill-role {
	width:30px;
	text-align:center;
	border-left:1px dotted #fff;
}
#team-members .partner-swapper {
	padding:0 15px;
	cursor:pointer;
	height:40px; line-height:40px;
}

.visible-with-teams {
	display:none;
}
#team-description {
	color:#666;
	font-size:0.9rem;
	text-align:center;
}
#team-description .team-warning {
	color:orange;
	padding:5px;
	margin-right:-2px;
	font-size:20px;
	line-height:0;
	cursor:pointer;
}
.tooltip {
	font-size:0.9rem;
	line-height:1.2rem;
	padding:5px;
}
.toggle-mixed-am {
	font-weight:600;
	display:inline-block;
	margin-left:5px;
	position:relative;
}
.toggle-mixed-am i {
	position:absolute;
	right:-20px;
}

#entry-form-events {
	background-color:#fff;
	margin-top:40px;
	padding:30px;
	box-shadow:0 0 10px rgba(0,0,0,0.1);
	border:1px solid #ccc;
}
#entry-form-event-categories {
	list-style-type:none;
	margin:0; padding:0;
}
#entry-form-event-categories > li {
	position:relative;
}
#entry-form-event-categories > li .expand-icon {
	font-size:18px;
	transition:0.2s ease-in-out;
	margin-right:13px;
	color:#000;
}
#entry-form-event-categories > li > a {
	display:flex;
	flex-direction:row;
	align-items:center;
	font-size:1.15rem;
	line-height:1rem;
	font-weight:600;
	width:0;
	white-space:nowrap;
	padding:3px 0;
	margin:8px 4px;
	transition:0.2s ease-in-out;
}
#entry-form-event-categories > li > a:hover, #entry-form-event-categories > li > a:focus {
	text-decoration:none;
}
#entry-form-event-categories > li > a .badge, .purchase-category .badge {
	width:38px;
	height:22px;
	border-radius:15px;
	background-color:#ddd;
	box-shadow:inset 0 0 1px 0 #aaa;
	color:#fff;
	font-weight:600;
	position:absolute;
	right:0; top:-2px;
	font-size:16px;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:0 0 3px 0;
}
#entry-form-event-categories > li > a .badge.has-entries, .purchase-category .badge.has-purchases {
	background-color:#337ab7;
}

#entry-form-event-categories > li .event-group {
	display:none;
	padding:0 0 30px 25px;
}
#entry-form-event-categories > li.expanded > a {
	border-bottom:1px solid #aaa;
	padding-bottom:2px;
	width:100%;
}
#entry-form-event-categories > li.expanded .expand-icon {
	transform:rotate(90deg);
}

.age-container-template, .age-container {
	display:none;
}
.age-picker {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	width:100%;
	margin-bottom:15px;
}
.age-picker > p {
	height:25px;
	margin:0 15px 0 -20px;
	white-space:nowrap;
}
.age-picker > p i {
	color:#337ab7;
	margin-right:10px;
}
.age-cat-list {
	list-style-type:none;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	margin:0; padding:0;
}
.age-cat-list li {
	margin:5px;
	padding:0 5px;
	border:1px solid #337ab7;
	border-radius:4px;
	white-space:nowrap;
	color:#337ab7;
	background-color:rgba(51, 122, 183, 0.05);
	cursor:pointer;
	transition:0.2s ease-in-out;
}
.age-cat-list li:hover {
	background-color:rgba(51, 122, 183, 0.2);
	transform:scale(105%);
}
.age-cat-list li.selected {
	background-color:#337ab7;
	color:#fff;
}
.age-cat-list li.has-entries {
	box-shadow:0 0 0 2px #337ab7;
}

.blink-1{-webkit-animation:blink-1 .5s forwards;animation:blink-1 .5s forwards}
@-webkit-keyframes blink-1{0%,100%{opacity:1}50%{opacity:0}}@keyframes blink-1{0%,100%{opacity:1}50%{opacity:0}}

.single-dance-grid-container {
	padding:15px 30px 15px 0;
	width:100%;
	overflow-x:scroll;
}
.single-dance-grid-outer-container {position:relative;}
.single-dance-grid-outer-container:after {
	content:"";
	position:absolute;
	right:0; top:0;
	width:30px; height:100%;
	pointer-events:none;
	background:rgb(255,255,255);
	background:-moz-linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background:-webkit-linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
}
.single-dance-grid {
	width:auto;
	margin:0 auto;
	border-collapse:collapse;
}
.single-dance-grid th, td {
	padding:4px 8px;
}
.single-dance-grid th {
	text-align:right;
	padding-right:10px;
	width:0;
	white-space:nowrap;
}
.single-dance-grid td {
	text-align:center;
	border:1px solid #ccc;
	cursor:pointer;
	transition:0.2s ease-in-out;
	white-space:nowrap;
}
.single-dance-grid td input, .single-dance-grid .single-dance-checkbox {
	margin:0 5px 0 0;
	width:15px; height:15px;
	position:relative;
	top:1.5px;
	pointer-events:none;
}
.single-dance-grid td input {display:none;}
.single-dance-grid .single-dance-checkbox {
	display:inline-block;
	border:1px solid #666;
	border-radius:3px;
}
.single-dance-grid td:hover, .multi-dance-list li:hover {
	background-color:rgba(51, 122, 183, 0.1);
}
.single-dance-grid td.checked, .multi-dance-list li.checked {
	background-color:rgba(51, 122, 183, 0.2);
}
.single-dance-grid td.previous-drop, .multi-dance-list li.previous-drop {
	background-color:#eee;
	text-decoration:line-through;
}
.single-dance-grid td.checked .single-dance-checkbox {
	background-color:#337ab7;
	border-color:#337ab7;
	color:#fff;
	font-weight:bold;
	position:relative;
	line-height:0;
	font-family:Arial, Helvetica, sans-serif;
	font-size:14px;
}
.single-dance-grid td.checked .single-dance-checkbox:before {
	content:"\2713";
	position:absolute;
	left:0; top:7px;
}
.single-dance-grid td.checked.proficiency .single-dance-checkbox:before {
	content:"P";
	left:1.5px;
}

.multi-dance-list {
	list-style-type:none;
	margin:0;
	padding:10px 0;
}
.multi-dance-list li {
	padding:0 5px;
	display:flex;
	flex-direction:row;
	align-items:center;
	cursor:pointer;
}
.multi-dance-list li input {
	width:15px; height:15px;
	margin:0 10px 0 0;
	pointer-events:none;
}

.solo-cats {padding-bottom:10px;}
.solo-entry {
	position:relative;
	padding:5px 0;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
}
.solo-entry input, .solo-entry select {
	padding:0 8px;
	height:30px;
	font-size:0.9rem;
	border:1px solid rgba(51, 122, 183, 0.5);
	border-radius:4px;
	background-color:rgba(51, 122, 183, 0.05);
}
.solo-entry .fa-times {
	position:absolute;
	left:-20px;
	width:30px; height:30px;
	line-height:30px;
	opacity:0;
	color:red;
	transition:0.2s ease-in-out;
	cursor:pointer;
}
.solo-entry:hover .fa-times {opacity:1;}
.solo-entry.dropped {display:none !important;}
.solo-entry .solo-dance {width:210px;}
.solo-entry .solo-time {width:105px; text-align:center;}
.solo-entry .solo-name {width:calc(100% - 330px);}

#no-events .fa-exclamation-triangle {
	color:#ccc;
	font-size:50px;
	float:left;
	margin:0 20px 25px 25px;
}
#no-events h5 {color:#000; margin-bottom:0;}
#no-events ul {clear:both;}
#no-events ul li {
	font-size:0.9rem;
	color:#999;
	margin-bottom:5px;
}

#entries-summary, #purchase-summary {
	opacity:0;
	pointer-events:none;
	width:100vw; height:80px;
	position:fixed;
	left:0; bottom:0;
	padding:0 15px 15px 15px;
	transition:0.25s ease-in-out;
	z-index:1000;
}
#entries-summary.visible, #purchase-summary.visible {
	opacity:1;
	pointer-events:auto;
}
#entries-summary-inner, #purchase-summary-inner {
	display:flex;
	flex-wrap:nowrap;
	flex-direction:row;
	justify-content:space-between;
	align-items:center;
	background-color:rgba(0, 40, 80, 0.6);
	backdrop-filter:blur(5px);
	-webkit-backdrop-filter:blur(5px);
	-moz-backdrop-filter:blur(5px);
	color:#fff;
	font-size:1.1rem;
	border-radius:5px;
	padding:15px 30px;
	width:100%; height:100%;
	border:1px solid #004179;
	box-shadow:inset 0 0 30px #004179;
}
#entries-summary-inner span, #purchase-summary-inner span {
	display:inline-block;
	margin-right:15px;
	padding-right:15px;	
	border-right:1px dotted #fff;
}
#entries-summary-inner span:last-child, #purchase-summary-inner span:last-child {
	border:none;
}
#entries-summary-inner button, #entries-summary-inner button:hover,
#purchase-summary-inner button, #purchase-summary-inner button:hover {
	height:40px;
	font-size:1rem;
	color:#fff;
	background:none;
	border:2px solid #fff;
	transition:0.2s ease-in-out;
	animation: shadow-pulse 1s infinite;
}
#entries-summary-inner button:hover, #purchase-summary-inner button:hover {
	transform:scale(105%);
	background-color:rgba(255,255,255,0.2);
	text-shadow:none;
	animation:none;
}
#entries-summary-inner button.disabled, #purchase-summary-inner button.disabled {
	opacity:0.25;
	pointer-events:none;
	animation:none;
}
#entries-summary-inner button.saving, #purchase-summary-inner button.saving {
	opacity:0.5;
	pointer-events:none;
	animation:none;
}
#entries-summary-inner i, #purchase-summary-inner i {margin-right:10px;}
#entries-summary-inner button.dismiss, #purchase-summary-inner button.dismiss {
	animation:none;
}
#entries-summary-inner .summary-message, #purchase-summary-inner .summary-message {
	display:flex;
	flex-direction:row;
	justify-content:center;
	align-items:center;
	width:100%;
}
#entries-summary-inner .summary-message i, #purchase-summary-inner .summary-message i {
	font-size:24px;
	margin-right:10px;
}

#content #purchases .purchase-category h5 {
	display:flex;
	flex-direction:row;
	align-items:flex-end;
	justify-content:flex-start;
	margin:10px 0 7.5px 0; padding:0;
	height:auto;
}
#content #purchases .purchase-category h5 input[type="checkbox"] {
	position:relative;
	bottom:4px;
	width:15px; height:15px;
	margin-right:10px;
	cursor:pointer;
}
.summary-qty-conatiner {
	font-size:0.9rem;
	color:#666;
	font-style:italic;
	margin-left:15px;
	line-height:23px;
}
.summary-purchase small {
	display:block;
	line-height:1rem;
	color:#666;
}
.summary-purchase.dropped {
	color:#666;
	text-decoration:line-through;
}

@keyframes shadow-pulse
{
	0% {
		box-shadow: 0 0 0 0 rgba(255,255,255,0.2);
		background-color:rgba(255,255,255,0.3);
	}
	100% {
		box-shadow: 0 0 0 35px rgba(255,255,255,0);
	}
}

/* override for vertically centered modal on non-mobile */
@media(min-width:768px) {
	.modal {
		text-align: center;
		padding: 0!important;
	}
	.modal:before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
		margin-right: -4px; /* Adjusts for spacing */
	}
	.modal-dialog {
		display: inline-block;
		text-align: left;
		vertical-align: middle;
	}
}

.modal-footer button, .modal-footer button:hover {
	height:40px;
	font-size:1.1rem;
	padding:0 15px;
	border-radius:5px;
	background:none;
	
}
.modal-footer button {
	border:2px solid rgba(255,255,255,0.5);
	transition:0.2s ease-in-out;
	margin:0 5px;
}
.modal-footer button:hover {
	background-color:rgba(255,255,255,0.1);
	border:2px solid #fff;
	transform:scale(105%);
}
.modal .close, .modal .close:hover {
	background:none !important;
}
.modal-send-icon {
	font-size:100px;
	color: #337ab7;
	opacity:0.33;
	float:left;
	margin:7.5px 30px 15px 5px;
}
#or-confirmation-modal .modal-body {
	padding:15px 30px;
}
#or-confirmation-summary {
	max-height:calc(100vh - 300px);
	margin:35px 0 15px 0;
	overflow-y:scroll;
	clear:both;
}
#or-confirmation-summary ul {
	list-style-type:none;
	padding:5px;
}
#or-confirmation-summary ul li {
	position:relative;
	display:flex;
	margin-bottom:2.5px;
}
#or-confirmation-summary ul li label {
	font-size:13px;
	text-transform:uppercase;
	border:2px solid #337ab7;
	border-radius:4px;
	margin-right:10px;
	width:80px; height:22px;
	text-align:center;
}
#or-confirmation-summary ul li span {
	width:calc(100% - 85px);
	line-height:1.2rem;
	padding-top:2px;
	margin-bottom:5px;
}


.panel-container {
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	margin-top:30px;
}
.panel-container .panel {
	position:relative;
	width:calc(50% - 15px);
	margin:45px 0;
	padding:15px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}
.panel-container h5 {
	text-align:center;
	color:#cc0000;
	margin-top:45px;
}
.panel-container p {
	font-size:0.9rem;
	color:#999;
	margin:30px 0;
}
.panel-container .panel-icon {
	display:flex;
	aligm-items:center;
	justify-content:center;
	position:absolute;
	left:calc(50% - 45px); top:-45px;
	font-size:42pt;
	width:90px; height:90px; line-height:85px;
	background-color:var(--ndca-blue);
	color:#fff;
	border-radius:100%;
}
.panel-container img.panel-icon {
	padding:10px;
}

@media(max-width:767px) {
	#setup-step-1 {height:auto;}
	#setup-step-1 h3 {margin-top:15px;}
	.panel-container {
		flex-direction:column;
		justify-content:flex-start;
		margin-top:15px;
	}
	.panel-container .panel {
		width:100%;
	}
	.panel-container p {height:auto; margin:0 0 15px 0;}
}
#setup-page .panel button, #setup-page .panel button:hover {
	width:100%; height:40px;
	font-size:1rem;
	border-radius:5px;
}
#setup-page button i {margin-right:10px;}
#setup-page button i.fa-angle-right {
	margin-right:0; margin-left:10px;
}

.setup-step-header {
	margin:15px 0 30px 0;
}
#setup-contact-form {
	margin-top:30px;
}
.form-row {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	position:relative;
}
.form-row label {
	width:130px; height:33.3px;
	text-align:right;
	padding:7.5px 10px 2.5px 0;
	white-space:nowrap;
}
.form-col {width:calc(100% - 140px);}
.form-row small, .form-col small {
	display: block;
	margin: -3px 0 3px 3px;
}
.form-row input, .form-row select {
	height:33.3px;
	width:100%;
	margin:3px 0;
	padding:0 7px;
}
.form-col.fr3 {
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:space-between;
	position:relative;
}
.form-col.fr3 > * {width:calc(33.3% - 7px);}
.form-row.fr3 > *:nth-child(3) {margin:3px 21px;}
.form-row.fr3 > div select, .form-row.fr3 > div input {
	width:100%;
	margin:0;
}

input.error, select.error {
	border:1px solid red;
	color:#000;
}

.form-row-search input {
	padding-left:35px;
}
.form-row-search .setup-search-icon {
	position:absolute;
	left:140px; top:10px;
	font-size:1.2rem;
}
.form-row-search .setup-search-icon.fa-search {color:#aaa;}
.form-row-search .setup-search-icon.fa-check {color:green;}
.form-row-search .search-button {
	position:absolute;
	right:13.5px; top:6px;
	width:auto; height:27.5px !important;
}
.form-row-search .search-results {
	position:absolute;
	left:0; top:37.5px;
	width:calc(100% - 140px); height:auto;
	margin-left:130px;
	background-color:#fff;
	border:1px solid #aaa;
	padding:10px;
	display:none;
	z-index:1000;
	box-shadow:0 2.5px 5px rgba(0,0,0,0.15);
}
.form-row-search .search-results ul {
	list-style-type:none;
	margin:0; padding:0;
}
.form-row-search .search-results ul li {line-height:25px; cursor:pointer;}
.form-row-search .search-results ul li:hover, .form-row-search .search-results ul li:hover i {color:#337ab7;}
.form-row-search .search-results ul li i {display:inline-block; width:30px; text-align:center; color:#aaa; font-size:16px; margin-right:10px;}
.form-row-search .search-results ul li i.fa-plus-circle {color:green;}

.button-row {
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:space-between;
	margin:30px 15px 30px 130px;
}

@media(max-width:767px) {
	.form-col.fr3 {
		flex-direction:column;
	}
	.form-col.fr3 > *  {
		width:100%;
		position:relative;
		margin:3px 0;
	}
	#setup-state-container {margin:3px 0;}
}
@media(max-width:670px) {
	.form-row label {display:none;}
	.form-col {
		width:100%;
		margin:3px 0;
	}
	.button-row {
		margin:30px 0;
	}
}

#school-search-container {
	
}
#reg-search-container .setup-search-icon, #school-search-container .setup-search-icon {
	left:10px;
}
#reg-search-container button, #school-search-container button {
	right:3.5px;
}
#reg-search-container .search-results, #school-search-container .search-results {
	width:100%;
	margin-left:0;
}
#setup-reg-search-results li, #setup-school-search-results li {
	display:flex;
	flex-direction:row;
	align-items:center;
}
#setup-school-search-results li div {width:40%;}
#setup-school-search-results li div:nth-child(3) {width:20%;}
#setup-reg-search-results li div {width:12%;}
#setup-reg-search-results li div:nth-child(3), #setup-reg-search-results li div:nth-child(5) {width:32%;}
#setup-reg-search-results li div img {width:22px; height:22px; object-fit:cover; margin:0 14px 0 4px; border-radius:100%;}
#setup-reg-search-results li div span {display:inline-block; margin-left:10px; width:75px;}

@media(max-width:900px) {
	#setup-school-search-results li div:nth-child(2) {width:75%;}
	#setup-school-search-results li div:nth-child(3) {width:25%;}
	#setup-school-search-results li div:last-child {display:none;}
}
@media(max-width:767px) {
	#setup-reg-search-results li div {width:calc(50% - 22.5px) !important;}
	#setup-reg-search-results li div:first-child {width:45px !important;}
	#setup-reg-search-results li div:nth-child(2), #setup-reg-search-results li div:nth-child(4) {display:none;}
}
@media(max-width:600px) {
	#setup-school-search-results li div:nth-child(2) {width:100%;}
	#setup-school-search-results li div:nth-child(3) {display:none;}
}
#setup-reg-snapshot, #setup-school-snapshot {
	position: relative;
	padding: 90px 15px 15px 15px;
	background-color: #fff;
	margin: 75px auto 60px auto;
	width: 100%;
	max-width:600px;
	display:flex;
	flex-direction:row;
}
#setup-reg-snapshot .fas, #setup-reg-snapshot img, #setup-school-snapshot .fas {
	border: 5px solid #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	font-size: 48px;
	width: 100px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #ccc;
	margin-right:15px;
	object-fit:cover;
}
#setup-reg-snapshot h4, #setup-school-snapshot h4 {margin-bottom:20px;}
#setup-reg-snapshot > div, #setup-reg-snapshot .fas, #setup-reg-snapshot img, #setup-school-snapshot > div, #setup-school-snapshot .fas {
	margin-top:-130px;
}
#setup-step-2 .button-row, #setup-step-5 .button-row {
	width:100%;
	margin:30px 0;
}


/* PURCHASES */

#purchase-form-category-container {
	padding:20px;
}
#purchase-form-category-container h5 {
	font-size:16pt;
	border-bottom:1px solid #ddd;
	position:relative;
}
#purchase-form-category-container h5 i {
	width:45px;
	margin-right:10px;
	font-size:24px;
	text-align:center;
}
#content .purchase-category .purchase-list ul {margin-bottom:45px;}
.purchase-item {
	margin-bottom:5px;
}
#content #pcat-3 .room-row td ul {margin-bottom:0; margin-top:0;}
#content #pcat-3 .room-row td ul li {margin-bottom:4px;}
.purchase-category ul li input[type="text"] {
	width:45px; height:27.5px;
	margin-right:10px;
	padding:0 5px;
	text-align:center;
	border:1px solid #aaa;
	border-radius:2px;
	font-size:14pt;
	font-weight:500;
}
.purchase-category ul li input[type="text"]::placeholder, .purchase-category textarea::placeholder  {
	color:#ccc;
	font-size:11pt;
}

#content .purchase-item .item-name {
	margin-top:3px;
	display:flex;
	flex-direction:column;
	
}
#content .purchase-item .item-name small {
	margin-top:-2px;
	color:#666;
	font-style:italic;
}

#content #pcat-3 .purchase-item {
	align-items:flex-start;
	height:auto;
}
#pcat-3 .purchase-item .fa-times {
	padding:5px;
	margin-right:5px;
	color:#ccc;
	transition:0.2s ease-in-out;
}
#pcat-3 .purchase-item .fa-times:hover {
	color:red;
}


#or-hotel-modal .form-row {
	margin:10px 0;
}
#or-hotel-modal .form-row, #or-hotel-modal .form-col {
	display:flex;
	flex-direction:row;
}
#or-hotel-modal .form-col > * {
	flex:1;
	margin-left:10px;
}
#or-hotel-modal .form-col > *:first-child {
	margin-left:0;
}

#or-hotel-modal label {
	width:150px;
	margin:0;
}
#or-hotel-modal input, #or-hotel-modal select, #or-hotel-modal textarea {
	margin:0;
	padding:5px 7.5px;
}
#or-hotel-modal textarea {
	width:100%;
	min-height:60px;
	text-align:left;
}




footer {position:relative; z-index:999;}
#footer-upper ul {
	width:500px;
	margin:0 auto;
}