.Calendar-DateButton {
    position: relative;

    display: flex;
    flex: 1 0 auto;
    justify-content: center;
    align-items: center;

    box-sizing: border-box;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;

    font-size: inherit;
    line-height: inherit;
    cursor: pointer;

    border: 0;
    outline: none;
    background: none;
    -moz-user-focus: ignore;
}

.Calendar-Date {
    z-index: 0;
}

.Calendar-DateButton::before {
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';
}

.Calendar-DateButton_disabled[class] {
    pointer-events: none;
}

.Calendar-DateButton_hidden[class] {
    visibility: hidden;
}

.Calendar-DateButton_rangeSelected::after,
.Calendar-DateButton_rangePreview::after {
    position: absolute;
    z-index: -2;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';
}
