/*
 * CoiledCoin II Explorer — "Ledger" theme
 * Light surfaces, navy structure, copper used sparingly as accent only.
 */

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

:root {
  --ink: #e6edf5;
  --ink-soft: #b7c3d3;
  --muted: #8a9bb0;
  --paper: #121a26;
  --surface: #1a2433;
  --line: #2c3a4f;
  --line-soft: #243145;
  --navy: #152133;
  --navy-deep: #0e1724;
  --copper: #d08a42;
  --copper-hover: #e0a05a;
  --good: #4caf7d;
  --bad: #e05c5c;
  --font: 'Figtree', 'Segoe UI', sans-serif;
  --mono: 'JetBrains Mono', ui-monospace, monospace;
  --radius: 4px;
}

html, body {
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: var(--font) !important;
  font-size: 14.5px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--copper) !important; text-decoration: none; }
a:hover { color: var(--copper-hover) !important; text-decoration: underline; }

code, pre, .breakWord, .hash, .txid, td a.breakWord {
  font-family: var(--mono) !important;
  font-size: 0.92em;
}

/* ── Chrome / side nav ── */
#main-header-side,
#side-nav-bar,
#footer-container,
.offcanvas-body.navbar,
#inner-header-side,
.navbar.bg-primary {
  background: var(--navy-deep) !important;
  border: 0 !important;
  box-shadow: none !important;
}

#main-header-side .navbar,
#side-nav-bar {
  background: var(--navy-deep) !important;
}

#side-nav-bar .nav-link,
#main-header-side .nav-link,
#footer-container .nav-link,
#footer-container .poweredby,
#footer-container label {
  color: #c5d0de !important;
}

#side-nav-bar .nav-link:hover,
#side-nav-bar .nav-link.active {
  color: #fff !important;
  background: transparent !important;
}

#side-nav-bar .nav-link.active {
  color: var(--copper) !important;
  border-left: 3px solid var(--copper);
  padding-left: calc(1rem - 3px);
}

#side-nav-bar .nav-icon { opacity: 0.85; }

.logo-main {
  max-height: 42px !important;
  filter: none;
}

/* Search */
#search-navbar-collapse,
.search-box-custom {
  background: var(--navy) !important;
}
.search-for .form-control {
  background: #1c2a3d !important;
  border: 1px solid #2a3c54 !important;
  color: #eef2f7 !important;
  border-radius: var(--radius) !important;
  box-shadow: none !important;
}
.search-for .form-control::placeholder { color: #8a9bb0; }
.search-for .btn,
.btn-success {
  background: var(--copper) !important;
  border-color: var(--copper) !important;
  color: #fff !important;
  border-radius: var(--radius) !important;
  font-weight: 600;
  box-shadow: none !important;
}
.search-for .btn:hover,
.btn-success:hover {
  background: var(--copper-hover) !important;
  border-color: var(--copper-hover) !important;
}

/* ── Page body ── */
#body-container,
#main-container,
#main-child-container {
  background: var(--paper) !important;
}

#page-title {
  color: var(--ink) !important;
  font-weight: 700;
  letter-spacing: -0.02em;
  font-size: 1.65rem;
}

.sub-page-header,
.text-muted,
#lastUpdatedDate {
  color: var(--muted) !important;
}

#header-img {
  border-radius: var(--radius);
}

/* Cards / panels */
.card,
.card-default {
  background: var(--surface) !important;
  border: 1px solid var(--line) !important;
  border-radius: var(--radius) !important;
  box-shadow: none !important;
}

.card-header {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line-soft) !important;
  color: var(--ink) !important;
  font-weight: 600;
}

.card-body { background: var(--surface) !important; color: var(--ink) !important; }

.header-panel,
#supplypanel,
#pnlOne .card,
#pnlTwo .card {
  background: var(--surface) !important;
  border: 1px solid var(--line) !important;
}

.header-panel label,
#supply {
  color: var(--ink) !important;
  font-family: var(--mono);
  font-weight: 500;
}

/* Tables */
.table {
  --bs-table-bg: var(--surface);
  --bs-table-striped-bg: #152032;
  --bs-table-hover-bg: #203048;
  --bs-table-color: var(--ink);
  --bs-table-striped-color: var(--ink);
  --bs-table-hover-color: var(--ink);
  --bs-table-border-color: var(--line-soft);
  color: var(--ink) !important;
  border-color: var(--line) !important;
}

.table > :not(caption) > * > * {
  background-color: transparent !important;
  color: var(--ink) !important;
  border-bottom-color: var(--line-soft) !important;
}

.table thead th {
  background: #152032 !important;
  color: var(--ink-soft) !important;
  font-weight: 600;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-bottom: 1px solid var(--line) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: #152032 !important;
}

.table-bordered,
.table-bordered > :not(caption) > * > * {
  border-color: var(--line-soft) !important;
}

.summary-table th,
.single-row-table th {
  background: #152032 !important;
}

.table-danger,
.table-danger > * {
  background-color: #3a2222 !important;
  color: var(--bad) !important;
}

.table-success,
.table-success > * {
  background-color: #1e3328 !important;
  color: var(--good) !important;
}

.decimal { color: var(--muted) !important; }

/* Charts */
#nethashChartParent .card,
#difficultyChartParent .card {
  background: var(--surface) !important;
}
#nethashChart,
#difficultyChart {
  background-color: var(--surface) !important;
}

/* Badges / labels */
.badge {
  border-radius: var(--radius) !important;
  font-weight: 600;
}

/* DataTables */
.dataTables_wrapper,
.dataTables_info,
.dataTables_length label,
.dataTables_filter label {
  color: var(--ink-soft) !important;
}
.dataTables_wrapper .page-link {
  color: var(--ink) !important;
  background: var(--surface) !important;
  border-color: var(--line) !important;
}
.dataTables_wrapper .page-item.active .page-link {
  background: var(--navy) !important;
  border-color: var(--navy) !important;
  color: #fff !important;
}

/* Forms elsewhere */
.form-control, .form-select {
  border-radius: var(--radius) !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
}

.btn {
  border-radius: var(--radius) !important;
  font-weight: 600;
  box-shadow: none !important;
}

.btn-primary {
  background: var(--navy) !important;
  border-color: var(--navy) !important;
}

/* Footer power */
#footer-container {
  border-top: 1px solid #243247;
}
#footer-container .poweredby:hover { color: #fff !important; }

/* Soften default darkly dark leftovers inside content */
#main-container .bg-dark,
#main-container .navbar-dark {
  background: var(--surface) !important;
  color: var(--ink) !important;
}

#main-container h1,
#main-container h2,
#main-container h3,
#main-container h4,
#main-container strong {
  color: var(--ink);
}
