:root {
  --brand-primary: #FA5916;
  --brand-primary-dark: #D47A4E;
  --brand-primary-pressed: #C96A3F;
  --brand-text: #333333;
  --brand-text-muted: #666666;
  --brand-bg: #FFFFFF;
  --brand-bg-alt: #F7F3F0;
  --brand-border: #EDEDED;
  --brand-soft: #FFC9AE;
  --brand-dark: #1A1A1A;
}

body {
  font-family: "Source Sans Pro", "Segoe UI", Arial, sans-serif;
  color: var(--brand-text);
  background-color: var(--brand-bg);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.card-title,
.sidebar-brand-text {
  font-family: "Montserrat", "Segoe UI", Arial, sans-serif;
  font-weight: 800;
  color: var(--brand-text);
}

.text-brand-primary { color: var(--brand-primary); }
.text-brand-muted { color: var(--brand-text-muted); }
.text-brand-dark { color: var(--brand-dark); }

.bg-brand-primary { background-color: var(--brand-primary); }
.bg-brand-soft { background-color: var(--brand-soft); }
.bg-brand-dark { background-color: var(--brand-dark); }
.bg-brand-alt { background-color: var(--brand-bg-alt); }

.border-brand-primary { border-color: var(--brand-primary); }
.border-brand-soft { border-color: var(--brand-soft); }
.border-brand-light { border-color: var(--brand-border); }
.border-top-brand { border-top: 0.25rem solid var(--brand-primary); }

.link-brand {
  color: var(--brand-primary);
  text-decoration: none;
}

.link-brand:hover,
.link-brand:focus {
  color: var(--brand-primary-dark);
  text-decoration: underline;
}

.link-brand:focus-visible {
  outline: 2px solid rgba(250, 89, 22, 0.35);
  outline-offset: 2px;
}

.btn-brand-primary {
  background-color: var(--brand-primary);
  border-color: var(--brand-primary);
  color: #FFFFFF;
}

.btn-brand-primary:hover {
  background-color: var(--brand-primary-dark);
  border-color: var(--brand-primary-dark);
  color: #FFFFFF;
}

.btn-brand-primary:active,
.btn-brand-primary.active,
.show > .btn-brand-primary.dropdown-toggle {
  background-color: var(--brand-primary-pressed);
  border-color: var(--brand-primary-pressed);
  color: #FFFFFF;
}

.btn-brand-primary:focus,
.btn-brand-primary:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(250, 89, 22, 0.35);
}

.btn-brand-primary:disabled,
.btn-brand-primary.disabled {
  background-color: var(--brand-soft);
  border-color: var(--brand-soft);
  color: #FFFFFF;
}

.btn-brand-outline {
  background-color: transparent;
  border-color: var(--brand-primary);
  color: var(--brand-primary);
}

.btn-brand-outline:hover {
  background-color: var(--brand-primary);
  border-color: var(--brand-primary);
  color: #FFFFFF;
}

.btn-brand-outline:active,
.btn-brand-outline.active,
.show > .btn-brand-outline.dropdown-toggle {
  background-color: var(--brand-primary-pressed);
  border-color: var(--brand-primary-pressed);
  color: #FFFFFF;
}

.btn-brand-outline:focus,
.btn-brand-outline:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(250, 89, 22, 0.35);
}

.btn-brand-outline:disabled,
.btn-brand-outline.disabled {
  color: var(--brand-soft);
  border-color: var(--brand-soft);
}

.btn-brand-soft {
  background-color: var(--brand-soft);
  border-color: var(--brand-soft);
  color: var(--brand-text);
}

.btn-brand-soft:hover {
  background-color: var(--brand-primary-dark);
  border-color: var(--brand-primary-dark);
  color: #FFFFFF;
}

.btn-brand-soft:active,
.btn-brand-soft.active,
.show > .btn-brand-soft.dropdown-toggle {
  background-color: var(--brand-primary-pressed);
  border-color: var(--brand-primary-pressed);
  color: #FFFFFF;
}

.btn-brand-soft:focus,
.btn-brand-soft:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(250, 89, 22, 0.35);
}

.btn-brand-soft:disabled,
.btn-brand-soft.disabled {
  background-color: var(--brand-border);
  border-color: var(--brand-border);
  color: var(--brand-text-muted);
}

.badge-brand-primary { background-color: var(--brand-primary); color: #FFFFFF; }
.badge-brand-soft { background-color: var(--brand-soft); color: var(--brand-text); }
.badge-brand-dark { background-color: var(--brand-dark); color: #FFFFFF; }

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

.card-brand .card-header {
  background-color: var(--brand-bg-alt);
  border-bottom-color: var(--brand-border);
}

.form-control-brand {
  color: var(--brand-text);
  border-color: var(--brand-border);
}

.form-control-brand::placeholder {
  color: var(--brand-text-muted);
}

.form-control-brand:focus {
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 0.2rem rgba(250, 89, 22, 0.25);
}

.table-brand thead th {
  background-color: var(--brand-bg-alt);
  color: var(--brand-text);
  border-color: var(--brand-border);
}

.table-brand td,
.table-brand th {
  border-color: var(--brand-border);
}

.brand-sidebar {
  background-color: var(--brand-dark);
  background-image: linear-gradient(180deg, #1A1A1A 10%, #333333 100%);
}

.brand-sidebar .nav-item .nav-link {
  color: #F7F3F0;
  border-left: 3px solid transparent;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.brand-sidebar .nav-item .nav-link i {
  color: var(--brand-soft);
}

.brand-sidebar .nav-item .nav-link:hover,
.brand-sidebar .nav-item .nav-link:hover i {
  color: #FFFFFF;
}

.brand-sidebar .nav-item .nav-link:hover {
  background-color: rgba(250, 89, 22, 0.12);
  border-left-color: var(--brand-primary);
}

.brand-sidebar .nav-item.active .nav-link,
.brand-sidebar .nav-item.active .nav-link i {
  color: var(--brand-primary);
}

.brand-sidebar .nav-item.active .nav-link {
  background-color: rgba(250, 89, 22, 0.16);
  border-left-color: var(--brand-primary);
}

.brand-sidebar .sidebar-heading {
  color: var(--brand-soft);
}

.brand-sidebar-title {
  font-size: 1.15rem;
}

.brand-topbar .nav-link {
  color: var(--brand-text-muted);
}

.brand-topbar .nav-link:hover {
  color: var(--brand-text);
}

.auth-brand-bg {
  background: linear-gradient(180deg, #1A1A1A 0%, #333333 100%);
}

.auth-brand a {
  color: var(--brand-primary);
}

.auth-brand a:hover,
.auth-brand a:focus {
  color: var(--brand-primary-dark);
}

.auth-brand a:focus-visible {
  outline: 2px solid rgba(250, 89, 22, 0.35);
  outline-offset: 2px;
}

.progress-brand {
  background-color: var(--brand-border);
}

.progress-bar-brand {
  background-color: var(--brand-primary);
  color: #FFFFFF;
}

.dropdown-item-brand {
  color: var(--brand-text);
}

.dropdown-item-brand:hover,
.dropdown-item-brand:focus {
  background-color: var(--brand-bg-alt);
  color: var(--brand-text);
}

.dropdown-item-brand:active {
  background-color: var(--brand-primary);
  color: #FFFFFF;
}
