a:hover{color:inherit}
*{box-sizing:border-box}
.ax{--volt:#C8FF2E;--uv:#7C5CFF;--uvt:#A893FF;--bg:#050506;--p1:#0C0D10;--p2:#13151A;--text:#F4F4F2;--mut:#A1A4AD;--line:rgba(244,244,242,0.10);--line2:rgba(244,244,242,0.22)}
.mono{font-family:'Martian Mono',ui-monospace,monospace}
.disp{font-family:'Unbounded',system-ui,sans-serif}
.grad{background:linear-gradient(90deg,var(--volt),#E9FFB0 35%,var(--uvt));-webkit-background-clip:text;background-clip:text;color:transparent}
/* nav: bracket hover */
.nl{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;font-size:14.5px;font-weight:500;color:#DCDEE3;transition:color .25s}
.nl::before,.nl::after{position:absolute;top:50%;font-family:'Martian Mono',monospace;color:var(--volt);opacity:0;transition:all .3s cubic-bezier(.2,.8,.2,1)}
.nl::before{content:"[";left:10px;transform:translate(6px,-50%)}
.nl::after{content:"]";right:10px;transform:translate(-6px,-50%)}
.nl:hover{color:var(--text)}
.nl:hover::before{opacity:1;transform:translate(-4px,-50%)}
.nl:hover::after{opacity:1;transform:translate(4px,-50%)}
/* buttons: chamfered */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:0 26px;font:700 14.5px 'Manrope',sans-serif;letter-spacing:.02em;cursor:pointer;border:0;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);transition:transform .25s cubic-bezier(.2,.8,.2,1),background .3s,box-shadow .3s}
.btn-p{background:var(--volt);color:#050506}
.btn-p::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.75),transparent);transform:skewX(-20deg);transition:left .7s cubic-bezier(.2,.8,.2,1)}
.btn-p:hover{color:#050506;background:#DBFF6E;transform:translateY(-2px)}
.btn-p:hover::after{left:120%}
.btn-g{background:rgba(244,244,242,0.06);color:var(--text);box-shadow:inset 0 0 0 1px var(--line2)}
.btn-g:hover{color:var(--text);background:rgba(124,92,255,0.18);box-shadow:inset 0 0 0 1px var(--uv)}
.btn .arr{transition:transform .3s}.btn:hover .arr{transform:translateX(4px)}
/* HUD + chrome */
.hud{background:linear-gradient(var(--volt),var(--volt)) 0 0/16px 1.5px no-repeat,linear-gradient(var(--volt),var(--volt)) 0 0/1.5px 16px no-repeat,linear-gradient(var(--volt),var(--volt)) 100% 0/16px 1.5px no-repeat,linear-gradient(var(--volt),var(--volt)) 100% 0/1.5px 16px no-repeat,linear-gradient(var(--volt),var(--volt)) 0 100%/16px 1.5px no-repeat,linear-gradient(var(--volt),var(--volt)) 0 100%/1.5px 16px no-repeat,linear-gradient(var(--volt),var(--volt)) 100% 100%/16px 1.5px no-repeat,linear-gradient(var(--volt),var(--volt)) 100% 100%/1.5px 16px no-repeat,var(--p1)}
.chrome{border:1px solid transparent;background:linear-gradient(var(--p1),var(--p1)) padding-box,linear-gradient(140deg,rgba(255,255,255,.38),rgba(255,255,255,.04) 38%,rgba(124,92,255,.35) 72%,rgba(200,255,46,.55)) border-box}
/* hero */
@keyframes rise{from{opacity:0;transform:translateY(28px);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}
.rise{animation:rise 1s cubic-bezier(.2,.8,.2,1) both}
@keyframes sweep{0%{top:0;opacity:0}10%{opacity:.6}90%{opacity:.6}100%{top:100%;opacity:0}}
.sweep{position:absolute;left:0;right:0;height:1px;background:var(--volt);box-shadow:0 0 18px 2px rgba(200,255,46,.5);animation:sweep 7s linear infinite;pointer-events:none}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.blink{animation:blink 1.4s ease-in-out infinite}
@keyframes flowx{from{background-position:0 0}to{background-position:200px 0}}
.bus{height:2px;background:repeating-linear-gradient(90deg,var(--volt) 0 24px,transparent 24px 200px);animation:flowx 2.2s linear infinite;opacity:.8}
/* robot parts (used by Bot component) */
@keyframes scan{from{transform:translateX(0)}to{transform:translateX(26px)}}
.bot-scan{animation:scan 1.6s ease-in-out infinite alternate}
@keyframes scan2{0%,100%{transform:translate(0,0)}25%{transform:translate(4px,-3px)}50%{transform:translate(-3px,3px)}75%{transform:translate(3px,3px)}}
.bot-scan2{animation:scan2 3s ease-in-out infinite}
.bot-blink{animation:blink 3.2s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.bot-spin{transform-box:fill-box;transform-origin:center;animation:spin 6s linear infinite}
/* units */
.unit{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 12px 16px;border:0;cursor:pointer;color:var(--text);text-align:center;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.unit:hover{transform:translateY(-6px)}
.unit-on{box-shadow:0 0 0 1px var(--volt),0 20px 60px rgba(200,255,46,.12)}
.unit .uname{font:600 14px 'Unbounded',sans-serif;letter-spacing:.01em}
.unit .botwrap{width:92px;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .4s;filter:saturate(.7) brightness(.85)}
.unit:hover .botwrap,.unit-on .botwrap{transform:scale(1.08);filter:none}
@keyframes swap{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.swap{animation:swap .55s cubic-bezier(.2,.8,.2,1) both}
@keyframes type{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.logl{animation:type .4s ease both}
/* feed */
@keyframes feedin{from{opacity:0;transform:translateY(-12px);background:rgba(200,255,46,.12)}to{opacity:1;transform:none;background:transparent}}
.feedin{animation:feedin .8s cubic-bezier(.2,.8,.2,1) both}
/* terminal */
.tline{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) 64px;gap:24px;align-items:center;padding:20px 24px;border-top:1px solid var(--line);transition:background .3s}
.tline:hover{background:rgba(200,255,46,.05)}
.tline:hover .cmdtxt{color:var(--volt)}
.cmdtxt{transition:color .3s}
@keyframes caret{50%{opacity:0}}
.caret{display:inline-block;width:10px;height:18px;background:var(--volt);vertical-align:middle;animation:caret 1s steps(1) infinite}
/* sectors */
.sector{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px;min-height:220px;border:1px solid var(--line);transition:border-color .35s,background .35s,transform .45s cubic-bezier(.2,.8,.2,1)}
.sector:hover{border-color:transparent;transform:translateY(-4px)}
.sector .deploy{opacity:.55;transition:opacity .3s}
.sector:hover .deploy{opacity:1}
.sector:hover .sarr{color:var(--volt);transform:translate(3px,-3px)}
.sarr{transition:all .3s;color:var(--mut)}
/* faq */
.faqq{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:68px;padding:18px 0;border:0;background:none;color:var(--text);font:500 17px 'Unbounded',sans-serif;text-align:left;cursor:pointer;transition:color .2s}
.faqq:hover{color:var(--volt)}
/* chat */
@keyframes pop{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.pop{animation:pop .45s cubic-bezier(.2,.8,.2,1) both}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(200,255,46,.45)}100%{box-shadow:0 0 0 16px rgba(200,255,46,0)}}
.launch{animation:ring 2.6s ease-out infinite;transition:transform .25s}
.launch:hover{transform:translateY(-3px)}
.msg{max-width:86%;padding:11px 14px;font-size:14px;line-height:1.55;animation:swap .35s ease both}
.m-bot{align-self:flex-start;background:var(--p2);border:1px solid var(--line);color:var(--text)}
.m-user{align-self:flex-end;background:var(--volt);color:#050506;font-weight:600}
.qc{min-height:36px;padding:0 12px;border:1px solid var(--line2);background:transparent;color:var(--text);font:500 12.5px 'Manrope',sans-serif;cursor:pointer;transition:all .2s}
.qc:hover{border-color:var(--volt);color:var(--volt)}
@keyframes dot{0%,100%{opacity:.2}50%{opacity:1}}
.tdot{width:6px;height:6px;background:var(--volt);animation:dot 1s infinite}
.flink{color:var(--mut);font-size:14px;transition:color .2s}.flink:hover{color:var(--volt)}
@media (max-width:1080px){.hide-md{display:none !important}.stack-md{grid-template-columns:minmax(0,1fr) !important}.tline{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){.sec{padding-left:20px !important;padding-right:20px !important}}
@media (min-width:720px){.oneline{white-space:nowrap}}
/* page-wide hover feedback */
.hud,.chrome{transition:box-shadow .45s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.hud:hover,.chrome:hover{box-shadow:0 0 0 1px rgba(200,255,46,0.28),0 24px 70px rgba(124,92,255,0.14)}
.flink,.mono a{transition:color .2s,letter-spacing .3s}
h2.disp{transition:text-shadow .5s ease}
h2.disp:hover{text-shadow:0 0 28px rgba(200,255,46,0.18)}
.tline:hover{box-shadow:inset 3px 0 0 #C8FF2E}
/* futuristic cursor replaces the system pointer on mouse devices */
@media (pointer:fine){.ax,.ax *{cursor:none !important}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}}

/* header dropdown menus */
.navitem{position:static}
.navitem.navwide{position:static}
.navwide .mega{top:100%}
.navwide .mega::before{top:-34px;height:34px}
.mega{max-width:calc(100vw - 32px)}
.navitem .nl{gap:0}
.chev{transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.navitem:hover .chev,.navitem:focus-within .chev{transform:rotate(180deg);color:#C8FF2E}
.mega{position:absolute;top:calc(100% - 6px);max-width:calc(100vw - 32px);left:50%;transform:translate(-50%,-8px);padding:14px;background:rgba(10,11,14,0.97);border:1px solid rgba(244,244,242,0.14);box-shadow:0 40px 100px rgba(0,0,0,0.65),0 0 0 1px rgba(124,92,255,0.08),0 0 60px rgba(124,92,255,0.12);backdrop-filter:blur(18px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,transform .35s cubic-bezier(.2,.8,.2,1),visibility .25s;z-index:60}
.mega::before{content:"";position:absolute;left:0;right:0;top:-20px;height:20px}
.mega::after{content:"";position:absolute;top:-1px;left:24px;width:48px;height:2px;background:#C8FF2E}
.navitem:hover .mega,.navitem:focus-within .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.mlk{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:center;padding:11px 12px;color:#F4F4F2;transition:background .2s,transform .3s cubic-bezier(.2,.8,.2,1)}
.mlk-c{grid-template-columns:62px minmax(0,1fr)}
.mlk:hover,.mlk:focus{background:rgba(200,255,46,0.06);transform:translateX(3px);outline:none}
.mlk .mt{display:block;font:500 14px 'Unbounded',sans-serif;letter-spacing:-0.005em;color:#F4F4F2;transition:color .2s}
.mlk .md{display:block;margin-top:4px;font-size:12.5px;color:#A1A4AD;line-height:1.4}
.mlk:hover .mt,.mlk:focus .mt{color:#C8FF2E}
.mcode{display:inline-flex;align-items:center;justify-content:center;height:24px;border:1px solid rgba(124,92,255,0.5);font:500 9.5px 'Martian Mono',monospace;letter-spacing:.06em;color:#A893FF}
.mlk:hover .mcode{border-color:#C8FF2E;color:#C8FF2E}
.mfoot{font:500 11px 'Martian Mono',monospace;letter-spacing:.06em;color:#E8EAEE;transition:color .2s}
.mfoot:hover{color:#C8FF2E}
