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"/>'); opacity:1; }

::placeholder { color:#A8A8A8; opacity:1; } /* Good browsers */
::-ms-input-placeholder { color:#A8A8A8; isolation:auto;opacity:1; } /* Edge */
:-ms-input-placeholder { color:#A8A8A8!important; opacity:1;} /* IE10-11 */
:required { background-repeat:no-repeat; background-position:right 1em center; background-size:0.8em; 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; opacity:1;}
select:required { padding-right:1em; }
select option:enabled { color:black; opacity:1; }

form fieldset,
form fieldset * { box-sizing:border-box; }

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:60; padding:0.35em 0.4em; }
form fieldset div.formfields > .half { flex-basis:48%; flex-grow:30; }
form fieldset div.formfields > .third { flex-basis:31.33%; flex-grow:20; }
form fieldset div.formfields > .quarter { flex-basis:23%; flex-grow:15; }
form fieldset div.formfields > .fifth { flex-basis:20%; flex-grow:12; }
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: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; -webkit-appearance:none; }
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:white; padding:0.6em 2.5em 0.6em 0.6em; box-shadow:2px 9px 6px -7px rgba(0, 0, 0, 0.2); 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:1em; height:2em; text-align:center; 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 label.datewrap select { background-color:initial; box-shadow:none; color:black; padding:0 0 0 0.3em; }

form fieldset div.formfields button { cursor:pointer; font-size:1.1em; text-transform:uppercase; background-color:#498612; color:white; text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.43); position:relative; }
form fieldset div.formfields button:after { display:none; content:"\f054"; font-family:'Font Awesome 5 Pro',FontAwesome; position:absolute; right:0.6em; top:calc(50% - 0.5em); height:1em; }

form fieldset div.formfields label.datewrap input[type="checkbox"] {width:1em; height:1em; padding:0; margin-right:0.6em; border:2px solid black; }
form fieldset div.formfields label.datewrap input[type="checkbox"]::before {content:""; width:1em; height:1em; display:block; font-family:'Font Awesome 5 Pro',FontAwesome; font-size:1.2em; line-height:1em; margin:-0.275em 0em 0em -0.1em; text-shadow:0 2px white, 0 -2px white; font-weight:bold; }
form fieldset div.formfields label.datewrap input[type="checkbox"]:checked::before { content:"\F00C"; }

form fieldset div.formfields label.datewrap input[type="radio"] {width:1em; height:1em; padding:0; margin-right:0.6em; border:2px solid black; }
form fieldset div.formfields label.datewrap input[type="radio"]::before {content:""; width:1em; height:1em; display:block; font-family:'Font Awesome 5 Pro',FontAwesome; font-size:1.2em; line-height:1em; margin:-0.275em 0em 0em -0.1em; text-shadow:0 2px white, 0 -2px white; font-weight:bold; }
form fieldset div.formfields label.datewrap input[type="radio"]:checked::before { content:"\F00C"; }

form fieldset div.formfields label.datewrap span { color:black; white-space:normal; }
