.base-hub{--bg:#06090f;--bg2:#090d16;--ink:#0d1524;--surface2:#111a2c;--text-hi:#f5f8fd;--body:#f4f7fc;--text-lo:#95a1b5;--green:#58e68e;--teal:#69e9fa;--amber:#f7ca6c;--purple:#6d5ae8;--purple-h:#8b7bf4;--error:#f87171;--base-blue:#0052ff;--line:#95a1b521}.base-hub *{box-sizing:border-box;margin:0;padding:0}html:has(.base-hub){scroll-behavior:smooth;scroll-padding-top:78px}.base-hub{background:var(--bg);color:var(--body);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;font-size:17px;line-height:1.65}.base-hub a{color:var(--teal);text-decoration:none;transition:color .15s}.base-hub a:hover{color:var(--text-hi)}.base-hub .wrap{max-width:1140px;margin:0 auto;padding:0 28px}.base-hub .mono{font-family:JetBrains Mono,monospace}.base-hub .seclabel{letter-spacing:.18em;color:var(--green);text-transform:uppercase;margin-bottom:18px;font-family:JetBrains Mono,monospace;font-size:12px;display:block}.base-hub .seclabel:before{content:"—— ";color:var(--green)}.base-hub section{padding:84px 0}.base-hub .glink{color:var(--green)}.base-hub .glink:hover{color:var(--text-hi)}.base-hub header{z-index:60;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#06090fe6;position:sticky;top:0}.base-hub .nav{align-items:center;gap:26px;max-width:1140px;margin:0 auto;padding:13px 28px;display:flex}.base-hub .logo{color:var(--text-hi);letter-spacing:-.02em;align-items:center;gap:9px;font-family:Space Grotesk,sans-serif;font-size:19px;font-weight:700;display:flex}.base-hub .logo .mark{background:linear-gradient(135deg,var(--purple),var(--teal));border-radius:8px;flex:none;width:26px;height:26px}.base-hub .logo span{color:var(--green)}.base-hub .logo small{color:var(--text-lo);letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:500;display:block}.base-hub .nav-links{gap:24px;margin-left:8px;font-size:14px;display:flex}.base-hub .nav-links a{color:var(--text-lo)}.base-hub .nav-links a:hover{color:var(--text-hi)}.base-hub .btn{background:var(--purple);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:12px 26px;font-family:Space Grotesk,sans-serif;font-size:15px;font-weight:600;transition:background .15s;display:inline-block}.base-hub .btn:hover{background:var(--purple-h);color:#fff}.base-hub .btn.green{background:var(--green);color:#06090f}.base-hub .btn.green:hover{color:#06090f;background:#79f0a8}.base-hub .btn.ghost{background:var(--ink);color:var(--body);border:1px solid #95a1b540}.base-hub .btn.ghost:hover{border-color:var(--teal);color:var(--teal);background:var(--ink)}.base-hub .btn.sm{margin-left:auto;padding:9px 20px;font-size:13.5px}.base-hub .hero{text-align:center;padding:96px 0 72px;position:relative;overflow:hidden}.base-hub .hero .glow{pointer-events:none;background:radial-gradient(circle,#6d5ae847,#0000 65%);border-radius:50%;width:520px;height:520px;position:absolute;top:-180px;left:-120px}.base-hub .hero .glow2{pointer-events:none;background:radial-gradient(circle,#0052ff29,#0000 65%);border-radius:50%;width:460px;height:460px;position:absolute;top:-120px;right:-160px}.base-hub .badge{letter-spacing:.2em;color:var(--text-lo);text-transform:uppercase;align-items:center;gap:10px;margin-bottom:28px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.base-hub .badge .sq{background:var(--base-blue);border-radius:3px;width:13px;height:13px}.base-hub .badge .live{color:var(--green);align-items:center;gap:6px;display:inline-flex}.base-hub .badge .live:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;animation:2.2s infinite bhpulse}@keyframes bhpulse{0%,to{opacity:1}50%{opacity:.3}}.base-hub .hero h1{letter-spacing:-.03em;color:var(--text-hi);font-family:Space Grotesk,sans-serif;font-size:clamp(36px,5.6vw,58px);font-weight:700;line-height:1.06}.base-hub .hero h1 em{color:var(--green);font-style:normal}.base-hub .hero .sub{color:var(--text-lo);max-width:58ch;margin:20px auto 0;font-size:17.5px}.base-hub .hero .ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.base-hub .ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2)}.base-hub .ticker-in{flex-wrap:wrap;max-width:1140px;margin:0 auto;padding:0 28px;display:flex}.base-hub .tick{letter-spacing:.05em;color:var(--text-hi);white-space:nowrap;align-items:center;gap:9px;margin-right:22px;padding:14px 22px 14px 0;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.base-hub .tick .k{color:var(--text-lo);text-transform:uppercase;letter-spacing:.13em;font-size:10.5px}.base-hub .tick .ok{color:var(--green)}.base-hub .tick .warn{color:var(--amber)}.base-hub .copybtn{color:var(--text-lo);background:var(--ink);border:1px solid var(--line);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;border-radius:5px;flex:none;padding:2px 7px;font-family:JetBrains Mono,monospace;font-size:9px;transition:all .15s}.base-hub .copybtn:hover{color:var(--green);border-color:#58e68e66}.base-hub .copybtn.copied{color:var(--green);border-color:var(--green)}.base-hub .brief-lede{color:var(--text-hi);max-width:32em;font-family:Fraunces,serif;font-size:clamp(22px,2.8vw,30px);font-style:italic;font-weight:500;line-height:1.5}.base-hub .brief-lede a{color:var(--green);border-bottom:1px solid #58e68e59}.base-hub .brief-lede a.t{color:var(--teal);border-bottom-color:#69e9fa59}.base-hub .brief-lede a:hover{color:var(--text-hi)}.base-hub .callouts{grid-template-columns:repeat(3,1fr);gap:40px;margin-top:52px;display:grid}.base-hub .callout .c-k{letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:block}.base-hub .callout.teal .c-k{color:var(--teal)}.base-hub .callout.green .c-k{color:var(--green)}.base-hub .callout.amber .c-k{color:var(--amber)}.base-hub .callout p{color:var(--text-lo);font-size:14.5px;line-height:1.7}.base-hub .callout p b{color:var(--body);font-weight:600}.base-hub .band{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.base-hub .eco-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.base-hub .sechead{letter-spacing:-.02em;color:var(--text-hi);font-family:Space Grotesk,sans-serif;font-size:clamp(26px,3.4vw,36px);font-weight:700;line-height:1.15}.base-hub .eco-head .side{color:var(--text-lo);text-align:right;max-width:38ch;font-size:14px}.base-hub .eco-head .side b{color:var(--body)}.base-hub .units{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px;display:grid}.base-hub .unit{background:var(--ink);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;padding:28px;transition:border-color .2s;display:flex}.base-hub .unit:hover{border-color:#58e68e4d}.base-hub .unit .u-tag{letter-spacing:.18em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10px}.base-hub .unit.g .u-tag{color:var(--green)}.base-hub .unit.p .u-tag{color:var(--purple-h)}.base-hub .unit.a .u-tag{color:var(--amber)}.base-hub .unit h3{letter-spacing:-.01em;font-family:Space Grotesk,sans-serif;font-size:22px}.base-hub .unit.g h3{color:var(--green)}.base-hub .unit.p h3,.base-hub .unit.a h3{color:var(--text-hi)}.base-hub .unit p{color:var(--text-lo);flex:1;font-size:14px}.base-hub .unit p b{color:var(--body)}.base-hub .unit .u-links{flex-wrap:wrap;gap:4px 16px;padding-top:6px;font-size:13px;display:flex}.base-hub .unit .btn{text-align:center;margin-top:10px}.base-hub .lib-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.base-hub .metaline{letter-spacing:.15em;color:var(--text-lo);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:10.5px}.base-hub .pills{flex-wrap:wrap;gap:8px;margin:30px 0 16px;display:flex}.base-hub .pill{letter-spacing:.05em;color:var(--text-lo);border:1px solid var(--line);cursor:pointer;text-transform:uppercase;background:0 0;border-radius:999px;padding:8px 16px;font-family:JetBrains Mono,monospace;font-size:11.5px;transition:all .15s}.base-hub .pill:hover{color:var(--body);border-color:#95a1b559}.base-hub .pill.on{color:#06090f;background:var(--green);border-color:var(--green);font-weight:500}.base-hub .search{background:var(--ink);border:1px solid var(--line);border-radius:999px;align-items:center;gap:10px;max-width:340px;margin-bottom:34px;padding:10px 18px;display:flex}.base-hub .search svg{opacity:.5;flex:none}.base-hub .search input{color:var(--body);background:0 0;border:none;outline:none;width:100%;font-family:Inter,sans-serif;font-size:14px}.base-hub .search input::placeholder{color:var(--text-lo)}.base-hub .starters{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:44px;display:grid}.base-hub .starter{background:linear-gradient(155deg,var(--ink),var(--surface2));border:1px solid var(--line);border-radius:14px;flex-direction:column;padding:20px;transition:border-color .2s,transform .2s;display:flex}.base-hub .starter:hover{border-color:#58e68e66;transform:translateY(-2px)}.base-hub .starter .s-tag{letter-spacing:.16em;color:var(--green);text-transform:uppercase;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:block}.base-hub .starter h4{color:var(--text-hi);letter-spacing:-.01em;flex:1;font-family:Space Grotesk,sans-serif;font-size:16px;line-height:1.35}.base-hub .starter .s-mark{color:var(--text-lo);text-transform:uppercase;letter-spacing:.1em;margin-top:14px;font-family:JetBrains Mono,monospace;font-size:10px}.base-hub .starter:hover .s-mark{color:var(--green)}.base-hub .lib-cols{column-count:3;column-gap:44px}.base-hub .lib-group{break-inside:avoid;margin-bottom:34px}.base-hub .lib-group .g-name{letter-spacing:.16em;color:var(--text-hi);text-transform:uppercase;border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:8px;font-family:JetBrains Mono,monospace;font-size:11.5px}.base-hub .lib-item{color:var(--body);border-radius:7px;align-items:baseline;gap:10px;padding:8px 6px;font-size:14px;line-height:1.45;display:flex}.base-hub .lib-item:hover{background:var(--ink);color:var(--text-hi)}.base-hub .lib-item .flag{letter-spacing:.06em;color:var(--text-lo);text-transform:uppercase;white-space:nowrap;flex:none;margin-left:auto;font-family:JetBrains Mono,monospace;font-size:9.5px}.base-hub .lib-item .flag.flagship:before{content:"●";color:var(--green);margin-right:5px}.base-hub .lib-item .flag.new,.base-hub .lib-item .flag.honest{color:var(--amber)}.base-hub .lib-note{color:var(--text-lo);margin-top:14px;font-family:JetBrains Mono,monospace;font-size:12.5px}.base-hub .lib-note b{color:var(--green);font-weight:500}.base-hub .lib-group[hidden],.base-hub .lib-item[hidden]{display:none}.base-hub .console{border:1px solid var(--line);background:var(--bg2);border-radius:16px;margin-top:36px;overflow:hidden}.base-hub .bento{grid-template-columns:repeat(12,1fr);display:grid}.base-hub .cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;padding:20px 22px}.base-hub .cell .k{letter-spacing:.15em;color:var(--text-lo);text-transform:uppercase;margin-bottom:7px;font-family:JetBrains Mono,monospace;font-size:10px;display:block}.base-hub .cell .v{color:var(--text-hi);flex-wrap:wrap;align-items:center;gap:9px;font-family:JetBrains Mono,monospace;font-size:14.5px;display:flex}.base-hub .cell .v .big{color:var(--green);font-family:Space Grotesk,sans-serif;font-size:26px;font-weight:600}.base-hub .cell .v .ok{color:var(--green)}.base-hub .cell .v .warn{color:var(--amber)}.base-hub .cell .note{color:var(--text-lo);margin-top:6px;font-family:JetBrains Mono,monospace;font-size:11px;display:block}.base-hub .cell .ctx{font-family:JetBrains Mono,monospace;font-size:11.5px}.base-hub .spark{width:100%;height:44px;margin-top:10px}.base-hub .c3{grid-column:span 3}.base-hub .c4{grid-column:span 4}.base-hub .c5{grid-column:span 5}.base-hub .c6{grid-column:span 6}.base-hub .c12{grid-column:span 12}.base-hub .addr{color:var(--text-hi);flex-wrap:wrap;align-items:center;gap:10px;padding:6px 0;font-family:JetBrains Mono,monospace;font-size:12.5px;display:flex}.base-hub .addr .lbl{color:var(--text-lo);text-transform:uppercase;letter-spacing:.12em;flex:0 0 150px;font-size:10px}.base-hub .addr .a{text-overflow:ellipsis;overflow:hidden}.base-hub .story-lede{color:var(--text-hi);max-width:26em;margin-bottom:44px;font-family:Fraunces,serif;font-size:clamp(24px,3vw,34px);font-style:italic;font-weight:500;line-height:1.4}.base-hub .story-lede em{color:var(--green);font-style:italic}.base-hub .story-cols{grid-template-columns:1fr 1fr;gap:24px 56px;display:grid}.base-hub .story-cols p{color:var(--text-lo);font-size:15.5px;line-height:1.75}.base-hub .story-cols p b{color:var(--text-hi)}.base-hub .story-cols p a{color:var(--green);border-bottom:1px solid #58e68e4d}.base-hub .htimeline{border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);gap:0;margin-top:64px;display:grid}.base-hub .ht{padding:22px 18px 0 0;position:relative}.base-hub .ht:before{content:"";background:var(--green);border-radius:50%;width:8px;height:8px;position:absolute;top:-4.5px;left:0}.base-hub .ht.blue:before{background:var(--base-blue)}.base-hub .ht .n{color:var(--text-lo);letter-spacing:.15em;font-family:JetBrains Mono,monospace;font-size:10px}.base-hub .ht .d{color:var(--text-hi);margin:4px 0 6px;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:600}.base-hub .ht p{color:var(--text-lo);font-size:13px;line-height:1.6}.base-hub .glossary{border-top:1px solid var(--line);margin-top:70px}.base-hub .gloss{border-bottom:1px solid var(--line);grid-template-columns:280px 1fr;gap:30px;padding:26px 0;display:grid}.base-hub .gloss dt{color:var(--text-hi);font-family:Fraunces,serif;font-size:24px;font-style:italic}.base-hub .gloss .pron{color:var(--text-lo);margin-top:4px;font-family:JetBrains Mono,monospace;font-size:11px;font-style:normal;display:block}.base-hub .gloss dd{color:var(--text-lo);align-self:center;font-size:15px;line-height:1.75}.base-hub .gloss dd b{color:var(--error)}.base-hub .gloss dd a{color:var(--green)}.base-hub .faq{max-width:880px;margin-top:36px}.base-hub .faq details{border-bottom:1px solid var(--line)}.base-hub .faq summary{cursor:pointer;color:var(--text-hi);align-items:baseline;gap:16px;padding:20px 8px;font-family:Space Grotesk,sans-serif;font-size:17px;font-weight:600;list-style:none;display:flex}.base-hub .faq summary .qn{color:var(--green);border:1px solid #58e68e59;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex;transform:translateY(4px)}.base-hub .faq summary:after{content:"+";color:var(--green);flex:none;margin-left:auto;font-size:20px;font-weight:400}.base-hub .faq details[open] summary:after{content:"–"}.base-hub .faq details p{color:var(--text-lo);margin:0;padding:0 8px 22px 60px;font-size:15px}.base-hub .faq details p a{color:var(--green)}.base-hub .cta-final{text-align:center;padding:40px 0 20px}.base-hub .cta-final h2{letter-spacing:-.02em;color:var(--text-hi);margin-bottom:14px;font-family:Space Grotesk,sans-serif;font-size:clamp(30px,4.4vw,46px)}.base-hub .cta-final h2 em{color:var(--green);font-style:normal}.base-hub .cta-final p{color:var(--text-lo);max-width:52ch;margin:0 auto 30px;font-size:16px}.base-hub .cta-final .btn{margin:0 6px 10px}.base-hub footer{border-top:1px solid var(--line);margin-top:60px;padding:36px 0 64px}.base-hub footer .cols{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:30px;margin-bottom:24px;display:flex}.base-hub footer .copyright{color:var(--text-lo);font-size:13px}.base-hub footer .f-links{gap:22px;font-size:13.5px;display:flex}.base-hub footer .f-links a{color:var(--text-lo)}.base-hub footer .f-links a:hover{color:var(--teal)}.base-hub footer .disclaimer{color:var(--text-lo);max-width:92ch;font-size:12.5px;line-height:1.7}.base-hub .reveal{opacity:0;transition:opacity .55s,transform .55s;transform:translateY(14px)}.base-hub .reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.base-hub .reveal{opacity:1;transition:none;transform:none}}@media(max-width:1000px){.base-hub .lib-cols{column-count:2}.base-hub .starters{grid-template-columns:1fr 1fr}.base-hub .htimeline{grid-template-columns:1fr 1fr;gap:20px}.base-hub .story-cols,.base-hub .units,.base-hub .callouts{grid-template-columns:1fr}.base-hub .gloss{grid-template-columns:1fr;gap:8px}.base-hub .nav-links{display:none}.base-hub .c3,.base-hub .c4,.base-hub .c5,.base-hub .c6{grid-column:span 12}}@media(max-width:620px){.base-hub .lib-cols{column-count:1}.base-hub .starters{grid-template-columns:1fr}}.base-hub .logo img{flex:none;width:26px;height:26px}.base-hub .nav-spacer{flex:1}.base-hub .hamburger{cursor:pointer;background:0 0;border:0;flex-direction:column;gap:4px;margin-left:auto;padding:8px;display:none}.base-hub .hamburger span{background:var(--text-hi);border-radius:2px;width:20px;height:2px;display:block}.base-hub .mobile-menu{border-top:1px solid var(--line);background:#06090ffa;flex-direction:column;gap:2px;padding:8px 28px 18px;display:none}.base-hub .mobile-menu a{color:var(--text-lo);padding:10px 0;font-size:15px}.base-hub .mobile-menu a:hover{color:var(--text-hi)}.base-hub .mobile-menu.open{display:flex}.base-hub :focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}@media(max-width:1000px){.base-hub .hamburger{display:flex}.base-hub .btn.sm{margin-left:auto}}@media(max-width:520px){.base-hub .nav{gap:12px}.base-hub .btn.sm{display:none}}
