*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
[hidden]{display:none!important}
img,video,canvas{max-width:100%}
:root{
  color-scheme: dark;
  --abyss:#04070B; --deep:#070C12; --glass:rgba(7,12,18,.78); --glass2:rgba(10,17,25,.9);
  --rule:#16222C; --rule2:#22323F; --rule3:#2E4250;
  --ink:#DCE7EC; --bright:#F3F7F9; --mute:#8298A6; --faint:#4E6270;
  --amber:#FFB84D; --coral:#FF6B5E; --cyan:#56E6D2; --green:#6EE7A0; --violet:#C49BFF; --sn:#7FC8FF; --in:#B9C9E8;
  --display:Geist, system-ui, -apple-system, "Segoe UI", sans-serif;
  --serif:var(--display);
  --sans:Geist, system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --nav:46px; --rail:0px; --gutter:24px;
  --ease-out:cubic-bezier(.23,1,.32,1);
  --ease-io:cubic-bezier(.77,0,.175,1);
}
@media (max-width:720px){:root{--gutter:16px}}

html{background:var(--abyss);color:var(--ink);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav) + 16px)}
body{background:var(--abyss);color:var(--ink);font:400 15px/1.55 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:var(--cyan);text-underline-offset:3px}
button,input{font:inherit;color:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
::selection{background:rgba(255,184,77,.35);color:#fff}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--amber);color:#140e02;padding:8px 12px;border-radius:8px}
.skip:focus{left:12px}
.small{font:400 12px/1.6 var(--mono);color:var(--faint)}

/* ---------- the fixed 3D layer ---------- */
#brain,#overlay{position:fixed;left:0;top:0;width:100vw;height:100vh;height:100lvh;display:block;z-index:0}
#overlay{z-index:1;pointer-events:none}
.flash{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 45%,rgba(255,244,230,.5),rgba(255,190,120,.14) 38%,transparent 68%)}
.flash.go{animation:flash 1s var(--ease-out)}
@keyframes flash{0%{opacity:0}6%{opacity:1}100%{opacity:0}}
.loader{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:var(--abyss);transition:opacity .9s var(--ease-out),visibility 0s .9s;pointer-events:none}
body:not(.loading) .loader{opacity:0;visibility:hidden}
@keyframes breathe{50%{opacity:.35}}

/* ---------- nav ---------- */
.nav{position:fixed;inset:0 0 auto 0;height:var(--nav);z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 var(--gutter);
  background:linear-gradient(rgba(4,7,11,.96),rgba(4,7,11,.88));border-bottom:1px solid rgba(34,50,63,.6)}
.wordmark{font:500 12px var(--mono);letter-spacing:.24em;color:var(--bright);text-decoration:none}
.navlinks{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none}
.navlinks::-webkit-scrollbar{display:none}
.navlinks a{font:400 10.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);text-decoration:none;white-space:nowrap;padding:14px 0;transition:color .15s ease}
.navlinks a:hover{color:var(--bright)}
.navlinks a.navcta{align-self:center;font-weight:600;color:#1A1204;background:var(--amber);border-radius:999px;padding:7px 12px;letter-spacing:.14em;transition:transform .16s var(--ease-out),box-shadow .2s ease,background-color .15s ease}
.navlinks a.navcta:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.navlinks a.navcta:hover{color:#1A1204;background:#FFC874;box-shadow:0 0 22px rgba(255,184,77,.4)}}
@media (max-width:760px){.navlinks a:not(#navcoin):not(.navcta):not([href$="#coins"]):not([href="/about"]){display:none}.navlinks{gap:14px}}
@media (max-width:520px){.opt{display:none}.navlinks:has(#navcoin:not([hidden])) a[href="/about"]{display:none}}
.announce{position:fixed;top:var(--nav);inset-inline:0;z-index:29;display:flex;gap:10px;align-items:center;justify-content:center;padding:8px var(--gutter);
  font:500 12.5px var(--mono);color:#140e02;background:var(--amber)}
.announce .dot{width:7px;height:7px;border-radius:50%;background:#140e02;animation:breathe 1.2s infinite}
.announce .left{opacity:.6}

/* ---------- the instrument (first screen) ---------- */
.instrument{position:relative;z-index:2;height:100svh;min-height:600px}
.hero{position:absolute;top:0;bottom:0;left:0;right:var(--rail);touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.hero.dragging{cursor:grabbing}
.hero.hovercell{cursor:crosshair}

.corner{display:grid;gap:3px;font:400 10.5px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);pointer-events:none}
.corner .k{color:var(--faint)}
.corner b{color:var(--bright);font-weight:500;font-variant-numeric:tabular-nums}
.hudl{position:absolute;left:var(--gutter);top:calc(var(--nav) + 18px);display:grid;gap:18px;pointer-events:none}
.hudr{position:absolute;right:var(--gutter);top:calc(var(--nav) + 18px);display:grid;gap:16px;justify-items:end;text-align:right;pointer-events:none;max-width:210px}
.corner.tr,.corner.br{justify-items:end}
.corner.br{pointer-events:auto}
.corner.br a{color:var(--mute);text-decoration:none;transition:color .15s ease}.corner.br a:hover{color:var(--cyan)}
.status{display:inline-flex;align-items:center;gap:7px}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--mute)}
.status[data-mode="live"]{color:var(--green)}
.status[data-mode="live"]::before{background:var(--green);box-shadow:0 0 10px var(--green);animation:breathe 1.8s infinite}
.status[data-mode="offline"]{color:var(--amber)}.status[data-mode="offline"]::before{background:var(--amber)}

.brand{pointer-events:none;transform-origin:0 0;transition:transform 1.25s var(--ease-io)}
.brand h1{margin:0;line-height:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wordmark-svg{display:block;width:clamp(240px,21vw,380px);height:auto;overflow:visible}
.wordmark-svg .ink{fill:#F3F7F9}.wordmark-svg .amber{fill:var(--amber)}
.triplet{margin:12px 0 0;font:500 10px/1.6 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--amber);max-width:34ch}
body.intro .brand{transform:translate(var(--ix,0px),var(--iy,0px)) scale(var(--is,1))}

.count{display:grid;justify-items:end;pointer-events:none}
.count output{font:200 clamp(58px,6.4vw,104px)/.84 var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--bright);transition:color .3s ease,text-shadow .3s ease}
.count output.hot{color:#FFE4B8;text-shadow:0 0 30px rgba(255,184,77,.55)}
.count span{font:500 10.5px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin-top:8px}

@keyframes enter{from{opacity:0;transform:translateY(6px)}}

.banner{position:relative;display:grid;justify-items:center;gap:5px;text-align:center;pointer-events:none;width:max-content;max-width:min(460px,calc(100vw - 40px));
  padding:16px 30px 18px;border-radius:16px;background:var(--glass2);border:1px solid rgba(255,184,77,.35);box-shadow:0 0 70px rgba(255,184,77,.16);
  animation:bannerIn .45s var(--ease-out)}
.banner.out{animation:bannerOut .22s var(--ease-out) forwards}
.banner .bk{font:500 10.5px var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--amber)}
.banner .bt{font:600 clamp(26px,3vw,40px)/1.05 var(--display);letter-spacing:-.03em;color:#fff;overflow-wrap:anywhere}
.banner .bs{font:400 11.5px var(--mono);color:var(--mute)}
.banner.coral{border-color:rgba(255,107,94,.45);box-shadow:0 0 70px rgba(255,107,94,.18)}.banner.coral .bk{color:var(--coral)}
.banner.cyan{border-color:rgba(86,230,210,.4);box-shadow:0 0 70px rgba(86,230,210,.15)}.banner.cyan .bk{color:var(--cyan)}
@keyframes bannerIn{from{opacity:0;transform:translateY(8px) scale(.97)}}
@keyframes bannerOut{to{opacity:0;transform:translateY(4px) scale(.98)}}

.tugbar{position:relative;width:min(560px,100%);pointer-events:none;
  padding:14px 18px 12px;border-radius:16px;background:var(--glass2);border:1px solid var(--rule2);animation:enter .35s var(--ease-out)}
.tugwords{display:grid;grid-template-columns:1fr auto 1fr;align-items:baseline;gap:10px}
.tugwords b{font:600 28px/1 var(--display);letter-spacing:-.02em;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .3s ease,text-shadow .3s ease}
.tugwords b:last-child{text-align:right}
.tugwords b.win{color:var(--amber);text-shadow:0 0 24px rgba(255,184,77,.6)}
.tugwords span{font:500 10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.rope{position:relative;height:6px;margin:14px 0 10px;border-radius:3px;background:linear-gradient(90deg,rgba(255,184,77,.3),rgba(86,230,210,.08) 50%,rgba(255,184,77,.3))}
.rope .mid{position:absolute;left:50%;top:-6px;bottom:-6px;width:1px;background:var(--faint)}
.rope .knot{position:absolute;top:50%;left:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--amber);box-shadow:0 0 18px var(--amber);transition:left .3s linear}
.tugnote{font:400 11px var(--mono);color:var(--mute);text-align:center}

/* the dock: everything you touch, in one place */
.dock{position:absolute;left:calc((var(--cardr, 0px) + 100%) / 2);bottom:18px;transform:translateX(-50%);width:min(620px,calc(100% - var(--cardr, 0px) - 2 * var(--gutter)));display:grid;grid-template-columns:minmax(0,1fr);gap:10px;
  padding:12px;border-radius:20px;background:var(--glass);border:1px solid var(--rule2);box-shadow:0 20px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.03);cursor:default;user-select:text;-webkit-user-select:text}
@media (hover:hover) and (pointer:fine){.dock,.tugbar,.banner{backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3)}}
/* everything that pops up lives in one column above the dock, so nothing can land on anything else */
.stack{position:absolute;left:0;right:0;bottom:calc(100% + 12px);display:flex;flex-direction:column-reverse;align-items:center;gap:10px;pointer-events:none}
.stack>*{max-width:100%}
.dockhead{display:flex;align-items:center;gap:9px;min-height:18px;padding:0 4px;font:500 11px var(--mono);letter-spacing:.04em;color:var(--mute);white-space:nowrap;overflow:hidden}
.dockhead .dot{width:6px;height:6px;border-radius:50%;background:var(--faint);flex:none;transition:background-color .2s ease,box-shadow .2s ease}
.dockhead.on .dot{background:var(--amber);box-shadow:0 0 10px var(--amber)}
.dockhead.on{color:var(--ink)}
.dockhead #nowtext{overflow:hidden;text-overflow:ellipsis;min-width:0}
.dockhead #queuetext{margin-left:auto;color:var(--amber);flex:none}
.ledwrap{position:relative}
#eyeview{width:100%;height:auto;aspect-ratio:7.5/1;display:block;border-radius:11px;background:#020406;border:1px solid var(--rule)}
.ledwrap span{position:absolute;bottom:6px;font:500 9px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:rgba(130,152,166,.7);pointer-events:none}
.ledl{left:10px}.ledr{right:10px}
.composer{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.tabs{display:grid;grid-auto-flow:column;border:1px solid var(--rule2);border-radius:11px;padding:3px;gap:2px;flex:none}
.composer .tabs{display:flex}
.composer .tabs button{flex:1 1 auto}
.composer .tabs button.hot{flex-grow:1.6}
.tabs button{font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);background:transparent;border:0;border-radius:8px;padding:9px 10px;white-space:nowrap;transition:color .15s ease,background-color .15s ease}
.tabs button[aria-selected="true"]{background:var(--rule2);color:var(--bright)}
.tabs button.hot{color:var(--amber)}
.tabs button.hot[aria-selected="true"]{background:rgba(255,184,77,.15);color:var(--amber)}
.dock[data-tab="launch"] .ledwrap{display:none}

/* the launch form: in the dock, and larger on /spawn */
.lf{display:grid;grid-template-columns:88px minmax(0,1fr) 136px;grid-template-areas:"pic name ticker" "pic buy go" "note note note";gap:8px;align-items:stretch}
.lf input[type=text]{padding:9px 12px}
.lf [data-lf=name]{grid-area:name}
.lf [data-lf=ticker]{grid-area:ticker;letter-spacing:.06em}
.lf [data-lf=go]{grid-area:go}
.lfpic{grid-area:pic;position:relative;display:grid;place-items:center;border:1px dashed var(--rule3);border-radius:12px;overflow:hidden;cursor:pointer;background:rgba(2,4,6,.7);transition:border-color .15s ease}
@media (hover:hover) and (pointer:fine){.lfpic:hover{border-color:rgba(255,184,77,.6)}}
.lfpic:focus-within{border-color:rgba(255,184,77,.7)}
.lf.nopics .lfpic{cursor:default;border-style:solid;border-color:var(--rule2)}
.lf.nopics .lfpic input{display:none}
.lf.nopics .lfpic .ph svg{display:none}
.lfpic input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.lfpic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.lfpic .ph{display:grid;justify-items:center;gap:3px;font:500 9px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);pointer-events:none}
.lfpic .ph svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.lfpic .up{position:absolute;left:0;right:0;bottom:0;padding:10px 0 4px;background:linear-gradient(rgba(2,4,6,0),rgba(2,4,6,.92) 58%);font:600 8px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);text-align:center;pointer-events:none}
.lf.nopics .lfpic .up{display:none}
.lfpic .unpick{position:absolute;top:4px;right:4px;z-index:1;width:24px;height:24px;padding:0;border:1px solid var(--rule2);border-radius:50%;background:rgba(4,7,11,.85);color:var(--ink);font:500 15px/1 var(--sans)}
.lfbuy{grid-area:buy;display:flex;align-items:center;min-width:0;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:11px;padding-right:12px;transition:border-color .15s ease,box-shadow .15s ease}
.lfbuy:focus-within{border-color:rgba(255,184,77,.7);box-shadow:0 0 0 3px rgba(255,184,77,.14)}
.lfbuy input[type=text],.lfbuy input[type=text]:focus{border:0;background:transparent;box-shadow:none}
.lfbuy span{font:500 11px var(--mono);letter-spacing:.06em;color:var(--mute);white-space:nowrap}
.lfnote{grid-area:note;margin:0;min-height:1.5em;font:400 11.5px/1.5 var(--mono);color:var(--mute);overflow-wrap:anywhere}
.lfnote.bad{color:var(--coral)}
.lfnote a{color:var(--amber)}
form{display:flex;gap:8px;align-items:center;margin:0;flex:1;min-width:0}
input[type=text]{flex:1;min-width:0;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:11px;color:var(--bright);font:500 15px var(--mono);padding:11px 13px;transition:border-color .15s ease,box-shadow .15s ease}
input[type=text]:focus{border-color:rgba(255,184,77,.7);outline:none;box-shadow:0 0 0 3px rgba(255,184,77,.14)}
input[type=text]::placeholder{color:var(--faint)}
input[type=text]:disabled{opacity:.45}
#tugform input{flex:1 1 0}
.vs{font:400 italic 16px var(--sans);color:var(--mute);flex:none}
.btn-amber{font:600 14px var(--sans);background:var(--amber);color:#1A1204;border:0;border-radius:11px;padding:11px 18px;white-space:nowrap;flex:none;transition:transform .16s var(--ease-out),background-color .15s ease,box-shadow .2s ease}
.btn-amber:active{transform:scale(.97)}
.btn-amber:disabled{opacity:.45;cursor:not-allowed}
@media (hover:hover) and (pointer:fine){.btn-amber:hover{background:#FFC874;box-shadow:0 0 26px rgba(255,184,77,.38)}}
.btn-ghost{font:500 12px var(--mono);letter-spacing:.06em;background:transparent;border:1px solid var(--rule2);color:var(--ink);border-radius:11px;padding:10px 14px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .16s var(--ease-out),border-color .15s ease,color .15s ease}
.btn-ghost:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.btn-ghost:hover{border-color:var(--rule3);color:var(--bright)}}
.dockfoot{display:flex;justify-content:space-between;align-items:center;gap:10px}
.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;min-width:0}
.chips::-webkit-scrollbar{display:none}
.chip{font:500 12px var(--mono);background:transparent;border:1px solid var(--rule2);color:var(--mute);padding:6px 11px;border-radius:999px;white-space:nowrap;transition:transform .16s var(--ease-out),color .15s ease,border-color .15s ease}
.chip:active{transform:scale(.96)}
@media (hover:hover) and (pointer:fine){.chip:hover{color:var(--amber);border-color:rgba(255,184,77,.6)}}
.tools{display:flex;gap:4px;flex:none}
.tools button{display:inline-flex;align-items:center;gap:6px;font:500 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);background:transparent;border:1px solid transparent;border-radius:9px;padding:6px 8px;transition:transform .16s var(--ease-out),color .15s ease,border-color .15s ease}
.tools button:active{transform:scale(.95)}
@media (hover:hover) and (pointer:fine){.tools button:hover{color:var(--bright);border-color:var(--rule2)}}
.tools svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tools svg .f{fill:currentColor;stroke:none}
.tools button[aria-pressed="true"]{color:var(--amber)}
.tools button[aria-pressed="false"] .w{opacity:.25}
.tools button.rec{color:var(--coral)}
.tools button.rec .f{animation:breathe .9s infinite}
@media (max-width:1180px){.tools span{display:none}}
.toast{margin:0;font:500 12px var(--mono);color:var(--coral);min-height:0}
.toast:empty{display:none}
.toast.ok{color:var(--green)}
.modstate{margin:0;font:500 11.5px var(--mono);color:var(--amber);border:1px solid rgba(255,184,77,.35);background:rgba(255,184,77,.06);border-radius:9px;padding:8px 10px}
.hint{margin:0;font:400 10.5px/1.5 var(--mono);letter-spacing:.06em;color:var(--faint);pointer-events:none;text-align:center;text-wrap:balance;transition:opacity .6s ease}
.hint.gone{opacity:0}
.coach{position:relative;width:max-content;max-width:min(460px,90vw);font:400 13px/1.5 var(--sans);color:var(--ink);
  background:var(--amber);color:#1A1204;padding:10px 14px;border-radius:12px;box-shadow:0 10px 40px rgba(255,184,77,.25);animation:enter .4s var(--ease-out) .6s both}
.coach::after{content:"";position:absolute;left:50%;top:100%;margin-left:-7px;border:7px solid transparent;border-top-color:var(--amber)}
.coach b{font-weight:700}
.tip{position:fixed;z-index:6;pointer-events:none;font:400 11.5px/1.5 var(--mono);background:var(--glass2);border:1px solid var(--rule2);border-radius:10px;padding:8px 11px;color:var(--ink);max-width:300px;transform:translate(16px,-50%)}
.tip b{display:block;font:600 15px/1.25 var(--display);color:#fff;margin-bottom:2px}
.tip .t{color:var(--mute)}
.tip .io{display:flex;gap:12px;margin-top:5px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}
.tip .in{color:var(--cyan)}.tip .out{color:var(--amber)}

/* the rail */
.rail{position:absolute;top:var(--nav);right:0;bottom:0;width:var(--rail);overflow-y:auto;overscroll-behavior:contain;background:rgba(5,9,14,.84);border-left:1px solid var(--rule);
  scrollbar-width:thin;scrollbar-color:var(--rule2) transparent}
.card{padding:18px 20px 20px;display:grid;gap:12px;border-bottom:1px solid var(--rule)}
.card h2{margin:0;font:500 10.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);display:flex;justify-content:space-between;gap:8px}
.card h2 span{color:var(--faint)}
.big{display:flex;align-items:baseline;gap:10px}
.big output{font:200 56px/1 var(--display);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--bright)}
.big span{color:var(--mute);font:400 12px var(--mono)}
#spark{width:100%;height:56px;display:block}
.meter{display:grid;gap:6px}
.meter .lab{display:flex;justify-content:space-between;font:400 10.5px var(--mono);color:var(--mute);letter-spacing:.08em;text-transform:uppercase}
.meter .lab b{color:var(--bright);font-weight:500}
.bar{position:relative;height:8px;border-radius:4px;background:rgba(2,4,6,.8);border:1px solid var(--rule2);overflow:hidden}
.bar i{position:absolute;top:0;bottom:0;border-radius:4px;will-change:transform}
.bar.lr::after{content:"";position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:var(--faint)}
.ends{display:flex;justify-content:space-between;font:400 10px var(--mono);color:var(--faint);letter-spacing:.1em;text-transform:uppercase}
#bendbar{background:var(--coral);box-shadow:0 0 12px rgba(255,107,94,.6)} #cilbar{background:var(--cyan);box-shadow:0 0 12px rgba(86,230,210,.5)} #stbar{background:var(--amber);left:0;box-shadow:0 0 12px rgba(255,184,77,.5)}
.prcs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.prcrow{display:flex;gap:3px;flex-wrap:wrap}
.prcrow.r{justify-content:flex-end}
.prc{width:11px;height:11px;border-radius:3px;background:#1A1308;border:1px solid #2A1F0E}
/* the body: its swim through the tank */
.swim{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;align-items:center}
#tank{width:100%;aspect-ratio:1/0.92;display:block}
.swimstats{margin:0;display:grid;gap:10px}
.swimstats div{display:grid;gap:2px}
.swimstats dt{font:400 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.swimstats dd{margin:0;display:flex;align-items:baseline;gap:5px}
.swimstats b{font:300 22px/1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--bright)}
.swimstats i{font:400 10.5px var(--mono);font-style:normal;color:var(--mute)}
#swimnote{transition:color .2s ease}
.swimcard.lit{animation:lit 1.6s var(--ease-out)}
@keyframes lit{0%{background:rgba(86,230,210,.12)}100%{background:transparent}}
#swimnote.stop{color:var(--coral)} #swimnote.turn{color:var(--cyan)} #swimnote.brake{color:var(--amber)} #swimnote.lamp{color:#FFE2B0}
.lampnote{margin:0;flex:1;min-width:0;font:400 12px/1.4 var(--mono);color:var(--mute)}
#feed{list-style:none;margin:0;padding:0;display:grid;gap:12px}
#feed li{font:400 12px/1.5 var(--mono);color:var(--mute);border-left:2px solid var(--rule2);padding:1px 0 1px 11px;overflow-wrap:anywhere}
#feed li.new{animation:rowIn .35s var(--ease-out)}
#feed li.say{border-left-color:var(--amber)} #feed li.poke{border-left-color:var(--coral)} #feed li.tug{border-left-color:var(--cyan)} #feed li.lamp{border-left-color:#FFE2B0}
#feed li.empty{border-left-color:transparent;color:var(--faint)}
#feed .who{color:var(--faint)} #feed .who.you{color:var(--cyan)}
#feed .tw{font:500 9px var(--mono);letter-spacing:.1em;color:#C9A7FF;border:1px solid rgba(201,167,255,.4);border-radius:4px;padding:0 4px;margin-right:5px}
#feed b{color:var(--bright);font-weight:500}
#feed .res{display:block;color:var(--mute)}
#feed .res .win{color:var(--amber)}
@keyframes rowIn{from{opacity:0;transform:translateY(-6px)}}

/* intro: the title centred on its own, then the instrument arrives */
body.intro .dock,body.intro .rail,body.intro .corner,body.intro .count,body.intro .nowbar,body.intro .nav{opacity:0;transform:translateY(8px)}
body.intro .dock{transform:translate(-50%,12px)}
.dock,.rail,.corner,.count,.nav{transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
body.ready .corner{transition-delay:.35s}
body.ready .count{transition-delay:.45s}
body.ready .rail{transition-delay:.5s}
body.ready .dock{transition-delay:.6s}

/* ---------- the story below ---------- */
.page{position:relative;z-index:2}
.section{padding:128px max(var(--gutter),calc((100vw - 1180px) / 2)) 64px;border-top:1px solid rgba(34,50,63,.5)}
.section.story{background:linear-gradient(90deg,rgba(4,7,11,.96) 0%,rgba(4,7,11,.9) 38%,rgba(4,7,11,.35) 70%,rgba(4,7,11,0) 100%)}
.section.story .col{max-width:600px}
.section.wide{background:rgba(4,7,11,.9)}
.eyebrow{margin:0 0 16px;font:400 10.5px var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--mute)}
.display{margin:0 0 18px;font:600 clamp(34px,4.4vw,58px)/1.02 var(--display);letter-spacing:-.04em;color:var(--bright);text-wrap:balance}
.lede{margin:0 0 30px;max-width:66ch;color:var(--mute);font-size:17px;line-height:1.65}
.legend{display:flex;flex-wrap:wrap;gap:10px 18px;font:400 11px var(--mono);color:var(--mute)}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{width:8px;height:8px;border-radius:50%;display:inline-block}
.legend .k-eye{background:var(--amber);box-shadow:0 0 10px var(--amber)} .legend .k-touch{background:#FF9E7A;box-shadow:0 0 10px #FF9E7A} .legend .k-sn{background:var(--sn);box-shadow:0 0 10px var(--sn)} .legend .k-in{background:var(--in);box-shadow:0 0 10px var(--in)}
.legend .k-mn{background:var(--violet);box-shadow:0 0 10px var(--violet)} .legend .k-mus{background:var(--coral);box-shadow:0 0 10px var(--coral)} .legend .k-cil{background:var(--cyan);box-shadow:0 0 10px var(--cyan)} .legend .k-other{background:#6E7F8C}

.exps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:4px;overflow:hidden}
.exp{background:rgba(7,12,18,.96);padding:24px 24px 22px;display:flex;flex-direction:column;gap:12px;min-height:340px;transition:background-color .2s ease}
@media (hover:hover) and (pointer:fine){.exp:hover{background:rgba(11,18,26,.98)}}
.exp h3{margin:0;font:600 24px/1.12 var(--display);letter-spacing:-.025em;color:var(--bright)}
.exp p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.62}
.exp .more{margin-top:auto;font:400 11.5px var(--mono);color:var(--cyan);text-decoration:none;letter-spacing:.04em}
.exp .more:hover{text-decoration:underline}
.exp.wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:32px;align-items:stretch}
.spawnfig{margin:0;display:grid;align-content:center;justify-items:center;gap:12px;min-height:180px}
.spawncoins{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;align-items:center}
.spawncoins > img{width:112px;height:112px;opacity:.9}
.spawncoin{display:grid;gap:6px;justify-items:center;text-decoration:none;color:var(--ink);font:500 12px var(--mono)}
.spawncoin img{width:112px;height:112px;border-radius:12px;border:1px solid var(--rule2);background:var(--rule);transition:transform .16s var(--ease-out)}
.spawncoin:active img{transform:scale(.97)}
.spawnfig figcaption{font:400 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);text-align:center}
@media (max-width:720px){.spawncoins{gap:10px}.spawncoin img,.spawncoins > img{width:86px;height:86px}}
.expcol{display:flex;flex-direction:column;gap:12px}
.morelinks{margin-top:auto!important;display:flex;flex-wrap:wrap;gap:6px 18px}
.morelinks .more{margin-top:0}
.exptank{margin:0;display:grid;grid-template-rows:1fr auto;gap:8px;min-height:300px}
#tank2{width:100%;height:100%;min-height:280px;display:block}
.lab{margin-top:28px;border:1px solid var(--rule);border-radius:4px;background:rgba(7,12,18,.96)}
.labhead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;padding:18px 22px;border-bottom:1px solid var(--rule)}
.labhead h3{margin:0;display:flex;gap:10px;align-items:center;font:600 20px/1.1 var(--display);letter-spacing:-.02em;color:var(--bright)}
.labhead p{margin:0;font:400 12px var(--mono);color:var(--mute)}
.labhead a{color:var(--cyan)}
.labrows{list-style:none;margin:0;padding:0}
.labrows li{border-bottom:1px solid var(--rule)}
.labrows li:last-child{border-bottom:0}
.labrows li.empty{padding:16px 22px;font:400 12px var(--mono);color:var(--faint)}
.labrows summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 22px;cursor:pointer;list-style:none}
.labrows summary::-webkit-details-marker{display:none}
.labrows summary:hover .lt{color:var(--bright)}
.labrows .lt{font:500 14.5px var(--sans);color:var(--ink,#DCE7EC);transition:color .15s ease}
.labrows .lt small{display:block;margin-top:2px;font:400 10.5px var(--mono);color:var(--faint);letter-spacing:.04em}
.labrows .lm{font:400 12px var(--mono);color:var(--mute);font-variant-numeric:tabular-nums}
.labrows details p{margin:0;padding:0 22px 14px;font-size:13.5px;line-height:1.6;color:var(--mute);max-width:90ch}
.labrows details p.rule{font:400 11.5px/1.6 var(--mono);color:var(--faint)}
@media (max-width:720px){.labrows summary{grid-template-columns:minmax(0,1fr) auto}.labrows .lm{grid-column:1/-1;grid-row:2}}
.exptank figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint);text-transform:uppercase}
.exphead{display:flex!important;flex-wrap:wrap;gap:8px;align-items:center;font:400 10.5px var(--mono)!important;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)!important}
.pill{font:500 9.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--rule2);border-radius:999px;padding:2px 8px;color:var(--mute)}
.pill.live{color:var(--green);border-color:rgba(110,231,160,.45)}
.pill.measured{color:var(--cyan);border-color:rgba(86,230,210,.45)}
.pill.pending{color:var(--amber);border-color:rgba(255,184,77,.45)}
.pill.anchored{color:var(--green);border-color:rgba(110,231,160,.45)}
.pill.no{color:var(--coral);border-color:rgba(255,107,94,.45)}
.cal{margin:2px 0 0;display:grid;gap:6px;font:400 11.5px/1.45 var(--mono)}
.cal div{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:baseline;border-top:1px dashed var(--rule2);padding-top:7px}
.cal dt{color:var(--faint);text-transform:uppercase;letter-spacing:.1em;font-size:10px}
.cal dd{margin:0;color:var(--ink);text-align:right}
.cal dd.ok{color:var(--green)}

.boards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:4px;overflow:hidden}
.boardcol{background:rgba(7,12,18,.96);padding:24px}
.boardcol h3{margin:0 0 14px;font:400 10.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);display:flex;justify-content:space-between}
.boardcol h3 span{color:var(--faint)}
.rank,.tugs{list-style:none;margin:0;padding:0;display:grid;counter-reset:r}
.rank li{counter-increment:r;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--rule)}
.rank li::before{content:counter(r,decimal-leading-zero);font:400 11px var(--mono);color:var(--faint)}
.rank li:first-child .txt{color:var(--amber);text-shadow:0 0 20px rgba(255,184,77,.35)}
.rank .txt{font:600 19px/1.2 var(--display);letter-spacing:-.02em;color:var(--bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank .txt small{display:block;font:400 10.5px var(--mono);color:var(--faint);letter-spacing:.04em;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rank .pk{font:500 13px var(--mono);color:var(--bright);font-variant-numeric:tabular-nums;text-align:right}
.rank .pk small{display:block;font-size:9.5px;color:var(--faint);letter-spacing:.14em;text-transform:uppercase}
.rank li.empty,.tugs li.empty{display:block;color:var(--faint);font:400 12px var(--mono);border:0}
.rank li.empty::before{content:none}
.tugs li{padding:10px 0;border-bottom:1px solid var(--rule);font:400 11.5px var(--mono);color:var(--mute)}
.tugs .vsline{display:flex;justify-content:space-between;gap:8px;font:600 17px/1.25 var(--display);letter-spacing:-.02em;color:var(--faint)}
.tugs .vsline b{font-weight:400;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tugs .vsline b.win{color:var(--amber)}
.tugs .vsline i{font-size:15px;flex:none}

.steps{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid var(--rule2)}
.steps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;padding:26px 0;border-bottom:1px solid var(--rule2);transition:opacity .4s ease}
.steps li:not(.on){opacity:.42}
.steps .n{font:400 12px var(--mono);color:var(--faint);padding-top:8px}
.steps li.on .n{color:var(--amber)}
.steps h3{margin:0 0 8px;font:600 23px/1.15 var(--display);letter-spacing:-.025em;color:var(--bright)}
.steps p{margin:0 0 12px;color:var(--mute)}
.tag{display:inline-block;font:500 9.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:3px 8px;border-radius:4px}
.tag.real{color:var(--cyan);border:1px solid rgba(86,230,210,.4)}
.tag.simp{color:var(--amber);border:1px solid rgba(255,184,77,.4)}
.tag.chosen{color:var(--violet);border:1px solid rgba(196,155,255,.4)}
.tag.verify{color:var(--green);border:1px solid rgba(110,231,160,.4)}

.kv{margin:0 0 24px;border-top:1px solid var(--rule2)}
.kv div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--rule2);font:400 12.5px var(--mono)}
.kv dt{color:var(--faint);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;padding-top:2px}
.kv dd{margin:0;color:var(--ink);overflow-wrap:anywhere}
.tablewrap{overflow-x:auto;border:1px solid var(--rule);border-radius:6px;background:rgba(7,12,18,.96)}
.chain{width:100%;border-collapse:collapse;font:400 12px var(--mono)}
.chain th{text-align:left;font-weight:400;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:13px 14px;border-bottom:1px solid var(--rule);white-space:nowrap}
.chain td{padding:12px 14px;border-bottom:1px solid var(--rule);color:var(--ink);white-space:nowrap}
.chain tr:last-child td{border-bottom:0}
.chain td.empty{color:var(--faint);white-space:normal}
.chain code{color:var(--mute)}
.chain a{color:var(--cyan);margin-right:10px}
.howto{margin-top:28px;color:var(--mute);max-width:80ch}
.howto p{margin:0 0 10px}
.howto b{color:var(--bright);font-weight:600}
pre{margin:0 0 16px;padding:14px 16px;border:1px solid var(--rule);border-radius:8px;background:rgba(2,4,6,.9);overflow-x:auto}
code{font:400 12.5px var(--mono);color:var(--ink)}

.coin .castrip{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;margin-bottom:24px;background:rgba(7,12,18,.96);border:1px solid var(--rule);border-left:3px solid var(--cyan);border-radius:0 8px 8px 0}
.coin .castrip .eyebrow{margin-bottom:6px}
.coin .castrip code{font-size:15px;overflow-wrap:anywhere}
.coin .castrip button{flex:none}

.plain{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:18px}
.plain li{position:relative;padding-left:20px;color:var(--mute);font-size:15.5px;line-height:1.65}
.plain li::before{content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;background:var(--faint)}
.plain b{color:var(--bright);font-weight:600}

.foot{position:relative;z-index:2;padding:40px max(var(--gutter),calc((100vw - 1180px) / 2)) 64px;border-top:1px solid var(--rule);background:var(--abyss);font:400 11.5px/1.75 var(--mono);color:var(--faint)}
.foot p{margin:0 0 10px;max-width:120ch}
.foot a{color:var(--mute)}
.footlinks{display:flex;gap:18px;flex-wrap:wrap}

/* reveal as you scroll */
.rv{opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.rv.in{opacity:1;transform:none}

/* clip sheet */
.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:rgba(2,4,7,.74);animation:fade .2s ease}
.sheet{width:min(560px,100%);max-height:calc(100svh - 32px);overflow:auto;background:#0B131B;border:1px solid var(--rule2);border-radius:18px;padding:20px;display:grid;gap:14px;box-shadow:0 30px 90px rgba(0,0,0,.65);animation:sheetIn .28s var(--ease-out)}
.sheet h2{margin:0;font:600 28px var(--display);letter-spacing:-.03em}
.sheet video{width:100%;aspect-ratio:1;border-radius:12px;background:#000;border:1px solid var(--rule)}
.sheet .row{display:flex;flex-wrap:wrap;gap:8px}
@keyframes fade{from{opacity:0}}
@keyframes sheetIn{from{opacity:0;transform:scale(.96)}}

/* ---------- the readouts: below the fold at every width ---------- */
.instrument{height:auto;min-height:0}
.hero{position:relative;right:0;height:100svh;min-height:640px}
.rail{position:relative;z-index:2;top:auto;width:auto;overflow:visible;border-left:0;border-top:1px solid var(--rule);background:rgba(4,7,11,.94);display:grid;grid-template-columns:1fr 1fr}
.rail .card{border-bottom:0}
.rail .swimcard{border-left:1px solid var(--rule)}
.rail .feedcard{grid-column:1/-1;border-top:1px solid var(--rule)}
.rail #feed{max-height:520px;overflow:auto}
@media (min-width:1200px){.rail{grid-template-columns:1fr 1fr 1.2fr;padding:0 max(0px,calc((100vw - 1400px) / 2))}.rail .feedcard{grid-column:auto;border-top:0;border-left:1px solid var(--rule)}.rail #feed{max-height:420px;overflow:auto}}
@media (max-width:720px){
  .hero{height:100svh;min-height:600px}
  .brand{max-width:min(50vw,210px)}
  .triplet{max-width:none}
  .hudr{max-width:48vw}
  .verify{white-space:nowrap}
  .chips{-webkit-mask-image:linear-gradient(90deg,#000 78%,transparent);mask-image:linear-gradient(90deg,#000 78%,transparent);padding-right:14px}
  .tools{gap:0}
  .tools button{padding:6px 5px}
  .tabs{grid-auto-columns:1fr}
  .cal div{grid-template-columns:1fr;gap:3px}
  .cal dd{text-align:left}
  .rail{grid-template-columns:1fr}.rail .swimcard{border-left:0;border-top:1px solid var(--rule)}.rail .feedcard{border-left:0;border-top:1px solid var(--rule)}
  .corner.br,.hint,.corner.tl{display:none}
  .hudl,.hudr{top:calc(var(--nav) + 14px)}
  .hudr{gap:10px}
  .wordmark-svg{width:min(46vw,210px)}
  .corner.tr .k{display:none}
  .verify{margin-top:2px;padding:4px 8px 4px 7px;letter-spacing:.1em}
  .triplet{margin-top:8px}
  .count output{font-size:clamp(40px,12vw,56px)}
  .count span{font-size:9px}
  .dock{bottom:max(10px,env(safe-area-inset-bottom));padding:10px;border-radius:18px;gap:8px}
  .tabs button{padding:8px 6px}
  .lf{grid-template-columns:88px minmax(0,1fr) 112px;grid-template-areas:"pic name name" "pic ticker ticker" "buy buy go" "note note note"}
  .lf input[type=text]{font-size:16px}
  .lf [data-lf=go]{padding:12px}
  .coach{max-width:calc(100vw - 40px);font-size:12.5px}
  .exps,.boards{grid-template-columns:1fr}
  .exp.wide{grid-template-columns:1fr}
  #tank2{min-height:240px}
  .exp{min-height:0}
  .section{padding-top:96px}
  .section.story{background:rgba(4,7,11,.9)}
  .kv div{grid-template-columns:1fr;gap:4px}
  .coin .castrip{flex-direction:column;align-items:stretch}
}
@media (min-width:721px) and (max-width:1100px){.exps,.boards{grid-template-columns:1fr 1fr}}

/* ---------- /stream: a 16:9 layout for OBS ---------- */
body.stream{overflow:hidden}
body.stream .nav,body.stream .rail,body.stream .page,body.stream .homecoins,body.stream .foot,body.stream .skip,body.stream .hint,body.stream .coach,body.stream .dockhead,body.stream .ledwrap,body.stream .composer,body.stream .dockfoot,body.stream .toast,body.stream .modstate{display:none!important}
body.stream .dock{background:none;border:0;box-shadow:none;padding:0;bottom:170px;backdrop-filter:none;-webkit-backdrop-filter:none}
body.stream .instrument{height:100vh}
body.stream .hero{right:0;cursor:default}
body.stream .hudl{top:40px;left:48px}
body.stream .hudr{top:40px;right:48px}
body.stream .wordmark-svg{width:720px}
body.stream .corner{font-size:13px}
body.stream .count output{font-size:132px}
body.stream .streamcta{position:absolute;left:50%;bottom:44px;transform:translateX(-50%);text-align:center;padding:18px 30px;border-radius:18px;background:var(--glass2);border:1px solid rgba(255,184,77,.4);box-shadow:0 0 60px rgba(255,184,77,.14)}
.streamcta .k{display:block;font:500 13px var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:8px}
.streamcta .t{font:600 40px/1.1 var(--display);letter-spacing:-.03em;color:#fff}
.streamcta code{font:500 36px var(--mono);color:var(--amber)}
body.stream .streamfeed{position:absolute;left:48px;bottom:190px;list-style:none;margin:0;padding:0;display:grid;gap:10px;width:460px}
.streamfeed li{font:500 17px/1.4 var(--mono);color:var(--mute);background:rgba(7,12,18,.78);border-left:3px solid var(--amber);border-radius:0 10px 10px 0;padding:9px 13px;animation:rowIn .4s var(--ease-out)}
.streamfeed li.poke{border-left-color:var(--coral)}.streamfeed li.tug{border-left-color:var(--cyan)}
.streamfeed b{color:#fff;font-weight:500}
body.stream .streamboard{position:absolute;right:48px;top:340px;list-style:none;margin:0;padding:18px 22px;display:grid;gap:9px;width:360px;background:rgba(7,12,18,.8);border:1px solid var(--rule2);border-radius:16px;counter-reset:r}
.streamboard .h{font:500 12px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:4px}
.streamboard li:not(.h){counter-increment:r;display:grid;grid-template-columns:28px 1fr auto;gap:8px;font:600 22px/1.2 var(--display);color:#fff}
.streamboard li:not(.h)::before{content:counter(r);font:400 13px var(--mono);color:var(--faint);padding-top:7px}
.streamboard li span{font:500 14px var(--mono);color:var(--mute);padding-top:6px}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none}
  .brand{transition:none}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important}
}
body.intro .dock,body.intro .rail{pointer-events:none}
body.intro .hero{cursor:default}

/* ---------- proof ---------- */
.verify{display:inline-flex;align-items:center;gap:7px;margin-top:6px;font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-decoration:none;pointer-events:auto;
  border:1px solid var(--rule2);border-radius:999px;padding:5px 10px 5px 8px;background:rgba(4,7,11,.5);transition:color .2s ease,border-color .2s ease}
.verify .vdot{width:7px;height:7px;border-radius:50%;background:var(--faint)}
.verify[data-state="ok"]{color:var(--green);border-color:rgba(110,231,160,.45)}
.verify[data-state="ok"] .vdot{background:var(--green);box-shadow:0 0 10px var(--green)}
.verify[data-state="ok"].tick .vdot{animation:tick .5s var(--ease-out)}
.verify[data-state="bad"]{color:var(--coral);border-color:rgba(255,107,94,.55)}
.verify[data-state="bad"] .vdot{background:var(--coral)}
@keyframes tick{0%{transform:scale(1.9)}100%{transform:scale(1)}}
.proofgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:4px;overflow:hidden;margin-bottom:28px}
.pcard{background:rgba(7,12,18,.96);padding:24px;display:flex;flex-direction:column;gap:12px}
.pcard h3{margin:0;font:600 23px/1.15 var(--sans);letter-spacing:-.02em;color:var(--bright)}
.pcard p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.62}
.pcard .btn-amber{align-self:flex-start;margin-top:auto}
.mini{margin:auto 0 0;display:grid;gap:0;border-top:1px solid var(--rule2)}
.mini div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule2);font:400 12px var(--mono)}
.mini dt{color:var(--faint);text-transform:uppercase;letter-spacing:.12em;font-size:10px;padding-top:1px}
.mini dd{margin:0;color:var(--ink);text-align:right;overflow-wrap:anywhere}
.progress{height:4px;border-radius:2px;background:var(--rule);overflow:hidden}
.progress i{display:block;height:100%;width:0;background:var(--amber);box-shadow:0 0 10px var(--amber);transition:width .2s linear}
.result{min-height:1.5em;font:500 12.5px/1.55 var(--mono)!important;color:var(--mute)!important}
.result.ok{color:var(--green)!important}.result.bad{color:var(--coral)!important}
.console{border:1px solid var(--rule);border-radius:6px;background:#020406;margin-bottom:28px;overflow:hidden}
.consolehead{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--rule);font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.consolehead a{color:var(--mute)}.consolehead a:hover{color:var(--cyan)}
.consolehead .rec{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--coral);margin-right:8px;animation:breathe 1.4s infinite}
#logconsole{list-style:none;margin:0;padding:12px 14px;display:grid;gap:3px;font:400 12px/1.5 var(--mono);color:var(--ink);min-height:250px;max-height:250px;overflow:hidden}
#logconsole li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:rowIn .3s var(--ease-out)}
#logconsole .k-say{color:var(--amber)}#logconsole .k-poke{color:#FF9E7A}#logconsole .k-tug{color:var(--cyan)}#logconsole .k-done{color:var(--mute)}#logconsole .k-sync,#logconsole .dim{color:var(--faint)}
#logconsole .k-chain{color:var(--violet)}
.manifest{margin:0 0 24px;border:1px solid var(--rule);border-radius:6px;background:rgba(7,12,18,.96)}
.manifest summary{cursor:pointer;padding:14px 16px;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);list-style:none}
.manifest summary::-webkit-details-marker{display:none}
.manifest summary::before{content:"+ ";color:var(--amber)}
.manifest[open] summary::before{content:"− "}
.manifest table{width:100%;border-collapse:collapse;font:400 12px var(--mono)}
.manifest td{padding:9px 16px;border-top:1px solid var(--rule);vertical-align:top;color:var(--ink);overflow-wrap:anywhere}
.manifest td:first-child{color:var(--faint);white-space:nowrap;width:1%}
.manifest .grp td{color:var(--mute);text-transform:uppercase;letter-spacing:.14em;font-size:10px;background:rgba(255,255,255,.015)}
.manifest .grp .pill{margin-left:8px}
@media (max-width:900px){.proofgrid{grid-template-columns:1fr}}

/* ---------- /launch ---------- */
body.lp{background:radial-gradient(ellipse at 70% -10%,#0E1C27,transparent 60%),var(--abyss)}
.lpwrap{max-width:1080px;margin:0 auto;padding:calc(var(--nav) + 56px) var(--gutter) 96px;display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
#lpdesc,#spstatus,.lpmint,#lpca,#lpmint{overflow-wrap:anywhere}
.lpspawn{display:grid;gap:12px;margin-top:10px;padding-top:22px;border-top:1px solid var(--rule2)}
.lphead .wordmark-svg{width:min(560px,80vw);margin:6px 0 18px}
.lphead .lede b{color:var(--bright)}
.lpsteps{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule2)}
.lpsteps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--rule2);opacity:.5;transition:opacity .3s ease}
.lpsteps li.on{opacity:1}
.lpsteps li.on .n{color:var(--green)}
.lpsteps .n{font:400 12px var(--mono);color:var(--faint);padding-top:5px}
.lpsteps h3{margin:0 0 4px;font:600 21px var(--display);letter-spacing:-.02em;color:var(--bright)}
.lpsteps p{margin:0;color:var(--mute);font:400 12.5px/1.6 var(--mono);overflow-wrap:anywhere}
.lpmoment{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:28px;align-items:start}
.lpmoment img{width:100%;height:auto;border-radius:12px;border:1px solid var(--rule2);box-shadow:0 20px 70px rgba(0,0,0,.5)}
.lpadmin{border:1px solid var(--rule2);border-radius:14px;padding:20px;background:rgba(7,12,18,.9);display:grid;gap:14px}
.lprow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lprow input[type=text]{flex:1 1 180px}
/* the owner's $WORM launch, one step at a time: the current step open, finished ones folded to a line, later ones dim */
body.owner .lphead .lede,body.owner #lpsteps,body.owner #lpmoment{display:none}
body.owner .lpwrap{gap:26px}
body.owner .lpadmin{border:0;padding:0;background:none}
#lplock{display:grid;gap:10px}
#lplock .small code{font-size:12px;color:var(--ink)}
.wiz{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.wstep{border:1px solid var(--rule2);border-radius:14px;background:rgba(4,7,11,.55);transition:border-color .2s ease,opacity .2s ease}
.wstep.now{border-color:rgba(255,184,77,.55);background:rgba(12,18,26,.95);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.wstep.later{opacity:.42}
.whead{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;cursor:default}
.wstep.done .whead{cursor:pointer}
.whead:focus-visible{outline:2px solid var(--amber);outline-offset:-2px;border-radius:14px}
.wn{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:600 12px var(--mono);border:1px solid var(--rule3);color:var(--mute)}
.wstep.now .wn{background:var(--amber);border-color:var(--amber);color:#1A1204}
.wstep.done .wn{background:rgba(110,231,160,.1);border-color:rgba(110,231,160,.5);color:var(--green)}
.wt{display:grid;gap:2px;min-width:0}
.wt b{font:600 16px/1.3 var(--display);letter-spacing:-.01em;color:var(--bright)}
.wsum{font:400 13px/1.5 var(--sans);color:var(--mute);overflow-wrap:anywhere}
.wstep.done .wsum{color:var(--ink)}
.wthumb{width:44px;height:44px;border-radius:8px;border:1px solid var(--rule2);object-fit:cover}
.wbody{display:none;gap:14px;padding:0 16px 16px 60px}
.wstep.now .wbody,.wstep.open .wbody{display:grid;animation:enter .25s var(--ease-out)}
.wacts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
a.btn-amber{text-decoration:none;display:inline-flex;align-items:center}
.wlink{all:unset;cursor:pointer;font:500 12px var(--mono);color:var(--mute);text-decoration:underline;text-decoration-color:var(--faint);text-underline-offset:3px;padding:6px 2px}
.wlink:focus-visible{outline:2px solid var(--amber);outline-offset:2px;border-radius:4px}
@media (hover:hover) and (pointer:fine){.wlink:hover{color:var(--bright)}}
.wbox{display:grid;gap:12px;border:1px solid var(--rule2);border-radius:11px;padding:14px;background:rgba(2,4,6,.5)}
.wca{margin:0;font:600 15px/1.45 var(--mono);color:var(--amber);overflow-wrap:anywhere}
.wnote{margin:0;font:400 12.5px/1.55 var(--sans);color:var(--mute)}
.wmsg{margin:0;font:500 12.5px/1.55 var(--mono);color:var(--mute);overflow-wrap:anywhere}
.wmsg.bad{color:var(--coral)}
.wmsg.good{color:var(--green)}
.wfield{display:inline-flex;align-items:center;gap:8px;font:500 12px var(--mono);color:var(--mute)}
.wfield input,.wfields input{background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:10px;color:var(--bright);font:500 14px var(--mono);padding:10px 12px;min-width:0}
.wfield input{width:88px}
.wfields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wcheck{display:grid;gap:4px;font:400 13.5px/1.55 var(--sans);color:var(--ink)}
.wcheck b.ok{color:var(--green)}
.wcheck b.no{color:var(--coral)}
.wcheck span{color:var(--mute)}
.wwait{margin:0;font:400 13.5px/1.55 var(--sans);color:var(--ink)}
.wwait::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 10px var(--amber);margin-right:9px;vertical-align:1px;animation:breathe 1.4s ease-in-out infinite}
.wgo{font-size:16px;padding:14px 26px}
.wdone{display:grid;gap:14px;border:1px solid rgba(110,231,160,.45);border-radius:14px;padding:18px;background:rgba(10,24,18,.5)}
.wdone .eyebrow{margin:0;color:var(--green)}
.wdone .wca{font-size:17px}
.lpmore{border:1px solid var(--rule2);border-radius:14px;background:rgba(4,7,11,.55)}
.lpmore summary{cursor:pointer;list-style:none;padding:14px 16px;font:600 14px var(--display);color:var(--ink);display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.lpmore summary::-webkit-details-marker{display:none}
.lpmore summary::before{content:"+";font:500 14px var(--mono);color:var(--amber)}
.lpmore[open] summary::before{content:"−"}
.lpmore summary span{font:400 12px var(--mono);color:var(--faint)}
.lpmore>:not(summary){margin:0 16px 16px}
.lpmore .lpspawn{margin-top:0;padding-top:0;border-top:0}
@media (max-width:600px){.whead{padding:14px}.wbody{padding:0 14px 14px}.wfields{grid-template-columns:1fr}.wgo{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.wstep.now .wbody,.wstep.open .wbody,.wwait::before{animation:none}}
.lprow label input{width:80px;margin-left:6px;flex:none}
.lprow select{margin-left:6px;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:9px;color:var(--bright);font:500 13px var(--mono);padding:8px 10px}
#lplock input{flex:1;min-width:0;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:11px;color:var(--bright);font:500 15px var(--mono);padding:11px 13px}
.lplog{margin:0;min-height:120px;white-space:pre-wrap;overflow-wrap:anywhere;font:400 12px/1.6 var(--mono);color:var(--ink)}
@media (max-width:760px){.lpmoment{grid-template-columns:1fr}}

#feed .tw.buy{color:var(--green);border-color:rgba(110,231,160,.45)}
#feed .tw.sell{color:var(--coral);border-color:rgba(255,107,94,.45)}
#feed .txl{color:var(--mute);text-decoration:none;border-bottom:1px dotted var(--faint)}
#feed .txl:hover{color:var(--cyan)}

/* ---------- SPAWN: the launchpad ---------- */
body.sp{min-height:100vh;background:radial-gradient(1200px 600px at 70% -10%,rgba(255,184,77,.06),transparent 60%),var(--abyss)}
.spwrap{max-width:1180px;margin:0 auto;padding:calc(var(--nav) + 48px) var(--gutter) 40px}
.sphead{display:grid;gap:14px;margin-bottom:44px}
.sphead h1{margin:0}
.sphead h1 .wordmark-svg{width:min(70vw,380px);height:auto}
.sphead .lede{margin:0;font-size:clamp(17px,2.2vw,21px);color:var(--ink)}
.spstate{margin:0;justify-self:start;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber);border:1px solid rgba(255,184,77,.45);border-radius:999px;padding:6px 12px}
.spstats{margin:8px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:4px;overflow:hidden;max-width:880px}
.spstats div{background:rgba(7,12,18,.96);padding:16px 18px;display:grid;gap:4px}
.spstats dt{font:400 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.spstats dd{margin:0;font:300 30px/1 var(--display);letter-spacing:-.03em;color:var(--bright);font-variant-numeric:tabular-nums}
.spsec{margin:0 0 64px}
.spsec h2{margin:0 0 20px;font:600 22px/1.1 var(--display);letter-spacing:-.02em;color:var(--bright)}
.spsec h2 span{color:var(--faint);font-weight:400}
.spwhy{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule2);max-width:880px}
.spwhy li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--rule2)}
.spwhy .n{font:400 12px var(--mono);color:var(--amber);padding-top:5px}
.spwhy h3{margin:0 0 6px;font:600 19px var(--display);letter-spacing:-.02em;color:var(--bright)}
.spwhy p{margin:0;color:var(--mute);font-size:15px;line-height:1.65;max-width:66ch}
.spwhy a,.spnote a{color:var(--ink)}
.spnote{margin:14px 0 0;max-width:66ch}
.squares{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:4px;max-width:560px;margin-bottom:16px}
.squares i{aspect-ratio:1;border-radius:3px;background:var(--rule2)}
.squares i.burn{background:var(--amber);box-shadow:0 0 10px rgba(255,184,77,.25)}
.squares i.creator{background:var(--cyan)}
.feekey{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font:400 13px var(--sans);color:var(--mute)}
.feekey i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:8px;vertical-align:-1px}
.feekey i.burn{background:var(--amber)} .feekey i.creator{background:var(--cyan)}
.feekey b{color:var(--bright);font-weight:600}
.movelist{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:760px}
.movelist li{display:grid;grid-template-columns:minmax(80px,140px) minmax(0,1fr) auto;gap:14px;align-items:center;font:400 12px var(--mono);color:var(--mute)}
.movelist li.empty{display:block;color:var(--faint)}
.movelist .tk{font:600 14px var(--display);color:var(--bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.movelist .meter{height:8px;border-radius:4px;background:rgba(2,4,6,.8);border:1px solid var(--rule2);overflow:hidden}
.movelist .meter i{display:block;height:100%;background:linear-gradient(90deg,var(--coral),var(--amber));transform-origin:left;transition:transform .5s var(--ease-out)}
.sectop{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px}
.sorts{display:flex;gap:4px;flex-wrap:wrap}
.coinsearch{flex:1 1 200px;max-width:320px;min-width:0;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:999px;color:var(--bright);font:500 13px var(--mono);padding:8px 14px;order:3}
.coinsearch:focus{border-color:rgba(255,184,77,.7);outline:none}
@media (max-width:720px){.coinsearch{max-width:none;flex-basis:100%;font-size:16px}}
.sorts button{font:500 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);background:transparent;border:1px solid var(--rule2);border-radius:999px;padding:6px 11px}
.sorts button[aria-selected="true"]{color:var(--bright);border-color:var(--rule3);background:var(--rule)}
.spgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.spgrid .empty{color:var(--faint);font:400 13px var(--mono);margin:0}
.spcoin{background:linear-gradient(180deg,rgba(11,18,26,.96),rgba(7,12,18,.96));border:1px solid var(--rule);border-radius:14px;padding:16px;display:grid;gap:14px;color:inherit;text-decoration:none;transition:border-color .15s ease,transform .2s var(--ease-out),box-shadow .2s ease}
@media (hover:hover) and (pointer:fine){.spcoin:hover{border-color:rgba(255,184,77,.35)}.spcoin.link:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(0,0,0,.45)}}
.spcoin.link:active{transform:scale(.99)}
.spcoin .newtag{margin-left:8px;font:600 9px var(--mono);font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:#1A1204;background:var(--green);border-radius:4px;padding:1px 5px;vertical-align:3px}
.ch{display:flex;gap:12px;align-items:center;min-width:0}
.ch img{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--rule);flex:none}
.ch div{display:grid;min-width:0}
.ch b{font:600 17px var(--display);color:var(--bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch span{font:400 12.5px var(--sans);color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cs div{display:grid;gap:2px}
.cs dt{font:400 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.cs dd{margin:0;font:500 12.5px var(--mono);color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prog{height:6px;border-radius:3px;background:rgba(2,4,6,.8);border:1px solid var(--rule2);overflow:hidden}
.prog i{display:block;height:100%;background:var(--green);transform-origin:left}
.cf{display:flex;justify-content:space-between;align-items:center;gap:10px;font:400 11px var(--mono);color:var(--mute)}
.cf .btn-amber{padding:8px 16px;font-size:13px;text-decoration:none}
.spform .lf{max-width:760px;background:rgba(7,12,18,.96);border:1px solid var(--rule);border-radius:12px;padding:18px;gap:10px;
  grid-template-columns:152px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"pic name name" "pic ticker buy" "pic go go" "note note note"}
.spform .lf .btn-amber{padding:12px 18px}
.spform .lf input[type=text]{padding:11px 13px}
#spawnnote{max-width:760px;margin:12px 0 0}
.own{display:grid;gap:10px;padding:12px;border:1px solid var(--rule2);border-radius:12px;background:rgba(2,4,6,.5)}
.ownpics{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ownpics figure{margin:0;display:grid;gap:5px;min-width:0}
.ownpics img{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:10px;background:var(--rule)}
.ownpics figcaption{font:400 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.ownwatch{margin:0;display:grid;gap:6px}
.ownwatch canvas{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:10px;background:#04070B}
.ownwatch figcaption{font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--mute)}
#ownstats{margin:0;line-height:1.55}
.ownrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ownrow .ok{color:var(--green)} .ownrow .bad{color:var(--coral)}
.tradesheet{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
.formrow{display:flex;gap:10px;flex-wrap:wrap}
.tradesheet{width:min(440px,100%);display:grid;gap:14px}
.tradetop{display:flex;gap:12px;align-items:center}
.tradetop img{width:44px;height:44px;border-radius:9px;object-fit:cover;background:var(--rule)}
.tradetop h2{margin:0;font:600 20px var(--display);color:var(--bright)}
.tradetop p{margin:2px 0 0}
.tradetop .x{margin-left:auto;background:transparent;border:1px solid var(--rule2);color:var(--mute);border-radius:9px;width:34px;height:34px;font-size:18px;line-height:1;flex:none}
.tradetop .x.share + .x{margin-left:0}
.tradetop .x svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px}
.tradesheet .tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}
.paywith{display:flex;align-items:center;justify-content:space-between;gap:12px;font:400 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.paywith > span{white-space:nowrap}
.paywith .tabs{flex:0 1 auto}
.paywith .tabs button{padding:7px 10px}
.lastburn{margin:10px 0 0}
.lastburn a{color:var(--mute)}
.amt{display:flex;align-items:center;gap:10px;background:rgba(2,4,6,.7);border:1px solid var(--rule2);border-radius:11px;padding:4px 4px 4px 14px}
.amt span{font:500 12px var(--mono);color:var(--mute)}
.amt input{flex:1;min-width:0;background:transparent;border:0;color:var(--bright);font:500 20px var(--mono);padding:8px;text-align:right;outline:none}
.quote{margin:0}
.quote div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule2);font:400 12px var(--mono)}
.quote dt{color:var(--faint)} .quote dd{margin:0;color:var(--ink);text-align:right;overflow-wrap:anywhere}
#tlog{margin:0;overflow-wrap:anywhere}
@media (max-width:720px){
  .spwrap{padding-top:calc(var(--nav) + 28px)}
  .spstats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .spwhy li{grid-template-columns:32px minmax(0,1fr);gap:10px}
  .spstats dd{font-size:22px}
  .spstats div{padding:12px}
  .squares{grid-template-columns:repeat(10,minmax(0,1fr))}
  .spform .lf{grid-template-columns:88px minmax(0,1fr) 112px;grid-template-areas:"pic name name" "pic ticker ticker" "buy buy go" "note note note";padding:12px;gap:8px}
  .spform .lf input[type=text]{padding:9px 12px}
  .movelist li{grid-template-columns:minmax(64px,90px) minmax(0,1fr);row-gap:4px}
  .movelist .n{grid-column:1/-1}
}

/* ---------- the main page's coins ---------- */
.homecoins{padding-top:80px}
.homecoins .sectop{align-items:end;gap:16px 24px}
.homecoins .display{margin-bottom:12px}
.homecoins .eyebrow .pill{margin-left:8px;vertical-align:1px}
.homecoins .lede{margin:0 0 26px}
.homecoins .sectop .btn-ghost{margin-bottom:24px}
.homefee{margin:18px 0 0;max-width:100ch}
@media (max-width:720px){.homecoins{padding-top:56px}.homecoins .sectop .btn-ghost{margin-bottom:0}.homecoins .lede{margin-top:12px}}

/* ---------- the launch card: what the first screen is for ---------- */
.launchcard{position:absolute;z-index:3;left:var(--gutter);top:var(--cardtop,calc(var(--nav) + 200px));width:min(420px,calc(100% - 2 * var(--gutter)));max-height:calc(100% - var(--cardtop,200px) - 16px);overflow:auto;scrollbar-width:none;
  display:grid;gap:14px;padding:20px 20px 16px;border-radius:22px;background:linear-gradient(180deg,rgba(14,22,31,.82),rgba(7,12,18,.86));border:1px solid rgba(255,184,77,.22);
  box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.02) inset,0 0 60px rgba(255,184,77,.06);cursor:default;user-select:text;-webkit-user-select:text}
.launchcard::-webkit-scrollbar{display:none}
@media (hover:hover) and (pointer:fine){.launchcard{backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3)}}
.lceyebrow{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:500 10px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.lceyebrow .pill{letter-spacing:.12em}
.lctitle{margin:0;font:650 36px/1.02 var(--display);letter-spacing:-.04em;color:var(--bright);text-wrap:balance}
.lctitle span{display:block;color:var(--amber);text-shadow:0 0 28px rgba(255,184,77,.25)}
.lf.lfcard{grid-template-columns:88px minmax(0,1fr);grid-template-areas:"pic name" "pic ticker" "buy buy" "go go" "note note"}
.lf.lfcard [data-lf=go]{padding:14px 18px;font-size:15px;border-radius:12px;box-shadow:0 8px 30px rgba(255,184,77,.18)}
.lf.lfcard [data-lf=go]:disabled{box-shadow:none}
.lcstats{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:12px;overflow:hidden}
.lcstats div{background:rgba(4,7,11,.62);padding:9px 11px;display:grid;gap:3px;min-width:0}
.lcstats dt{font:400 9px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcstats dd{margin:0;font:300 20px/1 var(--display);letter-spacing:-.02em;color:var(--bright);font-variant-numeric:tabular-nums}
.lcfoot{margin:0;display:flex;justify-content:space-between;gap:12px;font:400 11.5px var(--mono)}
.lcfoot a{color:var(--mute);text-decoration:none;transition:color .15s ease}
@media (hover:hover) and (pointer:fine){.lcfoot a:hover{color:var(--amber)}}
body.intro .launchcard{opacity:0;transform:translateY(10px)}
.launchcard{transition:opacity .7s var(--ease-out) .5s,transform .7s var(--ease-out) .5s}
body.intro .launchcard{pointer-events:none}
@media (min-width:1024px) and (max-height:820px){.corner.tl{display:none}.lctitle{font-size:30px}.launchcard{gap:11px;padding:16px 18px 14px}}
@media (max-width:1023px){
  .launchcard{top:auto;bottom:max(12px,env(safe-area-inset-bottom));left:var(--gutter);right:var(--gutter);width:auto;max-height:none;padding:14px 14px 12px;gap:10px;border-radius:18px}
  .lctitle{font-size:23px;letter-spacing:-.03em}
  .lctitle span{display:inline;margin-left:.25em}
  .lcstats,.lcfoot{display:none}
  .lf.lfcard{grid-template-columns:88px minmax(0,1fr) 112px;grid-template-areas:"pic name name" "pic ticker ticker" "buy buy go" "note note note"}
  .lf.lfcard [data-lf=go]{padding:12px;font-size:14px}
  .dock{bottom:calc(var(--cardh,0px) + max(12px,env(safe-area-inset-bottom)) + 10px)}
}
@media (max-width:420px){.lctitle span{display:block;margin:0}}

/* the dock, folded: one button, the live banners still show above it */
.talkpill{display:none;align-items:center;gap:9px;margin:0 auto;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:var(--glass2);border:1px solid var(--rule2);border-radius:999px;padding:9px 15px;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform .16s var(--ease-out),border-color .15s ease,color .15s ease}
.talkpill:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.talkpill:hover{border-color:rgba(255,184,77,.6);color:var(--amber)}}
.talkpill .dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:breathe 1.8s infinite}
.dock.closed{width:auto;padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.dock.closed .talkpill{display:inline-flex}
.dock.closed .dockhead,.dock.closed .ledwrap,.dock.closed .composer,.dock.closed .dockfoot,.dock.closed .toast,.dock.closed .modstate{display:none!important}
.dockx{margin-left:10px;flex:none;width:26px;height:26px;padding:0;border:1px solid var(--rule2);border-radius:8px;background:transparent;color:var(--mute);font:400 16px/1 var(--sans)}
.dockhead #queuetext{margin-left:auto}
.dockhead #queuetext:empty + .dockx{margin-left:auto}
body.stream .launchcard,body.stream .talkpill{display:none!important}

/* ---------- the main page: coins, and how it works ---------- */
.homecoins .sectop{align-items:end;margin-bottom:22px}
.homecoins .display{margin:0}
.homemore{margin:22px 0 0;display:flex;justify-content:center}
.spawnhow{padding-top:88px}
.howsteps{list-style:none;margin:8px 0 26px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:14px;overflow:hidden}
.howsteps li{background:rgba(7,12,18,.96);padding:24px;display:grid;gap:10px;align-content:start}
.howsteps b{font:500 12px var(--mono);color:var(--amber);letter-spacing:.1em}
.howsteps h3{margin:0;font:600 22px/1.15 var(--display);letter-spacing:-.025em;color:var(--bright)}
.howsteps p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.62}
.howcta{margin:18px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.howcta a{text-decoration:none}
.homefee:empty{display:none}
@media (max-width:860px){.howsteps{grid-template-columns:1fr}}

/* ---------- the 30-second story, and the tech in plain words ---------- */
.lcsub{margin:-4px 0 0;font:400 13.5px/1.5 var(--sans);color:var(--mute)}
.lcsub a{color:var(--amber);text-decoration:none;white-space:nowrap}
.story4{list-style:none;margin:10px 0 28px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.story4 li{position:relative;display:grid;grid-template-rows:auto 124px auto 1fr;gap:12px;align-content:start;padding:22px 20px 20px;border-radius:18px;
  background:linear-gradient(180deg,rgba(14,22,31,.92),rgba(7,12,18,.96));border:1px solid var(--rule)}
.story4 .n{font:500 11px var(--mono);letter-spacing:.14em;color:var(--amber)}
.story4 .ic{width:76px;height:76px;align-self:center;fill:none;stroke:var(--amber);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 14px rgba(255,184,77,.25))}
.story4 .ic circle{fill:var(--amber);stroke:none}
.story4 .ex{margin:0;display:flex;align-items:center;gap:12px}
.story4 .ex img{width:112px;height:112px;border-radius:12px;border:1px solid var(--rule2);background:#04070B;flex:none}
.story4 .ex figcaption{font:400 10.5px/1.45 var(--mono);color:var(--faint);letter-spacing:.04em}
.story4 h3{margin:0;font:650 22px/1.12 var(--display);letter-spacing:-.025em;color:var(--bright)}
.story4 p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.6}
.story4 p i{font-style:italic}
.story4 .links{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:4px}
.story4 .links a{font:500 12px var(--mono);color:var(--cyan);text-decoration:none}
.story4 .links a:hover{text-decoration:underline}
@media (max-width:1100px){.story4{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.story4{grid-template-columns:1fr}.story4 li{grid-template-rows:auto auto auto auto}}

.tech6{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:16px;overflow:hidden}
.tech6 li{background:rgba(7,12,18,.97);padding:24px 22px;display:grid;gap:10px;align-content:start}
.tech6 .k{font:500 10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--amber)}
.tech6 h3{margin:0;font:650 20px/1.2 var(--display);letter-spacing:-.02em;color:var(--bright)}
.tech6 p{margin:0;color:var(--mute);font-size:14px;line-height:1.6}
.tech6 .why{color:var(--ink)}
.tech6 .why b{color:var(--green);font-weight:600}
.tech6 a{color:var(--cyan)}
@media (max-width:980px){.tech6{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.tech6{grid-template-columns:1fr}}
.flow{margin:6px 0 30px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:500 12px var(--mono);color:var(--ink)}
.flow span{padding:8px 12px;border:1px solid var(--rule2);border-radius:999px;background:rgba(7,12,18,.9);white-space:nowrap}
.flow span.hot{border-color:rgba(255,184,77,.5);color:var(--amber)}
.flow i{font-style:normal;color:var(--faint)}
