/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

/* Brand Colors - Orange and Black Theme */
:root {
  --bs-primary: #FF6B00;
  --bs-primary-rgb: 255, 107, 0;
  --bs-primary-dark: #CC5500;
  --bs-primary-light: #FF8533;

  /* Black shades */
  --bs-dark: #1a1a1a;
  --bs-gray-dark: #2d2d2d;
  --bs-gray: #3a3f48;
  --bs-gray-light: #6c757d;
}

/* Override Bootstrap primary color */
.btn-primary,
.bg-primary {
  background-color: #FF6B00 !important;
  border-color: #FF6B00 !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #CC5500 !important;
  border-color: #CC5500 !important;
}

.btn-outline-primary {
  color: #FF6B00 !important;
  border-color: #FF6B00 !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: #FF6B00 !important;
  border-color: #FF6B00 !important;
  color: white !important;
}

.text-primary {
  color: #FF6B00 !important;
}

.border-primary {
  border-color: #FF6B00 !important;
}

.badge.bg-primary {
  background-color: #FF6B00 !important;
}

/* Form focus states */
.form-control:focus,
.form-select:focus {
  border-color: #FF8533 !important;
  box-shadow: 0 0 0 0.25rem rgba(255, 107, 0, 0.25) !important;
}

/* Links */
a {
  color: #FF6B00;
}

a:hover {
  color: #CC5500;
}

/* Icon circles in onboarding and other pages */
.bg-primary.rounded-circle {
  background-color: #FF6B00 !important;
}

/* Badge variants */
.badge.rounded-pill.bg-primary {
  background-color: #FF6B00 !important;
}

/* Card borders for active/current items */
.card.border-primary {
  border-color: #FF6B00 !important;
}

/* Dark theme throughout the app */
body {
  background-color: #1a1a1a !important;
  color: #e0e0e0;
}

/* Dark theme custom background classes */
.bg-darker {
  background-color: #1a1a1a !important;
}

.bg-dark-elevated {
  background-color: #2d2d2d !important;
}

/* Dark theme custom text class */
.text-light-muted {
  color: #e0e0e0 !important;
}

/* List groups dark theme */
.list-group-item {
  background-color: #222 !important;
  color: #e0e0e0 !important;
  border-color: #2d2d2d !important;
}

/* Tables dark theme */
.table {
  --bs-table-bg: #222;
  --bs-table-color: #e0e0e0;
  --bs-table-border-color: #2d2d2d;
  --bs-table-striped-bg: #252525;
  --bs-table-hover-bg: rgba(255, 255, 255, 0.02);
}

.table thead th {
  background-color: #252525 !important;
  color: #777 !important;
  border-bottom-color: #2d2d2d !important;
}

/* Cards with dark background */
.card {
  background-color: #2d2d2d !important;
  color: #e0e0e0 !important;
  border: 1px solid #3a3f48 !important;
}

.card-header {
  background-color: #252525 !important;
  color: #e0e0e0 !important;
  border-bottom: 1px solid #3a3f48 !important;
}

.card-footer {
  background-color: #252525 !important;
  color: #b0b0b0 !important;
  border-top: 1px solid #3a3f48 !important;
}

.card-body {
  background-color: #2d2d2d !important;
}

.text-muted {
  color: #a0a0a0 !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color: #ffffff !important;
}

/* Paragraphs and general text */
p {
  color: #e0e0e0 !important;
}

/*strong {*/
/*  color: #ffffff !important;*/
/*}*/

/* Small text */
small, .small {
  color: #b0b0b0 !important;
}


/* Form controls with dark theme */
.form-control,
.form-select {
  background-color: #3a3f48 !important;
  border-color: #4a4f58 !important;
  color: #e0e0e0 !important;
}

.form-control::placeholder {
  color: #808080 !important;
}

.form-label {
  color: #e0e0e0 !important;
}

.form-text {
  color: #a0a0a0 !important;
}

/* Fix autofill background color (Chrome, Safari, Edge) */
.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus,
.form-control:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 1000px #3a3f48 inset !important;
  -webkit-text-fill-color: #e0e0e0 !important;
  box-shadow: 0 0 0 1000px #3a3f48 inset !important;
  transition: background-color 5000s ease-in-out 0s;
}

/* Fix for Firefox autofill */
.form-control:-moz-autofill,
.form-control:-moz-autofill-preview {
  background-color: #3a3f48 !important;
  color: #e0e0e0 !important;
  filter: none !important;
}

/* Ensure consistent background on all input states */
input.form-control,
textarea.form-control,
select.form-select {
  background-color: #3a3f48 !important;
  color: #e0e0e0 !important;
}

input.form-control:focus,
textarea.form-control:focus,
select.form-select:focus,
input.form-control:active,
textarea.form-control:active,
select.form-select:active {
  background-color: #3a3f48 !important;
  color: #e0e0e0 !important;
}


/* Buttons - keep orange but ensure good contrast */
.btn-outline-primary {
  background-color: transparent !important;
  color: #FF6B00 !important;
}

.btn-outline-primary:hover,
.btn-check:checked + .btn-outline-primary {
  background-color: #FF6B00 !important;
  color: #ffffff !important;
}

/* Container backgrounds */
.container-fluid {
  background-color: #1a1a1a !important;
}


body {
  font-size: 0.9rem;
}

/*------scroll bar---------------------*/

::-webkit-scrollbar {
  width: 5px;
  height: 7px;
}
::-webkit-scrollbar-button {
  width: 0px;
  height: 0px;
}
::-webkit-scrollbar-thumb {
  background: #525965;
  border: 0px none #ffffff;
  border-radius: 0px;
}
::-webkit-scrollbar-thumb:hover {
  background: #525965;
}
::-webkit-scrollbar-thumb:active {
  background: #525965;
}
::-webkit-scrollbar-track {
  background: transparent;
  border: 0px none #ffffff;
  border-radius: 50px;
}
::-webkit-scrollbar-track:hover {
  background: transparent;
}
::-webkit-scrollbar-track:active {
  background: transparent;
}
::-webkit-scrollbar-corner {
  background: transparent;
}

/* Breadcrumb - fix contrast for active item */
.breadcrumb-item.active {
  color: #ffffff !important;
}

.breadcrumb-item + .breadcrumb-item::before {
  color: #a0a0a0 !important;
}

/* Accordion dark theme */
.accordion-item {
  background-color: #222 !important;
  border-color: #2d2d2d !important;
}

.accordion-button {
  background-color: #222 !important;
  color: #e0e0e0 !important;
  box-shadow: none !important;
}

.accordion-button:not(.collapsed) {
  background-color: rgba(255, 107, 0, 0.04) !important;
  color: #e0e0e0 !important;
}

.accordion-button::after {
  filter: invert(0.6);
}

.accordion-button:focus {
  box-shadow: none !important;
  border-color: #2d2d2d !important;
}

.accordion-body {
  background-color: #1e1e1e !important;
  border-top: 1px solid #2d2d2d !important;
}

.custom-accordion .accordion-item:last-child {
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
}

.custom-accordion .accordion-item:last-child .accordion-button.collapsed {
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
}

/* Documentation pages */
.documentation-content {
  max-width: 780px;
  padding: 1.5rem 2rem;
  font-family: 'DM Sans', sans-serif;
}

.documentation-content h1 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  padding-bottom: 0.6rem;
  border-bottom: 2px solid #FF6B00;
}

.documentation-content h2 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  margin-top: 2rem;
  margin-bottom: 0.75rem;
  padding-bottom: 0.4rem;
  border-bottom: 1px solid #3a3f48;
}

.documentation-content h3 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
  margin-top: 1.25rem;
  margin-bottom: 0.35rem;
  color: #FF8533;
}

.documentation-content p {
  color: #e0e0e0;
  line-height: 1.75;
  margin-bottom: 0.85rem;
}

.documentation-content ul {
  color: #e0e0e0;
  padding-left: 1.25rem;
  margin-bottom: 1rem;
  list-style: none;
}

.documentation-content ul li {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 0.4rem;
  line-height: 1.65;
}

.documentation-content ul li::before {
  content: "\2022";
  color: #FF6B00;
  font-weight: bold;
  position: absolute;
  left: 0;
}

.documentation-content strong {
  color: #ffffff;
}

.documentation-content a.anchor {
  text-decoration: none;
}


/* Hide wrapper divs when their partial renders nothing */
.collapse-when-empty:not(:has(> *)) {
  display: none;
}

/* Alpha warning bar */
.app-alpha-bar {
  margin-top: -20px;
}

.app-alpha-bar .alert {
  margin: 0;
  border-radius: 0;
}
