.u{text-decoration:underline;text-underline-offset:3px;color:var(--text)}.center{display:flex;justify-content:center;padding-top:40px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 20px;padding-top:40px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.hero{position:relative;padding-top:var(--nav-h);overflow:hidden;min-height:min(100vh,920px);display:flex;flex-direction:column;justify-content:flex-end}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(60% 45% at 72% 18%,#9b82ff38,#9b82ff00 70%),radial-gradient(45% 40% at 28% 30%,#7c5cff1a,#7c5cff00 70%),linear-gradient(180deg,var(--bg-2) 0%,var(--bg) 60%,var(--bg) 100%)}.hero-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,#fff0 55%,#ffffff09 62%,#fff0 70%),linear-gradient(105deg,#fff0 60%,#ffffff08 66%,#fff0 74%)}.hero-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(11,10,18,.35) 0%,rgba(11,10,18,0) 30%,rgba(11,10,18,.2) 60%,var(--bg) 100%)}.hero-bg.has-render{background:var(--hero-render) 55% 42% / cover no-repeat,var(--bg)}.hero-bg.has-render:before{display:none}.hero-bg.has-render:after{background:linear-gradient(90deg,#0b0a12f5,#0b0a12db 30%,#0b0a128c 50%,#0b0a121f 72%,#0b0a1200),linear-gradient(180deg,rgba(11,10,18,.6) 0%,rgba(11,10,18,.05) 30%,rgba(11,10,18,.1) 55%,var(--bg) 100%)}.hero-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px;padding-top:96px;padding-bottom:72px}.hero-bg.has-render~.hero-in{align-items:flex-start;text-align:left;max-width:1760px}.hero-bg.has-render~.hero-in .hero-cta,.hero-bg.has-render~.hero-in .hero-stats{justify-content:flex-start}.hero-bg.has-render~.hero-in .hstat{align-items:flex-start}.hero-bg.has-render~.hero-in .hero-lead{max-width:50ch}.hero-h{font-size:clamp(40px,5.4vw,74px);max-width:16ch;text-wrap:balance}.hero-lead{margin:0;font-size:17px;line-height:1.6;color:var(--text-2);max-width:54ch}.hero-cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:center;margin-top:6px}.hero-stats{display:flex;gap:56px;flex-wrap:wrap;justify-content:center;margin-top:40px}.hstat{display:flex;flex-direction:column;align-items:center;gap:8px}.hstat b{font-size:34px;font-weight:500;color:#fff;letter-spacing:-.02em;line-height:1}.hero .avail-strip{position:relative;z-index:1;justify-content:center;gap:18px;width:fit-content;max-width:100%;margin:0 auto 40px;padding:0 22px;height:46px;border-radius:999px;border:1px solid var(--line);background:#110f1bb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:14px;color:var(--text-2);white-space:nowrap}.hero .avail-strip .avail{font-size:14px;gap:9px}.hero .avail-strip .avail-dot{width:8px;height:8px}.hero .avail-strip .avail-when b{font-weight:500;font-size:14px;color:var(--text-2)}.hero .avail-strip .avail-reply{color:var(--mute)}.avail-sep{width:1px;height:16px;background:var(--line-2);flex:0 0 auto}@media (max-width: 768px){.hero .avail-strip{height:auto;padding:10px 16px;flex-wrap:wrap;gap:8px 14px;border-radius:var(--r-m);white-space:normal;justify-content:flex-start}.hero .avail-strip .avail-sep{display:none}}.contact-copy .hero-cta{justify-content:flex-start}@media (max-width: 1100px){.dc{margin-left:0}}.code-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;padding-top:40px;height:680px;align-items:stretch}.code-tree,.code-pane{padding:0;display:flex;flex-direction:column;gap:0;min-width:0;min-height:0;overflow:hidden;background:var(--bg-2)}.code-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;height:46px;padding:0 18px;flex:0 0 auto;border-bottom:1px solid var(--line);background:var(--bg-3)}.code-bar .mono{letter-spacing:.04em;text-transform:none;font-size:12px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-bar .dim{color:var(--mute);flex:0 0 auto}.code-tree .tree{flex:1 1 auto;min-height:0;overflow:auto;padding:10px 10px 16px}.code-pane .code-bar{order:1}.code-about{order:2}.code-wrap{order:3}.code-tabs{order:0;display:none;gap:0;flex:0 0 auto;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);background:var(--bg-3)}.code-tabs::-webkit-scrollbar{display:none}.code-tab{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;flex:0 0 auto;font-family:var(--mono);font-size:12px;color:var(--mute);border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.code-tab i{width:6px;height:6px;border-radius:999px;background:var(--mute-2)}.code-tab--server i{background:#f0b232}.code-tab--client i{background:#4ade80}.code-tab--shared i{background:#9b82ff}.code-tab:hover{color:var(--text)}.code-tab.is-on{color:#fff;border-bottom-color:var(--acc-2)}.code-about{display:flex;flex-direction:column;gap:6px;padding:14px 18px 14px 20px;flex:0 0 auto;border-bottom:1px solid var(--line);box-shadow:inset 3px 0 0 var(--acc)}.code-about:empty{display:none}.code-about-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.code-about-top b{font-size:14px;font-family:var(--mono);font-weight:500;color:var(--text)}.code-side{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:6px;border:1px solid var(--line-2);color:var(--text)}.code-side--server{border-color:#f0b23280;color:#f0b232}.code-side--client{border-color:#4ade8080;color:#4ade80}.code-side--shared{border-color:#9b82ff99;color:#c2b3ff}.code-about p{margin:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;font-size:13.5px;line-height:1.5;color:var(--text-2)}.code-about p .mono{padding-top:2px;color:var(--mute)}.code-wrap{flex:1 1 auto;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--bg-4) transparent;transition:opacity .18s ease}.code-wrap.is-swapping{opacity:0}.code-wrap pre{padding:8px 24px 20px 0;min-width:max-content;overflow:visible}.code-wrap .row{display:flex;align-items:flex-start}.code-wrap .row:hover{background:#3537418c}.code-wrap .ln{position:sticky;left:0;flex:0 0 56px;width:auto;padding:0 14px 0 16px;margin-right:18px;text-align:right;color:var(--mute-2);background:var(--bg-2);border-right:1px solid var(--line);cursor:default}.code-wrap .row:hover .ln{color:var(--mute)}.code-wrap .src{flex:1 0 auto;padding-right:24px}.code-wrap::-webkit-scrollbar,.code-tree .tree::-webkit-scrollbar{width:10px;height:10px}.code-wrap::-webkit-scrollbar-thumb,.code-tree .tree::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:8px;border:3px solid var(--bg-2)}.code-wrap::-webkit-scrollbar-track,.code-tree .tree::-webkit-scrollbar-track{background:transparent}.tree>button,.tree>span{height:28px;line-height:28px;font-size:12.5px;border-radius:6px}.tree>span{color:var(--text-2)}.tree .is-file{color:var(--text)}.tree .tree-dot{margin-left:auto;width:6px;height:6px;border-radius:999px;background:var(--acc-2);opacity:.8}.tree .dim .tree-dot{display:none}.tree .dim{color:var(--mute-2);cursor:default}.tree .dim svg{color:var(--mute-2);opacity:.7}.tree .is-file:hover{background:var(--acc-soft)}.code-points{padding-top:40px}.code-points>div{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.code-points b{font-size:15px;font-weight:700;letter-spacing:-.01em}.code-points span{color:var(--mute);font-size:13.5px;line-height:1.55}.models-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;padding-top:40px}.models-grid .sub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.models-grid .tile-media{aspect-ratio:auto;height:252px}.models-grid .tile--big .tile-media{height:100%;min-height:540px}.models-grid .tile--big .tile-media img{padding:32px}.models-grid .tile--big{display:grid;grid-template-rows:1fr auto}.models-grid .tile-media .mv-stage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;border-radius:0;background:transparent}.review{position:relative;display:flex;flex-direction:column;gap:14px;padding:22px 22px 24px;margin:0;border-radius:var(--r-l);border:1px solid var(--line);background:radial-gradient(90% 60% at 100% 0%,#7c5cff1a,#7c5cff00 60%),var(--bg-2);transition:border-color .2s,transform .3s var(--ease),box-shadow .3s var(--ease)}.review:hover{border-color:#9b82ff66;transform:translateY(-2px);box-shadow:0 22px 44px -30px #000000e6}.review-top{display:flex;align-items:center;gap:12px}.review .av{width:38px;height:38px;border-radius:999px;background:linear-gradient(160deg,var(--acc),var(--acc-3));color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;overflow:hidden;flex:0 0 auto;box-shadow:0 0 0 1px #ffffff1a}.review .av img{width:100%;height:100%;object-fit:cover}.review-who{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.review-who b{font-size:14px;font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-meta{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--mute)}.review-meta svg{color:#7b86f5}.review .stars{display:inline-flex;gap:2px;color:#f0b232;flex:0 0 auto}.review .stars .off{opacity:.2}.review blockquote{position:relative;margin:0;font-size:15px;line-height:1.6;color:var(--text-2)}.review.is-short blockquote{font-size:18px;font-weight:500;letter-spacing:-.01em;color:var(--text)}.review blockquote.empty{color:var(--mute);font-style:italic}.review.is-mine{border-color:#9b82ff80}.review.is-mine:after{content:"Yours";position:absolute;top:12px;right:12px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--acc-2)}.contact-in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center;padding-top:160px}.contact-copy{display:flex;flex-direction:column;gap:28px}.contact-h{font-size:clamp(56px,7vw,96px)}.dc{--dc-bg: #111214;--dc-bg-2: #1a1b1e;--dc-line: #2c2d31;--dc-text: #f2f3f5;--dc-text-2: #dbdee1;--dc-mute: #b5bac1;--dc-blurple: #5865f2;width:340px;max-width:100%;margin-left:auto;border-radius:8px;overflow:hidden;background:var(--dc-bg);border:1px solid var(--dc-line);box-shadow:0 8px 16px #0000003d;font-family:"gg sans","Noto Sans",var(--sans);color:var(--dc-text-2);font-size:14px;line-height:1.3}.dc-banner{height:120px;background:#363534}.dc-banner img{width:100%;height:100%;object-fit:cover}.dc-head{position:relative;height:48px;padding:0 16px}.dc-avatar{position:absolute;left:16px;top:-44px;width:80px;height:80px}.dc-avatar>img{width:80px;height:80px;border-radius:999px;object-fit:cover;border:6px solid var(--dc-bg);box-sizing:content-box;margin:-6px}.dc-deco{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;pointer-events:none;z-index:1}.dc-deco img{width:100%;height:100%}.dc-status{position:absolute;right:-2px;bottom:-2px;z-index:2;width:16px;height:16px;border-radius:999px;border:5px solid var(--dc-bg);box-sizing:content-box;background:#80848e}.dc-status.is-online{background:#23a55a}.dc-status.is-idle{background:#f0b232}.dc-status.is-dnd{background:#f23f43}.dc-badges{position:absolute;right:16px;top:10px;display:flex;gap:2px;padding:4px;border-radius:8px;background:var(--dc-bg-2);border:1px solid var(--dc-line)}.dc-badges img{width:22px;height:22px}.dc-body{padding:4px 16px 16px;display:flex;flex-direction:column;gap:8px}.dc-name{font-size:20px;font-weight:700;color:var(--dc-text);line-height:1.2}.dc-user{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--dc-text-2);margin-top:-6px}.dc-handle{color:inherit;cursor:copy}.dc-handle:hover{text-decoration:underline}.dc-tag{display:inline-flex;align-items:center;gap:4px;padding:0 4px;height:18px;border-radius:4px;background:#ffffff14;font-size:12px;font-weight:500;color:var(--dc-text)}.dc-dot{color:var(--dc-mute)}.dc-custom{display:flex;align-items:center;gap:6px;color:var(--dc-text-2)}.dc-custom[hidden]{display:none}.dc-custom img{width:20px;height:20px}.dc-sep{height:1px;background:var(--dc-line);margin:4px 0}.dc-section{display:flex;flex-direction:column;gap:6px}.dc-label{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--dc-mute)}.dc-bio{font-size:14px;line-height:1.35;color:var(--dc-text-2)}.dc-bio a{color:#00a8fc}.dc-bio a:hover{text-decoration:underline}.dc-tz{margin-top:4px;font-size:12px;color:var(--dc-mute)}.dc-since{display:flex;align-items:center;gap:8px;color:var(--dc-text-2)}.dc-since svg{color:var(--dc-mute)}.dc-act{display:flex;gap:12px;align-items:center}.dc-act-art{position:relative;flex:0 0 auto;width:60px;height:60px}.dc-act-art img{width:60px;height:60px;border-radius:8px;object-fit:cover;background:var(--dc-bg-2)}.dc-act-art .dc-act-small{position:absolute;right:-4px;bottom:-4px;width:20px;height:20px;border-radius:999px;border:2px solid var(--dc-bg);box-sizing:content-box}.dc-act-text{display:flex;flex-direction:column;gap:1px;min-width:0;font-size:14px}.dc-act-text>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-act-text b{font-weight:600;color:var(--dc-text)}.dc-msg{display:flex;align-items:center;justify-content:center;gap:8px;height:36px;margin-top:4px;border-radius:8px;background:var(--dc-blurple);color:#fff;font-weight:500;font-size:14px;transition:background .15s}.dc-msg:hover{background:#4752c4}.code-tree .tree button.is-on{background:var(--acc-soft);color:#fff;box-shadow:inset 2px 0 0 var(--acc)}.contact-note{font-size:13.5px;line-height:1.5}@media (max-width: 1100px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.code-grid{grid-template-columns:1fr;height:auto}.code-tree{display:none}.code-tabs{display:flex}.code-pane{height:620px}.models-grid{grid-template-columns:1fr}.models-grid .tile--big .tile-media{min-height:380px}.contact-in{grid-template-columns:1fr;gap:32px;padding-top:96px}}@media (max-width: 768px){.hero{min-height:0}.hero-bg.has-render{background-image:url(/images/hero-m.webp);background-position:50% 30%}.hero-bg.has-render:after{background:linear-gradient(180deg,rgba(11,10,18,.82) 0%,rgba(11,10,18,.72) 45%,rgba(11,10,18,.55) 70%,var(--bg) 100%)}.hero-in{padding-top:48px;padding-bottom:40px}.hero-stats{gap:24px 36px}.hstat b{font-size:26px}.grid-3,.grid-4{grid-template-columns:1fr;gap:24px}.models-grid .sub{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.models-grid .tile-media{height:170px}.models-grid .tile--big .tile-media{min-height:300px}.code-pane{height:520px}.code-wrap{font-size:12.5px}.code-about p{grid-template-columns:1fr;gap:4px}}body.art-slots .hero-bg .art-slot{inset:calc(var(--nav-h) + 16px) 16px 16px;border-radius:var(--r-l)}body.art-slots .hero-bg .art-slot:after{max-width:60%}.contact-in .art-slot--prop{margin-left:auto}.studios-row{padding-top:56px}.studios-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px}.studios-head a:hover{color:var(--text)}.studios-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:20px 12px;padding-top:8px}.studio-logo{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;width:128px;padding:10px 6px;border-radius:var(--r-m);color:var(--mute);text-align:center;transition:color .15s}.studio-logo img{width:56px;height:56px;border-radius:999px;object-fit:cover;background:var(--bg-3);box-shadow:0 0 0 1px var(--line-2);transition:transform .25s var(--ease),box-shadow .2s}.studio-logo b{font-size:13px;font-weight:500;letter-spacing:0;line-height:1.3}.studio-logo span{display:none}a.studio-logo:hover,a.studio-logo:focus-visible{color:var(--text)}a.studio-logo:hover img{transform:translateY(-2px);box-shadow:0 0 0 1px var(--acc-2),0 10px 24px -10px #9b82ffcc}@media (max-width: 768px){.studios-row{padding-top:32px}.studios-grid{gap:8px 0}.studio-logo{width:33.333%}.studio-logo img{width:48px;height:48px}}@media (max-width: 768px){.hero-in{gap:18px}.hero-in>.mono{text-wrap:balance;line-height:1.7}.hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px;margin-top:28px}.hstat b{font-size:28px}.studios-head{flex-direction:column;align-items:flex-start;gap:6px}.contact-in{padding-top:16px;gap:28px}.contact-copy{gap:20px}.contact-h{font-size:clamp(44px,14vw,64px)}.dc{width:100%}.models-grid .sub .tile-meta{display:none}}
