body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}



body > .content {
    flex-grow: 1;
}
#catermonkey-shop {
    margin: 40px auto;
    border-radius: 15px 15px 15px 15px;
    padding: 25px;
    overflow: hidden;
    border-bottom-width: 5px !important;
    border-bottom-color: #f7a922 !important;
    box-shadow: 6px 6px 18px 0px rgba(0,0,0,0.3);
}

.cm-login-splash {
    margin: 0 auto;
}

#catermonkey-shop  h1,
#catermonkey-shop  h2,
#catermonkey-shop  h3,
#catermonkey-shop  h4,
#catermonkey-shop  h5 { 
	text-transform: uppercase;
}

.cm-specials {
    display: flex;
    flex-direction: row
}
.cm-specials > div {
    margin-right: 10px;
}
.cm-special-checkbox input {
    margin-right: 5px;
}
.cm-menu-nav,
.cm-webshop-main .cm-button,
.cm-webshop-main .cm-login-button,
.cm-order-completion-button,
.cm-checkout-button
{
    border: 1px solid #ccc;
    cursor: pointer;
    padding: 10px;

}


.cm-menu-nav {
	align-items: center;
	height: 100%;
}
.cm-login-button {
    height: 21px;
}
.cm-login-button {
    height: 32px;
}

.cm-order-completion-button:hover {
    background-color: 1px solid #ededed;
}

.cm-existing-customer-chooser {
    display: flex;
    justify-content: center;
}


.cm-login-wrap {
    margin-top: 20px;
}
.cm-existing-customer-chooser .cm-radio {
    margin-right: 30px;

}

.cm-checkout .cm-checkout-inner {
    display: grid;
    column-gap: 30px;
    grid-template-columns: 1fr 1fr;
}

.cm-checkout-inner h3 {
	display: none;
}

.cm-input-control input , .cm-input-control textarea,
.cm-password-field input {
    border: 1px solid #ededed !important;
}
.cm-password-fields {
    display: flex;
    gap: 20px;
    margin-top: 10px;
}

.cm-cannot-order {
    background-color: #ededed;
    cursor: not-allowed;
    color: #888;
}
.cm-toggle {
	color: white;
}

.cm-order-completion-button-wrap {
    margin-top: 30px;
}
.cm-order-completion-modal {
    background-color: #d6bdae !important;
    color: white !important;
        background-color: #fff !important;
	color: #333 !important;
	border: 1px solid black;
	box-shadow: 3px 3px 3px #555;

}
.cm-order-completion-modal .cm-checkout-button {
    background-color:
}

.cm-name-fields input {
    margin-right: 0px !important;
    width: auto !important;
}

.cm-name-fields .cm-input-control {
    display: flex;
    column-gap: 0px;
    align-items: baseline;
}
.cm-name-fields .cm-input-control .cm-label {
    display: block;
    width: 100% !important;
}


.cm-name-fields .cm-input-control .cm-input {
    flex-grow: 1;
}

.cm-input-error {
    text-align: center;
}
.cm-input-error-tooltip {
    background-color: #acacac !important;
    color: black !important;
}

.cm-input-control-error input {
    border-bottom: 1px solid red !important;;
}

.cm-name-fields .cm-input-control label {
    margin-bottom: 0px !important;
}


@media screen and (max-width: 768px) {

    .cm-name-fields, .cm-password-fields {
        flex-direction: column !important;
    }

    .cm-input-error-tooltip {
        right: 55% !important;
        left: inherit !important;
    }
}

.cm-warning {
    color: red !important;
    font-weight: normal !important;
}

.cm-comment-section {
    display: none !important;
}

.cm-menu-form {
    display: flex !important;
    column-gap: 20px;
    flex-direction: column;
    justify-content: center;
}
.cm-menu-intro {
   text-align: center;
}
.cm-order-completion-button-wrap,.cm-order-completion-title {
    display: flex;
    justify-content: center;
	
}
.cm-checkout-inner {
   display: flex;
   flex-direction: column;
   align-items: center;
}
.cm-checkout-inner .cm-credits {
	display: none;
}

.cm-checkout-button {
	margin-top: 20px;
	color: black !important;

}
.cm-menu-day h3 {
    font-size: 16px;
}

.cm-toggle-enabled {
    background-color: #74d16f;
}

.cm-toggle {
    width: 110px;
}
.cm-toggle-disabled {
    background-color: #c76a5a;
}


.cm-menu-product-row.cm-menu-employee-toggle {
    display: block !important;
}

.cm-menu-products {
    margin-bottom: 0px;
}

.cm-menu-day {

    padding: 20px !important;
}


.cm-diet-checkbox input {
    margin-right: 5px;
}


.cm-customer-type-person .cm-specials {
    flex-direction: column;
}

.cm-customer-type-company .cm-specials {
    flex-direction: row;
    gap: 20px;
}

.cm-customer-type-company {
	flex-direction: column;
}


.cm-customer-type-person .cm-menu-product-row {
}

@media screen and (min-width: 800px) {
        .cm-menu-product-row {
		gap: 10px;
	}
	.cm-customer-type-person .cm-menu-product-name {
		text-align: left;
	}
	.cm-customer-type-person .cm-menu-close-button {
		display: none;
	}
	.cm-menu-product-quantity-wrap.cm-menu-employee-toggle .cm-toggle { 
		width: 100%;
	}
	.cm-menu-product-quantity-wrap.cm-menu-employee-toggle { 
	}
    .cm-menu-product-row .cm-menu-product {
	}
	.cm-menu-product-row .cm-menu-location-selector {
	}
}

.cm-menu-add-extra-product {
	flex-direction: row;
	cursor: pointer;
	justify-content: space-between;
	margin-bottom: 10px;
	gap: 10px;
}

@media screen and (min-width: 1024px) {
	.cm-product-row-wrap {
           flex-direction: row;
	}
}
@media screen and (max-width: 800px) {

 .cm-menu-form {
	 flex-direction: column !important;
 }
 .cm-customer-type-person .cm-menu-product-row {
       justify-content: center !important;
       align-items: baseline;
 }
}


.cm-menu-header {
    margin-bottom: 20px;
}


@media screen and (max-width: 600px) {
	 .cm-menu-header, .cm-login-wrap {
		 flex-direction: column !important;
	 }
 }
 .cm-welcome-widget  {
	 text-align: center;
	 margin-bottom: 30px;
 }

.cm-save-for-future-checkbox input   {
    margin-right: 10px;
}

.cm-customer-type-company .cm-specials {
	flex-wrap: wrap;
}

.cm-checkout-inner > div > table tr {
	display: none;
}
.cm-checkout-inner > div > table tr:last-of-type {
	display: table;
}

.cm-checkout-inner > div > table tr:last-of-type td:first-of-type {
	display: none;
}
.cm-checkout-overlay {
   height: auto;
   background: none !important;
}

.cm-sub-row-total {
	font-weight: bold;
}
.cm-menu-add-extra-product-button .zmdi {
   margin-left: 10px;
}
.cm-login-splash > p {
	display: none !important; 
}
.cm-login-button { 
	width: 200px; 
}
.cm-forgot-password-button {
   margin-left: 0px !important;
}

/* place breakfast before extensive lunch, eventhough it's switched in the menu */
.cm-menu-products {
	display: flex;
	flex-direction: column;
}

.cm-menu-day {
}
.cm-menu-day.cm-menu-day-collapsed {
	max-height: 30px;
        overflow-y: hidden;
        transition: max-height 0.5s ease-out;
}

.cm-menu-day.cm-menu-day-expanded {
	    max-height: 5000px;
	    transition: max-height 0.5s ease-out;
}

.cm-menu-day > div:first-of-type {
	display: flex;
	justify-content: space-between;
}

.cm-menu-day .cm-expander {
    display: block;
    cursor: pointer;
    font-size: 22px;
}

.cm-employee-orders-table td {
  border-bottom: 1px solid #ccc;
  padding: 0px 11px;
}
.cm-employee-orders-table {
  border: 1px solid #ccc;
  margin-bottom: 20px;
  border-spacing: 0px;
}

.cm-employee-orders-table th {
   text-align: left;
}

.cm-bg-color-2 {
  background: rgba(100,100,100,0.5);
}
.cm-color-1 {
	color: #000;
}

.cm-product-add-button, .cm-checkout-button {
   color: white;
}

.cm-bg-color-1 {
    background: rgba(255,255,255,0.5) !important;
}
.cm-color-2 {
   color: white;
}
.cm-products-pre-text, .cm-checkout {
    margin-bottom: 0px;
}
.cm-products-post-text {
    margin-top: 0px;
}
.cm-product-quantity .cm-input {
	height: 100%;
}


.cm-checkout .cm-checkout-inner {
    grid-template-columns: 1fr;
}

.react-datepicker__navigation {

}

.react-datepicker__triangle {
	
}
.cm-products-section .cm-input-control-date {
       justify-content: center;
}

.cm-products-section .cm-input-control-date  label {
	width: auto;
	flex-grow: 0;
}
.cm-product-add-button-container { 
   gap: 20px;
}
.cm-input, .cm-password-field input  {
	border: 1px solid black;
}
.cm-diet-selector-checkboxes {
	display: flex;
	column-gap: 20px;
	flex-wrap: wrap;
}


.react-datepicker__input-container input {
	width: 200px;
}
textarea.cm-input-comment  {
	height: 125px;
}
	
.cm-previous-orders-widget {
    margin-top: 40px;
}

.cm-input-locations {
	width: 200px;
	padding-right: 23px;
}
.cm-login-wrap .form-control {
	height: 32px;
}

.cm-input  {
   padding: 10px !important;
}
.cm-password-fields {

}
.cm-password-field {
   display: flex;
   flex-direction: column;
   flex-wrap: wrap;
   column-gap: 0px;
   align-items: baseline;
}



.cm-product-row-wrap {
   display: flex;
   align-items: baseline;
   column-gap: 20px;
   flex-direction: column;
}

.cm-product-row-wrap > h4 {
    display: block;
    width: 200px;
    padding-bottom: 0px;
}

.cm-menu-product-quantity {
   border: 1px solid #ccc;
   width: 40px;
   height: 32px;
   text-align: center;
}
@media screen and (max-width: 600px) {
   .cm-login-wrap {
     flex-direction: column;
     row-gap: 20px;
   }
}
.cm-save-for-future-checkbox {
   display: none !important;
}
.cm-expander {
   display: none !important;
}
.cm-post-submit-buttons {
    display: flex;
    column-gap: 20px;
    align-items: baseline;
}

.cm-logout-button {
    height: 32px !important;
    padding: 0px 20px !important;
    display: block !important;
}
.cm-back-to-form-button {
   margin-top: 0px !important;
   color: black !important;
}

.cm-menu-products > div:nth-of-type(1n + 11) h4 { display: none; }

.variation-error {
   padding-left: 0.3em;
}

.cm-menu-product-container {
   min-width: 80%;
}

.cm-menu-custom-delivery-time-selector {
   margin-left: auto;
}

.cm-menu-location-selector {
   display: none;
}
