/* ======= Fonts ======= */
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100..700;1,100..700&display=swap");

/* ======= Light Mode ======= */
[data-bs-theme="light"], :root {
  --bs-primary:       #2e1a6d;
  --bs-primary-rgb:   46, 26, 109;
  --bs-secondary-rgb: 242, 197, 0;

  --bs-secondary-bg-rgb: 249, 250, 251; /* #F9FAFB */

  --color-bg:         #ffffff;
  --color-surface:    #f8f9fa;
  --color-text:       #212529;
  --color-muted:      #6c757d;

  --btn-primary-bg:       #2e1a6d;
  --btn-primary-hover:    #1f1249;
  --btn-primary-disabled: #2e1a6d;
}

/* ======= Dark Mode ======= */
[data-bs-theme="dark"] {
  --bs-primary:       #ffffff;
  --bs-primary-rgb:   255, 255, 255;
  --bs-secondary-rgb: 242, 197, 0;

  --color-bg:      #0c111d;
  --color-surface: #161b26;

  --bs-body-bg-rgb:       12, 17, 29;    /* #0c111d */
  --bs-secondary-bg-rgb:  22, 27, 38;    /* #161b26 */

  --color-text:       #f8f9fa;
  --color-muted:      #adb5bd;

  --btn-primary-bg:       #333741;
  --btn-primary-hover:    #333741;
  --btn-primary-disabled: #161B26;
}

/* ======= Bootstrap Overrides ======= */
:root {
  --bs-body-bg:         var(--color-bg);
  --bs-body-color:      var(--color-text);
  --bs-secondary-color: var(--color-muted);
}

/* ======= Transitions ======= */
*, *::before, *::after {
  transition: background-color 250ms ease, color 250ms ease;
}

/* ======= Base ======= */
html, body {
  margin: 0;
  padding: 0;
  font-family: "IBM Plex Sans", sans-serif !important;
  color: var(--bs-body-color);
}

a {
  color: var(--bs-body-color);
}

/* ======= Forms ======= */
[data-bs-theme="light"] .form-check-input:checked {
  background-color: var(--bs-primary);
  border-color:     var(--bs-primary);
}

[data-bs-theme="dark"] .form-check-input:checked {
  background-color: var(--color-bg);
  border-color:     var(--color-bg);
}

/* ======= Buttons ======= */
.btn-primary {
  --bs-btn-bg:                 var(--btn-primary-bg);
  --bs-btn-border-color:       var(--btn-primary-bg);
  --bs-btn-hover-bg:           var(--btn-primary-hover);
  --bs-btn-hover-border-color: var(--btn-primary-hover);
  --bs-btn-active-bg:          var(--btn-primary-hover);
  --bs-btn-active-border-color:var(--btn-primary-hover);
  --bs-btn-disabled-bg:        var(--btn-primary-disabled);
  --bs-btn-disabled-border-color: var(--btn-primary-disabled);
}

/* ======= Utilities ======= */
.cursor-pointer {
  cursor: pointer;
}

/* ======= SweetAlert ======= */
.my-swal-popup {
  background:    var(--bs-body-bg) !important;
  color:         var(--bs-body-color) !important;
  padding:       10px;
  border-radius: 20px;
}

small, .small{
  font-size: 9pt;
}

::placeholder{
  direction: ltr !important;
  text-align: left !important;
}
