/* One checkbox style for static pages and dynamically loaded private controls.
   Preserve native inputs, labels, keyboard behaviour and checked/disabled state. */
html input[type='checkbox'] {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  display: inline-block;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px;
  min-height: 18px;
  flex: 0 0 18px !important;
  padding: 0 !important;
  margin: 0;
  border: 1px solid #899bb2;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
  vertical-align: middle;
  cursor: pointer;
}
html input[type='checkbox']:checked {
  border-color: #2a68b5;
  background: #2a68b5 url('lucide/check-white.svg') center / 16px 16px no-repeat;
}
html input[type='checkbox']:indeterminate {
  border-color: #2a68b5;
  background: #2a68b5;
  background-image: linear-gradient(#fff, #fff);
  background-size: 10px 2px;
  background-position: center;
  background-repeat: no-repeat;
}
html[data-theme='dark'] input[type='checkbox']:not(:checked):not(:indeterminate) {
  border-color: #8da6c4;
  background: #152338;
}
html input[type='checkbox']:focus-visible {
  outline: 2px solid #4489da;
  outline-offset: 3px;
}
html input[type='checkbox']:disabled { opacity: .5; cursor: not-allowed; }
/* Let high-contrast OS settings provide their native checkbox and focus ink. */
@media (forced-colors: active) {
  html input[type='checkbox'] { appearance: auto; -webkit-appearance: auto; background: none; }
}
