/* Blueprint: full-bleed dusk landing. Black, white pills, Inter for UI, Geist Pixel (dot-matrix) for display.
   All fonts self-hosted (strict CSP: no CDNs, no inline styles). */
@font-face { font-family: "Inter"; src: url("/static/fonts/Inter-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Geist Pixel Circle"; src: url("/static/fonts/GeistPixel-Circle.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/static/fonts/GeistMono-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }

:root {
  --bg: #000000;
  --text: #ffffff;
  --fg: #ffffff;
  --muted: #8e8e8e;        /* 6.4:1 on black */
  --soft: #d0d0d0;
  --nav-text: #2e2e2e;
  --pill-dark: #31281e;
  --sign-in-text: #c8c8c8;
  --nav-shadow: 0 4px 14px rgba(0, 0, 0, .16);
  --trust-bg: #31281e;
  --trust-border: rgba(255, 255, 255, .4);
  --trust-text: #c4c2c3;
  --line: rgba(255, 255, 255, .09);
  --line-2: rgba(255, 255, 255, .16);
  --surface: #0d0d0e;
  --surface-2: #161617;
  --accent: #f5cc99;       /* ice blue, used sparingly */
  --warn: #ffb547;
  --radius: 22px;
  --font-sans: "Inter", "Segoe UI", system-ui, sans-serif;
  --font-display: "Geist Pixel Circle", monospace;
  --mono: "Geist Mono", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;
  --ease: cubic-bezier(.22, 1, .36, 1);
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { background: var(--bg); color: var(--text); -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-sans); font-size: 16px; line-height: 1.55;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden; }
body.home { min-height: 100vh; }
body:not(.home)::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 720px; z-index: -1; pointer-events: none;
  background: radial-gradient(70% 60% at 50% -10%, rgba(239, 175, 96, .28), rgba(243, 193, 132, .08) 45%, transparent 75%); }
body.menu-open { overflow: hidden; }
::selection { background: #fff; color: #000; }
a { color: var(--text); text-decoration-color: rgba(255, 255, 255, .3); text-underline-offset: 3px; }
:focus-visible { outline: 2px solid #fff; outline-offset: 3px; border-radius: 10px; }
.skip { position: absolute; left: -999px; top: 0; background: #fff; color: #000; padding: 8px 12px; z-index: 60; border-radius: 8px; }
.skip:focus { left: 12px; top: 12px; }
.wrap { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 16px; position: relative; }
@media (min-width: 720px) { .wrap { padding: 0 32px; } }
.ico { width: 18px; height: 18px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; vertical-align: -3px; }
.hidden { display: none !important; }

/* ---------------- header ---------------- */
.nav { position: relative; z-index: 20; padding: clamp(16px, 2.4vh, 28px) clamp(14px, 3vw, 32px) 0; }
body.home .nav { position: absolute; left: 0; right: 0; top: 0; }
.nav-row { display: flex; align-items: center; justify-content: center; gap: clamp(18px, 2.8vw, 28px); max-width: 720px; margin: 0 auto;
  animation: slideDown .7s var(--ease) both; }
@keyframes slideDown { from { opacity: 0; transform: translateY(-18px); } to { opacity: 1; transform: none; } }
.logo { width: clamp(40px, 4.4vw, 46px); height: clamp(40px, 4.4vw, 46px); border-radius: 50%; background: #fff; box-shadow: var(--nav-shadow);
  display: grid; place-items: center; flex: none; transition: transform .25s var(--ease); text-decoration: none; }
.logo:hover { transform: scale(1.04); }
/* the mark: a viewfinder (four corner brackets) around a dot, black on the white circle */
.logo-mark { width: 52%; height: 52%; position: relative; display: block;
  --c: #111;
  background:
    linear-gradient(var(--c), var(--c)) 0 0 / 34% 2px no-repeat, linear-gradient(var(--c), var(--c)) 0 0 / 2px 34% no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 0 / 34% 2px no-repeat, linear-gradient(var(--c), var(--c)) 100% 0 / 2px 34% no-repeat,
    linear-gradient(var(--c), var(--c)) 0 100% / 34% 2px no-repeat, linear-gradient(var(--c), var(--c)) 0 100% / 2px 34% no-repeat,
    linear-gradient(var(--c), var(--c)) 100% 100% / 34% 2px no-repeat, linear-gradient(var(--c), var(--c)) 100% 100% / 2px 34% no-repeat; }
.logo-mark::after { content: ""; position: absolute; left: 50%; top: 50%; width: 26%; height: 26%; transform: translate(-50%, -50%); border-radius: 50%; background: var(--c); }
.pillnav { flex: 1; max-width: 430px; height: clamp(44px, 5.2vw, 48px); background: #fff; border-radius: 999px; box-shadow: var(--nav-shadow);
  display: flex; align-items: center; justify-content: space-around; padding: 4px 8px; }
.pillnav a { position: relative; color: var(--nav-text); text-decoration: none; font: 500 clamp(13px, 1.4vw, 15px)/1 var(--font-sans); letter-spacing: -.01em;
  opacity: .5; padding: 10px 8px; transition: opacity .2s; white-space: nowrap; }
.pillnav a:hover { opacity: .75; }
.pillnav a[aria-current="page"] { opacity: 1; }
.pillnav a[aria-current="page"]::after, .menu-sheet a[aria-current="page"]::after { content: ""; position: absolute; left: 50%; bottom: 5px; width: 3px; height: 3px;
  margin-left: -1.5px; background: #000; border-radius: 50%; box-shadow: -5px 0 0 #000, 5px 0 0 #000; }
.signin { height: clamp(44px, 5.2vw, 48px); display: inline-flex; align-items: center; padding: 0 22px; border-radius: 999px; background: var(--pill-dark);
  color: var(--sign-in-text); text-decoration: none; font: 500 clamp(13px, 1.4vw, 15px)/1 var(--font-sans); letter-spacing: -.01em; box-shadow: var(--nav-shadow);
  white-space: nowrap; transition: background .2s, color .2s, transform .2s; }
.signin:hover { background: #473929; color: #fff; transform: translateY(-1px); }
.burger { display: none; width: 48px; height: 48px; border-radius: 50%; border: 0; background: var(--pill-dark); cursor: pointer; position: relative; box-shadow: var(--nav-shadow); }
.burger span { position: absolute; left: 15px; width: 18px; height: 1.5px; background: #fff; transition: transform .3s var(--ease), opacity .2s, background .2s; }
.burger span:nth-child(1) { top: 17px; } .burger span:nth-child(2) { top: 23.25px; } .burger span:nth-child(3) { top: 29.5px; }
.burger[aria-expanded="true"] { background: #fff; }
.burger[aria-expanded="true"] span { background: #000; }
.burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.25px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.25px) rotate(-45deg); }
.menu-overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, .62); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); z-index: 30; animation: overlayIn .28s ease both; }
@keyframes overlayIn { from { opacity: 0; } to { opacity: 1; } }
.menu-sheet { position: fixed; left: 16px; right: 16px; top: 84px; z-index: 31; background: #fff; border-radius: 28px; padding: 22px 18px 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .45); display: grid; gap: 4px; animation: menuIn .38s var(--ease) both; }
@keyframes menuIn { from { opacity: 0; transform: translateY(-10px) scale(.98); } to { opacity: 1; transform: none; } }
.menu-sheet a { position: relative; color: var(--nav-text); text-decoration: none; font: 500 18px var(--font-sans); letter-spacing: -.01em; padding: 12px 10px 18px;
  text-align: center; opacity: .55; animation: linkIn .4s var(--ease) both; }
.menu-sheet a[aria-current="page"] { opacity: 1; }
.menu-sheet a[aria-current="page"]::after { bottom: 8px; }
.menu-sheet a:nth-child(2) { animation-delay: .04s; } .menu-sheet a:nth-child(3) { animation-delay: .08s; } .menu-sheet a:nth-child(4) { animation-delay: .12s; } .menu-sheet a:nth-child(5) { animation-delay: .16s; }
@keyframes linkIn { from { opacity: 0; transform: translateY(8px); } }
.menu-sheet .menu-cta { margin-top: 8px; background: var(--pill-dark); color: #fff; border-radius: 999px; opacity: 1; padding: 15px 10px; }
@media (max-width: 720px) {
  .nav-row { justify-content: space-between; }
  .pillnav, .signin { display: none; }
  .burger { display: block; }
  .logo { width: 48px; height: 48px; }
}

/* ---------------- home: one viewport over the dusk scene ---------------- */
.stage { position: relative; height: 100vh; height: 100dvh; display: flex; flex-direction: column; align-items: center;
  padding: calc(clamp(16px, 2.4vh, 28px) + 64px) clamp(14px, 3vw, 32px) clamp(16px, 2.4vh, 28px); overflow: hidden; }
.bg { position: absolute; inset: 0; background: #000; overflow: hidden; z-index: 0; pointer-events: none; }
.bg-scene { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.bg-grain { position: absolute; inset: -50%; opacity: .16; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1.1 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  animation: grain 1s steps(5) infinite; }
@keyframes grain { 0% { transform: translate(0, 0); } 25% { transform: translate(-2%, 1%); } 50% { transform: translate(1%, -2%); } 75% { transform: translate(-1%, -1%); } 100% { transform: translate(0, 0); } }
.bg-fade { position: absolute; inset: 0; background: linear-gradient(rgba(0, 0, 0, .18), transparent 30%, transparent 55%, rgba(0, 0, 0, .55) 85%, rgba(0, 0, 0, .8)); }
.hero { position: relative; z-index: 1; flex: 1; width: 100%; max-width: 900px; display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; min-height: 0; }

/* trust row */
.trust { --trust-size: clamp(36px, 4.5vw, 42px); display: inline-flex; align-items: center; margin-bottom: clamp(16px, 2.5vh, 26px); text-decoration: none; }
.ring { width: var(--trust-size); height: var(--trust-size); border-radius: 50%; background: var(--trust-bg); border: 1px solid var(--trust-border); padding: 5px;
  position: relative; flex: none; transition: transform .35s var(--ease); }
.ring .in { width: 100%; height: 100%; border-radius: 50%; background: #fff; display: grid; place-items: center; color: #111; }
.ring .ico { width: calc(var(--trust-size) * .36); height: calc(var(--trust-size) * .36); stroke-width: 2.2; }
.ring.r1 { z-index: 1; } .ring.r2 { z-index: 2; margin-left: calc(var(--trust-size) * -.42); } .ring.r3 { z-index: 4; margin-left: calc(var(--trust-size) * -.42); }
.trust:hover .r1 { transform: translateY(-2px); } .trust:hover .r2 { transform: translateY(-4px); } .trust:hover .r3 { transform: translateY(-2px); }
.trust-pill { height: var(--trust-size); display: inline-flex; align-items: center; background: var(--trust-bg); border: 1px solid var(--trust-border); border-radius: 999px;
  margin-left: calc(var(--trust-size) * -.42); padding: 0 16px 0 calc(var(--trust-size) * .58); z-index: 3; position: relative;
  color: var(--trust-text); font: 500 clamp(12px, 1.4vw, 13.5px)/1 var(--font-sans); white-space: nowrap; }

/* headline: dot-matrix, solid white */
.headline { margin: 0; font: 400 clamp(28px, 6.2vw, 80px)/1.12 var(--font-display); letter-spacing: -.04em; color: #fff; }
.headline .line { display: block; white-space: nowrap; overflow: hidden; opacity: 0; transform: translateY(14px); animation: headlineFade .85s var(--ease) forwards; }
.headline .l1 { animation-delay: .12s; } .headline .l2 { animation-delay: .3s; }
@keyframes headlineFade { to { opacity: 1; transform: none; } }
.sub { max-width: min(500px, 92%); margin: clamp(14px, 2.2vh, 22px) auto 0; font: 400 clamp(calc(13.5px + 2pt), calc(1.55vw + 2pt), calc(16.5px + 2pt))/1.55 var(--font-sans);
  color: var(--soft); opacity: .8; }

/* CTA: the scan box as a glowing white pill */
.cta { margin-top: clamp(20px, 3.2vh, 32px); width: min(560px, 100%); }
.cta form { display: flex; align-items: center; gap: 6px; padding: 5px 5px 5px 20px; border-radius: 999px; background: rgba(30, 21, 10, .55);
  border: 1px solid rgba(255, 255, 255, .22); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); }
.cta form:focus-within { border-color: rgba(255, 255, 255, .6); }
.cta input { flex: 1; min-width: 0; background: transparent; border: 0; outline: none; color: #fff; font: 400 clamp(14px, 1.5vw, 15px) var(--font-sans); padding: 10px 0; }
.cta input::placeholder { color: rgba(255, 255, 255, .5); }
.cta select { background: transparent; color: #fff; border: 1px solid rgba(255, 255, 255, .25); border-radius: 999px; padding: 8px 10px; font: 500 13px var(--font-sans); }
.cta select option { background: #111; }
.go { flex: none; border: 0; cursor: pointer; background: #fff; color: #000; font: 600 clamp(13.5px, 1.5vw, 14.5px) var(--font-sans); letter-spacing: -.01em;
  padding: clamp(11px, 1.6vh, 13px) clamp(22px, 3vw, 28px); border-radius: 999px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .15), 0 0 22px rgba(246, 211, 169, .45), 0 0 44px rgba(240, 179, 105, .25); transition: transform .25s var(--ease), box-shadow .25s; }
.go:hover { transform: translateY(-2px) scale(1.02); box-shadow: 0 0 0 1px rgba(255, 255, 255, .25), 0 0 28px rgba(246, 211, 169, .65), 0 0 60px rgba(240, 179, 105, .35); }
.go[disabled] { opacity: .6; cursor: wait; transform: none; }
.tries { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 14px; }
.chip { background: rgba(20, 20, 22, .5); border: 1px solid rgba(255, 255, 255, .16); color: rgba(255, 255, 255, .72); border-radius: 999px; padding: 6px 12px;
  font: 500 12.5px var(--font-sans); cursor: pointer; backdrop-filter: blur(8px); transition: color .2s, border-color .2s; }
.chip:hover { color: #fff; border-color: rgba(255, 255, 255, .5); }
.quota { color: rgba(255, 255, 255, .55); font: 500 12.5px var(--font-sans); padding: 6px 4px; }
.form-error { color: var(--warn); font-size: 14.5px; margin: 10px 0 0; text-shadow: 0 1px 8px rgba(0, 0, 0, .8); }

/* progress (home and the live result page) */
.progress { margin: 16px auto 0; width: min(560px, 100%); text-align: left; background: rgba(13, 13, 14, .82); border: 1px solid var(--line-2); border-radius: 22px;
  padding: 10px; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.stage .progress { max-height: 30vh; overflow: auto; }
.steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.steps li { display: grid; grid-template-columns: 30px 1fr; gap: 12px; align-items: start; padding: 8px 8px; border-radius: 14px; color: rgba(255, 255, 255, .45); }
.steps .n { font: 500 11px var(--font-sans); border: 1px solid var(--line-2); border-radius: 50%; width: 26px; height: 26px; display: grid; place-items: center; }
.steps .t { font-weight: 500; color: inherit; }
.steps .m { display: block; font: 12.5px var(--font-sans); color: var(--muted); margin-top: 2px; word-break: break-word; }
.steps li.active { color: #fff; background: rgba(255, 255, 255, .05); }
.steps li.active .n { border-color: #fff; color: #fff; animation: pulse 1.2s ease-in-out infinite; }
.steps li.done { color: #fff; }
.steps li.done .n { background: #fff; color: #000; border-color: #fff; }
.steps li.error .n { border-color: var(--warn); color: var(--warn); }
@keyframes pulse { 50% { box-shadow: 0 0 0 5px rgba(255, 255, 255, .1), 0 0 16px rgba(255, 255, 255, .35); } }

/* stats footer */
.stats-foot { position: relative; z-index: 1; width: 100%; max-width: 920px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; flex: none; text-align: center; }
.sf-icon { font: 400 clamp(22px, 3vw, 33px)/1 var(--font-display); color: var(--accent); }
.sf-val { margin-top: 8px; font: 500 clamp(18px, 2.2vw, 26px)/1.1 var(--font-sans); letter-spacing: -.025em; color: #fff; font-variant-numeric: tabular-nums; }
.sf-lab { margin-top: 4px; font: 400 clamp(11px, 1.2vw, 12.5px) var(--font-sans); color: var(--muted); }
@media (max-width: 720px) {
  .stats-foot { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 16px; }
  .headline { letter-spacing: -.08em; line-height: 1.05; font-size: clamp(26px, 8.4vw, 54px); }
  .trust-pill { font-size: 12px; }
}
@media (max-width: 420px) {
  .trust { --trust-size: 34px; }
  .headline { letter-spacing: -.09em; line-height: 1.04; }
  .cta form { padding-left: 16px; }
  .go { padding: 11px 16px; }
}
@media (max-height: 700px) {
  .trust { margin-bottom: 10px; }
  .sub { margin-top: 10px; }
  .cta { margin-top: 14px; }
  .tries .chip:nth-child(n+3) { display: none; }
}

/* shared entrance */
.anim { opacity: 0; transform: translateY(22px) scale(.98); filter: blur(6px); animation: reveal .85s var(--ease) forwards; }
.anim.pulse { animation-name: revealPulse; }
@keyframes reveal { to { opacity: 1; transform: none; filter: none; } }
@keyframes revealPulse { 60% { opacity: 1; transform: scale(1.015); filter: none; } 100% { opacity: 1; transform: none; filter: none; } }
.d1 { animation-delay: .05s; } .d2 { animation-delay: .12s; } .d3 { animation-delay: .28s; } .d4 { animation-delay: .4s; } .d5 { animation-delay: .46s; }
.d6 { animation-delay: .5s; } .d7 { animation-delay: .58s; } .d8 { animation-delay: .66s; } .d9 { animation-delay: .74s; }

/* ---------------- inner pages (gallery, how, privacy, results) ---------------- */
.eyebrow { font: 500 12px var(--font-sans); letter-spacing: .02em; color: var(--trust-text); display: inline-flex; align-items: center; gap: 8px;
  background: var(--trust-bg); border: 1px solid var(--trust-border); border-radius: 999px; padding: 6px 12px; }
.eyebrow.plain { background: none; border: 0; padding: 0; color: var(--muted); text-transform: uppercase; letter-spacing: .08em; font-size: 11.5px; }
h1, h2, h3 { margin: 0; line-height: 1.05; font-weight: 600; letter-spacing: -.03em; }
.display { font: 400 clamp(32px, 5.6vw, 72px)/1.08 var(--font-display); letter-spacing: -.045em; margin: 20px 0 0; color: #fff; }
.display .dim, .display .serif { color: #fff; opacity: .55; }
.serif { color: inherit; }
.h2 { font: 400 clamp(26px, 3.8vw, 48px)/1.1 var(--font-display); letter-spacing: -.045em; }
.h3 { font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.lead { font-size: clamp(16px, 1.6vw, 18.5px); color: var(--soft); opacity: .85; max-width: 600px; margin: 18px 0 0; }
.mono { font-family: var(--mono); }
.muted, .dim { color: var(--muted); }
.small { font-size: 14px; }
.pill { display: inline-flex; align-items: center; gap: 6px; font: 500 12px var(--font-sans); border: 1px solid var(--line-2); border-radius: 999px; padding: 5px 11px;
  color: var(--trust-text); white-space: nowrap; background: var(--trust-bg); }
.pill.on { color: #000; background: #fff; border-color: #fff; }
.pill.warn { color: var(--warn); border-color: rgba(255, 181, 71, .35); }
.pill.ok { color: #fff; border-color: rgba(255, 255, 255, .4); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 0; cursor: pointer; text-decoration: none; font: 600 14px var(--font-sans);
  letter-spacing: -.01em; border-radius: 999px; padding: 12px 22px; min-height: 44px; transition: transform .2s var(--ease), background .2s, box-shadow .2s; }
.btn-primary { background: #fff; color: #000; box-shadow: 0 0 0 1px rgba(255, 255, 255, .15), 0 0 22px rgba(255, 255, 255, .25); }
.btn-primary:hover { transform: translateY(-1px); }
.btn-ghost { background: var(--pill-dark); color: var(--sign-in-text); border: 0; font-weight: 500; padding: 10px 18px; min-height: 40px; }
.btn-ghost:hover { background: #473929; color: #fff; }
.card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; min-width: 0; }
.grid-2 { display: grid; gap: 14px; }
.grid-3 { display: grid; gap: 14px; }
@media (min-width: 760px) { .grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.section { padding: 80px 0; }
.section-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 32px; }

.howsteps { display: grid; gap: 14px; counter-reset: s; }
@media (min-width: 900px) { .howsteps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.howsteps .card { padding: 24px; display: flex; flex-direction: column; gap: 10px; }
.howsteps .card::before { counter-increment: s; content: "0" counter(s); font: 400 28px/1 var(--font-display); color: #fff; }
.howsteps h3 { font-size: 18px; font-weight: 600; margin-top: 8px; }
.howsteps p { margin: 0; color: var(--muted); font-size: 15px; }

.code { background: #050505; border: 1px solid var(--line); border-radius: 16px; padding: 16px; font: 12.5px/1.7 var(--mono); color: var(--muted); overflow-x: auto; white-space: pre; margin: 0; }
.code .k { color: #fff; } .code .s { color: var(--accent); }
.evlist { display: grid; gap: 8px; }
.ev { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 12px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); scroll-margin-top: 30px; }
.ev:target { border-color: rgba(255, 255, 255, .6); }
.ev .id { font: 600 12.5px var(--mono); color: #fff; }
.ev .lab { font-size: 15px; word-break: break-word; }
.ev .src { font: 12px/1.5 var(--mono); color: var(--muted); word-break: break-all; margin-top: 4px; }
.ev .src b { color: #fff; font-weight: 500; }
.cite { display: inline-block; font: 600 10px/1 var(--mono); color: #fff; background: var(--pill-dark); border: 1px solid var(--line-2); border-radius: 999px; padding: 3px 6px;
  margin-left: 4px; text-decoration: none; vertical-align: 3px; }
.cite:hover { background: #fff; color: #000; }

.gal { display: grid; gap: 16px; }
@media (min-width: 640px) { .gal { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 980px) { .gal { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.gcard { display: flex; flex-direction: column; gap: 10px; text-decoration: none; min-width: 0; padding: 10px 10px 18px; border: 1px solid var(--line); border-radius: 26px;
  background: var(--surface); transition: transform .3s var(--ease), border-color .3s; }
.gcard:hover { transform: translateY(-3px); border-color: rgba(255, 255, 255, .3); }
.gthumb { position: relative; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 18px; background: #050505; margin-bottom: 4px; }
.gthumb img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; filter: brightness(.85); transition: transform .6s var(--ease), filter .3s; }
.gcard:hover .gthumb img { transform: scale(1.03); filter: none; }
.gthumb.app img { object-position: center; }
.gthumb.contract { display: grid; place-items: center; background: radial-gradient(60% 80% at 50% 120%, rgba(239, 175, 96, .35), transparent 70%), #0c0906; }
.gthumb .addr { font: 500 12.5px var(--mono); color: #fff; padding: 7px 12px; border: 1px solid var(--line-2); border-radius: 999px; background: #000; max-width: 90%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gthumb .kind { position: absolute; left: 10px; top: 10px; z-index: 2; }
.gcard > :not(.gthumb) { padding: 0 8px; }
.gcard-host { font-weight: 600; font-size: 19px; letter-spacing: -.025em; word-break: break-word; }
.gcard p { margin: 0; color: var(--muted); font-size: 14px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.gcard .meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; }
.gcard .eyebrow.plain { padding-top: 2px; }

.rhead { padding: 56px 0 28px; text-align: center; }
.rhead .lead, .rhead .rmeta { margin-left: auto; margin-right: auto; justify-content: center; }
.rhead .display { font-size: clamp(30px, 6vw, 72px); word-break: break-word; }
.rmeta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; align-items: center; }
.summary { display: grid; gap: 0; padding: 0; overflow: hidden; }
.summary-main { padding: 26px; }
.summary-side { padding: 22px; border-top: 1px solid var(--line); background: #070707; display: grid; gap: 14px; align-content: start; }
@media (min-width: 900px) { .summary-side { border-top: 0; border-left: 1px solid var(--line); } }
.summary h2 { font-size: clamp(22px, 3vw, 32px); line-height: 1.18; font-weight: 600; letter-spacing: -.03em; }
.means { list-style: none; padding: 0; margin: 20px 0 0; display: grid; gap: 12px; }
.means li { display: grid; grid-template-columns: 22px 1fr; gap: 10px; color: var(--soft); }
.means li::before { content: ""; width: 7px; height: 7px; margin-top: 9px; background: var(--accent); border-radius: 50%; box-shadow: 0 0 8px rgba(245, 204, 153, .7); }
.stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.stat { border: 1px solid var(--line); border-radius: 18px; padding: 14px; background: var(--surface); }
.stat .v { font: 400 32px/1.05 var(--font-display); letter-spacing: -.04em; color: #fff; }
.shot { width: 100%; height: auto; border-radius: 14px; border: 1px solid var(--line); display: block; }
.share-row { display: flex; gap: 8px; flex-wrap: wrap; }
.rsec { padding: 56px 0 8px; }
.rsec-head { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.rsec-head .ico-box { width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #111; display: grid; place-items: center; flex: none; box-shadow: var(--nav-shadow); }
.rsec-head .ico-box .ico { width: 18px; height: 18px; }
.rsec-head h2 { font: 400 clamp(24px, 3.4vw, 40px)/1.1 var(--font-display); letter-spacing: -.045em; }
.plain-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.plain-list li { padding: 15px 18px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); color: var(--soft); }
.group { margin-bottom: 10px; }
.group summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 40px 1fr auto; gap: 12px; align-items: center; padding: 12px 16px;
  border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }
.group summary::-webkit-details-marker { display: none; }
.group[open] summary { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.group summary .ico-box { width: 36px; height: 36px; border-radius: 50%; background: var(--pill-dark); display: grid; place-items: center; color: #fff; }
.group .gtitle { font-weight: 600; }
.group .gplain { display: block; color: var(--muted); font-size: 14px; }
.group .count { font: 400 24px var(--font-display); }
.dtable { width: 100%; border-collapse: collapse; border: 1px solid var(--line); border-top: 0; border-radius: 0 0 20px 20px; font-size: 14px; display: block; overflow-x: auto; }
.dtable tbody { display: table; width: 100%; }
.dtable td { padding: 10px 16px; border-top: 1px solid var(--line); vertical-align: top; color: var(--soft); }
.dtable td.d { font-family: var(--mono); font-size: 12.5px; word-break: break-all; color: #fff; }
.feat { display: flex; flex-direction: column; gap: 10px; }
.feat h3 { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 600; }
.feat p { margin: 0; color: var(--soft); }
.signals { display: flex; flex-wrap: wrap; gap: 6px; }
.signals code { font: 11.5px var(--mono); border: 1px solid var(--line-2); border-radius: 999px; padding: 3px 9px; color: var(--muted); word-break: break-all; }
.switch-row { display: grid; grid-template-columns: 1fr auto; gap: 8px 14px; align-items: start; }
.kv { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; font-size: 14px; }
.kv dt { color: var(--muted); }
.kv dd { margin: 0; font-family: var(--mono); font-size: 13px; word-break: break-all; }
details.more summary { cursor: pointer; color: var(--muted); font-size: 14px; padding: 8px 0; }
.note { border-left: 2px solid rgba(255, 255, 255, .4); padding: 4px 0 4px 14px; color: var(--muted); }
.bars { display: grid; gap: 12px; }
.bar { display: grid; grid-template-columns: 1fr auto; gap: 6px 10px; font-size: 14px; }
.bar .track { grid-column: 1 / -1; height: 4px; background: var(--surface-2); border-radius: 99px; overflow: hidden; }
.bar .fill { height: 100%; background: linear-gradient(90deg, #efae5f, #f7d8b1); border-radius: 99px; }
.bar.dim .fill { background: #444; }

.foot { border-top: 1px solid var(--line); padding: 36px 0 44px; margin-top: 80px; color: var(--muted); font-size: 14px; }
.foot .wrap { display: grid; gap: 16px; }
@media (min-width: 760px) { .foot .wrap { grid-template-columns: 1fr auto; } }
.foot-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; font: 600 16px var(--font-sans); }
.foot-brand .logo-mark { width: 18px; height: 18px; --c: #fff; }
.foot nav { display: flex; gap: 18px; flex-wrap: wrap; }
.foot nav a { color: var(--muted); text-decoration: none; }
.foot nav a:hover { color: #fff; }
.center-page { min-height: 60vh; display: grid; place-items: center; text-align: center; padding: 80px 0; }
.prose { max-width: 740px; }
.prose p, .prose li { color: var(--soft); opacity: .9; }
.prose li b { color: #fff; }
.prose h2 { margin: 40px 0 12px; font: 400 26px var(--font-display); letter-spacing: -.04em; }
.tbl { width: 100%; border-collapse: collapse; font-size: 14px; }
.tbl th, .tbl td { text-align: left; padding: 10px 14px; border-bottom: 1px solid var(--line); vertical-align: top; }
.tbl th { font: 500 11.5px var(--font-sans); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.tbl-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
.mt12 { margin-top: 12px; } .mt14 { margin-top: 14px; } .mt18 { margin-top: 18px; } .mt24 { margin-top: 24px; }
.center { text-align: center; }
.mx-auto { margin-left: auto; margin-right: auto; }
.summary-side .shot { max-height: 280px; object-fit: cover; object-position: top; }
.preview, .summary { grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .summary { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); } }
.summary > *, .rsec, .plain-list li, .ev > div { min-width: 0; }
main { overflow-wrap: anywhere; }
.tbl td, .tbl th { overflow-wrap: anywhere; }
.cite, .pill { overflow-wrap: normal; white-space: nowrap; }
.bar .track, .bar .fill { display: block; }
.js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.js .reveal.in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .anim, .headline .line { opacity: 1 !important; transform: none !important; filter: none !important; }
  .js .reveal { opacity: 1; transform: none; }
}

.menu-sheet[hidden], .menu-overlay[hidden] { display: none !important; }

.headline { text-shadow: 0 2px 28px rgba(0, 0, 0, .35); }
.sub { text-shadow: 0 1px 14px rgba(0, 0, 0, .6); }
.ring .ico { width: calc(var(--trust-size) * .42); height: calc(var(--trust-size) * .42); }
.nav-row { position: relative; z-index: 32; }  /* logo + close button stay above the menu overlay */
.gthumb { aspect-ratio: 2 / 1; }

/* logo: dot-matrix B on the white circle */
.logo img { width: 74%; height: 74%; object-fit: contain; display: block; }
.foot-logo { width: 28px; height: 28px; border-radius: 50%; background: #fff; display: grid; place-items: center; }
.foot-logo img { width: 74%; height: 74%; display: block; }

/* ================= blue night branding (applies site-wide) ================= */
:root {
  --blue-1: #f5cc99; --blue-2: #eea750; --blue-3: #704919;
  --glass: rgba(54, 38, 18, .5); --glass-line: rgba(245, 202, 150, .16); --glass-line-2: rgba(245, 202, 150, .3);
}
html, body { background: #090602; }
.scene { position: absolute; left: 0; right: 0; top: 0; overflow: hidden; pointer-events: none;
  background: linear-gradient(#1d1306, #4e3312 45%, #cfa878 62%, #2a1c0b 70%, #000); }
.scene canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.scene-txt { mix-blend-mode: screen; }
.bg.scene { inset: 0; bottom: 0; }
.bg-grain { display: none; }
.banner { height: 680px; z-index: -1; -webkit-mask-image: linear-gradient(#000 80%, transparent); mask-image: linear-gradient(#000 80%, transparent); opacity: .95; }
.banner::after { content: ""; position: absolute; inset: 0; background: radial-gradient(55% 40% at 50% 32%, rgba(9, 6, 2, .6), transparent 80%); }
body:not(.home)::before { display: none; }
body:not(.home) .nav { padding-bottom: 8px; }

/* type + accents */
.display, .h2, .rsec-head h2, .headline { text-shadow: 0 0 34px rgba(239, 175, 96, .35), 0 2px 24px rgba(0, 0, 0, .4); }
.eyebrow { background: rgba(88, 61, 27, .55); border-color: var(--glass-line-2); color: #fbe9d3; backdrop-filter: blur(8px); }
.eyebrow.plain { background: none; color: #d0b594; }
.pill { background: rgba(65, 45, 21, .6); border-color: var(--glass-line); color: #f3e1cb; }
.pill.ok { border-color: rgba(245, 204, 153, .55); color: #fff; }
.cite { background: rgba(157, 106, 43, .45); border-color: rgba(245, 204, 153, .45); color: #fceede; }
.cite:hover { background: var(--blue-1); color: #382105; }
.muted, .dim { color: #b4a593; }
a:hover { text-decoration-color: var(--blue-1); }
:focus-visible { outline-color: var(--blue-1); }

/* glass cards in blue */
.card, .plain-list li, .group summary, .ev, .stat, .tbl-wrap, .gcard, .progress {
  background: var(--glass); border-color: var(--glass-line); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.summary-side { background: rgba(28, 19, 8, .6); }
.gcard:hover { border-color: rgba(245, 204, 153, .55); box-shadow: 0 20px 60px -24px rgba(237, 165, 78, .6); }
.group summary .ico-box { background: rgba(176, 121, 54, .5); }
.rsec-head .ico-box { background: linear-gradient(160deg, #f7d8b1, #eea750 60%, #704919); color: #fff; box-shadow: 0 6px 22px rgba(237, 165, 78, .45); }
.stat .v, .group .count { color: #fdf4ea; text-shadow: 0 0 22px rgba(239, 175, 96, .4); }
.ev .id { color: var(--blue-1); }
.ev:target { border-color: var(--blue-1); box-shadow: 0 0 0 3px rgba(245, 204, 153, .2); }
.dtable { background: rgba(28, 19, 8, .5); border-color: var(--glass-line); }
.dtable td { border-color: var(--glass-line); }
.btn-ghost { background: rgba(86, 63, 34, .75); color: #fceede; }
.btn-ghost:hover { background: rgba(141, 103, 57, .9); color: #fff; }
.btn-primary { box-shadow: 0 0 0 1px rgba(255, 255, 255, .15), 0 0 22px rgba(246, 211, 169, .45), 0 0 44px rgba(240, 179, 105, .22); }
.note { border-left-color: var(--blue-1); }
.signals code { border-color: var(--glass-line-2); color: #e7d5be; }
.steps li.active .n { border-color: var(--blue-1); color: var(--blue-1); }
.steps li.done .n { background: var(--blue-1); border-color: var(--blue-1); color: #382105; }
.trust-pill, .ring { background: rgba(69, 48, 23, .85); border-color: rgba(246, 211, 169, .45); }
.signin { background: rgba(69, 48, 23, .9); color: #fceede; }
.signin:hover { background: #8c6434; }
.burger { background: rgba(69, 48, 23, .9); }
.chip { background: rgba(52, 35, 14, .55); border-color: rgba(245, 202, 150, .25); color: #fbe9d3; }
.chip:hover { border-color: var(--blue-1); }
.cta form { background: rgba(37, 24, 9, .55); border-color: rgba(246, 207, 159, .35); box-shadow: 0 10px 50px -12px rgba(236, 156, 59, .5); }
.foot { border-top-color: var(--glass-line); background: linear-gradient(rgba(56, 37, 15, .35), transparent); }
.foot-logo { box-shadow: 0 0 18px rgba(239, 175, 96, .4); }
.logo { box-shadow: 0 4px 14px rgba(0, 0, 0, .16), 0 0 24px rgba(239, 175, 96, .35); }
body { background: transparent; }  /* html carries the black, so the scene banner (z-index -1) shows */

/* tech check */
.tc-list { display: grid; gap: 10px; }
.tc-row { display: grid; gap: 14px; padding: 18px; border-radius: 20px; background: var(--glass); border: 1px solid var(--glass-line); backdrop-filter: blur(10px); }
@media (min-width: 860px) { .tc-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.tc-row.backed { border-color: rgba(245, 204, 153, .4); box-shadow: inset 3px 0 0 #f5cc99; }
.tc-row.not_found { box-shadow: inset 3px 0 0 rgba(255, 255, 255, .25); }
.tc-claim h3 { font-size: 18px; margin: 10px 0 6px; }
.tc-quote { margin: 0; color: #e0d0bd; font-style: italic; font-size: 14.5px; }
.tc-found p { margin: 0 0 6px; color: var(--soft); font-size: 14.5px; }
.tc-sub { display: grid; gap: 8px; }
@media (min-width: 760px) { .tc-sub { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); } }
.tc-s { display: grid; grid-template-columns: 12px 1fr; gap: 4px 10px; align-items: center; padding: 12px 14px; border-radius: 16px; background: var(--glass); border: 1px solid var(--glass-line); }
.tc-s .dotm { width: 9px; height: 9px; border-radius: 50%; background: #62523e; }
.tc-s.yes .dotm { background: #f5cc99; box-shadow: 0 0 10px #f5cc99; }
.tc-s .l { font-weight: 600; font-size: 14px; }
.tc-s .v { grid-column: 2; color: var(--muted); font-size: 13px; overflow-wrap: anywhere; }

/* bigger prompt box */
.cta { width: min(720px, 100%); margin-top: clamp(22px, 3.6vh, 36px); }
.cta form { padding: 8px 8px 8px 26px; gap: 10px; min-height: 70px; border-width: 1.5px; }
.cta input { font-size: clamp(16px, 1.7vw, 18.5px); padding: 14px 0; }
.go { font-size: clamp(15px, 1.6vw, 16.5px); padding: 16px 30px; }
@media (max-width: 560px) {
  .cta form { flex-wrap: wrap; border-radius: 26px; padding: 10px; min-height: 0; }
  .cta input { flex: 1 1 100%; padding: 12px 10px; font-size: 16.5px; }
  .go { flex: 1 1 100%; padding: 15px 20px; }
}

.token-page { padding-bottom: 40px; }
.token-addr { display: grid; gap: 12px; justify-items: start; }
.token-addr code { font-size: clamp(14px, 1.8vw, 18px); color: #fff; word-break: break-all; }

/* legibility: solid pixel face for the big headline, a soft scrim behind the text, no bright lines through it */
@font-face { font-family: "Geist Pixel Square"; src: url("/static/fonts/GeistPixel-Square.woff2") format("woff2"); font-weight: 400; font-display: swap; }
.headline { font-family: "Geist Pixel Square", "Geist Pixel Circle", monospace; letter-spacing: -.02em; line-height: 1.04;
  text-shadow: 0 0 2px rgba(0, 0, 0, .5), 0 2px 30px rgba(36, 22, 4, .65); }
@media (max-width: 720px) { .headline { letter-spacing: -.04em; } }
.hero::before { content: ""; position: absolute; left: 50%; top: 44%; width: min(1100px, 130vw); height: 72%; transform: translate(-50%, -50%);
  background: radial-gradient(closest-side, rgba(20, 13, 4, .62), rgba(20, 13, 4, .35) 55%, transparent); pointer-events: none; z-index: -1; }
.hero { isolation: isolate; }

.case-card { padding: 22px 22px 20px; gap: 12px; }
.case-card > * { padding: 0 !important; }
.case-top { display: flex; justify-content: space-between; align-items: center; }
.case-tick { font: 400 30px/1 "Geist Pixel Square", monospace; color: #fff; text-shadow: 0 0 22px rgba(239, 175, 96, .45); }
.case-mint code { word-break: break-all; }

/* market numbers on case studies */
.mkt { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 14px; margin: 12px 0 6px; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.mkt-c { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mkt-c b { font: 600 15px/1.2 var(--mono); color: var(--text, #fff); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mkt-c i { font-style: normal; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mkt-c b.up { color: #5ee0a0; }
.mkt-c b.down { color: #ff8a8a; }
.mkt-band { margin-bottom: 24px; }
.mkt-lg { grid-template-columns: repeat(5, minmax(0, 1fr)); border: 0; margin: 0; padding: 0; gap: 18px; }
.mkt-lg .mkt-c b { font-size: 22px; }
@media (max-width: 760px) { .mkt-lg { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mkt-lg .mkt-c b { font-size: 18px; } }
.rhead .lead { text-shadow: 0 1px 14px rgba(9, 6, 2, .9), 0 0 2px rgba(9, 6, 2, .8); }

/* logo: the blueprint tile is the mark itself (no white circle) */
.logo, .foot-logo { background: none !important; border-radius: 26%; box-shadow: 0 6px 22px rgba(236, 160, 66, .45), inset 0 0 0 1px rgba(255, 255, 255, .12) !important; overflow: hidden; }
.logo img, .foot-logo img { width: 100% !important; height: 100% !important; display: block; }

/* live feed */
.runbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; padding: 12px 16px; margin-bottom: 14px; border: 1px solid var(--line); border-radius: 16px; background: rgba(41, 28, 13, .55); font-size: 13px; color: var(--muted); }
.runbar b { color: #fff; }
.live-dot { width: 8px; height: 8px; border-radius: 50%; background: #5ee0a0; box-shadow: 0 0 0 0 rgba(94, 224, 160, .6); animation: livePulse 1.8s infinite; }
@keyframes livePulse { 70% { box-shadow: 0 0 0 8px rgba(94, 224, 160, 0); } 100% { box-shadow: 0 0 0 0 rgba(94, 224, 160, 0); } }
.run { display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border-radius: 999px; background: rgba(255, 255, 255, .05); color: #fcf0e2; text-decoration: none; font-family: var(--mono); font-size: 12px; }
.run span { color: var(--muted); font-family: inherit; }
.run i { font-style: normal; color: var(--muted); }
.tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.tabs a { padding: 8px 14px; border-radius: 999px; color: var(--muted); text-decoration: none; font-size: 14px; border: 1px solid transparent; }
.tabs a[aria-current="page"] { color: #fff; border-color: var(--line); background: rgba(239, 175, 96, .14); }
.feed { border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: rgba(30, 20, 8, .6); }
.fhead, .frow { display: grid; grid-template-columns: 96px minmax(130px, 1.3fr) 170px minmax(0, 3fr) 80px 74px 44px; gap: 14px; align-items: center; padding: 11px 16px; }
.fhead { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); border-bottom: 1px solid var(--line); }
.frow { color: inherit; text-decoration: none; border-bottom: 1px solid rgba(245, 202, 150, .07); transition: background .15s; }
.frow:hover { background: rgba(239, 175, 96, .08); }
.frow:last-child { border-bottom: 0; }
.f-kind { font-size: 11px; letter-spacing: .05em; text-transform: uppercase; color: var(--muted); display: flex; flex-direction: column; gap: 2px; }
.f-kind em { font-style: normal; color: #f5cc99; text-transform: none; letter-spacing: 0; }
.f-name { font-weight: 600; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.f-score { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.f-sum { color: var(--muted); font-size: 13.5px; line-height: 1.45; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.f-mc, .f-since, .f-ago { font-family: var(--mono); font-size: 13px; text-align: right; color: #fcf0e2; }
.f-ago { color: var(--muted); }
.f-since.up { color: #5ee0a0; } .f-since.down { color: #ff8a8a; }
.sc { font: 600 12px/1 var(--mono); padding: 5px 8px; border-radius: 8px; background: rgba(255, 255, 255, .06); color: #fbe9d3; white-space: nowrap; }
.sc.good { background: rgba(94, 224, 160, .12); color: #7ff0b8; }
.sc.warn { background: rgba(255, 176, 90, .13); color: #ffc27a; }
.sc.low { background: rgba(255, 138, 138, .12); color: #ffa4a4; }
.bar { width: 44px; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, .1); overflow: hidden; display: inline-block; }
.bar i { display: block; height: 100%; background: linear-gradient(90deg, #eea750, #5ee0a0); }
.bar .b0 { width: 4%; } .bar .b1 { width: 25%; } .bar .b2 { width: 50%; } .bar .b3 { width: 75%; } .bar .b4 { width: 100%; }
.score-line { margin: 6px 0 4px; }
@media (max-width: 900px) {
  .fhead { display: none; }
  .frow { grid-template-columns: 1fr auto; grid-template-areas: "name mc" "score since" "sum sum" "kind ago"; gap: 6px 12px; }
  .f-name { grid-area: name; } .f-mc { grid-area: mc; } .f-score { grid-area: score; } .f-since { grid-area: since; }
  .f-sum { grid-area: sum; } .f-kind { grid-area: kind; flex-direction: row; gap: 8px; } .f-ago { grid-area: ago; }
}

/* ticker tape */
.ticker { position: relative; z-index: 15; overflow: hidden; margin: 12px auto 0; max-width: 1180px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
body.home .ticker { position: absolute; left: 0; right: 0; bottom: 0; margin: 0; max-width: none; background: rgba(18, 12, 4, .45); }
.ticker-track { display: flex; width: max-content; animation: tickerMove calc(var(--n, 12) * 4.5s) linear infinite; }
.ticker:hover .ticker-track { animation-play-state: paused; }
@keyframes tickerMove { to { transform: translateX(-50%); } }
.tk { display: inline-flex; align-items: baseline; gap: 8px; padding: 9px 18px; font: 500 13px/1 var(--mono); color: #fbe9d3; text-decoration: none; white-space: nowrap; border-right: 1px solid rgba(245, 202, 150, .1); }
.tk b { color: #fff; font-weight: 600; }
.tk span { color: var(--muted); }
.tk i { font-style: normal; }
.tk i.up { color: #5ee0a0; } .tk i.down { color: #ff8a8a; }
.tk:hover b { color: #f5cc99; }
@media (prefers-reduced-motion: reduce) { .ticker-track { animation: tickerMove calc(var(--n, 12) * 7s) linear infinite !important; } }
body.home .stats-foot { margin-bottom: 46px; }
.ticker { scrollbar-width: none; } .ticker::-webkit-scrollbar { display: none; }

.tk em { font-style: normal; font: 600 10px/1 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: #2a1b08; background: #f1b66d; padding: 3px 5px; border-radius: 5px; }

/* live board (v2): table with logos, sparklines, asks; sidebar leaderboards */
.board { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 22px; align-items: start; max-width: 1560px; }
.board-side { display: grid; gap: 16px; position: sticky; top: 16px; }
.side-card { padding: 16px; }
.side-card h3 { font-size: 15px; margin: 0 0 10px; display: flex; justify-content: space-between; align-items: baseline; }
.side-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.side-list a { display: flex; align-items: center; gap: 9px; padding: 6px 6px; border-radius: 10px; color: inherit; text-decoration: none; font-size: 14px; min-width: 0; }
.side-list a:hover { background: rgba(239, 175, 96, .1); }
.side-list i { font-style: normal; width: 16px; color: var(--muted); font: 12px var(--mono); }
.side-list b { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.side-list .f-img { width: 24px; height: 24px; font-size: 11px; }
.filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 12px; }
.fsearch { flex: 1 1 260px; }
.fsearch input { width: 100%; height: 40px; border-radius: 12px; border: 1px solid var(--line); background: rgba(30, 20, 8, .7); color: #fff; padding: 0 14px; font: 14px var(--sans, inherit); }
.fsearch input:focus { outline: 2px solid rgba(241, 182, 109, .5); outline-offset: 1px; }
.seg { display: inline-flex; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.seg a { padding: 9px 13px; font-size: 13.5px; color: var(--muted); text-decoration: none; }
.seg a[aria-current="true"] { background: rgba(239, 175, 96, .18); color: #fff; }
.board .fhead, .board .frow { grid-template-columns: 112px minmax(170px, 1.1fr) minmax(220px, 2.6fr) 74px 66px 112px 80px 44px 38px; gap: 12px; }
.f-name { display: flex; align-items: center; gap: 10px; min-width: 0; }
.f-name > span { display: flex; flex-direction: column; min-width: 0; }
.f-name b { font-weight: 600; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.f-name em { font-style: normal; font-size: 11.5px; color: var(--muted); }
.f-img { width: 32px; height: 32px; border-radius: 9px; flex: none; object-fit: cover; background: #34230f; }
.f-ph { display: grid; place-items: center; font: 600 14px var(--mono); color: #fbe9d3; background: linear-gradient(135deg, #714e23, #34230f); }
.f-ph.k-site { background: linear-gradient(135deg, #543918, #34230f); }
.f-ch, .f-asks { font-family: var(--mono); font-size: 13px; text-align: right; }
.f-ch.up { color: #5ee0a0; } .f-ch.down { color: #ff8a8a; }
.f-asks { color: #fcf0e2; }
.f-since i { color: var(--muted); font-style: normal; }
.f-spark { display: flex; justify-content: center; }
.spark polyline { stroke: #f5cc99; }
.spark.up polyline { stroke: #5ee0a0; } .spark.down polyline { stroke: #ff8a8a; }
@media (max-width: 1440px) { .board { grid-template-columns: 1fr; } .board-side { position: static; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); } }
@media (max-width: 900px) {
  .board .frow { grid-template-columns: 1fr auto; grid-template-areas: "name mc" "score ch" "sum sum" "spark since"; }
  .f-spark { grid-area: spark; justify-content: flex-start; } .f-ch { grid-area: ch; } .f-asks, .board .f-ago { display: none; }
}

.tk img { width: 18px; height: 18px; border-radius: 5px; align-self: center; object-fit: cover; }
.coin-logo { display: block; margin: 0 auto 14px; width: 72px; height: 72px; border-radius: 18px; box-shadow: 0 8px 30px rgba(236, 160, 66, .35); }
.case-tick { display: inline-flex; align-items: center; gap: 8px; }
.tk-img { width: 26px; height: 26px; border-radius: 7px; object-fit: cover; }
.sc.ai { background: rgba(241, 182, 109, .12); color: #f5cc99; }

/* home: the live board under the hero */
.home-live { position: relative; padding: 56px 0 40px; background: linear-gradient(#01030a00, #090602 120px); }
.home-live-head { text-align: center; margin-bottom: 22px; }
.home-live-head .lead { margin-left: auto; margin-right: auto; }
.h-live { font-size: clamp(28px, 4.6vw, 54px); margin: 10px 0 12px; }

/* coin page: at a glance */
.glance { margin-bottom: 22px; }
.glance h3 { margin: 0 0 12px; font-size: 16px; }
.glance-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px 22px; }
.glance-list li { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid rgba(245, 202, 150, .08); font-size: 14.5px; }
.glance-list span { color: var(--muted); }
.glance-list b { font: 600 14px var(--mono); color: #fff; text-align: right; }
.glance-list b.good { color: #7ff0b8; } .glance-list b.warn { color: #ffc27a; }
.glance-list b i { font-style: normal; color: var(--muted); font-weight: 400; }
.quicklinks { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 18px 0 22px; padding: 14px 16px; }
.wrapany { word-break: break-all; }

.xpost { margin: 0; padding: 16px 18px; border-left: 3px solid #f1b66d; background: rgba(41, 28, 13, .6); border-radius: 0 14px 14px 0; }
.xpost p { margin: 0 0 10px; white-space: pre-wrap; color: #fdf4ea; }
.xpost footer { font-size: 13px; color: var(--muted); }
.board .frow.post-kid, .frow.post-kid { grid-template-columns: 110px minmax(160px, 1.2fr) minmax(0, 3fr); }

/* launch map and wallet pages */
.lmap-wrap { border: 1px solid var(--line); border-radius: 18px; background: radial-gradient(circle at 50% 50%, #34230f, #181006); padding: 8px; }
.lmap { display: block; width: 100%; height: auto; max-height: 460px; }
.lmap a circle { transition: stroke-opacity .15s; } .lmap a:hover circle { stroke-opacity: .9; stroke-width: 2; }
.lm-t { font: 600 10px var(--mono); fill: #fcf0e2; } .lm-s { font: 9px var(--mono); fill: #d1b696; }
.trail { margin: 0; padding-left: 18px; display: grid; gap: 8px; } .trail li { color: var(--muted); } .trail b { color: #fff; }

.xchecks { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.xchecks li { display: grid; grid-template-columns: 230px 1fr; gap: 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(33, 23, 11, .6); }
.xchecks li b { color: #fff; font-size: 14px; } .xchecks li span { color: var(--muted); font-size: 14px; }
.xchecks .xc-good { border-left: 3px solid #5ee0a0; } .xchecks .xc-note { border-left: 3px solid #ffb35f; } .xchecks .xc-neutral { border-left: 3px solid #f1b66d; }
@media (max-width: 700px) { .xchecks li { grid-template-columns: 1fr; gap: 4px; } }

/* live activity */
.live-act .rsec-head { align-items: center; } .live-act .rsec-head .live-dot { margin-left: 10px; }
.flow { display: flex; flex-wrap: wrap; gap: 10px 18px; padding: 12px 16px; border: 1px solid var(--line); border-radius: 14px; background: rgba(33, 23, 11, .6); font: 13px var(--mono); }
.fl-b { color: #7ff0b8; } .fl-s { color: #ffa4a4; }
.act-events { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; max-height: 420px; overflow: auto; }
.act-events li { display: grid; grid-template-columns: 40px 1fr; gap: 10px; font-size: 13.5px; padding: 6px 8px; border-radius: 8px; background: rgba(255, 255, 255, .03); }
.act-events li b { font: 600 12px var(--mono); color: var(--muted); }
.ev-burst, .ev-linked, .ev-layered { border-left: 3px solid #ffb35f; } .ev-creator, .ev-holder { border-left: 3px solid #ff8aa8; }
.ev-fresh { border-left: 3px solid #f1b66d; } .ev-big { border-left: 3px solid #c38bff; }
.act-trades td { padding: 5px 6px; } .act-trades .t-buy .side { color: #7ff0b8; } .act-trades .t-sell .side { color: #ffa4a4; }
.tg { display: inline-block; margin: 0 4px 2px 0; padding: 2px 6px; border-radius: 6px; font: 600 10.5px var(--mono); background: rgba(255, 255, 255, .07); color: #fbe9d3; }
.tg-burst, .tg-linked, .tg-layered { background: rgba(255, 179, 95, .16); color: #ffc27a; } .tg-creator, .tg-holder { background: rgba(255, 138, 168, .16); color: #ffa4bd; }
.tg-fresh { background: rgba(241, 182, 109, .14); color: #f5cc99; } .tg-big { background: rgba(195, 139, 255, .16); color: #d6b4ff; }
.ev-micro { border-left: 3px solid #b4a38e; } .tg-micro { background: rgba(180, 163, 142, .16); color: #d9ccbc; }
.act-trades { display: block; max-height: 420px; overflow: auto; }
.act-events li.muted { display: block; }

.chart-box { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.chart-frame { width: 100%; height: 520px; border: 0; border-radius: 12px; background: #181007; }
@media (max-width: 700px) { .chart-frame { height: 420px; } }
.flash { animation: mkflash .9s ease-out; } @keyframes mkflash { from { background: rgba(241, 182, 109, .35); } to { background: transparent; } }
.ev-label { border-left: 3px solid #ff5f7a; } .tg-label { background: rgba(255, 95, 122, .18); color: #ff9fb0; }

.wlabel { margin: 8px 0 0; padding: 8px 12px; border-radius: 10px; background: rgba(241, 182, 109, .12); color: #fbe9d3; font-size: 14px; display: inline-block; }
.wl-sanctioned, .wl-mixer, .wl-investigation { background: rgba(255, 95, 122, .16) !important; color: #ffb0bd !important; }
.wl-exchange, .wl-bridge { background: rgba(241, 182, 109, .14) !important; color: #f6d3a8 !important; }

/* terminal-style home grid */
.term { padding: 34px 0 10px; }
.term-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 18px; align-items: start; }
.term-side { display: grid; gap: 18px; }
.panel { display: block; padding: 18px 20px; border: 1px solid var(--glass-line, var(--line)); border-radius: 18px; background: rgba(28, 19, 8, .62); color: inherit; text-decoration: none; }
.panel-h { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.panel-h h2 { margin: 0; font-size: 15px; letter-spacing: .02em; text-transform: uppercase; color: #fff; font-weight: 700; }
.panel-more { margin-left: auto; font-size: 13px; color: var(--muted); }
.panel-cta { display: grid; gap: 4px; border-color: rgba(241, 182, 109, .45); background: linear-gradient(135deg, rgba(235, 154, 56, .22), rgba(28, 19, 8, .62)); }
.panel-cta b { display: flex; align-items: center; gap: 8px; color: #fff; }
.finds { list-style: none; margin: 0; padding: 0; display: grid; }
.finds li a { display: grid; grid-template-columns: 28px 86px 100px minmax(0, 1fr) 70px; gap: 12px; align-items: center; padding: 9px 4px; border-top: 1px solid rgba(255, 255, 255, .06); color: var(--soft); text-decoration: none; font-size: 14px; }
.finds li:first-child a { border-top: 0; }
.finds li a:hover { background: rgba(255, 255, 255, .03); }
.fi-img img, .fi-ph { width: 28px; height: 28px; border-radius: 8px; display: grid; place-items: center; background: #453118; color: #fff; font-weight: 700; font-size: 12px; }
.fi-tag { font: 600 10.5px var(--mono); text-transform: uppercase; letter-spacing: .04em; padding: 3px 7px; border-radius: 6px; text-align: center; border: 1px solid; }
.tag-sale, .tag-insiders, .tag-linked, .tag-repeat { color: #ffb0bd; border-color: rgba(255, 95, 122, .5); background: rgba(255, 95, 122, .1); }
.tag-bundle, .tag-creator, .tag-contract { color: #ffc27a; border-color: rgba(255, 179, 95, .5); background: rgba(255, 179, 95, .1); }
.tag-website { color: #f6d3a8; border-color: rgba(241, 182, 109, .5); background: rgba(241, 182, 109, .1); }
.fi-sym { color: #fff; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fi-txt { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fi-ago { color: var(--muted); font-size: 12px; text-align: right; white-space: nowrap; }
.kpis { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 8px; }
.kpis-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.kpi { padding: 12px 14px; border: 1px solid rgba(255, 255, 255, .07); border-radius: 12px; background: rgba(255, 255, 255, .02); }
.kpi b { display: block; font: 700 22px var(--mono); color: #fff; } .kpi i { font-style: normal; font-size: 12px; color: var(--muted); }
table.mini { width: 100%; border-collapse: collapse; font-size: 13px; }
table.mini th { text-align: left; font-weight: 600; color: var(--muted); font-size: 11.5px; text-transform: uppercase; padding: 0 0 6px; }
table.mini td { padding: 6px 0; border-top: 1px solid rgba(255, 255, 255, .06); }
.chips { display: flex; flex-wrap: wrap; gap: 6px; } .mt8 { margin-top: 8px; }
.dtable.track thead { display: table; width: 100%; } .dtable.track th { text-align: left; padding: 10px 16px; color: var(--muted); font-size: 12px; text-transform: uppercase; }
.dtable.track thead tr, .dtable.track tbody tr { display: grid; grid-template-columns: 2fr 1fr 1.4fr 1fr 1fr; }
table.track:not(.dtable) { width: 100%; }
.bar { display: inline-block; width: 70px; height: 6px; border-radius: 4px; background: rgba(255, 255, 255, .08); margin-right: 8px; vertical-align: middle; overflow: hidden; }
.bar-f { display: block; height: 100%; background: linear-gradient(90deg, #ffb35f, #ff5f7a); }
.w0 { width: 0%; } .w5 { width: 5%; } .w10 { width: 10%; } .w15 { width: 15%; } .w20 { width: 20%; } .w25 { width: 25%; } .w30 { width: 30%; } .w35 { width: 35%; } .w40 { width: 40%; } .w45 { width: 45%; } .w50 { width: 50%; } .w55 { width: 55%; } .w60 { width: 60%; } .w65 { width: 65%; } .w70 { width: 70%; } .w75 { width: 75%; } .w80 { width: 80%; } .w85 { width: 85%; } .w90 { width: 90%; } .w95 { width: 95%; } .w100 { width: 100%; } 
@media (max-width: 960px) { .term-grid { grid-template-columns: 1fr; } .kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .finds li a { grid-template-columns: 28px 74px minmax(0, 1fr) 40px; } .fi-sym { display: none; }
  .dtable.track thead tr, .dtable.track tbody tr { grid-template-columns: 1.6fr 1fr 1.2fr 0 0; } }

.tape { width: 100%; height: auto; min-width: 640px; }
.tp-line { stroke: rgba(246, 207, 159, .35); stroke-width: 2; } .tp-tick { stroke: rgba(246, 207, 159, .25); stroke-width: 1; }
.tp-dot { fill: #f1b66d; stroke: #181007; stroke-width: 2; } .tp-start { fill: #fff; } .tp-now { fill: #3fcf8e; } .tp-warn { fill: #ffb35f; }
.tp-l { fill: #fff; font: 600 12px Inter, system-ui, sans-serif; } .tp-s { fill: #d1b696; font: 11px ui-monospace, monospace; }
.fl-r { color: #ffc27a; }
.ev-roundtrip { border-left: 3px solid #ffb35f; } .tg-roundtrip { background: rgba(255, 179, 95, .16); color: #ffc27a; }
.tape-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.ev-smart { border-left: 3px solid #3fcf8e; } .tg-smart { background: rgba(63, 207, 142, .16); color: #8ff0c4; }
.wl-crew { background: rgba(255, 179, 95, .14) !important; color: #ffd29e !important; } .wl-crew a { color: #fff; }
.crew-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.crew-card { display: grid; gap: 8px; padding: 16px 18px; border: 1px solid var(--glass-line, var(--line)); border-radius: 16px; background: rgba(28, 19, 8, .62); color: inherit; text-decoration: none; }
.crew-card:hover { border-color: rgba(255, 179, 95, .5); }
.crew-card b { font: 700 16px var(--mono); color: #fff; } .crew-card .row3 { display: flex; gap: 14px; font-size: 13px; color: var(--muted); }
.crew-card .row3 span b { font-size: 14px; } .crew-card .syms { display: flex; flex-wrap: wrap; gap: 5px; }
.dtable.cmp thead { display: table; width: 100%; } .dtable.cmp th { text-align: left; padding: 10px 16px; color: var(--muted); font-size: 12px; text-transform: uppercase; }
.dtable.cmp thead tr, .dtable.cmp tbody tr { display: grid; grid-template-columns: 1.1fr 1.5fr 1.5fr; }
.dtable.cmp td:first-child { color: #fff; font-weight: 600; } .dtable.cmp td:nth-child(2) { color: #fbe9d3; }
@media (max-width: 640px) { .dtable.cmp thead tr, .dtable.cmp tbody tr { grid-template-columns: 1fr 1fr 1fr; font-size: 12.5px; } }

/* receipts block on coin pages */
.receipts { display: grid; gap: 12px; border-color: rgba(241, 182, 109, .45); }
.rc-top { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; } .rc-top .btn-sm { margin-left: auto; padding: 6px 12px; font-size: 13px; }
.rc-head { margin: 0; font-size: 18px; line-height: 1.45; color: #fff; font-weight: 600; }
.stamps { display: flex; flex-wrap: wrap; gap: 6px; }
.stamp { font: 600 12px var(--mono); padding: 4px 9px; border-radius: 8px; border: 1px solid; }
.st-good { color: #8ff0c4; border-color: rgba(63, 207, 142, .45); background: rgba(63, 207, 142, .1); }
.st-warn { color: #ffc27a; border-color: rgba(255, 179, 95, .5); background: rgba(255, 179, 95, .1); }
.st-info { color: #d9ccbc; border-color: rgba(205, 182, 155, .35); background: rgba(205, 182, 155, .08); }
.rc-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.rc-list li { display: grid; grid-template-columns: 220px 1fr; gap: 12px; padding: 8px 10px; border-left: 3px solid #ffb35f; background: rgba(255, 179, 95, .05); border-radius: 8px; font-size: 14px; }
.rc-list li b { color: #fff; } .rc-list li span { color: var(--soft); }
.rc-changes { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.chg { font: 12px var(--mono); padding: 3px 8px; border-radius: 7px; background: rgba(255, 255, 255, .05); } .chg-up { color: #ffc27a; } .chg-down { color: #8ff0c4; }
.story { display: grid; gap: 8px; } .story-by { margin: 0; font-weight: 600; }
.story-text { margin: 0; padding: 10px 14px; border-left: 3px solid #f1b66d; background: rgba(241, 182, 109, .07); border-radius: 8px; color: #fcf0e2; white-space: pre-wrap; }
@media (max-width: 700px) { .rc-list li { grid-template-columns: 1fr; gap: 2px; } }
.calls .call-ex { color: var(--soft); font-size: 13px; max-width: 420px; }
.calls td { vertical-align: top; }
.callers-t thead tr, .callers-t tbody tr { grid-template-columns: 1.6fr .6fr 1fr 1fr 1.2fr !important; }

/* ---------------- Trenchcoat noir ---------------- */
:root { --bg: #070503; --surface: #100c08; --surface-2: #18120c; --accent: #e3a95c; --muted: #9a8d7c; --soft: #ddd2c2; }
.logo { background: #15100b; box-shadow: 0 0 0 1px rgba(227, 169, 92, .35), 0 0 24px rgba(227, 169, 92, .18); }
.logo img, .foot-logo img, .hero-det { image-rendering: pixelated; image-rendering: crisp-edges; }
.logo img { width: 100%; height: 100%; }
.headline.wordmark .l1 { letter-spacing: .02em; text-shadow: 0 0 34px rgba(227, 169, 92, .25); }
.headline.wordmark em { font-style: normal; color: #e3a95c; text-shadow: 0 0 26px rgba(227, 169, 92, .55); }
.headline.wordmark .tagline { display: block; font-family: var(--font-sans); font-size: clamp(17px, 2.1vw, 24px); font-weight: 500; letter-spacing: 0;
  color: var(--soft); margin-top: 14px; text-shadow: none; }
.hero { position: relative; }
.stage { position: relative; }
.hero-det { position: absolute; right: 5vw; bottom: 16vh; width: clamp(150px, 17vw, 300px); height: auto; z-index: 1;
  opacity: .85; filter: drop-shadow(0 0 40px rgba(227, 169, 92, .22)); pointer-events: none; }
@media (max-width: 1100px) { .hero-det { opacity: .35; right: 2vw; } }
@media (max-width: 700px) { .hero-det { display: none; } }
::selection { background: #e3a95c; color: #070503; }

/* the rating */
.rating { display: grid; gap: 10px; padding: 14px 16px; border-radius: 14px; border: 1px solid; }
.rt-word { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.rt-word b { font: 700 clamp(20px, 2.6vw, 28px) var(--mono); letter-spacing: .02em; }
.rt-score { font: 700 28px var(--mono); } .rt-score i { font-style: normal; font-size: 14px; opacity: .7; }
.rt-parts { display: flex; gap: 18px; flex-wrap: wrap; font-size: 14px; color: var(--soft); } .rt-parts b { color: #fff; font-family: var(--mono); }
.rt-odds { font-size: 14px; color: var(--soft); padding-top: 4px; border-top: 1px solid rgba(255, 255, 255, .08); }
.rt-odds b { color: #fff; margin-right: 4px; } .rt-odds i { font-style: normal; color: var(--muted); margin-left: 4px; }
.kpis-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 14px; }
@media (max-width: 700px) { .kpis-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.rt-why summary { cursor: pointer; font-size: 14px; color: var(--soft); }
.rt-why ul { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 6px; font-size: 14px; }
.rt-pts { display: inline-block; min-width: 42px; font: 700 12px var(--mono); color: #ff9fb0; }
.rating.rt-good { border-color: rgba(63, 207, 142, .5); background: rgba(63, 207, 142, .08); } .rating.rt-good b { color: #8ff0c4; }
.rating.rt-warn { border-color: rgba(255, 179, 95, .55); background: rgba(255, 179, 95, .08); } .rating.rt-warn b { color: #ffc27a; }
.rating.rt-bad { border-color: rgba(255, 95, 122, .55); background: rgba(255, 95, 122, .08); } .rating.rt-bad b { color: #ff9fb0; }
.rating.rt-info { border-color: rgba(200, 200, 200, .3); background: rgba(255, 255, 255, .04); }
.sc.rt { font-weight: 700; } .sc.rt-good { color: #8ff0c4; } .sc.rt-warn { color: #ffc27a; } .sc.rt-bad { color: #ff9fb0; }
/* calmer hero: the background stays dim behind the text */
.scene { opacity: .32; } .hero { text-shadow: 0 2px 18px rgba(0, 0, 0, .85); }

/* ================= polish: static hero, clear message, fitting header, footer ================= */
.scene, .banner.scene, .bg-fade, .hero-det { display: none !important; }
body.home { background: radial-gradient(80% 60% at 50% 0%, rgba(227, 169, 92, .09), transparent 70%), var(--bg); }
.nav-row { max-width: 1000px; }
.pillnav { gap: 2px; flex-wrap: nowrap; }
.pillnav a { padding: 8px 13px; font-size: 14.5px; white-space: nowrap; }
@media (max-width: 860px) { .pillnav { display: none; } }
.stage { height: auto !important; min-height: 0 !important; padding: clamp(110px, 15vh, 150px) 16px 40px; }
.hero { max-width: 860px; }
.kicker { display: flex; justify-content: center; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 18px; font: 600 13px var(--mono); color: var(--muted); letter-spacing: .04em; }
.kicker .kw { font-family: var(--font-display); font-size: 16px; color: #fff; letter-spacing: .08em; } .kicker .kw em { font-style: normal; color: #e3a95c; }
.stage .headline { font-family: var(--font-sans) !important; font-weight: 800 !important; font-size: clamp(36px, 5.6vw, 66px) !important; line-height: 1.04 !important;
  letter-spacing: -.02em !important; margin: 0 0 16px; color: #fff; }
.stage .headline .line { display: inline; }
.stage .sub { max-width: 640px; margin: 0 auto 26px; font-size: clamp(16px, 1.6vw, 19px); color: var(--soft); }
.tries .chip { font-family: var(--mono); }
.just { width: 100%; max-width: 1180px; margin: 40px auto 0; }
.just-h { display: flex; align-items: center; gap: 8px; font: 600 13px var(--mono); color: var(--muted); letter-spacing: .06em; text-transform: uppercase; margin-bottom: 10px; }
.just-row { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.jc { display: grid; gap: 8px; padding: 12px; border-radius: 14px; border: 1px solid var(--line-2); background: rgba(24, 18, 12, .75); text-decoration: none; color: inherit; min-width: 0; }
.jc:hover { border-color: rgba(227, 169, 92, .55); }
.jc-top { display: flex; align-items: center; gap: 8px; min-width: 0; } .jc-top img, .jc-ph { width: 28px; height: 28px; border-radius: 8px; flex: none; }
.jc-ph { display: grid; place-items: center; background: #2a2016; color: #fff; font-weight: 700; }
.jc-top b { color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .jc-top i { margin-left: auto; font: 11px var(--mono); color: var(--muted); font-style: normal; }
.jc-rt { display: flex; justify-content: space-between; gap: 6px; font: 700 10.5px var(--mono); letter-spacing: .02em; padding: 5px 7px; border-radius: 7px; }
.jc-rt em { font-style: normal; }
.jc-rt.rt-good { background: rgba(63, 207, 142, .12); color: #8ff0c4; } .jc-rt.rt-warn { background: rgba(255, 179, 95, .12); color: #ffc27a; }
.jc-rt.rt-bad { background: rgba(255, 95, 122, .13); color: #ff9fb0; } .jc-rt.rt-info { background: rgba(255, 255, 255, .06); color: #ddd; }
.jc-why { font-size: 12.5px; color: var(--soft); line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 1100px) { .just-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .just-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
body.home .ticker { position: relative !important; bottom: auto !important; }
/* footer */
.foot { padding-top: 0; }
.foot-ticker { margin: 0 0 36px; max-width: none; }
.foot-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 28px; padding-bottom: 36px; }
.foot-about p { margin: 12px 0 0; color: var(--muted); font-size: 14px; max-width: 380px; }
.foot-col { display: grid; gap: 8px; align-content: start; font-size: 14px; } .foot-col b { color: #fff; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; margin-bottom: 4px; }
.foot-col a { color: var(--soft); text-decoration: none; } .foot-col a:hover { color: #fff; }
@media (max-width: 760px) { .foot-grid { grid-template-columns: 1fr 1fr; } .foot-about { grid-column: 1 / -1; } }
.pillnav { max-width: none !important; }
body.home > .ticker { margin-top: 84px !important; }
body.home .stage { padding-top: 56px !important; }
.pillnav { flex: 0 1 auto !important; width: auto !important; justify-content: center; }
.foot .foot-grid { display: grid !important; grid-template-columns: 1.6fr 1fr 1fr 1fr; align-items: start; }
.foot .foot-col { display: grid !important; gap: 8px; justify-content: start; flex-direction: column; }
@media (max-width: 760px) { .foot .foot-grid { grid-template-columns: 1fr 1fr; } }

/* ================= clean layout (uxento-style calm: space, one accent, few elements) ================= */
body.home { background: radial-gradient(70% 50% at 50% -5%, rgba(227, 169, 92, .10), transparent 70%), #080706; }
body { background-color: #080706; }
.nav, body.home .nav { position: sticky !important; top: 0; z-index: 30; padding: 0 !important; background: rgba(8, 7, 6, .82); backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255, 255, 255, .06); }
.nav-row { max-width: 1180px !important; height: 64px; margin: 0 auto; padding: 0 24px; justify-content: space-between !important; gap: 24px; animation: none; }
.brandmark { display: flex; align-items: center; gap: 10px; text-decoration: none; color: #fff; font: 700 17px var(--font-sans); letter-spacing: -.01em; }
.brandmark img { width: 30px; height: 30px; border-radius: 50%; image-rendering: pixelated; }
.toplinks { display: flex; gap: 26px; margin-left: auto; }
.toplinks a { color: #a49b8d; text-decoration: none; font-size: 14.5px; font-weight: 500; }
.toplinks a:hover, .toplinks a[aria-current] { color: #fff; }
.topcta { padding: 8px 14px; border-radius: 10px; background: #e3a95c; color: #140e07 !important; font-weight: 700; font-size: 14px; text-decoration: none; white-space: nowrap; }
.topcta:hover { background: #f0bd78; }
.logo, .pillnav { display: none !important; }
@media (max-width: 860px) { .toplinks, .topcta { display: none; } .burger { display: inline-flex; } }
@media (min-width: 861px) { .burger { display: none !important; } }
/* hero */
.stage, body.home .stage { padding: clamp(72px, 12vh, 120px) 20px 64px !important; }
.hero { max-width: 820px; margin: 0 auto; text-align: center; }
.badge { display: inline-block; margin: 0 0 22px; padding: 6px 12px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .1); color: #b9b0a2; font-size: 13px; }
.stage .headline { font-size: clamp(38px, 6vw, 72px) !important; line-height: 1.04 !important; letter-spacing: -.03em !important; margin: 0 0 18px !important; }
.hl-accent { color: #e3a95c; }
.stage .sub { max-width: 600px !important; margin: 0 auto 30px !important; font-size: 18px !important; color: #b9b0a2 !important; line-height: 1.55; }
.cta form { box-shadow: none !important; border: 1px solid rgba(255, 255, 255, .12) !important; background: #12100d !important; }
.cta.pulse, .cta { animation: none !important; }
.tries { justify-content: center; margin-top: 14px; }
.numbers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 56px auto 0; max-width: 820px;
  border-top: 1px solid rgba(255, 255, 255, .07); padding-top: 28px; }
.numbers div { display: grid; gap: 4px; } .numbers b { font: 700 26px var(--font-sans); color: #fff; letter-spacing: -.01em; }
.numbers span { font-size: 13px; color: #8f8778; }
@media (max-width: 640px) { .numbers { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 22px; } }
/* sections */
.section { padding: 56px 0; border-top: 1px solid rgba(255, 255, 255, .05); }
.section-h { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 20px; }
.section-h h2 { margin: 0; font: 700 24px var(--font-sans); color: #fff; letter-spacing: -.01em; }
.section-h a { color: #e3a95c; text-decoration: none; font-size: 14px; }
.just-row { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 14px !important; }
.jc { background: #100e0b !important; border: 1px solid rgba(255, 255, 255, .07) !important; border-radius: 16px !important; padding: 16px !important; }
.feat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fcard { padding: 22px; border-radius: 16px; background: #100e0b; border: 1px solid rgba(255, 255, 255, .07); }
.fcard h3 { margin: 14px 0 8px; font: 700 17px var(--font-sans); color: #fff; }
.fcard p { margin: 0; color: #a49b8d; font-size: 14.5px; line-height: 1.55; }
.f-ico { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: rgba(227, 169, 92, .12); color: #e3a95c; }
@media (max-width: 1000px) { .feat-grid, .just-row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 560px) { .feat-grid, .just-row { grid-template-columns: 1fr !important; } }
.closing { text-align: center; max-width: 720px; } .closing h2 { font: 700 30px var(--font-sans); color: #fff; margin: 0 0 12px; letter-spacing: -.02em; }
.closing p { color: #a49b8d; font-size: 16px; } .closing a { color: #e3a95c; text-decoration: none; }
/* footer stays calm too */
.foot { border-top: 1px solid rgba(255, 255, 255, .06); background: #080706; }
.numbers { gap: 18px !important; text-align: center; } .numbers span { line-height: 1.3; }

/* ================= Pulse (Axiom-style live board) ================= */
body.pulse-page { background: #0a0a0b; }
.pulse { padding: 14px 16px 16px; }
.pulse-bar { display: flex; align-items: baseline; gap: 14px; margin: 0 0 12px; flex-wrap: wrap; }
.pulse-bar h1 { margin: 0; font: 700 22px var(--font-sans); color: #fff; }
.pulse-live { display: inline-flex; align-items: center; gap: 6px; font: 600 12px var(--mono); color: #8ff0c4; }
.pulse-legend { margin-left: auto; font-size: 12px; color: #6f685d; }
.pulse-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 1150px) { .pulse-cols { grid-template-columns: 1fr; } }
.pcol { border: 1px solid rgba(255, 255, 255, .07); border-radius: 12px; background: #0f0f11; display: flex; flex-direction: column; min-width: 0;
  height: calc(100vh - 150px); min-height: 520px; }
.pcol header { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid rgba(255, 255, 255, .07); }
.pcol h2 { margin: 0; font: 700 15px var(--font-sans); color: #fff; white-space: nowrap; }
.pcol input { margin-left: auto; width: 100%; max-width: 220px; padding: 6px 10px; border-radius: 8px; border: 1px solid rgba(255, 255, 255, .08); background: #141417;
  color: #fff; font-size: 12.5px; }
.pcards { overflow-y: auto; flex: 1; } .pad { padding: 14px; }
.pc { display: grid; grid-template-columns: 58px minmax(0, 1fr) 132px; gap: 10px; padding: 10px 12px; border-bottom: 1px solid rgba(255, 255, 255, .05);
  text-decoration: none; color: inherit; align-items: center; }
.pc:hover { background: rgba(255, 255, 255, .03); }
.pc-logo { position: relative; width: 58px; height: 58px; border-radius: 10px; overflow: hidden; background: #1a1a1d; display: grid; place-items: center; }
.pc-logo img { width: 100%; height: 100%; object-fit: cover; } .pc-logo b { font: 700 22px var(--font-sans); color: #fff; }
.pc-logo em { position: absolute; left: 0; right: 0; bottom: 0; font: 700 9px var(--mono); font-style: normal; text-align: center; background: rgba(0, 0, 0, .65); color: #ddd; }
.pc-mid { display: grid; gap: 4px; min-width: 0; }
.pc-l1 { display: flex; gap: 6px; align-items: baseline; min-width: 0; } .pc-l1 b { color: #fff; font-size: 15px; white-space: nowrap; }
.pc-name { color: #8e877c; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pc-l2 { display: flex; gap: 8px; align-items: center; font-size: 12px; color: #8e877c; flex-wrap: wrap; }
.pc-age { color: #8ff0c4; font-family: var(--mono); } .pc-soc { font: 600 10.5px var(--mono); color: #cfc7b9; padding: 1px 5px; border-radius: 5px; background: rgba(255, 255, 255, .06); }
.pc-badge { font: 700 10.5px var(--mono); padding: 1px 6px; border-radius: 5px; background: rgba(255, 255, 255, .07); color: #cfc7b9; }
.pc-badge.bad { background: rgba(255, 95, 122, .14); color: #ff9fb0; }
.pc-l3 { display: flex; gap: 10px; flex-wrap: wrap; font: 600 11.5px var(--mono); }
.pm i { font-style: normal; color: #6f685d; margin-right: 3px; } .pm.ok { color: #6fdca2; } .pm.bad { color: #ff8a9c; } .pm.na { color: #4d4840; }
.pc-right { display: grid; gap: 6px; justify-items: end; text-align: right; }
.pc-rt { display: inline-grid; justify-items: end; padding: 4px 8px; border-radius: 8px; border: 1px solid; min-width: 96px; }
.pc-rt b { font: 800 16px var(--mono); line-height: 1.1; } .pc-rt i { font: 600 9.5px var(--mono); font-style: normal; text-transform: uppercase; letter-spacing: .02em; }
.pc-rt.good { color: #8ff0c4; border-color: rgba(63, 207, 142, .35); background: rgba(63, 207, 142, .07); }
.pc-rt.warn { color: #ffc27a; border-color: rgba(255, 179, 95, .35); background: rgba(255, 179, 95, .07); }
.pc-rt.bad { color: #ff9fb0; border-color: rgba(255, 95, 122, .35); background: rgba(255, 95, 122, .08); }
.pc-rt.na { color: #77706a; border-color: rgba(255, 255, 255, .08); }
.pc-mk { display: grid; gap: 1px; font: 12px var(--mono); color: #cfc7b9; } .pc-mk i { font-style: normal; color: #6f685d; } .pc-mk b { color: #fff; }

/* traffic lights */
.light { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; vertical-align: -1px; flex: none; }
.light.big { width: 18px; height: 18px; margin-right: 10px; vertical-align: -3px; }
.l-good { background: #3fcf8e; box-shadow: 0 0 10px rgba(63, 207, 142, .8); } .l-warn { background: #ffc24a; box-shadow: 0 0 10px rgba(255, 194, 74, .75); }
.l-bad { background: #ff4d5e; box-shadow: 0 0 10px rgba(255, 77, 94, .8); } .l-info { background: #6f685d; }
.rt-word { align-items: center !important; } .rt-word b { margin-right: auto; }

/* ================= landing: trending cards ================= */
.wrap.wide { max-width: 1320px; }
.stage, body.home .stage { padding: clamp(48px, 8vh, 80px) 20px 36px !important; }
.stage .headline { font-size: clamp(34px, 4.8vw, 58px) !important; }
.numbers { margin-top: 34px !important; padding-top: 22px !important; }
.trend { padding-top: 28px; }
.trend-h { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; }
.trend-h h2 { margin: 0 8px 0 0; font: 800 26px var(--font-sans); color: #fff; letter-spacing: -.02em; }
.seg { display: inline-flex; align-items: center; gap: 2px; padding: 3px; border-radius: 10px; background: #12100d; border: 1px solid rgba(255, 255, 255, .07); }
.seg span { font-size: 12.5px; color: #6f685d; padding: 0 6px 0 8px; }
.seg button { border: 0; background: transparent; color: #a49b8d; font: 600 13px var(--font-sans); padding: 6px 11px; border-radius: 8px; cursor: pointer; }
.seg button.on { background: #2a2219; color: #fff; } .seg button:hover { color: #fff; }
.trend-more { margin-left: auto; color: #e3a95c; text-decoration: none; font-size: 14px; }
.tgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 1200px) { .tgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 860px) { .tgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .tgrid { grid-template-columns: 1fr; } }
.tc { display: grid; gap: 4px; padding: 18px; border-radius: 18px; background: linear-gradient(160deg, #14110d, #0d0b09); border: 1px solid rgba(255, 255, 255, .07);
  text-decoration: none; color: inherit; transition: border-color .15s, transform .15s; }
.tc:hover { border-color: rgba(227, 169, 92, .45); transform: translateY(-2px); }
.tc-top { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.tc-logo { width: 46px; height: 46px; border-radius: 50%; overflow: hidden; background: #1d1813; display: grid; place-items: center; flex: none; }
.tc-logo img { width: 100%; height: 100%; object-fit: cover; } .tc-logo b { font: 800 20px var(--font-sans); color: #fff; }
.tc-chain { font: 700 10.5px var(--mono); color: #a49b8d; padding: 2px 6px; border-radius: 6px; background: rgba(255, 255, 255, .06); }
.tc-light { margin-left: auto; display: inline-flex; align-items: center; padding: 5px 10px; border-radius: 999px; border: 1px solid; }
.tc-light b { font: 800 15px var(--mono); }
.tc-light.rt-good { color: #8ff0c4; border-color: rgba(63, 207, 142, .4); } .tc-light.rt-warn { color: #ffd27a; border-color: rgba(255, 194, 74, .4); }
.tc-light.rt-bad { color: #ff9fa9; border-color: rgba(255, 77, 94, .45); } .tc-light.rt-info { color: #8e877c; border-color: rgba(255, 255, 255, .1); }
.tc-sym { font: 700 14px var(--mono); color: #e3a95c; } .tc-name { color: #8e877c; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tc-mc { font: 800 32px var(--font-sans); color: #fff; letter-spacing: -.02em; margin: 4px 0 2px; }
.tc-meta { font-size: 12.5px; color: #8e877c; } .tc-crew { color: #ff9fa9; font-weight: 700; }
.tc-facts { display: flex; gap: 12px; font: 600 12px var(--mono); margin-top: 4px; }
.tf i { font-style: normal; color: #6f685d; margin-right: 3px; } .tf.ok { color: #6fdca2; } .tf.bad { color: #ff8a9c; } .tf.na { color: #4d4840; }
.tc-foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, .06); }
.tc-vol { font: 13px var(--mono); color: #ddd; white-space: nowrap; } .tc-vol i { font-style: normal; color: #6f685d; }
.tc-spark { width: 110px; height: 32px; flex: none; } .tc-spark.up polyline { stroke: #3fcf8e; } .tc-spark.down polyline { stroke: #ff4d5e; }

.stage, body.home .stage { padding: 36px 20px 8px !important; }
.badge { margin-bottom: 14px; }
.stage .headline { font-size: clamp(30px, 3.8vw, 46px) !important; margin-bottom: 12px !important; }
.stage .sub { font-size: 16px !important; margin-bottom: 20px !important; }
.numline { margin: 16px 0 0; font: 12.5px var(--mono); color: #6f685d; }
.trend { padding-top: 18px; border-top: 0; }
.tc { overflow: hidden; } .tc-foot { overflow: hidden; } .tc-spark { width: 96px; max-width: 40%; }
