/*
 * market-ui.css — CRYPTO MARKET UI/UX REDESIGN PASS
 * Additive layer; loads after the active theme CSS.
 * All selectors are scoped or specific to avoid breaking admin/other pages.
 */

/* ======================================================
   DESIGN TOKENS — fall back gracefully to theme values
   ====================================================== */
:root {
  --mkt-positive:       #16c784;
  --mkt-negative:       #ea3943;
  --mkt-neutral:        #adb5bd;
  --mkt-card-bg:        #fff;
  --mkt-card-border:    #e9ecef;
  --mkt-card-shadow:    0 2px 12px rgba(0,0,0,.07);
  --mkt-table-head-bg:  #f8f9fa;
  --mkt-table-hover-bg: #f2f4f8;
  --mkt-radius:         10px;
  --mkt-radius-sm:      6px;
  --mkt-icon-bg:        #f0f2f5;
}

/* ======================================================
   GLOBAL OVERRIDES — positive / negative colours
   ====================================================== */
.p-up,
td .p-up,
.increment-text   { color: var(--mkt-positive) !important; }

.p-down,
td .p-down,
.decrement-text   { color: var(--mkt-negative) !important; }

.change-g         { color: var(--mkt-positive) !important; }
.change-l         { color: var(--mkt-negative) !important; }

/* ======================================================
   INLINE-BADGE  (used on change % in tables)
   ====================================================== */
.mkt-badge-up,
.mkt-badge-down,
.mkt-badge-neutral {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 12px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 5px;
  white-space: nowrap;
}
.mkt-badge-up      { background: rgba(22,199,132,.13); color: var(--mkt-positive); }
.mkt-badge-down    { background: rgba(234,57,67,.11);  color: var(--mkt-negative); }
.mkt-badge-neutral { background: #f0f2f5;              color: #868e96; }

/* ======================================================
   MARKET STATS BAR  (homepage stat cards row)
   ====================================================== */
.mkt-stats-bar {
  padding: 20px 0 6px;
}

.mkt-stat-card {
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
  padding: 14px 16px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  transition: box-shadow .18s ease, transform .15s ease;
  height: calc(100% - 14px);
}
.mkt-stat-card:hover {
  box-shadow: 0 5px 20px rgba(0,0,0,.10);
  transform: translateY(-1px);
}

.mkt-stat-icon {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 9px;
  background: var(--mkt-icon-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  color: var(--site-primary, #343a40);
}

.mkt-stat-body { flex: 1; min-width: 0; }

.mkt-stat-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .6px;
  color: #868e96;
  margin-bottom: 3px;
}

.mkt-stat-value {
  font-size: 15px;
  font-weight: 800;
  color: #212529;
  white-space: normal;
  word-break: break-word;
  line-height: 1.25;
  direction: ltr;         /* financial values always read LTR even in RTL pages */
  unicode-bidi: isolate;
}

.mkt-stat-sub {
  font-size: 11px;
  font-weight: 600;
  margin-top: 2px;
}

/* Helper / subtext line under the value */
.mkt-stat-helper {
  font-size: 10px;
  color: #adb5bd;
  margin-top: 3px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  direction: ltr;       /* clip from right end, not the start in RTL pages */
  unicode-bidi: isolate;
}

/* Unavailable value state */
.mkt-stat-value--unavail {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #adb5bd !important;
  white-space: normal !important;
  word-break: break-word;
}

/* Action / link card variants */
.mkt-stat-card--action {
  cursor: pointer;
  user-select: none;
}
.mkt-stat-card--action:focus-visible {
  outline: 2px solid var(--site-primary, #343a40);
  outline-offset: 2px;
}
.mkt-stat-card--link {
  text-decoration: none !important;
  color: inherit !important;
}
.mkt-stat-card--link:hover,
.mkt-stat-card--link:focus {
  text-decoration: none !important;
  color: inherit !important;
}

/* Disabled / unavailable card state */
.mkt-stat-card--disabled {
  opacity: 0.55;
  cursor: default;
}

/* Cue icon — absolute so it doesn't shrink the body */
.mkt-stat-card { position: relative; }
.mkt-stat-cue {
  position: absolute;
  bottom: 9px;
  right: 10px;
  color: #dee2e6;
  font-size: 11px;
  line-height: 1;
  transition: color .15s ease, transform .15s ease;
}
.mkt-stat-card--action:hover .mkt-stat-cue,
.mkt-stat-card--link:hover    .mkt-stat-cue {
  color: var(--site-primary, #495057);
}
.mkt-stat-card--action:hover .fa-arrow-down { transform: translateY(3px); }
/* Padding-bottom gives space so cue icon doesn't overlap text */
.mkt-stat-card { padding-bottom: 22px; }

/* Market snapshot microtext */
.mkt-snapshot-meta {
  font-size: 10.5px;
  color: #ced4da;
  text-align: right;
  padding: 0 4px 6px;
  letter-spacing: .2px;
}

/* ======================================================
   GLOBAL STAT-CARD TOOLTIP
   position:fixed — immune to overflow context and browser
   auto-translate DOM rewrites.
   ====================================================== */
.mkt-glob-tooltip {
  position: fixed;
  z-index: 9999;
  width: 270px;
  max-width: calc(100vw - 16px);
  background: #fff;
  border: 1px solid #e0e3e9;
  border-radius: 10px;
  padding: 13px 16px;
  box-shadow: 0 8px 28px rgba(0,0,0,.14);
  display: none;
  pointer-events: none;
}
.mkt-glob-tooltip.is-visible {
  display: block;
}
.mkt-glob-tooltip__title {
  display: block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .55px;
  color: #6c757d;
  margin-bottom: 7px;
}
.mkt-glob-tooltip__text {
  margin: 0;
  font-size: 13px;
  color: #343a40;
  line-height: 1.55;
}

/* ======================================================
   SEARCH BOX
   ====================================================== */
.mkt-search-wrap {
  position: relative;
  margin: 14px 0 10px;
}

.mkt-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #adb5bd;
  font-size: 14px;
  pointer-events: none;
  z-index: 2;
}

.mkt-search-wrap #coinSearch {
  width: 100% !important;
  height: 46px !important;
  padding: 0 16px 0 42px !important;
  font-size: 14px;
  border: 1.5px solid #dee2e6 !important;
  border-radius: var(--mkt-radius-sm) !important;
  outline: none;
  background: #fff;
  color: #212529;
  transition: border-color .18s ease, box-shadow .18s ease;
  box-shadow: 0 1px 4px rgba(0,0,0,.04) !important;
  display: block;
}
.mkt-search-wrap #coinSearch:focus {
  border-color: var(--site-primary, #343a40) !important;
  box-shadow: 0 0 0 3px rgba(52,58,64,.10) !important;
}
.mkt-search-wrap #coinSearch::placeholder { color: #adb5bd; }

#searchResults {
  position: absolute;
  z-index: 9999;
  width: 100%;
  max-height: 300px;
  overflow-y: auto;
  background: #fff;
  border: 1.5px solid #dee2e6 !important;
  border-radius: var(--mkt-radius-sm) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.12) !important;
  margin-top: 2px;
}
#searchResults a {
  display: flex !important;
  align-items: center !important;
  padding: 10px 14px !important;
  font-size: 13px;
  border-bottom: 1px solid #f3f4f6;
  color: #212529 !important;
  text-decoration: none !important;
  transition: background .1s;
}
#searchResults a:last-child { border-bottom: none; }
#searchResults a:hover { background: #f8f9fa !important; color: #212529 !important; }
#searchResults a small {
  margin-left: 6px;
  color: #868e96;
  font-size: 11px;
  font-weight: 700;
}

/* ======================================================
   COIN TABLE WRAPPER
   ====================================================== */
.mkt-table-wrap {
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
  overflow: hidden;
  margin-bottom: 6px;
}

.mkt-table-header {
  padding: 20px 24px 14px;
  border-bottom: 1px solid #f0f2f5;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.mkt-table-title {
  font-size: 19px;
  font-weight: 800;
  color: #212529;
  margin: 0;
  line-height: 1.25;
}

.mkt-table-subtitle {
  font-size: 13px;
  color: #868e96;
  margin: 3px 0 0;
}

.mkt-table-inner {
  padding: 0 12px 14px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.mkt-table-search-row {
  padding: 12px 16px 4px;
  border-bottom: 1px solid #f0f2f5;
}

/* DataTable visual overrides */
#coins-info-table.table thead th {
  background: var(--mkt-table-head-bg) !important;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .4px;
  color: #495057 !important;
  border-bottom: 2px solid #e9ecef !important;
  padding: 11px 10px;
  white-space: nowrap;
  vertical-align: middle;
}
#coins-info-table.table tbody tr:hover > td {
  background: var(--mkt-table-hover-bg) !important;
}
#coins-info-table.table tbody td {
  padding: 10px;
  vertical-align: middle !important;
  font-size: 13.5px;
  border-top: 1px solid #f3f4f6 !important;
}
#coins-info-table.table-striped tbody tr:nth-of-type(odd) {
  background-color: #fafbfc;
}
#coins-info-table tbody td:first-child {
  font-weight: 600;
  color: #868e96;
  font-size: 12.5px;
  white-space: nowrap;
}
#coins-info-table .price {
  font-weight: 700;
  letter-spacing: -.2px;
}

/* Coin symbol badge in table */
.badge-warning {
  font-size: 10px !important;
  font-weight: 700;
  border-radius: 4px;
  padding: 2px 6px;
}

/* Coin image size in table rows */
.table-bordered > tbody > tr > td img {
  height: 26px;
  width: auto;
  border-radius: 50%;
}

/* Watchlist star */
.watchlist-action { font-size: 14px; color: #c0a020; margin-right: 4px; }
.watchlist-action:hover { color: #f0c030; text-decoration: none; }

/* ======================================================
   SECTION HEADINGS (shared)
   ====================================================== */
.mkt-section-title {
  font-size: 22px;
  font-weight: 800;
  color: #212529;
  margin: 0 0 8px;
  line-height: 1.25;
}
.mkt-section-lead {
  font-size: 14px;
  color: #868e96;
  margin: 0 0 18px;
}

/* Page hero */
.page-title h1 {
  font-size: clamp(1.5rem, 3vw, 2.3rem) !important;
  font-weight: 800;
  letter-spacing: -.3px;
}
.page-title h6 {
  font-size: 15px;
  opacity: .87;
}

/* ======================================================
   TOP GAINERS / LOSERS
   ====================================================== */
.mkt-movers-desc {
  font-size: 13px;
  color: #6c757d;
  padding: 11px 16px;
  background: #f8f9fa;
  border-radius: var(--mkt-radius-sm);
  border-left: 3px solid #ced4da;
  margin-bottom: 14px;
  line-height: 1.5;
}
.mkt-movers-desc.desc-gainer { border-left-color: var(--mkt-positive); }
.mkt-movers-desc.desc-loser  { border-left-color: var(--mkt-negative); }

.mkt-page-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 20px;
  letter-spacing: .3px;
  vertical-align: middle;
  margin-left: 8px;
}
.mkt-page-badge.badge-gainer { background: rgba(22,199,132,.14); color: var(--mkt-positive); }
.mkt-page-badge.badge-loser  { background: rgba(234,57,67,.12);  color: var(--mkt-negative); }

/* ======================================================
   NEWS CARDS
   ====================================================== */
.mkt-news-section {
  padding-top: 32px;
  padding-bottom: 48px;
}

.mkt-news-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: var(--mkt-radius);
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  margin-bottom: 20px;
  transition: box-shadow .18s ease, transform .15s ease;
}
.mkt-news-card:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,.11);
  transform: translateY(-2px);
}
.mkt-news-card > img {
  width: 100%;
  height: 185px;
  object-fit: cover;
  display: block;
  border-bottom: 1px solid #f0f2f5;
}
.mkt-news-card .card-body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.mkt-news-card .news-date {
  font-size: 11px;
  font-weight: 700;
  color: #868e96;
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-bottom: 8px;
}
.mkt-news-card h6.card-title {
  font-size: 15px;
  font-weight: 700;
  color: #212529;
  line-height: 1.45;
  margin-bottom: 10px;
}
.mkt-news-card p {
  font-size: 13px;
  color: #6c757d;
  line-height: 1.6;
  flex: 1;
  margin-bottom: 14px;
}
.mkt-news-card .btn-read-more {
  align-self: flex-start;
  font-size: 13px;
  font-weight: 700;
  padding: 8px 18px;
  border-radius: var(--mkt-radius-sm);
}
.mkt-news-view-more {
  margin-top: 4px;
  font-size: 15px;
  font-weight: 700;
  padding: 12px 0;
  border-radius: var(--mkt-radius-sm);
  width: 100%;
  display: block;
  text-align: center;
}

/* ======================================================
   FOOTER WIDGETS
   ====================================================== */
.mkt-footer-section-title {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .5px;
  color: #6c757d !important;
  padding: 0 0 8px !important;
  border-bottom: 2px solid #f0f2f5;
  margin-bottom: 8px !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mkt-footer-section-title a {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #adb5bd !important;
  text-decoration: none;
}
.mkt-footer-section-title a:hover { color: #6c757d !important; }

.mkt-footer-row {
  display: flex;
  align-items: center;
  padding: 6px 0;
  border-bottom: 1px solid #f3f4f6;
  font-size: 13px;
}
.mkt-footer-row:last-child { border-bottom: none; }

.mkt-footer-row img {
  width: 16px !important;
  height: 16px !important;
  border-radius: 50%;
  margin-right: 7px !important;
  min-width: 16px;
  vertical-align: middle !important;
  border: none !important;
  min-height: unset !important;
  padding: 0 !important;
}

.mkt-footer-coin-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.mkt-footer-coin-name b { font-size: 13px; }
.mkt-footer-coin-name small { font-size: 11px; color: #868e96; margin-left: 3px; }

.mkt-footer-price {
  font-size: 12px;
  font-weight: 600;
  color: #495057;
  margin: 0 6px;
  white-space: nowrap;
}

.mkt-footer-change {
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

/* ======================================================
   TICKER — brand-color aware (footer-ticker-brand-pass)
   ====================================================== */
.ticker-bottom {
  border-top: 2px solid rgba(0,0,0,.18) !important;
  background-color: var(--site-accent, #ffc107) !important;  /* use longhand: shorthand+!important+var() has Chromium quirk */
  /* position:fixed, bottom:0, height, padding-left:100%, overflow:hidden
     all come from style-yellow.css — do not duplicate here */
}
.ticker-bottom .ticker {
  /* Restore inline-block: display:flex from old market-ui.css broke the
     animation because it removed the padding-right:100% loop mechanism */
  display: inline-block !important;
  height: 2.5rem !important;
  line-height: 2.35rem !important;
  white-space: nowrap !important;
  padding: 0 100% 0 0 !important; /* restore padding-right:100% for loop */
  box-sizing: content-box !important;
  /* Speed: 30s instead of the original 75s */
  -webkit-animation-duration: 30s !important;
  animation-duration: 30s !important;
}
.ticker-bottom .ticker__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 18px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  color: #1a1a00;
  vertical-align: middle;
}
.ticker-bottom .ticker__item img {
  height: 18px;
  width: 18px;
  border-radius: 50%;
  vertical-align: middle;
}
.ticker-bottom .ticker__item a {
  font-weight: 700;
  color: #1a1a00;
}
.ticker-bottom .ticker__item a:hover { text-decoration: none; color: #000; }
.ticker-bottom .ticker__item .cmlp-price {
  color: #333;
}
.ticker-bottom .ticker__item .fa-caret-up   { color: #155724; }
.ticker-bottom .ticker__item .fa-caret-down { color: #721c24; }

/* ======================================================
   DARK MODE
   ====================================================== */
.dark-mode .mkt-stat-card {
  background: #1e2127 !important;
  border-color: #2d3038 !important;
}
.dark-mode .mkt-stat-value         { color: #eee; }
.dark-mode .mkt-stat-label         { color: #777; }
.dark-mode .mkt-stat-icon          { background: #2d3038; color: #ccc; }
.dark-mode .mkt-stat-helper        { color: #555; }
.dark-mode .mkt-stat-value--unavail { color: #555 !important; }
.dark-mode .mkt-stat-cue           { color: #3d4049; }
.dark-mode .mkt-stat-card--action:hover .mkt-stat-cue,
.dark-mode .mkt-stat-card--link:hover   .mkt-stat-cue { color: #888; }
.dark-mode .mkt-snapshot-meta      { color: #3d4049; }

/* Dark mode tooltip */
.dark-mode .mkt-glob-tooltip {
  background: #252830;
  border-color: #2d3038;
}
.dark-mode .mkt-glob-tooltip__title { color: #888; }
.dark-mode .mkt-glob-tooltip__text  { color: #ccc; }

.dark-mode .mkt-table-wrap {
  background: #1e2127 !important;
  border-color: #2d3038 !important;
}
.dark-mode .mkt-table-header { border-color: #2d3038; }
.dark-mode .mkt-table-title  { color: #eee; }
.dark-mode .mkt-table-subtitle { color: #777; }

.dark-mode #coins-info-table.table thead th {
  background: #252830 !important;
  color: #aaa !important;
  border-color: #2d3038 !important;
}
.dark-mode #coins-info-table.table tbody td {
  border-color: #2d3038 !important;
  color: #ddd !important;
}
.dark-mode #coins-info-table.table-striped tbody tr:nth-of-type(odd) {
  background-color: #20242c !important;
}
.dark-mode #coins-info-table.table tbody tr:hover > td {
  background: #262b35 !important;
}

.dark-mode .mkt-search-wrap #coinSearch {
  background: #1e2127 !important;
  border-color: #2d3038 !important;
  color: #eee;
}
.dark-mode .mkt-search-wrap #coinSearch:focus {
  border-color: #888 !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,.07) !important;
}
.dark-mode .mkt-search-wrap #coinSearch::placeholder { color: #555; }
.dark-mode #searchResults {
  background: #1e2127 !important;
  border-color: #2d3038 !important;
}
.dark-mode #searchResults a {
  color: #eee !important;
  border-color: #2d3038 !important;
}
.dark-mode #searchResults a:hover { background: #262b35 !important; }
.dark-mode .mkt-search-icon { color: #555; }

.dark-mode .mkt-section-title { color: #eee; }
.dark-mode .mkt-section-lead  { color: #777; }

.dark-mode .mkt-news-card {
  background: #1e2127 !important;
  border-color: #2d3038 !important;
}
.dark-mode .mkt-news-card h6.card-title { color: #eee; }
.dark-mode .mkt-news-card p             { color: #888; }
.dark-mode .mkt-news-card .news-date    { color: #555; }
.dark-mode .mkt-news-card > img         { border-color: #2d3038; }

.dark-mode .mkt-movers-desc {
  background: #1e2127;
  color: #888;
}
.dark-mode .mkt-movers-desc.desc-gainer { border-left-color: var(--mkt-positive); }
.dark-mode .mkt-movers-desc.desc-loser  { border-left-color: var(--mkt-negative); }

.dark-mode .ticker-bottom {
  background-color: var(--site-primary, #7a5500) !important;  /* brand-color-aware dark mode; use longhand for var() compat */
  border-color: rgba(0,0,0,.4) !important;
}
.dark-mode .ticker-bottom .ticker__item {
  color: #fff5cc;
}
.dark-mode .ticker-bottom .ticker__item a { color: #fff5cc; }
.dark-mode .ticker-bottom .ticker__item .cmlp-price { color: #ffe89a; }
.dark-mode .ticker-bottom .ticker__item .fa-caret-up   { color: #90ee90; }
.dark-mode .ticker-bottom .ticker__item .fa-caret-down { color: #ffb3b3; }

.dark-mode .mkt-footer-section-title { border-color: #2d3038; color: #555 !important; }
.dark-mode .mkt-footer-row { border-color: #2d3038; }

.dark-mode .badge-warning {
  background-color: #2d3038 !important;
  color: #aaa !important;
}
.dark-mode .coin-name { color: #eee !important; }

/* ======================================================
   RESPONSIVE
   ====================================================== */
@media (max-width: 767.98px) {
  .mkt-stat-card {
    padding: 12px 13px;
    gap: 10px;
  }
  .mkt-stat-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    font-size: 15px;
  }
  .mkt-stat-value  { font-size: 13px; }
  .mkt-stat-label  { font-size: 10px; }
  .mkt-stat-helper { font-size: 9.5px; }

  .mkt-table-header { padding: 15px 15px 12px; }
  .mkt-table-title  { font-size: 16px; }
  .mkt-table-inner  { padding: 0 0 8px; }
  .mkt-table-search-row { padding: 10px 12px 4px; }

  #coins-info-table.table thead th {
    font-size: 10px;
    padding: 9px 7px;
  }
  #coins-info-table.table tbody td {
    padding: 8px 7px;
    font-size: 12.5px;
  }

  .mkt-news-card > img { height: 160px; }
  .mkt-section-title   { font-size: 19px; }

  .page-title h6 {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

@media (max-width: 575.98px) {
  .mkt-stat-value  { font-size: 12px; }
  .mkt-stat-helper { font-size: 9px; }
  .mkt-stats-bar   { padding-bottom: 0; }
  .mkt-glob-tooltip { width: calc(100vw - 16px); }
}

/* ======================================================
   COIN DETAIL PAGE — .coin-detail-page
   Extends the market-ui design system for single coin view.
   ====================================================== */

/* ---- Not Found ---- */
.coin-not-found-card {
  text-align: center;
  padding: 60px 24px;
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
}
.coin-nf-icon {
  font-size: 56px;
  color: var(--mkt-neutral);
  margin-bottom: 16px;
}
.coin-nf-title {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 12px;
}
.coin-nf-desc {
  font-size: 1rem;
  color: #6c757d;
  max-width: 480px;
  margin: 0 auto 24px;
}

/* ---- API warning ---- */
.coin-api-warning {
  border-radius: var(--mkt-radius-sm);
  font-size: 0.9rem;
}

/* ---- Hero Card ---- */
.coin-hero-card {
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
  padding: 24px 28px;
  margin-top: 20px;
}
.coin-hero-identity {
  display: flex;
  align-items: center;
  gap: 16px;
}
.coin-hero-img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: contain;
  background: var(--mkt-icon-bg);
  padding: 4px;
  flex-shrink: 0;
}
.coin-hero-meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.coin-hero-name {
  font-size: 1.65rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
}
.coin-hero-badges {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.coin-sym-badge {
  font-size: 0.78rem;
  padding: 3px 8px;
  letter-spacing: 0.5px;
  background: #6c757d;
}
.coin-rank-badge {
  font-size: 0.78rem;
  padding: 3px 8px;
}

/* ---- Price block ---- */
.coin-hero-right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
@media (min-width: 768px) {
  .coin-hero-right { align-items: flex-end; }
}
.coin-price-block {
  text-align: left;
}
@media (min-width: 768px) {
  .coin-price-block { text-align: right; }
}
.coin-price {
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.5px;
  color: inherit;
}
.coin-change-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 6px;
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .coin-change-row { justify-content: flex-end; }
}
.coin-change-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.9rem;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  background: rgba(0,0,0,.05);
}
.coin-change-badge.p-up {
  background: rgba(22, 199, 132, 0.12);
  color: var(--mkt-positive) !important;
}
.coin-change-badge.p-down {
  background: rgba(234, 57, 67, 0.12);
  color: var(--mkt-negative) !important;
}
.coin-last-updated {
  font-size: 0.78rem;
  color: #adb5bd;
  margin-top: 5px;
}
.coin-hero-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

/* ---- Key Stats Grid ---- */
.coin-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 16px;
}
@media (max-width: 767.98px) {
  .coin-stat-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 479.98px) {
  .coin-stat-grid { grid-template-columns: 1fr 1fr; }
}
.coin-stat-item {
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius-sm);
  padding: 14px 16px;
  box-shadow: 0 1px 6px rgba(0,0,0,.04);
}
.coin-stat-label {
  font-size: 0.78rem;
  color: #6c757d;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-weight: 600;
  margin-bottom: 4px;
}
.coin-stat-value {
  font-size: 1.1rem;
  font-weight: 700;
  word-break: break-all;
}

/* ---- Chart Card ---- */
.coin-chart-card {
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
  padding: 20px 24px;
  margin-top: 16px;
}
.coin-chart-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 16px;
}
.coin-chart-title {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0;
}
.coin-chart-controls {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

/* Tab + Range buttons inside chart */
.coin-chart-card .chart-tabs,
.coin-chart-card .chart-range {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.coin-chart-card .tab-btn,
.coin-chart-card .range-btn {
  padding: 5px 13px;
  border: 1px solid var(--mkt-card-border);
  background: var(--mkt-card-bg);
  font-size: 13px;
  border-radius: 20px;
  cursor: pointer;
  color: inherit;
  transition: all 0.18s ease;
  font-weight: 500;
}
.coin-chart-card .tab-btn.active,
.coin-chart-card .range-btn.active {
  background: var(--site-primary, #007bff);
  border-color: var(--site-primary, #007bff);
  color: #fff;
  font-weight: 600;
}
.coin-chart-card .tab-btn:hover,
.coin-chart-card .range-btn:hover {
  border-color: var(--site-primary, #007bff);
  color: var(--site-primary, #007bff);
}

/* ---- Data Source Card ---- */
.coin-source-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: var(--mkt-card-bg);
  border: 1px solid var(--mkt-card-border);
  border-radius: var(--mkt-radius);
  box-shadow: var(--mkt-card-shadow);
  padding: 18px 22px;
}
.coin-source-icon {
  font-size: 1.6rem;
  color: var(--site-primary, #007bff);
  flex-shrink: 0;
  padding-top: 2px;
}
.coin-source-title {
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6c757d;
  margin-bottom: 4px;
}
.coin-source-text {
  font-size: 0.88rem;
  color: #495057;
  line-height: 1.6;
}

/* ---- Responsive: hero stacks on mobile ---- */
@media (max-width: 767.98px) {
  .coin-hero-card        { padding: 16px; }
  .coin-hero-right       { margin-top: 16px; }
  .coin-price            { font-size: 1.7rem; }
  .coin-chart-card       { padding: 14px 14px; }
  .coin-chart-header     { flex-direction: column; }
  .coin-source-card      { flex-direction: column; gap: 10px; }
  .coin-chart-controls   { flex-direction: column; align-items: flex-start; }
}

/* ---- Dark mode ---- */
.dark-mode .coin-hero-card,
.dark-mode .coin-stat-item,
.dark-mode .coin-chart-card,
.dark-mode .coin-source-card,
.dark-mode .coin-not-found-card {
  background: var(--mkt-card-bg, #1e2130);
  border-color: var(--mkt-card-border, #2d3150);
}
.dark-mode .coin-stat-label,
.dark-mode .coin-source-title {
  color: #8a9bbf;
}
.dark-mode .coin-stat-value {
  color: #e8eaf0;
}
.dark-mode .coin-source-text {
  color: #b0b8cc;
}
.dark-mode .coin-last-updated {
  color: #6c7a9a;
}
.dark-mode .coin-nf-desc {
  color: #8a9bbf;
}
.dark-mode .coin-chart-card .tab-btn,
.dark-mode .coin-chart-card .range-btn {
  background: #1e2130;
  border-color: #2d3150;
  color: #b0b8cc;
}
.dark-mode .coin-change-badge {
  background: rgba(255,255,255,.06);
}
.dark-mode .coin-change-badge.p-up  { background: rgba(22,199,132,.15); }
.dark-mode .coin-change-badge.p-down { background: rgba(234,57,67,.15); }

/* ═══════════════════════════════════════════════════════════════════════
   CRYPTO MARKET SIGNALS — added by crypto-signals-pass
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Signal page wrappers ── */
.signals-page-wrap {
  padding-top: 28px;
  padding-bottom: 48px;
}
.signals-page-header {
  margin-bottom: 18px;
}
.signals-page-title {
  font-size: 1.7rem;
  font-weight: 700;
  color: var(--site-primary, #1652f0);
  margin-bottom: 4px;
}
.signals-page-subtitle {
  color: #6c757d;
  font-size: .95rem;
  margin: 0;
}
.signals-breadcrumb {
  font-size: .85rem;
  color: #6c757d;
  margin-bottom: 14px;
}
.signals-breadcrumb a { color: var(--site-primary, #1652f0); text-decoration: none; }
.signals-breadcrumb a:hover { text-decoration: underline; }

/* ── Disclaimer banner ── */
.signal-disclaimer {
  background: #fff8e1;
  border: 1px solid #ffe082;
  border-left: 4px solid #ffc107;
  border-radius: 6px;
  padding: 10px 14px;
  font-size: .82rem;
  color: #555;
  margin-bottom: 20px;
  line-height: 1.5;
}
.signal-disclaimer i { color: #f59f00; margin-inline-end: 6px; }
.signal-disclaimer--bottom { margin-top: 32px; margin-bottom: 0; }

/* ── Filter bar ── */
.signals-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}
.signals-filter-btn {
  display: inline-block;
  padding: 5px 14px;
  border-radius: 20px;
  font-size: .8rem;
  font-weight: 600;
  text-decoration: none;
  border: 1.5px solid #dee2e6;
  color: #495057;
  transition: all .15s;
}
.signals-filter-btn:hover,
.signals-filter-btn.active {
  border-color: var(--site-primary, #1652f0);
  background: var(--site-primary, #1652f0);
  color: #fff;
}

/* ── Signal cards grid ── */
.signals-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 18px;
  margin-bottom: 24px;
}

.signal-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,.06);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .2s, transform .2s;
}
.signal-card:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,.12);
  transform: translateY(-2px);
}

.signal-card-top {
  padding: 14px 16px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-bottom: 1px solid #f1f3f5;
}
.signal-card-body {
  padding: 12px 16px;
  flex: 1;
}
.signal-card-footer {
  padding: 10px 16px;
  border-top: 1px solid #f1f3f5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: .78rem;
  color: #8a8fa8;
}

/* ── Coin info row ── */
.signal-coin-info {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.signal-coin-info--lg { gap: 14px; }
.signal-coin-img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: contain;
  flex-shrink: 0;
  background: #f8f9fa;
}
.signal-coin-img--lg { width: 48px; height: 48px; }
.signal-coin-name {
  font-weight: 600;
  font-size: .92rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 130px;
}
.signal-coin-symbol {
  font-size: .75rem;
  color: #888;
  font-weight: 500;
  text-transform: uppercase;
}

/* ── Signal badge ── */
.signal-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .02em;
  white-space: nowrap;
  flex-shrink: 0;
}
.signal-badge--lg {
  padding: 6px 16px;
  font-size: .9rem;
}

.signal-bullish  { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.signal-bearish  { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.signal-neutral  { background: #e2e3e5; color: #383d41; border: 1px solid #d6d8db; }
.signal-watch    { background: #fff3cd; color: #856404; border: 1px solid #ffeaa7; }
.signal-high-volatility { background: #d1ecf1; color: #0c5460; border: 1px solid #bee5eb; }

/* ── Confidence bar ── */
.confidence-bar {
  height: 6px;
  background: #e9ecef;
  border-radius: 4px;
  overflow: hidden;
  margin-top: 4px;
}
.confidence-bar--sm { height: 4px; }
.confidence-bar-fill {
  height: 100%;
  border-radius: 4px;
  transition: width .4s ease;
}
.confidence-bar-fill.signal-bullish  { background: #28a745; }
.confidence-bar-fill.signal-bearish  { background: #dc3545; }
.confidence-bar-fill.signal-neutral  { background: #6c757d; }
.confidence-bar-fill.signal-watch    { background: #ffc107; }
.confidence-bar-fill.signal-high-volatility { background: #17a2b8; }

/* ── Risk badge ── */
.risk-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: .72rem;
  font-weight: 600;
}
.risk-low    { background: #d4edda; color: #155724; }
.risk-medium { background: #fff3cd; color: #856404; }
.risk-high   { background: #f8d7da; color: #721c24; }

/* ── Card meta rows ── */
.signal-meta-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 0;
  font-size: .83rem;
}
.signal-meta-label { color: #6c757d; }
.signal-meta-value { font-weight: 600; }

.signal-conf-row { padding: 6px 0 4px; font-size: .83rem; }
.signal-conf-label { display: flex; justify-content: space-between; color: #6c757d; margin-bottom: 4px; }
.signal-conf-pct   { font-weight: 700; color: #343a40; }
.signal-conf-pct-lg { font-size: 1.6rem; font-weight: 700; color: var(--site-primary, #1652f0); }

.signal-reason {
  font-size: .8rem;
  color: #6c757d;
  margin: 8px 0 0;
  line-height: 1.5;
}

.signal-detail-link {
  color: var(--site-primary, #1652f0);
  font-weight: 600;
  font-size: .8rem;
  text-decoration: none;
}
.signal-detail-link:hover { text-decoration: underline; }

/* ── Signals empty state ── */
.signals-empty {
  text-align: center;
  padding: 48px 20px;
  color: #8a8fa8;
}
.signals-empty i { display: block; margin-bottom: 12px; }

/* ── Signals disabled page ── */
.signals-disabled-wrap {
  text-align: center;
  padding: 80px 20px;
  color: #6c757d;
}
.signals-disabled-icon { display: block; margin: 0 auto 16px; color: #dee2e6; }

/* ── Coin signal detail page ── */
.signal-detail-page {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 14px;
  padding: 28px;
  max-width: 860px;
  margin: 0 auto;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.signal-detail-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 20px;
}
.signal-detail-name {
  font-size: 1.4rem;
  font-weight: 700;
  margin: 0 0 2px;
}
.signal-metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 14px;
  margin: 20px 0;
}
.signal-metric-card {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 14px;
}
.signal-metric-label {
  font-size: .75rem;
  color: #6c757d;
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.signal-metric-value {
  font-size: .95rem;
  font-weight: 600;
}
.signal-reason-block,
.signal-ai-block,
.signal-admin-note {
  background: #f8f9fa;
  border-radius: 8px;
  padding: 16px 20px;
  margin: 14px 0;
}
.signal-reason-title {
  font-size: .9rem;
  font-weight: 700;
  color: #343a40;
  margin: 0 0 8px;
}
.signal-reason-text {
  font-size: .88rem;
  color: #555;
  line-height: 1.6;
  margin: 0;
}
.signal-detail-actions {
  margin-top: 24px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* ── Homepage signal section ── */
.homepage-signals-section {
  padding: 32px 0;
}
.homepage-signals-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--site-primary, #1652f0);
  margin-bottom: 4px;
}
.homepage-signals-sub {
  font-size: .85rem;
  color: #6c757d;
  margin-bottom: 18px;
}
.homepage-signals-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
}
.homepage-signal-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 10px;
  padding: 14px;
  box-shadow: 0 1px 6px rgba(0,0,0,.05);
  transition: box-shadow .2s, transform .15s;
  text-decoration: none;
  color: inherit;
  display: block;
}
.homepage-signal-card:hover {
  box-shadow: 0 4px 18px rgba(0,0,0,.1);
  transform: translateY(-2px);
  text-decoration: none;
  color: inherit;
}
.homepage-signals-more {
  text-align: center;
  margin-top: 18px;
}
.homepage-signals-more a {
  color: var(--site-primary, #1652f0);
  font-weight: 600;
  font-size: .9rem;
  text-decoration: none;
}
.homepage-signals-more a:hover { text-decoration: underline; }

/* ── Coin detail signal card ── */
.coin-signal-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 10px;
  padding: 18px;
  margin-bottom: 20px;
  box-shadow: 0 2px 8px rgba(0,0,0,.05);
}
.coin-signal-card-title {
  font-size: .95rem;
  font-weight: 700;
  color: #343a40;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.coin-signal-card-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 0;
  font-size: .84rem;
  border-bottom: 1px solid #f1f3f5;
}
.coin-signal-card-row:last-child { border-bottom: 0; }
.coin-signal-card-label { color: #6c757d; }
.coin-signal-card-disclaimer {
  font-size: .75rem;
  color: #999;
  margin-top: 10px;
  line-height: 1.5;
}

/* ── Dark mode ── */
.dark-mode .signal-card,
.dark-mode .signal-detail-page,
.dark-mode .coin-signal-card,
.dark-mode .homepage-signal-card {
  background: #1e2130;
  border-color: #2d3150;
  box-shadow: 0 2px 10px rgba(0,0,0,.25);
}
.dark-mode .signal-card-top,
.dark-mode .signal-card-footer,
.dark-mode .coin-signal-card-row { border-color: #2d3150; }
.dark-mode .signal-metric-card,
.dark-mode .signal-reason-block,
.dark-mode .signal-ai-block,
.dark-mode .signal-admin-note { background: #252840; }
.dark-mode .signal-coin-name,
.dark-mode .signal-detail-name,
.dark-mode .signal-reason-title,
.dark-mode .signal-conf-pct,
.dark-mode .signal-meta-value { color: #cdd5e0; }
.dark-mode .signal-page-title  { color: #7c9bff; }
.dark-mode .signal-reason-text,
.dark-mode .signal-meta-label,
.dark-mode .signal-page-subtitle,
.dark-mode .signal-coin-symbol,
.dark-mode .coin-signal-card-label { color: #8a9dc0; }
.dark-mode .confidence-bar { background: #2d3150; }
.dark-mode .signal-disclaimer { background: #2b2a1f; border-color: #5a4a1a; color: #c8b05a; }
.dark-mode .signal-bullish  { background: rgba(21,87,36,.35);  color: #5edb86; border-color: rgba(21,87,36,.5); }
.dark-mode .signal-bearish  { background: rgba(114,28,36,.35); color: #f08090; border-color: rgba(114,28,36,.5); }
.dark-mode .signal-neutral  { background: rgba(52,58,64,.5);   color: #adb5bd; border-color: rgba(52,58,64,.7); }
.dark-mode .signal-watch    { background: rgba(133,100,4,.3);  color: #ffe082; border-color: rgba(133,100,4,.5); }
.dark-mode .signal-high-volatility { background: rgba(12,84,96,.35); color: #78d3e0; border-color: rgba(12,84,96,.5); }
.dark-mode .risk-low    { background: rgba(21,87,36,.35);  color: #5edb86; }
.dark-mode .risk-medium { background: rgba(133,100,4,.3);  color: #ffe082; }
.dark-mode .risk-high   { background: rgba(114,28,36,.35); color: #f08090; }
.dark-mode .signals-filter-btn { border-color: #2d3150; color: #cdd5e0; }
.dark-mode .signals-filter-btn:hover,
.dark-mode .signals-filter-btn.active { background: var(--site-primary, #1652f0); border-color: var(--site-primary, #1652f0); color: #fff; }
.dark-mode .signal-card-footer,
.dark-mode .signals-page-subtitle,
.dark-mode .signals-breadcrumb { color: #8a9dc0; }
.dark-mode .signals-breadcrumb a { color: #7c9bff; }
.dark-mode .homepage-signals-title { color: #7c9bff; }

/* ── RTL support ── */
[dir="rtl"] .signal-card-top,
[dir="rtl"] .signal-detail-header,
[dir="rtl"] .signal-meta-row,
[dir="rtl"] .signal-card-footer { flex-direction: row-reverse; }
[dir="rtl"] .signal-coin-info { flex-direction: row-reverse; }
[dir="rtl"] .signals-breadcrumb { direction: rtl; }

/* ── Mobile responsive ── */
@media (max-width: 575px) {
  .signals-grid { grid-template-columns: 1fr; }
  .homepage-signals-grid { grid-template-columns: 1fr; }
  .signal-metrics-grid { grid-template-columns: 1fr 1fr; }
  .signal-detail-page { padding: 18px 14px; }
  .signal-card-top { flex-direction: column; align-items: flex-start; gap: 8px; }
  .signal-detail-header { flex-direction: column; }
  .signal-detail-actions { flex-direction: column; }
}

/* ═══════════════════════════════════════════════════════════════════════
   SIGNALS TICKER — signals-placement-ticker-pass
   ═══════════════════════════════════════════════════════════════════════ */

/* Ticker wrapper — sits between stat cards and coin table */
.signals-ticker-wrap {
  display: flex;
  align-items: center;
  background: var(--site-primary-bg, rgba(22,82,240,.04));
  border: 1px solid var(--site-primary-border, rgba(22,82,240,.14));
  border-radius: 8px;
  overflow: hidden;
  margin: 0 0 14px;
  height: 38px;
  min-width: 0;
  max-width: 100%;
  width: 100%;
}

/* Coloured label pill on the left */
.signals-ticker-label {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0 12px;
  height: 100%;
  background: var(--site-primary, #1652f0);
  color: #fff;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

/* Scrolling viewport */
.signals-ticker-viewport {
  flex: 1;
  overflow: hidden;
  height: 100%;
  position: relative;
}

/* Animated track (items × 2 for seamless loop) */
.signals-ticker-track {
  display: flex;
  align-items: center;
  height: 100%;
  width: max-content;
  will-change: transform;
  animation: signals-ticker-scroll 30s linear infinite;
}
.signals-ticker-wrap:hover .signals-ticker-track,
.signals-ticker-wrap:focus-within .signals-ticker-track {
  animation-play-state: paused;
}

@keyframes signals-ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Reduced motion: slow down, do NOT stop — ticker must always auto-move */
@media (prefers-reduced-motion: reduce) {
  .signals-ticker-track    { animation-duration: 90s; }
  .signals-ticker-viewport { overflow-x: auto; }
}

/* Individual ticker item */
.signals-ticker-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
  text-decoration: none;
  color: #343a40;
  font-size: .79rem;
  border-inline-end: 1px solid rgba(0,0,0,.07);
  height: 100%;
  white-space: nowrap;
  transition: background .15s;
}
.signals-ticker-item:hover,
.signals-ticker-item:focus {
  background: rgba(22,82,240,.07);
  text-decoration: none;
  color: #343a40;
  outline: none;
}
.signals-ticker-sym {
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .02em;
}
.signals-ticker-badge {
  padding: 2px 7px !important;
  font-size: .68rem !important;
  letter-spacing: .02em;
}
.signals-ticker-conf {
  color: #495057;
  font-size: .75rem;
  font-weight: 600;
}
.signals-ticker-risk {
  color: #8a8fa8;
  font-size: .72rem;
}

/* Dark mode ticker */
.dark-mode .signals-ticker-wrap {
  background: rgba(22,82,240,.08);
  border-color: rgba(124,155,255,.2);
}
.dark-mode .signals-ticker-item {
  color: #cdd5e0;
  border-inline-end-color: rgba(255,255,255,.06);
}
.dark-mode .signals-ticker-item:hover,
.dark-mode .signals-ticker-item:focus  { background: rgba(22,82,240,.14); color: #cdd5e0; }
.dark-mode .signals-ticker-conf        { color: #cdd5e0; }
.dark-mode .signals-ticker-risk        { color: #8a9dc0; }

/* RTL ticker — reverse scroll direction */
[dir="rtl"] .signals-ticker-track {
  animation-direction: reverse;
}

/* Mobile ticker */
@media (max-width: 575px) {
  .signals-ticker-label     { padding: 0 8px; font-size: .68rem; }
  .signals-ticker-item      { padding: 0 10px; gap: 5px; }
  .signals-ticker-risk      { display: none; }
}

/* ═══════════════════════════════════════════════════════════════════════
   COMPACT SIGNALS PREVIEW SECTION — signals-placement-ticker-pass
   ═══════════════════════════════════════════════════════════════════════ */

.signals-home-section {
  padding: 28px 0 20px;
  overflow-x: hidden;
}
.signals-home-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}
.signals-home-title {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--site-primary, #1652f0);
  margin: 0 0 2px;
}
.signals-home-sub {
  font-size: .82rem;
  color: #6c757d;
  margin: 0;
}
.signals-home-view-all {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 16px;
  background: var(--site-primary, #1652f0);
  color: #fff;
  border-radius: 6px;
  font-size: .82rem;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .15s;
  white-space: nowrap;
}
.signals-home-view-all:hover { opacity: .85; color: #fff; text-decoration: none; }

/* Preview card grid */
.signals-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr));
  gap: 12px;
  margin-bottom: 14px;
  min-width: 0;
  max-width: 100%;
}
.signal-preview-card {
  background: #fff;
  border: 1px solid #e9ecef;
  border-radius: 10px;
  padding: 11px 13px;
  box-shadow: 0 1px 4px rgba(0,0,0,.05);
  text-decoration: none;
  color: inherit;
  display: block;
  transition: box-shadow .18s, transform .15s;
}
.signal-preview-card:hover {
  box-shadow: 0 5px 18px rgba(0,0,0,.1);
  transform: translateY(-2px);
  text-decoration: none;
  color: inherit;
}
.signal-preview-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  margin-bottom: 7px;
}
.signal-preview-coin {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}
.signal-preview-img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: contain;
  flex-shrink: 0;
  background: #f8f9fa;
}
.signal-preview-name {
  font-weight: 600;
  font-size: .84rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100px;
  display: block;
}
.signal-preview-sym {
  font-size: .7rem;
  color: #888;
  display: block;
}
.signal-preview-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: .75rem;
  margin-top: 4px;
}
.signal-preview-conf {
  color: #495057;
  font-weight: 600;
}
.signal-preview-reason {
  font-size: .74rem;
  color: #6c757d;
  margin: 5px 0 0;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
}

/* Dark mode preview */
.dark-mode .signal-preview-card      { background: #1e2130; border-color: #2d3150; }
.dark-mode .signals-home-title        { color: #7c9bff; }
.dark-mode .signals-home-sub,
.dark-mode .signal-preview-reason,
.dark-mode .signal-preview-conf       { color: #8a9dc0; }
.dark-mode .signal-preview-name       { color: #cdd5e0; }
.dark-mode .signal-preview-sym        { color: #8a9dc0; }

/* RTL preview */
[dir="rtl"] .signals-home-header { flex-direction: row-reverse; }
[dir="rtl"] .signal-preview-top  { flex-direction: row-reverse; }
[dir="rtl"] .signal-preview-coin { flex-direction: row-reverse; }

/* Mobile preview */
@media (max-width: 575px) {
  .signals-preview-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .signal-preview-reason { display: none; }
}

/* ═══════════════════════════════════════════════════════════════════════
   COIN SIGNAL PANEL — compact top-of-page panel (signals-placement-ticker-pass)
   ═══════════════════════════════════════════════════════════════════════ */

.coin-signal-panel {
  background: linear-gradient(135deg, rgba(22,82,240,.035), rgba(22,82,240,.01));
  border: 1px solid rgba(22,82,240,.14);
  border-radius: 10px;
  padding: 13px 16px;
  margin: 14px 0 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.coin-signal-panel-icon {
  width: 36px;
  height: 36px;
  background: var(--site-primary, #1652f0);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: .9rem;
  flex-shrink: 0;
}
.coin-signal-panel-stats {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  flex: 1;
}
.coin-signal-panel-stat {
  text-align: center;
  min-width: 62px;
}
.coin-signal-panel-stat-label {
  font-size: .67rem;
  color: #6c757d;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 3px;
}
.coin-signal-panel-stat-value {
  font-size: .88rem;
  font-weight: 700;
}
.coin-signal-panel-reason {
  font-size: .77rem;
  color: #6c757d;
  flex-basis: 100%;
  margin-top: 2px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.45;
}
.coin-signal-panel-footer {
  flex-basis: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  font-size: .73rem;
  color: #8a8fa8;
  padding-top: 7px;
  border-top: 1px solid rgba(22,82,240,.08);
  margin-top: 2px;
}
.coin-signal-panel-disclaimer {
  font-size: .7rem;
  color: #9a9da8;
  font-style: italic;
}

/* Dark mode panel */
.dark-mode .coin-signal-panel {
  background: linear-gradient(135deg, rgba(22,82,240,.1), rgba(22,82,240,.03));
  border-color: rgba(124,155,255,.18);
}
.dark-mode .coin-signal-panel-stat-label,
.dark-mode .coin-signal-panel-reason,
.dark-mode .coin-signal-panel-disclaimer { color: #8a9dc0; }
.dark-mode .coin-signal-panel-stat-value  { color: #cdd5e0; }
.dark-mode .coin-signal-panel-footer      { color: #8a9dc0; border-color: rgba(124,155,255,.1); }

/* RTL panel */
[dir="rtl"] .coin-signal-panel        { flex-direction: row-reverse; }
[dir="rtl"] .coin-signal-panel-footer { flex-direction: row-reverse; }

/* Mobile panel */
@media (max-width: 575px) {
  .coin-signal-panel       { padding: 11px 12px; gap: 10px; }
  .coin-signal-panel-stats { gap: 10px; }
  .coin-signal-panel-stat  { min-width: 50px; }
}

/* ======================================================
   RTL SUPPORT — stat cards + tooltip
   ====================================================== */
[dir="rtl"] .mkt-stat-cue {
  right: auto;
  left: 10px;
}
[dir="rtl"] .mkt-snapshot-meta { text-align: left; }

/* ======================================================
   WEB3 TOOLS — web3-wallet-fees-pass
   All classes use existing CSS variables so they follow
   the active branding theme automatically.
   ====================================================== */

/* ── Page container ─────────────────────────────────── */
.web3-tools-page {
  padding-top: 28px;
  padding-bottom: 48px;
}

/* ── Hero section ────────────────────────────────────── */
.web3-hero {
  background: linear-gradient(135deg, var(--site-primary, #7c3aed) 0%, var(--site-accent, #2563eb) 100%);
  border-radius: var(--mkt-radius, 10px);
  color: #fff;
  padding: 36px 28px 28px;
  margin-bottom: 28px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.web3-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.08);
  pointer-events: none;
}
.web3-hero__icon-grid {
  display: flex;
  justify-content: center;
  gap: 18px;
  font-size: 28px;
  margin-bottom: 12px;
  opacity: .85;
}
.web3-hero__title {
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 8px;
  color: #fff;
}
.web3-hero__sub {
  font-size: 14px;
  margin: 0;
  opacity: .9;
}

/* ── Coming-soon badge ──────────────────────────────── */
.web3-coming-soon-badge {
  display: inline-block;
  margin-top: 14px;
  background: rgba(255,255,255,.18);
  color: #fff;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 30px;
  padding: 4px 14px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .4px;
}

/* ── Hub tool cards ──────────────────────────────────── */
.web3-tool-card {
  display: flex;
  flex-direction: column;
  background: var(--mkt-card-bg, #fff);
  border: 1px solid var(--mkt-card-border, #e5e7eb);
  border-radius: var(--mkt-radius, 10px);
  padding: 24px 20px 20px;
  color: var(--mkt-value-color, #111);
  text-decoration: none !important;
  transition: box-shadow .18s, transform .18s, border-color .18s;
  height: 100%;
  cursor: pointer;
}
.web3-tool-card:hover,
.web3-tool-card:focus-visible {
  box-shadow: 0 8px 28px rgba(0,0,0,.12);
  transform: translateY(-2px);
  border-color: var(--site-primary, #7c3aed);
  color: var(--mkt-value-color, #111);
}
.web3-tool-card__icon {
  font-size: 28px;
  color: var(--site-primary, #7c3aed);
  margin-bottom: 10px;
}
.web3-tool-card__title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
}
.web3-tool-card__desc {
  font-size: 13px;
  color: var(--mkt-label-color, #6b7280);
  flex: 1;
  line-height: 1.5;
}
.web3-tool-card__cta {
  margin-top: 14px;
  font-size: 12px;
  font-weight: 600;
  color: var(--site-primary, #7c3aed);
}

/* ── Form card ───────────────────────────────────────── */
.web3-form-card {
  background: var(--mkt-card-bg, #fff);
  border: 1px solid var(--mkt-card-border, #e5e7eb);
  border-radius: var(--mkt-radius, 10px);
  padding: 22px 20px;
}
.web3-form-card .form-control[disabled],
.web3-form-card .form-control-file[disabled] {
  opacity: .65;
  cursor: not-allowed;
  background-color: #f8f9fa;
}
.web3-form-card__title {
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 16px;
  color: var(--mkt-value-color, #111);
}

/* ── Wallet panel ────────────────────────────────────── */
.web3-wallet-panel {
  background: var(--mkt-card-bg, #fff);
  border: 1.5px solid var(--mkt-card-border, #e5e7eb);
  border-radius: var(--mkt-radius, 10px);
  padding: 20px;
}
.web3-wallet-panel__title {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 14px;
  color: var(--mkt-value-color, #111);
  display: flex;
  align-items: center;
  gap: 8px;
}
.web3-wallet-panel__note {
  font-size: 11px;
  font-weight: 400;
  color: var(--mkt-label-color, #6b7280);
  margin-left: auto;
}
.web3-wallet-panel__providers {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
.web3-wallet-panel__status {
  font-size: 12px;
  color: var(--mkt-label-color, #6b7280);
  margin: 10px 0 0;
}

/* ── Wallet provider button ──────────────────────────── */
.web3-wallet-provider {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--mkt-card-bg, #fff);
  border: 1px solid var(--mkt-card-border, #e5e7eb);
  border-radius: 6px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--mkt-value-color, #111);
  cursor: pointer;
  opacity: 1;
  transition: opacity .15s, border-color .15s, background-color .15s, transform .15s;
}
.web3-wallet-provider:hover,
.web3-wallet-provider:focus-visible {
  border-color: rgba(47,107,255,.55);
  background: rgba(47,107,255,.08);
  outline: none;
  transform: translateY(-1px);
}
.web3-wallet-provider:active {
  transform: translateY(0);
}
.web3-wallet-provider img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

/* ── Network pill ────────────────────────────────────── */
.web3-wallet-panel__networks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}
.web3-network-pill {
  display: inline-block;
  background: var(--mkt-card-bg, #f3f4f6);
  border: 1px solid var(--mkt-card-border, #d1d5db);
  border-radius: 20px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 600;
  color: var(--mkt-label-color, #374151);
  cursor: default;
}
.web3-network-pill.active {
  background: var(--site-primary, #7c3aed);
  border-color: var(--site-primary, #7c3aed);
  color: #fff;
}

/* ── Fee panel ───────────────────────────────────────── */
.web3-fee-panel {
  background: var(--mkt-card-bg, #f9fafb);
  border: 1px solid var(--mkt-card-border, #e5e7eb);
  border-radius: 6px;
  padding: 12px 14px;
  font-size: 13px;
}
.web3-fee-panel__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 0;
  color: var(--mkt-label-color, #374151);
  border-bottom: 1px solid var(--mkt-card-border, #f0f0f0);
}
.web3-fee-panel__row:last-child { border-bottom: none; }
.web3-fee-panel__row--notice {
  color: var(--mkt-label-color, #888);
  font-style: italic;
  font-size: 12px;
  justify-content: flex-start;
  gap: 6px;
}
.web3-fee-panel__wallet {
  font-family: monospace;
  font-size: 12px;
  color: var(--site-primary, #7c3aed);
}

/* ── Disclaimer box ──────────────────────────────────── */
.web3-disclaimer {
  border: 1.5px solid #f59e0b;
  background: #fffbeb;
  border-radius: var(--mkt-radius, 10px);
  padding: 16px 18px;
  margin-top: 20px;
  font-size: 13px;
  color: #78350f;
}
.web3-disclaimer strong { color: #b45309; }

/* ── Safety list ─────────────────────────────────────── */
.web3-safety-list {
  margin: 8px 0 0 0;
  padding-left: 18px;
}
.web3-safety-list li { margin-bottom: 4px; line-height: 1.5; }

/* ── Dark mode overrides ─────────────────────────────── */
.dark-mode .web3-tool-card,
.dark-mode .web3-form-card,
.dark-mode .web3-wallet-panel,
.dark-mode .web3-fee-panel {
  background: var(--mkt-card-bg, #1a1d23);
  border-color: var(--mkt-card-border, #2d3748);
}
.dark-mode .web3-tool-card__title,
.dark-mode .web3-form-card__title,
.dark-mode .web3-wallet-panel__title,
.dark-mode .web3-form-card .form-control[disabled] {
  color: var(--mkt-value-color, #e2e8f0);
  background-color: var(--mkt-card-bg, #2d3748);
}
.dark-mode .web3-disclaimer {
  background: #3b2000;
  border-color: #f59e0b;
  color: #fde68a;
}
.dark-mode .web3-disclaimer strong { color: #fcd34d; }
.dark-mode .web3-wallet-provider {
  background: var(--mkt-card-bg, #2d3748);
  border-color: var(--mkt-card-border, #4a5568);
  color: var(--mkt-value-color, #e2e8f0);
}
.dark-mode .web3-network-pill {
  background: var(--mkt-card-bg, #2d3748);
  border-color: var(--mkt-card-border, #4a5568);
  color: var(--mkt-label-color, #a0aec0);
}

/* ── RTL overrides ───────────────────────────────────── */
[dir="rtl"] .web3-tool-card__cta { text-align: right; }
[dir="rtl"] .web3-wallet-panel__title { flex-direction: row-reverse; }
[dir="rtl"] .web3-wallet-panel__note { margin-left: 0; margin-right: auto; }
[dir="rtl"] .web3-fee-panel__row { flex-direction: row-reverse; }
[dir="rtl"] .web3-safety-list { padding-left: 0; padding-right: 18px; }


/* ═══════════════════════════════════════════════════════════════════════
   READ-ONLY WALLET UI  (readonly-wallet-pass)
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Readonly badge in panel title ─────────────────────────────────── */
.web3-wallet-readonly-note {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--site-primary, #7c3aed);
  background: rgba(124,58,237,.1);
  border: 1px solid rgba(124,58,237,.25);
  border-radius: 20px;
  padding: 2px 8px;
}

/* ── Wallet status panel ────────────────────────────────────────────── */
.web3-wallet-status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 13px;
  margin-bottom: 10px;
  border: 1px solid transparent;
  transition: background .2s, border-color .2s;
}
.web3-wallet-status--none {
  background: rgba(100,116,139,.08);
  border-color: rgba(100,116,139,.2);
  color: var(--mkt-label-color, #64748b);
}
.web3-wallet-status--detected {
  background: rgba(16,185,129,.07);
  border-color: rgba(16,185,129,.25);
  color: #059669;
}
.web3-wallet-status--connecting {
  background: rgba(245,158,11,.08);
  border-color: rgba(245,158,11,.3);
  color: #d97706;
  animation: w3rw-pulse .9s ease-in-out infinite alternate;
}
.web3-wallet-status--connected {
  background: rgba(16,185,129,.1);
  border-color: rgba(16,185,129,.35);
  color: #047857;
  font-weight: 600;
}
.web3-wallet-status--error {
  background: rgba(239,68,68,.07);
  border-color: rgba(239,68,68,.25);
  color: #dc2626;
}
.web3-wallet-status--disabled {
  background: rgba(100,116,139,.07);
  border-color: rgba(100,116,139,.18);
  color: var(--mkt-label-color, #94a3b8);
  font-style: italic;
}
@keyframes w3rw-pulse {
  from { opacity: .7; }
  to   { opacity: 1;  }
}

/* ── Connected details rows ─────────────────────────────────────────── */
.web3-wallet-details {
  background: rgba(100,116,139,.05);
  border: 1px solid rgba(100,116,139,.15);
  border-radius: 8px;
  padding: 8px 12px;
  margin-bottom: 10px;
  font-size: 13px;
}
.w3rw-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 4px 0;
  border-bottom: 1px solid rgba(100,116,139,.1);
}
.w3rw-row:last-child { border-bottom: none; }
.w3rw-label {
  color: var(--mkt-label-color, #64748b);
  font-size: 12px;
  white-space: nowrap;
  flex-shrink: 0;
}

/* ── Address display ────────────────────────────────────────────────── */
.web3-wallet-address {
  font-family: 'Courier New', Courier, monospace;
  font-size: 13px;
  font-weight: 600;
  color: var(--site-primary, #7c3aed);
  letter-spacing: .03em;
  cursor: help;
  direction: ltr;
  unicode-bidi: isolate;
}

/* ── Network display ────────────────────────────────────────────────── */
.web3-wallet-network {
  font-size: 13px;
  color: var(--mkt-value-color, #1e293b);
  font-weight: 500;
}

/* ── Network badge ──────────────────────────────────────────────────── */
.web3-wallet-badge {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
  margin-bottom: 10px;
}
.web3-wallet-badge-supported {
  background: rgba(16,185,129,.12);
  border: 1px solid rgba(16,185,129,.35);
  color: #047857;
}
.web3-wallet-badge-unsupported {
  background: rgba(245,158,11,.1);
  border: 1px solid rgba(245,158,11,.35);
  color: #b45309;
}

/* ── Connect button ─────────────────────────────────────────────────── */
.web3-wallet-connect-btn {
  display: block;
  width: 100%;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  border-radius: 8px;
  border: 2px solid var(--site-primary, #7c3aed);
  background: var(--site-primary, #7c3aed);
  color: #fff;
  cursor: pointer;
  transition: background .2s, border-color .2s, opacity .2s;
  margin-bottom: 12px;
  text-align: center;
}
.web3-wallet-connect-btn:hover:not(:disabled) {
  background: var(--site-primary-dark, #5b21b6);
  border-color: var(--site-primary-dark, #5b21b6);
}
.web3-wallet-connect-btn:disabled {
  opacity: .45;
  cursor: not-allowed;
}

/* ── Provider coming-soon span ──────────────────────────────────────── */
.web3-wallet-provider--coming {
  opacity: .5;
  cursor: default;
  font-size: 12px;
  padding: 6px 10px;
  border: 1px dashed rgba(100,116,139,.3);
  border-radius: 6px;
  color: var(--mkt-label-color, #64748b);
}

/* ── Auto-fill note in request form ────────────────────────────────── */
.w3rw-autofill-note {
  margin-top: 4px;
  font-size: 12px;
  color: var(--site-primary, #7c3aed);
  font-weight: 500;
}

/* ── DARK MODE ──────────────────────────────────────────────────────── */
.dark-mode .web3-wallet-status--none {
  background: rgba(100,116,139,.12);
  color: var(--mkt-label-color, #94a3b8);
}
.dark-mode .web3-wallet-status--detected {
  background: rgba(16,185,129,.1);
  color: #34d399;
  border-color: rgba(16,185,129,.3);
}
.dark-mode .web3-wallet-status--connected {
  background: rgba(16,185,129,.12);
  color: #6ee7b7;
  border-color: rgba(16,185,129,.3);
}
.dark-mode .web3-wallet-status--error {
  background: rgba(239,68,68,.1);
  color: #fca5a5;
}
.dark-mode .web3-wallet-status--disabled {
  color: var(--mkt-label-color, #64748b);
}
.dark-mode .web3-wallet-details {
  background: rgba(100,116,139,.1);
  border-color: rgba(100,116,139,.2);
}
.dark-mode .web3-wallet-address {
  color: var(--site-primary, #a78bfa);
}
.dark-mode .web3-wallet-network {
  color: var(--mkt-value-color, #e2e8f0);
}
.dark-mode .web3-wallet-badge-supported {
  background: rgba(16,185,129,.14);
  color: #6ee7b7;
  border-color: rgba(16,185,129,.3);
}
.dark-mode .web3-wallet-badge-unsupported {
  background: rgba(245,158,11,.12);
  color: #fcd34d;
  border-color: rgba(245,158,11,.3);
}
.dark-mode .web3-wallet-connect-btn {
  background: var(--site-primary, #7c3aed);
  border-color: var(--site-primary, #7c3aed);
}
.dark-mode .web3-wallet-readonly-note {
  background: rgba(167,139,250,.12);
  border-color: rgba(167,139,250,.3);
  color: #a78bfa;
}

/* ── RTL overrides ──────────────────────────────────────────────────── */
[dir="rtl"] .web3-wallet-readonly-note { margin-left: 0; margin-right: auto; }
[dir="rtl"] .w3rw-row { flex-direction: row-reverse; }
[dir="rtl"] .web3-wallet-address { direction: ltr; unicode-bidi: isolate; }
[dir="rtl"] .web3-wallet-details { text-align: right; }
[dir="rtl"] .web3-wallet-connect-btn { direction: rtl; }

/* ── Mobile ─────────────────────────────────────────────────────────── */
@media (max-width: 575px) {
  .web3-wallet-connect-btn { font-size: 13px; padding: 9px 12px; }
  .web3-wallet-details      { font-size: 12px; }
  .web3-wallet-badge        { font-size: 11px; padding: 3px 8px; }
}

/* === TOKENE HOMEPAGE 2026 PHASE 1 === */
:root {
  --tk-bg:             #080d1a;
  --tk-bg-soft:        #0d1425;
  --tk-surface:        #111a2d;
  --tk-surface-2:      #162137;
  --tk-line:           rgba(148,163,184,.18);
  --tk-text:           #eaf2ff;
  --tk-text-muted:     #94a3b8;
  --tk-primary:        #2f6bff;
  --tk-primary-2:      #22d3ee;
  --tk-positive:       #16c784;
  --tk-negative:       #ea3943;
  --tk-radius-lg:      22px;
  --tk-radius-md:      14px;
  --tk-shadow:         0 24px 70px rgba(0,0,0,.24);
  --tk-font:           Inter, "Segoe UI", "Noto Sans Arabic", Roboto, Arial, sans-serif;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--tk-font);
  background: #fff;
  color: #0f172a;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Top market utility bar */
.preheader {
  background: #070b14 !important;
  border-bottom: 1px solid rgba(148,163,184,.12);
}
.preheader .container {
  max-width: 1240px;
}
.preheader .ptop {
  min-height: 34px;
  align-items: center;
}
.preheader ul {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.preheader ul li {
  margin: 0 !important;
}
.preheader .text-top-small {
  color: #8ea0bb;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .01em;
}
.preheader .text-top-small > span:first-child {
  color: #d8e3f3;
}
.preheader .select2-container {
  min-width: 74px;
}

/* Main header */
.tokene-header {
  background: rgba(8,13,26,.98) !important;
  border-bottom: 1px solid rgba(148,163,184,.13);
  position: relative;
  z-index: 1030;
}
.tokene-header .container {
  max-width: 1240px;
}
.tokene-navbar {
  min-height: 72px;
  padding: 0;
}
.tokene-brand {
  display: inline-flex !important;
  align-items: center;
  gap: 11px;
  text-decoration: none !important;
  margin-right: 28px !important;
}
.tokene-brand-mark {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 21px;
  font-weight: 850;
  font-style: italic;
  letter-spacing: -.08em;
  background:
    linear-gradient(135deg, rgba(34,211,238,.95), rgba(47,107,255,.95) 52%, #1534a4);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.2),
    0 8px 24px rgba(47,107,255,.26);
}
.tokene-brand-word {
  color: #f8fbff;
  font-size: 23px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -.04em;
}
.tokene-nav-list {
  align-items: center;
  gap: 2px;
}
.tokene-header .navbar-nav .nav-link {
  color: #c8d4e5 !important;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 11px !important;
  border-radius: 9px;
  transition: color .16s ease, background .16s ease;
}
.tokene-header .navbar-nav .nav-link:hover,
.tokene-header .navbar-nav .nav-link:focus {
  color: #fff !important;
  background: rgba(255,255,255,.065);
}
.tokene-dropdown {
  margin-top: 10px !important;
  padding: 8px !important;
  border: 1px solid rgba(148,163,184,.18) !important;
  border-radius: 13px !important;
  background: #101827 !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.28) !important;
}
.tokene-dropdown .dropdown-item {
  color: #cbd5e1 !important;
  border-radius: 8px;
  font-size: 13px;
  padding: 8px 10px;
}
.tokene-dropdown .dropdown-item:hover,
.tokene-dropdown .dropdown-item:focus {
  color: #fff !important;
  background: rgba(47,107,255,.16) !important;
}
.tokene-nav-search .nav-link {
  width: 38px;
  height: 38px;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.tokene-btn-nav {
  color: #fff !important;
  background: linear-gradient(135deg, #2f6bff, #2454d6);
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 10px !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  padding: 8px 13px !important;
  box-shadow: 0 8px 20px rgba(47,107,255,.2);
}
.tokene-btn-nav:hover,
.tokene-btn-nav:focus {
  color: #fff !important;
  background: linear-gradient(135deg, #3d78ff, #2d60e8);
  transform: translateY(-1px);
}
.tokene-lang {
  margin-left: 4px;
}
.tokene-lang .lang-btn {
  display: flex;
  align-items: center;
  gap: 5px;
}
.tokene-nav-toggle {
  color: #fff !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(148,163,184,.2) !important;
  border-radius: 10px !important;
  padding: 7px 10px !important;
}

/* Market tape moved out of the fixed footer */
.tokene-market-tape {
  position: relative;
  z-index: 1020;
  overflow: hidden;
  height: 38px;
  background: #0b1220;
  border-bottom: 1px solid rgba(148,163,184,.14);
}
.tokene-market-tape__viewport {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.tokene-market-tape__track {
  display: flex;
  align-items: center;
  width: max-content;
  min-width: 200%;
  height: 100%;
  animation: tk-market-tape 48s linear infinite;
  will-change: transform;
}
.tokene-market-tape:hover .tokene-market-tape__track,
.tokene-market-tape:focus-within .tokene-market-tape__track {
  animation-play-state: paused;
}
.tokene-market-tape__item {
  height: 100%;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 14px;
  border-right: 1px solid rgba(148,163,184,.09);
  color: #aebdd1 !important;
  font-size: 11.5px;
  white-space: nowrap;
  text-decoration: none !important;
}
.tokene-market-tape__item:hover {
  color: #fff !important;
  background: rgba(255,255,255,.035);
}
.tokene-market-tape__item img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
}
.tokene-market-tape__item strong {
  color: #eef6ff;
  font-size: 11px;
}
.tokene-market-tape__item .is-up {
  color: var(--tk-positive);
  font-weight: 700;
}
.tokene-market-tape__item .is-down {
  color: var(--tk-negative);
  font-weight: 700;
}
@keyframes tk-market-tape {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* Homepage hero */
.tokene-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 15% 15%, rgba(47,107,255,.21), transparent 38%),
    radial-gradient(circle at 86% 25%, rgba(34,211,238,.11), transparent 30%),
    linear-gradient(135deg, #080d1a 0%, #0b1324 55%, #0b1120 100%);
  border-bottom: 1px solid rgba(148,163,184,.13);
}
.tokene-hero__container {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  padding-top: 62px;
  padding-bottom: 62px;
}
.tokene-hero__grid {
  position: absolute;
  inset: 0;
  z-index: -2;
  opacity: .15;
  background-image:
    linear-gradient(rgba(148,163,184,.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,.16) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, #000, transparent 90%);
}
.tokene-hero__glow {
  position: absolute;
  z-index: -1;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: .13;
  pointer-events: none;
}
.tokene-hero__glow--one {
  background: #2f6bff;
  left: -170px;
  top: -180px;
}
.tokene-hero__glow--two {
  background: #22d3ee;
  right: -190px;
  bottom: -210px;
}
.tokene-hero__content {
  max-width: 720px;
  animation: tk-rise .55s cubic-bezier(.2,.7,.2,1) both;
}
.tokene-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #9fb0c8;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 17px;
}
.tokene-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--tk-positive);
  box-shadow: 0 0 0 5px rgba(22,199,132,.10);
}
.tokene-hero h1 {
  color: #f7fbff;
  font-size: clamp(2.25rem, 4.8vw, 4rem);
  line-height: 1.04;
  font-weight: 820;
  letter-spacing: -.055em;
  margin: 0 0 20px;
  max-width: 800px;
}
.tokene-hero__lead {
  max-width: 650px;
  color: #aebed3;
  font-size: clamp(1rem, 1.35vw, 1.13rem);
  line-height: 1.75;
  margin: 0 0 28px;
}
.tokene-hero__actions {
  display: flex;
  gap: 11px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.tokene-btn-primary,
.tokene-btn-secondary {
  min-height: 44px;
  border-radius: 11px !important;
  padding: 11px 18px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 9px;
  font-size: 13px !important;
  font-weight: 750 !important;
}
.tokene-btn-primary {
  color: #fff !important;
  background: linear-gradient(135deg, #2f6bff, #2454d6);
  border: 1px solid #3f7bff !important;
  box-shadow: 0 12px 30px rgba(47,107,255,.23);
}
.tokene-btn-primary:hover,
.tokene-btn-primary:focus {
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 15px 35px rgba(47,107,255,.3);
}
.tokene-btn-secondary {
  color: #dce8f8 !important;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(148,163,184,.24) !important;
}
.tokene-btn-secondary:hover,
.tokene-btn-secondary:focus {
  color: #fff !important;
  background: rgba(255,255,255,.08);
}
.tokene-hero__trust {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  color: #7f91aa;
  font-size: 11.5px;
}
.tokene-hero__trust i {
  color: #5f7da6;
  margin-right: 4px;
}

.tokene-hero-panel {
  position: relative;
  padding: 20px;
  border: 1px solid rgba(148,163,184,.18);
  border-radius: var(--tk-radius-lg);
  background: linear-gradient(160deg, rgba(20,31,52,.91), rgba(12,20,36,.94));
  box-shadow: var(--tk-shadow);
  backdrop-filter: blur(16px);
  animation: tk-rise .6s .08s cubic-bezier(.2,.7,.2,1) both;
}
.tokene-hero-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,.055), transparent 36%);
}
.tokene-hero-panel__head,
.tokene-hero-panel__foot {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.tokene-hero-panel__head {
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(148,163,184,.12);
}
.tokene-hero-panel__head strong {
  display: block;
  color: #eef5ff;
  font-size: 14px;
  margin-top: 3px;
}
.tokene-hero-panel__kicker {
  color: #7286a4;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.tokene-live-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgba(22,199,132,.2);
  background: rgba(22,199,132,.08);
  color: #65d6aa;
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
}
.tokene-live-pill span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16c784;
}
.tokene-hero-panel__metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.tokene-hero-metric {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 14px;
  margin-top: 10px;
  border: 1px solid rgba(148,163,184,.11);
  border-radius: 13px;
  background: rgba(255,255,255,.027);
  text-decoration: none !important;
}
.tokene-hero-metric:hover {
  background: rgba(255,255,255,.05);
  border-color: rgba(47,107,255,.28);
}
.tokene-hero-metric--wide {
  margin-top: 14px;
}
.tokene-hero-metric > span {
  color: #7f92ae;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .03em;
}
.tokene-hero-metric > strong {
  color: #f3f8ff;
  font-size: 20px;
  line-height: 1.2;
  margin-top: 5px;
  letter-spacing: -.02em;
}
.tokene-hero-metric > small {
  color: #6f83a0;
  font-size: 10px;
  margin-top: 5px;
}
.tokene-hero-metric .is-up {
  color: var(--tk-positive);
}
.tokene-hero-metric .is-down {
  color: var(--tk-negative);
}
.tokene-hero-panel__foot {
  padding-top: 15px;
  margin-top: 12px;
  border-top: 1px solid rgba(148,163,184,.11);
  color: #6d819e;
  font-size: 10px;
}
.tokene-hero-panel__foot a {
  color: #9fc1ff !important;
  font-weight: 650;
  text-decoration: none !important;
}
@keyframes tk-rise {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Existing market cards aligned with the new foundation */
.mkt-stats-bar {
  padding-top: 26px;
}
.mkt-stat-card {
  border-color: #e4eaf2;
  border-radius: 14px;
  box-shadow: 0 6px 24px rgba(15,23,42,.055);
  padding: 16px 15px 24px;
  min-height: 108px;
}
.mkt-stat-card:hover {
  box-shadow: 0 13px 32px rgba(15,23,42,.09);
  transform: translateY(-2px);
}
.mkt-stat-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 12px;
  color: #2f6bff;
  background: #edf4ff;
}
.mkt-stat-label {
  color: #718096;
  font-size: 10.5px;
  letter-spacing: .055em;
}
.mkt-stat-value {
  color: #0f172a;
  font-size: 16px;
}
.mkt-stat-helper {
  color: #a0aec0;
  font-size: 10px;
}
.mkt-stat-cue {
  color: #c8d3e2;
}

/* Dark mode alignment */
.dark-mode {
  background: #070c16 !important;
  color: #dce7f7;
}
.dark-mode .tokene-hero {
  border-bottom-color: rgba(148,163,184,.13);
}
.dark-mode .mkt-stat-card {
  background: #101827 !important;
  border-color: rgba(148,163,184,.13) !important;
}
.dark-mode .mkt-stat-icon {
  background: #16233a !important;
  color: #6d9cff !important;
}
.dark-mode .mkt-stat-value {
  color: #eef5ff !important;
}
.dark-mode .mkt-stat-label,
.dark-mode .mkt-stat-helper {
  color: #7386a3 !important;
}

/* Responsive */
@media (max-width: 1199.98px) {
  .tokene-header .navbar-nav .nav-link {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .tokene-brand {
    margin-right: 18px !important;
  }
}
@media (max-width: 991.98px) {
  .tokene-navbar {
    min-height: 64px;
    padding: 8px 0;
  }
  .tokene-header .navbar-collapse {
    margin-top: 8px;
    padding: 10px;
    border: 1px solid rgba(148,163,184,.13);
    border-radius: 14px;
    background: #0d1524;
  }
  .tokene-nav-list {
    align-items: stretch;
  }
  .tokene-header .navbar-nav .nav-link {
    padding: 10px 11px !important;
  }
  .tokene-nav-search .nav-link {
    width: auto;
    height: auto;
    justify-content: flex-start;
  }
  .tokene-nav-cta {
    margin: 7px 0 4px;
  }
  .tokene-btn-nav {
    display: block !important;
    text-align: center;
  }
  .tokene-hero__container {
    padding-top: 46px;
    padding-bottom: 48px;
  }
  .tokene-hero-panel {
    margin-top: 34px;
  }
}
@media (max-width: 575.98px) {
  .preheader {
    display: none;
  }
  .tokene-brand-mark {
    width: 35px;
    height: 35px;
  }
  .tokene-brand-word {
    font-size: 21px;
  }
  .tokene-market-tape {
    height: 36px;
  }
  .tokene-market-tape__item {
    padding: 0 11px;
    font-size: 11px;
  }
  .tokene-hero__container {
    padding-top: 36px;
    padding-bottom: 40px;
  }
  .tokene-hero h1 {
    font-size: clamp(2rem, 12vw, 3rem);
  }
  .tokene-hero__lead {
    font-size: .96rem;
    line-height: 1.65;
  }
  .tokene-hero__actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .tokene-btn-primary,
  .tokene-btn-secondary {
    justify-content: center;
    width: 100%;
  }
  .tokene-hero__trust {
    gap: 10px;
    flex-direction: column;
  }
  .tokene-hero-panel {
    padding: 16px;
    border-radius: 18px;
  }
  .tokene-hero-panel__metrics {
    grid-template-columns: 1fr 1fr;
  }
  .tokene-hero-metric {
    padding: 12px;
  }
  .tokene-hero-metric > strong {
    font-size: 17px;
  }
  .mkt-stat-card {
    min-height: 104px;
  }
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .tokene-hero__content,
  .tokene-hero-panel {
    animation: none !important;
  }
  .tokene-market-tape__track {
    animation: none !important;
    transform: none !important;
  }
  .tokene-market-tape__viewport {
    overflow-x: auto;
  }
  .mkt-stat-card,
  .tokene-btn-primary,
  .tokene-btn-nav {
    transition: none !important;
    transform: none !important;
  }
}


/* Homepage 2026 Phase 1  final mobile tuning */
@media (max-width: 575.98px) {
  .tokene-hero {
    overflow-x: hidden;
  }
  .tokene-hero h1 {
    max-width: 100%;
    font-size: 2.05rem;
    line-height: 1.08;
    letter-spacing: -.045em;
    overflow-wrap: break-word;
    word-break: normal;
  }
  .tokene-hero__lead {
    max-width: 100%;
    font-size: .92rem;
    line-height: 1.62;
  }
  .tokene-hero-panel {
    width: 100%;
    max-width: 100%;
  }
  .tokene-hero-panel__metrics {
    gap: 8px;
  }
}

/* Homepage 2026 Phase 1  deterministic mobile nav alignment */
@media (max-width: 991.98px) {
  .tokene-nav-toggle {
    margin-left: auto !important;
    flex: 0 0 auto;
  }
  [dir="rtl"] .tokene-nav-toggle {
    margin-left: 0 !important;
    margin-right: auto !important;
  }
}

/* Homepage 2026 Phase 1  isolate mobile menu from legacy navbar CSS */
@media (max-width: 991.98px) {
  .tokene-header .tokene-navbar {
    position: relative;
  }
  .tokene-header .tokene-nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    margin: 0 !important;
    min-width: 42px;
    min-height: 38px;
    z-index: 2;
  }
  [dir="rtl"] .tokene-header .tokene-nav-toggle {
    right: auto;
    left: 0;
  }
  .tokene-header .navbar-collapse {
    width: 100%;
  }
}

/* === TOKENE HOMEPAGE 2026 PHASE 2 === */

/* Shared section language */
.tokene-section-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.tokene-section-kicker {
  display:block;
  color:#64748b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.tokene-text-link {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#2f6bff !important;
  font-size:12px;
  font-weight:750;
  text-decoration:none !important;
  white-space:nowrap;
}
.tokene-text-link:hover { gap:10px; }

/* Market table */
.mkt-table-wrap {
  border:1px solid #e4eaf2;
  border-radius:18px;
  box-shadow:0 12px 36px rgba(15,23,42,.07);
  overflow:hidden;
  margin-top:8px;
  margin-bottom:58px;
}
.mkt-table-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px 16px;
  border-bottom:0;
}
.mkt-table-title {
  color:#0f172a;
  font-size:20px;
  font-weight:800;
  letter-spacing:-.025em;
}
.mkt-table-subtitle {
  color:#7b8ba3;
  font-size:12px;
  margin-top:2px;
}
.tokene-market-status {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#23825f;
  background:#edf9f4;
  border:1px solid #d4f0e3;
  border-radius:999px;
  padding:6px 10px;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.tokene-market-status span {
  width:7px; height:7px; border-radius:50%; background:#16c784;
  box-shadow:0 0 0 4px rgba(22,199,132,.1);
}
.mkt-table-search-row {
  padding:0 24px 18px;
}
.mkt-search-wrap {
  max-width:none;
}
.mkt-search-wrap input {
  min-height:46px;
  border-radius:11px !important;
  border:1px solid #dfe6ef !important;
  background:#f9fbfd;
  padding-left:42px !important;
  font-size:12px;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.mkt-search-wrap input:focus {
  background:#fff;
  border-color:#93b4ff !important;
  box-shadow:0 0 0 3px rgba(47,107,255,.09);
  outline:0;
}
.mkt-table-inner {
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-top:1px solid #edf1f6;
}
#coins-info-table {
  margin-bottom:0 !important;
}
#coins-info-table thead th {
  background:#f8fafc;
  color:#64748b;
  border-color:#edf1f5;
  font-size:10px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  padding-top:13px;
  padding-bottom:13px;
}
#coins-info-table tbody td {
  border-color:#eef2f6;
  vertical-align:middle;
}
#coins-info-table tbody tr:hover {
  background:#f8fbff !important;
}

/* News */
.tokene-news-section {
  padding-top:12px;
  padding-bottom:58px;
}
/* Keep four news cards aligned to the full market table on desktop. */
@media (min-width:1200px) {
  .tokene-news-section {
    max-width:1564px;
    width:calc(100% - 32px);
  }
}
.tokene-news-section .mkt-section-title {
  margin:0;
  font-size:26px;
  font-weight:820;
  letter-spacing:-.035em;
  color:#0f172a;
}
.tokene-news-section .mkt-section-lead {
  margin:5px 0 0;
  color:#7c8ca3;
  font-size:12px;
}
.tokene-news-card {
  overflow:hidden;
  color:inherit !important;
  text-decoration:none !important;
  border:1px solid #e4eaf2 !important;
  border-radius:16px !important;
  background:#fff;
  box-shadow:0 8px 28px rgba(15,23,42,.055) !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.tokene-news-card:hover {
  transform:translateY(-3px);
  border-color:#cfdaea !important;
  box-shadow:0 16px 38px rgba(15,23,42,.10) !important;
}
.tokene-news-card__media {
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#eaf0f7;
}
.tokene-news-card__media img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .3s ease;
}
.tokene-news-card:hover .tokene-news-card__media img { transform:scale(1.025); }
.tokene-news-card__badge {
  position:absolute;
  left:14px;
  bottom:12px;
  padding:5px 8px;
  border-radius:7px;
  color:#eaf3ff;
  background:rgba(8,13,26,.78);
  backdrop-filter:blur(8px);
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.tokene-news-card .card-body {
  padding:18px 18px 17px;
}
.tokene-news-card .news-date {
  color:#8696aa;
  font-size:9.5px;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
  margin-bottom:9px;
}
.tokene-news-card h3.card-title {
  color:#172033;
  font-size:15px;
  line-height:1.4;
  font-weight:780;
  letter-spacing:-.018em;
  margin-bottom:10px;
}
.tokene-news-card p {
  color:#708096;
  font-size:11.5px;
  line-height:1.65;
  margin:0 0 14px;
}
.tokene-news-card__read {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#2f6bff;
  font-size:11px;
  font-weight:780;
}
.tokene-news-card:hover .tokene-news-card__read { gap:10px; }

/* Compact support / donation */
.tokene-support-section {
  padding:56px 0;
  background:#f7f9fc;
  border-top:1px solid #edf1f5;
  border-bottom:1px solid #e7edf4;
}
.tokene-support-shell {
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);
  gap:42px;
  align-items:center;
  padding:30px;
  border:1px solid #e3eaf3;
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 35px rgba(15,23,42,.055);
}
.tokene-support-intro h2 {
  color:#0f172a;
  font-size:24px;
  font-weight:820;
  letter-spacing:-.035em;
  margin:0 0 10px;
}
.tokene-support-intro p {
  color:#718096;
  font-size:12px;
  line-height:1.7;
  margin:0;
}
.tokene-support-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.tokene-support-card {
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px;
  border:1px solid #e6ebf2;
  border-radius:13px;
  background:#fbfcfe;
}
.tokene-support-icon {
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tokene-support-icon img {
  max-width:42px;
  max-height:42px;
  object-fit:contain;
}
.tokene-support-copy {
  min-width:0;
}
.tokene-support-copy h3 {
  color:#253149;
  font-size:12px;
  font-weight:780;
  margin:0 0 3px;
}
.tokene-support-copy p {
  color:#7b8a9f;
  font-size:10px;
  line-height:1.35;
  margin:0;
  overflow-wrap:anywhere;
}

/* CTA */
.tokene-cta-band {
  padding:34px 0;
  background:linear-gradient(120deg,#0d172b,#0c1a31 58%,#102541);
  border-top:1px solid rgba(148,163,184,.12);
}
.tokene-cta-band__inner {
  min-height:104px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:0 6px;
}
.tokene-cta-band .tokene-section-kicker { color:#7390bb; }
.tokene-cta-band__text,
.tokene-cta-band__text * {
  color:#eef5ff !important;
}
.tokene-cta-band__text {
  font-size:18px;
  font-weight:760;
  line-height:1.4;
}
.tokene-cta-band__text p,
.tokene-cta-band__text h1,
.tokene-cta-band__text h2,
.tokene-cta-band__text h3 {
  margin:0;
}
.tokene-cta-band__button {
  flex:0 0 auto;
  display:inline-flex !important;
  align-items:center;
  gap:9px;
  color:#fff !important;
  background:#2f6bff;
  border:1px solid #477cff !important;
  border-radius:11px !important;
  padding:11px 17px !important;
  font-size:12px !important;
  font-weight:780 !important;
}
.tokene-cta-band__button:hover {
  color:#fff !important;
  background:#3b75ff;
  transform:translateY(-1px);
}

/* Market Pulse */
.tokene-market-pulse {
  padding:48px 0 36px;
  background:#0a101d;
  border-top:1px solid rgba(148,163,184,.11);
}
.tokene-pulse-head {
  margin-bottom:16px;
}
.tokene-pulse-head h2 {
  color:#f0f6ff;
  font-size:23px;
  font-weight:810;
  letter-spacing:-.03em;
  margin:0;
}
.tokene-pulse-head p {
  color:#71839e;
  font-size:11.5px;
  margin:4px 0 0;
}
.tokene-market-pulse .tokene-section-kicker { color:#637a9c; }
.tokene-pulse-coins {
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0 14px;
  scrollbar-width:thin;
}
.tokene-pulse-chip {
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 10px;
  color:#c9d5e6 !important;
  background:#101a2b;
  border:1px solid rgba(148,163,184,.13);
  border-radius:10px;
  text-decoration:none !important;
  font-size:10px;
}
.tokene-pulse-chip img { border-radius:50%; }
.tokene-pulse-chip strong {
  color:#7084a4;
  font-size:9px;
}
.tokene-pulse-chip:hover {
  background:#142136;
  border-color:rgba(47,107,255,.28);
  color:#fff !important;
}
.tokene-pulse-dominance {
  display:flex;
  align-items:center;
  gap:13px;
  color:#6f829f;
  font-size:10px;
  padding:4px 0 16px;
}
.tokene-pulse-dominance strong {
  color:#aebdd2;
  font-size:10px;
}
.tokene-pulse-panel {
  height:100%;
  padding:15px;
  border:1px solid rgba(148,163,184,.12);
  border-radius:14px;
  background:#0e1726;
}
.tokene-pulse-panel__head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#e5eefb;
  font-size:11px;
  font-weight:800;
  margin-bottom:7px;
  padding:0 2px 7px;
}
.tokene-pulse-panel__head a {
  color:#718db7 !important;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.tokene-pulse-row {
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto auto;
  gap:9px;
  align-items:center;
  min-height:48px;
  padding:7px 2px;
  color:inherit !important;
  text-decoration:none !important;
  border-top:1px solid rgba(148,163,184,.075);
}
.tokene-pulse-row:hover { background:rgba(255,255,255,.02); }
.tokene-pulse-row img { border-radius:50%; }
.tokene-pulse-row__asset {
  min-width:0;
  display:flex;
  flex-direction:column;
}
.tokene-pulse-row__asset strong {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#cbd7e8;
  font-size:10.5px;
}
.tokene-pulse-row__asset small {
  color:#60728e;
  font-size:8.5px;
}
.tokene-pulse-row__price {
  color:#aebdd2;
  font-size:9.5px;
  font-weight:650;
}
.tokene-pulse-row__change {
  min-width:48px;
  text-align:right;
  font-size:9.5px;
  font-weight:780;
}
.tokene-market-pulse .is-up { color:#16c784 !important; }
.tokene-market-pulse .is-down { color:#ea5360 !important; }
.tokene-pulse-empty {
  color:#63718a;
  font-size:10px;
  margin:10px 2px;
}

/* Footer */
.tokene-footer {
  padding:52px 0 20px;
  background:#070c16;
  border-top:1px solid rgba(148,163,184,.10);
}
.tokene-footer__grid {
  padding-bottom:30px;
}
.tokene-footer-brand {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#f3f8ff !important;
  font-size:20px;
  font-weight:820;
  letter-spacing:-.035em;
  text-decoration:none !important;
}
.tokene-footer-brand .tokene-brand-mark {
  width:34px;
  height:34px;
  border-radius:10px;
  font-size:18px;
}
.tokene-footer-about {
  max-width:330px;
  color:#72829a;
  font-size:11.5px;
  line-height:1.7;
  margin:15px 0 17px;
}
.tokene-footer-social {
  display:flex;
  align-items:center;
  gap:8px;
}
.tokene-footer-social a {
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#8192ab !important;
  background:#101827;
  border:1px solid rgba(148,163,184,.11);
  border-radius:9px;
  text-decoration:none !important;
}
.tokene-footer-social a:hover {
  color:#fff !important;
  border-color:rgba(47,107,255,.32);
  background:#14223a;
}
.tokene-footer-title {
  color:#dbe6f5;
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  margin:4px 0 14px;
}
.tokene-footer-links {
  display:flex;
  flex-direction:column;
  gap:9px;
}
.tokene-footer-links a {
  color:#71829b !important;
  font-size:10.5px;
  text-decoration:none !important;
}
.tokene-footer-links a:hover { color:#dce8f8 !important; }
.tokene-footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding-top:18px;
  border-top:1px solid rgba(148,163,184,.10);
  color:#5f7089;
  font-size:9.5px;
  line-height:1.6;
}
.tokene-footer-data {
  margin-left:10px;
}
.tokene-footer-bottom a { color:#8198bb !important; }
.tokene-footer-bottom p {
  max-width:460px;
  margin:0;
  text-align:right;
}

/* Dark mode */
.dark-mode .mkt-table-wrap,
.dark-mode .tokene-news-card,
.dark-mode .tokene-support-shell {
  background:#0f1828 !important;
  border-color:rgba(148,163,184,.13) !important;
}
.dark-mode .mkt-table-title,
.dark-mode .tokene-news-section .mkt-section-title,
.dark-mode .tokene-news-card h3.card-title,
.dark-mode .tokene-support-intro h2,
.dark-mode .tokene-support-copy h3 {
  color:#edf4ff !important;
}
.dark-mode .mkt-table-search-row input,
.dark-mode .tokene-support-card {
  background:#0b1321 !important;
  border-color:rgba(148,163,184,.13) !important;
  color:#dce7f7 !important;
}
.dark-mode #coins-info-table thead th {
  background:#0c1422 !important;
  color:#8091aa !important;
  border-color:rgba(148,163,184,.10) !important;
}
.dark-mode #coins-info-table tbody tr:hover {
  background:#101b2d !important;
}
.dark-mode .tokene-support-section {
  background:#080f1b !important;
  border-color:rgba(148,163,184,.10) !important;
}

/* Responsive Phase 2 */
@media (max-width: 991.98px) {
  .tokene-support-shell {
    grid-template-columns:1fr;
    gap:24px;
  }
  .tokene-cta-band__inner {
    align-items:flex-start;
  }
}
@media (max-width: 767.98px) {
  .tokene-section-head {
    align-items:flex-start;
  }
  .mkt-table-header {
    padding:18px 16px 12px;
  }
  .mkt-table-search-row {
    padding:0 16px 14px;
  }
  .mkt-table-inner table {
    min-width:900px;
  }
  .tokene-news-section {
    padding-bottom:36px;
  }
  .tokene-support-section {
    padding:38px 0;
  }
  .tokene-support-shell {
    padding:20px;
  }
  .tokene-support-grid {
    grid-template-columns:1fr;
  }
  .tokene-cta-band__inner {
    min-height:auto;
    flex-direction:column;
    gap:17px;
    padding:5px 0;
  }
  .tokene-cta-band__button {
    width:100%;
    justify-content:center;
  }
  .tokene-footer-bottom {
    flex-direction:column;
    gap:7px;
  }
  .tokene-footer-bottom p {
    text-align:left;
  }
}
@media (max-width: 575.98px) {
  .tokene-section-head {
    flex-direction:column;
    gap:10px;
  }
  .tokene-market-status {
    align-self:flex-start;
  }
  .mkt-table-title {
    font-size:17px;
  }
  .tokene-news-section .mkt-section-title {
    font-size:22px;
  }
  .tokene-support-intro h2 {
    font-size:21px;
  }
  .tokene-pulse-row {
    grid-template-columns:28px minmax(0,1fr) auto;
  }
  .tokene-pulse-row__price {
    display:none;
  }
  .tokene-footer {
    padding-top:40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tokene-news-card,
  .tokene-news-card__media img,
  .tokene-text-link,
  .tokene-news-card__read,
  .tokene-cta-band__button {
    transition:none !important;
    transform:none !important;
  }
}

/* === TOKENE HOMEPAGE 2026 PHASE 3 === */
.tokene-header a:focus-visible,
.tokene-header button:focus-visible,
.tokene-hero a:focus-visible,
.mkt-stat-card:focus-visible,
.tokene-news-card:focus-visible,
.tokene-pulse-row:focus-visible,
.tokene-footer a:focus-visible,
.tokene-cta-band a:focus-visible {
  outline:2px solid #6d9cff !important;
  outline-offset:3px;
  box-shadow:none !important;
}

.tk-nav-svg,
.tk-stat-svg {
  display:block;
  width:1em;
  height:1em;
  overflow:visible;
}
.tk-stat-svg { width:23px; height:23px; }
.tk-stat-letter { font-size:23px; line-height:1; font-weight:700; }

.tokene-theme-toggle {
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#c8d4e5;
  background:transparent;
  border:0;
  border-radius:9px;
  padding:0;
  cursor:pointer;
  transition:color .16s ease, background .16s ease;
}
.tokene-theme-toggle:hover {
  color:#fff;
  background:rgba(255,255,255,.065);
}
.tk-theme-sun { display:none; }
.dark-mode .tk-theme-moon { display:none; }
.dark-mode .tk-theme-sun { display:block; }

.dark-mode .tokene-news-section,
.dark-mode .mkt-stats-bar,
.dark-mode #coin-table-anchor { color:#dce7f7; }
.dark-mode .tokene-market-status {
  color:#63d7a9;
  background:rgba(22,199,132,.08);
  border-color:rgba(22,199,132,.18);
}
.dark-mode .tokene-news-card p,
.dark-mode .tokene-support-intro p,
.dark-mode .tokene-support-copy p { color:#8798b1 !important; }
.dark-mode .tokene-section-kicker { color:#7186a5; }

.cc-window.cc-floating {
  max-width:370px !important;
  padding:18px 19px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:15px !important;
  box-shadow:0 20px 55px rgba(0,0,0,.28) !important;
  font-family:var(--tk-font) !important;
  font-size:11.5px !important;
  line-height:1.55 !important;
}
.cc-window .cc-message {
  color:#b7c4d6 !important;
  margin-right:0 !important;
}
.cc-window .cc-link { color:#8fb1ff !important; opacity:1 !important; }
.cc-window .cc-compliance { margin-top:12px; }
.cc-window .cc-btn {
  min-width:84px;
  border-radius:9px !important;
  border:1px solid #477cff !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.02em;
  padding:8px 12px !important;
}

.mkt-table-inner,
.tokene-pulse-coins {
  scrollbar-color:#bdc8d7 transparent;
  scrollbar-width:thin;
}
.mkt-table-inner::-webkit-scrollbar,
.tokene-pulse-coins::-webkit-scrollbar { height:6px; }
.mkt-table-inner::-webkit-scrollbar-thumb,
.tokene-pulse-coins::-webkit-scrollbar-thumb {
  background:#c7d1de;
  border-radius:999px;
}

.tokene-news-card__media img,
.tokene-pulse-row img,
.tokene-pulse-chip img,
.tokene-market-tape__item img { aspect-ratio:1 / 1; }

@media (max-width:991.98px) {
  .tokene-theme-toggle {
    width:auto;
    min-height:40px;
    justify-content:flex-start;
    gap:7px;
    padding:0 11px;
  }
  .tokene-theme-item { margin-top:2px; }
}
@media (max-width:575.98px) {
  .cc-window.cc-floating {
    left:12px !important;
    right:12px !important;
    bottom:12px !important;
    width:auto !important;
    max-width:none !important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .tokene-theme-toggle { transition:none !important; }
}



/* === TOKENE HOMEPAGE 2026 FINAL POLISH === */
.mkt-table-wrap .dataTables_info {
  padding:15px 18px !important;
  color:#8492a6 !important;
  font-size:10px !important;
}
.mkt-table-wrap .dataTables_paginate {
  padding:10px 14px 14px !important;
}
.mkt-table-wrap .dataTables_paginate .paginate_button,
.mkt-table-wrap .page-link {
  min-width:32px;
  height:32px;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  margin:0 2px;
  border:1px solid #e1e7ef !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#64748b !important;
  font-size:10px !important;
}
.mkt-table-wrap .dataTables_paginate .paginate_button.current,
.mkt-table-wrap .page-item.active .page-link {
  color:#fff !important;
  background:#2f6bff !important;
  border-color:#2f6bff !important;
}
.mkt-table-wrap .dataTables_paginate .paginate_button:hover,
.mkt-table-wrap .page-link:hover {
  color:#2454d6 !important;
  background:#eef4ff !important;
  border-color:#cbd9f4 !important;
}
.dark-mode .mkt-table-wrap .dataTables_paginate .paginate_button,
.dark-mode .mkt-table-wrap .page-link {
  background:#0d1726 !important;
  border-color:rgba(148,163,184,.14) !important;
  color:#91a3bd !important;
}
.dark-mode .mkt-table-wrap .dataTables_paginate .paginate_button.current,
.dark-mode .mkt-table-wrap .page-item.active .page-link {
  color:#fff !important;
  background:#2f6bff !important;
  border-color:#2f6bff !important;
}
@media (max-width:575.98px) {
  .mkt-table-wrap .dataTables_info {
    padding:12px 14px 6px !important;
    text-align:center !important;
  }
  .mkt-table-wrap .dataTables_paginate {
    width:100%;
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
  }
}

/* === TOKENE WEB3 2026 UI ALIGNMENT === */
.web3-tools-page{max-width:1180px;padding-top:32px;padding-bottom:64px}
.web3-tools-page .row{margin-left:-12px;margin-right:-12px}
.web3-tools-page .row>[class*="col-"]{padding-left:12px;padding-right:12px}

.web3-hero{position:relative;min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:38px 42px;margin-bottom:24px;overflow:hidden;text-align:left;color:#eef5ff;border:1px solid rgba(148,163,184,.14);border-radius:22px;background:radial-gradient(circle at 85% 10%,rgba(34,211,238,.12),transparent 30%),radial-gradient(circle at 10% 0%,rgba(47,107,255,.23),transparent 38%),linear-gradient(135deg,#0b1324 0%,#0d172b 55%,#0a1424 100%);box-shadow:0 22px 55px rgba(0,0,0,.18)}
.web3-hero::before{display:none}
.web3-hero__grid{position:absolute;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(rgba(148,163,184,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.18) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to right,#000,transparent 88%)}
.web3-hero__content,.web3-hero__status{position:relative;z-index:1}
.web3-hero__content{max-width:680px}
.web3-hero__eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:15px;color:#8298b8;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.web3-hero__mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:#8db1ff;border:1px solid rgba(109,156,255,.22);border-radius:11px;background:rgba(47,107,255,.10)}
.web3-hero__title{color:#f5f9ff;font-size:36px;line-height:1.08;font-weight:820;letter-spacing:-.045em;margin:0 0 10px}
.web3-hero__sub{max-width:620px;color:#94a7c1;font-size:13px;line-height:1.7;margin:0}
.web3-hero__status{min-width:190px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.web3-mode-pill{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:7px 10px;color:#9eafc7;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:rgba(255,255,255,.035);font-size:9.5px;font-weight:750;letter-spacing:.025em}
.web3-mode-pill--safe{color:#65d6aa;border-color:rgba(22,199,132,.20);background:rgba(22,199,132,.07)}
.web3-mode-pill--safe span{width:7px;height:7px;border-radius:50%;background:#16c784;box-shadow:0 0 0 4px rgba(22,199,132,.08)}
.web3-coming-soon-badge{color:#8ea2be;background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.16)}

.web3-form-card,.web3-wallet-panel{height:100%;padding:24px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:0 10px 32px rgba(15,23,42,.055)}
.web3-card-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}
.web3-card-heading__icon{width:40px;height:40px;flex:0 0 40px;display:flex;align-items:center;justify-content:center;color:#2f6bff;background:#edf4ff;border:1px solid #dae7ff;border-radius:12px}
.web3-form-card__title{color:#172033;font-size:16px;font-weight:800;letter-spacing:-.018em;margin:1px 0 4px}
.web3-card-heading__sub{color:#7a8a9f;font-size:10.5px;line-height:1.5;margin:0}
.web3-form-card label{color:#5f7088;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:7px}
.web3-form-card .form-control{min-height:46px;border-color:#dce4ee;border-radius:10px;font-size:12px}
.web3-form-card .form-control[disabled],.web3-form-card .form-control-file[disabled]{color:#8b9bb0;background:#f6f8fb;border-color:#e2e8f0;opacity:1}
.web3-form-card .input-group>.form-control:first-child{border-top-right-radius:0;border-bottom-right-radius:0}
.web3-form-card .input-group-append .form-control{min-width:150px;border-top-left-radius:0;border-bottom-left-radius:0}
.web3-swap-direction{width:38px;height:38px;margin:10px auto;display:flex;align-items:center;justify-content:center;color:#6d9cff;border:1px solid #dae6fb;border-radius:12px;background:#f4f8ff}

.web3-fee-panel{overflow:hidden;padding:0;border:1px solid #e2e8f0;border-radius:13px;background:#f9fbfd;font-size:11px}
.web3-fee-panel__row{min-height:40px;padding:9px 12px;color:#5d6d82;border-bottom:1px solid #e8edf3}
.web3-fee-panel__row--header{color:#1f2b3e;background:#f3f7fb;font-size:11px}
.web3-fee-panel__row--muted{color:#75859a;font-size:10.5px}
.web3-fee-panel__row--notice{padding-top:10px;padding-bottom:10px;color:#8090a4;background:#f7f9fc;font-size:10px;font-style:normal;line-height:1.5}
.web3-fee-panel__wallet{color:#2f6bff}

.web3-action-btn{width:100%;min-height:46px;margin-top:14px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #9ab7f3;border-radius:11px;color:#7287a5;background:#edf3fd;font-size:11.5px;font-weight:800}
.web3-action-btn:disabled{cursor:not-allowed;opacity:1}

.web3-wallet-panel__title{margin-bottom:16px;color:#172033;font-size:14px;font-weight:800}
.web3-wallet-readonly-note{color:#466fe0;background:#eef3ff;border-color:#cedbff;font-size:9px}
.web3-wallet-status{min-height:42px;border-radius:11px;font-size:11px}
.web3-wallet-status--disabled{color:#7b8ca3;background:#f5f7fa;border-color:#e0e6ee;font-style:normal}
.web3-wallet-status--detected{color:#16835e;background:#effaf5;border-color:#caeddf}
.web3-wallet-connect-btn{min-height:44px;border:1px solid #cbd8eb;border-radius:10px;color:#6f8199;background:#edf2f8;font-size:11.5px;font-weight:800}
.web3-wallet-connect-btn:disabled{color:#7890ad;background:#e8eff8;border-color:#d5e0ee;opacity:1}
.web3-wallet-panel__networks{margin-top:14px;gap:6px}
.web3-network-pill{padding:5px 9px;color:#718299;background:#f6f8fb;border-color:#e1e7ef;font-size:9.5px}
.web3-network-pill.active{color:#fff;background:#2f6bff;border-color:#2f6bff}
.web3-wallet-panel__status{padding-top:12px;margin-top:14px!important;border-top:1px solid #edf1f5;color:#718197;font-size:10.5px;line-height:1.55}

.web3-disclaimer{margin-top:4px;padding:18px 20px;color:#8a6418;background:#fffbef;border:1px solid #f1dfad;border-radius:14px;font-size:11px}
.web3-disclaimer strong{color:#9a6d10}
.web3-safety-list{margin-top:9px;color:#7a6c4f;font-size:10.5px}

.dark-mode .web3-form-card,.dark-mode .web3-wallet-panel{background:#0f1828!important;border-color:rgba(148,163,184,.14)!important;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.dark-mode .web3-form-card__title,.dark-mode .web3-wallet-panel__title{color:#edf4ff!important}
.dark-mode .web3-card-heading__sub,.dark-mode .web3-form-card label,.dark-mode .web3-wallet-panel__status{color:#71839e!important}
.dark-mode .web3-card-heading__icon{color:#7aa2ff;background:#14223a;border-color:rgba(109,156,255,.20)}
.dark-mode .web3-form-card .form-control,.dark-mode .web3-form-card .form-control[disabled],.dark-mode .web3-form-card .form-control-file[disabled]{color:#7f91aa!important;background:#0b1321!important;border-color:rgba(148,163,184,.14)!important}
.dark-mode .web3-swap-direction{color:#7ca4ff;background:#111d31;border-color:rgba(109,156,255,.18)}
.dark-mode .web3-fee-panel{background:#0b1422!important;border-color:rgba(148,163,184,.14)!important}
.dark-mode .web3-fee-panel__row{color:#8fa0b8;border-color:rgba(148,163,184,.10)}
.dark-mode .web3-fee-panel__row--header{color:#dfe9f7;background:#111c2e}
.dark-mode .web3-fee-panel__row--notice{color:#70829c;background:#0d1726}
.dark-mode .web3-action-btn,.dark-mode .web3-wallet-connect-btn,.dark-mode .web3-wallet-connect-btn:disabled{color:#6e82a0;background:#111d30;border-color:rgba(148,163,184,.16)}
.dark-mode .web3-wallet-readonly-note{color:#8aa9ff;background:rgba(47,107,255,.10);border-color:rgba(109,156,255,.22)}
.dark-mode .web3-wallet-status--disabled{color:#71839e;background:#0b1422;border-color:rgba(148,163,184,.13)}
.dark-mode .web3-wallet-status--detected{color:#65d6aa;background:rgba(22,199,132,.07);border-color:rgba(22,199,132,.20)}
.dark-mode .web3-network-pill{color:#7285a1;background:#0c1524;border-color:rgba(148,163,184,.13)}
.dark-mode .web3-network-pill.active{color:#dfeaff;background:#19376f;border-color:#2852a0}
.dark-mode .web3-wallet-panel__status{border-color:rgba(148,163,184,.10)}
.dark-mode .web3-disclaimer{color:#c9aa68;background:#17140d;border-color:#4b3c1d}
.dark-mode .web3-disclaimer strong{color:#e0bc6f}
.dark-mode .web3-safety-list{color:#9c8963}

@media (max-width:991.98px){.web3-tools-page{padding-top:22px}.web3-hero{min-height:auto;padding:30px 28px;align-items:flex-start}}
@media (max-width:767.98px){.web3-hero{flex-direction:column;gap:22px}.web3-hero__status{min-width:0;align-items:flex-start;flex-direction:row;flex-wrap:wrap}.web3-hero__title{font-size:30px}}
@media (max-width:575.98px){.web3-tools-page{padding-left:14px;padding-right:14px}.web3-hero{padding:24px 20px;border-radius:17px}.web3-hero__title{font-size:27px}.web3-form-card,.web3-wallet-panel{padding:18px;border-radius:15px}.web3-form-card .input-group{display:block}.web3-form-card .input-group>.form-control,.web3-form-card .input-group-append,.web3-form-card .input-group-append .form-control{width:100%;min-width:0;border-radius:9px!important}.web3-form-card .input-group-append{margin-top:7px;margin-left:0}.web3-fee-panel__row{align-items:flex-start;gap:10px}}
@media (prefers-reduced-motion:reduce){.web3-wallet-status--connecting{animation:none!important}}

/* === TOKENE WEB3 2026 SWAP VISUAL FIX === */
.web3-form-card__title,
.web3-wallet-panel__title,
.dark-mode .web3-form-card__title,
.dark-mode .web3-wallet-panel__title {
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}

.web3-request-card {
  margin-top:24px !important;
  border-top:1px solid #e2e8f0 !important;
  padding-top:24px !important;
}
.web3-request-note {
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:-3px 0 20px;
  padding:12px 13px;
  color:#64748b;
  background:#f6f9fd;
  border:1px solid #e0e8f2;
  border-radius:11px;
  font-size:10.5px;
  line-height:1.55;
}
.web3-request-note__icon {
  width:20px;height:20px;flex:0 0 20px;
  display:inline-flex;align-items:center;justify-content:center;
  color:#2f6bff;
  background:#e9f0ff;
  border-radius:50%;
  font-size:10px;
  font-weight:850;
  font-style:normal;
}
.web3-request-note strong {
  display:block;
  color:#34435a;
  font-size:10.5px;
  margin-bottom:1px;
}
.web3-request-note span:not(.web3-request-note__icon) {
  display:block;
}
.web3-request-card .form-group {
  margin-bottom:18px;
}
.web3-request-card label {
  display:block;
  color:#5f7088;
  font-size:10px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:7px;
}
.web3-request-card label small {
  color:#8c9bb0 !important;
  font-size:8.5px;
  font-weight:600;
  letter-spacing:0;
}
.web3-request-card .form-control {
  min-height:44px;
  color:#42536b;
  background:#fff;
  border:1px solid #dde5ef;
  border-radius:10px;
  font-size:11.5px;
  box-shadow:none;
}
.web3-request-card .form-control:focus {
  border-color:#88aaff;
  box-shadow:0 0 0 3px rgba(47,107,255,.08);
}
.web3-request-card #w3-form-network {
  max-width:330px !important;
}
.web3-request-card .help-block {
  margin:6px 0 0;
  color:#7c8ca2 !important;
  font-size:9.5px !important;
  line-height:1.5;
}
.web3-request-actions {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  padding-top:2px;
}
.web3-request-submit {
  min-height:42px;
  padding:9px 15px !important;
  border:1px solid #3f7bff !important;
  border-radius:10px !important;
  color:#fff !important;
  background:#2f6bff !important;
  font-size:10.5px !important;
  font-weight:800 !important;
}
.web3-request-submit:hover,
.web3-request-submit:focus {
  color:#fff !important;
  background:#3b75ff !important;
}
.web3-request-submit-note {
  color:#8392a7;
  font-size:9.5px;
}

.dark-mode .web3-request-card {
  border-top-color:rgba(148,163,184,.14) !important;
}
.dark-mode .web3-request-note {
  color:#788ba6;
  background:#0c1625;
  border-color:rgba(148,163,184,.12);
}
.dark-mode .web3-request-note__icon {
  color:#8aa9ff;
  background:rgba(47,107,255,.12);
}
.dark-mode .web3-request-note strong {
  color:#b8c7da;
}
.dark-mode .web3-request-card label {
  color:#71839e;
}
.dark-mode .web3-request-card label small {
  color:#5f718b !important;
}
.dark-mode .web3-request-card .form-control {
  color:#8fa0b8;
  background:#0b1321;
  border-color:rgba(148,163,184,.14);
}
.dark-mode .web3-request-card .form-control:focus {
  border-color:#4f79d8;
  box-shadow:0 0 0 3px rgba(47,107,255,.10);
}
.dark-mode .web3-request-card .help-block {
  color:#657791 !important;
}
.dark-mode .web3-request-submit-note {
  color:#687a95;
}

@media (max-width:575.98px) {
  .web3-request-card #w3-form-network {
    max-width:100% !important;
  }
  .web3-request-actions {
    align-items:stretch;
    flex-direction:column;
  }
  .web3-request-submit {
    width:100%;
  }
}

/* Tokene Web3 2026 — shared-page visual guard */
.web3-hero:not(.web3-hero--swap) {
  display:block;
  min-height:0;
  padding:34px 28px 30px;
  text-align:center;
}
.web3-hero:not(.web3-hero--swap) .web3-hero__icon-grid {
  position:relative;
  z-index:1;
  margin-bottom:12px;
  color:#86a8ef;
  opacity:1;
}
.web3-hero:not(.web3-hero--swap) .web3-hero__sub {
  margin-left:auto;
  margin-right:auto;
}
.web3-hero:not(.web3-hero--swap) .web3-coming-soon-badge {
  position:relative;
  z-index:1;
  display:inline-flex;
  margin-top:14px;
  padding:6px 11px;
  border-radius:999px;
  color:#91a5c1;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(148,163,184,.16);
  font-size:9.5px;
}

.web3-tool-card {
  border-radius:16px;
  border-color:#e2e8f0;
  box-shadow:0 8px 28px rgba(15,23,42,.05);
}
.web3-tool-card__icon {
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:13px;
  color:#2f6bff;
  background:#edf4ff;
  border:1px solid #dae7ff;
  border-radius:12px;
  font-size:18px;
}
.web3-tool-card__title {
  color:#172033;
  font-size:15px;
  font-weight:800;
}
.web3-tool-card__desc {
  color:#718197;
  font-size:11px;
}
.web3-tool-card__cta {
  color:#2f6bff;
  font-size:10.5px;
}
.dark-mode .web3-tool-card {
  background:#0f1828 !important;
  border-color:rgba(148,163,184,.14) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16);
}
.dark-mode .web3-tool-card__icon {
  color:#7aa2ff;
  background:#14223a;
  border-color:rgba(109,156,255,.20);
}
.dark-mode .web3-tool-card__title {
  color:#edf4ff !important;
  background:transparent !important;
}
.dark-mode .web3-tool-card__desc {
  color:#71839e;
}
.dark-mode .web3-tool-card__cta {
  color:#7ca4ff;
}

/* === TOKENE WEB3 WALLET BUTTON CONTRAST === */
#w3rw-connect-btn:not(:disabled) {
  min-height:42px;
  color:#ffffff !important;
  background:linear-gradient(135deg,#2f6bff 0%,#2457d8 100%) !important;
  border:1px solid #5b86ff !important;
  box-shadow:0 8px 22px rgba(47,107,255,.22);
  opacity:1 !important;
  cursor:pointer !important;
}
#w3rw-connect-btn:not(:disabled):hover,
#w3rw-connect-btn:not(:disabled):focus-visible {
  color:#ffffff !important;
  background:linear-gradient(135deg,#3e79ff 0%,#2f64e7 100%) !important;
  border-color:#84a5ff !important;
  box-shadow:0 10px 28px rgba(47,107,255,.30);
  outline:none;
}
#w3rw-connect-btn:disabled {
  color:#6f8199 !important;
  background:#111d30 !important;
  border-color:rgba(148,163,184,.16) !important;
  box-shadow:none !important;
  opacity:.72 !important;
  cursor:not-allowed !important;
}

/* Active wallet providers */
.web3-wallet-provider[data-wallet-provider] {
  min-height:34px;
  padding:7px 11px !important;
  border-width:1px !important;
  border-style:solid !important;
  border-radius:8px !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.01em;
  opacity:1 !important;
  cursor:pointer !important;
  box-shadow:0 5px 14px rgba(0,0,0,.12);
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background-color .14s ease;
}
.web3-wallet-provider[data-wallet-provider]:hover,
.web3-wallet-provider[data-wallet-provider]:focus-visible {
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(0,0,0,.18);
  outline:none;
}
.web3-wallet-provider[data-wallet-provider]:active {
  transform:translateY(0);
}

/* Provider accents */
.web3-wallet-provider[data-wallet-provider="metamask"] {
  color:#ffd2a8 !important;
  background:#251a13 !important;
  border-color:#f6851b !important;
}
.web3-wallet-provider[data-wallet-provider="metamask"]:hover {
  background:#302016 !important;
  border-color:#ff9b42 !important;
}

.web3-wallet-provider[data-wallet-provider="trust"] {
  color:#a9d5ff !important;
  background:#0d1f31 !important;
  border-color:#3375bb !important;
}
.web3-wallet-provider[data-wallet-provider="trust"]:hover {
  background:#102943 !important;
  border-color:#5b9bd8 !important;
}

.web3-wallet-provider[data-wallet-provider="coinbase"] {
  color:#dce6ff !important;
  background:#0d1a3a !important;
  border-color:#0052ff !important;
}
.web3-wallet-provider[data-wallet-provider="coinbase"]:hover {
  background:#102455 !important;
  border-color:#3f7cff !important;
}

.web3-wallet-provider[data-wallet-provider="okx"] {
  color:#f8fafc !important;
  background:#171c26 !important;
  border-color:#cbd5e1 !important;
}
.web3-wallet-provider[data-wallet-provider="okx"]:hover {
  background:#202734 !important;
  border-color:#ffffff !important;
}

.web3-wallet-provider[data-wallet-provider="binance"] {
  color:#ffe48a !important;
  background:#2a2310 !important;
  border-color:#f3ba2f !important;
}
.web3-wallet-provider[data-wallet-provider="binance"]:hover {
  background:#352c13 !important;
  border-color:#ffd35c !important;
}

/* WalletConnect remains intentionally unavailable */
.web3-wallet-provider--coming {
  color:#66758a !important;
  background:#111827 !important;
  border:1px dashed rgba(148,163,184,.22) !important;
  opacity:.52 !important;
  cursor:not-allowed !important;
}

/* === TOKENE WEB3 WALLET BRAND ICONS === */
.web3-wallet-panel__providers {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:12px;
}
.web3-wallet-provider[data-wallet-provider],
.web3-wallet-provider--coming {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:7px 11px !important;
}
.web3-wallet-provider__icon {
  display:block;
  width:19px;
  height:19px;
  flex:0 0 19px;
  object-fit:contain;
}
.web3-wallet-provider span {
  display:inline-flex;
  align-items:center;
  gap:4px;
  white-space:nowrap;
}
.web3-wallet-provider small {
  font-size:8px;
  font-weight:700;
  opacity:.72;
}

/* Phantom EVM */
.web3-wallet-provider[data-wallet-provider="phantom"] {
  color:#d9d2ff !important;
  background:#191630 !important;
  border-color:#8b7cf6 !important;
}
.web3-wallet-provider[data-wallet-provider="phantom"]:hover,
.web3-wallet-provider[data-wallet-provider="phantom"]:focus-visible {
  color:#ffffff !important;
  background:#231d45 !important;
  border-color:#ab9fff !important;
  box-shadow:0 8px 22px rgba(139,124,246,.18);
}

/* Coming-soon provider must remain visibly inactive even with an icon. */
.web3-wallet-provider--coming,
.web3-wallet-provider--coming:disabled {
  color:#607087 !important;
  background:#0d1523 !important;
  border:1px dashed rgba(148,163,184,.20) !important;
  opacity:.48 !important;
  cursor:not-allowed !important;
  transform:none !important;
  box-shadow:none !important;
}
.web3-wallet-provider--coming .web3-wallet-provider__icon {
  filter:grayscale(1);
  opacity:.6;
}

@media (max-width:575.98px) {
  .web3-wallet-panel__providers {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .web3-wallet-provider[data-wallet-provider],
  .web3-wallet-provider--coming {
    width:100%;
    justify-content:flex-start;
  }
}
\n

/* === TOKENE 2026 COIN DETAIL DARK ALIGNMENT === */
.coin-detail-titlebar {
  background:#0a111e !important;
  border-top:1px solid rgba(148,163,184,.06);
  border-bottom:1px solid rgba(148,163,184,.10);
}
.coin-detail-titlebar .breadcrumb-item,
.coin-detail-titlebar .breadcrumb-item.active {
  color:#7f90aa;
}
.coin-detail-titlebar .breadcrumb-item a {
  color:#22d3ee;
  font-weight:650;
}
.coin-detail-titlebar .breadcrumb-item + .breadcrumb-item::before {
  color:#4d5c73;
}
.coin-detail-titlebar .btn-outline-secondary {
  color:#aebbd0;
  border-color:#3a4a63;
  background:#0e192a;
}
.coin-detail-titlebar .btn-outline-secondary:hover {
  color:#fff;
  border-color:#4f7fff;
  background:#172844;
}

.coin-detail-page {
  padding-top:28px;
  padding-bottom:58px;
  color:#e7eef9;
}
.coin-detail-page .coin-api-warning {
  color:#ffd98a;
  background:#241b0c;
  border:1px solid rgba(245,183,52,.28);
}

/* Hero */
.coin-detail-page .coin-hero-card {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 15%, rgba(34,211,238,.10), transparent 34%),
    radial-gradient(circle at 12% 4%, rgba(47,107,255,.16), transparent 38%),
    linear-gradient(135deg,#101c33 0%,#0c1728 55%,#0b1b27 100%);
  border:1px solid #273b58;
  border-radius:18px;
  box-shadow:0 18px 48px rgba(0,0,0,.22);
  padding:28px 30px;
  margin-top:0;
}
.coin-detail-page .coin-hero-card::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,#2f6bff,#22d3ee);
}
.coin-detail-page .coin-hero-img {
  width:60px;
  height:60px;
  padding:7px;
  background:#f7f9fc;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 8px 22px rgba(0,0,0,.20);
}
.coin-detail-page .coin-hero-name {
  color:#f7fbff;
  font-size:1.75rem;
  letter-spacing:-.025em;
}
.coin-detail-page .coin-sym-badge {
  color:#dbe7f7;
  background:#18263a;
  border:1px solid #31445f;
}
.coin-detail-page .coin-rank-badge {
  color:#fff;
  background:#2f6bff;
  border:1px solid #5c83ff;
}
.coin-detail-page .coin-price {
  color:#f7fbff;
  font-size:2.35rem;
  letter-spacing:-.035em;
}
.coin-detail-page .coin-last-updated {
  color:#7f90aa;
}
.coin-detail-page .coin-hero-actions .btn-outline-success {
  color:#58e5a8;
  border-color:rgba(22,199,132,.50);
  background:rgba(22,199,132,.08);
}
.coin-detail-page .coin-hero-actions .btn-outline-success:hover {
  color:#061b12;
  background:#4ee0a1;
  border-color:#4ee0a1;
}
.coin-detail-page .coin-hero-actions .btn-outline-danger {
  color:#ff8c94;
  border-color:rgba(234,57,67,.50);
  background:rgba(234,57,67,.08);
}

/* Stats */
.coin-detail-page .coin-stat-grid {
  gap:12px;
  margin-top:14px;
}
.coin-detail-page .coin-stat-item {
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#111d30 0%,#0e192a 100%);
  border:1px solid #23344d;
  border-radius:12px;
  box-shadow:0 8px 22px rgba(0,0,0,.12);
  padding:16px 17px;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.coin-detail-page .coin-stat-item:hover {
  border-color:#35527a;
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.coin-detail-page .coin-stat-label {
  color:#7084a3;
  font-size:.70rem;
  letter-spacing:.09em;
}
.coin-detail-page .coin-stat-value {
  color:#edf4ff;
  font-size:1.08rem;
}

/* Buy / Sell */
.coin-detail-page > .row .btn-dark,
.coin-detail-page > .row .btn-warning {
  min-height:42px;
  border-radius:9px;
  font-weight:750;
}
.coin-detail-page > .row .btn-dark {
  color:#dce8fa;
  background:#121f33;
  border-color:#2a3f5d;
}
.coin-detail-page > .row .btn-dark:hover {
  color:#fff;
  background:#192b46;
  border-color:#416592;
}
.coin-detail-page > .row .btn-warning {
  color:#fff;
  background:linear-gradient(135deg,#2f6bff,#2455c8);
  border-color:#4d79e6;
}
.coin-detail-page > .row .btn-warning:hover {
  background:linear-gradient(135deg,#3d79ff,#2d63dc);
}

/* Shared content cards */
.coin-detail-page .coin-chart-card,
.coin-detail-page .coin-source-card {
  background:linear-gradient(180deg,#111c2e 0%,#0d1727 100%);
  border:1px solid #23344d;
  border-radius:15px;
  box-shadow:0 12px 34px rgba(0,0,0,.15);
}
.coin-detail-page .coin-chart-card {
  padding:22px 24px;
}
.coin-detail-page .coin-chart-title {
  color:#edf4ff;
  font-size:1.02rem;
  letter-spacing:-.01em;
}
.coin-detail-page .coin-chart-title i,
.coin-detail-page .coin-source-icon {
  color:#4c80ff;
}
.coin-detail-page .coin-chart-card .tab-btn,
.coin-detail-page .coin-chart-card .range-btn {
  color:#9badc7;
  background:#0d1727;
  border-color:#2a3b55;
}
.coin-detail-page .coin-chart-card .tab-btn:hover,
.coin-detail-page .coin-chart-card .range-btn:hover {
  color:#fff;
  border-color:#4c80ff;
  background:#14233a;
}
.coin-detail-page .coin-chart-card .tab-btn.active,
.coin-detail-page .coin-chart-card .range-btn.active {
  color:#fff;
  background:#22304d;
  border-color:#455c85;
  box-shadow:none;
}
.coin-detail-page #echart,
.coin-detail-page #tradingview-widget {
  background:#0d1727;
  border-radius:10px;
  overflow:hidden;
}

/* Forms / calculator */
.coin-detail-page .form-control,
.coin-detail-page .select2-container--default .select2-selection--single {
  color:#dce7f6 !important;
  background:#0a1423 !important;
  border:1px solid #2a3b55 !important;
  border-radius:8px !important;
}
.coin-detail-page .form-control:focus {
  color:#fff !important;
  background:#0b1728 !important;
  border-color:#4c80ff !important;
  box-shadow:0 0 0 3px rgba(76,128,255,.10);
}
.coin-detail-page .form-control:disabled {
  color:#8b9bb3 !important;
  background:#0c1625 !important;
}
.coin-detail-page .select2-container .select2-selection--single {
  min-height:38px;
}
.coin-detail-page .select2-container--default .select2-selection--single .select2-selection__rendered {
  color:#dce7f6;
  line-height:36px;
}
.coin-detail-page .select2-container--default .select2-selection--single .select2-selection__arrow {
  height:36px;
}
.coin-detail-page #to_ammount {
  color:#e8f1ff;
  font-weight:750;
}

/* History table */
.coin-detail-page .table {
  color:#cbd7e8;
  background:#0e1929;
}
.coin-detail-page .table thead th {
  color:#91a4c0;
  background:#101d31;
  border-color:#293b55;
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.coin-detail-page .table td {
  border-color:#23344d;
}
.coin-detail-page .table-striped tbody tr:nth-of-type(odd) {
  background:rgba(255,255,255,.018);
}
.coin-detail-page .table-striped tbody tr:hover {
  background:rgba(76,128,255,.055);
}
.coin-detail-page .dataTables_wrapper,
.coin-detail-page .dataTables_wrapper .dataTables_paginate,
.coin-detail-page .dataTables_wrapper .dataTables_info {
  color:#8295b2 !important;
}
.coin-detail-page .page-link {
  color:#9db0cb;
  background:#101b2d;
  border-color:#2a3b55;
}
.coin-detail-page .page-item.active .page-link {
  color:#fff;
  background:#2f6bff;
  border-color:#2f6bff;
}

/* Source + helper text */
.coin-detail-page .coin-source-title {
  color:#6f84a4;
}
.coin-detail-page .coin-source-text,
.coin-detail-page .text-muted {
  color:#8b9db7 !important;
}
.coin-detail-page .coin-source-text strong {
  color:#dce7f7;
}

/* News cards on coin detail inherit the 2026 dark surface */
.coin-detail-page .mkt-news-section {
  color:#e7eef9;
}
.coin-detail-page .mkt-news-card {
  background:#101b2d;
  border-color:#23344d;
}
.coin-detail-page .mkt-news-title {
  color:#e9f1fc;
}
.coin-detail-page .mkt-news-date,
.coin-detail-page .mkt-news-desc {
  color:#7e91ad;
}

/* Not-found state */
.coin-not-found-card {
  color:#e7eef9;
  background:#101b2d !important;
  border:1px solid #23344d !important;
}
.coin-not-found-card .coin-nf-title { color:#f2f7ff; }
.coin-not-found-card .coin-nf-desc { color:#8396b3; }

@media (max-width:767.98px) {
  .coin-detail-page { padding-top:18px; padding-bottom:40px; }
  .coin-detail-page .coin-hero-card { padding:21px 18px; border-radius:14px; }
  .coin-detail-page .coin-price { font-size:1.9rem; }
  .coin-detail-page .coin-chart-card { padding:17px 15px; }
}

/* === TOKENE 2026 SIGNALS V2 DARK ALIGNMENT === */
.signals-v2-page {
  color:#e7eef9;
}
.signals-v2-hero {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:26px 28px;
  margin-bottom:18px;
  border:1px solid #263a57;
  border-radius:18px;
  background:
    radial-gradient(circle at 88% 15%,rgba(34,211,238,.10),transparent 34%),
    radial-gradient(circle at 8% 0%,rgba(47,107,255,.18),transparent 40%),
    linear-gradient(135deg,#101c33 0%,#0c1728 58%,#0b1b27 100%);
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}
.signals-v2-kicker {
  display:inline-block;
  color:#6f8cff;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.12em;
  margin-bottom:7px;
}
.signals-v2-page .signals-page-title {
  color:#f4f8ff;
  margin:0 0 7px;
  letter-spacing:-.025em;
}
.signals-v2-page .signals-page-subtitle {
  color:#8da0bc;
  max-width:780px;
  line-height:1.65;
}
.signals-v2-engine-badge {
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(34,211,238,.22);
  border-radius:999px;
  background:rgba(34,211,238,.07);
  color:#95dae5;
  font-size:.72rem;
  font-weight:700;
  white-space:nowrap;
}
.signals-v2-engine-dot {
  width:7px;height:7px;border-radius:50%;background:#22d3ee;
  box-shadow:0 0 0 4px rgba(34,211,238,.10);
}
.signals-v2-page .signals-breadcrumb { color:#7286a5; }
.signals-v2-page .signals-breadcrumb a { color:#6f8cff; }
.signals-v2-page .signal-disclaimer,
.signals-home-section .signal-disclaimer {
  color:#d7c58f;
  background:#1d180d;
  border:1px solid rgba(245,183,52,.24);
  border-left:3px solid #d6a83a;
}
.signals-v2-page .signals-filter-btn {
  color:#9cafca;
  background:#0d1727;
  border-color:#2a3b55;
}
.signals-v2-page .signals-filter-btn:hover,
.signals-v2-page .signals-filter-btn.active {
  color:#fff;
  background:#20385f;
  border-color:#4c80ff;
}
.signals-v2-page .signal-card {
  color:#dce7f6;
  background:linear-gradient(180deg,#111d30 0%,#0d1727 100%);
  border-color:#23344d;
  box-shadow:0 10px 28px rgba(0,0,0,.14);
}
.signals-v2-page .signal-card:hover {
  border-color:#35527a;
  box-shadow:0 16px 36px rgba(0,0,0,.22);
}
.signals-v2-page .signal-card-top,
.signals-v2-page .signal-card-footer {
  border-color:#23344d;
}
.signals-v2-page .signal-coin-img {
  background:#f7f9fc;
  border:1px solid rgba(255,255,255,.10);
}
.signals-v2-page .signal-coin-name,
.signals-v2-page .signal-meta-value {
  color:#edf4ff;
}
.signals-v2-page .signal-coin-symbol,
.signals-v2-page .signal-meta-label,
.signals-v2-page .signal-conf-label,
.signals-v2-page .signal-card-footer,
.signals-v2-page .signal-generated-at,
.signals-v2-page .signal-reason {
  color:#8295b2;
}
.signals-v2-page .signal-conf-pct,
.signals-v2-page .signal-conf-pct-lg {
  color:#a9c2ff;
}
.signals-v2-page .confidence-bar,
.signals-home-section .confidence-bar,
.coin-signal-panel .confidence-bar {
  background:#22314a;
}
.signals-v2-page .signal-bullish,
.signals-home-section .signal-bullish,
.coin-signal-panel .signal-bullish {
  color:#8df0c3;background:rgba(22,199,132,.12);border-color:rgba(22,199,132,.30);
}
.signals-v2-page .signal-bearish,
.signals-home-section .signal-bearish,
.coin-signal-panel .signal-bearish {
  color:#ff9ca4;background:rgba(234,57,67,.12);border-color:rgba(234,57,67,.30);
}
.signals-v2-page .signal-neutral,
.signals-home-section .signal-neutral,
.coin-signal-panel .signal-neutral {
  color:#b3c0d3;background:rgba(148,163,184,.10);border-color:rgba(148,163,184,.22);
}
.signals-v2-page .signal-watch,
.signals-home-section .signal-watch,
.coin-signal-panel .signal-watch {
  color:#f2d78a;background:rgba(245,183,52,.10);border-color:rgba(245,183,52,.25);
}
.signals-v2-page .signal-high-volatility,
.signals-home-section .signal-high-volatility,
.coin-signal-panel .signal-high-volatility {
  color:#86deeb;background:rgba(34,211,238,.10);border-color:rgba(34,211,238,.24);
}
.signals-v2-page .risk-low,
.signals-home-section .risk-low,
.coin-signal-panel .risk-low { color:#8df0c3;background:rgba(22,199,132,.11); }
.signals-v2-page .risk-medium,
.signals-home-section .risk-medium,
.coin-signal-panel .risk-medium { color:#f2d78a;background:rgba(245,183,52,.10); }
.signals-v2-page .risk-high,
.signals-home-section .risk-high,
.coin-signal-panel .risk-high { color:#ff9ca4;background:rgba(234,57,67,.11); }

.signals-v2-page .signal-detail-page {
  color:#dce7f6;
  background:linear-gradient(180deg,#111d30 0%,#0d1727 100%);
  border-color:#263a57;
  box-shadow:0 18px 46px rgba(0,0,0,.20);
}
.signals-v2-page .signal-detail-name { color:#f4f8ff; }
.signals-v2-page .signal-metric-card,
.signals-v2-page .signal-reason-block,
.signals-v2-page .signal-ai-block,
.signals-v2-page .signal-admin-note {
  background:#0b1626;
  border:1px solid #22344e;
}
.signals-v2-page .signal-metric-label { color:#6f84a4; }
.signals-v2-page .signal-metric-value { color:#edf4ff; }
.signals-v2-page .signal-reason-title { color:#dfe9f8; }
.signals-v2-page .signal-reason-text,
.signals-v2-page .signal-admin-note p { color:#93a5bf; }
.signal-v2-indicators {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}
.signal-v2-indicators > div {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:11px 12px;
  border:1px solid #22344e;
  border-radius:9px;
  background:#0a1423;
}
.signal-v2-indicators span {
  color:#6f84a4;
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.signal-v2-indicators strong {
  color:#dce8f8;
  font-size:.85rem;
}
.signal-v2-generated {
  color:#6f84a4;
  font-size:.72rem;
  margin-top:14px;
}
.signals-v2-empty {
  color:#8da0bc;
  background:#0f1a2b;
  border:1px solid #23344d;
  border-radius:14px;
}
.signals-v2-empty h2,
.signals-v2-empty h3 { color:#edf4ff; }
.signals-v2-page .signals-disabled-icon { color:#45658f; }

/* Homepage + coin embedded signal surfaces */
.signals-ticker-wrap,
.signals-home-section .signal-preview-card,
.coin-signal-panel {
  background:#101b2d !important;
  border-color:#23344d !important;
}
.signals-home-section .signals-home-title,
.signals-home-section .signal-preview-name,
.coin-signal-panel .coin-signal-panel-stat-value {
  color:#edf4ff !important;
}
.signals-home-section .signals-home-sub,
.signals-home-section .signal-preview-reason,
.signals-home-section .signal-preview-sym,
.coin-signal-panel .coin-signal-panel-stat-label,
.coin-signal-panel .coin-signal-panel-reason,
.coin-signal-panel .coin-signal-panel-disclaimer {
  color:#8295b2 !important;
}

@media (max-width:767.98px) {
  .signals-v2-hero { padding:20px 18px; flex-direction:column; }
  .signal-v2-indicators { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* TOKENE MARKET MOOD V1 -- 2026-10-11 */
/* Widen only the market table, not the site's other content sections. */
#coin-table-anchor.mkt-table-wrap {
  width: min(1560px, calc(100vw - 36px));
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
}
#coin-table-anchor .mkt-table-inner {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}
#coin-table-anchor #coins-info-table {
  width: 100% !important;
  min-width: 1320px;
  margin-bottom: 0 !important;
}
#coin-table-anchor #coins-info-table thead th,
#coin-table-anchor #coins-info-table tbody td {
  white-space: nowrap;
  vertical-align: middle;
}
/* Compact identity column: icon + ellipsized name + symbol under the name. */
#coin-table-anchor #coins-info-table th:nth-child(2),
#coin-table-anchor #coins-info-table td:nth-child(2) {
  width: 165px !important;
  min-width: 165px !important;
  max-width: 165px !important;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2) {
  white-space: normal !important;
  overflow: hidden;
  line-height: 1.3;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2) > img {
  float: left;
  height: 29px;
  width: 29px;
  object-fit: contain;
  margin: 3px 9px 0 0;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2) > a {
  display: block;
  max-width: 139px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2) .coin-name {
  font-size: 12.5px;
  font-weight: 750;
  line-height: 1.35;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2) > .badge {
  display: inline-block;
  margin-top: 2px;
  padding: 2px 5px;
  font-size: 9px !important;
  letter-spacing: .035em;
}
#coin-table-anchor #coins-info-table tbody td:nth-child(2)::after {
  content: "";
  display: block;
  clear: both;
}
#coin-table-anchor #coins-info-table th:nth-child(7),
#coin-table-anchor #coins-info-table td:nth-child(7) { min-width: 200px; }

/* TOKENE MARKET MOOD V2 — five hand-drawn vector expressions. */
#coin-table-anchor .mkt-mood {
  --mood-face-bg: #eceff4;
  --mood-face-border: #cfd7e3;
  --mood-ink: #415168;
  --mood-bar: #8494a9;
  display: inline-grid;
  grid-template-columns: 38px minmax(0, 1fr);
  grid-template-rows: auto 4px;
  column-gap: 9px;
  row-gap: 4px;
  align-items: center;
  width: 177px;
  min-height: 49px;
  padding: 5px 9px 6px;
  border-radius: 13px;
  border: 1px solid #dbe3ed;
  background: #f6f8fb;
  color: #415168;
  text-align: left;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
}
#coin-table-anchor .mkt-mood__face { width: 36px; height: 36px; display: block; }
#coin-table-anchor .mkt-mood__vector { width: 36px; height: 36px; display: block; overflow: visible; filter: drop-shadow(0 1px 1px rgba(15,23,42,.08)); }
#coin-table-anchor .mkt-face-disc { fill: var(--mood-face-bg); stroke: var(--mood-face-border); stroke-width: 1.5; }
#coin-table-anchor .mkt-face-stroke { fill: none; stroke: var(--mood-ink); stroke-width: 2.65; stroke-linejoin: round; stroke-linecap: round; }
#coin-table-anchor .mkt-face-ink { fill: var(--mood-ink); }
#coin-table-anchor .mkt-face-sweat { fill: #84c5f5; stroke: #248cc9; stroke-width: .8; }
#coin-table-anchor .mkt-face-mouth { fill: var(--mood-ink); }
#coin-table-anchor .mkt-face-teeth { fill: none; stroke: #fff; stroke-width: 2.2; stroke-linecap: round; }
#coin-table-anchor .mkt-face-blush { fill: #fa8e8e; opacity: .75; }
#coin-table-anchor .mkt-mood__metrics { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1px; min-width: 0; }
#coin-table-anchor .mkt-mood__score { font-size: 14px; line-height: 1.15; font-weight: 850; color: inherit; }
#coin-table-anchor .mkt-mood__score small { font-size: 9px; margin-left: 1px; opacity: .75; font-weight: 650; }
#coin-table-anchor .mkt-mood__label { font-size: 10px; line-height: 1.2; font-weight: 750; letter-spacing: .01em; color: inherit; }
#coin-table-anchor .mkt-mood__bar { display: block; grid-column: 1 / -1; width: 100%; height: 4px; border-radius: 999px; background: rgba(100,116,139,.15); overflow: hidden; }
#coin-table-anchor .mkt-mood__bar > i { display: block; height: 100%; border-radius: 999px; background: var(--mood-bar); transition: width .25s ease; }
#coin-table-anchor .mkt-mood--fear { --mood-face-bg: #ffcfda; --mood-face-border: #f5aaba; --mood-ink: #9f2444; --mood-bar: #e04d6a; color: #a72d48; background: #fff0f3; border-color: #f7c8d2; }
#coin-table-anchor .mkt-mood--concern { --mood-face-bg: #ffdfbd; --mood-face-border: #eec087; --mood-ink: #9a5117; --mood-bar: #ec9049; color: #935017; background: #fff6eb; border-color: #f1d9b9; }
#coin-table-anchor .mkt-mood--neutral { --mood-face-bg: #e1e8f0; --mood-face-border: #bdcad9; --mood-ink: #50617b; --mood-bar: #8799b4; color: #50617b; background: #f3f6fa; border-color: #dae1ea; }
#coin-table-anchor .mkt-mood--positive { --mood-face-bg: #b7f3df; --mood-face-border: #8dd7be; --mood-ink: #147d61; --mood-bar: #25b68d; color: #147d61; background: #edfbf5; border-color: #beebd9; }
#coin-table-anchor .mkt-mood--excited { --mood-face-bg: #c6f5a5; --mood-face-border: #9dd779; --mood-ink: #326f20; --mood-bar: #6dbd3d; color: #326f20; background: #f1fbe7; border-color: #cfecb8; }
#coin-table-anchor .mkt-mood--na { width: 177px; min-height: 49px; display: flex; color: #64748b; justify-content: center; }
#coin-table-anchor .mkt-mood-info { font-size: 11px; font-weight: 600; text-transform: none; letter-spacing: normal; cursor: help; }
.dark-mode #coin-table-anchor .mkt-mood--fear { background: #43252e; border-color: #874455; color: #ffd3dc; }
.dark-mode #coin-table-anchor .mkt-mood--concern { background: #422f1f; border-color: #886239; color: #ffdfb0; }
.dark-mode #coin-table-anchor .mkt-mood--neutral { background: #2c3645; border-color: #4d6176; color: #d5e1ef; }
.dark-mode #coin-table-anchor .mkt-mood--positive { background: #193e32; border-color: #366f5b; color: #b2f3d3; }
.dark-mode #coin-table-anchor .mkt-mood--excited { background: #273f27; border-color: #547e47; color: #d9ffc4; }
.dark-mode #coin-table-anchor .mkt-mood--na { background: #303945; border-color: #4c5665; color: #dde5f1; }
@media (max-width: 767.98px) {
  #coin-table-anchor.mkt-table-wrap { width: calc(100vw - 20px); }
  #coin-table-anchor #coins-info-table { min-width: 1320px; }
  #coin-table-anchor .mkt-table-header { padding: 16px; }
}

/* TOKENE REAL-TIME QUOTE ENGINE V1 — provenance-first, no new columns. */
#coin-table-anchor #coins-info-table .mkt-quote-cell {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    white-space: nowrap;
    min-width: 154px;
}
#coin-table-anchor #coins-info-table .mkt-quote-value {
    font-weight: 760;
    font-size: 13px;
    line-height: 1.3;
    font-variant-numeric: tabular-nums;
}
#coin-table-anchor #coins-info-table .mkt-quote-source {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    gap: 3px;
    font-size: 9px;
    font-weight: 730;
    line-height: 1.4;
    letter-spacing: 0;
    border-radius: 5px;
    padding: 1px 4px;
    color: #64748b;
    background: #f1f5f9;
}
#coin-table-anchor #coins-info-table .mkt-quote-source--live { color: #126b4b; background: #dbf8e8; }
#coin-table-anchor #coins-info-table .mkt-quote-source--snapshot { color: #53657c; background: #edf2f8; }
#coin-table-anchor #coins-info-table .mkt-quote-source--stale { color: #a34725; background: #fff0e5; }
.dark-mode #coin-table-anchor #coins-info-table .mkt-quote-source--live { color: #96f1c8; background: #153c2e; }
.dark-mode #coin-table-anchor #coins-info-table .mkt-quote-source--snapshot { color: #cad4e2; background: #293646; }
.dark-mode #coin-table-anchor #coins-info-table .mkt-quote-source--stale { color: #ffc7a4; background: #4b3027; }
#coin-table-anchor #coins-info-table td:nth-child(3),
#coin-table-anchor #coins-info-table th:nth-child(3) { min-width: 171px; }
#coin-table-anchor .tokene-market-status { max-width: 100%; }
@media (max-width: 767.98px) {
    #coin-table-anchor .mkt-table-header { align-items: flex-start; }
    #coin-table-anchor .tokene-market-status { font-size: 9px; white-space: normal; }
}


/* Tokene Smart Alerts V2B: local watchlist quick-alert entry (no email until configured). */
#coin-table-anchor .mkt-rank-tools{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
#coin-table-anchor .mkt-quick-alert{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;padding:0;border:1px solid #bfd0e2;border-radius:7px;background:rgba(37,99,235,.06);color:#3269ad;cursor:pointer;line-height:1;font-size:12px}
#coin-table-anchor .mkt-quick-alert:hover,#coin-table-anchor .mkt-quick-alert:focus-visible{background:#2563eb;color:#fff;border-color:#2563eb;outline-offset:2px}
#coin-table-anchor .mkt-quick-alert[disabled]{opacity:.55;cursor:wait}
.dark-mode #coin-table-anchor .mkt-quick-alert{color:#9fc8ff;background:#263c5c;border-color:#42628a}
.dark-mode #coin-table-anchor .mkt-quick-alert:hover{color:#fff;background:#2563eb}


/* My Market: keep wide comparison table scrollable without document-wide overflow. */
@media (max-width: 767.98px) {
  .my-market-table-wrap { contain: paint; }
}


/* Tokene lower-page harmony V1: news / pulse / footer share editorial width. */
@media (min-width:1200px) {
  .tokene-market-pulse > .container,
  .tokene-footer > .container { width:calc(100% - 32px); max-width:1564px; }
}
.tokene-news-section { padding-bottom:42px; }
.tokene-market-pulse { padding:38px 0 48px; }
.tokene-pulse-head { margin-bottom:21px; }
.tokene-pulse-head h2 { font-size:27px; line-height:1.25; }
.tokene-pulse-head p { font-size:12.5px; color:#96a8c0; line-height:1.55; }
.tokene-market-pulse .tokene-section-kicker { color:#8eb2ed; }
.tokene-pulse-coins { gap:9px; padding-bottom:17px; }
.tokene-pulse-chip { padding:10px 13px; font-size:11.5px; background:#111e31; border-color:rgba(141,161,194,.20); border-radius:11px; }
.tokene-pulse-chip strong { font-size:10px; color:#9bb0d1; }
.tokene-pulse-dominance { gap:16px; font-size:11.5px; padding:2px 0 20px; }
.tokene-pulse-dominance strong { font-size:11.5px; color:#cfdbef; }
.tokene-pulse-panel { padding:19px 20px; border-radius:16px; border-color:rgba(148,163,184,.19); background:linear-gradient(155deg,#121f32 0%,#0e1829 100%); box-shadow:0 8px 30px rgba(1,7,20,.09); }
.tokene-pulse-panel__head { font-size:13.5px; padding-bottom:12px; margin-bottom:8px; border-bottom:1px solid rgba(148,163,184,.13); }
.tokene-pulse-panel__head a { font-size:10.5px; color:#9cbdf3!important; }
.tokene-pulse-row { grid-template-columns:30px minmax(0,1fr) auto auto; gap:12px; min-height:57px; padding:9px 3px; }
.tokene-pulse-row__asset strong { font-size:12.5px; }
.tokene-pulse-row__asset small { font-size:10px; color:#879bb7; }
.tokene-pulse-row__price { font-size:11px; }
.tokene-pulse-row__change { font-size:11px; min-width:56px; }
.tokene-footer { padding-top:45px; }
.tokene-footer-title { font-size:13px; margin:4px 0 17px; }
.tokene-footer-links { gap:12px; }
.tokene-footer-links a { font-size:12px; }
.tokene-footer-about { max-width:440px; font-size:12.5px; color:#9aabc3; }
@media (min-width:768px) and (max-width:1199.98px) {
  .tokene-pulse-grid > .col-lg-4 { flex:0 0 50%; max-width:50%; }
  .tokene-pulse-grid > .col-lg-4:last-child:nth-child(odd) { flex:0 0 100%; max-width:100%; }
}
@media (max-width:767.98px) {
  .tokene-news-section { padding-bottom:30px; }
  .tokene-market-pulse { padding:32px 0 36px; }
  .tokene-pulse-head h2 { font-size:24px; }
  .tokene-pulse-panel { padding:16px; }
  .tokene-pulse-row { grid-template-columns:28px minmax(0,1fr) auto; gap:10px; }
  .tokene-pulse-row__price { display:none; }
}


/* Tokene News Ticker V1 — reverse direction, local headlines only */
.tokene-news-tape {
  position: relative;
  z-index: 1019;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100%;
  height: 33px;
  overflow: hidden;
  background: #101f33;
  border-bottom: 1px solid rgba(127, 163, 194, .18);
  color: #d8e8f7;
  font-size: 11.5px;
}
.tokene-news-tape__badge {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 7px;
  height: 100%;
  padding: 0 13px;
  background: #193451;
  color: #a6d9ff;
  border-inline-end: 1px solid #2d506d;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .03em;
  white-space: nowrap;
  direction: ltr;
}
.tokene-news-tape__viewport {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  overflow: hidden;
}
.tokene-news-tape__track {
  display: flex;
  align-items: center;
  width: max-content;
  height: 100%;
  direction: ltr;
  animation: tk-news-tape-reverse 76s linear infinite;
  will-change: transform;
}
.tokene-news-tape__group {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  height: 100%;
}
.tokene-news-tape__item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 390px;
  height: 100%;
  padding: 0 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-decoration: none !important;
  color: #d3e4f4 !important;
  border-inline-end: 1px solid rgba(148, 163, 184, .12);
}
.tokene-news-tape__item:hover,
.tokene-news-tape__item:focus-visible {
  background: #234361;
  color: #fff !important;
  outline-offset: -2px;
}
.tokene-news-tape__dot {
  flex: 0 0 auto;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #55b8ef;
}
.tokene-news-tape:hover .tokene-news-tape__track,
.tokene-news-tape:focus-within .tokene-news-tape__track {
  animation-play-state: paused;
}
@keyframes tk-news-tape-reverse {
  from { transform: translateX(-50%); }
  to   { transform: translateX(0); }
}
@media (max-width: 575px) {
  .tokene-news-tape { height: 31px; }
  .tokene-news-tape__badge { padding: 0 9px; font-size: 9px; }
  .tokene-news-tape__item { max-width: 300px; padding: 0 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .tokene-news-tape__track {
    animation: none !important;
    transform: none !important;
    will-change: auto;
  }
  .tokene-news-tape__viewport { overflow-x: auto; }
}
