:root {
  --bs-primary: #B55440; /*#0d6efd*/
  --bs-primary-rgb: 181, 84, 64; /*13, 110, 253*/

  --bs-primary-text-emphasis: #48221a; /*#052c65*/
  --bs-primary-bg-subtle: #f0ddd9; /*#cfe2ff*/
  --bs-primary-border-subtle: #e1bbb3; /*#9ec5fe*/
}

[data-bs-theme=dark] {
  --bs-primary-text-emphasis: #d3988c; /*#6ea8fe*/
  --bs-primary-bg-subtle: #24110d; /*#031633*/
  --bs-primary-border-subtle: #6d3226; /*#084298*/

  --bs-link-color: #d3988c; /*#6ea8fe*/
  --bs-link-hover-color: #dcada3; /*#8bb9fe*/
  --bs-link-color-rgb: 211, 152, 140; /*110, 168, 254*/
  --bs-link-hover-color-rgb: 220, 173, 163; /*139, 185, 254*/
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #9a4736; /*#0b5ed7*/
  --bs-btn-hover-border-color: #914333; /*#0a58ca*/
  --bs-btn-focus-shadow-rgb: 70, 116, 93; /*49, 132, 253*/
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #914333; /*#0a58ca*/
  --bs-btn-active-border-color: #884030; /*#0a53be*/
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--bs-primary);
  --bs-btn-disabled-border-color: var(--bs-primary);
}

.form-control:focus {
  border-color: #daaba0; /*#86b7fe*/
  box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}

.form-select:focus {
  border-color: #daaba0; /*#86b7fe*/
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}

.form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.form-check-input:focus {
  border-color: #daaba0; /*#86b7fe*/
  box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}

.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23daaba0'/%3e%3c/svg%3e");
}

.form-toggle-switch {
  padding-left: 2.9em;
  margin-bottom: 0;
}

.form-toggle-switch .form-check-input {
  width: 2em;
  margin-left: -2.5em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
  background-position: left center;
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-toggle-switch .form-check-input {
    transition: none;
  }
}

.form-toggle-switch .form-check-input:checked {
  background-position: right center;
}

small .form-toggle-switch .form-check-input {
  margin-top: .45em;
}

.table th {
  --bs-table-bg: var(--bs-tertiary-bg);
}

.table-striped:has(thead) > tbody > tr:nth-of-type(odd) > * {
  --bs-table-color-type: var(--bs-table-color-type);
  --bs-table-bg-type: var(--bs-table-bg-type);
}

.table-striped:has(thead) > tbody > tr:nth-of-type(even) > * {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.text-pre-wrap {
  white-space: pre-wrap;
}

.card-body > .table > tbody > tr:last-of-type > td, .list-group-item > .table > tbody > tr:last-of-type > td {
  border-bottom-width: 0;
}

.alert-link.btn-link:hover {
  color: var(--bs-alert-link-color);
}

.tooltip {
  --bs-tooltip-max-width: 400px;
}