:root {
  --kamala-background-color: #FFF;
  --kamala-background-color-hover: #EEE;
  --kamala-border-color-sharp: #CCC;
  --kamala-border-color-subtle: #EEE;
  --kamala-rowstriping-background-color-odd: #F8F8F8;
  --kamala-rowstriping-background-color-even: #FCFCFC;
  --k-overlay-backdrop-filter: blur(3px);
  --k-overlay-backdrop-filter-transition: backdrop-filter 0.2s linear;
}

@media (prefers-color-scheme: dark) {
  :root.respect-dark-mode {
    --kamala-background-color: #383838;
    --kamala-background-color-hover: #626262;
    --kamala-border-color-sharp: #848484;
    --kamala-border-color-subtle: #626262;
    --kamala-rowstriping-background-color-odd: #484848;
    --kamala-rowstriping-background-color-even: #424242;
  }
}
.loading {
  background-image: url(images/ajax-loader.gif);
  background-position: center;
  background-repeat: no-repeat;
  min-height: 64px;
  min-width: 64px;
}

span.loading,
a.loading,
form.loading {
  background: url(images/indicator.gif) center right no-repeat;
  padding-right: 20px;
}

.row-striped:is(table) {
  border-collapse: collapse;
}
.row-striped:is(table) tbody tr:hover td,
.row-striped:is(table) tbody tr.selected td {
  border-style: double; /* to include top border */
}
.row-striped:is(ul) {
  padding: 0;
  padding-bottom: 1px;
}
.row-striped:is(ul) > li {
  list-style: none;
  margin-bottom: -1px;
  overflow-x: auto;
}
.row-striped:is(ul) > li.selected, .row-striped:is(ul) > li:hover {
  position: relative;
  z-index: 1;
}
.row-striped:is(ul).avoid-scroll > li {
  overflow-x: visible;
}
.row-striped tbody td,
.row-striped > li {
  border: solid var(--kamala-border-color-subtle);
  border-width: 1px 0;
}
.row-striped td,
.row-striped th,
.row-striped > li {
  padding: var(--k-row-striped-padding);
}
.row-striped tbody tr:nth-child(even) td,
.row-striped > li:nth-child(even) {
  background-color: var(--kamala-rowstriping-background-color-even);
}
.row-striped tbody tr:nth-child(odd) td,
.row-striped > li:nth-child(odd) {
  background-color: var(--kamala-rowstriping-background-color-odd);
}
.row-striped.hover-highlight tbody tr:hover td,
.row-striped.hover-highlight > li:hover {
  background-color: var(--kamala-background-color-hover);
  border-color: var(--kamala-border-color-sharp);
}
.row-striped tbody tr.selected td,
.row-striped > li.selected {
  background-color: #E3E5EA;
  border-color: var(--kamala-border-color-sharp);
}
.row-striped.row-striped-padded-sm {
  --k-row-striped-padding: 0.25em;
}
.row-striped.row-striped-padded-md {
  --k-row-striped-padding: 0.5em 1em;
}
.row-striped.row-striped-padded-lg {
  --k-row-striped-padding: 1em 0.5em;
}

.modal {
  transition: var(--k-overlay-backdrop-filter-transition);
}
.modal:not(.no-blur) {
  backdrop-filter: var(--k-overlay-backdrop-filter);
}
