@adobe/spectrum-css
Version:
The Spectrum CSS top-level backwards compatible package
473 lines (376 loc) • 19.6 kB
CSS
.spectrum-Calendar {
--spectrum-calendar-border-radius-reset: 0;
--spectrum-calendar-border-width-reset: 0;
--spectrum-calendar-margin-y: 24px;
--spectrum-calendar-margin-x: 32px;
--spectrum-calendar-width: calc((var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) + var(--spectrum-calendar-day-padding, 4px) * 2) * 7);
--spectrum-calendar-button-gap: var(--spectrum-global-dimension-size-40);
--spectrum-calendar-title-text-letter-spacing: var(--spectrum-detail-m-text-letter-spacing, var(--spectrum-global-font-letter-spacing-medium));
}
.spectrum-Calendar {
width: var(--spectrum-calendar-width, 250px);
display: inline-block;
}
.spectrum-Calendar--padded {
margin: var(--spectrum-calendar-margin-x) var(--spectrum-calendar-margin-y);
}
.spectrum-Calendar-header {
display: -ms-flexbox;
display: flex;
width: 100%;
-ms-flex-align: center;
align-items: center;
}
.spectrum-Calendar-title {
font-size: var(--spectrum-calendar-title-text-size, var(--spectrum-global-dimension-font-size-300));
font-weight: bold;
line-height: var(--spectrum-calendar-title-height, var(--spectrum-global-dimension-static-size-400));
margin: 0;
-ms-flex-order: 1;
order: 1;
-ms-flex-positive: 1;
flex-grow: 1;
text-align: center;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
[dir="ltr"] .spectrum-Calendar .spectrum-Calendar-prevMonth,[dir="ltr"]
.spectrum-Calendar .spectrum-Calendar-nextMonth,[dir="rtl"]
.spectrum-Calendar .spectrum-Calendar-prevMonth,[dir="rtl"]
.spectrum-Calendar .spectrum-Calendar-nextMonth {
margin: 0 var(--spectrum-calendar-button-gap);
}
[dir="rtl"] .spectrum-Calendar-prevMonth,[dir="rtl"]
.spectrum-Calendar-nextMonth { transform: matrix(-1, 0, 0, 1, 0, 0) ; }
.spectrum-Calendar-prevMonth {
-ms-flex-order: 0;
order: 0;
}
.spectrum-Calendar-nextMonth {
-ms-flex-order: 2;
order: 2;
}
.spectrum-Calendar-dayOfWeek {
display: -ms-flexbox;
display: flex;
-ms-flex-direction: column;
flex-direction: column;
-ms-flex-pack: end;
justify-content: flex-end;
height: 100%;
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
border-bottom: none ;
font-size: var(--spectrum-calendar-day-title-text-size, var(--spectrum-global-dimension-font-size-50));
font-weight: var(--spectrum-calendar-day-title-text-font-weight, var(--spectrum-global-font-weight-medium));
text-transform: uppercase;
text-decoration: none ;
cursor: default;
}
.spectrum-Calendar-dayOfWeek[title] {
border-bottom: none;
text-decoration: underline;
text-decoration: underline dotted;
letter-spacing: var(--spectrum-calendar-title-text-letter-spacing);
}
.spectrum-Calendar-body {
outline: none;
}
.spectrum-Calendar-table {
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
.spectrum-Calendar-tableCell {
text-align: center;
padding: 0;
position: relative;
box-sizing: content-box;
height: var(--spectrum-calendar-day-height, var(--spectrum-global-dimension-size-400));
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
padding: var(--spectrum-calendar-day-padding, 4px);
}
.spectrum-Calendar-tableCell:focus {
outline: 0;
}
[dir="ltr"] .spectrum-Calendar-date {
left: 0;
}
[dir="rtl"] .spectrum-Calendar-date {
right: 0;
}
.spectrum-Calendar-date {
position: absolute;
display: block;
top: 0;
box-sizing: border-box;
height: var(--spectrum-calendar-day-height, var(--spectrum-global-dimension-size-400));
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
margin: var(--spectrum-calendar-day-padding, 4px);
border-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
border: var(--spectrum-calendar-day-border-size-key-focus, 2px) solid transparent;
font-size: var(--spectrum-calendar-day-text-size, var(--spectrum-alias-font-size-default));
line-height: calc(var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) - var(--spectrum-calendar-day-border-size-key-focus, 2px) * 2);
white-space: nowrap;
cursor: pointer;
}
.spectrum-Calendar-date:lang(ja),
.spectrum-Calendar-date:lang(zh),
.spectrum-Calendar-date:lang(ko) {
font-size: var(--spectrum-calendar-day-text-size-han, var(--spectrum-global-dimension-font-size-50));
}
.spectrum-Calendar-date.is-disabled {
cursor: default;
pointer-events: none;
}
.spectrum-Calendar-date.is-outsideMonth {
visibility: hidden;
}
[dir="ltr"] .spectrum-Calendar-date:before {
left: calc(50% - var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) / 2);
}
[dir="rtl"] .spectrum-Calendar-date:before {
right: calc(50% - var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) / 2);
}
.spectrum-Calendar-date:before {
content: "";
position: absolute;
top: calc(50% - var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) / 2);
box-sizing: border-box;
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
height: var(--spectrum-calendar-day-height, var(--spectrum-global-dimension-size-400));
border-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
border: var(--spectrum-calendar-day-border-size-key-focus, 2px) solid transparent;
}
.spectrum-Calendar-date.is-selected:not(.is-range-selection) {
font-weight: var(--spectrum-calendar-day-text-font-weight-selected, var(--spectrum-global-font-weight-bold));
}
.spectrum-Calendar-date.is-selected:not(.is-range-selection):before {
display: none;
}
.spectrum-Calendar-date.is-today {
font-weight: var(--spectrum-calendar-day-today-text-font-weight, var(--spectrum-global-font-weight-bold));
}
.spectrum-Calendar-date.is-range-selection {
margin: var(--spectrum-calendar-day-padding, 4px) 0;
border-width: var(--spectrum-calendar-border-width-reset);
line-height: var(--spectrum-calendar-day-height, var(--spectrum-global-dimension-size-400));
border-radius: var(--spectrum-calendar-border-radius-reset);
width: calc(var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) + var(--spectrum-calendar-day-padding, 4px) * 2);
}
.spectrum-Calendar-date.is-range-selection.is-range-start,
.spectrum-Calendar-date.is-range-selection.is-range-end,
.spectrum-Calendar-date.is-range-selection.is-selection-start,
.spectrum-Calendar-date.is-range-selection.is-selection-end {
width: calc(var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400)) + var(--spectrum-calendar-day-padding, 4px));
}
.spectrum-Calendar-date.is-range-selection.is-selection-start,
.spectrum-Calendar-date.is-range-selection.is-selection-end {
font-weight: var(--spectrum-calendar-day-text-font-weight-cap-selected, var(--spectrum-global-font-weight-bold));
}
.spectrum-Calendar-date.is-range-selection.is-selection-start:after, .spectrum-Calendar-date.is-range-selection.is-selection-end:after {
position: absolute;
top: 0;
display: block;
height: var(--spectrum-calendar-day-height, var(--spectrum-global-dimension-size-400));
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
border-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
content: "";
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
padding-right: var(--spectrum-calendar-day-padding, 4px);
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
padding-left: var(--spectrum-calendar-day-padding, 4px);
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
margin-left: var(--spectrum-calendar-day-padding, 4px);
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
margin-right: var(--spectrum-calendar-day-padding, 4px);
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
border-top-left-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
border-top-right-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
border-bottom-left-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-start,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start {
border-bottom-right-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-start:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-range-start:after,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-start:after {
left: 0;
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-start:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-range-start:after,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-start:after {
right: 0;
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
padding-left: var(--spectrum-calendar-day-padding, 4px);
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
padding-right: var(--spectrum-calendar-day-padding, 4px);
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
margin-right: var(--spectrum-calendar-day-padding, 4px);
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
margin-left: var(--spectrum-calendar-day-padding, 4px);
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
border-top-right-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
border-top-left-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
border-bottom-right-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end {
border-bottom-left-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-range-end:after,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:after {
left: auto;
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-range-end:after,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:after {
right: auto;
}
[dir="ltr"] .spectrum-Calendar-date.is-range-selection.is-range-end:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-range-end:after,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:before,[dir="ltr"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:after {
right: 0;
}
[dir="rtl"] .spectrum-Calendar-date.is-range-selection.is-range-end:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-range-end:after,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:before,[dir="rtl"]
.spectrum-Calendar-date.is-range-selection.is-selection-end:after {
left: 0;
}
.spectrum-Calendar-date.is-range-selection.is-selection-start.is-selection-end,
.spectrum-Calendar-date.is-range-selection.is-selection-start.is-range-end,
.spectrum-Calendar-date.is-range-selection.is-selection-end.is-range-start,
.spectrum-Calendar-date.is-range-selection.is-range-start.is-range-end {
width: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
border-radius: var(--spectrum-calendar-day-width, var(--spectrum-global-dimension-size-400));
}
.spectrum-Calendar-prevMonth {
color: var(--spectrum-calendar-button-icon-color, var(--spectrum-global-color-gray-700));
}
.spectrum-Calendar-nextMonth {
color: var(--spectrum-calendar-button-icon-color, var(--spectrum-global-color-gray-700));
}
.spectrum-Calendar-dayOfWeek {
color: var(--spectrum-calendar-day-title-text-color, var(--spectrum-global-color-gray-700));
}
.spectrum-Calendar-date:hover {
color: var(--spectrum-calendar-day-text-color-hover, var(--spectrum-global-color-gray-900));
}
.spectrum-Calendar-date:hover:not(.is-selection-end):not(.is-selection-start):before {
background: var(--spectrum-calendar-day-background-color-hover, var(--spectrum-alias-highlight-hover));
}
.spectrum-Calendar-date:hover.is-selected {
color: var(--spectrum-calendar-day-text-color-selected-hover, var(--spectrum-global-color-gray-900));
}
.spectrum-Calendar-date:hover.is-selected:not(.is-selection-end):not(.is-selection-start):before {
background: var(--spectrum-calendar-day-background-color-selected-hover, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date:hover.is-range-selection:before {
background: var(--spectrum-calendar-day-background-color-selected-hover, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date:active {
background-color: var(--spectrum-calendar-day-background-color-down, var(--spectrum-alias-highlight-active));
}
.spectrum-Calendar-date.is-selected {
color: var(--spectrum-calendar-day-text-color-selected, var(--spectrum-global-color-gray-900));
background: var(--spectrum-calendar-day-background-color-selected, var(--spectrum-alias-highlight-selected));
}
.spectrum-Calendar-date.is-selected:not(.is-range-selection) {
background: var(--spectrum-calendar-day-background-color-cap-selected, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date.is-today {
color: var(--spectrum-calendar-day-today-text-color, var(--spectrum-global-color-gray-800));
border-color: var(--spectrum-calendar-day-today-border-color, var(--spectrum-global-color-gray-800));
}
.spectrum-Calendar-date.is-today:before {
border-color: var(--spectrum-calendar-day-today-border-color, var(--spectrum-global-color-gray-800));
}
.spectrum-Calendar-date.is-today:hover.is-selected:not(.is-range-selection):before {
background: var(--spectrum-calendar-day-today-background-color-selected-hover, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date.is-today.is-disabled {
color: var(--spectrum-calendar-day-today-text-color-disabled, var(--spectrum-global-color-gray-500));
border-color: var(--spectrum-calendar-day-today-border-color-disabled, var(--spectrum-global-color-gray-400));
}
.spectrum-Calendar-date.is-today.is-disabled:before {
border-color: var(--spectrum-calendar-day-today-border-color-disabled, var(--spectrum-global-color-gray-400));
}
.spectrum-Calendar-date.is-focused:not(.is-range-selection) {
background: var(--spectrum-calendar-day-background-color-key-focus, var(--spectrum-alias-highlight-hover));
border-color: var(--spectrum-calendar-day-border-color-key-focus, var(--spectrum-alias-focus-color));
color: var(--spectrum-calendar-day-text-color-key-focus, var(--spectrum-global-color-gray-900));
}
.spectrum-Calendar-date.is-focused:not(.is-range-selection).is-today {
border-color: var(--spectrum-calendar-day-border-color-key-focus, var(--spectrum-alias-focus-color));
}
.spectrum-Calendar-date.is-focused:not(.is-range-selection):active,
.spectrum-Calendar-date.is-focused:not(.is-range-selection).is-selected {
color: var(--spectrum-calendar-day-text-color-selected, var(--spectrum-global-color-gray-900));
background: var(--spectrum-calendar-day-background-color-cap-selected, var(--spectrum-alias-highlight-selected-hover));
border-color: var(--spectrum-calendar-day-border-color-key-focus, var(--spectrum-alias-focus-color));
}
.spectrum-Calendar-date.is-focused.is-selected:before {
background: var(--spectrum-calendar-day-background-color-selected-hover, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date.is-focused.is-range-selection:before {
background: var(--spectrum-calendar-day-background-color-selected-hover, var(--spectrum-alias-highlight-selected-hover));
}
.spectrum-Calendar-date.is-focused:before {
border-color: var(--spectrum-calendar-day-border-color-key-focus, var(--spectrum-alias-focus-color));
}
.spectrum-Calendar-date.is-disabled {
color: var(--spectrum-calendar-day-text-color-disabled, var(--spectrum-global-color-gray-500));
}
.spectrum-Calendar-date.is-selection-start,
.spectrum-Calendar-date.is-selection-end {
color: var(--spectrum-calendar-day-text-color-cap-selected, var(--spectrum-global-color-gray-900));
}
.spectrum-Calendar-date.is-selection-start:after, .spectrum-Calendar-date.is-selection-end:after {
background-color: var(--spectrum-calendar-day-background-color-selected, var(--spectrum-alias-highlight-selected));
}
.spectrum-Calendar-date.is-selection-start.is-disabled, .spectrum-Calendar-date.is-selection-end.is-disabled {
color: var(--spectrum-calendar-day-text-color-disabled, var(--spectrum-global-color-gray-500));
}