input[type=date] { position:relative; -moz-appearance:textfield; }
input[type=date]::-webkit-datetime-edit-year-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-month-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-day-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-week-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-hour-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-minute-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-second-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-millisecond-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-datetime-edit-ampm-field:focus { background-color:inherit; color:inherit; text-shadow:0 0 1px white; }
input[type=date]::-webkit-clear-button,
input[type=date]::-webkit-inner-spin-button { display:none; }
input[type=date]::-webkit-date-and-time-value { display:inline; }
input[type=date]::-webkit-calendar-picker-indicator { width:100%; color:transparent; position:absolute; height:100%; left:0; top:0; padding:0; }
input[type=date]::-webkit-calendar-picker-indicator:hover { background-color:transparent; }

input[type=number]::-webkit-textfield-decoration-container { height:100%; }
/*input[type=number] { -moz-appearance:textfield; }*/

select { background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"/>'); }

::placeholder { color:#A8A8A8; opacity:1; } /* Good browsers */
::-ms-input-placeholder { color:#A8A8A8; } /* Edge */
:-ms-input-placeholder { color:#A8A8A8!important; } /* IE10-11 */
:required {background-repeat:no-repeat;background-position:right 1em center;background-size:1em;background-image:url(/ccms/images/input-invalid.svg);}
:required:valid { background-image:url(/ccms/images/input-valid.svg); }
textarea:required { background-position:right 1em top 0.8em; }
select:invalid { color:#A8A8A8; }
select:required { padding-right:1em; }
select option:enabled { color:black; }

form fieldset { margin:0; padding:0; border:none; }
form fieldset legend { display:none; }
form fieldset div.formfields { display:flex; flex-wrap:wrap; }
form fieldset div.formfields > div { flex-basis:100%; flex-grow:12; padding:0.35em 0.4em; }
form fieldset div.formfields > .half { flex-basis:48%; flex-grow:6; }
form fieldset div.formfields > .third { flex-basis:31.33%; flex-grow:4; }
form fieldset div.formfields > .quarter { flex-basis:23%; flex-grow:3; }
form fieldset div.formfields > .vpad { padding:1.2em 0.4em; }

@media (max-width:600px) {
	form fieldset div.formfields > .half,
	form fieldset div.formfields > .third,
	form fieldset div.formfields > .quarter { flex-basis:100%; }
}

form fieldset div.formfields input {display:block;width:100%;outline:none;border:none;background-color: #e1f8ff;padding:0 0 0 0.6em;box-shadow: inset 1px 1px 7px 0px rgba(0, 0, 0, 0.15);border-radius:0.15em;line-height:normal;height:2.5em;-webkit-appearance:none;}
form fieldset div.formfields input[type=checkbox] {display:inline-block; width:inherit;  height:inherit;  outline:inherit; -webkit-appearance:checkbox;}
form fieldset div.formfields select { display:block; width:100%; outline:none; border:none; background-color:white; padding:0 0 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:normal; height:2.5em; }
form fieldset div.formfields textarea {display:block;width:100%;outline:none;border:none;background-color: #e1f8ff;padding:0.6em 2.5em 0.6em 0.6em;box-shadow: inset 1px 1px 7px 0px rgba(0, 0, 0, 0.15);border-radius:0.15em;line-height:1.4em;resize:vertical;-webkit-appearance:none;}
form fieldset div.formfields button {display:block;width:100%;outline:none;border:none;padding:0 1.7em 0 0.6em;box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2);border-radius:0.15em;line-height: 1.1em;height:2em;text-align:left;vertical-align:middle;}
form fieldset div.formfields label.datewrap { display:flex; white-space:nowrap; align-items:center; background-color:white; padding:0 0 0 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); border-radius:0.15em; line-height:normal; height:2.5em; color:#A8A8A8; }
form fieldset div.formfields label.datewrap input { background-color:initial; box-shadow:none;color:black; padding:0 0 0 0.3em; }
form fieldset div.formfields label.datewrap input[type=date] { height:initial; }

form fieldset div.formfields button {font-size: 1em;text-transform:uppercase;background-color: #44a5c2;color:white;text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.43);position:relative; transition:0.3s;}
form fieldset div.formfields button:after { content:"\f054"; font-family:"Font Awesome 5 Pro"; position:absolute; right:0.6em; top:calc(50% - 0.5em); height:1em; }
form fieldset div.formfields button:hover {    background-color: #3db4d8;}
