/* Modals and messages */

/**************************************************/
/* Message boxes */

/* Generic/shared */
.message {
	border:1px solid #38f;
	background:#bdf;
	/*padding:0 10px 10px;*/
	padding:4px 1em;
	margin-bottom:10px;
	box-sizing: border-box;
}
.message h2,
.error h2 {
	font-size:11pt;
	line-height:11pt;
	margin:-4px -10px 0;
	padding:0.25em 0.5em 0.25em 0.5em;
}
.message h2 {
	border-bottom:1px solid #38f;
	background:#9bf;
}


/* Error message */
.error {
	border-color:#f33;
	background-color:#fcc;
}
.error h2 {
	border-bottom:1px solid #f33;
	background:#f66;
}

/**************************************************
Modal div */

#modal {
	display:none;
	/*max-width:90%;*/
	position:relative;
	min-width:20em;
}
#modal h1,
#modal h2 {
	margin-top:0;
}

/* Close button */
#modal .simplemodal-close {
	/*float:right;*/
	position:absolute;
	right:0.5em;
	cursor:pointer;
	font-size:12pt;
}

/* Error messages within the modal */
#modal .errorMsg {
	font-weight:bold;
}

/* Reset label coloring (looks funny sometimes) */
#modal label,
#modal .label {
	color:#000;

}


/**************************************************
Forms / tables inside */

#modal table {
	border:none;
	border-collapse:collapse;
	font-size:10pt;
	width:100%;
}
#modal table caption {
	border:none;
	font-weight:bold;
	font-size:11pt;
	line-height:11pt;
	margin:0;
	padding:0.25em 0.5em 0.25em 0.5em;
	border-bottom:1px solid #38f;
	background:#9bf;
}
#modal table td,
#modal table th {
	border-bottom:1px solid #9bf;
	padding:5px;
	vertical-align:top;
}

/* Cell divider (puts extra border on left side) */
#modal table th.divider,
#modal table td.divider {
	border-left:1px solid #9bf;
}

#modal table label {
	display:block;
	margin-bottom:0.2em;

}

/* Date picker... */
#modal #datePicker {
	z-index:2000; /* Clear the modal */
}
/*#modal input.datePicker {
	width:8em;
}
*/
#modal .datePickerLink {
	background: none;
	/*background-image:url('../images/icons/volunteerTracker/calendarIconVol.jpg'); /* Need SOMETHING there */
}

/* Form itself */
#modal form {
	margin:0 -10px; /* So that heading is flush with the modal */
}
#modal textarea {
	width:100%;
}

/***************************
  Tutorial Modal CSS
***************************/

.tutorial-modal {
	text-align: center;
}

.tutorial-modal > .cell {
  padding: 0 25px 25px 25px;
  text-align: center;
}

.tutorial-modal .videos {
  width: 80%;
  margin: 0 auto;
  text-align: center;
  padding: 20px 0;
  border: 1px solid #000;
  border-left-width: 10px;
  box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.3);
  background-color: #FFF;
}

.tutorial-modal .videos video + * {
  margin-top: 40px !important;
}

.hs-modal .tutorial-modal h2 {
  padding-top: 40px;
  padding-bottom: 10px;
}

.hs-modal .tutorial-modal h3 {
  padding-bottom: 10px;
}

.tutorial-modal .helpDesc {
  width: 80%;
  margin: 0 auto;
  text-align: left;
  border: 1px solid #000;
  border-left-width: 10px;
  box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.3);
  background-color: #FFF;
}

.tutorial-modal .helpDesc > article {
  max-height: 400px;
  overflow: auto;
  padding: 0 30px;
}

.tutorial-modal .helpDesc > article > div {
  padding: 30px 0; 
}


/***************************
  New Highslide Modal
***************************/

.modal-title {
  display: none;
}

.modal-logo {
  height: 105px;
  width: 105px;
  background-color: #FFF;
  display: none;
  border-radius: 50%;
  position: absolute;
  top: -65px;
  left: 0;
  -webkit-transform: translateX(-50%);
  -moz-transform:    translateX(-50%);
  -ms-transform:     translateX(-50%);
  -o-transform:      translateX(-50%);
  transform:         translateX(-50%);
  box-shadow: 0 0px 5px 1px rgba(0,0,0,0.3);
}

.modal-logo.no-float {
  position: relative;
  top: 0px;
  box-shadow: none;
  background-color: #F1F3F5;
  -webkit-transform: translateX(0);
  -moz-transform:    translateX(0);
  -ms-transform:     translateX(0);
  -o-transform:      translateX(0);
  transform:         translateX(0);
  width: 100%;
  border-radius: 0;
  z-index: 0;
}

.modal-logo:after {
  content: "";
  display: block;
  height: 105px;
  width: 71px;
  position: absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin: auto;
  background: url(../images/logos/mission-tracker-small.png) no-repeat scroll top left transparent;
  -webkit-transform: translateX(6px) scale(0.8);
  -moz-transform:    translateX(6px) scale(0.8);
  -ms-transform:     translateX(6px) scale(0.8);
  -o-transform:      translateX(6px) scale(0.8);
  transform:         translateX(6px) scale(0.8);
}

.modal-logo.no-float:after {
  background-position: center top;
  width: 100%;
}

.help-text > .cell {
  padding: 35px 25px 25px 25px;
}

.help-text .videos {
  width: 300px;
  padding-bottom: 100px;
}

.help-text .videos * {

}

.help-text .videos video + * {
  margin-top: 40px !important;
}

.hs-modal .help-text h2 {
  padding-bottom: 10px;
}

.hs-modal .help-text h3 {
  padding-bottom: 10px;
}

.help-text .helpDesc {
  border: 1px solid #000;
  border-left-width: 10px;
  box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.3);
  background-color: #FFF;
}

.help-text .helpDesc > article {
  max-height: 400px;
  overflow: auto;
  padding: 0 30px;
}

.help-text .helpDesc > article > div {
  padding: 30px 0; 
}

.help-text .help-faqs {
  padding-top: 40px;
}

.help-text .help-faqs ul {
  list-style: none;
  display: block;
  margin: 0;
  padding: 0;
}

.help-text .help-faqs ul > li {
  position: relative;
  display: block;
  list-style: none;
  font-size: 14px;
  padding: 20px;
}

.help-text .help-faqs ul > li:before {
  content: "Question:";
  display: inline-block;
  font-family: Rockwell,Arial,Helvetica,sans-serif;
  font-size: 20px;
  padding: 0 6px 0 0;
}

.help-text .help-faqs ul > li + li {
  margin-top: 10px;
}

.help-text .help-faqs ul > li:nth-child(odd) {
  background: #C4C5C7;
}

.help-text .help-faqs ul > li:nth-child(even) {
  border: 1px solid rgba(196, 197, 199, 1);
  background: #FFF;
}
.help-text .help-faqs .faq-answer {
  display: block;
  margin-top: 12px;
  padding: 15px 15px 0 0;
  position: relative;
}

.help-text .help-faqs .faq-answer:before {
  content: "Answer:";
  display: inline-block;
  font-family: Rockwell,Arial,Helvetica,sans-serif;
  font-size: 20px;
  padding-right: 6px;
}

#checkin .tinymodal-content {
  min-width: 0 !important;
}


#service > table > tbody > tr > td {
  padding: 45px 30px 30px 30px;
  vertical-align: middle;
}

#service > .modal-logo + table > tbody > tr > td {
  padding: 10px 30px 30px 30px;
}

#service > table > tbody > tr > td > h2 {
  display: none;
}

#service form {
  display: block;
}

#service form h3,
#service form button {
  white-space: nowrap;
  display: block;
	text-align: left;
	position: relative;
}
#service form h3 {
	background-color: #96b83d;
	color: #FFF;
	padding: 15px 46px 15px 26px;
	text-transform: uppercase;
	border-left: 1px solid #96b83d;
	border-right: 1px solid #96b83d;
}

#service form h3 span {
  display: block;
	width: 14px !important;
	height: 14px;
	position: absolute;
	right: 10px;
	top:0;
	bottom: 0;
	margin: auto;
	-webkit-transform: rotate(0);
  -moz-transform:    rotate(0);
  -ms-transform:     rotate(0);
  -o-transform:      rotate(0);
  transform:         rotate(0);
	transition: all 0.3s ease 0s;
}

#service form h3.active span {
	-webkit-transform: rotate(135deg);
  -moz-transform:    rotate(135deg);
  -ms-transform:     rotate(135deg);
  -o-transform:      rotate(135deg);
  transform:         rotate(135deg);
}

#service form h3 span:before,
#service form h3 span:after {
	content: "";
	display: block;
	background-color: #fff;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	position: absolute;
}

#service form h3 span:before {
	height: 14px;
	width: 4px;
}

#service form h3 span:after {
	width: 14px;
	height: 4px;
}

#service .goal-expand td {
  padding: 0px;
  border: none !important;
}

#service .goal-list + .goal-list {
  margin-top: 4px;
}

#service .rt-goal-sublist {
  border-right: 1px solid #96b83d;
	background-color: #fff;
}

#service .rt-goal-sublist,
#service .rt-goal-sublist ul {
  margin: 0 !important;
  padding: 0 !important;
}

#service .rt-goal-sublist > li {
	border-left: 3px solid #96b83d;
}

#service .rt-goal-sublist > li > ul > li {
	border-left: 6px solid #96b83d;
}

#service .rt-goal-sublist > li > ul > li > ul > li {
	border-left: 10px solid #96b83d;
}

#service form .rt-goal-sublist > li.rt-toggle ul {
  display: none;
}

#service form .rt-goal-sublist > li.rt-toggle {
	position: relative;
}

#service .rt-goal-sublist button {
  border-radius: 0;
  box-shadow: none;
  background-color: transparent !important;
  border: none;
  font-family: Arial;
  color: #3e3f3e;
  text-shadow: none;
  font-size: 16px;
  padding: 15px 26px;
  border-bottom: 1px solid #96b83d;
}

#checkin .person-check table tbody tr td:first-child {
  width: 50% !important;
}

#service li.rt-toggle button span {
  display: block;
  height: 15px;
  width: 9px;
  right: 12px;
  top: 0;
  bottom: 0;
  margin: auto;
  position: absolute;
  -webkit-transform: rotate(0);
  -moz-transform:    rotate(0);
  -ms-transform:     rotate(0);
  -o-transform:      rotate(0);
  transform:         rotate(0);
  transition: all 0.3s ease 0s;
}

#service li.rt-toggle button.open span {
  -webkit-transform: rotate(90deg);
  -moz-transform:    rotate(90deg);
  -ms-transform:     rotate(90deg);
  -o-transform:      rotate(90deg);
  transform:         rotate(90deg);
}

/* "Shopping" Kiosk Modal Styles */
#shopping input {
	border-radius: 0;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

#mt-items-shop .date-field {
	margin-top:25px;
}
#mt-items-shop .date-field h3 {
	margin-bottom:5px;
}
#mt-items-shop .date-field .datePicker {
	height:30px;
	width:130px;
	margin-left:0;
	margin-right:2px;
	padding:4px 6px;
	border:2px solid #a3a3a3;
}

#mt-items-shop .date-field #dateLink {
	background-size:cover;
	background-position: center;
	height:35px;
	width:45px;
}

#mt-items-shop > .cell,
#mt-shop-login > .cell {
  padding: 50px 25px 25px 30px;
}

#mt-items-shop > .cell > .table {
  margin-top: 30px;
}

#mt-items-shop > .cell > h1 {
  border-bottom: 2px solid #000;
  padding-bottom: 5px;
  padding-left: 10px;
}

#mt-items-shop .header-row .cell + .cell {
  width: 270px;
}

#mt-items-shop .row + .row > .cell {
  padding-top: 20px;
}

#mt-items-shop p,
#mt-items-shop label {
  font-size: 20px;
  color: #252022 !important;
}

#mt-items-shop [class*="mt-items"] {
  display: inline-block;
  height: 40px;
  width: 40px;
  background: rgba(255,255,255,1);
  background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255,255,255,1)), color-stop(47%, rgba(246,246,246,1)), color-stop(100%, rgba(237,237,237,1)));
  background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%);
  background: -o-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%);
  background: -ms-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%);
  background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed', GradientType=0 );
  border-radius:12px;
  border: 2px solid #a3a3a3;
  vertical-align: middle;
  position: relative;
}

#mt-items-shop [class*="mt-items"] + [class*="mt-items"] {
  margin-left: 10px;
}

#mt-items-shop .mt-items-reset {
  font-size: 18px;
  color: #252022;
  line-height: 14px;
  width: auto;
  padding: 14px 9px;
  height: auto;
}

#mt-items-shop [class*="mt-items"]:active {
  box-shadow: inset -2px 4px 12px -2px rgba(0,0,0,0.3);
  border-color: #898989;
  overflow: hidden;
}

#mt-items-shop .mt-shop-qty {
  font-size: 0;
}

#mt-items-shop .mt-shop-name {
  padding-right: 35px;
}

#mt-items-shop .mt-shop-input,
#mt-items-shop .datePicker {
  display: inline-block;
  height: 40px;
  width: 55px;
  text-align: center;
  vertical-align: middle;
  border: 2px solid #a3a3a3;
  font-size: 20px;
  margin: 0px 10px;
  padding:0;
}

#mt-items-shop section.table {
  margin-bottom: 30px;
}

#mt-items-shop .mt-items-plus:before,
#mt-items-shop .mt-items-plus:after,
#mt-items-shop .mt-items-minus:after {
  content:"";
  display: block;
  background: #252022;
  position: absolute;
  top:0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

#mt-items-shop .mt-items-plus:before {
  height: 18px;
  width: 4px;
}

#mt-items-shop .mt-items-plus:after {
  height: 4px;
  width: 18px;
}

#mt-items-shop .mt-items-minus:after {
  height: 4px;
  width: 18px;
}

#mt-shop-login input:not([type="submit"]) {
  display: block;
  font-size: 22px;
  line-height: 22px;
  margin: 0 auto;
  max-width: 700px;
  padding: 20px 14px;
  width: 100%;
  border: 1px solid #dcdcdc;
  background-color: #ededed;
  border-radius: 6px;
  box-shadow: 0 1px 0 0 #ffffff inset;
  box-sizing: border-box;
}
#mt-shop-login p:not(.msg):not(.error),
#mt-shop-login label {
  font-size: 24px;
  text-align: center;
}

#mt-shop-login p.error {
  color: #ff0000 !important;
}

#mt-shop-login {
  text-align: center;
}

#mt-items-shop input[type="submit"],
#mt-shop-login input[type="submit"] {
  display: inline-block;
  font-size: 22px;
  line-height: 22px;
  margin: 10px auto 0;
  padding: 20px 14px;
  width: auto;
  height: auto;
  border: 1px solid #414141;
  background-color: #515151;
  border-radius: 6px;
  box-shadow: -1px -2px 0 0 #000000 inset;
  box-sizing: border-box;
  color: #FFF;
  cursor: pointer;
  text-shadow: 0 0 0 rgba(0,0,0,0.3);
}
#mt-items-shop input[type="submit"]:active,
#mt-shop-login input[type="submit"]:active {
  box-shadow: 1px 2px 1px 0 #000000 inset;
  text-shadow: none;
}

#mt-items-shop .item + .item {
  margin-top: 30px;
}

#mt-items-shop .sale-col-right {
  padding-left: 25px
}

#mt-items-shop .sale-col-left {
  padding-right: 25px;
}

@media screen and (max-width:480px){
  .message {
    margin-top: 20px;
  }
}