/* ===================================================================
 * MARSLib Javadoc Theme — Dark Mode
 * Branded for Mountaineer Area RoboticS (MARS) — FRC Team 2614
 *
 * Brand Colors:
 *   MARS Red: #B32416
 *   Black:    #0a0a0a
 *   White:    #e8e8e8
 *
 * Brand Fonts:
 *   Headers: Orbitron
 *   Body:    Ubuntu
 *   Code:    JetBrains Mono
 * =================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&family=Ubuntu:wght@300;400;500;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

/* ===== Force Dark Background Globally ===== */
html, body {
  background-color: #0a0a0a !important;
  color: #e0e0e0 !important;
  font-family: 'Ubuntu', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Override every possible container */
main, .header, .footer,
div.contentContainer, div.sourceContainer,
div.classUseContainer, div.serializedFormContainer,
div.constantValuesContainer, div.deprecatedListContainer,
#all-classes-table, #all-packages-table,
.flex-box, .flex-content,
.class-uses, .type-summary,
section, article, aside {
  background-color: #0a0a0a !important;
  color: #e0e0e0 !important;
}

/* ===== Navigation Bar ===== */
div.top-nav,
div.sub-nav,
div.bottom-nav,
.nav-bar,
nav.sub-nav,
header nav {
  background: #141414 !important;
  border-bottom: 1px solid #2a2a2a !important;
  border-top: 1px solid #2a2a2a !important;
}

ul.nav-list li {
  border-radius: 6px;
}

ul.nav-list li:hover {
  background-color: rgba(179, 36, 22, 0.15) !important;
}

ul.nav-list a,
ul.sub-nav-list a,
.nav-bar a,
div.sub-nav a,
.sub-nav-list-small a {
  color: #e0e0e0 !important;
  text-decoration: none;
  font-family: 'Orbitron', sans-serif;
  font-size: 0.8em;
  letter-spacing: 0.04em;
}

ul.nav-list a:hover,
ul.sub-nav-list a:hover {
  color: #d42e1e !important;
}

ul.nav-list li.nav-bar-cell1-rev {
  background: #B32416 !important;
  border-radius: 6px;
}

ul.nav-list li.nav-bar-cell1-rev a {
  color: #ffffff !important;
  font-weight: 600;
}

/* ===== Headers ===== */
h1, h2, h3, h4, h5, h6,
.title, .sub-title {
  font-family: 'Orbitron', sans-serif !important;
  color: #e8e8e8 !important;
  letter-spacing: -0.01em;
}

h1.title {
  color: #B32416 !important;
  font-weight: 700;
  letter-spacing: 0.02em;
}

/* ===== Content text ===== */
.class-description,
.block,
.inheritance,
.description,
dt, dd,
p, span, li, div,
.type-signature,
.class-description pre,
.type-name-label,
.type-name-link,
.type-signature,
.extends-implements {
  color: #e0e0e0 !important;
}

/* Ensure parameter names & descriptions are visible */
.params-body td,
.params-body th,
dl.notes dt,
dl.notes dd,
.notes,
dd {
  color: #cccccc !important;
  line-height: 1.6;
}

/* ===== Links ===== */
a, a:link, a:visited {
  color: #d42e1e !important;
  text-decoration: none;
}

a:hover, a:active {
  color: #ef4435 !important;
  text-decoration: underline;
}

/* ===== Tables ===== */
.summary-table,
.details-table,
table.memberSummary,
.caption,
caption {
  border: 1px solid #2a2a2a !important;
  border-radius: 8px;
  overflow: hidden;
}

.summary-table th,
.details-table th,
table.memberSummary th,
.table-header,
.caption,
caption,
.col-first,
.col-second,
.col-last {
  background: #1e1e1e !important;
  color: #e8e8e8 !important;
  font-family: 'Orbitron', sans-serif;
  font-weight: 600;
  font-size: 0.85em;
  border-bottom: 2px solid #B32416 !important;
  padding: 12px 16px;
}

.summary-table td,
.details-table td,
table.memberSummary td {
  border-color: #2a2a2a !important;
  padding: 10px 16px;
  color: #e0e0e0 !important;
  background-color: transparent !important;
}

/* Alternate row coloring */
.even-row-color,
.odd-row-color,
tr:nth-child(even),
.alt-color {
  background-color: #141414 !important;
}

tr:nth-child(odd) {
  background-color: #0a0a0a !important;
}

.summary-table tr:hover td,
.details-table tr:hover td {
  background: rgba(179, 36, 22, 0.15) !important;
}

/* Specific column text colors */
.col-first, .col-first a,
.col-second,
.col-last,
.col-constructor-name, .col-constructor-name a,
td.col-first, td.col-second, td.col-last {
  color: #e0e0e0 !important;
}

td.col-first a, .col-constructor-name a {
  color: #d42e1e !important;
}

/* ===== Code Blocks ===== */
code, pre, .source-code,
.source-line-no,
tt, samp, kbd {
  font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', ui-monospace, SFMono-Regular, monospace !important;
  font-size: 0.9em;
  background: #1a1a1a !important;
  border-radius: 6px;
  padding: 2px 6px;
  color: #ef4435 !important;
}

pre {
  padding: 16px !important;
  border: 1px solid #2a2a2a !important;
  overflow-x: auto;
  background: #1a1a1a !important;
  color: #e0e0e0 !important;
}

/* ===== Type Signatures ===== */
.member-signature {
  background: #1a1a1a !important;
  border-left: 3px solid #B32416 !important;
  padding: 12px 16px !important;
  border-radius: 0 6px 6px 0;
  font-family: 'JetBrains Mono', monospace !important;
  font-size: 0.9em;
  color: #e0e0e0 !important;
}

.member-signature .return-type,
.member-signature .type-parameters,
.member-signature .modifiers,
.member-signature .arguments,
.member-signature .exceptions {
  color: #cccccc !important;
}

/* ===== Section Details ===== */
section.detail {
  border-bottom: 1px solid #2a2a2a;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

section.class-description,
section.summary,
section.details {
  background: #0a0a0a !important;
}

/* ===== Deprecation Notices ===== */
.deprecated-block,
.deprecated-label {
  background: rgba(179, 36, 22, 0.1) !important;
  border: 1px solid #B32416 !important;
  border-radius: 8px;
  padding: 16px !important;
  color: #ef4435 !important;
}

/* ===== Search Box ===== */
input[type="search"],
input[type="text"],
.search-input {
  background: #1a1a1a !important;
  color: #e8e8e8 !important;
  border: 1px solid #2a2a2a !important;
  border-radius: 6px;
  padding: 8px 12px;
  font-family: 'Ubuntu', sans-serif;
  outline: none;
}

input[type="search"]:focus,
input[type="text"]:focus {
  border-color: #B32416 !important;
  box-shadow: 0 0 0 3px rgba(179, 36, 22, 0.15);
}

/* Search results dropdown */
.ui-autocomplete,
.search-tag-result,
ul.ui-autocomplete {
  background: #141414 !important;
  border: 1px solid #2a2a2a !important;
  color: #e0e0e0 !important;
}

.ui-autocomplete li,
.ui-state-active {
  background: #1e1e1e !important;
  color: #e0e0e0 !important;
}

/* ===== Scrollbars (Webkit) ===== */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #0a0a0a;
}

::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #666666;
}

/* ===== Package List Styling ===== */
.package-summary-table td.col-first a {
  font-weight: 600;
  color: #B32416 !important;
}

.package-summary-table td.col-first a:hover {
  color: #ef4435 !important;
}

/* ===== Footer ===== */
.legal,
.bottom-nav,
footer {
  color: #666666 !important;
  background: #0a0a0a !important;
  border-top: 1px solid #2a2a2a !important;
  padding-top: 16px;
}

/* ===== Breadcrumbs / Sub-nav ===== */
.sub-nav, .sub-nav-list {
  background: #1a1a1a !important;
}

/* ===== Help page ===== */
.help-section .help-note {
  background: #141414 !important;
  border: 1px solid #2a2a2a !important;
}

/* ===== Constant fields page ===== */
.constant-values-container {
  background: #0a0a0a !important;
}

/* ===== Inheritance tree lines ===== */
.inheritance li {
  color: #999999 !important;
}

/* ===== Horizontal rulers ===== */
hr {
  border-color: #2a2a2a !important;
}

/* ===== Catch-all for any remaining white backgrounds ===== */
div, section, article, header, footer, nav, main, aside,
.flex-box, .flex-content, .content-container,
.class-use-page, .hierarchy, .overview-tree {
  background-color: #0a0a0a !important;
}
