/* base structure shared by every meme launchpad; each site overrides the tokens and adds its own layer */
:root{--max:1120px;--r:20px;--r-sm:12px;--r-xs:8px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--font-ui);-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit}
img{display:block;max-width:100%}
h1,h2,h3{font-family:var(--font-disp);font-weight:600;letter-spacing:-.035em;line-height:1.05;margin:0;text-wrap:balance}
p{margin:0}
.mono{font-family:var(--font-mono);font-size:.92em}
.dim{color:var(--muted)}
.small{font-size:13px}
.wrap{width:min(var(--max),100% - 40px);margin-inline:auto}
.kicker{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lead{color:var(--ink2);font-size:18px;max-width:60ch}
.empty{color:var(--muted);padding:24px 0}
[hidden]{display:none!important}
a,button,[role=button],[onclick],summary,label,.ca,[data-copy-ca],[data-censor]{cursor:pointer}
img.mark{display:block;object-fit:contain}
.nf{min-height:62vh;display:grid;place-items:center;text-align:center;padding:64px 0}
.nf-in{display:grid;justify-items:center;gap:18px;max-width:520px}
.nf-in img{width:200px;height:200px;object-fit:contain}
.nf-in h1{font-size:clamp(34px,5vw,56px)}
.nf-in p{color:var(--ink2);font-size:18px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font:600 15px/1 var(--font-ui);text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .12s var(--ease),background .18s var(--ease),opacity .18s}
.btn:hover{filter:brightness(1.06)}
.btn:active{transform:translateY(1px)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line2)}
.btn-lg{min-height:52px;padding:0 26px;font-size:16px}
.lnk{color:var(--accent-text,var(--accent));text-decoration:none;font-weight:600}
.lnk:hover{text-decoration:underline}

/* censored user images */
.nsfw{}
.uncensored .nsfw{filter:none;transform:none}
.noimg{display:block;width:100%;height:100%;background:var(--panel2)}

/* ticker */
.ticker{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ticker-track{display:flex;width:max-content;animation:marquee calc(var(--n,6) * 6s) linear infinite}
.ticker:has(.empty){mask-image:none}
.ticker .empty{width:min(var(--max),100% - 40px);margin-inline:auto}
.ticker:hover .ticker-track{animation-play-state:paused}
.ticker-row{display:flex;gap:10px;padding-right:10px}
@keyframes marquee{to{transform:translateX(-50%)}}
.tick{display:flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;border-radius:999px;border:1px solid var(--line);background:var(--panel);text-decoration:none;white-space:nowrap}
.tick img,.tick .noimg{width:36px;height:36px;border-radius:50%;object-fit:cover;overflow:hidden;flex:none}
.tick>img,.tick>.noimg{clip-path:circle(50%)}
.tick-body{display:grid;line-height:1.25}
.tick-body b{font-size:14px}
.tick-body small{font-family:var(--font-mono);font-size:11px;color:var(--muted)}
.tick-tag{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:999px;border:1px solid var(--line2);color:var(--muted)}

/* table */
.table-wrap{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
th{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--line)}
td{padding:12px 16px;border-bottom:1px solid var(--line)}
tr:last-child td{border-bottom:0}
.r{text-align:right}
.tok{display:flex;align-items:center;gap:12px;text-decoration:none}
.tok img,.tok .noimg{width:34px;height:34px;border-radius:8px;object-fit:cover;flex:none}
.tok>img,.tok>.noimg{clip-path:inset(0 round 8px)}
.tok span{display:grid;line-height:1.25}
.tok small{font-family:var(--font-mono);font-size:11px;color:var(--muted)}

/* panels and forms */
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.page-head{padding:64px 0 28px}
.page-head h1{font-size:clamp(40px,5.4vw,64px)}
.page-head .lead{margin-top:14px}
.launch-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start;padding-bottom:96px}
form.panel{display:grid;gap:18px}
.fld{display:grid;gap:8px}
.fld-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.fld-h b{font-size:14px;font-weight:600}
.fld-h small{font-size:12px;color:var(--muted)}
input,textarea{width:100%;font:inherit;font-size:15px;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:var(--r-sm);padding:12px 14px;outline:none;transition:border-color .15s}
textarea{resize:vertical;min-height:110px}
input:focus,textarea:focus{border-color:var(--accent)}
input::placeholder,textarea::placeholder{color:var(--muted)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}
.affix{display:flex;align-items:stretch;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--field);overflow:hidden}
.affix input{border:0;border-radius:0;background:transparent}
.affix i{font-style:normal;display:grid;place-items:center;padding:0 14px;color:var(--muted);background:var(--panel2);font-weight:600;font-size:14px}
.drop{position:relative;display:flex;align-items:center;gap:16px;padding:14px;border:1px dashed var(--line2);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s,background .15s}
.drop.over,.drop:hover{border-color:var(--accent);background:var(--field)}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.drop span{display:grid;gap:2px}
.drop small{font-size:13px;color:var(--muted)}
.drop-thumb,.pv-img{width:72px;height:72px;border-radius:14px;background:var(--panel2);border:1px solid var(--line);display:grid!important;place-items:center;overflow:hidden;flex:none;font-size:11px;color:var(--muted)}
.drop-thumb img,.pv-img img{width:100%;height:100%;object-fit:cover}
.more summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--ink2)}
.notice{font-size:14px;color:var(--ink2);background:var(--panel2);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px}
.status{font-size:14px;padding:12px 14px;border-radius:var(--r-sm);background:var(--panel2)}
.status[data-kind=err]{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}
.preview{position:sticky;top:88px;display:grid;gap:16px}
.pv-id{display:flex;gap:14px;align-items:center}
.pv-id>span:last-child{display:grid}
.pv-id b{font-size:20px;letter-spacing:-.02em}
.pv-desc{color:var(--ink2);font-size:14px;min-height:40px}
.pv-rows,.tc-rows{display:grid;margin:0;border-top:1px solid var(--line);padding-top:10px}
.pv-rows div,.tc-rows div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:14px}
.pv-rows dt,.tc-rows dt{color:var(--muted)}
.pv-rows dd,.tc-rows dd{margin:0}
.tc-rows a{text-decoration:none}

/* dialog */
.dlg{border:1px solid var(--line2);border-radius:var(--r);background:var(--panel);color:var(--ink);padding:28px;max-width:480px;width:calc(100% - 32px)}
.dlg::backdrop{background:rgb(0 0 0 / .55);backdrop-filter:blur(4px)}
.dlg h2{font-size:26px;margin-bottom:10px}
.dlg>p{color:var(--ink2);margin-bottom:16px}
.chk{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line);font-size:15px;cursor:pointer}
.chk input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--accent);flex:none}
.dlg .small{margin-top:10px}
.dlg-act{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}

/* token result */
.token-wrap{padding:64px 0 96px;display:grid;place-items:center}
.token-card{width:min(640px,100%);display:grid;gap:20px}
.tc-top{display:flex;justify-content:space-between;align-items:center;font-size:13px}
.chip{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:var(--accent);color:var(--accent-ink)}
.tc-id{display:flex;gap:18px;align-items:center}
.tc-id h1{font-size:30px}
.tc-img{width:88px;height:88px;border-radius:18px;overflow:hidden;flex:none;background:var(--panel2)}
.tc-img img{width:100%;height:100%;object-fit:cover}
.tc-note{font-size:14px;color:var(--ink2);background:var(--panel2);border-radius:var(--r-sm);padding:14px 16px}
.tc-act{display:flex;gap:10px;flex-wrap:wrap}

/* docs / prose */
.docs{display:grid;grid-template-columns:220px minmax(0,1fr);gap:56px;padding:56px 0 96px}
.toc{position:sticky;top:88px;align-self:start;display:grid;gap:2px}
.toc a{display:flex;gap:10px;padding:7px 10px;border-radius:8px;text-decoration:none;font-size:14px;color:var(--muted)}
.toc a.on,.toc a:hover{color:var(--ink);background:var(--panel2)}
.prose{max-width:720px}
.prose.narrow{padding:56px 0 96px}
.prose h1{font-size:clamp(40px,5vw,60px);margin-bottom:14px}
.prose section{padding-top:44px;scroll-margin-top:80px}
.prose .num{color:var(--muted);font-size:12px;margin-bottom:6px}
.prose h2{font-size:28px;margin-bottom:12px}
.prose p,.prose li{color:var(--ink2);margin-bottom:12px}
.prose ul,.prose ol{padding-left:20px;margin:0 0 12px}
.prose code{font-family:var(--font-mono);font-size:.9em;background:var(--panel2);padding:2px 6px;border-radius:6px}
.qa{border-top:1px solid var(--line);padding:18px 0}
.qa summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none}
.qa summary::-webkit-details-marker{display:none}
.qa div{color:var(--ink2);margin-top:10px}

@media (max-width:860px){
  .launch-grid,.docs{grid-template-columns:1fr}
  .preview{position:static;order:-1}
  .toc{display:none}
  .row3{grid-template-columns:1fr}
}
@media (max-width:560px){
  .row2{grid-template-columns:1fr}
  .panel{padding:18px}
  .page-head{padding-top:40px}
}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}

/* hold-to-launch button */
.hold-btn{position:relative;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
.hold-btn span{position:relative}
.hold-bar{position:absolute;inset:0;background:rgb(255 255 255 / .35);transform:scaleX(0);transform-origin:0}
.hold-btn.holding{transform:scale(.97)}
.hold-msg{min-height:22px;margin-top:14px;font-weight:600;color:var(--accent)}

/* tap targets and small phones */
[data-nav] a,footer nav a,a.brand{min-height:40px;display:inline-flex;align-items:center}
.more-link{padding:10px 4px}
.dlg-x{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);background:var(--panel2);color:var(--ink);font-size:20px;line-height:1}
.dlg{position:fixed}
@media (max-width:380px){.btn-sm{padding:0 10px;font-size:12px}}
footer nav a{min-width:32px;justify-content:center}
a.brand{min-width:44px}
.censor{min-height:38px}
.btn-sm{flex:none}
@media (max-width:560px){[data-nav] a:nth-child(n+3){display:none}}
@media (max-width:360px){[data-nav] a:nth-child(n+2){display:none}}
[data-nav] a{min-width:40px;justify-content:center}

/* wallet picker */
.wpick{max-width:420px}
.wp-cur{font-size:14px;color:var(--ink2);margin-bottom:10px}
.wp-list{display:grid;gap:8px;margin:14px 0}
.wp-item{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--panel);color:var(--ink);font:600 16px var(--font-ui);text-align:left;transition:border-color .15s,background .15s}
.wp-item:hover{border-color:var(--accent);background:var(--panel2)}
.wp-item:disabled{opacity:.6}
.wp-item img{width:32px;height:32px;border-radius:8px;flex:none}
.wp-dot{width:32px;height:32px;border-radius:8px;background:var(--panel2);flex:none}
.wp-none{color:var(--ink2);margin:14px 0}
.wp-get{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;margin-top:6px}
.wp-get a{color:var(--accent-text,var(--accent));min-height:36px;display:inline-flex;align-items:center}
.wp-off{margin-top:14px;width:100%}
.wp-err{margin-top:10px;color:var(--danger);font-size:14px}
/* explainer video */
.film{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#000;border-radius:var(--r);object-fit:cover}
a[aria-disabled=true]{pointer-events:none;opacity:.4}


/* ---------- Fartlaunch: ink, phosphor gas, amber heat. JetBrains Mono for reading, Martian Mono for display, figlet for the name. */
:root{--bg:#0d0e0b;--panel:#121410;--panel2:#191b16;--field:#0a0b08;--ink:#e8e6da;--ink2:#bebdb3;--muted:#8e9288;--rule:#5b6153;
  --line:rgb(232 230 218 / .12);--line2:rgb(232 230 218 / .26);--accent:#a6e22e;--accent-ink:#0d0e0b;--amber:#f4b942;--danger:#ff6b5b;
  --gas-0:#30352b;--gas-1:#4f5747;--gas-2:#7c8768;--gas-3:#a6e22e;--gas-4:#e9c46a;--gas-5:#f4b942;
  --font-ui:"JetBrains Mono",ui-monospace,monospace;--font-mono:"JetBrains Mono",ui-monospace,monospace;--font-disp:"Martian Mono","JetBrains Mono",ui-monospace,monospace;
  --r:0px;--r-sm:0px;--max:1240px;--g:24px;--hd:64px;color-scheme:dark}
body{font-size:15px;line-height:1.6;letter-spacing:0}
::selection{background:var(--accent);color:var(--accent-ink)}
:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
h1,h2,h3{letter-spacing:0;font-weight:600}
a{color:var(--ink)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.t-col,.wrap{width:min(var(--max),100% - 2*var(--g));margin-inline:auto}
.dim{color:var(--muted)}
.lbl{font:500 11px/1.3 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:1px solid var(--line2);border-bottom-width:2px;background:rgb(232 230 218 / .05);color:var(--ink);font:600 10px/1 var(--font-ui);letter-spacing:0;text-transform:uppercase;flex:none}

/* bracket buttons: the brackets are drawn, so labels that app.js rewrites keep them */
.b,.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 18px;border:1px solid var(--line2);border-radius:0;background:transparent;color:var(--ink);font:500 12px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;box-shadow:none;filter:none;transition:background .15s,color .15s,border-color .15s}
.b::before,.btn::before{content:"[";color:var(--muted);transition:transform .2s var(--ease),color .15s}
.b::after,.btn::after{content:"]";color:var(--muted);transition:transform .2s var(--ease),color .15s}
.b:hover,.btn.ghost:hover{background:var(--ink);border-color:var(--ink);color:var(--bg);filter:none}
.b:hover::before,.btn:hover::before{transform:translateX(-4px);color:inherit}
.b:hover::after,.btn:hover::after{transform:translateX(4px);color:inherit}
.b.solid,.btn{background:var(--ink);border-color:var(--ink);color:var(--bg);font-weight:700}
.b.solid::before,.b.solid::after,.btn::before,.btn::after{color:rgb(13 14 11 / .55)}
.b.solid:hover,.btn:hover{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line2)}
.btn.ghost::before,.btn.ghost::after{color:var(--muted)}
.b.k::before,.b.k::after{content:none}
.b.k kbd{margin-left:-6px}
.b.k:hover kbd{border-color:var(--bg);color:var(--bg);background:transparent}
.btn:disabled,.b:disabled{opacity:.45;cursor:not-allowed}
.btn-lg{min-height:54px;font-size:13px}
/* buy: the one filled green thing, flat */
.b.buy{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}
.b.buy::before,.b.buy::after{color:rgb(13 14 11 / .5)}
.b.buy:hover{background:transparent;color:var(--accent);border-color:var(--accent)}
.b.buy:hover::before,.b.buy:hover::after{color:var(--accent)}
a[data-buy][aria-disabled=true],a[data-dex][aria-disabled=true]{opacity:.72}
/* copy: small square-ish button with a drawn two-sheet icon */
.cp{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0 12px 0 34px;border:1px solid var(--line2);background:transparent;color:var(--ink2);font:500 11px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}
.cp::before,.cp::after{content:"";position:absolute;width:9px;height:11px;border:1.5px solid currentColor}
.cp::before{left:12px;top:calc(50% - 7px)}
.cp::after{left:15px;top:calc(50% - 4px);background:var(--bg)}
.cp:hover{border-color:var(--ink);color:var(--ink)}
[data-dir=up]{color:var(--accent)!important}[data-dir=down]{color:var(--danger)!important}
/* header token chip */
.tk{display:flex;align-items:center;gap:10px;min-height:42px;padding:0 12px;border:1px solid var(--line);font:500 12px/1 var(--font-ui);white-space:nowrap}
.tk-l{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.tk-p{color:var(--ink);font-variant-numeric:tabular-nums}
.tk-c{color:var(--muted);font-size:11px}
/* hero CA row */
.ca-row{pointer-events:auto;display:flex;align-items:center;gap:14px;margin-top:22px;padding:5px 5px 5px 16px;border:1px solid var(--line2);background:var(--bg);max-width:100%}
.ca-v{font:500 13px/1.3 var(--font-mono);color:var(--ink);overflow-wrap:anywhere;text-align:left;min-width:0}
.ca-b{display:flex;gap:6px;flex:none}
.ca-row .b{min-height:44px;font-size:11px;padding:0 14px}
.t-link{background:none;border:0;color:var(--accent);font:600 13px var(--font-ui);padding:8px 2px;min-height:40px;cursor:pointer}
.t-link:disabled{color:var(--muted);cursor:not-allowed}

/* ---------- header */
.hd{position:sticky;top:0;z-index:40;height:var(--hd);background:var(--bg);border-bottom:1px solid var(--line)}
.hd-in{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:0 var(--g)}
.hd-brand{justify-self:start;display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.hd-brand pre{margin:0;font:700 9px/1.05 var(--font-mono);color:var(--ink)}
.hd-brand:hover pre{color:var(--accent)}
.hd-nav{display:flex;gap:22px}
.hd-nav a{display:inline-flex;align-items:center;gap:9px;min-height:44px;text-decoration:none;font:500 11px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--ink2)}
.hd-nav a:hover{color:var(--ink)}
.hd-nav a[aria-current=page]{color:var(--ink)}
.hd-nav a[aria-current=page] kbd{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.hd-act{justify-self:end;display:flex;gap:8px;align-items:center}
.hd-act .b{min-height:42px;padding:0 14px;font-size:11px}
[data-connect]{text-transform:uppercase}

/* ---------- hero: the cloud is the page */
.hero{position:relative;height:clamp(620px,calc(100svh - var(--hd)),980px);overflow:hidden;border-bottom:1px solid var(--line);background:var(--bg)}
.hero canvas,.chamber canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.hero-in{position:absolute;left:0;right:0;bottom:clamp(32px,6vh,64px);display:grid;justify-items:center;text-align:center;pointer-events:none}
.hero-in a,.hero-in button{pointer-events:auto}
.hero-eye{margin-bottom:22px}
.logo{margin:0;line-height:0}
.logo pre{margin:0;font:700 min(20px,(100vw - 48px)/39)/1.06 var(--font-mono);color:var(--ink);text-align:left}
.logo-s,.ft-word-s{display:none}
.hero-sub{margin-top:22px;max-width:48ch;font-size:16px;color:var(--ink2)}
.hero-act{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}

/* ---------- sections */
.sec{padding:clamp(72px,10vw,128px) 0;border-bottom:1px solid var(--line)}
.sh{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:20px;margin-bottom:clamp(28px,4vw,48px)}
.sh-n{font:500 12px/1 var(--font-ui);color:var(--amber);letter-spacing:.1em}
.sh-t{font:600 clamp(24px,3.3vw,44px)/1.05 var(--font-disp);font-stretch:112.5%;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink)}
.sh-d{font:500 11px/1.4 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:right}
.sh-d b{color:var(--accent);font-weight:600}

/* lore */
.lore{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:end}
.lore-q{margin:0}
.lore-q p{font:300 clamp(36px,6.4vw,92px)/.98 var(--font-disp);font-stretch:87.5%;letter-spacing:-.03em;color:var(--ink);text-wrap:balance}
.lore-b{display:grid;gap:14px;justify-items:start;color:var(--ink2);max-width:46ch}
.lore-b q{color:var(--ink)}
.lore-b .b{margin-top:8px}
.lore>*{min-width:0}
.more summary{min-height:44px;display:flex;align-items:center}
.prose p a,.prose li a{padding:10px 0}
.toc a{min-height:44px;align-items:center}

/* press chamber */
.chamber{position:relative;height:clamp(360px,40vw,500px);border:1px solid var(--line);background:var(--field);overflow:hidden;display:grid;place-items:end center;padding-bottom:clamp(28px,5vw,56px)}
.press{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.7em;min-height:64px;padding:0 clamp(22px,3vw,40px);border:1px solid var(--ink);background:var(--bg);color:var(--ink);font:600 clamp(16px,2vw,24px)/1 var(--font-disp);font-stretch:112.5%;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background .12s,color .12s,transform .08s}
.press::before{content:"["}.press::after{content:"]"}
.press:hover{background:var(--ink);color:var(--bg)}
.press:active,.press.hit{transform:translateY(2px)}
.fo{container-type:inline-size;border:1px solid var(--line);border-top:0;padding:18px clamp(16px,2.4vw,28px) 20px;min-height:128px;background:var(--bg)}
.fo-meta{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:baseline;font-size:13px;color:var(--ink2)}
.fo-meta b{font:600 14px/1 var(--font-disp);font-stretch:112.5%;text-transform:uppercase;color:var(--ink);letter-spacing:.04em}
.fo-wave{margin-top:12px;font:500 min(22px,100cqi / 56 / .6)/1.2 var(--font-mono);color:var(--rule);white-space:pre;overflow:hidden}
.fo-wave .on,.twave .on,.pad-w .on,.drv-w .on{color:var(--amber)}
.fo-hist{list-style:none;margin:12px 0 0;padding:10px 0 0;border-top:1px dashed var(--line);display:grid;gap:2px;font-size:12px;color:var(--muted)}
.fo-hist li{display:grid;grid-template-columns:9ch 7ch minmax(0,1fr);gap:12px;white-space:nowrap;overflow:hidden}
.fo-hist .w{overflow:hidden;color:var(--rule)}
.pads-h{display:flex;justify-content:space-between;margin:40px 0 12px}
.pads{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--line)}
.pad{container-type:inline-size;display:grid;gap:18px;align-content:space-between;min-height:112px;padding:16px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;font:inherit;cursor:pointer;transition:background .15s}
.pad:last-child{border-right:0}
.pad-t{display:flex;align-items:center;gap:10px;font:500 12px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase}
.pad-w{font:500 min(14px,100cqi / 22 / .6)/1 var(--font-mono);color:var(--rule);white-space:pre;overflow:hidden}
.pad:hover{background:var(--panel)}
.pad:hover .pad-w{color:var(--muted)}
.pad.hit kbd{background:var(--amber);border-color:var(--amber);color:var(--bg)}

/* launched list */
.list-h,.trow{display:grid;grid-template-columns:72px 12ch minmax(0,1fr) 9ch 28ch 5ch 11ch;gap:16px;align-items:center}
.list-h{padding:0 0 10px;border-bottom:1px solid var(--line2)}
.list-h span{font:500 10px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.list{min-height:120px}
.trow{min-height:60px;padding:6px 0;border-bottom:1px solid var(--line);transition:background .15s}
.trow:hover{background:var(--panel)}
.tplay{justify-self:start;min-height:44px;min-width:56px;padding:0 4px;background:none;border:0;color:var(--accent);font:600 13px var(--font-ui);cursor:pointer;text-align:left}
.tplay:hover{color:var(--ink)}
.tplay.hit{color:var(--amber)}
.tsym{color:var(--ink2);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tname{color:var(--ink);font-weight:500;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:44px;display:flex;align-items:center}
.tname:hover{color:var(--accent)}
.tkind{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.twave{font:500 13px/1 var(--font-mono);color:var(--rule);white-space:pre;overflow:hidden}
.trow .dim{font-size:13px}
.tpump{justify-self:end;min-height:44px;display:inline-flex;align-items:center;color:var(--muted);text-decoration:none;font-size:13px}
.tpump:hover{color:var(--accent)}
.list .empty{padding:28px 0;font-size:14px}

/* film */
.film-f{border:1px solid var(--line);padding:clamp(8px,1vw,14px);background:var(--panel)}
.film{border-radius:0}

/* derive: address -> hash -> params -> sound */
.drv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line)}
.drv-s{position:relative;container-type:inline-size;display:grid;align-content:start;gap:16px;padding:clamp(18px,2.4vw,28px);border-right:1px solid var(--line)}
.drv-s:last-child{border-right:0}
.drv-mint{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}
.drv-s:not(.drv-mint):not(:last-child)::after{content:"->";position:absolute;right:-12px;top:26px;width:24px;text-align:center;background:var(--bg);color:var(--amber);font-size:12px;z-index:1}
.drv-in input{width:100%;min-height:58px;padding:0 16px;border:1px solid var(--line2);background:var(--field);color:var(--ink);font:500 clamp(13px,1.7vw,20px)/1 var(--font-mono);letter-spacing:.02em;border-radius:0}
.drv-in input:focus{border-color:var(--accent)}
.drv-c{font-size:13px;color:var(--muted);max-width:52ch}
.drv-hash{font:300 min(44px,100cqi / 10 / .75)/1 var(--font-disp);font-stretch:87.5%;color:var(--ink);letter-spacing:.02em}
.drv-p{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin:0}
.drv-p div{border-top:1px solid var(--line);padding-top:8px}
.drv-p dt{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.drv-p dd{margin:4px 0 0;font-size:15px;color:var(--ink)}
.drv-w{font:500 min(18px,100cqi / 40 / .6)/1.2 var(--font-mono);color:var(--ink2);white-space:pre;overflow:hidden}
.drv .b{justify-self:start}
.drv.idle .drv-hash,.drv.idle .drv-p,.drv.idle .drv-w{opacity:.3}

/* stats + end */
.sec-stats{border-bottom:0}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--line2);border-bottom:1px solid var(--line)}
.stats div{display:grid;gap:18px;padding:24px clamp(14px,2vw,24px) 28px;border-left:1px solid var(--line)}
.stats div:first-child{border-left:0;padding-left:0}
.stats dd{margin:0;font:300 clamp(40px,6vw,88px)/.9 var(--font-disp);font-stretch:87.5%;letter-spacing:-.03em;color:var(--ink)}
.stats dd[data-count]{color:var(--accent)}
.end{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:clamp(48px,7vw,88px)}
.end p{font:500 clamp(18px,2.2vw,26px)/1.3 var(--font-disp);font-stretch:112.5%;text-transform:uppercase;letter-spacing:-.01em}

/* ---------- footer: giant name + CA bar */
.ft{padding:clamp(56px,8vw,96px) 0 0;border-top:1px solid var(--line)}
.ft-word{margin:0;font:700 calc(min(var(--max),100vw - 2*var(--g)) / 39.3)/1.02 var(--font-mono);color:var(--ink);overflow:hidden;user-select:none}
.cabar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;margin-top:clamp(36px,5vw,56px);padding:16px 20px;border:1px solid var(--line2)}
.cabar-v{font:500 15px/1.3 var(--font-mono);color:var(--ink);overflow-wrap:anywhere}
.cabar-act{display:flex;flex-wrap:wrap;gap:8px}
.cabar-act .b{min-height:44px;font-size:11px;padding:0 14px}
.ft-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;padding:24px 0 40px;font-size:12px;color:var(--ink2)}
.ft-nav{display:flex;gap:6px}
.ft-nav a{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;color:var(--muted);text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:11px}
.ft-nav a:hover{color:var(--accent)}

/* 404 */
.nf-f{padding:clamp(72px,12vw,140px) 0;display:grid;justify-items:center;gap:18px;text-align:center}
.nf-art{margin:0 0 10px;font:700 clamp(14px,2.4vw,22px)/1.05 var(--font-mono);color:var(--ink)}
.nf-f h1{font:600 clamp(26px,4vw,44px)/1 var(--font-disp);font-stretch:112.5%;text-transform:uppercase}

/* ---------- shared pages (launch, token, docs, faq, terms) in the same skin */
.page-head{padding:clamp(48px,7vw,88px) 0 28px}
.page-head h1,.prose h1{font:600 clamp(32px,5vw,64px)/1 var(--font-disp);font-stretch:112.5%;text-transform:uppercase;letter-spacing:-.02em;color:var(--ink)}
.lead{font-size:16px;color:var(--ink2)}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:0;box-shadow:none}
input,textarea,.affix{border:1px solid var(--line2);background:var(--field);border-radius:0;font-family:var(--font-mono)}
input:focus,textarea:focus{border-color:var(--accent)}
.affix input{border:0}
.affix i{background:var(--panel2);font-family:var(--font-mono)}
.fld-h b{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}
.drop{border:1px dashed var(--line2);border-radius:0}
.drop-thumb,.pv-img,.tc-img{border-radius:0}
.kicker{letter-spacing:.16em;color:var(--amber)}
.notice,.status,.tc-note{border-radius:0;border:1px solid var(--line);background:var(--field)}
.pv-id b{font-family:var(--font-disp);font-stretch:112.5%;text-transform:uppercase;font-size:18px}
.dlg{border:1px solid var(--line2);border-radius:0;background:var(--panel)}
.dlg h2{font:600 24px/1.1 var(--font-disp);font-stretch:112.5%;text-transform:uppercase}
.dlg-x{border-radius:0}
.chk input{accent-color:var(--accent)}
.chip{border-radius:0;background:transparent;border:1px solid var(--accent);color:var(--accent)}
.tc-id h1{font:600 28px/1.1 var(--font-disp);font-stretch:112.5%;text-transform:uppercase}
.toc a{border-radius:0;border-left:1px solid var(--line);font-size:13px}
.toc a.on,.toc a:hover{border-left-color:var(--accent);background:transparent;color:var(--ink)}
.toc .mono{color:var(--amber)}
.prose h2{font:600 22px/1.15 var(--font-disp);font-stretch:112.5%;text-transform:uppercase;letter-spacing:-.01em}
.prose .num{color:var(--amber)}
.prose a{color:var(--accent)}
.prose code{border-radius:0}
.qa{border-top:1px solid var(--line)}
.qa summary{font-size:16px;font-weight:500;color:var(--ink);min-height:44px;display:flex;align-items:center}
.wp-item,.wp-dot,.wp-item img{border-radius:0}

/* ---------- responsive */
@media (max-width:1320px){.hd-nav kbd{display:none}.hd-nav{gap:18px}}
@media (max-width:1100px){.tk-l{display:none}}
@media (max-width:980px){.tk{display:none}.hd-nav a:nth-child(n+4){display:none}}
@media (max-width:1100px){.list-h,.trow{grid-template-columns:64px 11ch minmax(0,1fr) 8ch 5ch 11ch}.list-h span:nth-child(5),.twave{display:none}}
@media (max-width:900px){
  .hd-in{grid-template-columns:auto 1fr auto}
  .hd-nav{justify-content:flex-end;gap:14px}
  .lore{grid-template-columns:1fr}
  .drv{grid-template-columns:1fr}
  .drv-s{border-right:0;border-bottom:1px solid var(--line)}
  .drv-s:last-child{border-bottom:0}
  .drv-s:not(.drv-mint):not(:last-child)::after{content:"v";right:auto;left:clamp(18px,2.4vw,28px);top:auto;bottom:-10px;width:auto;padding:0 8px}
  .pads{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pad{border-bottom:1px solid var(--line)}
  .pad:nth-child(2n){border-right:0}
  .pad:last-child{grid-column:1/-1;border-bottom:0}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats div:nth-child(3){border-left:0;padding-left:0}
  .stats div:nth-child(n+3){border-top:1px solid var(--line)}
  .cabar{grid-template-columns:1fr}
}
@media (max-width:760px){
  :root{--g:16px;--hd:58px}
  .logo-l,.ft-word-l{display:none}
  .logo-s,.ft-word-s{display:block}
  .logo pre{font-size:min(18px,(100vw - 40px)/24)}
  .ft-word{font-size:calc((100vw - 34px)/24)}
  .hd-nav{display:none}
  .hd-in{grid-template-columns:auto 1fr;gap:12px}
  .hd-act{grid-column:2}
  .hd-brand pre{font-size:7px}
  .tk{display:none}
  .ca-row{flex-wrap:wrap;justify-content:center;padding:12px;gap:10px}
  .ca-row .lbl{display:none}
  .ca-v{width:100%;text-align:center;font-size:12px}
  .sh{grid-template-columns:auto 1fr;gap:10px 14px}
  .sh-d{grid-column:1/-1;text-align:left}
  .list-h{display:none}
  .trow{grid-template-columns:56px minmax(0,1fr) auto;gap:10px}
  .tsym,.tkind,.trow .dim{display:none}
  .hero-sub{font-size:15px;padding:0 8px}
  .hero-act{padding:0 var(--g)}
}
@media (max-width:480px){
  .lore-b .b{white-space:normal;text-align:left;line-height:1.4;padding:10px 14px}
  .ca-b{width:100%}
  .ca-b .b{flex:1}
  .hero-in{bottom:24px}
  .hero-sub{margin-top:14px}
  .hero-act{margin-top:18px}
  .hero{height:clamp(600px,calc(100svh - var(--hd)),760px)}
  .hero-act{display:grid;width:100%;max-width:340px}
  .hero-act .b{width:100%}
  .pads{grid-template-columns:1fr}
  .pad{grid-template-columns:auto 1fr;align-items:center;min-height:60px;border-right:0}
  .pad:last-child{grid-column:auto}
  .pad-w{text-align:right}
  .fo-hist li{grid-template-columns:9ch minmax(0,1fr)}
  .fo-hist li span:nth-child(2){display:none}
  .stats dd{font-size:40px}
  .cabar-act .b{flex:1 1 auto}
  .end .b{width:100%}
}
@media (max-width:420px){.hd-brand pre{font-size:6.2px}.hd-act .b{padding:0 10px;letter-spacing:.08em}}
@media (max-width:360px){.tk-buy{display:none!important}}
@media (prefers-reduced-motion:reduce){.b::before,.b::after{transition:none}}
@media (max-width:760px){body .sfx-mute{top:72px;bottom:auto}}