/* Firm Souvenir - Global Contrast Fix for Dark Theme
   Load AFTER app.css / bootstrap.css
   v2.0.0A
*/

:root{
  --fs-text: rgba(255,255,255,.92);
  --fs-muted: rgba(255,255,255,.68);
  --fs-muted2: rgba(255,255,255,.55);
  --fs-border: rgba(255,255,255,.10);
  --fs-link: rgba(120,180,255,.95);
  --fs-link-hover: rgba(160,205,255,1);
}

/* Base */
html, body { color: var(--fs-text); }
p, li, dt, dd, label, small, span { color: inherit; }

/* Common bootstrap utility overrides for dark UIs */
.text-dark, .text-body, .text-black, .text-black-50 { color: var(--fs-text) !important; }
.text-secondary, .text-muted, .text-body-secondary, .text-body-tertiary { color: var(--fs-muted) !important; }
.text-light, .text-white { color: var(--fs-text) !important; }

/* Tables */
.table, table { color: var(--fs-text) !important; }
.table thead th, table thead th { color: var(--fs-text) !important; }
.table td, .table th, table td, table th { border-color: var(--fs-border) !important; }
.table-striped > tbody > tr:nth-of-type(odd) > * { color: var(--fs-text) !important; }
.table-hover > tbody > tr:hover > * { color: var(--fs-text) !important; }

/* Forms */
.form-label, .form-text { color: var(--fs-muted) !important; }
.form-control, .form-select, textarea, input { color: var(--fs-text) !important; }
.form-control::placeholder, textarea::placeholder, input::placeholder { color: var(--fs-muted2) !important; }

/* Buttons & badges */
.btn-outline-dark { color: var(--fs-text) !important; border-color: var(--fs-border) !important; }
.badge.bg-light { color: #0b1220 !important; }

/* Links */
a { color: var(--fs-link); }
a:hover { color: var(--fs-link-hover); }

/* Alerts */
.alert { color: var(--fs-text) !important; }
.alert-info, .alert-primary { border-color: var(--fs-border) !important; }

/* Cards */
.card { color: var(--fs-text); }
.card .card-title, .card h1, .card h2, .card h3, .card h4, .card h5 { color: var(--fs-text); }
.card .card-text { color: var(--fs-muted); }

/* Fix accidental dark text inside custom components */
.muted { color: var(--fs-muted) !important; }
.small, .fs-small { color: var(--fs-muted) !important; }
