/* Info-DAM Custom Theme - Purple Dark */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700;1,400&family=DM+Sans:ital,wght@0,400;0,500;0,700;1,400&display=swap");

:root,
[data-bs-theme="light"],
[data-bs-theme="dark"] {
  --id-bg: #0c0814;
  --id-bg2: #140e1e;
  --id-surface: #1a1226;
  --id-surface2: #241832;
  --id-border: rgba(100,60,160,.25);
  --id-text: #ede6f5;
  --id-text-l: #b0a0c8;
  --id-accent: #9b6fd4;
  --id-accent-l: #c8a0f0;
  --id-gold: #d4a86a;
  --id-rose: #c4677a;
  --id-green: #5cb85c;
  --bs-body-bg: var(--id-bg);
  --bs-body-color: var(--id-text);
  --bs-primary: var(--id-accent);
  --bs-primary-rgb: 155,111,212;
  --bs-secondary: var(--id-text-l);
  --bs-secondary-rgb: 176,160,200;
  --bs-success: var(--id-green);
  --bs-success-rgb: 92,184,92;
  --bs-warning: var(--id-gold);
  --bs-warning-rgb: 212,168,106;
  --bs-danger: var(--id-rose);
  --bs-danger-rgb: 196,103,122;
  --bs-info: var(--id-accent-l);
  --bs-info-rgb: 200,160,240;
  --bs-light: var(--id-surface2);
  --bs-light-rgb: 36,24,50;
  --bs-dark: var(--id-bg);
  --bs-dark-rgb: 12,8,20;
  --bs-link-color: var(--id-accent-l);
  --bs-link-color-rgb: 200,160,240;
  --bs-link-hover-color: var(--id-accent);
  --bs-link-hover-color-rgb: 155,111,212;
  --bs-border-color: var(--id-border);
  --bs-border-color-translucent: var(--id-border);
  --bs-heading-color: var(--id-text);
  --bs-body-font-family: "DM Sans", sans-serif;
  --bs-font-sans-serif: "DM Sans", sans-serif;
  --bs-tertiary-bg: var(--id-surface);
  --bs-secondary-bg: var(--id-surface2);
  color-scheme: dark;
}

body {
  font-family: "DM Sans", sans-serif;
  background-color: var(--id-bg) !important;
  color: var(--id-text) !important;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "Cormorant Garamond", serif;
  color: var(--id-text);
  font-weight: 600;
}

.navbar {
  background-color: transparent !important;
}
.navbar-brand, .navbar-brand span {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--id-accent-l) !important;
}
.nav-link {
  color: var(--id-text-l) !important;
  transition: color .2s;
}
.nav-link:hover, .nav-link.active, .nav-link:focus {
  color: var(--id-accent-l) !important;
}

.card {
  background-color: var(--id-surface) !important;
  border: 1px solid var(--id-border) !important;
  border-radius: 12px;
  color: var(--id-text);
}
.card-header {
  background-color: var(--id-surface2) !important;
  border-bottom-color: var(--id-border) !important;
  color: var(--id-text);
}
.card-body {
  color: var(--id-text);
}

.list-group-item {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
  color: var(--id-text) !important;
}
.list-group-item:hover, .list-group-item.active {
  background-color: var(--id-surface2) !important;
  border-color: var(--id-accent) !important;
  color: var(--id-accent-l) !important;
}

.btn-primary {
  background-color: var(--id-accent) !important;
  border-color: var(--id-accent) !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus {
  background-color: var(--id-accent-l) !important;
  border-color: var(--id-accent-l) !important;
  color: var(--id-bg) !important;
}
.btn-outline-primary {
  border-color: var(--id-accent) !important;
  color: var(--id-accent) !important;
}
.btn-outline-primary:hover {
  background-color: var(--id-accent) !important;
  color: #fff !important;
}
.btn-success {
  background-color: var(--id-green) !important;
  border-color: var(--id-green) !important;
}
.btn-warning {
  background-color: var(--id-gold) !important;
  border-color: var(--id-gold) !important;
  color: var(--id-bg) !important;
}
.btn-danger {
  background-color: var(--id-rose) !important;
  border-color: var(--id-rose) !important;
}

.table {
  --bs-table-bg: var(--id-surface);
  --bs-table-color: var(--id-text);
  --bs-table-border-color: var(--id-border);
  --bs-table-striped-bg: var(--id-surface2);
  --bs-table-hover-bg: var(--id-surface2);
  --bs-table-hover-color: var(--id-text);
  color: var(--id-text);
}
.table > thead {
  color: var(--id-accent-l);
}
.table > :not(caption) > * > * {
  background-color: transparent;
  border-bottom-color: var(--id-border);
}

.form-control, .form-select {
  background-color: var(--id-bg2) !important;
  border-color: var(--id-border) !important;
  color: var(--id-text) !important;
}
.form-control:focus, .form-select:focus {
  border-color: var(--id-accent) !important;
  box-shadow: 0 0 0 .25rem rgba(155,111,212,.25) !important;
}
.form-control::placeholder {
  color: var(--id-text-l) !important;
  opacity: .6;
}
.form-label, .form-check-label {
  color: var(--id-text-l);
}
.input-group-text {
  background-color: var(--id-surface2) !important;
  border-color: var(--id-border) !important;
  color: var(--id-text-l) !important;
}

.alert-info {
  background-color: rgba(155,111,212,.15) !important;
  border-color: var(--id-accent) !important;
  color: var(--id-accent-l) !important;
}
.alert-success {
  background-color: rgba(92,184,92,.15) !important;
  border-color: var(--id-green) !important;
  color: var(--id-green) !important;
}
.alert-warning {
  background-color: rgba(212,168,106,.15) !important;
  border-color: var(--id-gold) !important;
  color: var(--id-gold) !important;
}
.alert-danger {
  background-color: rgba(196,103,122,.15) !important;
  border-color: var(--id-rose) !important;
  color: var(--id-rose) !important;
}

.badge.bg-primary, .badge.text-bg-primary {
  background-color: var(--id-accent) !important;
}
.badge.bg-success, .badge.text-bg-success {
  background-color: var(--id-green) !important;
}
.badge.bg-warning, .badge.text-bg-warning {
  background-color: var(--id-gold) !important;
  color: var(--id-bg) !important;
}
.badge.bg-danger, .badge.text-bg-danger {
  background-color: var(--id-rose) !important;
}
.badge.bg-info, .badge.text-bg-info {
  background-color: var(--id-accent-l) !important;
  color: var(--id-bg) !important;
}

.page-link {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
  color: var(--id-accent-l) !important;
}
.page-link:hover {
  background-color: var(--id-surface2) !important;
  color: var(--id-accent) !important;
}
.page-item.active .page-link {
  background-color: var(--id-accent) !important;
  border-color: var(--id-accent) !important;
  color: #fff !important;
}

.dropdown-menu {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
}
.dropdown-item {
  color: var(--id-text) !important;
}
.dropdown-item:hover, .dropdown-item:focus {
  background-color: var(--id-surface2) !important;
  color: var(--id-accent-l) !important;
}
.dropdown-divider {
  border-color: var(--id-border);
}

.modal-content {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
  color: var(--id-text);
}
.modal-header {
  border-bottom-color: var(--id-border) !important;
}
.modal-footer {
  border-top-color: var(--id-border) !important;
}
.btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.breadcrumb {
  --bs-breadcrumb-divider-color: var(--id-text-l);
}
.breadcrumb-item a {
  color: var(--id-accent-l);
}
.breadcrumb-item.active {
  color: var(--id-text-l);
}

footer, footer a, footer span {
  color: var(--id-text-l) !important;
}
footer a:hover {
  color: var(--id-accent-l) !important;
}

::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: var(--id-bg2);
}
::-webkit-scrollbar-thumb {
  background: var(--id-surface2);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--id-accent);
}

::selection {
  background: rgba(155,111,212,.3);
  color: var(--id-text);
}

.toast {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
  color: var(--id-text) !important;
}

.accordion-item {
  background-color: var(--id-surface) !important;
  border-color: var(--id-border) !important;
}
.accordion-button {
  background-color: var(--id-surface2) !important;
  color: var(--id-text) !important;
}
.accordion-button:not(.collapsed) {
  background-color: var(--id-accent) !important;
  color: #fff !important;
}
.accordion-body {
  background-color: var(--id-surface) !important;
  color: var(--id-text);
}

.progress {
  background-color: var(--id-surface2) !important;
}
.progress-bar {
  background-color: var(--id-accent) !important;
}

a { color: var(--id-accent-l); }
a:hover { color: var(--id-accent); }
hr { border-color: var(--id-border); }
.text-muted { color: var(--id-text-l) !important; }
.bg-light { background-color: var(--id-surface) !important; }
.bg-dark { background-color: var(--id-bg) !important; }
.border { border-color: var(--id-border) !important; }
code { color: var(--id-accent-l); }
pre { background-color: var(--id-bg2); color: var(--id-text); border-radius: 8px; padding: 1rem; }
noscript { color: var(--id-gold); }

/* Hide language selector - French only */
.js-language-selector, select[name=lang] { display: none !important; }
/* Hide currency selector */
.js-currency-selector, select[name=currency] { display: none !important; }


/* Fix login/register tabs - hide register by default */
#sign-up:not(.show) { display: none !important; }
#sign-up.show.active { display: block !important; }
#sign-in:not(.show) { display: none !important; }
#sign-in.show.active { display: block !important; }
