:root {
  --bg: #070708;
  --bg2: #0d0d10;
  --panel: #121216;
  --panel2: #17171c;
  --gold1: #b8912f;
  --gold2: #e6c45c;
  --white: #f2f2f2;
  --dim: #8a8a90;
  --red: #c8442e;
  --green: #3f9e5f;
  --border: rgba(184, 145, 47, 0.35);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  background:
    radial-gradient(1200px 600px at 50% -10%, rgba(184, 145, 47, 0.10), transparent 60%),
    linear-gradient(180deg, var(--bg2), var(--bg));
  color: var(--white);
  font-family: 'Inter', system-ui, sans-serif;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

.gold {
  background: linear-gradient(135deg, var(--gold1), var(--gold2));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* ---------- HERO ---------- */
.hero {
  position: relative;
  text-align: center;
  padding: 72px 20px 40px;
  border-bottom: 1px solid var(--border);
  max-width: 980px;
  margin: 0 auto;
}
.arrow-motif {
  position: absolute;
  top: 28px; right: 28px;
  font-size: 40px;
  color: var(--gold1);
  opacity: 0.5;
}
.hero h1 {
  font-family: 'Cinzel', serif;
  font-weight: 900;
  font-size: clamp(36px, 7vw, 72px);
  letter-spacing: clamp(4px, 1.2vw, 14px);
  background: linear-gradient(135deg, var(--gold1), var(--gold2));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  line-height: 1.05;
}
.hero .sub {
  margin-top: 10px;
  color: var(--dim);
  letter-spacing: 5px;
  font-size: clamp(12px, 2vw, 16px);
}
.hero .tag {
  margin: 22px auto 0;
  max-width: 680px;
  color: #c9c9d0;
  line-height: 1.6;
  font-size: 15px;
}
.hero .tag strong { color: var(--gold2); }
.hero .quote {
  margin-top: 22px;
  font-family: 'Cinzel', serif;
  font-style: italic;
  color: var(--gold2);
  opacity: 0.85;
}

/* ---------- THE HUNT (live scanner terminal) ---------- */
.hunt { margin-bottom: 64px; }
.hunt-head { text-align: center; margin-bottom: 22px; }
.hunt-head h2 {
  font-family: 'Cinzel', serif; letter-spacing: 8px; font-size: 24px;
  background: linear-gradient(135deg, var(--gold1), var(--gold2));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.hunt-sub { display: block; margin-top: 6px; color: var(--dim); font-size: 12px; letter-spacing: 2px; }

.hud {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 18px;
}
.hud-cell {
  background: linear-gradient(180deg, var(--panel2), var(--panel));
  border: 1px solid var(--border); border-radius: 10px;
  padding: 16px 10px; text-align: center;
}
.hud-num {
  display: block; font-family: 'Cinzel', serif; font-weight: 900;
  font-size: clamp(22px, 4vw, 34px); color: var(--white);
  font-variant-numeric: tabular-nums;
}
.hud-num.gold { background: linear-gradient(135deg, var(--gold1), var(--gold2)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hud-num.red { color: var(--red); }
.hud-lbl { display: block; margin-top: 6px; font-size: 10px; letter-spacing: 2px; color: var(--dim); }

.terminal {
  background: #050506; border: 1px solid var(--border); border-radius: 12px;
  overflow: hidden; box-shadow: 0 0 40px rgba(184,145,47,0.08), inset 0 0 60px rgba(0,0,0,0.6);
}
.term-bar {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 14px; background: #0e0e12; border-bottom: 1px solid rgba(255,255,255,0.06);
}
.dot { width: 11px; height: 11px; border-radius: 50%; display: inline-block; }
.dot.r { background: #e25c4a; } .dot.y { background: #e6c45c; } .dot.g { background: #3f9e5f; }
.term-title { margin-left: 10px; color: var(--dim); font-size: 12px; font-family: 'Inter', monospace; letter-spacing: 1px; }
.term-body {
  height: 360px; overflow: hidden; padding: 16px 18px;
  font-family: 'DejaVu Sans Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  font-size: 13.5px; line-height: 1.7; position: relative;
}
.term-body::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 90px;
  background: linear-gradient(180deg, transparent, #050506); pointer-events: none;
}
.tline { white-space: pre-wrap; word-break: break-all; opacity: 0; animation: lineIn .18s ease forwards; }
@keyframes lineIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.tline .addr { color: #9aa0b0; }
.tline.scan { color: var(--gold2); }
.tline.scan .coin { color: var(--gold1); font-weight: 700; }
.tline.reject { color: #7d7d86; }
.tline.reject .tag { color: var(--red); }
.tline.hawk { color: var(--green); font-weight: 700; }
.tline.hawk .tag { color: var(--gold2); }
.cursor { color: var(--gold2); animation: blink 1s steps(1) infinite; }
@keyframes blink { 50% { opacity: 0; } }

/* ---------- PODIUM ---------- */
main { max-width: 1180px; margin: 0 auto; padding: 40px 20px 80px; }
.podium {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 56px;
}
.podium .hawk { transform: translateY(18px); }
.podium .hawk.top1 { transform: translateY(0); }

.hawk {
  position: relative;
  background: linear-gradient(180deg, var(--panel2), var(--panel));
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 22px;
  overflow: hidden;
}
.hawk::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: 14px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(230,196,92,0.5), transparent 40%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.rank-badge {
  position: absolute; top: 14px; left: 14px;
  font-family: 'Cinzel', serif; font-weight: 900;
  font-size: 14px;
  color: #0b0b0d;
  background: linear-gradient(135deg, var(--gold1), var(--gold2));
  border-radius: 999px;
  padding: 4px 12px;
}
.sample-flag {
  position: absolute; top: 14px; right: 14px;
  font-size: 10px; letter-spacing: 1px;
  color: var(--dim);
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 3px 7px;
}
.hawk .symbol {
  margin-top: 30px;
  font-family: 'Cinzel', serif; font-weight: 700;
  font-size: 22px; color: var(--gold2);
}
.hawk .wallet {
  font-size: 12px; color: var(--dim);
  margin-top: 2px; word-break: break-all;
}
.hawk .wallet a { color: var(--dim); text-decoration: none; border-bottom: 1px dotted var(--border); }
.hawk .wallet a:hover { color: var(--gold2); }
.hawk .roi {
  font-family: 'Cinzel', serif; font-weight: 900;
  font-size: clamp(44px, 6vw, 68px);
  background: linear-gradient(135deg, var(--gold1), var(--gold2));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin: 14px 0 2px;
}
.hawk .inout { color: var(--white); font-size: 15px; margin-bottom: 16px; }
.stats { display: flex; justify-content: space-between; gap: 8px; margin-top: 8px; }
.stat { flex: 1; text-align: center; }
.stat .label { font-size: 10px; letter-spacing: 1px; color: var(--dim); display: block; }
.stat .val { font-weight: 800; font-size: 18px; margin-top: 4px; }
.stat .val.red { color: var(--red); }
.stat .val.green { color: var(--green); }
.score {
  margin-top: 16px; text-align: center;
  font-size: 12px; color: var(--dim);
}
.score b { color: var(--gold2); font-size: 15px; }
.hawk .cardimg {
  width: 100%; border-radius: 10px; margin-top: 16px;
  border: 1px solid var(--border); display: block;
}

/* ---------- BOARD ---------- */
.board-wrap h2 {
  font-family: 'Cinzel', serif; letter-spacing: 6px;
  color: var(--gold2); text-align: center; margin-bottom: 6px;
  font-size: 22px;
}
.board-note { text-align: center; color: var(--dim); font-size: 13px; margin-bottom: 24px; }
.board { display: flex; flex-direction: column; gap: 10px; }
.row {
  display: grid;
  grid-template-columns: 44px 1.4fr 0.8fr 1fr 0.9fr 0.8fr;
  align-items: center;
  gap: 12px;
  background: var(--panel);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 10px;
  padding: 14px 16px;
}
.row:hover { border-color: var(--border); }
.row .r-rank { font-family: 'Cinzel', serif; font-weight: 900; color: var(--gold2); }
.row .r-coin b { color: var(--gold2); }
.row .r-coin span { display: block; font-size: 11px; color: var(--dim); word-break: break-all; }
.row .r-coin a { color: var(--dim); text-decoration: none; }
.row .r-coin a:hover { color: var(--gold2); }
.row .r-roi { font-weight: 800; color: var(--gold2); font-size: 18px; }
.row .r-dd { color: var(--red); font-weight: 700; }
.row .r-exit { color: var(--green); font-weight: 600; font-size: 13px; }
.row .r-score { text-align: right; font-weight: 800; color: var(--white); }
.row .colhead, .board .head { color: var(--dim); }
.board .head {
  font-size: 11px; letter-spacing: 1px;
  background: transparent; border: none; padding: 0 16px;
}

footer {
  text-align: center; padding: 40px 20px 60px;
  border-top: 1px solid var(--border);
  color: var(--dim);
}
footer p { margin: 6px 0; }
footer .meta { font-size: 12px; }
footer .disclaimer { font-size: 11px; opacity: 0.6; max-width: 600px; margin: 14px auto 0; }

.empty { text-align: center; color: var(--dim); padding: 40px; }

/* proof-of-life freshness banner */
.freshness { display: flex; align-items: center; justify-content: center; gap: 9px;
  margin: 14px auto 0; font-family: 'DejaVu Sans Mono', ui-monospace, monospace;
  font-size: 12px; color: var(--dim); letter-spacing: .3px; text-align: center; flex-wrap: wrap; }
.freshness b { color: var(--white); } .freshness b.g { color: var(--green); }
.freshness .pulse { width: 9px; height: 9px; border-radius: 50%; background: var(--green);
  box-shadow: 0 0 0 0 rgba(63,158,95,.7); animation: pulse 2s infinite; flex-shrink: 0; }
.freshness.stale .pulse { background: var(--red); box-shadow: 0 0 0 0 rgba(200,68,46,.7); }
@keyframes pulse { 0%{box-shadow:0 0 0 0 rgba(63,158,95,.6)} 70%{box-shadow:0 0 0 7px rgba(63,158,95,0)} 100%{box-shadow:0 0 0 0 rgba(63,158,95,0)} }

/* ---------- LAUNCHPAD page ---------- */
.hero .back { margin-bottom: 18px; }
.hero .back a, .nav-link a { color: var(--gold2); text-decoration: none; border-bottom: 1px dotted var(--border); font-size: 13px; letter-spacing: 1px; }
.hero .back a:hover { color: var(--gold1); }
.lp { max-width: 920px; margin: 0 auto; padding: 30px 20px 80px; }
.lp-block { margin-bottom: 46px; }
.lp-block h2 {
  font-family: 'Cinzel', serif; font-size: 20px; color: var(--gold2);
  margin-bottom: 14px; letter-spacing: 1px;
}
.lp-block p { color: #c9c9d0; line-height: 1.7; margin-bottom: 12px; }
.lp-block p b { color: var(--white); }
.lp-block p.muted, .muted { color: var(--dim); font-size: 13px; }
.consts {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 18px 0;
}
.consts div {
  background: var(--panel); border: 1px solid var(--border); border-radius: 8px; padding: 12px;
  text-align: center;
}
.consts .ck { display: block; font-size: 11px; color: var(--dim); letter-spacing: 1px; }
.consts .cv { display: block; margin-top: 6px; font-weight: 800; color: var(--gold2); font-size: 16px; }
.formula {
  background: #050506; border: 1px solid var(--border); border-radius: 10px;
  padding: 16px; color: var(--gold2); font-family: 'DejaVu Sans Mono', ui-monospace, monospace;
  font-size: 13px; line-height: 1.9; overflow-x: auto; white-space: pre;
}
.sim {
  background: linear-gradient(180deg, var(--panel2), var(--panel));
  border: 1px solid var(--border); border-radius: 12px; padding: 20px;
}
.sim-controls { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 18px; }
.sim-controls label { display: flex; flex-direction: column; gap: 8px; font-size: 12px; color: var(--dim); letter-spacing: 1px; }
.sim-controls input[type=number] {
  background: #0b0b0d; border: 1px solid var(--border); color: var(--white);
  border-radius: 8px; padding: 10px; font-size: 15px; font-family: inherit;
}
.sim-controls input[type=range] { accent-color: var(--gold1); }
.sim-controls .rv { color: var(--gold2); font-weight: 700; }
.sim-out { font-family: 'DejaVu Sans Mono', ui-monospace, monospace; font-size: 14px; }
.sim-row { display: flex; justify-content: space-between; padding: 7px 0; gap: 12px; }
.sim-row span { color: var(--dim); }
.sim-row b { color: var(--white); }
.sim-row b.gold { color: var(--gold2); } .sim-row b.red { color: var(--red); } .sim-row b.green { color: var(--green); }
.sim-out hr { border: none; border-top: 1px solid var(--border); margin: 8px 0; }
.tablewrap { overflow-x: auto; }
#ladder { width: 100%; border-collapse: collapse; font-size: 13px; }
#ladder th, #ladder td { padding: 11px 10px; text-align: left; border-bottom: 1px solid rgba(255,255,255,0.06); }
#ladder th { color: var(--dim); font-size: 11px; letter-spacing: 1px; }
#ladder td { color: #d5d5db; }
#ladder td.green { color: var(--green); font-weight: 700; }
.lp .disclaimer { font-size: 11px; opacity: 0.6; margin-top: 16px; }

@media (max-width: 760px) {
  .consts, .sim-controls { grid-template-columns: 1fr; }
}

/* ---------- WALLET PROFILER ---------- */
.wp { max-width: 720px; margin: 0 auto; padding: 30px 20px 80px; }
.wp-search { display: flex; gap: 10px; }
.wp-search input {
  flex: 1; background: #0b0b0d; border: 1px solid var(--border); color: var(--white);
  border-radius: 10px; padding: 14px 16px; font-size: 15px; font-family: 'DejaVu Sans Mono', ui-monospace, monospace;
}
.wp-search input:focus { outline: none; border-color: var(--gold1); }
.wp-search button {
  background: linear-gradient(135deg, var(--gold1), var(--gold2)); color: #0b0b0d;
  border: none; border-radius: 10px; padding: 0 26px; font-weight: 800; font-size: 14px;
  letter-spacing: 1px; cursor: pointer;
}
.wp-search button:disabled { opacity: 0.5; cursor: wait; }
.wp-hint { color: var(--dim); font-size: 13px; margin-top: 10px; }
.wp-hint.err { color: var(--red); }
.wp-result { margin-top: 28px; }
.wp-loading { text-align: center; color: var(--gold2); padding: 36px; font-size: 16px; }
.wp-loading.err { color: var(--red); }
.dots::after { content: '…'; animation: blink 1.2s steps(4) infinite; }
@keyframes blink { 0%,100%{opacity:.2} 50%{opacity:1} }

.verdict-card {
  text-align: center; padding: 32px 22px; border-radius: 16px;
  background: linear-gradient(180deg, var(--panel2), var(--panel));
  border: 1px solid var(--border); position: relative; overflow: hidden;
}
.vc-emoji { font-size: 60px; line-height: 1; }
.vc-label {
  font-family: 'Cinzel', serif; font-weight: 900; font-size: clamp(34px, 8vw, 60px);
  letter-spacing: 3px; margin: 10px 0 6px;
}
.vc-addr { font-family: 'DejaVu Sans Mono', ui-monospace, monospace; color: var(--dim); font-size: 13px; }
.vc-verdict { color: #d5d5db; line-height: 1.6; max-width: 540px; margin: 16px auto 0; font-size: 15px; }

/* tone tints */
.tone-gold .vc-label { background: linear-gradient(135deg, var(--gold1), var(--gold2)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.tone-gold .verdict-card { border-color: var(--gold1); }
.tone-green .vc-label { color: var(--green); } .tone-green .verdict-card { border-color: rgba(63,158,95,.6); }
.tone-red .vc-label { color: var(--red); } .tone-red .verdict-card { border-color: rgba(200,68,46,.6); }
.tone-orange .vc-label { color: #e08a2e; } .tone-orange .verdict-card { border-color: rgba(224,138,46,.6); }
.tone-dim .vc-label { color: #b9b9c2; }

.wp-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 18px; }
.wp-stat { display: flex; justify-content: space-between; background: var(--panel); border: 1px solid rgba(255,255,255,.05); border-radius: 9px; padding: 12px 14px; }
.wp-sl { color: var(--dim); font-size: 13px; }
.wp-sv { font-weight: 800; }
.wp-sv.green { color: var(--green); } .wp-sv.red { color: var(--red); }
.wp-foot { text-align: center; color: var(--dim); font-size: 12px; margin-top: 16px; }
.wp-foot a, .wp-share a { color: var(--gold2); text-decoration: none; }
.wp-share { text-align: center; color: var(--gold2); font-size: 12px; margin-top: 6px; opacity: .8; letter-spacing: .5px; }
.wp .disclaimer { font-size: 11px; opacity: .55; text-align: center; margin-top: 26px; }

@media (max-width: 560px) { .wp-stats { grid-template-columns: 1fr; } }

@media (max-width: 820px) {
  .podium { grid-template-columns: 1fr; }
  .podium .hawk, .podium .hawk.top1 { transform: none; }
  .row { grid-template-columns: 34px 1.3fr 0.8fr 0.9fr; }
  .row .r-exit, .board .head .h-exit { display: none; }
  .row .r-dd, .board .head .h-dd { display: none; }
}
