/*!
 * BTGS (BitcoinGold) Theme for eIquidus Block Explorer
 * Palette pulled from bitcoingold.site:
 *   --bg:     #0c0b09  deep brown-black
 *   --card:   #16130e  dark card surface
 *   --gold:   #e8c47a  warm gold accent
 *   --gold-2: #b8873a  deeper gold / hover
 *   --ink:    #f4efe4  warm off-white text
 *   --muted:  #a39886  muted tan
 *   --line:   rgba(232,196,122,0.22) gold border
 *   --danger: #e07a5f  warm red
 * Drop in: /public/css/themes/BTGS/bootstrap.min.css
 * settings.json: "theme": "BTGS"
 */

@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css");
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Outfit:wght@380;520;680&display=swap");

/* ════════════════════════════════════════════════════════════
   1. ROOT TOKENS
   ════════════════════════════════════════════════════════════ */
:root {
  --btgs-bg:        #0c0b09;
  --btgs-card:      #16130e;
  --btgs-card-2:    #1e1a12;
  --btgs-border:    rgba(232,196,122,0.22);
  --btgs-border-solid: #3a2f1a;
  --btgs-gold:      #e8c47a;
  --btgs-gold-2:    #b8873a;
  --btgs-gold-dim:  #8a6230;
  --btgs-ink:       #f4efe4;
  --btgs-muted:     #a39886;
  --btgs-danger:    #e07a5f;
  --btgs-success:   #6aaa8a;
  --btgs-mono:      'IBM Plex Mono', 'Courier New', monospace;
  --btgs-body:      Outfit, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;

  /* Bootstrap 5 token overrides */
  --bs-body-bg:                  var(--btgs-bg);
  --bs-body-color:               var(--btgs-ink);
  --bs-body-font-family:         var(--btgs-body);
  --bs-primary:                  var(--btgs-gold);
  --bs-primary-rgb:              232,196,122;
  --bs-secondary-rgb:            90,75,50;
  --bs-success:                  var(--btgs-success);
  --bs-danger:                   var(--btgs-danger);
  --bs-border-color:             var(--btgs-border-solid);
  --bs-border-radius:            6px;
  --bs-border-radius-sm:         4px;
  --bs-border-radius-lg:         10px;
  --bs-border-radius-xl:         14px;
  --bs-link-color:               var(--btgs-gold);
  --bs-link-hover-color:         #f3d48a;
  --bs-card-bg:                  var(--btgs-card);
  --bs-card-border-color:        var(--btgs-border-solid);
  --bs-modal-bg:                 var(--btgs-card);
  --bs-dropdown-bg:              var(--btgs-card);
  --bs-dropdown-border-color:    var(--btgs-border-solid);
  --bs-dropdown-link-color:      var(--btgs-ink);
  --bs-pagination-bg:            var(--btgs-card);
  --bs-pagination-border-color:  var(--btgs-border-solid);
  --bs-pagination-color:         var(--btgs-gold);
  --bs-pagination-active-bg:     var(--btgs-gold-2);
  --bs-pagination-active-border-color: var(--btgs-gold);
}

/* ════════════════════════════════════════════════════════════
   2. BODY & TYPOGRAPHY
   ════════════════════════════════════════════════════════════ */
html, body {
  background-color: var(--btgs-bg) !important;
  color: var(--btgs-ink) !important;
  font-family: var(--btgs-body) !important;
  font-weight: 380;
  font-size: 14.5px;
  -webkit-font-smoothing: antialiased;
}

/* Subtle warm radial glow — matches the site */
body::before {
  content: '';
  position: fixed;
  top: -120px; right: -160px;
  width: 700px; height: 480px;
  background: radial-gradient(ellipse at center, rgba(232,196,122,0.10) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--btgs-body) !important;
  color: var(--btgs-ink) !important;
  font-weight: 520;
}

a { color: var(--btgs-gold) !important; text-decoration: none; }
a:hover { color: #f3d48a !important; text-decoration: underline; }

code, pre, kbd, .font-monospace {
  font-family: var(--btgs-mono) !important;
  color: var(--btgs-gold);
}

/* ════════════════════════════════════════════════════════════
   3. NAVBAR
   ════════════════════════════════════════════════════════════ */
.navbar, nav.navbar {
  background: linear-gradient(180deg, #111009 0%, var(--btgs-bg) 100%) !important;
  border-bottom: 1px solid var(--btgs-border) !important;
  box-shadow: 0 2px 24px rgba(0,0,0,0.55) !important;
}
.navbar-brand {
  font-family: var(--btgs-body) !important;
  font-weight: 680 !important;
  font-size: 1rem !important;
  color: var(--btgs-gold) !important;
  letter-spacing: 0.08em;
}
.navbar-brand:hover { color: #f3d48a !important; text-decoration: none !important; }

.navbar-nav .nav-link {
  color: var(--btgs-muted) !important;
  font-size: 0.85rem !important;
  font-weight: 380;
  padding: 0.5rem 0.9rem !important;
  transition: color 0.2s;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active { color: var(--btgs-gold) !important; }
.navbar-toggler { border-color: var(--btgs-border-solid) !important; }

/* ════════════════════════════════════════════════════════════
   4. CARDS
   ════════════════════════════════════════════════════════════ */
.card {
  background-color: var(--btgs-card) !important;
  border: 1px solid var(--btgs-border) !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.4);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.card:hover {
  border-color: rgba(232,196,122,0.4) !important;
  box-shadow: 0 4px 24px rgba(184,135,58,0.12);
}
.card-header {
  background-color: var(--btgs-card-2) !important;
  border-bottom: 1px solid var(--btgs-border) !important;
  color: var(--btgs-muted) !important;
  font-family: var(--btgs-mono) !important;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 14px 14px 0 0 !important;
}
.card-body { color: var(--btgs-ink) !important; }
.card-footer {
  background-color: var(--btgs-card-2) !important;
  border-top: 1px solid var(--btgs-border) !important;
  color: var(--btgs-muted) !important;
  border-radius: 0 0 14px 14px !important;
}

/* ════════════════════════════════════════════════════════════
   5. TABLES — full BS5.3 bg-type reset
   ════════════════════════════════════════════════════════════ */
.table,
.table > thead,
.table > tbody,
.table > tfoot,
.table > thead > tr,
.table > tbody > tr,
.table > tfoot > tr,
.table > thead > tr > th,
.table > thead > tr > td,
.table > tbody > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > th,
.table > tfoot > tr > td {
  --bs-table-bg:        transparent;
  --bs-table-bg-type:   initial;
  --bs-table-bg-state:  initial;
  --bs-table-accent-bg: transparent;
}

.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th {
  background: var(--btgs-card) !important;
  color: var(--btgs-ink) !important;
  border-color: var(--btgs-border) !important;
  vertical-align: middle;
  font-size: 14px;
}

.table > thead > tr > th,
.table > thead > tr > td {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-muted) !important;
  font-family: var(--btgs-mono) !important;
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--btgs-border) !important;
  border-color: var(--btgs-border) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type:  initial;
  --bs-table-bg-state: initial;
  background: rgba(232,196,122,0.04) !important;
  color: var(--btgs-ink) !important;
}
.table-hover > tbody > tr:hover > * {
  --bs-table-bg-type:  initial;
  --bs-table-bg-state: initial;
  background: rgba(232,196,122,0.08) !important;
  color: var(--btgs-gold) !important;
}

/* Kill ALL contextual cell variants */
.table > :not(caption) > * > .table-primary,
.table > :not(caption) > * > .table-secondary,
.table > :not(caption) > * > .table-success,
.table > :not(caption) > * > .table-danger,
.table > :not(caption) > * > .table-warning,
.table > :not(caption) > * > .table-info,
.table > :not(caption) > * > .table-light,
.table > :not(caption) > * > .table-dark,
.table > :not(caption) > * > .table-active {
  --bs-table-bg-type:  initial;
  --bs-table-bg-state: initial;
  background: rgba(232,196,122,0.07) !important;
  color: var(--btgs-ink) !important;
  border-color: var(--btgs-border) !important;
}

/* eIquidus coinbase / "New Coins" cell */
.table td[class*="coinbase"],
.table tr.coinbase td,
.table td.text-center[colspan] {
  background: rgba(232,196,122,0.07) !important;
  color: var(--btgs-gold) !important;
  font-style: italic;
}

/* ════════════════════════════════════════════════════════════
   6. DATATABLES
   ════════════════════════════════════════════════════════════ */
.dataTables_wrapper, .dataTables_length,
.dataTables_filter, .dataTables_info, .dataTables_paginate {
  color: var(--btgs-muted) !important;
  font-size: 0.82rem;
}
.dataTables_filter input, .dataTables_length select {
  background: var(--btgs-card-2) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  color: var(--btgs-ink) !important;
  border-radius: 6px !important;
  padding: 0.25rem 0.5rem;
}
.dataTables_filter input:focus, .dataTables_length select:focus {
  border-color: var(--btgs-gold) !important;
  box-shadow: 0 0 0 3px rgba(232,196,122,0.15) !important;
  outline: none;
}
table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-muted) !important;
}

/* ════════════════════════════════════════════════════════════
   7. PAGINATION
   ════════════════════════════════════════════════════════════ */
.pagination .page-item .page-link {
  background: var(--btgs-card) !important;
  border-color: var(--btgs-border-solid) !important;
  color: var(--btgs-gold) !important;
  border-radius: 6px !important;
  font-size: 0.82rem;
  margin: 0 2px;
}
.pagination .page-item .page-link:hover {
  background: var(--btgs-card-2) !important;
  border-color: var(--btgs-gold) !important;
  color: #f3d48a !important;
}
.pagination .page-item.active .page-link {
  background: var(--btgs-gold-2) !important;
  border-color: var(--btgs-gold) !important;
  color: #1a140c !important;
  font-weight: 520;
}
.pagination .page-item.disabled .page-link {
  background: var(--btgs-card) !important;
  color: var(--btgs-muted) !important;
  opacity: 0.5;
}

/* ════════════════════════════════════════════════════════════
   8. BUTTONS
   ════════════════════════════════════════════════════════════ */
.btn {
  border-radius: 999px !important;
  font-family: var(--btgs-body) !important;
  font-size: 0.85rem;
  font-weight: 520;
  transition: all 0.2s;
}
.btn-primary {
  background: var(--btgs-gold) !important;
  border-color: var(--btgs-gold) !important;
  color: #1a140c !important;
}
.btn-primary:hover {
  filter: brightness(1.08) !important;
  box-shadow: 0 0 16px rgba(232,196,122,0.3) !important;
}
.btn-secondary {
  background: transparent !important;
  border: 1px solid var(--btgs-border-solid) !important;
  color: var(--btgs-muted) !important;
}
.btn-secondary:hover {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-ink) !important;
  border-color: var(--btgs-gold) !important;
}
.btn-outline-primary {
  background: transparent !important;
  border: 1px solid var(--btgs-border-solid) !important;
  color: var(--btgs-ink) !important;
}
.btn-outline-primary:hover {
  background: var(--btgs-gold) !important;
  border-color: var(--btgs-gold) !important;
  color: #1a140c !important;
}
.btn-danger {
  background: var(--btgs-danger) !important;
  border-color: var(--btgs-danger) !important;
  color: #fff !important;
}
.btn-sm { font-size: 0.78rem !important; padding: 0.22rem 0.7rem !important; }

/* ════════════════════════════════════════════════════════════
   9. FORMS
   ════════════════════════════════════════════════════════════ */
.form-control, .form-select {
  background: var(--btgs-card-2) !important;
  border-color: var(--btgs-border-solid) !important;
  color: var(--btgs-ink) !important;
  border-radius: 8px !important;
  font-family: var(--btgs-body) !important;
}
.form-control:focus, .form-select:focus {
  border-color: var(--btgs-gold) !important;
  box-shadow: 0 0 0 3px rgba(232,196,122,0.15) !important;
  background: var(--btgs-card-2) !important;
  color: var(--btgs-ink) !important;
}
.form-control::placeholder { color: var(--btgs-muted) !important; opacity: 0.7; }
.form-label {
  color: var(--btgs-muted) !important;
  font-family: var(--btgs-mono) !important;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.input-group-text {
  background: var(--btgs-card-2) !important;
  border-color: var(--btgs-border-solid) !important;
  color: var(--btgs-gold) !important;
  border-radius: 8px !important;
}

/* ════════════════════════════════════════════════════════════
   10. BADGES
   ════════════════════════════════════════════════════════════ */
.badge { border-radius: 999px !important; font-size: 0.72rem; font-weight: 500; }
.badge.bg-primary, .badge.bg-success {
  background: var(--btgs-gold-2) !important;
  color: #1a140c !important;
}
.badge.bg-danger    { background: var(--btgs-danger) !important; color: #fff !important; }
.badge.bg-warning   { background: #c9973a !important; color: #1a140c !important; }
.badge.bg-secondary { background: #3a2f1a !important; color: var(--btgs-muted) !important; }
.badge.bg-info      { background: #2a4a5a !important; color: #8ac8d8 !important; }

/* ════════════════════════════════════════════════════════════
   11. ALERTS
   ════════════════════════════════════════════════════════════ */
.alert { border-radius: 10px !important; border-left-width: 3px; }
.alert-primary, .alert-info {
  background: rgba(232,196,122,0.09) !important;
  border-color: var(--btgs-gold) !important;
  color: var(--btgs-gold) !important;
}
.alert-danger {
  background: rgba(224,122,95,0.12) !important;
  border-color: var(--btgs-danger) !important;
  color: #f0a090 !important;
}
.alert-success {
  background: rgba(106,170,138,0.12) !important;
  border-color: var(--btgs-success) !important;
  color: #8ac8a8 !important;
}
.alert-warning {
  background: rgba(184,135,58,0.12) !important;
  border-color: var(--btgs-gold-2) !important;
  color: var(--btgs-gold) !important;
}

/* ════════════════════════════════════════════════════════════
   12. DROPDOWNS
   ════════════════════════════════════════════════════════════ */
.dropdown-menu {
  background: var(--btgs-card) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.55);
}
.dropdown-item {
  color: var(--btgs-ink) !important;
  font-size: 0.88rem;
  border-radius: 8px;
  margin: 2px 6px;
  width: calc(100% - 12px);
}
.dropdown-item:hover {
  background: rgba(232,196,122,0.1) !important;
  color: var(--btgs-gold) !important;
}
.dropdown-divider { border-color: var(--btgs-border-solid) !important; }

/* ════════════════════════════════════════════════════════════
   13. MODALS
   ════════════════════════════════════════════════════════════ */
.modal-content {
  background: var(--btgs-card) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  border-radius: 16px !important;
  box-shadow: 0 0 48px rgba(0,0,0,0.7);
}
.modal-header {
  background: var(--btgs-card-2) !important;
  border-bottom: 1px solid var(--btgs-border) !important;
  border-radius: 16px 16px 0 0 !important;
}
.modal-title {
  color: var(--btgs-ink) !important;
  font-weight: 520;
}
.modal-footer {
  background: var(--btgs-card-2) !important;
  border-top: 1px solid var(--btgs-border) !important;
  border-radius: 0 0 16px 16px !important;
}
.btn-close { filter: invert(1) brightness(0.6); }
.modal-backdrop { background: #000 !important; }

/* ════════════════════════════════════════════════════════════
   14. NAV TABS
   ════════════════════════════════════════════════════════════ */
.nav-tabs { border-bottom: 1px solid var(--btgs-border) !important; }
.nav-tabs .nav-link {
  color: var(--btgs-muted) !important;
  font-size: 0.85rem;
  border-color: transparent !important;
  background: transparent !important;
  border-radius: 8px 8px 0 0 !important;
}
.nav-tabs .nav-link:hover { color: var(--btgs-gold) !important; }
.nav-tabs .nav-link.active {
  color: var(--btgs-gold) !important;
  background: var(--btgs-card-2) !important;
  border-color: var(--btgs-border) var(--btgs-border) var(--btgs-card-2) !important;
}
.nav-pills .nav-link {
  color: var(--btgs-muted) !important;
  border-radius: 999px !important;
}
.nav-pills .nav-link.active {
  background: var(--btgs-gold-2) !important;
  color: #1a140c !important;
}

/* ════════════════════════════════════════════════════════════
   15. LIST GROUPS
   ════════════════════════════════════════════════════════════ */
.list-group-item {
  background: var(--btgs-card) !important;
  border-color: var(--btgs-border) !important;
  color: var(--btgs-ink) !important;
  font-size: 0.88rem;
}
.list-group-item.active {
  background: var(--btgs-gold-2) !important;
  border-color: var(--btgs-gold) !important;
  color: #1a140c !important;
}
.list-group-item:hover {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-gold) !important;
}

/* ════════════════════════════════════════════════════════════
   16. PROGRESS / BREADCRUMBS / FOOTER
   ════════════════════════════════════════════════════════════ */
.progress {
  background: var(--btgs-card-2) !important;
  border-radius: 99px !important;
  height: 6px;
}
.progress-bar {
  background: linear-gradient(90deg, var(--btgs-gold-2), var(--btgs-gold)) !important;
  border-radius: 99px !important;
}

.breadcrumb {
  background: var(--btgs-card-2) !important;
  border: 1px solid var(--btgs-border) !important;
  padding: 0.5rem 1rem;
  border-radius: 8px !important;
}
.breadcrumb-item a { color: var(--btgs-gold) !important; }
.breadcrumb-item.active { color: var(--btgs-muted) !important; }
.breadcrumb-item + .breadcrumb-item::before {
  color: var(--btgs-gold-2) !important;
  content: "›";
}

footer, .footer, #footer {
  background: #0a0906 !important;
  border-top: 1px solid var(--btgs-border) !important;
  color: var(--btgs-muted) !important;
  font-size: 0.78rem;
}
footer a, .footer a { color: var(--btgs-gold) !important; }

/* ════════════════════════════════════════════════════════════
   17. SCROLLBAR
   ════════════════════════════════════════════════════════════ */
::-webkit-scrollbar              { width: 6px; height: 6px; }
::-webkit-scrollbar-track        { background: var(--btgs-bg); }
::-webkit-scrollbar-thumb        { background: var(--btgs-gold-dim); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover  { background: var(--btgs-gold-2); }

/* ════════════════════════════════════════════════════════════
   18. TOOLTIP
   ════════════════════════════════════════════════════════════ */
.tooltip .tooltip-inner {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-gold) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  border-radius: 6px !important;
  font-size: 0.78rem;
}

/* ════════════════════════════════════════════════════════════
   19. eIQUIDUS-SPECIFIC
   ════════════════════════════════════════════════════════════ */
.panel, .panel-default, .well {
  background: var(--btgs-card) !important;
  border: 1px solid var(--btgs-border) !important;
  border-radius: 14px !important;
  color: var(--btgs-ink) !important;
}
.panel-heading {
  background: var(--btgs-card-2) !important;
  border-bottom: 1px solid var(--btgs-border) !important;
  color: var(--btgs-muted) !important;
  font-family: var(--btgs-mono) !important;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 14px 14px 0 0 !important;
  font-weight: 500;
}

.hash, .block-hash, .tx-hash, .address-hash {
  font-family: var(--btgs-mono) !important;
  color: var(--btgs-gold) !important;
  font-size: 0.82rem;
  word-break: break-all;
}
.hash:hover { color: #f3d48a !important; }

.text-success, .positive, .price-up   { color: var(--btgs-success) !important; }
.text-danger,  .negative, .price-down { color: var(--btgs-danger) !important; }
.text-warning  { color: var(--btgs-gold) !important; }
.text-primary  { color: var(--btgs-gold) !important; }
.text-muted    { color: var(--btgs-muted) !important; }
.text-info     { color: #8ac8d8 !important; }

.os-scrollbar-track  { background: var(--btgs-bg) !important; }
.os-scrollbar-handle { background: var(--btgs-gold-dim) !important; border-radius: 3px; }
.os-scrollbar-handle:hover { background: var(--btgs-gold-2) !important; }

#coin-info, #market-panel, .market-info, .coin-info {
  background: var(--btgs-card-2) !important;
  border-bottom: 1px solid var(--btgs-border) !important;
  color: var(--btgs-ink) !important;
  font-size: 0.85rem;
}

#search, #searchform input[type="text"] {
  background: var(--btgs-card-2) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  color: var(--btgs-ink) !important;
  border-radius: 999px !important;
  padding-left: 1rem;
}
#search:focus, #searchform input[type="text"]:focus {
  border-color: var(--btgs-gold) !important;
  box-shadow: 0 0 0 3px rgba(232,196,122,0.15) !important;
}
#searchform .btn, #search-btn {
  background: var(--btgs-gold) !important;
  border-color: var(--btgs-gold) !important;
  color: #1a140c !important;
  border-radius: 999px !important;
  font-weight: 520;
}
#searchform .btn:hover, #search-btn:hover {
  filter: brightness(1.08) !important;
}

.label, .label-default {
  background: var(--btgs-card-2) !important;
  color: var(--btgs-muted) !important;
  border: 1px solid var(--btgs-border-solid) !important;
  border-radius: 999px !important;
  font-size: 0.72rem;
  font-family: var(--btgs-mono) !important;
}
.label-primary { background: var(--btgs-gold-2) !important; color: #1a140c !important; border: none !important; }
.label-success { background: #2a5a3a !important; color: var(--btgs-success) !important; border: none !important; }
.label-danger  { background: #5a2a1a !important; color: var(--btgs-danger) !important; border: none !important; }

.confirmations { color: var(--btgs-muted) !important; font-size: 0.75rem; font-family: var(--btgs-mono) !important; }
.confirmed     { color: var(--btgs-success) !important; }
.unconfirmed   { color: var(--btgs-gold) !important; }

/* ════════════════════════════════════════════════════════════
   20. MISC
   ════════════════════════════════════════════════════════════ */
hr { border-color: var(--btgs-border) !important; opacity: 1; }
.bg-dark, .bg-body { background: var(--btgs-card) !important; }
.border { border-color: var(--btgs-border-solid) !important; }
.border-primary { border-color: var(--btgs-gold) !important; }

@media (max-width: 768px) {
  .navbar-brand { font-size: 0.9rem !important; }
  .table { font-size: 0.8rem; }
}
