.CalendarModal { .modal-dialog { max-width: 26.25rem; .modal-content { padding: 0.375rem 1rem 1rem; } } .timepicker { display: flex; align-items: center; justify-content: center; margin-bottom: 1.5rem; .form-control { max-width: 5rem; text-align: center; &:first-child { margin-right: 1rem; } &:last-child { margin-left: 1rem; } } } .footer { display: flex; flex-direction: column; justify-content: flex-end; .description { min-height: 2.75rem; margin-bottom: 1rem; margin-left: 1rem; font-size: 0.875rem; color: var(--color-text-secondary); } .Button { text-transform: none; + .Button { margin-top: 0.5rem; } } } .month-selector { display: flex; align-items: center; h4 { flex: 1; margin: 0 0 0 1.25rem; font-size: 1.25rem; & ~ .Button { color: var(--color-primary); } @media (max-width: 600px) { margin-left: 0.75rem; } } .Button.hidden { pointer-events: none; opacity: 0.5; } } .day-button { position: relative; margin: 0.125rem 0.625rem; border-radius: 4rem; font-weight: var(--font-weight-medium); outline: none !important; &::before { content: ""; display: block; padding-top: 100%; } &.weekday { height: 1rem; margin-bottom: 0; } &.clickable { cursor: var(--custom-cursor, pointer); &:hover { background-color: var(--color-interactive-element-hover); } &.selected { color: white; background-color: var(--color-primary); } } &.disabled { pointer-events: none; opacity: 0.25; } span { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 0.875rem; } @media (max-width: 600px) { margin: 0.25rem 0.375rem; } } .calendar-wrapper { display: flex; align-items: center; justify-content: center; min-height: 17rem; margin: 1.5rem -0.5rem 0.5rem; } .calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); width: 100%; } }