/* ---------------------------
    MTKBTI Bootstrap
    Authors: Brian May Waruwu
    (c) 2025 MTKBTI
   --------------------------- */

:root, [data-bs-theme="light"]
{
  --blue: #34759d;
  --blue-rgb: 52, 117, 157;
  --indigo: #5f69a3;
  --indigo-rgb: 95, 105, 163;
  --purple: #7f5e95;
  --purple-rgb: 127, 94, 149;
  --pink: #945778;
  --pink-rgb: 148, 87, 120;
  --red: #9c5754;
  --red-rgb: 156, 87, 84;
  --orange: #956033;
  --orange-rgb: 149, 96, 51;
  --yellow: #7e6d27;
  --yellow-rgb: 126, 109, 39;
  --green: #5a793f;
  --green-rgb: 90, 121, 63;
  --teal: #2b7f63;
  --teal-rgb: 43, 127, 99;
  --cyan: #017d86;
  --cyan-rgb: 1, 125, 134;

  --black: #060606;
  --black-rgb: 6, 6, 6;
  --white: #f8f8f8;
  --white-rgb: 248, 248, 248;

  --gray-100: #dbdbdb;
  --gray-100-rgb: 219, 219, 219;
  --gray-200: #bebebe;
  --gray-300: #a3a3a3;
  --gray-400: #888888;
  --gray-500: #6e6e6e;
  --gray-600: #565656;
  --gray-600-rgb: 86, 86, 86;
  --gray-700: #404040;
  --gray-800: #2b2b2b;
  --gray-900: #181818;
  --gray-900-rgb: 24, 24, 24;

  --gray: var(--gray-600);
  --gray-dark: var(--gray-800);

  --primary: var(--teal);
  --primary-rgb: var(--teal-rgb);

  --secondary: var(--gray-600);
  --secondary-rgb: var(--gray-600-rgb);
  --success: var(--green);
  --success-rgb: var(--green-rgb);
  --info: var(--cyan);
  --info-rgb: var(--cyan-rgb);
  --warning: var(--yellow);
  --warning-rgb: var(--yellow-rgb);
  --danger: var(--red);
  --danger-rgb: var(--red-rgb);

  --light: var(--gray-100);
  --light-rgb: var(--gray-100-rgb);
  --dark: var(--gray-900);
  --dark-rgb: var(--gray-900-rgb);

  --primary-hover-bg: #1e5f49;
  --secondary-hover-bg: #414141;
  --success-hover-bg: #435a2d;
  --info-hover-bg: #015d64;
  --warning-hover-bg: #5e511b;
  --danger-hover-bg: #75403e;
  --light-hover-bg: #ececec;
  --dark-hover-bg: #242424;

  --primary-text-emphasis: #0e3629;
  --secondary-text-emphasis: #252525;
  --success-text-emphasis: #243317;
  --info-text-emphasis: #003539;
  --warning-text-emphasis: #362d0c;
  --danger-text-emphasis: #442321;
  --light-text-emphasis: #0d0d0d;
  --dark-text-emphasis: #cccccc;

  --primary-bg-subtle: #c1e9d8;
  --secondary-bg-subtle: #acacac;
  --success-bg-subtle: #d3e5c4;
  --info-bg-subtle: #bae8ec;
  --warning-bg-subtle: #e7debb;
  --danger-bg-subtle: #fdd2cf;
  --light-bg-subtle: #f3f3f3;
  --dark-bg-subtle: #292929;

  --primary-border-subtle: #b8c0bc;
  --secondary-border-subtle: #949494;
  --success-border-subtle: #bbbfb9;
  --info-border-subtle: #b7c0c0;
  --warning-border-subtle: #bfbeb7;
  --danger-border-subtle: #c4bbbb;
  --light-border-subtle: #ececec;
  --dark-border-subtle: #242424;

  --body-color: var(--dark);
  --body-color-rgb: var(--dark-rgb);
  --body-bg: var(--white);
  --body-bg-rgb: var(--white-rgb);

  --emphasis-color: var(--black);
  --emphasis-color-rgb: var(--black-rgb);

  --secondary-color: var(--gray-900);
  --secondary-color-rgb: var(--gray-900-rgb);
  --secondary-bg: var(--gray-200);
  --secondary-bg-rgb: var(--gray-200-rgb);

  --tertiary-color: var(--gray-900);
  --tertiary-color-rgb: var(--gray-900-rgb);
  --tertiary-bg: var(--gray-100);
  --tertiary-bg-rgb: var(--gray-100-rgb);

  --link-color: var(--primary);
  --link-color-rgb: var(--primary-rgb);
  --link-hover-color: var(--orange);
  --link-hover-color-rgb: var(--orange-rgb);

  --code-color: var(--pink);
  --highlight-color: var(--dark);
  --highlight-bg: var(--warning-bg-subtle);

  --border-color: var(--gray-300);
  --border-color-translucent: rgba(var(--black-rgb), 0.175);

  --form-valid-color: var(--success);
  --form-valid-border-color: var(--success);
  --form-invalid-color: var(--danger);
  --form-invalid-border-color: var(--danger);
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1
{
  font-family: var(--body-font-family);
  font-weight: 500;
}

img, svg
{
  vertical-align: middle;
  max-width: none;
  height: auto;
}

.blockquote-footer { color: var(--secondary); }

.table-primary
{
  --table-color: var(--black);
  --table-bg: var(--primary-bg-subtle);
  --table-border-color: var(--primary-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-secondary
{
  --table-color: var(--black);
  --table-bg: var(--secondary-bg-subtle);
  --table-border-color: var(--secondary-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-success
{
  --table-color: var(--black);
  --table-bg: var(--success-bg-subtle);
  --table-border-color: var(--success-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-info
{
  --table-color: var(--black);
  --table-bg: var(--info-bg-subtle);
  --table-border-color: var(--info-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-warning
{
  --table-color: var(--black);
  --table-bg: var(--warning-bg-subtle);
  --table-border-color: var(--warning-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-danger
{
  --table-color: var(--black);
  --table-bg: var(--danger-bg-subtle);
  --table-border-color: var(--danger-border-subtle);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-light
{
  --table-color: var(--black);
  --table-bg: var(--light);
  --table-border-color: var(--border-color);
  --table-striped-bg: rgba(var(--emphasis-color-rgb), 0.05);
  --table-striped-color: var(--black);
  --table-active-bg: rgba(var(--emphasis-color-rgb), 0.1);
  --table-active-color: var(--black);
  --table-hover-bg: rgba(var(--emphasis-color-rgb), 0.075);
  --table-hover-color: var(--black);
}

.table-dark
{
  --table-color: var(--white);
  --table-bg: var(--dark);
  --table-border-color: rgba(var(--white-rgb), 0.1);
  --table-striped-bg: rgba(var(--white-rgb), 0.04);
  --table-striped-color: var(--white);
  --table-active-bg: rgba(var(--white-rgb), 0.08);
  --table-active-color: var(--white);
  --table-hover-bg: rgba(var(--white-rgb), 0.08);
  --table-hover-color: var(--white);
}

.form-control
{
  padding: 0.375rem 0.75rem;
  background-color: var(--body-bg);
  border: var(--border-width) solid var(--border-color);
}

.form-control:focus
{
  border-color: var(--primary-border-subtle);
  box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25);
}

.form-select, .custom-select
{
  --form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%232b2b2b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  background-color: var(--body-bg);
  border: var(--border-width) solid var(--border-color);
  background: none;
}

.form-select:focus
{
  border-color: var(--primary-border-subtle);
  box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25);
}

.form-check-input:focus
{
  border-color: var(--primary-border-subtle);
  box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25);
}

.form-check-input:checked
{
  background-color: var(--primary);
  border-color: var(--primary);
}

.form-check-input:checked[type=checkbox] { --form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23f8f8f8' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e"); }
.form-check-input:checked[type=radio] { --form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23f8f8f8'/%3e%3c/svg%3e"); }

.form-check-input[type=checkbox]:indeterminate
{
  background-color: var(--primary);
  border-color: var(--primary);
  --form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23f8f8f8' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-switch .form-check-input { --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='rgba%286, 6, 6, 0.25%29'/%3e%3c/svg%3e"); }
.form-switch .form-check-input:focus { --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='%23b8c0bc'/%3e%3c/svg%3e"); }
.form-switch .form-check-input:checked { --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='%23f8f8f8'/%3e%3c/svg%3e"); }

.form-range:focus::-webkit-slider-thumb { box-shadow: 0 0 0 1px var(--white), 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25); }
.form-range:focus::-moz-range-thumb { box-shadow: 0 0 0 1px var(--white), 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25); }
.form-range::-webkit-slider-thumb { background-color: var(--primary); }
.form-range::-webkit-slider-thumb:active { background-color: var(--primary-bg-subtle); }
.form-range::-moz-range-thumb { background-color: var(--primary); }
.form-range::-moz-range-thumb:active { background-color: var(--primary-bg-subtle); }

.form-floating > :disabled ~ label,
.form-floating > .form-control:disabled ~ label { color: var(--secondary); }

.valid-tooltip { color: var(--white); }

.was-validated .form-control:valid, .form-control.is-valid { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%235a793f' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e"); }
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] { --form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%235a793f' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1'/%3e%3c/svg%3e"); }

.invalid-tooltip { color: var(--white); }

.was-validated .form-control:invalid, .form-control.is-invalid { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%239c5754'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%239c5754' stroke='none'/%3e%3c/svg%3e"); }
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] { --form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%239c5754'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%239c5754' stroke='none'/%3e%3c/svg%3e"); }

.btn
{
  --btn-padding-x: 0.75rem;
  --btn-padding-y: 0.375rem;
  --btn-focus-box-shadow: 0 0 0 0.1rem rgba(var(--btn-focus-shadow-rgb), .5);
}

.btn-primary:hover, .btn-primary:focus
{
  background-color: var(--btn-hover-bg);
  border-color: var(--btn-hover-border-color);
}

.btn-primary
{
  --btn-color: var(--white);
  --btn-bg: var(--primary);
  --btn-border-color: var(--primary);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--primary-hover-bg);
  --btn-hover-border-color: var(--primary-hover-bg);
  --btn-focus-shadow-rgb: var(--primary-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--primary);
  --btn-disabled-border-color: var(--primary);
  border: var(--btn-border-width) solid var(--btn-border-color);
  background-color: var(--btn-bg);
}

.btn-secondary
{
  --btn-color: var(--white);
  --btn-bg: var(--secondary);
  --btn-border-color: var(--secondary);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--secondary-hover-bg);
  --btn-hover-border-color: var(--secondary-hover-bg);
  --btn-focus-shadow-rgb: var(--secondary-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--secondary);
  --btn-disabled-border-color: var(--secondary);
}

.btn-success
{
  --btn-color: var(--white);
  --btn-bg: var(--success);
  --btn-border-color: var(--success);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--success-hover-bg);
  --btn-hover-border-color: var(--success-hover-bg);
  --btn-focus-shadow-rgb: var(--success-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--success);
  --btn-disabled-border-color: var(--success);
}

.btn-info
{
  --btn-color: var(--white);
  --btn-bg: var(--info);
  --btn-border-color: var(--info);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--info-hover-bg);
  --btn-hover-border-color: var(--info-hover-bg);
  --btn-focus-shadow-rgb: var(--info-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--info);
  --btn-disabled-border-color: var(--info);
}

.btn-warning
{
  --btn-color: var(--white);
  --btn-bg: var(--warning);
  --btn-border-color: var(--warning);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--warning-hover-bg);
  --btn-hover-border-color: var(--warning-hover-bg);
  --btn-focus-shadow-rgb: var(--warning-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--warning);
  --btn-disabled-border-color: var(--warning);
}

.btn-danger
{
  --btn-color: var(--white);
  --btn-bg: var(--danger);
  --btn-border-color: var(--danger);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--danger-hover-bg);
  --btn-hover-border-color: var(--danger-hover-bg);
  --btn-focus-shadow-rgb: var(--danger-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--danger);
  --btn-disabled-border-color: var(--danger);
}

.btn-light
{
  --btn-color: var(--black);
  --btn-bg: var(--white);
  --btn-border-color: var(--light);
  --btn-hover-color: var(--black);
  --btn-hover-bg: var(--light-hover-bg);
  --btn-hover-border-color: var(--light-hover-bg);
  --btn-focus-shadow-rgb: var(--light-rgb);
  --btn-active-color: var(--black);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--black);
  --btn-disabled-bg: var(--light);
  --btn-disabled-border-color: var(--light);
}

.btn-dark
{
  --btn-color: var(--white);
  --btn-bg: var(--dark);
  --btn-border-color: var(--dark);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--dark-hover-bg);
  --btn-hover-border-color: var(--dark-hover-bg);
  --btn-focus-shadow-rgb: var(--dark-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--btn-hover-bg);
  --btn-active-border-color: var(--btn-hover-border-color);
  --btn-disabled-color: var(--white);
  --btn-disabled-bg: var(--dark);
  --btn-disabled-border-color: var(--dark);
}

.btn-outline-primary
{
  --btn-color: var(--primary);
  --btn-border-color: var(--primary);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--primary);
  --btn-hover-border-color: var(--primary);
  --btn-focus-shadow-rgb: var(--primary-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--primary);
  --btn-active-border-color: var(--primary);
  --btn-disabled-color: var(--primary);
  --btn-disabled-border-color: var(--primary);
}

.btn-outline-secondary
{
  --btn-color: var(--secondary);
  --btn-border-color: var(--secondary);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--secondary);
  --btn-hover-border-color: var(--secondary);
  --btn-focus-shadow-rgb: var(--secondary-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--secondary);
  --btn-active-border-color: var(--secondary);
  --btn-disabled-color: var(--secondary);
  --btn-disabled-border-color: var(--secondary);
}

.btn-outline-success
{
  --btn-color: var(--success);
  --btn-border-color: var(--success);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--success);
  --btn-hover-border-color: var(--success);
  --btn-focus-shadow-rgb: var(--success-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--success);
  --btn-active-border-color: var(--success);
  --btn-disabled-color: var(--success);
  --btn-disabled-border-color: var(--success);
}

.btn-outline-info
{
  --btn-color: var(--info);
  --btn-border-color: var(--info);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--info);
  --btn-hover-border-color: var(--info);
  --btn-focus-shadow-rgb: var(--info-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--info);
  --btn-active-border-color: var(--info);
  --btn-disabled-color: var(--info);
  --btn-disabled-border-color: var(--info);
}

.btn-outline-warning
{
  --btn-color: var(--warning);
  --btn-border-color: var(--warning);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--warning);
  --btn-hover-border-color: var(--warning);
  --btn-focus-shadow-rgb: var(--warning-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--warning);
  --btn-active-border-color: var(--warning);
  --btn-disabled-color: var(--warning);
  --btn-disabled-border-color: var(--warning);
}

.btn-outline-danger
{
  --btn-color: var(--danger);
  --btn-border-color: var(--danger);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--danger);
  --btn-hover-border-color: var(--danger);
  --btn-focus-shadow-rgb: var(--danger-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--danger);
  --btn-active-border-color: var(--danger);
  --btn-disabled-color: var(--danger);
  --btn-disabled-border-color: var(--danger);
}

.btn-outline-light
{
  --btn-color: var(--black);
  --btn-border-color: var(--light);
  --btn-hover-color: var(--black);
  --btn-hover-bg: var(--light);
  --btn-hover-border-color: var(--light);
  --btn-focus-shadow-rgb: var(--light-rgb);
  --btn-active-color: var(--black);
  --btn-active-bg: var(--light);
  --btn-active-border-color: var(--light);
  --btn-disabled-color: var(--light);
  --btn-disabled-border-color: var(--light);
}

.btn-outline-dark
{
  --btn-color: var(--dark);
  --btn-border-color: var(--dark);
  --btn-hover-color: var(--white);
  --btn-hover-bg: var(--dark);
  --btn-hover-border-color: var(--dark);
  --btn-focus-shadow-rgb: var(--dark-rgb);
  --btn-active-color: var(--white);
  --btn-active-bg: var(--dark);
  --btn-active-border-color: var(--dark);
  --btn-disabled-color: var(--dark);
  --btn-disabled-border-color: var(--dark);
}

.btn-link
{
  --btn-disabled-color: var(--secondary);
  --btn-box-shadow: 0 0 0 var(--black);
  --btn-focus-shadow-rgb: var(--primary-rgb);
}

.dropdown-menu
{
  --dropdown-min-width: none;
  --dropdown-link-active-color: var(--white);
  --dropdown-link-active-bg: var(--primary);
  --dropdown-header-color: var(--secondary);
  margin: 0;
  padding: var(--dropdown-padding-y) var(--dropdown-padding-x);
  background-color: var(--dropdown-bg);
  border: var(--dropdown-border-width) solid var(--dropdown-border-color);
}

.dropdown-menu-dark
{
  --dropdown-color: var(--gray-300);
  --dropdown-bg: var(--gray-800);
  --dropdown-link-color: var(--gray-300);
  --dropdown-link-hover-color: var(--white);
  --dropdown-link-hover-bg: rgba(var(--white-rgb), 0.15);
  --dropdown-link-active-color: var(--white);
  --dropdown-link-active-bg: var(--primary);
  --dropdown-link-disabled-color: var(--dark-border-subtle);
  --dropdown-header-color: var(--dark-border-subtle);
}

.nav-link:focus-visible { box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25); }

.nav-pills
{
  --nav-pills-link-active-color: var(--white);
  --nav-pills-link-active-bg: var(--primary);
}

.navbar
{
  --navbar-toggler-padding-y: 0;
  --navbar-toggler-padding-x: 0;
  --navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2824, 24, 24, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark,
.navbar[data-bs-theme=dark]
{
  --navbar-color: rgba(var(--white-rgb), 0.55);
  --navbar-hover-color: rgba(var(--white-rgb), 0.75);
  --navbar-disabled-color: rgba(var(--white-rgb), 0.25);
  --navbar-active-color: var(--white);
  --navbar-brand-color: var(--white);
  --navbar-brand-hover-color: var(--white);
  --navbar-toggler-border-color: rgba(var(--white-rgb), 0.1);
  --navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28248, 248, 248, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card
{
  --card-border-color: var(--border-color-translucent);
}

.accordion
{
  --accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23181818' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230e3629' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --accordion-btn-focus-box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25);
}

.pagination
{
  --pagination-hover-color: var(--link-hover-color);
  --pagination-focus-box-shadow: 0 0 0 0.1rem rgba(var(--primary-rgb), 0.25);
  --pagination-active-color: var(--white);
  --pagination-active-bg: var(--primary);
  --pagination-active-border-color: var(--primary);
}

.page-link
{
  color: var(--pagination-color);
}

.page-link:hover
{
  color: var(--pagination-hover-color);
}

.active > .page-link:hover
{
  color: var(--white);
  background-color: var(--primary-hover-bg);
}

.badge { --badge-color: var(--white); }

.progress,
.progress-stacked
{
  --progress-bar-color: var(--white);
  --progress-bar-bg: var(--primary);
}

.progress-bar-striped
{
  background-image: linear-gradient(45deg, rgba(var(--white-rgb), 0.15) 25%, transparent 25%, transparent 50%, rgba(var(--white-rgb), 0.15) 50%, rgba(var(--white-rgb), 0.15) 75%, transparent 75%, transparent);
}

.list-group
{
  --list-group-active-color: var(--white);
  --list-group-active-bg: var(--primary);
  --list-group-active-border-color: var(--primary);
}

.btn-close
{
  --btn-close-color: var(--black);
  --btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23060606'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
  --btn-close-focus-shadow: 0 0 0 0.25rem rgba(var(--primary-rgb), 0.25);
}

.modal-backdrop { --backdrop-bg: var(--black); }

.carousel-control-prev, .carousel-control-next { color: var(--white); }

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover, .carousel-control-next:focus { color: var(--white); }

.carousel-control-prev-icon { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f8f8f8'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0'/%3e%3c/svg%3e"); }
.carousel-control-next-icon { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f8f8f8'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708'/%3e%3c/svg%3e"); }

.carousel-dark
{
  --carousel-indicator-active-bg: var(--black);
  --carousel-caption-color: var(--black);
}

:root,
[data-bs-theme=light]
{
  --carousel-indicator-active-bg: var(--white);
  --carousel-caption-color: var(--white);
}

.offcanvas-backdrop { background-color: var(--black); }

.placeholder-wave
{
  -webkit-mask-image: linear-gradient(130deg, var(--black) 55%, rgba(var(--black-rgb), 0.8) 75%, var(--black) 95%);
  mask-image: linear-gradient(130deg, var(--black) 55%, rgba(var(--black-rgb), 0.8) 75%, var(--black) 95%);
}

.text-bg-primary { color: var(--white) !important; }
.text-bg-secondary { color: var(--white) !important; }
.text-bg-success { color: var(--white) !important; }
.text-bg-info { color: var(--white) !important; }
.text-bg-warning { color: var(--white) !important; }
.text-bg-danger { color: var(--white) !important; }
.text-bg-light { color: var(--black) !important; }
.text-bg-dark { color: var(--white) !important; }

.link-primary:hover, .link-primary:focus
{
  color: var(--primary-hover-bg) !important;
  -webkit-text-decoration-color: var(--primary-hover-bg) !important;
  text-decoration-color: var(--primary-hover-bg) !important;
}

.link-secondary:hover, .link-secondary:focus
{
  color: var(--secondary-hover-bg) !important;
  -webkit-text-decoration-color: var(--secondary-hover-bg) !important;
  text-decoration-color: var(--secondary-hover-bg) !important;
}

.link-success:hover, .link-success:focus
{
  color: var(--success-hover-bg) !important;
  -webkit-text-decoration-color: var(--success-hover-bg) !important;
  text-decoration-color: var(--success-hover-bg) !important;
}

.link-info:hover, .link-info:focus
{
  color: var(--info-hover-bg) !important;
  -webkit-text-decoration-color: var(--info-hover-bg) !important;
  text-decoration-color: var(--info-hover-bg) !important;
}

.link-warning:hover, .link-warning:focus
{
  color: var(--warning-hover-bg) !important;
  -webkit-text-decoration-color: var(--warning-hover-bg) !important;
  text-decoration-color: var(--warning-hover-bg) !important;
}

.link-danger:hover, .link-danger:focus
{
  color: var(--danger-hover-bg) !important;
  -webkit-text-decoration-color: var(--danger-hover-bg) !important;
  text-decoration-color: var(--danger-hover-bg) !important;
}

.link-light:hover, .link-light:focus
{
  color: var(--light) !important;
  -webkit-text-decoration-color: var(--light) !important;
  text-decoration-color: var(--light) !important;
}

.link-dark:hover, .link-dark:focus
{
  color: var(--dark) !important;
  -webkit-text-decoration-color: var(--dark) !important;
  text-decoration-color: var(--dark) !important;
}

.text-black-50 { color: rgba(var(--black-rgb), 0.5) !important; }
.text-white-50 { color: rgba(var(--white-rgb), 0.5) !important; }
