td:not(.calendar td) > a, div.readonly > a { text-decoration: underline; }
th:not(.calendar th) > a, div.readonly > a { text-decoration: underline; }

div.readonly > a:has(.material-symbols-outlined),
div.readonly > a:has([class^="material-symbols"]),
div.readonly > a:has([class*=" material-symbols"]) {
    text-decoration: none !important;
}

input.js-meeting-datetime-picker.flatpickr-input {
    padding: 0.5rem 0.75rem;
    width: min(100%, 42rem);
    min-width: 13rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    line-height: 1.25rem;
}

input.js-meeting-datetime-picker.flatpickr-input:focus {
    outline: 2px solid #2563eb;
    outline-offset: -2px;
}

.dark input.js-meeting-datetime-picker.flatpickr-input {
    background-color: #111827;
    border-color: #374151;
    color: #f3f4f6;
}

.flatpickr-calendar {
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
    background: #2563eb;
    border-color: #2563eb;
}

.flatpickr-day.today {
    border-color: #2563eb;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
    background: #e5e7eb;
}

.dark .flatpickr-calendar {
    background-color: #111827;
    border-color: #374151;
    color: #f3f4f6;
    box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.45), 0 4px 6px -4px rgb(0 0 0 / 0.45);
}

.dark .flatpickr-months .flatpickr-month,
.dark .flatpickr-current-month .flatpickr-monthDropdown-months,
.dark .flatpickr-weekday {
    color: #f3f4f6;
}

.dark .flatpickr-day {
    color: #e5e7eb;
}

.dark .flatpickr-day:hover,
.dark .flatpickr-day:focus {
    background-color: #1f2937;
}

.dark .flatpickr-time .numInputWrapper span.arrowUp:after,
.dark .flatpickr-time .numInputWrapper span.arrowDown:after {
    border-bottom-color: #9ca3af;
    border-top-color: #9ca3af;
}

.dark .flatpickr-time input:hover,
.dark .flatpickr-time .flatpickr-am-pm:hover,
.dark .flatpickr-time input:focus,
.dark .flatpickr-time .flatpickr-am-pm:focus {
    background: #1f2937;
}
