.picker { position: absolute; z-index: $top-base; user-select: none; } .picker__box { background-clip: padding-box; background-color: $white; border-radius: 4px; box-shadow: 0 1px 30px rgba(0, 0, 0, 0.5); outline: 0; overflow: hidden; position: relative; vertical-align: middle; z-index: 1; @include clearfix(); // 992 @include responsive(md) { &:before { background-color: $brand-color; border-radius: 4px 0 0 4px; content: ""; display: block; height: 100%; position: absolute; top: 0; left: 0; width: (($grid-gutter + $line-height * 2 * 7) / 2); z-index: -1; } } } .picker__date-display { background-color: $brand-color; border-radius: 4px 4px 0 0; color: $white; padding: ($line-height / 2) $grid-gutter; text-align: left; // 992 @include responsive(md) { border-radius: 4px 0 0 0; float: left; width: (($grid-gutter + $line-height * 2 * 7) / 2); } } .picker__date-display-bottom { font-size: $font-size-h2; line-height: $line-height-h2; } .picker__date-display-top { color: $brand-color-light; font-weight: $font-weight-light; margin-bottom: ($line-height / 4); } .picker__day { border-radius: 50%; display: inline-block; height: ($line-height * 1.5); padding: ($line-height / 4) 0; width: ($line-height * 1.5); &:focus, &:hover { color: $link-color; cursor: pointer; } &.picker__day--selected { background-color: $brand-color; color: $white !important; } &.picker__day--today { color: $brand-color; } } .picker__day-display { margin-right: ($grid-gutter / 2); } .picker__day--outfocus { color: $white-bg-dark; } .picker__footer { clear: both; padding: ($line-height / 2) ($grid-gutter / 2); button { margin-left: ($grid-gutter / 2); &:first-child { margin-left: 0; } } // 480 @include responsive(xs) { text-align: right; } } .picker__frame { display: inline-block; margin: ($line-height * 2) auto; max-width: ($grid-gutter + $line-height * 1.5 * 7); transform: scale(0, 0); transition: all 0.3s $timing; transition-property: transform; vertical-align: middle; white-space: normal; .picker--opened & { transform: scale(1, 1); } // 480 @include responsive(xs) { max-width: ($grid-gutter + $line-height * 1.75 * 7); } // 992 @include responsive(md) { max-width: (($grid-gutter + $line-height * 2 * 7) * 1.5); } } .picker__header { margin: ($line-height / 2) ($grid-gutter / 2) ($line-height / 4); position: relative; // 992 @include responsive(md) { float: left; margin-top: ($line-height / 4); margin-right: 0; margin-left: 0; width: ($grid-gutter + $line-height * 14); } } .picker__holder { backface-visibility: hidden; overflow-x: hidden; overflow-y: auto; position: fixed; top: 100%; right: 0; bottom: 0; left: 0; text-align: center; transition: background-color 0.3s $timing, top 0s linear 0.3s; white-space: nowrap; width: 100%; -webkit-overflow-scrolling: touch; -ms-overflow-style: -ms-autohiding-scrollbar; &:after { content: ""; display: inline-block; height: 100%; vertical-align: middle; width: 1px; } .picker--opened & { background-color: rgba(0, 0, 0, 0.5); // position top: 0; transition: background-color 0.3s $timing, top 0s linear 0s; } } .picker__input { background-color: transparent !important; border-bottom-style: solid !important; color: $black-text !important; cursor: text !important; &.picker__input--active { border-color: $link-color; border-bottom-width: 2px; &.form-control-default { border-bottom-width: 1px; } } } .picker__month, .picker__year { display: inline; margin-left: $grid-gutter; &:first-child { margin-left: 0; } } .picker__nav--next, .picker__nav--prev { cursor: pointer; line-height: $line-height; margin-top: ($line-height / -2); position: absolute; top: 50%; text-align: center; width: ($line-height * 1.5); &:focus, &:hover { color: $link-color; } // 480 @include responsive(xs) { width: ($line-height * 1.75); } // 992 @include responsive(md) { width: ($line-height * 2); } } .picker__nav--next { // position right: 0; &:before { content: "keyboard_arrow_right"; } // 992 @include responsive(md) { right: ($grid-gutter / 2); } } .picker__nav--prev { // position left: 0; &:before { content: "keyboard_arrow_left"; } // 992 @include responsive(md) { left: ($grid-gutter / 2); } } .picker__select--month, .picker__select--year { @extend .form-control; border-bottom: 0; display: inline-block; height: $line-height; margin-left: $grid-gutter; padding-top: 0; padding-bottom: 0; width: auto; &:first-child { margin-left: 0; } } @media only screen and (-webkit-min-device-pixel-ratio: 0) { select.picker__select--month, select.picker__select--year { background-position: 100% 50%; } } .picker__table { border-collapse: collapse; border-spacing: 0; margin: 0 ($grid-gutter / 2); table-layout: fixed; // 992 @include responsive(md) { float: left; margin: 0; } } .picker__table td, .picker__table th { border: 0; font-size: floor($font-size * 0.9); line-height: $line-height; margin: 0; padding: 0; text-align: center; vertical-align: middle; width: ($line-height * 1.5); // 480 @include responsive(xs) { width: ($line-height * 1.75); } // 992 @include responsive(md) { width: ($line-height * 2); &:first-child { padding-left: ($grid-gutter / 2); width: ($grid-gutter / 2 + $line-height * 2); } &:last-child { padding-right: ($grid-gutter / 2); width: ($grid-gutter / 2 + $line-height * 2); } } } .picker__weekday { color: $black-hint; font-weight: $font-weight-light; } .picker__weekday-display { margin-right: ($grid-gutter / 2); &:after { content: ","; } // 992 @include responsive(md) { display: block; } }