:root{--ink:#0b0a0d;--ink2:#141217;--red:#c3242b;--red2:#7a1116;--gold:#e8b84a;--bone:#efe6d2;--mute:#9a8f86;--line:#2a2228}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--bone);font-family:"JetBrains Mono",monospace;line-height:1.6;
background-image:radial-gradient(circle at 50% -10%,rgba(195,36,43,.28),transparent 55%),repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0 1px,transparent 1px 4px)}
body.zh{font-family:"Noto Sans SC","JetBrains Mono",sans-serif}
a{color:var(--gold)}
.kj{font-family:"Noto Serif JP",serif;font-weight:900;color:var(--red);margin-left:.3em}
.kj.big{font-size:.8em;vertical-align:.08em}
.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:20px;justify-content:space-between;padding:12px 28px;background:rgba(11,10,13,.92);backdrop-filter:blur(6px);border-bottom:3px solid var(--red)}
.logo{display:flex;align-items:center;gap:10px;font-family:"Press Start 2P";font-size:14px;color:var(--gold);text-decoration:none}
.logo img{width:32px;height:32px;image-rendering:pixelated;border:2px solid var(--gold)}
.nav nav{display:flex;gap:18px;flex-wrap:wrap}.nav nav a{color:var(--bone);text-decoration:none;font-size:12px;letter-spacing:.1em}.nav nav a:hover{color:var(--red)}
.lang{display:flex;gap:6px;align-items:center}.lang button{background:none;border:1px solid var(--line);color:var(--mute);padding:4px 8px;cursor:pointer;font:inherit;font-size:12px}
.lang button.on{color:var(--ink);background:var(--gold);border-color:var(--gold)}
main{max-width:1180px;margin:0 auto;padding:0 24px}
.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;padding:64px 0 48px}
.art-frame{border:6px solid var(--red);box-shadow:10px 10px 0 var(--gold);background:#000;aspect-ratio:1}
.art-frame img{width:100%;height:100%;display:block;image-rendering:pixelated}
.tag{margin-top:22px;font-size:11px;color:var(--mute);letter-spacing:.15em}
.kicker{font-size:11px;letter-spacing:.2em;color:var(--red);margin:0 0 10px}
h1{font-family:"Press Start 2P";font-size:clamp(40px,7vw,78px);margin:0 0 18px;color:var(--gold);text-shadow:6px 6px 0 var(--red2);line-height:1.1}
h2{font-family:"Press Start 2P";font-size:clamp(18px,2.6vw,26px);color:var(--gold);margin:0 0 18px;line-height:1.4}
body.zh h2,body.zh h3{font-family:"Noto Sans SC",sans-serif;font-weight:700}
.lead{color:#cfc5b8;max-width:62ch}
.progress{height:16px;border:2px solid var(--gold);background:#1a1418;margin-top:26px}.bar{height:100%;width:0;background:repeating-linear-gradient(45deg,var(--red) 0 8px,#a51c22 8px 16px);transition:width .6s}
.minted{margin-top:8px;font-size:14px}.minted b{color:var(--gold);font-size:20px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0 10px}
.stats div{border:2px solid var(--line);background:var(--ink2);padding:10px}.stats span{display:block;font-size:10px;color:var(--mute);letter-spacing:.12em}
.stats b{font-family:"Press Start 2P";font-size:15px;color:var(--bone)}.stats b.free{color:var(--gold)}
.fee{font-size:12px;color:var(--mute);margin:6px 0 16px}
.state{display:inline-block;font-family:"Press Start 2P";font-size:11px;padding:10px 14px;border:2px solid var(--mute);color:var(--mute);margin-bottom:18px}
.state.live{border-color:#3ddc84;color:#3ddc84}.state.soon{border-color:var(--gold);color:var(--gold)}.state.sold{border-color:var(--red);color:var(--red)}
body.zh .state{font-family:"Noto Sans SC";font-size:14px;font-weight:700}
.btn{display:inline-block;background:var(--red);color:var(--bone);border:0;font-family:"Press Start 2P";font-size:11px;padding:14px 18px;cursor:pointer;text-decoration:none;box-shadow:4px 4px 0 var(--gold)}
.btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--gold)}.btn.big{display:block;text-align:center;font-size:13px;padding:18px}.btn.sm{padding:10px 12px}
body.zh .btn{font-family:"Noto Sans SC";font-weight:700;font-size:14px}
.block{padding:56px 0;border-top:2px dashed var(--line)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{border:2px solid var(--line);background:var(--ink2);padding:22px;position:relative}
.step i{font-style:normal;font-family:"Noto Serif JP",serif;font-weight:900;font-size:34px;color:var(--red)}
.step h3{font-family:"Press Start 2P";font-size:12px;color:var(--gold);line-height:1.6}.step p{color:#cfc5b8;font-size:13px;margin:0}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:20px}
.sub{font-family:"Press Start 2P";font-size:11px;color:var(--red);letter-spacing:.05em}.sub.mt{margin-top:28px}
.params{width:100%;border-collapse:collapse;font-size:13px}.params td{border-bottom:1px solid var(--line);padding:9px 6px;vertical-align:top}.params td:first-child{color:var(--mute);width:34%}
code{color:var(--gold);word-break:break-all}
.copy{background:none;border:1px solid var(--gold);color:var(--gold);font:inherit;font-size:10px;padding:2px 6px;cursor:pointer;margin-left:4px}
.prompt{background:#050406;border:2px solid var(--red);padding:16px;white-space:pre-wrap;font-size:12px;color:#e9dfcf;margin:0 0 12px;max-height:420px;overflow:auto}
.check{display:flex;gap:8px}.check input{flex:1;background:#050406;border:2px solid var(--line);color:var(--bone);font:inherit;padding:10px}
.status{font-size:13px}.status.err{color:#ff6b6b}.status.ok{color:#3ddc84}
.grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}
figure{margin:0;border:2px solid var(--line);background:#000}figure img{width:100%;display:block;image-rendering:pixelated}
figcaption{font-size:11px;padding:4px 6px;color:var(--mute);background:var(--ink2)}
.empty{grid-column:1/-1;color:var(--mute)}
.traits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.trait{border:2px solid var(--line);background:var(--ink2);padding:12px;font-size:12px}
.trait h4{font-family:"Press Start 2P";font-size:10px;color:var(--gold);margin:0 0 8px}
.trait div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dotted #2a2228;padding:2px 0}.trait b{font-weight:400}.trait span{color:var(--mute)}
.soon-wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.soon{border:3px solid var(--line);padding:30px;text-align:center;background:linear-gradient(180deg,var(--ink2),#0e0c10);position:relative}
.lock{font-size:32px}.pill{display:inline-block;margin-top:10px;border:2px solid var(--gold);color:var(--gold);padding:8px 14px;font-family:"Press Start 2P";font-size:11px}
body.zh .pill{font-family:"Noto Sans SC";font-weight:700;font-size:14px}
.rules{padding-left:20px}.rules li{margin:8px 0}
details{border:2px solid var(--line);margin:10px 0;padding:12px 16px;background:var(--ink2)}summary{cursor:pointer;color:var(--gold)}
footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:26px 28px;border-top:3px solid var(--red);font-size:12px;color:var(--mute);margin-top:40px}
.socials a{margin-left:12px}
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--gold);color:var(--ink);padding:10px 16px;font-family:"Press Start 2P";font-size:11px;transition:.25s}.toast.show{transform:translateX(-50%) translateY(0)}
@media (max-width:900px){.hero,.cols,.soon-wrap{grid-template-columns:1fr}.grid{grid-template-columns:repeat(4,1fr)}.traits{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.nav nav{display:none}.stats{grid-template-columns:repeat(2,1fr)}}

figure[data-tid]{cursor:pointer}figure[data-tid]:hover{border-color:#e63946}
.mytokens{display:grid;gap:14px;margin-top:14px}
.tcard{display:flex;gap:14px;border:2px solid var(--line);background:#0b0b0d;padding:10px;align-items:flex-start}
.tcard img{width:150px;height:150px;image-rendering:pixelated;border:2px solid var(--line);flex:none}
.tinfo{flex:1;min-width:0}.tinfo h4{margin:0 0 6px}.tinfo a{font-size:12px;opacity:.8}
.tier{display:inline-block;color:#000;font-weight:700;padding:3px 8px;margin:0 0 8px;font-size:12px}
.trows{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12px;margin-bottom:6px}.trows div{display:flex;justify-content:space-between;gap:6px;border-bottom:1px dashed #333}.trows span{opacity:.6}
.tmodal{position:fixed;inset:0;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;z-index:99;padding:16px}.tmodal.show{display:flex}
.tpanel{position:relative;max-width:560px;width:100%}.tclose{position:absolute;right:-6px;top:-34px;background:none;border:0;color:#fff;font-size:28px;cursor:pointer}
@media(max-width:560px){.tcard{flex-direction:column}.tcard img{width:100%;height:auto}.trows{grid-template-columns:1fr}}
