/* Página-modelo estilo CoinGecko — base pra deixar com a nossa cara. Tema claro + escuro. */
:root{
  --bg:#ffffff; --txt:#0d1421; --muted:#7d8493; --border:#eff2f5;
  --up:#16c784; --down:#ea3943; --hover:#f8fafd; --star-on:#f6b100;
  --brand:#c99a00; --topbg:#ffffff; --btn-bg:#0d1421; --btn-txt:#fff;
  --search-bg:#f8fafd;
}
/* Tema escuro — nossa cara (dourado/preto premium, estilo TRDR/CoinGecko dark) */
:root[data-theme="dark"]{
  --bg:#0b0e13; --txt:#e6e9ef; --muted:#8b93a7; --border:#1b212c;
  --up:#2ecc71; --down:#ff5b66; --hover:#141a22; --star-on:#ffd84d;
  --brand:#ffd84d; --topbg:#0d1117; --btn-bg:#ffd84d; --btn-txt:#0b0e13;
  --search-bg:#141a22;
}
*{ box-sizing:border-box; }
body{ margin:0; background:var(--bg); color:var(--txt); padding-bottom:3.4rem;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }

/* Barra fixa de preços no rodapé (sempre à vista, clica → abre planos) */
.price-bar{ position:fixed; left:0; right:0; bottom:0; z-index:40; display:flex; align-items:center; gap:.6rem;
  padding:.5rem 1rem; background:var(--topbg); border-top:1px solid var(--border);
  box-shadow:0 -4px 20px rgba(0,0,0,.15); overflow-x:auto; }
.pb-label{ font-weight:700; font-size:.85rem; white-space:nowrap; }
.pb-label b{ color:var(--brand); font-weight:800; }
.pb-mut{ color:var(--muted); font-weight:600; font-size:.76rem; }
.pb-off{ font-size:.8rem; font-weight:800; color:var(--brand); white-space:nowrap;
  border:1px solid var(--brand); border-radius:999px; padding:.28rem .7rem; background:rgba(184,144,31,.10); }
:root[data-theme="dark"] .pb-off{ background:rgba(255,216,77,.12); }
.pb-guarantee{ font-size:.8rem; font-weight:700; color:var(--up); white-space:nowrap;
  border:1px solid var(--up); border-radius:999px; padding:.28rem .7rem; }
.pb-cta{ margin-left:auto; background:var(--btn-bg); color:var(--btn-txt); border:0; border-radius:999px;
  padding:.42rem .9rem; font-weight:800; font-size:.82rem; cursor:pointer; white-space:nowrap; }
.pb-cta:hover{ filter:brightness(1.05); }

.mkt-top{ display:flex; align-items:center; gap:1rem; padding:.8rem 1.5rem;
  border-bottom:1px solid var(--border); position:sticky; top:0; background:var(--topbg); z-index:5; }
.logo{ font-weight:800; font-size:1.15rem; white-space:nowrap; } .logo span{ color:var(--brand); }
.mkt-search{ border:1px solid var(--border); border-radius:8px; padding:.5rem .8rem;
  font-size:.9rem; width:280px; background:var(--search-bg); color:var(--txt); outline:none; }
.mkt-search:focus{ border-color:var(--brand); }
.spacer{ flex:1; }
.mkt-theme{ background:transparent; border:1px solid var(--border); border-radius:8px;
  padding:.4rem .6rem; font-size:1rem; cursor:pointer; line-height:1; }
.mkt-theme:hover{ border-color:var(--brand); }
.mkt-link{ color:var(--muted); text-decoration:none; font-size:.9rem; white-space:nowrap; }
.mkt-link:hover{ color:var(--txt); }
.mkt-btn{ background:var(--btn-bg); color:var(--btn-txt); text-decoration:none; padding:.5rem .9rem;
  border-radius:8px; font-size:.9rem; font-weight:600; white-space:nowrap; }

.mkt-wrap{ max-width:1280px; margin:0 auto; padding:1.5rem; }

/* Faixa de oferta de lançamento (fundador / lançamento) */
.launch-banner{ display:flex; align-items:center; justify-content:center; gap:.7rem; flex-wrap:wrap;
  padding:.65rem 1.2rem; background:linear-gradient(90deg,#1a0f0a,#3a1c10,#1a0f0a); color:#ffe9c7;
  border-bottom:1px solid rgba(255,216,77,.4); position:relative; font-size:.9rem; }
.lb-flame{ font-size:1.1rem; }
.lb-text b{ color:#ffd84d; }
.lb-countdown{ font-weight:800; color:#ffd84d; font-variant-numeric:tabular-nums; letter-spacing:.02em;
  background:rgba(0,0,0,.30); border:1px solid rgba(255,216,77,.45); border-radius:8px;
  padding:.18rem .55rem; white-space:nowrap; }
.lb-cta{ background:#ffd84d; color:#2a1500; border:0; border-radius:999px; padding:.35rem 1rem;
  font-weight:800; font-size:.85rem; cursor:pointer; white-space:nowrap; animation:lb-pulse 1.8s ease-in-out infinite; }
.lb-cta:hover{ background:#ffe27a; }
@keyframes lb-pulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(255,216,77,0); } 50%{ box-shadow:0 0 0 6px rgba(255,216,77,.18); } }
.lb-close{ position:absolute; right:.8rem; top:50%; transform:translateY(-50%); background:transparent; border:0;
  color:#ffe9c7; opacity:.7; font-size:.9rem; cursor:pointer; }
.lb-close:hover{ opacity:1; }
@media (max-width:640px){ .lb-close{ position:static; transform:none; } }
@media (prefers-reduced-motion: reduce){ .lb-cta{ animation:none; } }

.mkt-toolbar{ margin:.1rem 0 1.1rem; }
.mkt-toolbar .mkt-search{ width:100%; max-width:440px; }

/* Faixa de sentimentos (estilo CoinMarketCap, nossa versão com 5 sentimentos) */
.ss-head{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; margin:.1rem 0 .7rem; flex-wrap:wrap; }
.ss-h{ font-size:1.05rem; margin:0; display:flex; align-items:center; gap:.4rem; }
.ss-live-dot{ width:8px; height:8px; border-radius:50%; background:var(--down); display:inline-block; animation:ss-pulse 1.4s infinite; }
@keyframes ss-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.25; } }
.ss-live{ font-size:.68rem; color:var(--down); font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.ss-hint{ font-size:.8rem; color:var(--brand); font-weight:700; }
.sentiment-strip{ display:grid; grid-template-columns:repeat(5,1fr); gap:.7rem; margin:0 0 1.4rem; }
.ss-card{ text-align:left; background:var(--bg); border:1px solid var(--border); border-radius:12px;
  padding:.7rem .85rem .8rem; cursor:pointer; font:inherit; color:var(--txt); position:relative; overflow:hidden;
  transition:transform .12s, border-color .12s, box-shadow .12s; }
.ss-card:hover{ transform:translateY(-2px); border-color:var(--brand); box-shadow:0 6px 18px rgba(0,0,0,.10); }
.ss-top{ display:flex; align-items:center; gap:.35rem; color:var(--muted); font-size:.76rem; font-weight:700; margin-bottom:.45rem; }
.ss-icon{ font-size:.95rem; }
.ss-val{ min-height:1.7rem; display:flex; align-items:center; gap:.3rem; }
.ss-big{ font-size:1.35rem; font-weight:800; line-height:1; }
.ss-val .up, .ss-sub .up, .ss-big.up{ color:var(--up); } .ss-val .down, .ss-sub .down, .ss-big.down{ color:var(--down); }
.ss-sub{ font-size:.74rem; color:var(--muted); margin-top:.35rem; }
.ss-na{ color:var(--muted); font-size:.85rem; }
.ss-lock{ position:absolute; top:.5rem; right:.6rem; font-size:.6rem; color:var(--brand); font-weight:800; opacity:0; transition:opacity .12s; }
.ss-card:hover .ss-lock{ opacity:1; }
.ss-lsbar{ display:flex; width:100%; height:14px; border-radius:7px; overflow:hidden; }
.ss-lsbar .ls-long{ background:var(--up); } .ss-lsbar .ls-short{ background:var(--down); }
.ss-card.band-extreme-fear .ss-big{ color:#c0392b; }
.ss-card.band-fear .ss-big{ color:#e67e22; }
.ss-card.band-neutral .ss-big{ color:var(--muted); }
.ss-card.band-greed .ss-big{ color:#27ae60; }
.ss-card.band-extreme-greed .ss-big{ color:#16c784; }
@media (max-width:900px){ .sentiment-strip{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .sentiment-strip{ grid-template-columns:1fr; } }
.mkt-head h1{ font-size:1.5rem; margin:0 0 .35rem; }
.mkt-head p{ color:var(--muted); font-size:.92rem; margin:0 0 1.2rem; }
.mkt-head b{ color:var(--txt); }

.mkt-tabs{ display:flex; gap:.4rem; margin:0 0 .8rem; flex-wrap:wrap; }
.mkt-tab{ background:transparent; border:1px solid var(--border); border-radius:999px; padding:.4rem .9rem;
  font-size:.85rem; color:var(--txt); cursor:pointer; font-weight:600; white-space:nowrap; }
.mkt-tab:hover{ border-color:var(--brand); }
.mkt-tab.active{ border-color:var(--brand); color:var(--brand); background:rgba(184,144,31,.12); font-weight:800; }
:root[data-theme="dark"] .mkt-tab.active{ background:rgba(255,216,77,.14); }
.mkt-tablewrap{ overflow-x:auto; border:1px solid var(--border); border-radius:12px; }
.mkt-table{ width:100%; border-collapse:collapse; font-size:.88rem; }
.mkt-table th, .mkt-table td{ padding:.85rem .8rem; text-align:right; white-space:nowrap; }
.mkt-table th.l, .mkt-table td.l{ text-align:left; }
.mkt-table th.c, .mkt-table td.c{ text-align:center; }
.mkt-table thead th{ color:var(--muted); font-weight:600; font-size:.78rem;
  border-bottom:1px solid var(--border); }
.mkt-table tbody td{ border-bottom:1px solid var(--border); }
.mkt-table tbody tr{ cursor:pointer; transition:background .12s; }
.mkt-table tbody tr:hover{ background:var(--hover); }
.mkt-table tbody tr:last-child td{ border-bottom:0; }

td.star{ color:#c2c8d0; cursor:pointer; font-size:1rem; }
td.star.on{ color:var(--star-on); }
td.rank{ color:var(--muted); }
td.coin img{ vertical-align:middle; border-radius:50%; margin-right:.55rem; }
.cname{ font-weight:600; }
.csym{ color:var(--muted); text-transform:uppercase; font-size:.8rem; margin-left:.3rem; }
td.price{ font-weight:600; }
.num.up{ color:var(--up); } .num.down{ color:var(--down); }
td.spark svg{ vertical-align:middle; }

.loading, .err{ text-align:center; color:var(--muted); padding:2.5rem; }
.mkt-foot{ color:var(--muted); font-size:.78rem; margin:1rem .2rem 0; }

@media (max-width:820px){
  .mkt-search{ width:160px; }
  .mkt-head h1{ font-size:1.2rem; }
}
