/* Сетка дней не зависит от отсутствующей в старой сборке утилиты grid-cols-7. */
[data-radix-popper-content-wrapper] > :has(> .grid-cols-7) {
  width: 288px;
  max-width: calc(100vw - 16px);
  max-height: min(360px, calc(100dvh - 16px), var(--radix-popover-content-available-height, 360px));
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  scrollbar-width: thin;
  scrollbar-gutter: stable;
  -webkit-overflow-scrolling: touch;
}

[data-radix-popper-content-wrapper] > :has(> .grid-cols-7) > .grid-cols-7 {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

[data-radix-popper-content-wrapper] > :has(> .grid-cols-7) > .grid-cols-7 > label {
  min-width: 0;
  min-height: 36px;
  gap: 3px;
}

[data-radix-popper-content-wrapper] .grid-cols-7 [role="checkbox"] {
  border: 1px solid #94a3b8;
  background: #0b1220;
  flex-shrink: 0;
}

html.light-ui [data-radix-popper-content-wrapper] .grid-cols-7 [role="checkbox"] {
  border-color: #64748b;
  background: #ffffff;
}

[data-radix-popper-content-wrapper] .grid-cols-7 [role="checkbox"][data-state="checked"] {
  background: #bdff00 !important;
  border-color: #172005 !important;
  color: #172005 !important;
}

/* Цвет выбора из «Бородачи — склад». Подложку рисует только кнопка даты. */
.rdp {
  --ga-calendar-lime: #bdff00;
  --ga-calendar-ink: #172005;
  --ga-calendar-range: #bdff0033;
}

.rdp table[role="grid"] td {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.rdp button[role="gridcell"] {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.rdp button[role="gridcell"]:not(:disabled):hover {
  background: var(--ga-calendar-range) !important;
  color: var(--ga-calendar-lime) !important;
}

.rdp button[role="gridcell"].bg-accent:not([aria-selected="true"]) {
  color: var(--ga-calendar-lime) !important;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.rdp button[role="gridcell"][aria-selected="true"] {
  background: var(--ga-calendar-range) !important;
  color: var(--ga-calendar-lime) !important;
  opacity: 1 !important;
}

.rdp button[role="gridcell"][aria-selected="true"]:is(.day-range-start, .day-range-end),
.rdp button[role="gridcell"][aria-selected="true"]:not([class~="aria-selected:bg-accent"]) {
  background: var(--ga-calendar-lime) !important;
  color: var(--ga-calendar-ink) !important;
  font-weight: 600;
}

.rdp button[role="gridcell"]:focus-visible {
  outline: 2px solid var(--ga-calendar-lime);
  outline-offset: 2px;
}

html.light-ui .rdp {
  --ga-calendar-range: #bdff0059;
}

html.light-ui .rdp button[role="gridcell"]:not(:disabled):hover,
html.light-ui .rdp button[role="gridcell"][aria-selected="true"],
html.light-ui .rdp button[role="gridcell"].bg-accent:not([aria-selected="true"]) {
  color: var(--ga-calendar-ink) !important;
}

/* Зазор между заливками сохраняет полную область нажатия 32 × 32 px. */
.rdp table[role="grid"] button[role="gridcell"][aria-selected] {
  border: 3px solid transparent !important;
  background-clip: padding-box !important;
  border-radius: 8px;
}
