/* MorphOrb visual tokens: near-black, pearl particles, emerald resolution. */
:root{--bg:#08090b;--panel:#0d0f12;--line:#282c31;--line2:#202429;--txt:#ebebeb;--txt-mid:#a3a9b1;--txt-dim:#9199a4;--green:#34d399;--green-hi:#6ee7b7;--mo-white:235,235,235;--mo-green:52,211,153;--mo-radius:24px;--mo-space:8px;--mo-ease:cubic-bezier(.22,1,.36,1)}
body{background:radial-gradient(ellipse at 50% 30%,#14171b 0,transparent 55%),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--txt)}
.shell{max-width:1200px;border:0;background:transparent;box-shadow:none;overflow:visible;margin:0 auto 64px;isolation:isolate}.shell:before{display:none}
.terminal{min-height:84px;padding:24px 0;background:transparent;border-bottom:1px solid var(--line2);font-family:ui-monospace,monospace}.terminal .dot{display:none}.terminal .prompt{margin-left:0;color:var(--txt);font-size:13px;letter-spacing:.06em}.terminal .online{color:var(--green);font-size:10px}
.body{padding:0 24px 40px}.hero{display:block;min-height:0;text-align:center;margin:64px auto 0}.brand-block{padding:0}.ascii,.sub,.hero-indicators{display:none}.hero-kicker{justify-content:center;color:var(--txt-mid);font-size:10px;letter-spacing:.24em;margin:0 0 24px}.hero-kicker-line{background:var(--green);box-shadow:0 0 16px rgba(var(--mo-green),.3)}.hero-headline{font-size:clamp(36px,5vw,64px);line-height:1.06;font-weight:450;letter-spacing:-.055em;margin:0 0 24px;color:var(--txt)}.hero-headline span{color:var(--green);text-shadow:none}.hero-description{font-size:14px;line-height:1.7;max-width:460px;margin:auto;color:var(--txt-mid)}
.stats{max-width:700px;margin:16px auto 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;gap:0}.stat{background:transparent;padding:24px 8px}.stat+.stat{border-left:1px solid var(--line2)}.stat strong{font-size:24px;font-weight:450;color:var(--txt);text-shadow:none}.stat:nth-child(2) strong{color:var(--green)}.stat span{font-size:9px;letter-spacing:.12em;color:var(--txt-mid)}
.guarantees{color:var(--txt-mid);font-size:11px;margin:24px 0}.bt{border-color:var(--line);background:var(--panel);color:var(--txt);min-height:44px}.bt.amber,.bt.amber.big{background:rgba(var(--mo-green),.06);border-color:rgba(var(--mo-green),.3);color:var(--green-hi)}.bt.cyan{background:var(--green);border-color:var(--green);color:#05251b}.bt.neutral{background:var(--panel);border-color:var(--line);color:var(--txt-mid)}.credit,.credit a{color:var(--txt-mid)}.blink{background:var(--green);animation:none}.ad{border-color:var(--line);border-left-color:var(--green);background:var(--panel);box-shadow:none;border-radius:16px;padding:24px}.ad .tag{background:var(--green);color:#06261b}.ad-head{color:var(--txt)}.ad p{color:var(--txt-mid);font-size:12px}.foot-support{border-color:var(--line);background:var(--panel)}.foot-support h3,.foot-support small a{color:var(--green-hi)}.foot-support p,.foot-support small{color:var(--txt-mid)}
#stage .scorecard{background:var(--panel);border-color:var(--line);border-radius:16px}#stage .log{background:#0a0d10;border-color:var(--line);color:var(--txt-mid);border-radius:16px}#stage .acc{border-color:var(--line);border-radius:12px;background:var(--panel)}#stage .acc summary{color:var(--txt);font-family:ui-monospace,monospace}#stage .accbody{color:var(--txt-mid)}.kv label{color:var(--txt-mid)}#pass-panel{background:var(--panel);border-color:var(--line)}#pass-panel label{color:var(--green-hi)}#pass-panel input{background:var(--bg);border-color:var(--line);color:var(--txt)}
/* The form is the scene, so Turnstile stays interactive outside the moving input. */
.mo-root{position:relative;isolation:isolate;width:100%;height:480px;max-width:800px;margin:0 auto;--oCenter:0;overflow:hidden;border-radius:var(--mo-radius)}
.mo-bg,.mo-halo{position:absolute;inset:0;pointer-events:none;z-index:-1}.mo-bg{background:radial-gradient(ellipse at 50% 48%,rgba(235,235,235,.025),transparent 55%)}.mo-halo{background:radial-gradient(ellipse 150px 140px at 50% 46%,rgba(var(--mo-green),.2),transparent 75%);opacity:var(--oCenter);filter:blur(28px)}
.mo-scene-note{position:absolute;top:32px;left:0;right:0;text-align:center;color:var(--txt-dim);font:9px ui-monospace,monospace;letter-spacing:.2em;opacity:.8}
.mo-mover{position:absolute;left:50%;top:46%;width:0;height:0;will-change:transform}
.mo-actor{position:absolute;left:0;top:0;transform:translate(-50%,-50%);width:var(--w,560px);height:var(--h,60px);border-radius:var(--r,999px);--oPill:1;--oInput:1;--oAur:1;--oBall:0;--oGreen:0;--oCard:0;--oHalo:0;--oGlow:1;--oRing:1;--inScale:1;--hOp:0;--dotS:0;--gs:.55;--cs:1;--bloom:1}
.mo-underglow,.mo-halo-green,.mo-surface,.mo-ball,.mo-green,.mo-card,.mo-ring,.mo-aurora,.mo-pulse{position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.mo-underglow{inset:-2px 20px -12px;background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(var(--mo-green),.16),rgba(255,255,255,.03));filter:blur(16px);opacity:var(--oGlow)}
.mo-halo-green{inset:-45px;background:radial-gradient(circle,rgba(var(--mo-green),.24),transparent 70%);filter:blur(20px);opacity:var(--oHalo)}
.mo-surface{background:linear-gradient(120deg,#202429,#121519 55%,#191e22);opacity:var(--oPill);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 16px 50px #0005}
.mo-aurora{inset:-100%;opacity:calc(var(--oAur)*.45);filter:blur(24px);animation:mo-spin-surface 12s linear infinite;background:conic-gradient(from 0deg,transparent 5%,rgba(235,235,235,.13),transparent 35%,rgba(var(--mo-green),.14),transparent 75%)}
.mo-aurora i{position:absolute;width:55%;height:30%;border-radius:50%;background:rgba(var(--mo-green),.08);filter:blur(24px);animation:mo-drift 7s ease-in-out infinite alternate}.mo-aurora i:nth-child(2){right:0;top:40%;animation-delay:-2s;background:rgba(235,235,235,.08)}.mo-aurora i:nth-child(3){bottom:0;left:30%;animation-delay:-4s}
.mo-ring{border:1px solid rgba(var(--mo-white),.2);opacity:var(--oRing);box-shadow:inset 0 0 0 1px #0003}
.mo-ball{background:radial-gradient(circle at 35% 25%,#f2f4f4,#c4c9cb 28%,#515a60 65%,#161c20);opacity:var(--oBall);box-shadow:inset -8px -10px 20px #0005,0 0 38px rgba(var(--mo-white),.1)}
.mo-green{background:radial-gradient(circle at 34% 25%,#b9ffe1,var(--green) 38%,#08785c 75%,#083b30);opacity:var(--oGreen);transform:scale(var(--gs));box-shadow:0 0 40px rgba(var(--mo-green),.26),inset 0 0 20px rgba(255,255,255,.12)}
.mo-card{opacity:var(--oCard);transform:scale(var(--cs));background:linear-gradient(140deg,#1b2622,#101714 75%);border:1px solid rgba(var(--mo-green),.3);box-shadow:0 16px 64px #0006,inset 0 1px 0 rgba(var(--mo-green),.06)}
.mo-input{position:absolute;inset:0;display:flex;align-items:center;gap:12px;padding:8px 9px 8px 20px;opacity:var(--oInput);transform:scale(var(--inScale));transform-origin:center;min-width:0}
.mo-spark{display:flex;color:var(--green);flex-shrink:0}.mo-spark svg{width:24px;height:24px}.mo-field{width:100%;min-width:0;flex:1;border:0;background:transparent;color:var(--txt);font-family:inherit;font-size:14px;outline:none;padding:8px 0}.mo-field::placeholder{color:var(--txt-mid)}.mo-field:focus-visible{outline:none!important}.mo-send{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border:1px solid rgba(var(--mo-white),.2);border-radius:50%;background:#30363a;color:var(--txt);transition:background .2s,color .2s,transform .2s}.mo-send svg{width:22px;height:22px}.mo-send:hover,.mo-send[data-ready="true"]{background:var(--green);color:#05291e;border-color:var(--green)}.mo-send:active{transform:scale(.94)}
.mo-root:focus-within .mo-ring{border-color:rgba(var(--mo-green),.6)}.mo-actor[data-typing] .mo-underglow{filter:blur(12px);background:rgba(var(--mo-green),.2)}.mo-actor[data-shake]{animation:mo-shake .26s ease}.mo-actor[data-flash] .mo-ring{border-color:var(--red);box-shadow:0 0 20px #f8717133}
.mo-orb{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:220px;height:220px;pointer-events:none}
.mo-trail{position:absolute;left:0;top:0;display:block;width:100px;height:100px;border-radius:50%;opacity:0;background:radial-gradient(circle,rgba(var(--mo-white),.2),rgba(var(--mo-green),.06) 45%,transparent 72%);pointer-events:none;will-change:transform,opacity;filter:blur(6px)}
.mo-pulse{border:1px solid rgba(var(--mo-green),.45);opacity:0;border-radius:50%}
.mo-answer{position:absolute;inset:0;padding:20px 24px;opacity:var(--hOp);overflow:hidden;pointer-events:none}.mo-root[data-phase="answered"] .mo-answer{pointer-events:auto}.mo-a-head{display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--green-hi)}.mo-a-dot{width:6px;height:6px;border-radius:50%;background:var(--green);transform:scale(var(--dotS));box-shadow:0 0 12px rgba(var(--mo-green),.4)}.mo-a-body{font-size:13px;line-height:1.7;color:var(--txt);margin:12px 0 0}.mo-w{display:inline-block;opacity:0;will-change:opacity,transform,filter}
.mo-status{position:absolute;top:calc(46% + 116px);left:0;width:100%;text-align:center;opacity:var(--sOp,0);transform:translateY(calc(var(--sTy,6)*1px));color:var(--txt-mid);font-size:12px;pointer-events:none}.mo-lab{display:inline-flex;gap:4px;align-items:center;animation:mo-in .3s var(--mo-ease)}.mo-dots{display:inline-flex;gap:3px;margin-left:5px}.mo-dots i{display:block;width:3px;height:3px;border-radius:50%;background:currentColor;animation:mo-dot 1.4s infinite}.mo-dots i:nth-child(2){animation-delay:.16s}.mo-dots i:nth-child(3){animation-delay:.32s}
.mo-reset{position:absolute;bottom:56px;left:50%;transform:translateX(-50%);color:var(--txt-mid);background:transparent;border:1px solid var(--line);border-radius:99px;min-height:44px;padding:10px 20px;font:12px inherit}.mo-reset:hover{color:var(--green-hi);border-color:var(--green)}.mo-reset[hidden]{display:none}.mo-root .errorline{position:absolute;bottom:20px;left:16px;right:16px;text-align:center;font-size:12px;min-height:20px;margin:0;color:var(--red)}
.mo-root .security-slot{position:absolute;bottom:8px;left:0;right:0;z-index:5;display:none;justify-content:center;margin:0}.mo-root .security-slot.active{display:flex}.mo-root:has(.security-slot.active) .errorline{bottom:88px}
.mo-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.mo-root[data-phase="answered"] .mo-scene-note{color:var(--green)}
@keyframes mo-spin-surface{to{transform:rotate(360deg)}}@keyframes mo-drift{from{transform:translateX(-14%)}to{transform:translateX(14%)}}@keyframes mo-shimmer{from{background-position:150% 0}to{background-position:-100% 0}}@keyframes mo-dot{0%,80%,100%{opacity:.25}40%{opacity:1}}@keyframes mo-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes mo-shake{0%,100%{transform:translate(-50%,-50%)}25%{transform:translate(calc(-50% - 4px),-50%)}75%{transform:translate(calc(-50% + 4px),-50%)}}
@media(max-width:650px){.shell{width:100%;margin:0 auto 32px;border-radius:0}.terminal{margin:0 20px;min-height:68px;padding:20px 0}.body{padding:0 16px 24px}.hero{margin-top:48px}.hero-headline,.hero-description,.hero-kicker{display:block}.hero-kicker{display:flex;font-size:9px}.hero-headline{font-size:42px}.hero-description{max-width:310px;font-size:13px}.mo-root{height:420px}.mo-field{font-size:12px}.mo-input{padding-left:16px;gap:8px}.mo-spark svg{width:20px}.mo-scene-note{top:24px;font-size:8px}.mo-root .security-slot{bottom:0}.stat{padding:20px 2px}.stat strong{font-size:20px}.stat span{font-size:8px}.ad{padding:20px 16px}.ad-head{font-size:10px}.mo-a-body{font-size:12px}}
@media(prefers-reduced-motion:reduce){.mo-aurora,.mo-aurora i,.mo-dots i,.mo-lab,.mo-actor[data-shake]{animation:none!important}.mo-trail{display:none}.mo-w{will-change:auto}}
.mo-actor{max-width:calc(100vw - 64px)}
.mo-card{box-shadow:0 16px 64px #0006,0 0 calc(40px * var(--bloom)) rgba(var(--mo-green),.07),inset 0 1px 0 rgba(var(--mo-green),.06)}
.mo-ring{overflow:hidden}.mo-ring:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(100deg,transparent 38%,rgba(var(--mo-white),.035) 50%,transparent 62%);background-size:250% 100%;animation:mo-shimmer 7s ease-in-out infinite;opacity:var(--oPill)}
.mo-status .mo-lab{position:absolute;left:50%;white-space:nowrap;translate:-50% 0}.mo-status .mo-out{animation:mo-out .3s var(--mo-ease) forwards;pointer-events:none}
@keyframes mo-out{from{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)}}
@media(prefers-reduced-motion:reduce){.mo-ring:after{animation:none}.mo-status .mo-out{display:none}}
