/* night street, sodium lamp light */
:root{
  --night:#14151c; --wall:#1b1d27; --card:#1f2230; --ink:#eeeae1; --dim:#9895a2;
  --line:#2c2f3d; --lamp:#f5c542; --lamp-ink:#1b1606; --danger:#ff6b5e; --ok:#6fd08c;
  --display:"Silkscreen",ui-monospace,monospace; --body:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{margin:0;background:var(--night);color:var(--ink);font:15px/1.55 var(--body)}
a{color:inherit;text-decoration:none}
button,select,input{font:inherit;color:var(--ink)}
.top{display:flex;align-items:center;gap:14px;padding:0 18px;height:58px;border-bottom:1px solid var(--line);
  position:sticky;top:0;background:var(--night);z-index:20}
.brand{display:flex;align-items:center;gap:10px;font:400 15px var(--display);letter-spacing:.04em;white-space:nowrap}
.logo{width:30px;height:30px;image-rendering:pixelated;border-radius:4px}
.tabs{display:flex;gap:2px;margin-left:6px;min-width:0}
.tabs a{padding:7px 11px;color:var(--dim);border-radius:6px}
.tabs a.on,.tabs a:hover{color:var(--ink);background:var(--card)}
.right{margin-left:auto;display:flex;align-items:center;gap:6px}
.ext{padding:6px 9px;color:var(--dim);border:1px solid var(--line);border-radius:6px;font-size:13px}
.ext:hover{color:var(--ink)}
button{background:var(--card);border:1px solid var(--line);border-radius:7px;padding:8px 13px;cursor:pointer}
button:hover:not(:disabled){border-color:#454a5e}
button:disabled{opacity:.45;cursor:not-allowed}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--lamp);outline-offset:2px}
.big{background:var(--lamp);color:var(--lamp-ink);border-color:var(--lamp);font-weight:600;padding:11px 20px}
.big:hover:not(:disabled){filter:brightness(1.07)}
.ticker{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap;padding:9px 18px;
  border-bottom:1px solid var(--line);background:var(--wall);font-size:13.5px;color:var(--dim)}
.ticker b{color:var(--ink);font-variant-numeric:tabular-nums}
.ticker .tag{font:400 11px var(--display);letter-spacing:.12em;color:var(--lamp)}
.sep{opacity:.4}
main{max-width:1080px;margin:0 auto;padding:32px 18px 110px}
section{display:none} section.on{display:block}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:34px;align-items:center;margin-bottom:30px}
h1{font:400 clamp(34px,6vw,58px)/1.02 var(--display);margin:0 0 .45em;letter-spacing:.01em;text-wrap:balance}
h2{font:400 26px var(--display);margin:0 0 .45em}
.lede{color:var(--dim);max-width:62ch;margin:0 0 18px}
.lede b,.rules b{color:var(--ink);font-weight:600}
.prize{margin:4px 0 22px;padding:16px 18px;border:2px solid var(--lamp);border-radius:10px;
  background:linear-gradient(0deg,#2a2412,#221f14);display:grid;gap:5px;max-width:560px}
.prize.wide{max-width:none;margin-top:6px}
.prize .pk{font:400 clamp(15px,2.4vw,20px)/1.2 var(--display);color:var(--lamp);letter-spacing:.02em;text-transform:uppercase}
.prize .pv{font-size:22px;font-variant-numeric:tabular-nums}
.prize .pv b{font-size:30px;color:var(--ink)}
.prize .pv .usd{font:400 clamp(34px,6vw,50px)/1 var(--display);color:var(--lamp);letter-spacing:.01em}
.prize .pv span{color:var(--dim);font-size:16px;margin-left:6px}
.prize .pw{font:400 14px var(--display);color:var(--ink);letter-spacing:.03em;text-transform:uppercase}
.prize .ps{color:var(--dim);font-size:13.5px}
.prize .ps b{color:var(--ink)}
.cas{display:grid;gap:6px;margin:0 0 20px;max-width:560px}
.ca{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 6px 6px 12px;min-width:0}
.cak{font:400 11px var(--display);letter-spacing:.08em;color:var(--lamp);white-space:nowrap}
.ca code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 13px var(--body);color:var(--ink)}
.ca button{padding:5px 10px;font-size:12.5px}
.rules{margin:0;padding:0;list-style:none;display:grid;gap:7px;color:var(--dim);font-size:14px}
.rules li{padding-left:18px;position:relative}
.rules li::before{content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;background:var(--lamp)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.gallery img{width:100%;aspect-ratio:1;image-rendering:pixelated;border-radius:6px;display:block}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px}
.k{font:400 11px var(--display);letter-spacing:.1em;color:var(--dim);text-transform:uppercase}
.v{font-size:27px;margin:5px 0 3px;font-variant-numeric:tabular-nums}
.s{color:var(--dim);font-size:12.5px}
.bar{height:5px;border:1px solid var(--line);border-radius:3px;overflow:hidden;margin:7px 0 5px}
.bar i{display:block;height:100%;background:var(--lamp);width:0}
.mintrow{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.paid{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:9px;padding:6px 8px 6px 12px}
.paid input{accent-color:var(--lamp);width:140px}
.swap{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;max-width:760px}
.side{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:10px;min-width:0}
.sidehead{display:flex;justify-content:space-between;gap:8px;color:var(--dim);font-size:13px}
.sidehead b{font:400 15px var(--display);color:var(--ink);letter-spacing:.04em}
.row{display:flex;align-items:center;gap:8px;background:var(--wall);border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.row input{flex:1;min-width:0;background:none;border:0;font-size:20px;font-variant-numeric:tabular-nums}
.row input:focus{outline:none}
.row span{color:var(--dim);font-size:13px}
.row button{padding:4px 8px;font-size:12px}
.quote{color:var(--dim);font-size:13.5px;min-height:1.3em}
.quote b{color:var(--ink)}
.note{color:var(--dim);font-size:13px;margin-top:12px;min-height:1.2em}
.rowbtns{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.kitties{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:9px}
.kitty{background:var(--card);border:1px solid var(--line);border-radius:9px;overflow:hidden;cursor:pointer;position:relative}
.kitty img{display:block;width:100%;aspect-ratio:1;image-rendering:pixelated}
.kitty .id{padding:5px 7px;font-size:12px;color:var(--dim);display:flex;justify-content:space-between;gap:6px;font-variant-numeric:tabular-nums}
.kitty.sel{border-color:var(--lamp);box-shadow:0 0 0 1px var(--lamp)}
.kitty.hungry .id .t{color:var(--danger)}
.kitty.low .id .t{color:var(--lamp)}
.kitty .flag{position:absolute;top:5px;right:5px;font:400 9px var(--display);letter-spacing:.08em;padding:3px 5px;border-radius:4px;background:#000b;color:var(--danger)}
.sticky{position:fixed;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;
  padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));background:var(--wall);border-top:1px solid var(--line);z-index:15}
.sticky select{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:6px 8px}
footer{border-top:1px solid var(--line);padding:16px 18px;color:var(--dim);font-size:12px;display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap}
#addrs{display:flex;gap:10px;flex-wrap:wrap}
#addrs a{text-decoration:underline}
@media (max-width:820px){ .hero{grid-template-columns:1fr} .gallery{grid-template-columns:repeat(4,1fr)} }
@media (max-width:760px){
  .top{padding:0 10px;gap:4px} .brand .bt{display:none} .tabs{margin-left:2px;gap:0}
  .tabs a{padding:6px 7px;font-size:13px} .right{gap:2px} .ext{padding:4px 6px;font-size:12px}
  #linkChart{display:none} #connect{padding:6px 10px;font-size:13px;white-space:nowrap}
  main{padding:24px 14px 120px} .gallery{grid-template-columns:repeat(3,1fr)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* wallet picker */
.wpick{background:var(--wall);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:16px;
  width:min(340px,calc(100vw - 32px))}
.wpick::backdrop{background:rgba(8,9,14,.7)}
.whead{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font:400 15px var(--display)}
.wx{padding:2px 9px;font-size:18px;line-height:1}
.wopt{display:flex;align-items:center;gap:10px;width:100%;margin-top:6px;text-align:left;padding:10px 12px}
.wopt img,.wico{width:26px;height:26px;border-radius:6px;flex:none;background:var(--card)}
.wnow{margin:0 0 8px;color:var(--dim)} .wnow code{color:var(--ink)}
.wout{width:100%;border-color:var(--danger);color:var(--danger)}
.wsub{margin:12px 0 2px;color:var(--dim);font-size:13px}
