/* dark-mode-polish.css — Kalender dark-mode color-leak fixes
   Scoped exclusively under html[data-theme="dark"] / [data-theme="dark"]. */

/* ── Approved dark tokens ── */
[data-theme="dark"] {
  --btn-primary-bg: #4A7A68;
  --btn-primary-bg-hover: #3D6B57;
  --btn-primary-fg: #ffffff;
  --surface-raised: #2b2a27;
  --surface-sunken: #1f1e1c;
  --hairline: rgba(255, 255, 255, 0.08);
  --hairline-strong: rgba(255, 255, 255, 0.14);
}

/* ── Primary dark buttons ── */
[data-theme="dark"] .cal-body .fc-addEvent-button,
[data-theme="dark"] .cal-body .fc-addEvent-button.fc-button,
[data-theme="dark"] .cal-body .fc-addEvent-button.fc-button.fc-button-primary {
  background: var(--btn-primary-bg) !important;
  border-color: var(--btn-primary-bg) !important;
  color: var(--btn-primary-fg) !important;
}

[data-theme="dark"] .cal-body .fc-addEvent-button:hover {
  background: var(--btn-primary-bg-hover) !important;
  border-color: var(--btn-primary-bg-hover) !important;
}

[data-theme="dark"] .nl-result .btn-primary,
[data-theme="dark"] .cal-drawer-footer .btn-primary {
  background: var(--btn-primary-bg) !important;
  border-color: var(--btn-primary-bg) !important;
  color: var(--btn-primary-fg) !important;
}

[data-theme="dark"] .nl-result .btn-primary:hover,
[data-theme="dark"] .cal-drawer-footer .btn-primary:hover {
  background: var(--btn-primary-bg-hover) !important;
  border-color: var(--btn-primary-bg-hover) !important;
}

/* ── Toolbar dark buttons ── */
[data-theme="dark"] .cal-body .fc-prev-button,
[data-theme="dark"] .cal-body .fc-next-button,
[data-theme="dark"] .cal-body .fc-today-button,
[data-theme="dark"] .cal-body .fc-filterCats-button,
[data-theme="dark"] .cal-body .fc-viewDropdown-button {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: var(--hairline-strong) !important;
  opacity: 1 !important;
}

[data-theme="dark"] .cal-body .fc-prev-button:hover,
[data-theme="dark"] .cal-body .fc-next-button:hover,
[data-theme="dark"] .cal-body .fc-today-button:hover:not(:disabled),
[data-theme="dark"] .cal-body .fc-filterCats-button:hover,
[data-theme="dark"] .cal-body .fc-viewDropdown-button:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
}

/* ── Quick-add dark card ── */
[data-theme="dark"] .cal-quick-add-card {
  background: #2b2a27 !important;
  border-color: var(--hairline) !important;
}

[data-theme="dark"] .cal-quick-add-input {
  background: transparent !important;
}

[data-theme="dark"] .cal-quick-add-actions {
  background: #1f1e1c !important;
  border-top-color: var(--hairline) !important;
}

/* ── Grid hairlines ── */
[data-theme="dark"] .cal-body .fc-scrollgrid td,
[data-theme="dark"] .cal-body .fc-scrollgrid th {
  border-color: var(--hairline) !important;
}

[data-theme="dark"] .cal-body .fc-col-header-cell {
  border-bottom-color: var(--hairline-strong) !important;
}

/* ── Today cell ── */
[data-theme="dark"] .cal-body .fc-daygrid-day.fc-day-today {
  background: rgba(74, 122, 104, 0.10) !important;
}

[data-theme="dark"] .cal-body .fc-daygrid-day.fc-day-today .fc-daygrid-day-number {
  background: var(--btn-primary-bg) !important;
  color: var(--btn-primary-fg) !important;
}

/* ── Other-month numbers ── */
[data-theme="dark"] .cal-body .fc-day-other .fc-daygrid-day-number {
  color: rgba(200, 190, 178, 0.50) !important;
}

/* ── Event chips ── */
[data-theme="dark"] .cal-body .fc-event {
  border-color: transparent !important;
}

[data-theme="dark"] .cal-body .fc-event .fc-event-title,
[data-theme="dark"] .cal-body .fc-event .fc-event-time {
  color: var(--cat-text, #E8DDD4) !important;
}

/* ── Generic controls: selects, inputs in dark ── */
[data-theme="dark"] .cal-drawer-body select.input,
[data-theme="dark"] .cal-drawer-body input.input,
[data-theme="dark"] .cal-drawer-body textarea.input {
  background: var(--surface-raised) !important;
  border-color: var(--hairline-strong) !important;
  color-scheme: dark;
}

[data-theme="dark"] .cal-drawer-body select.input:hover,
[data-theme="dark"] .cal-drawer-body input.input:hover,
[data-theme="dark"] .cal-drawer-body textarea.input:hover {
  border-color: rgba(255, 255, 255, 0.20) !important;
}

/* ── Popovers ── */
[data-theme="dark"] .cal-event-popup,
[data-theme="dark"] .cal-filter-popover,
[data-theme="dark"] .cal-view-dropdown-menu {
  background: var(--surface-raised) !important;
  border-color: var(--hairline-strong) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.50) !important;
}

/* ── Scrollbars ── */
[data-theme="dark"] .cal-body .fc-scroller::-webkit-scrollbar-track {
  background: transparent;
}

[data-theme="dark"] .cal-body .fc-scroller::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.10);
  border-radius: 4px;
}

[data-theme="dark"] .cal-body .fc-scroller::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.18);
}

/* ── Selection highlight ── */
[data-theme="dark"] .cal-body .fc-highlight {
  background: rgba(74, 122, 104, 0.12) !important;
  border-color: rgba(74, 122, 104, 0.18) !important;
}

/* ── Chrome autofill ── */
[data-theme="dark"] .cal-drawer-body input:-webkit-autofill,
[data-theme="dark"] .cal-drawer-body input:-webkit-autofill:hover,
[data-theme="dark"] .cal-drawer-body input:-webkit-autofill:focus {
  -webkit-text-fill-color: #E8DDD4 !important;
  -webkit-box-shadow: 0 0 0 1000px var(--surface-raised) inset !important;
  transition: background-color 5000s ease-in-out 0s;
}
