.aosInputDatepickerContainer
{
    position: relative;
    display: inline-block;
}
.aosInputDatepickerContainer .aosVisualDate {
    display: block;
    position: absolute;
    top: 1px;
    left: 1px;
    right: 1px;
    bottom: 1px;
    pointer-events: none;
    background-color: #fff;
}
.aosInputDatepickerContainer .aosInputDatepickerIcon::after
{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: "\f073";
    color: #000;
    position: absolute;
    margin-left: -18px;
    margin-top: 2px;
}
.aosInputDatepickerContainer .aosInputDatepickerCalendars
{
    display: none;
    position: absolute;
    border: 1px solid #000;
    left: 0;
    z-index: 50;
    background-color: #fff;
}
.aosInputDatepickerContainer .aosInputDatepickerCalendars.double {
    min-width: 650px;
}
.aosInputDatepickerContainer .aosInputDatepickerCalendar,
.aosInputDatepickerContainer .aosInputDatepickerCalendarTo
{
    padding: 10px;
    min-width: 300px;
    text-align: center;
    display: inline-block;
}
.aosInputDatepickerContainer .aosCalendarBackYear,
.aosInputDatepickerContainer .aosCalendarBackMonth,
.aosInputDatepickerContainer .aosCalendarNextYear,
.aosInputDatepickerContainer .aosCalendarNextMonth
{
    display: inline-block;
    width: 40px;
    text-decoration: none;
    color: #000;
}
.aosInputDatepickerContainer .aosCalendarBackYear::after,
.aosInputDatepickerContainer .aosCalendarBackMonth::after,
.aosInputDatepickerContainer .aosCalendarNextYear::after,
.aosInputDatepickerContainer .aosCalendarNextMonth::after 
{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: "\f053\f053";
    
}
.aosInputDatepickerContainer .aosCalendarBackMonth::after
{
    content: "\f053";
}
.aosInputDatepickerContainer .aosCalendarNextYear::after
{
    content: "\f054\f054";
}
.aosInputDatepickerContainer .aosCalendarNextMonth::after 
{
    content: "\f054";
}
.aosInputDatepickerContainer .aosCalendarCurrentMonth {
    min-width: 130px;
    display: inline-block;
}
.aosInputDatepickerContainer .aosCalendarInactiveDay,
.aosInputDatepickerContainer .aosCalendarBlockedDay,
.aosInputDatepickerContainer .aosCalendarDay {
    width: 39px;
}

.aosInputDatepickerContainer .today {
    border: 1px dashed #f00;
}
.aosInputDatepickerContainer .rangeActive {
    background-color: #ccf;
}
.aosInputDatepickerContainer .rangeBefore,
.aosInputDatepickerContainer .rangeAfter {
    background-color: #eee;
}
.aosInputDatepickerContainer .current a {
    color: #fff;
}
.aosInputDatepickerContainer .current {
    background-color: #aaa;
    font-weight: bold;
    color: #fff;
}
.aosInputDatepickerContainer .aosCalendarBlockedDay,
.aosInputDatepickerContainer .aosCalendarInactiveDay.aosCalendarBlockedDay {
    background-color: #eee;
    
}
.aosInputDatepickerContainer .aosCalendarDay a {
    display: block;
    text-decoration: none;
}
.aosInputDatepickerContainer .aosCalendarDay a:hover{
    background-color: #eef;
}
.aosInputDatepickerContainer .aosCalendarInactiveDay {
    background-color: #fff;
    color: #ccc;
}

input.aosInputIntPlusMinus {
    width: 30px;
    text-align: right;
    padding: 1px 5px;
}
div.aosInputIntPlusMinusContainer {
    display: inline-block;
    position: relative;
}
div.aosInputIntPlusMinusContainer input.updown {
    padding-right: 25px;
}
div.aosInputIntPlusMinusContainer input.updown.reverse {
    padding-left: 25px;
    padding-right: 5px;
}

div.aosInputIntPlusMinusContainer button.updown {
    position: absolute;
    right: 0;
    top: 0;
    height: 50%;
    font-size: 50%;
}
div.aosInputIntPlusMinusContainer button.updown.reverse {
    position: absolute;
    right: auto;
    left: 0;
    top: 0;
    height: 50%;
    font-size: 50%;
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus::after,
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonMinus::after
{
    font-family: 'Font Awesome 5 Free';
    font-weight: 400;
    content: "-";
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus::after
{
    content: "+";
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus.updown.arrows::after,
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonMinus.updown.arrows::after
{
    content: "\f0d7";
    font-weight: 900;
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus.updown.arrows::after
{
    content: "\f0d8";
}
div.aosInputIntPlusMinusContainer button.updown.aosInputIntPlusMinusButtonMinus {
    top: auto;
    bottom: 0;
}

div.aosInputIntPlusMinusContainer input
{
    width: 30px;
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus::after,
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonMinus::after
{
    line-height: 17px;
}
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonPlus,
div.aosInputIntPlusMinusContainer button.aosInputIntPlusMinusButtonMinus
{
    background-color: #fff;
    border: 1px solid #000;
}

.aosInputRadioLabel::after,
.aosInputCheckboxLabel::after
{
    font-family: 'Font Awesome 5 Free';
    font-weight: 400;
    content: "\f111";
    display: inline-block;
    margin-right: 3px;
}
.aosInputRadioLabel.checked::after {
    content: "\f192";
}
.aosInputCheckboxLabel::after {
    content: "\f0c8";
}
.aosInputCheckboxLabel.checked::after {
    content: "\f14a";
}
.aosInputCheckboxLabel.disabled::after {
    color: #aaa;
}
.aosInputCheckboxLabel.switch {
    transform-style: preserve-3d;
    transition-duration: 0.3s;
    display: inline-block;
    border: 1px solid #000;
    border-radius: 14px;
    width: 28px;
    height: 14px;
}
.aosInputCheckboxLabel.switch::after {
    transform-style: preserve-3d;
    transition-duration: 0.3s;
    display: inline-block;
    background-color: #000;
    border-radius: 100%;
    content: "\00a0";
    height: 12px;
    width: 12px;
    margin-top: 1px;
    margin-left: 1px;
}
.aosInputCheckboxLabel.checked.switch {
    background-color: #aaa;
}
.aosInputCheckboxLabel.checked.switch::after {
    margin-left: 15px;
}
.aosInputCheckboxLabel.disabled.switch {
    border: 1px solid #aaa;
    background-color: #ccc;
}
.aosInputCheckboxLabel.disabled.switch::after {
    background-color: #aaa;
}
.aosInputCheckboxLabel.checked.disabled.switch {
    border: 1px solid #aaa;
    background-color: #ccc;
}
.aosInputCheckboxLabel.checked.disabled.switch::after {
    background-color: #aaa;
}

.aosInputCheckboxLabel.labelled.switch::after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: "\f061";
    background-color: #000;
    color: #fff;
    font-size: 8px;
    height: 8px;
    width: 8px;
    padding: 2px;
}
.aosInputCheckboxLabel.labelled.switch.checked::after {
    
}
.switchCheckboxState::after {
    font-family: arial, sans, verdana;
    content: "Off";
    font-size: 8px;
    position: absolute;
    margin-left: -14px;
    margin-top: 4px;
    color: #999;
    pointer-events: none;
    z-index: 50;
}
.switchCheckboxState.active::after {
    content: "On";
    margin-left: -27px;
    color: #000;
}
