:root{--bg:#0B0B0C;--text:#F5F5F7;--muted:#9A9AA1;--accent:#FF5A1F;--line:rgba(255,255,255,.12);--glass:rgba(34,34,37,.62);--ease:cubic-bezier(.32,.72,0,1);--bar:64px;--dock:56px;--gap:20px;--act:46px;--actgap:16px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:"Hanken Grotesk",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
button{font-family:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

/* ---- gate, notices ---- */
.center{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:24px}
.card{width:min(440px,100%);text-align:left;animation:rise .7s var(--ease) backwards}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.05em;margin-bottom:48px}
.brand img{width:26px;height:26px;border-radius:6px}
h1{margin:0 0 10px;font-size:clamp(34px,7vw,48px);font-weight:800;letter-spacing:-.04em;line-height:1.05}
.kicker{margin:0 0 8px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600}
.lede{margin:0 0 28px;font-size:18px;color:var(--muted);line-height:1.45}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
input{width:100%;font:inherit;font-size:18px;color:var(--text);background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:14px;padding:15px 18px;margin-bottom:12px;transition:border-color .2s,box-shadow .25s,background .2s}
input:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.08);box-shadow:0 0 0 4px rgba(255,90,31,.16)}
.card.wide{width:min(640px,100%)}
.nda{max-height:52vh;overflow:auto;text-align:left;font-size:15px;line-height:1.55;color:var(--muted);background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;padding:6px 20px;margin-bottom:20px}
.nb{padding:14px 0;border-bottom:1px solid var(--line)}.nb:last-child{border-bottom:0}
.nb p{margin:0;white-space:pre-wrap}
.initrow{display:flex;justify-content:flex-end;margin-top:12px}
button.init{height:40px;min-width:132px;padding:0 18px;border-radius:999px;border:1px dashed var(--accent);background:transparent;color:var(--accent);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .18s var(--ease)}
button.init:hover{background:rgba(255,90,31,.12)}button.init:active{transform:scale(.97)}
button.init.on{border-style:solid;background:rgba(255,90,31,.14);color:var(--text);font-style:italic;font-size:17px;letter-spacing:.14em;min-width:96px}
.sign{margin:6px 0 14px;font-size:14px;line-height:1.5;color:var(--muted);font-variant:small-caps;letter-spacing:.04em}
.f{display:block;margin:0 0 12px}.f>span{display:block;margin:0 0 6px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.f input{margin:0}
input[type=date]{color-scheme:dark;min-height:54px}
.check span{line-height:1.5;font-size:14px}
.nda:focus{outline:none;border-color:var(--accent)}
.check{display:flex;gap:12px;align-items:flex-start;margin:4px 0 16px;font-size:15px;color:var(--text);cursor:pointer}
.check input{width:26px;height:26px;margin:0;flex:none;accent-color:var(--accent);cursor:pointer}
.fine{margin:14px 0 0;font-size:13px;color:var(--muted)}
a.cta{text-decoration:none;padding:0 18px}
#unlock,#mynda{background:rgba(255,255,255,.1);color:var(--text);box-shadow:none}#unlock:hover,#mynda:hover{background:rgba(255,255,255,.18)}
textarea{width:100%;font:inherit;font-size:18px;color:var(--text);background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:14px;padding:15px 18px;margin-bottom:12px;resize:vertical;min-height:84px;transition:border-color .2s,box-shadow .25s,background .2s}
textarea:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.08);box-shadow:0 0 0 4px rgba(255,90,31,.16)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
input.shake{animation:shake .42s}
.err{min-height:22px;margin:12px 0 0;color:#FF7A7A;font-size:14px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{font:inherit;font-size:16px;font-weight:600;color:var(--text);text-decoration:none;cursor:pointer;padding:14px 24px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid var(--line);transition:background .2s,color .2s,transform .12s;display:inline-block}
.btn:hover:not(:disabled){background:var(--accent);color:#0B0B0C;border-color:var(--accent)}
.btn:active{transform:scale(.975)}.btn:disabled{opacity:.5}
.btn.primary{background:var(--accent);color:#0B0B0C;border-color:var(--accent)}
form .btn{width:100%}

/* ---- viewer ---- */
body.vp{overflow:hidden;overscroll-behavior:none;background:#000}
#app{position:fixed;inset:0;overflow:hidden;background:#000;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}

.bar{position:absolute;z-index:6;top:0;left:0;right:0;height:calc(var(--bar) + var(--sat));padding:var(--sat) max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:12px;transition:opacity .45s var(--ease)}
.who{display:flex;align-items:center;gap:12px;min-width:0}
.who img{width:28px;height:28px;border-radius:7px;flex:none}
.who .t{display:flex;flex-direction:column;min-width:0;line-height:1.18}
.wm{font-weight:700;font-size:15px;letter-spacing:-.04em}
.for{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tools{display:flex;align-items:center;gap:10px;flex:none}

.icon{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);color:var(--text);cursor:pointer;padding:0;transition:background .2s,transform .18s var(--ease),opacity .2s}
.icon:hover:not(:disabled){background:rgba(74,74,80,.7)}
.icon:active:not(:disabled){transform:scale(.9)}
.icon:disabled{opacity:.28;cursor:default}
.icon[aria-pressed=true]{background:rgba(255,255,255,.92);color:#0B0B0C}

.cta{height:40px;padding:0 18px 0 14px;display:inline-flex;align-items:center;gap:9px;border:0;border-radius:999px;background:var(--accent);color:#0B0B0C;font-size:14.5px;font-weight:650;cursor:pointer;white-space:nowrap;transition:background .2s,transform .18s var(--ease),box-shadow .3s;box-shadow:0 6px 28px rgba(255,90,31,.25)}
.cta:hover{background:#FF7440}.cta:active{transform:scale(.96)}
.cta .sz{font-weight:500;opacity:.6;font-size:12.5px}
.cta .spin{display:none;width:16px;height:16px;border-radius:50%;border:2px solid rgba(11,11,12,.22);border-top-color:#0B0B0C;animation:spin .8s linear infinite}
.cta.busy{pointer-events:none}.cta.busy svg{display:none}.cta.busy .spin{display:block}.cta.busy .sz{display:none}

.dlmenu{position:absolute;z-index:8;top:calc(var(--bar) + var(--sat) - 6px);right:max(20px,env(safe-area-inset-right));width:min(340px,calc(100vw - 32px));padding:8px;border-radius:18px;background:rgba(30,30,33,.9);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.6);animation:rise .3s var(--ease) backwards}
.dlmenu[hidden]{display:none}
.opt{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:12px 14px;border:0;border-radius:12px;background:none;color:var(--text);text-align:left;cursor:pointer;font-size:14.5px;transition:background .15s}
.opt:hover,.opt:focus-visible{background:rgba(255,255,255,.1);outline:none}
.opt b{font-weight:650}.opt span{font-size:12.5px;color:var(--muted);line-height:1.35}
.cta[aria-expanded=true] svg:last-child{transform:rotate(180deg)}
.cta svg:last-child{transition:transform .25s var(--ease)}
.dlstat{position:absolute;z-index:8;top:calc(var(--bar) + var(--sat) - 6px);right:max(20px,env(safe-area-inset-right));width:min(330px,calc(100vw - 32px));padding:14px 16px 16px;border-radius:18px;background:rgba(30,30,33,.84);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.6);animation:rise .4s var(--ease) backwards}
.dlstat[hidden]{display:none}
.dlrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.dlrow b{font-size:14px;font-weight:650}
.dlrow span{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.dlx{background:none;border:0;padding:0;color:var(--muted);font-size:12.5px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.dlx:hover{color:var(--text)}
.track{height:4px;border-radius:99px;background:rgba(255,255,255,.14);overflow:hidden;margin-top:12px}
.track i{display:block;height:100%;width:0;background:var(--accent);border-radius:inherit;transition:width .25s linear}
.track.ind i{width:36%;transition:none;animation:sweep 1.15s var(--ease) infinite}
.dlstat.ok .track i{background:#4ADE80}.dlstat.err .dlrow b{color:#FF7A7A}.dlstat.err .track i{background:#FF7A7A}

.stage{position:absolute;z-index:1;top:calc(var(--bar) + var(--sat) + 4px);bottom:calc(var(--dock) + var(--gap)*2 + var(--sab));left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--actgap);touch-action:pinch-zoom;outline:none}
.frame{flex:none;position:relative;border-radius:14px;overflow:hidden;background:#0a0a0b;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 40px 90px -24px rgba(0,0,0,.95);transition:border-radius .45s var(--ease)}
.frame.loading::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.07) 50%,transparent 70%);background-size:260% 100%;animation:sheen 1.25s linear infinite}
.imgs img{position:absolute;inset:0;width:100%;height:100%;display:block;-webkit-user-drag:none;will-change:transform,opacity}
#ghost{position:absolute;inset:0;z-index:2;pointer-events:none}
.emptymsg{color:var(--muted);font-size:18px;text-align:center;margin:0}
.emptymsg[hidden]{display:none}

.edge{position:absolute;top:0;bottom:0;width:min(16%,170px);z-index:3;border:0;background:none;padding:0;cursor:pointer;display:grid;place-items:center}
.edge.prev{left:0}.edge.next{right:0}
.edge span{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--glass);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid var(--line);opacity:0;transform:scale(.85);transition:opacity .25s,transform .35s var(--ease)}
.edge:hover span,.edge:focus-visible span{opacity:1;transform:none}
.edge[disabled]{display:none}
@media (hover:none){.edge{display:none}}

.dock{position:absolute;z-index:6;height:var(--dock);border-radius:999px}
.dock{left:0;right:0;margin-inline:auto;width:max-content;max-width:calc(100vw - 24px);bottom:calc(var(--gap) + var(--sab));display:flex;align-items:center;gap:4px;padding:0 8px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);box-shadow:0 12px 44px rgba(0,0,0,.5);transition:opacity .45s var(--ease)}
.dock .icon{background:none;border:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.dock .icon:hover:not(:disabled){background:rgba(255,255,255,.12)}
.scrub{display:flex;gap:4px;align-items:center;height:100%;width:min(44vw,420px);min-width:110px;padding:0 6px}
.seg{flex:1;min-width:3px;height:100%;position:relative;background:none;border:0;padding:0;cursor:pointer}
.seg::before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;border-radius:99px;background:rgba(255,255,255,.22);transition:background .3s,height .25s var(--ease),margin .25s var(--ease)}
.seg:hover::before{background:rgba(255,255,255,.55)}
.seg.done::before{background:rgba(255,255,255,.78)}
.seg.on::before{background:var(--accent);height:6px;margin-top:-3px}
.count{min-width:56px;text-align:center;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-right:4px}

.act{flex:none;height:var(--act);display:flex;align-items:center;justify-content:center;gap:10px;max-width:100%}
.learn,.ctx{position:relative;z-index:4;height:var(--act);border-radius:999px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:15px;font-weight:650;white-space:nowrap;animation:rise .5s var(--ease) backwards;transition:background .2s,opacity .45s var(--ease),transform .18s var(--ease)}
.learn{padding:0 20px 0 24px;border:0;background:var(--accent);color:#0B0B0C;box-shadow:0 10px 36px rgba(255,90,31,.28)}
.learn:hover{background:#FF7440}.learn b{font-weight:600;opacity:.6}
.learn:active,.ctx:active{transform:scale(.97)}
.ctx{max-width:min(320px,calc(100vw - 48px));padding:0 20px 0 14px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);color:var(--text);font-weight:600;font-size:14.5px}
.ctx:hover{background:rgba(74,74,80,.72)}
.ctx span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.learn[hidden],.ctx[hidden]{display:none}

.tip{position:fixed;z-index:9;pointer-events:none;width:208px;padding:6px 6px 8px;border-radius:16px;background:rgba(30,30,33,.88);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.6);transform:translate(-50%,-100%);animation:fade .18s ease backwards}
.tip[hidden]{display:none}
.tip img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:#111}
.tip .tt{padding:8px 4px 0;font-size:12.5px;font-weight:600;line-height:1.3}
.tip .tt span{color:var(--muted);font-weight:500;margin-right:6px;font-variant-numeric:tabular-nums}

#overview{position:absolute;z-index:5;left:0;right:0;bottom:0;top:calc(var(--bar) + var(--sat));background:rgba(0,0,0,.74);backdrop-filter:blur(34px) saturate(160%);-webkit-backdrop-filter:blur(34px) saturate(160%);animation:fade .28s ease backwards}
#overview[hidden]{display:none}
.ovscroll{position:absolute;inset:0;overflow:auto;padding:20px max(28px,env(safe-area-inset-left)) calc(40px + var(--sab));overscroll-behavior:contain}
.ovgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:26px 22px;max-width:1360px;margin:0 auto}
.ovc{background:none;border:0;padding:0;text-align:left;color:inherit;cursor:pointer;animation:rise .5s var(--ease) backwards}
.ovc .im{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#0a0a0b;box-shadow:0 0 0 1px rgba(255,255,255,.1);transition:transform .35s var(--ease),box-shadow .2s}
.ovc .im img{width:100%;height:100%;display:block;object-fit:cover;-webkit-user-drag:none}
.ovc:hover .im{transform:scale(1.035)}
.ovc:focus-visible{outline:none}
.ovc.cur .im,.ovc:focus-visible .im{box-shadow:0 0 0 3px var(--accent)}
.ovc .bk{position:absolute;right:8px;bottom:8px;padding:3px 9px;border-radius:99px;font-size:11.5px;font-weight:700;background:rgba(20,20,22,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line)}
.ovc .lb{display:flex;gap:9px;margin-top:10px;font-size:14px;font-weight:600;line-height:1.3}
.ovc .n{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums;min-width:1.2em}
#ovghost{position:absolute;inset:0;z-index:2;pointer-events:none}

.fs .stage{top:0;bottom:0;left:0;right:0}
.fs .frame{border-radius:0;box-shadow:none}
.fs .act{position:absolute;left:0;right:0;height:auto;bottom:calc(var(--gap)*2 + var(--dock) + var(--sab) + 12px);pointer-events:none;z-index:6}
.fs .act>*{pointer-events:auto}
.fs.idle .bar,.fs.idle .dock,.fs.idle .learn,.fs.idle .ctx,.fs.idle .edge span{opacity:0;pointer-events:none}
.fs.idle{cursor:none}

.in-next{animation:inNext .5s var(--ease) both}.out-next{animation:outNext .5s var(--ease) both}
.in-prev{animation:inPrev .5s var(--ease) both}.out-prev{animation:outPrev .5s var(--ease) both}
.in-jump{animation:inJump .45s var(--ease) both}.out-jump{animation:outJump .35s ease both}
.zoom-in-new{animation:zNewIn .6s var(--ease) both}.zoom-in-old{animation:zOldIn .6s var(--ease) both}
.zoom-out-new{animation:zNewOut .6s var(--ease) both}.zoom-out-old{animation:zOldOut .6s var(--ease) both}
.in-first{animation:fade .5s ease both}
.sharpen{animation:fade .45s ease both}
@keyframes inNext{from{opacity:0;transform:translateX(7%) scale(.985)}to{opacity:1;transform:none}}
@keyframes outNext{to{opacity:0;transform:translateX(-7%) scale(.985)}}
@keyframes inPrev{from{opacity:0;transform:translateX(-7%) scale(.985)}to{opacity:1;transform:none}}
@keyframes outPrev{to{opacity:0;transform:translateX(7%) scale(.985)}}
@keyframes inJump{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@keyframes outJump{to{opacity:0;transform:scale(1.02)}}
@keyframes zNewIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}
@keyframes zOldIn{to{opacity:0;transform:scale(1.14)}}
@keyframes zNewOut{from{opacity:0;transform:scale(1.14)}to{opacity:1;transform:none}}
@keyframes zOldOut{to{opacity:0;transform:scale(.9)}}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes shake{20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes sheen{from{background-position:130% 0}to{background-position:-130% 0}}
@keyframes sweep{0%{transform:translateX(-110%)}100%{transform:translateX(290%)}}

/* wide: learn more and back sit beside the dock instead of above it */
@media (max-width:640px){
  .cta .sz{display:none}.cta{padding:0 16px 0 12px}.for{max-width:42vw}.count{display:none}.scrub{width:min(52vw,260px)}
  .stage{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right))}
  .frame{border-radius:10px}.ovgrid{grid-template-columns:repeat(2,1fr);gap:20px 14px}
}
@media (max-width:380px){.who .t{display:none}}
.cta .sm{display:none}
/* An NDA button needs the room on a phone: the wordmark text goes first, then the whole brand block. */
@media (max-width:640px){.bar:has(#mynda) .who .t,.bar:has(#unlock) .who .t{display:none}#mynda,#unlock{padding:0 14px;font-size:13.5px}#unlock .lg{display:none}#unlock .sm{display:inline}}
/* On a phone the agreement flows with the page, so a thumb is never caught inside a scroll box. */
@media (max-width:640px){.nda{max-height:none;overflow:visible}}
@media (max-width:340px){.bar{padding-left:10px;padding-right:10px}.tools{gap:6px}.tools .cta{padding:0 12px;font-size:13px}}
@media (max-width:440px){#mynda .lg{display:none}#mynda .sm{display:inline}.tools{gap:8px}}
@media (max-width:440px){.bar:has(#mynda) .who,.bar:has(#unlock) .who{display:none}.bar:has(#mynda),.bar:has(#unlock){justify-content:center}}
@media (max-height:520px){
  :root{--bar:48px;--dock:44px;--gap:12px;--act:38px;--actgap:8px}
  .for{display:none}.icon{width:34px;height:34px}.cta{height:34px}
}
@media (max-height:520px) and (min-width:640px){
  .scrub{width:min(22vw,200px);min-width:90px}.count{display:none}
  .learn{font-size:14px;padding:0 16px 0 20px}.ctx{font-size:13.5px;padding:0 16px 0 12px;max-width:190px}
}
@media (prefers-reduced-motion:reduce){.imgs img,.learn,.ctx,.ovc,.card,#overview,.dlstat{animation:none!important}.frame{transition:none}.seg::before,.icon,.cta{transition:none}}

/* Share this deck. Narrow phones have no room in the header, so the button moves to the bottom bar. */
#share2{display:none}
@media (max-width:440px){#share{display:none}#share2{display:inline-flex}}
#sharedlg{width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:26px 24px;border:1px solid var(--line);border-radius:22px;background:#141416;color:var(--text);box-shadow:0 30px 80px rgba(0,0,0,.6)}
#sharedlg::backdrop{background:rgba(0,0,0,.6);backdrop-filter:blur(6px)}
#sharedlg h2{margin:0 0 6px;font-size:24px;letter-spacing:-.02em}
.sh-lede{margin:0 0 20px;color:var(--muted);font-size:15px;line-height:1.5}
.sh-err{min-height:20px;margin:6px 0 10px;color:#FF7A7A;font-size:14px}
.sh-ok{margin:0 0 12px;font-size:15px;line-height:1.5}
.sh-link{padding:14px 16px;margin:0 0 16px;border:1px dashed var(--accent);border-radius:14px;color:var(--accent);font-size:14px;word-break:break-all;user-select:all}
.sh-actions{display:flex;gap:10px;justify-content:flex-end}
.sh-go,.sh-ghost,.sh-mini{font:inherit;font-weight:650;border-radius:999px;cursor:pointer;border:0;white-space:nowrap}
.sh-go{height:46px;padding:0 22px;font-size:15px;background:var(--accent);color:#0B0B0C}.sh-go:disabled{opacity:.5}
.sh-ghost{height:46px;padding:0 20px;font-size:15px;background:rgba(255,255,255,.08);color:var(--text)}
.sh-h{margin:24px 0 8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sh-row{display:flex;align-items:center;gap:8px;padding:10px 0;border-top:1px solid var(--line)}
.sh-who{flex:1;min-width:0;display:flex;flex-direction:column;font-size:14px}.sh-who span{color:var(--muted);font-size:13px}
.sh-mini{height:34px;padding:0 14px;font-size:13px;background:rgba(255,255,255,.08);color:var(--text)}.sh-x{color:#FF7A7A}
