body.embed{overflow:hidden}body.embed *,body.embed *::before,body.embed *::after{animation:none!important;transition:none!important}body.embed #fx,body.embed #bgfx,body.embed #pfx,body.embed .trail{display:none!important}.embedph{border-radius:12px;background:rgba(255,255,255,.06);width:100%}body.embed .taphint,body.embed #ptoast,body.embed .ptoast{display:none!important}
.fa-roblox::before{content:''!important;display:inline-block;width:1em;height:1em;vertical-align:-.125em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M5.16.86 0 19.1l18.84 4.04L24 4.9 5.16.86Zm8.6 14.3-4.8-1.04 1.04-4.84 4.82 1.03-1.06 4.85Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M5.16.86 0 19.1l18.84 4.04L24 4.9 5.16.86Zm8.6 14.3-4.8-1.04 1.04-4.84 4.82 1.03-1.06 4.85Z'/%3E%3C/svg%3E") center/contain no-repeat}

:root{--accent:#a78bfa;--text:#f4f4f5;--muted:#a1a1aa;--line:rgba(255,255,255,.1);--card-bg:rgba(12,12,18,.45);--card-blur:14px;--radius:22px;--width:440px;--font:'Outfit'}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{color:var(--text);font-family:var(--font),system-ui,sans-serif;min-height:100vh;overflow-x:hidden;background:#09090b}
body.locked{overflow:hidden}
a{color:inherit}
#bgwrap{position:fixed;inset:0;z-index:0;background-size:cover;background-position:center}
#bgwrap video{width:100%;height:100%;object-fit:cover;display:block}
#fx,#trail{position:fixed;inset:0;z-index:1;pointer-events:none}
#trail{z-index:30}
#enter{position:fixed;inset:0;z-index:40;display:grid;place-items:center;cursor:pointer;background:rgba(0,0,0,.7);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:opacity .7s ease}
#enter span{font-size:1.3rem;letter-spacing:.25em;animation:pulse 2s ease-in-out infinite;padding:0 16px;text-align:center}
#enter.hide{opacity:0;pointer-events:none}
#enter .escv{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#enter.es-particles span{animation:none;letter-spacing:.01em;font-weight:700;font-size:1.05rem;position:relative}
#enter.es-particles{background:rgba(0,0,0,.86)}
#enter.es-typewriter span{animation:none;letter-spacing:.12em}#enter.es-typewriter span::after{content:'|';animation:blink 1s steps(1) infinite;margin-left:2px}
@keyframes blink{50%{opacity:0}}
#enter.es-wave span{animation:none}#enter.es-wave span b{display:inline-block;font-weight:inherit;animation:ewave 1.6s ease-in-out infinite;animation-delay:calc(var(--i) * .08s)}
@keyframes ewave{50%{transform:translateY(-8px);color:var(--accent)}}
#enter.es-cycle span{animation:none;letter-spacing:.06em;font-size:1.5rem}
#enter.es-glitch span{animation:eglitch 2.4s steps(1) infinite;position:relative;text-shadow:-2px 0 #ff2a6d,2px 0 #05d9e8}
@keyframes eglitch{0%,86%,100%{transform:none}88%{transform:translate(-3px,1px) skewX(8deg)}90%{transform:translate(3px,-1px)}92%{transform:translate(-1px,2px) skewX(-6deg)}}
@keyframes pulse{50%{opacity:.35}}
.page{position:relative;z-index:2}
/* Portfolio layout */
.pf .pfpage{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:26px;max-width:1180px;margin:0 auto;padding:28px 20px 40px;align-items:start}
.pf .pfside{min-height:auto;position:sticky;top:20px;padding:0;place-items:stretch}.pf .pfside .card{width:100%;max-width:none}
.pf .blocks,.pf .scrollhint{display:none!important}.pf .pfpage>.pfoot{grid-column:1/-1}
.pfmain{min-width:0;display:flex;flex-direction:column;gap:14px}
.pftabs{position:sticky;top:12px;z-index:5;display:flex;gap:6px;padding:6px;border-radius:16px;background:rgba(10,10,16,.55);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);overflow-x:auto;scrollbar-width:none}
.pftabs button{flex:none;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:0;border-radius:11px;background:none;color:inherit;opacity:.7;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s,opacity .2s}
.pftabs button:hover{opacity:1}.pftabs button.on{opacity:1;background:color-mix(in srgb,var(--accent) 24%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}
.pftabs .pfn{font-size:.7rem;padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.08)}.pftabs .pfn:empty{display:none}
.pfpanes{display:flex;flex-direction:column;gap:14px}.pfpane{display:flex;flex-direction:column;gap:14px}.pfpane[hidden]{display:none}.pfpane.pfin{animation:pfin .45s cubic-bezier(.2,.8,.2,1)}@keyframes pfin{from{opacity:0;transform:translateY(10px)}}
.pfpane .reveal{opacity:1;transform:none}
.pfabout{padding:20px 22px;text-align:left}.pfah{font-weight:800;font-size:1.05rem;margin-bottom:10px;display:flex;gap:8px;align-items:center}.pfah i{color:var(--accent)}
.pfabout .bio{font-size:1.02rem;text-align:left;margin:0}.pfabout .tags,.pfabout .meta{justify-content:flex-start;margin-top:12px}
@media(max-width:899px){.pf .pfpage{grid-template-columns:1fr;padding:18px 14px 30px}.pf .pfside{position:static}}
.hero{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:28px 0 56px;position:relative}
.card{position:relative;width:min(var(--width),calc(100vw - 32px));padding:30px 24px 20px;border-radius:var(--radius);text-align:center;background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,calc(.5 * var(--cshadow,1)));overflow:hidden;transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1),filter .9s ease}
.card.show{opacity:1;transform:none;filter:none}
/* entrance animations: keyframes that play once when the card is revealed (old transition version broke most of them) */
.card[data-anim]:not([data-anim=""]):not([data-anim=none]):not(.show){opacity:0}
.card.show[data-anim=zoom]{animation:eaZoom .75s cubic-bezier(.16,1,.3,1) both}@keyframes eaZoom{from{opacity:0;transform:scale(.82)}}
.card.show[data-anim=fade]{animation:eaFade .9s ease both}@keyframes eaFade{from{opacity:0}}
.card.show[data-anim=slide]{animation:eaSlide .8s cubic-bezier(.2,.8,.2,1) both}@keyframes eaSlide{from{opacity:0;transform:translateY(70px)}}
.card.show[data-anim=blur]{animation:eaBlur .9s ease both}@keyframes eaBlur{from{opacity:0;filter:blur(20px);transform:scale(1.04)}}
.card.show[data-anim=flip]{animation:eaFlip .9s cubic-bezier(.2,.8,.2,1) both}@keyframes eaFlip{from{opacity:0;transform:perspective(1000px) rotateX(-45deg) translateY(40px)}}
.card.show[data-anim=drop]{animation:eaDrop .85s cubic-bezier(.16,1,.3,1) both}@keyframes eaDrop{from{opacity:0;transform:translateY(-120px) scale(.96)}}
.card.show[data-anim=glitch]{animation:eaGlitch .7s steps(1) both}@keyframes eaGlitch{0%{opacity:0}10%{opacity:1;transform:translate(-18px,4px) skewX(-14deg);filter:hue-rotate(160deg) saturate(3)}22%{transform:translate(14px,-3px) skewX(10deg);filter:hue-rotate(-90deg) saturate(2.5);clip-path:inset(18% 0 42% 0)}34%{transform:translate(-8px,0);clip-path:inset(60% 0 8% 0)}46%{transform:translate(6px,2px) skewX(4deg);filter:none;clip-path:none}58%{opacity:.6;transform:translate(-3px,0)}70%{opacity:1;transform:translate(2px,0)}85%,100%{opacity:1;transform:none;filter:none;clip-path:none}}
.card.show[data-anim=rise]{animation:eaRise 1s cubic-bezier(.16,1,.3,1) both}@keyframes eaRise{from{opacity:0;transform:translateY(140px) scale(.9)}}
.card.show[data-anim=spin]{animation:eaSpin .9s cubic-bezier(.16,1,.3,1) both}@keyframes eaSpin{from{opacity:0;transform:rotate(-200deg) scale(.4)}}
.card.show[data-anim=unfold]{animation:eaUnfold .9s cubic-bezier(.2,.8,.2,1) both}@keyframes eaUnfold{from{opacity:0;transform:perspective(900px) rotateY(85deg)}}
.card.show[data-anim=swing]{animation:eaSwing 1.1s ease-out both;transform-origin:50% 0}@keyframes eaSwing{0%{opacity:0;transform:perspective(900px) rotateX(-80deg)}45%{opacity:1;transform:perspective(900px) rotateX(18deg)}70%{transform:perspective(900px) rotateX(-8deg)}88%{transform:perspective(900px) rotateX(3deg)}100%{opacity:1;transform:none}}
.card.show[data-anim=zoomout]{animation:eaZoomOut .9s cubic-bezier(.2,.8,.2,1) both}@keyframes eaZoomOut{from{opacity:0;transform:scale(1.3);filter:blur(12px)}}
.card.show[data-anim=slash]{animation:eaSlash .8s cubic-bezier(.7,0,.3,1) both}@keyframes eaSlash{from{clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}
.card.show[data-anim=bounce]{animation:eaBounce 1s both}@keyframes eaBounce{0%{opacity:0;transform:translateY(-140px);animation-timing-function:cubic-bezier(.5,0,1,.6)}40%{opacity:1;transform:none;animation-timing-function:cubic-bezier(0,.4,.5,1)}58%{transform:translateY(-34px);animation-timing-function:cubic-bezier(.5,0,1,.6)}74%{transform:none;animation-timing-function:cubic-bezier(0,.4,.5,1)}86%{transform:translateY(-10px)}100%{opacity:1;transform:none}}
.card.show[data-anim=elastic]{animation:eaElastic 1.1s both}@keyframes eaElastic{0%{opacity:0;transform:scale(.3)}35%{opacity:1;transform:scale(1.12,.9)}50%{transform:scale(.92,1.08)}65%{transform:scale(1.04,.97)}80%{transform:scale(.99,1.01)}100%{opacity:1;transform:none}}
.card.show[data-anim=roll]{animation:eaRoll .9s cubic-bezier(.2,.8,.2,1) both}@keyframes eaRoll{from{opacity:0;transform:translateX(-60vw) rotate(-120deg)}}
.card.show[data-anim=curtain]{animation:eaCurtain .9s cubic-bezier(.7,0,.3,1) both}@keyframes eaCurtain{from{clip-path:inset(0 50% 0 50% round var(--radius))}to{clip-path:inset(0 0 0 0 round var(--radius))}}
.card.show[data-anim=tv]{animation:eaTv .8s ease both}@keyframes eaTv{0%{opacity:0;transform:scale(1,.004);filter:brightness(4)}35%{opacity:1;transform:scale(1,.004);filter:brightness(4)}65%{transform:scale(1,1.04);filter:brightness(1.6)}100%{opacity:1;transform:none;filter:none}}
.card.show[data-anim=portal]{animation:eaPortal 1.1s cubic-bezier(.2,.8,.2,1) both}@keyframes eaPortal{0%{opacity:0;transform:scale(0) rotate(-30deg);filter:hue-rotate(180deg) blur(16px) brightness(2)}60%{opacity:1;filter:hue-rotate(40deg) blur(2px)}100%{opacity:1;transform:none;filter:none}}
.card.tilting{transition:transform .15s ease-out}
.card.glow{box-shadow:0 20px 60px rgba(0,0,0,calc(.5 * var(--cshadow,1))),0 0 40px color-mix(in srgb,var(--accent) 22%,transparent)}
.card.noborder{border-color:transparent}
.card.minimal{background:none;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.banner{display:none;height:130px;margin:-30px -24px 0;background-size:cover;background-position:center}
.card.has-banner .banner{display:block}
.card.has-banner .avatar-wrap{margin-top:calc(var(--as,112px) / -2)}
.avatar-wrap{position:relative;width:112px;height:112px;margin:0 auto 12px}
.avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid rgba(0,0,0,.35);box-shadow:0 0 25px color-mix(in srgb,var(--accent) 55%,transparent);background:#18181b}
.deco{position:absolute;left:-10%;top:-10%;width:120%;height:120%;pointer-events:none;display:none}
.status-dot{position:absolute;right:4px;bottom:4px;width:24px;height:24px;border-radius:50%;border:4px solid #111;background:#80848e;display:none;z-index:2}
.name{font-size:2.15rem;font-weight:800;line-height:1.15;word-break:break-word;position:relative;display:inline-block}
.fx-glow{text-shadow:0 0 var(--ng,12px) var(--accent),0 0 calc(var(--ng,12px) * 2.3) color-mix(in srgb,var(--accent) 60%,transparent)}
.fx-gradient{background:linear-gradient(90deg,var(--accent),#fff);-webkit-background-clip:text;background-clip:text;color:transparent}
.fx-rainbow{background:linear-gradient(90deg,#ff6b6b,#feca57,#48dbfb,#ff9ff3,#ff6b6b);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rb 4s linear infinite}
@keyframes rb{to{background-position:200% center}}
.fx-glitch{text-shadow:0 0 10px color-mix(in srgb,var(--accent) 50%,transparent)}
.fx-glitch::before,.fx-glitch::after{content:attr(data-text);position:absolute;inset:0;overflow:hidden}
.fx-glitch::before{color:#0ff;transform:translate(-2px,0);clip-path:inset(0 0 55% 0);animation:gl1 2.5s infinite steps(2)}
.fx-glitch::after{color:#f0f;transform:translate(2px,0);clip-path:inset(55% 0 0 0);animation:gl2 3s infinite steps(2)}
@keyframes gl1{0%,90%{transform:translate(0)}92%{transform:translate(-3px,-1px)}96%{transform:translate(3px,1px)}}
@keyframes gl2{0%,88%{transform:translate(0)}91%{transform:translate(3px,1px)}95%{transform:translate(-3px,-1px)}}
.fx-sparkle{text-shadow:0 0 10px var(--accent)}
.fx-sparkle::before,.fx-sparkle::after{content:'✦';position:absolute;font-size:.45em;color:#fff;text-shadow:0 0 8px var(--accent);animation:tw 1.8s ease-in-out infinite}
.fx-sparkle::before{left:-.7em;top:.1em}
.fx-sparkle::after{right:-.7em;bottom:.1em;animation-delay:.9s}
@keyframes tw{0%,100%{opacity:.2;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.1) rotate(45deg)}}
.uname{color:var(--muted);font-size:.9rem;margin-top:2px}
.badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:8px 0 2px}
.badges i{font-size:var(--bs,16px);color:var(--accent);filter:drop-shadow(0 0 6px var(--accent));cursor:default}
.bio{min-height:1.6em;margin:8px 0 6px;font-weight:300;font-size:1.05rem;transition:opacity .3s;word-break:break-word}
.bio:not(.nocaret)::after{content:'|';margin-left:2px;animation:blink 1s steps(1) infinite;color:var(--accent)}
@keyframes blink{50%{opacity:0}}
.tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:6px 0}
.tag{font-size:.75rem;padding:3px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}
.meta{color:var(--muted);font-size:.82rem;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.presence{display:none;flex-direction:column;gap:8px;margin-top:16px;text-align:left}
#presence~#music:not(:empty){margin-top:10px}
#presence~#links:not([style*="none"])+#music{margin-top:0}
.pcustom{padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--line);font-size:.9rem;display:flex;align-items:center;gap:6px;word-break:break-word}
.pcustom.muted{color:var(--muted)}
.emoji{width:20px;height:20px;flex:none}
.act{display:flex;gap:12px;align-items:center;padding:10px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--line);animation:pop .4s ease}
@keyframes pop{from{opacity:0;transform:translateY(6px)}}
.imgw{position:relative;flex:none}
.big{width:60px;height:60px;border-radius:10px;object-fit:cover;display:block}
.big.ph{display:grid;place-items:center;background:rgba(255,255,255,.08);font-size:1.4rem;color:var(--muted)}
.small{position:absolute;right:-5px;bottom:-5px;width:22px;height:22px;border-radius:50%;border:2px solid #111;background:#111}
.ai{min-width:0;flex:1}
.al{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-weight:600}
.an{font-weight:600;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.as{color:var(--muted);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sbar{height:4px;border-radius:4px;background:rgba(255,255,255,.12);margin-top:6px;overflow:hidden}
.sfill{height:100%;width:0;background:#1db954;transition:width 1s linear}
.links{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin:20px 0 16px}
.links a{color:var(--text);font-size:var(--is,25px);text-decoration:none;transition:transform .2s,color .2s,filter .2s,border-color .2s}
.links a:hover{transform:translateY(-4px) scale(1.12);filter:drop-shadow(0 0 8px var(--accent))}
.links.ic-accent a{color:var(--accent)}
.links.buttons{flex-direction:column;gap:10px}
.links.buttons a{display:flex;align-items:center;gap:12px;font-size:1rem;padding:12px 16px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid var(--line)}
.links.buttons a i{font-size:1.2rem;width:24px;text-align:center}
.links.buttons a:hover{transform:translateY(-2px);filter:none;border-color:var(--accent)}
.player{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--line)}
.player button{background:none;border:0;color:var(--text);font-size:.95rem;cursor:pointer;width:24px;flex:none;opacity:.9}
.player button:hover{opacity:1;color:var(--accent)}
.player button.on{color:var(--accent)}
.pinfo{flex:1;min-width:0;text-align:left}
.ptitle{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ptime{font-size:.68rem;color:var(--muted);margin-top:3px}
.bar{height:4px;border-radius:4px;background:rgba(255,255,255,.12);margin-top:6px;cursor:pointer}
.bar div{height:100%;width:0;border-radius:4px;background:var(--accent);box-shadow:0 0 8px var(--accent)}
.player input[type=range]{width:60px;accent-color:var(--accent)}
.b-social{padding:16px;border-radius:20px;text-align:left;--sc:#e6edf3}
.b-social .soban{height:80px;margin:-16px -16px 12px;background:linear-gradient(120deg,color-mix(in srgb,var(--sc) 40%,#111),#111) center/cover}
.sohead{display:flex;align-items:center;gap:12px}.soav{flex:none;width:52px;height:52px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.08);font-size:1.5rem;color:var(--sc);box-shadow:0 0 0 2px rgba(255,255,255,.06)}.soav img{width:100%;height:100%;object-fit:cover}
.sotx{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.sonm{font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sohd{color:var(--muted);font-size:.8rem}.sost{color:var(--muted);font-size:.8rem;display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.sost b{color:var(--text);font-weight:700}.sodot{opacity:.5}
.sotag{align-self:flex-start;flex:none;display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700;color:var(--text);text-decoration:none;opacity:.85}.sotag i{color:var(--sc)}
.sobio{margin:10px 0 0;color:var(--muted);font-size:.84rem;line-height:1.45}.sobio:empty{display:none}
.soex:not(:empty){margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:grid;gap:10px}
.sograph{display:grid;gap:6px}.sogr{display:grid;grid-template-rows:repeat(7,1fr);grid-auto-flow:column;grid-auto-columns:minmax(6px,1fr);gap:2.5px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}.sogr::-webkit-scrollbar{display:none}
.sogr i{aspect-ratio:1;border-radius:2px;min-width:6px;background:rgba(255,255,255,.07)}.sogr i.lx{visibility:hidden}.sogr i.l1{background:color-mix(in srgb,var(--sc) 30%,rgba(255,255,255,.08))}.sogr i.l2{background:color-mix(in srgb,var(--sc) 55%,rgba(255,255,255,.08))}.sogr i.l3{background:color-mix(in srgb,var(--sc) 78%,transparent)}.sogr i.l4{background:var(--sc);box-shadow:0 0 6px color-mix(in srgb,var(--sc) 60%,transparent)}
.so-github .sogr i.l1{background:#3d3d3d}.so-github .sogr i.l2{background:#7a7a7a}.so-github .sogr i.l3{background:#b5b5b5}.so-github .sogr i.l4{background:#f2f2f2}
.sotot{color:var(--muted);font-size:.78rem}
.sochips{display:flex;flex-wrap:wrap;gap:8px}.sochip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.03);font-size:.84rem;font-weight:600;transition:transform .2s,border-color .2s}.sochip:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.3)}
.stki{font-size:.95rem}.stki.tx{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 3px;border-radius:4px;background:#3178c6;color:#fff;font-size:.62rem;font-weight:800}.stki.dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}
.solive{display:flex;align-items:center;gap:8px;font-size:.84rem;color:#fca5a5}.solive b{color:#fff;background:#e11d48;padding:2px 8px;border-radius:6px;font-size:.72rem}.sopulse{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 0 #ef4444;animation:sopulse 1.6s infinite}@keyframes sopulse{70%{box-shadow:0 0 0 9px transparent}}
.sovids{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sovid{display:flex;flex-direction:column;gap:4px;color:var(--text);text-decoration:none;font-size:.72rem;line-height:1.3}.sovid img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px}.sovid span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.b-social.sl-compact{padding:10px 12px}.b-social.sl-compact .soav{width:36px;height:36px;font-size:1.1rem}.b-social.sl-compact .sobio,.b-social.sl-compact .soex{display:none}
.b-stack{padding:22px;border-radius:20px;text-align:left}.stkt{margin:0 0 14px;font-size:1rem;letter-spacing:.14em;text-transform:uppercase}.stkg{display:grid;gap:9px;margin-bottom:14px}.stkg:last-child{margin-bottom:0}.stkh{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.bgcv.vec{position:absolute;inset:0;width:100%;height:100%;image-rendering:auto}
.bgmq{display:flex;flex-direction:column;justify-content:space-around;overflow:hidden}.bgmqr{display:flex;width:max-content;white-space:nowrap;animation:bgmq 40s linear infinite;font:900 clamp(56px,13vw,150px)/1 var(--font,system-ui);letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.5px color-mix(in srgb,var(--accent) 55%,rgba(255,255,255,.3));opacity:.7}.bgmqr.rev{animation-direction:reverse}.bgmqr:nth-child(2){color:color-mix(in srgb,var(--accent) 14%,transparent)}@keyframes bgmq{to{transform:translateX(-50%)}}
.avatar-wrap{position:relative}.avsticker{position:absolute;z-index:4;width:62%;max-width:120px;bottom:-8%;pointer-events:none;filter:drop-shadow(0 6px 12px rgba(0,0,0,.45))}.avsticker.sr{right:-38%}.avsticker.sl{left:-38%;transform:scaleX(-1)}
.mlang{display:inline-flex;align-items:center;gap:4px}
/* Noir: left-aligned and clean */
.card.lay-noir{text-align:left;padding:26px 24px 20px}.lay-noir .avatar-wrap{margin:0 0 12px!important}.lay-noir .avatar,.lay-noir .avatar-wrap img.avatar{border-radius:18px!important}
.lay-noir .nrow,.lay-noir .name{justify-content:flex-start}.lay-noir .badges,.lay-noir .tags,.lay-noir .links{justify-content:flex-start}.lay-noir .meta{flex-direction:column;align-items:flex-start;gap:6px;justify-content:flex-start}
.lay-noir .bio{font-style:italic;padding:12px 14px;border-left:2px solid color-mix(in srgb,var(--accent) 60%,transparent);background:rgba(255,255,255,.03);border-radius:0 12px 12px 0}
.lay-noir .banner{border-radius:16px}
/* Frame: no box, corner brackets */
.card.lay-frame{background:none!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible}
.card.lay-frame::before,.card.lay-frame::after{content:'';position:absolute;width:38px;height:38px;border:2px solid color-mix(in srgb,var(--accent) 70%,#fff);pointer-events:none;filter:drop-shadow(0 0 6px var(--accent));z-index:0}
.card.lay-frame::before{top:0;left:0;border-right:0;border-bottom:0}.card.lay-frame::after{bottom:0;right:0;border-left:0;border-top:0}
.lay-frame .fcorner{position:absolute;width:38px;height:38px;border:2px solid color-mix(in srgb,var(--accent) 70%,#fff);pointer-events:none;filter:drop-shadow(0 0 6px var(--accent))}.lay-frame .fc1{top:0;right:0;border-left:0;border-bottom:0}.lay-frame .fc2{bottom:0;left:0;border-right:0;border-top:0}
.lay-frame .avatar,.lay-frame .avatar-wrap img.avatar{border-radius:16px!important}
/* glowing tiles links */
.links.glowtiles{gap:12px}.links.glowtiles a{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);color:#fff!important;box-shadow:0 0 18px rgba(255,255,255,.18),inset 0 0 12px rgba(255,255,255,.06)}.links.glowtiles a:hover{box-shadow:0 0 26px rgba(255,255,255,.4)}
#bgfx .bgdots{position:absolute;inset:0;width:100%;height:100%;image-rendering:auto}
/* liquid metal buttons: a brushed-steel face with a chrome rim that slowly turns, the accent only as a faint tint */
.links.metal{flex-direction:column;gap:10px}
.links.metal a{position:relative;display:flex;align-items:center;gap:12px;font-size:1rem;font-weight:600;padding:12px 16px;border-radius:14px;color:#f4f4f5!important;background:linear-gradient(180deg,#2a2b30,#121216);isolation:isolate;box-shadow:0 6px 18px -8px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.18)}
.links.metal a::before{content:'';position:absolute;inset:0;padding:1.5px;border-radius:inherit;background:conic-gradient(from var(--ang),#5b5d66,#f5f6f8,#8a8d96,color-mix(in srgb,var(--accent) 45%,#e5e7eb),#4a4c54,#f5f6f8,#5b5d66);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spinang 6s linear infinite;z-index:-1;pointer-events:none}
.links.metal a::after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.13) 45%,transparent 60%) -150% 0/250% 100% no-repeat;transition:background-position .7s ease;pointer-events:none}
.links.metal a:hover::after{background-position:150% 0}
.links.metal a i{font-size:1.2rem;width:24px;text-align:center;filter:drop-shadow(0 1px 0 rgba(0,0,0,.6))}
@media (prefers-reduced-motion:reduce){.links.metal a::before{animation:none}}
/* dock: a glass shelf of icons that grow towards your pointer */
.links.dock{gap:10px;padding:10px 14px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:max-content;max-width:100%;margin-left:auto;margin-right:auto;align-items:flex-end}
.links.dock a{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.08);font-size:1.25rem;transform-origin:50% 100%;transition:transform .18s cubic-bezier(.2,.8,.2,1)}
/* glass icons: a tilted colour plate behind a frosted tile */
.links.glass{gap:16px}
.links.glass a{position:relative;display:grid;place-items:center;width:54px;height:54px;font-size:1.35rem;color:#fff!important;isolation:isolate}
.links.glass a::before{content:'';position:absolute;inset:0;border-radius:14px;background:linear-gradient(135deg,var(--gc,var(--accent)),color-mix(in srgb,var(--gc,var(--accent)) 55%,#000));transform:rotate(14deg);z-index:-2;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.links.glass a::after{content:'';position:absolute;inset:0;border-radius:14px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:-1;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.links.glass a:hover::before{transform:rotate(22deg) translate(4px,-3px)}.links.glass a:hover::after{transform:translateZ(0) scale(1.04)}
.links.glass a i,.links.glass a img{filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}
/* star border: two soft lights run along the edge of each button */
@property --sx{syntax:'<percentage>';initial-value:0%;inherits:false}
@keyframes sbRun{to{--sx:100%}}
.links.starborder{flex-direction:column;gap:10px}
.links.starborder a{position:relative;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:linear-gradient(180deg,#121218,#07070a);border:1px solid rgba(255,255,255,.1);overflow:hidden;font-size:1rem;font-weight:600}
.links.starborder a::before{content:'';position:absolute;inset:0;padding:1px;border-radius:inherit;background:radial-gradient(70px 30px at var(--sx) 0%,#fff,color-mix(in srgb,var(--accent) 70%,transparent) 35%,transparent 70%),radial-gradient(70px 30px at calc(100% - var(--sx)) 100%,#fff,color-mix(in srgb,var(--accent) 70%,transparent) 35%,transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:sbRun 4s linear infinite alternate;pointer-events:none}
.links.starborder a>*{position:relative;z-index:1}.links.starborder a i{font-size:1.2rem;width:24px;text-align:center}
@media (prefers-reduced-motion:reduce){.links.starborder a::before{animation:none}}
/* hover: glare sweep + magnet */
.lh-glare a{position:relative;overflow:hidden}.lh-glare a::after{content:'';position:absolute;inset:-2px;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%) -160% 0/250% 100% no-repeat;pointer-events:none;transition:background-position .65s ease}
.lh-glare a:hover::after{background-position:160% 0}
.links.metal.lh-glare a::after{inset:0}
.lh-magnet a{transition:translate .25s cubic-bezier(.2,.8,.2,1),transform .2s}
/* spinning name ring around the picture */
@keyframes ctspin{to{transform:rotate(360deg)}}
.avatar-wrap.afx-circletext{margin-top:24px!important;margin-bottom:32px!important}
.ctring{position:absolute;inset:-22px;border-radius:50%;animation:ctspin 18s linear infinite;pointer-events:none;z-index:3}
.ctring span{position:absolute;left:50%;top:0;height:50%;width:1em;margin-left:-.5em;transform-origin:50% 100%;text-align:center;font-size:11px;font-weight:700;letter-spacing:0;color:var(--text);text-shadow:0 1px 4px rgba(0,0,0,.6);line-height:1}
/* gallery: card stack + fanned cards */
.galstack{position:relative;height:clamp(200px,62vw,300px);margin:6px auto 14px;max-width:300px}
.galstack .galt{position:absolute;inset:0;aspect-ratio:auto;cursor:pointer;border-radius:16px;box-shadow:0 14px 30px -12px rgba(0,0,0,.7);transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s}
.galstack .galt.fly{transform:translateX(120%) rotate(14deg)!important;opacity:0!important;transition:transform .26s ease-in,opacity .26s}
.galfan{position:relative;height:clamp(170px,48vw,230px);display:flex;justify-content:center;align-items:center;margin:8px 0}
.galfan .galt{position:absolute;width:clamp(110px,30vw,150px);aspect-ratio:3/4;border-radius:14px;border:4px solid rgba(255,255,255,.9);box-shadow:0 12px 26px -10px rgba(0,0,0,.75);transform:translateX(var(--fx)) rotate(var(--fr));animation:fanIn .6s cubic-bezier(.2,1.4,.4,1) both;animation-delay:var(--d);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
@keyframes fanIn{from{transform:translateX(0) rotate(0) scale(.6);opacity:0}}
.galfan .galt:hover,.galfan .galt:focus-visible{transform:translateX(var(--fx)) rotate(0) translateY(-14px) scale(1.06);z-index:20}
.fx-sparkles{position:relative}.fx-sparkles .spk{position:absolute;width:var(--sz);height:var(--sz);pointer-events:none;z-index:2;animation:spk 1.3s ease-in-out forwards}.fx-sparkles .spk svg{width:100%;height:100%;fill:currentColor;display:block;animation:spkr 1.3s linear forwards;filter:drop-shadow(0 0 4px currentColor)}@keyframes spk{0%{transform:scale(0)}50%{transform:scale(1)}100%{transform:scale(0)}}@keyframes spkr{to{transform:rotate(180deg)}}
.fx-liquidmetal{background:linear-gradient(110deg,#4b5563 0%,#f9fafb 18%,#9ca3af 30%,#ffffff 44%,#6b7280 58%,#e5e7eb 72%,#4b5563 86%,#f3f4f6 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:lmetal 6s ease-in-out infinite alternate;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5)) drop-shadow(0 0 14px rgba(255,255,255,.15))}@keyframes lmetal{to{background-position:100% 0}}
.cblob{position:fixed;left:-60px;top:-60px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--accent),color-mix(in srgb,var(--accent) 40%,#0000) 70%);filter:blur(22px);opacity:.55;pointer-events:none;z-index:9998;mix-blend-mode:screen;will-change:transform}.cblob.b2{width:70px;height:70px;left:-35px;top:-35px;opacity:.4;filter:blur(14px);background:radial-gradient(circle,#fff,transparent 70%)}
@property --ht{syntax:'<length>';inherits:false;initial-value:0px}
.htone .banner,.htone .avatar{-webkit-mask:radial-gradient(circle,#000 var(--ht),transparent calc(var(--ht) + .6px)) 0 0/9px 9px;mask:radial-gradient(circle,#000 var(--ht),transparent calc(var(--ht) + .6px)) 0 0/9px 9px;animation:htone 1.6s cubic-bezier(.3,.6,.2,1) .25s forwards}
@keyframes htone{to{--ht:7px}}.htone.htdone .banner,.htone.htdone .avatar{-webkit-mask:none;mask:none}
.bglyric{position:fixed;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;font-size:clamp(30px,7.5vw,84px);font-weight:800;line-height:1.1;opacity:.13;pointer-events:none;z-index:1;padding:0 6vw;color:var(--text);letter-spacing:-.02em}
.bglyric.in{animation:bgl .6s ease}@keyframes bgl{from{opacity:0;transform:translateY(-44%)}}
.sprow{display:flex;justify-content:flex-end;margin-top:6px}
.splyrbtn{border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--text);border-radius:999px;padding:5px 12px;font:inherit;font-size:.8rem;cursor:pointer}
.splyrbtn.on{border-color:var(--accent);color:var(--accent)}
.spwrap iframe{width:100%;border:0;border-radius:12px;display:block}
.flag{margin-left:2px}
.spembed{border:0;border-radius:12px;width:100%;display:block}
.mediabox{border-radius:14px;overflow:hidden;margin-bottom:8px}
.ytbox{position:relative;width:100%;aspect-ratio:16/9;min-height:200px}
.ytbox>*{position:absolute;inset:0;width:100%;height:100%;border:0}
.scbox{width:100%;height:120px;border:0;display:block}
.mediabox.empty,.ytbox.off,.scwrap.off{display:none}
.mediabox.hidden{position:fixed;left:-9999px;top:0;width:320px;margin:0}
.mediabox.hidden.tapme{left:50%;top:auto;bottom:84px;transform:translateX(-50%);z-index:60;width:min(360px,92vw)}
.mediabox.tapme{box-shadow:0 0 0 2px var(--accent),0 0 32px color-mix(in srgb,var(--accent) 55%,transparent)}
.needtap{padding:9px 12px;font-size:.86rem;font-weight:700;text-align:center;background:color-mix(in srgb,var(--accent) 30%,#0b0b10);color:#fff}
.pli.bad{opacity:.45;text-decoration:line-through}
.pcover{width:40px;height:40px;border-radius:8px;flex:none;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.08);color:var(--muted)}
.pcover img{width:100%;height:100%;object-fit:cover}
.player.floating{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);width:min(420px,calc(100vw - 24px));z-index:35;background:rgba(14,14,20,.9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 40px rgba(0,0,0,.5);animation:pop .3s ease}
.vtick{flex:none;display:inline-block;width:var(--vt,18px);height:var(--vt,18px);filter:drop-shadow(0 0 6px rgba(56,189,248,.55));background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M7.4 12.4l3.1 3.1 6.1-6.2'/%3E%3C/svg%3E") center/62% no-repeat,#38bdf8;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.62 3.11Q12.00 -0.40 14.38 3.11Q18.20 1.26 18.51 5.49Q22.74 5.80 20.89 9.62Q24.40 12.00 20.89 14.38Q22.74 18.20 18.51 18.51Q18.20 22.74 14.38 20.89Q12.00 24.40 9.62 20.89Q5.80 22.74 5.49 18.51Q1.26 18.20 3.11 14.38Q-0.40 12.00 3.11 9.62Q1.26 5.80 5.49 5.49Q5.80 1.26 9.62 3.11Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.62 3.11Q12.00 -0.40 14.38 3.11Q18.20 1.26 18.51 5.49Q22.74 5.80 20.89 9.62Q24.40 12.00 20.89 14.38Q22.74 18.20 18.51 18.51Q18.20 22.74 14.38 20.89Q12.00 24.40 9.62 20.89Q5.80 22.74 5.49 18.51Q1.26 18.20 3.11 14.38Q-0.40 12.00 3.11 9.62Q1.26 5.80 5.49 5.49Q5.80 1.26 9.62 3.11Z'/%3E%3C/svg%3E") center/contain no-repeat;filter:drop-shadow(0 0 6px rgba(56,189,248,.8));animation:none}
.nrow{display:inline-flex;align-items:center;justify-content:center;gap:.4em;max-width:100%;vertical-align:middle}.nrow>.name{min-width:0}
.lanim-pulse{animation:lpulse 1.6s ease-in-out infinite}@keyframes lpulse{50%{transform:scale(1.12)}}
.lanim-shake{animation:lshake 2.6s ease-in-out infinite}@keyframes lshake{0%,80%,100%{transform:none}84%{transform:rotate(-9deg)}88%{transform:rotate(8deg)}92%{transform:rotate(-6deg)}96%{transform:rotate(4deg)}}
.lanim-glow{animation:lglow 2s ease-in-out infinite}@keyframes lglow{50%{filter:drop-shadow(0 0 10px var(--accent)) drop-shadow(0 0 22px var(--accent))}}
.lanim-bounce{animation:lbounce 1.8s cubic-bezier(.16,1,.3,1) infinite}@keyframes lbounce{0%,60%,100%{transform:none}30%{transform:translateY(-7px)}}
.lanim-shine{position:relative;overflow:hidden}.lanim-shine::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);animation:lshine 2.8s ease-in-out infinite;pointer-events:none}@keyframes lshine{60%,100%{transform:translateX(120%)}}
.b-sub .b-subt{color:var(--muted);font-size:.88rem;margin:-4px 0 10px}.b-subrow{display:flex;gap:8px}.b-subrow input{margin:0}.b-subrow button{flex:none}
.b-map{padding:0;overflow:hidden}.b-maph{padding:12px 14px;font-weight:700}.b-maph i{color:var(--accent)}.b-map iframe{display:block;width:100%;height:220px;border:0;filter:invert(.92) hue-rotate(180deg) saturate(.7) brightness(.95)}.b-mapa{display:block;padding:9px 14px;font-size:.8rem;color:var(--muted);text-decoration:none}
.csm .mav,.gmod .mav{display:grid;place-items:center}.gmod .mav i{color:var(--gc)}.csinv{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.csi{position:relative;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.04),color-mix(in srgb,var(--rc) 22%,transparent));border-bottom:2px solid var(--rc);padding:6px 4px 4px;text-align:center;overflow:hidden;animation:pop .4s both}.csi img{width:100%;aspect-ratio:4/3;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.csi span{display:block;font-size:.62rem;line-height:1.2;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csi.star{box-shadow:0 0 14px color-mix(in srgb,var(--rc) 45%,transparent)}
.csgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-top:12px;max-height:56vh;overflow:auto}.ms-nums.cs6{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mstats.gm{display:grid;grid-template-columns:repeat(3,1fr)}.gmrank{width:22px;height:22px;margin-left:6px;vertical-align:middle}
/* game cards */
.gx{padding:0;--gc:#8b93ff;--gc2:#13162a;isolation:isolate}
.gx::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gc) 30%,transparent);z-index:3}
.gx:hover{box-shadow:0 18px 50px color-mix(in srgb,var(--gc) 22%,rgba(0,0,0,.4))}
.gxban{position:relative;height:118px;overflow:hidden;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0}
.gxban.gxl{height:190px;border-radius:16px}
.gxbg{position:absolute;inset:0;background-color:var(--gc2);background-size:cover;background-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.gx:hover .gxbg{transform:scale(1.05)}
.gxfx{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(9,10,18,.95) 0,rgba(9,10,18,.35) 45%,transparent 75%),linear-gradient(100deg,rgba(9,10,18,.55),transparent 55%)}
.gxtag{position:absolute;left:12px;top:10px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(8,9,16,.55);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1)}
.gxtag i{color:var(--gc)}
.gxart{position:absolute;z-index:1;right:4%;bottom:-22%;height:128%;max-width:62%;object-fit:contain;object-position:bottom right;filter:drop-shadow(0 12px 22px rgba(0,0,0,.65)) drop-shadow(0 0 18px color-mix(in srgb,var(--gc) 35%,transparent));transition:transform .5s cubic-bezier(.2,.8,.2,1);transform-origin:bottom right}
.gx:hover .gxart{transform:translateY(-6px) scale(1.06)}
.gxban.gxl .gxart{height:122%;bottom:-14%;right:6%;animation:mfl 4s ease-in-out infinite}
.gxhead{position:relative;z-index:2;display:flex;align-items:flex-end;gap:12px;padding:0 14px;margin-top:-30px}
.gxav{width:62px;height:62px;flex:none;border-radius:16px;overflow:hidden;display:grid;place-items:center;font-size:1.5rem;color:var(--gc);background:linear-gradient(145deg,var(--gc2),#0b0c14);box-shadow:0 0 0 3px #0c0e18,0 0 0 5px color-mix(in srgb,var(--gc) 70%,transparent),0 8px 24px color-mix(in srgb,var(--gc) 40%,transparent)}
.gxav img{width:100%;height:100%;object-fit:cover}.gxav canvas.mcface{width:100%;height:100%;image-rendering:pixelated}.gx-minecraft .gxav img{object-fit:cover;image-rendering:pixelated}
.gxav.gxl{width:76px;height:76px;border-radius:20px}
.gx-minecraft .gxav img,.gxs.gx-minecraft .gxav img,.gxskin img{image-rendering:pixelated}
.gxt{min-width:0;flex:1;padding-bottom:2px}
.gxnm{display:flex;align-items:center;gap:6px;font-weight:900;font-size:1.06rem;letter-spacing:-.01em;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.gxn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.gxflag{font-size:.95rem}
.gxrank{width:26px;height:26px;flex:none;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--gc) 60%,transparent))}
.gxrankbig{width:64px;height:64px;flex:none;align-self:center;filter:drop-shadow(0 0 16px color-mix(in srgb,var(--gc) 60%,transparent))}
.gxsub{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px;font-size:.78rem;color:var(--muted)}
.gxchip{--cc:var(--gc);display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:.68rem;font-weight:700;color:#fff;background:color-mix(in srgb,var(--cc) 22%,rgba(255,255,255,.04));border:1px solid color-mix(in srgb,var(--cc) 45%,transparent);white-space:nowrap}
.gxdim{font-size:.7rem;opacity:.75;align-self:center}
.gx .gxv,.gxs .gxv{margin-bottom:6px;background:var(--gc);color:#0b0c14;box-shadow:0 6px 18px color-mix(in srgb,var(--gc) 45%,transparent)}
.gxlvl{padding:0 14px}.gxlvl:empty{display:none}
.gxbar{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:.7rem;font-weight:700}
.gxbl{white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.gxbp{color:var(--muted);font-variant-numeric:tabular-nums}
.gxbt{flex:1;height:6px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden}
.gxbt i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--gc),color-mix(in srgb,var(--gc) 50%,#fff));box-shadow:0 0 12px var(--gc);animation:gxgrow 1.2s cubic-bezier(.2,.8,.2,1) both}
@keyframes gxgrow{from{width:0}}
.gxstats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:12px 14px 0}
.gxstats>div,.gxgrid>div{position:relative;display:flex;flex-direction:column;align-items:center;padding:9px 4px;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.06);overflow:hidden;animation:mpop .45s backwards}
.gxstats>div::before,.gxgrid>div::before{content:'';position:absolute;left:20%;right:20%;top:0;height:2px;border-radius:2px;background:var(--gc);opacity:.7}
.gxstats b,.gxgrid b{font-size:1.02rem;font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.gxstats span,.gxgrid span{font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}
.gxstrip{display:flex;gap:6px;padding:10px 14px 0}
.gx>:last-child{margin-bottom:14px}
.gxit{flex:0 0 calc((100% - 24px)/5);min-width:0;aspect-ratio:4/3;border-radius:10px;display:grid;place-items:center;background:radial-gradient(circle at 50% 70%,color-mix(in srgb,var(--rc) 35%,transparent),rgba(255,255,255,.03));border-bottom:2px solid var(--rc);animation:mpop .45s backwards}
.gxit img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}
.gxit.fn{flex-basis:calc((100% - 18px)/4);aspect-ratio:1;background:radial-gradient(circle at 50% 35%,var(--rc),var(--rc2) 80%);border:0}
.gxit.fn img{width:100%;height:100%}
.gxsrv{flex:1;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.06)}
.gxsrv img,.gxsrv>i{width:32px;height:32px;border-radius:6px;image-rendering:pixelated;display:grid;place-items:center;color:var(--muted)}
.gxsrv span{display:flex;flex-direction:column;min-width:0;flex:1}.gxsrv b{font-size:.82rem}.gxsrv small{font-size:.7rem;color:var(--muted)}.gxsrv .motd{white-space:pre-line;margin-top:4px;color:#cfd3ea}
.gxsrv em{width:9px;height:9px;border-radius:50%;background:#6b7280;flex:none}.gxsrv.on em{background:#34d399;box-shadow:0 0 10px #34d399;animation:lpulse 1.6s ease-in-out infinite}
.gxsrv.gxl{padding:12px}.gxsrv.gxl img{width:48px;height:48px}
/* per game backdrops */
.gx-minecraft .gxbg{background:linear-gradient(to top,#4a311c 0 12px,#3f8a2b 12px 20px,transparent 20px),repeating-linear-gradient(90deg,transparent 0 8px,rgba(0,0,0,.12) 8px 16px) bottom/100% 20px no-repeat,radial-gradient(circle,rgba(255,255,255,.75) 0 1px,transparent 1.5px) 0 0/38px 30px,linear-gradient(#070d24,#173a62 80%)}
.gx-minecraft:not(.hasban) .gxfx::before{content:'';position:absolute;left:62%;top:16px;width:18px;height:18px;background:#f4efc6;box-shadow:0 0 24px 6px rgba(244,239,198,.35)}
.gx-minecraft .gxart{height:140%;bottom:-30%;max-width:46%}
.gx-fortnite .gxbg{background-blend-mode:soft-light,normal;background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.07) 0 2px,transparent 2px 26px),radial-gradient(circle at 75% 60%,var(--gc),var(--gc2) 78%)}
.gx-fortnite.hasban .gxbg,.gxs.gx-fortnite .gxbg[style]{background-blend-mode:normal}
.gx-fortnite .gxart{height:150%;bottom:-40%;max-width:58%}
.gx-valorant .gxbg{background-image:linear-gradient(135deg,var(--gc2),#0f1923 70%);background-size:cover}
.gx-valorant:not(.hasban) .gxbg{background-size:contain;background-repeat:no-repeat;background-position:85% center}
.gx-valorant:not(.hasban) .gxfx::after{content:'';position:absolute;left:-10%;bottom:28%;width:60%;height:3px;background:#ff4655;transform:rotate(-8deg);box-shadow:0 0 14px #ff4655;opacity:.8}
.gx-valorant .gxart{height:190%;bottom:-95%;max-width:55%}
.gx-osu .gxbg{background-image:radial-gradient(circle at 80% 30%,var(--gc),var(--gc2) 70%)}
.gx-osu:not(.hasban) .gxfx::before{content:'';position:absolute;right:16%;top:22px;width:58px;height:58px;border-radius:50%;border:6px solid #fff;box-shadow:0 0 0 4px var(--gc),0 0 30px var(--gc);opacity:.85}
.gx-cs2 .gxbg{background-image:linear-gradient(135deg,#1c2533,#0b0e14);filter:saturate(1.1) brightness(.8)}
.gx-cs2 .gxart{height:96%;bottom:4%;max-width:56%;filter:drop-shadow(0 8px 16px rgba(0,0,0,.7)) drop-shadow(0 0 22px var(--gc))}
.gx-chess .gxbg,.gx-lichess .gxbg{background-image:repeating-conic-gradient(rgba(255,255,255,.06) 0 25%,transparent 0 50%),radial-gradient(circle at 75% 40%,color-mix(in srgb,var(--gc) 40%,transparent),var(--gc2) 75%);background-size:30px 30px,cover}
.gx-chess:not(.hasban) .gxfx::before,.gx-lichess:not(.hasban) .gxfx::before{content:'♞';position:absolute;right:8%;bottom:-16px;font-size:120px;line-height:1;color:var(--gc);opacity:.35;text-shadow:0 0 30px var(--gc)}
/* full sheet */
.gxs{--gc:#8b93ff;--gc2:#13162a}
.msh-card:has(.gxs){width:min(440px,100%);max-height:min(76vh,76dvh,700px);padding:12px;border-radius:24px;overscroll-behavior:contain}.gxs .gxban.gxl{height:140px}.gxs .gxav.gxl{width:64px;height:64px}.gxs .gxgrid{grid-template-columns:repeat(3,1fr)}.gxs .gxgrid>div{padding:7px 3px}.gxs .gxgrid b{font-size:.92rem}.gxs .csgrid{max-height:none}.gxs .gxcardtall{width:110px}
.gxs .gxhead{margin-top:-34px;align-items:flex-end}
.gxs .gxbar{padding:0 4px}
.gxnote{margin:12px 2px 0;font-size:.8rem;color:var(--muted)}
.gxgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;margin-top:14px}
.gxgrades{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.gxgrades .gr{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-radius:12px;background:rgba(255,255,255,.04)}
.gxgrades b,.gxplay em{font-weight:900;font-style:normal;background:linear-gradient(180deg,#fff,var(--g,#9aa));-webkit-background-clip:text;background-clip:text;color:transparent}
.gr-SS{--g:#ffd34d}.gr-S{--g:#ffa63d}.gr-A{--g:#7ce06b}.gr-B{--g:#4fa8ff}.gr-C{--g:#c26bff}.gr-D{--g:#ff5a5a}
.gxsec{margin-top:16px}.gxsec h4{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted,#9398bd);margin:0 0 8px}
.gxplay{display:flex;align-items:center;gap:10px;padding:6px;border-radius:12px;background:rgba(255,255,255,.04);color:#fff;text-decoration:none;margin-top:6px;animation:mpop .45s backwards;transition:background .2s}
.gxplay:hover{background:rgba(255,255,255,.08)}
.gxplay img{width:84px;height:46px;border-radius:8px;object-fit:cover;flex:none}
.gxplay em{font-size:1.1rem;width:26px;text-align:center;flex:none}
.gxplay div{min-width:0;flex:1;display:flex;flex-direction:column}.gxplay b{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gxplay span{font-size:.7rem;color:#9398bd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gxplay strong{font-size:.85rem;color:var(--gc);flex:none}
.gxlocker{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.fnt{position:relative;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 35%,var(--rc),var(--rc2) 85%);animation:mpop .5s backwards;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--rc) 70%,#fff 10%)}
.fnbg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.9}
.fnt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.fnl{position:absolute;left:0;right:0;bottom:0;padding:18px 8px 7px;background:linear-gradient(transparent,rgba(0,0,0,.85));display:flex;flex-direction:column}
.fnl b{font-size:.82rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.fnl span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--rc)}
.gxagent{display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:linear-gradient(90deg,color-mix(in srgb,var(--gc) 25%,transparent),rgba(255,255,255,.03))}
.gxagent>img{width:52px;height:52px;border-radius:12px;background:rgba(0,0,0,.3)}
.gxagent div{display:flex;flex-direction:column}.gxagent b{font-size:1rem;text-transform:uppercase;letter-spacing:.04em}.gxagent span{display:flex;align-items:center;gap:6px;font-size:.74rem;color:#9398bd}.gxagent span img{width:14px;height:14px}
.gxcardtall{display:block;width:140px;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.5)}
.gxskin{display:flex;gap:10px;align-items:center}.gxskin>img{width:84px;height:84px;object-fit:contain}
.gxsk{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;border-radius:12px;background:rgba(255,255,255,.04);color:#fff;text-decoration:none;font-size:.72rem}.gxsk img{width:96px;image-rendering:pixelated}
.gxvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gxfx{opacity:calc(.3 + var(--dim,.45) * .78)}
.bgblur .gxbg{filter:blur(6px) brightness(.9);transform:scale(1.08)}
.gx.ol-solid::after{box-shadow:inset 0 0 0 2px var(--gc)}.gx.ol-none::after{display:none}
.gx.ol-gradient::after{padding:2px;box-shadow:none;background:linear-gradient(135deg,var(--gc),transparent 35%,transparent 65%,var(--gc));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.gx.ol-none:hover,.gx.ol-solid:hover{box-shadow:0 14px 40px rgba(0,0,0,.35)}
.ol-none .gxav{box-shadow:0 0 0 3px #0c0e18}.ol-solid .gxav{box-shadow:0 0 0 3px #0c0e18,0 0 0 5px var(--gc)}
.gx.lay-tall .gxban{height:200px}.gx.lay-tall .gxart{height:120%;bottom:-12%}
.gx.lay-compact .gxban{position:absolute;inset:0;height:auto;border-radius:inherit;z-index:0}
.gx.lay-compact .gxfx{background:linear-gradient(90deg,rgba(9,10,18,.92),rgba(9,10,18,.7))}
.gx.lay-compact .gxart,.gx.lay-compact .gxtag,.gx.lay-compact .gxfx::before,.gx.lay-compact .gxfx::after{display:none}
.gx.lay-compact>:not(.gxban){position:relative;z-index:1}.gx.lay-compact .gxhead{margin-top:0;padding-top:14px;align-items:center}
.gx.noanim,.gx.noanim *{animation:none!important;transition:none!important}.gx.noanim:hover .gxbg,.gx.noanim:hover .gxart{transform:none}
.notag .gxtag,.noav .gxav{display:none}
.gxav{position:relative}.gxav:has(.gxframe){overflow:visible;background:none}.gxav:has(.gxframe)>img:first-child{border-radius:inherit}
.gxframe{position:absolute;left:-11%;top:-11%;width:122%!important;height:122%!important;pointer-events:none}
.gxrm{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:10px;background:rgba(255,255,255,.04);border-bottom:2px solid #6b7280;animation:mpop .45s backwards}
.gxrm.w{border-color:#34d399;background:linear-gradient(0deg,rgba(52,211,153,.14),transparent)}.gxrm.l{border-color:#ff4655;background:linear-gradient(0deg,rgba(255,70,85,.14),transparent)}
.gxrm img{width:30px;height:30px;border-radius:8px}.gxrm b{font-size:.7rem;font-variant-numeric:tabular-nums}
.gxmatch{position:relative;display:flex;align-items:center;gap:10px;padding:6px;margin-top:6px;border-radius:12px;background:rgba(255,255,255,.04);border-left:3px solid #6b7280;overflow:hidden;animation:mpop .45s backwards}
.gxmatch.w{border-color:#34d399}.gxmatch.l{border-color:#ff4655}
.gxmap{width:84px;height:44px;border-radius:8px;object-fit:cover;flex:none}.gxag{width:34px;height:34px;border-radius:8px;flex:none}
.gxmatch div{flex:1;min-width:0;display:flex;flex-direction:column}.gxmatch b{font-size:.84rem}.gxmatch span{font-size:.7rem;color:#9398bd}
.gxmatch strong{font-size:.86rem;font-variant-numeric:tabular-nums;flex:none}.gxmatch em{font-style:normal;font-size:.68rem;color:#9398bd;flex:none;width:52px;text-align:right}
.gxstatsimg{display:block;width:100%;border-radius:12px}
.csi .csp{position:absolute;top:4px;right:4px;font-style:normal;font-size:.6rem;font-weight:800;padding:1px 5px;border-radius:6px;background:rgba(0,0,0,.6);color:#7ce06b}
.gxgi{width:14px;height:14px;border-radius:3px;object-fit:contain;flex:none}.gxgi.big{width:46%;height:46%;border-radius:8px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}.gxav>.gxgi.big{width:46%!important;height:46%!important;object-fit:contain}
.gxchip.live{--cc:#34d399;gap:5px}.gxchip.live b{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399;animation:lpulse 1.4s ease-in-out infinite}
.gx.islive .gxav{box-shadow:0 0 0 3px #0c0e18,0 0 0 5px #34d399,0 0 22px rgba(52,211,153,.55)}
.gx{animation:gxin .7s cubic-bezier(.2,.8,.2,1) backwards}@keyframes gxin{from{opacity:0;transform:translateY(18px) scale(.97)}}
.gx .gxban::before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.16) 50%,transparent 62%);transform:translateX(-130%);animation:gxshine 7s ease-in-out 1.2s infinite}@keyframes gxshine{0%,70%,100%{transform:translateX(-130%)}85%{transform:translateX(130%)}}
.gx.tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .18s ease-out,box-shadow .25s}.gx.tilt:hover{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-3px)}
.gx.tilt .gxart{translate:var(--px,0px) 0}.gx.tilt .gxbg{translate:calc(var(--px,0px) * -.4) 0}
.gx.tilt::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:4;opacity:0;transition:opacity .3s;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.12),transparent 45%)}.gx.tilt:hover::before{opacity:1}
.gx:active{scale:.985}
.gxcopy{border:0;background:rgba(255,255,255,.08);color:#cfd3ea;width:26px;height:26px;border-radius:8px;cursor:pointer;font-size:.75rem;flex:none}.gxcopy:hover{background:rgba(255,255,255,.16)}
.gxupd{margin:16px 2px 0;font-size:.72rem;color:#9398bd;display:flex;gap:6px;align-items:center}
.gx.noanim .gxban::before,.gx.noanim::before{display:none}
.gx-roblox .gxbg{background-image:radial-gradient(circle at 75% 40%,color-mix(in srgb,var(--gc) 55%,transparent),transparent 60%),repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 2px,transparent 2px 16px),linear-gradient(135deg,var(--gc2),#05080f)}.gx-roblox .gxart{height:150%;bottom:-48%;max-width:48%}.gx-steam .gxbg{background-image:linear-gradient(135deg,#1b2838,var(--gc2) 70%)}.gx-steam:not(.hasban) .gxfx::before{content:'';position:absolute;right:10%;top:20px;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle,rgba(102,192,244,.35),transparent 70%)}.gxit.rb{flex:0 0 calc((100% - 30px)/6);aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.04);border:0}.gxit.rb img{width:86%;height:86%}.gxit.sg{flex:0 0 calc((100% - 12px)/3);aspect-ratio:460/215;border-radius:8px;overflow:hidden;border:0;background:#0b0f16}.gxit.sg img{width:100%;height:100%;object-fit:cover;filter:none}.gx .slvl{font-size:.7rem}
@media(max-width:420px){.gxban{height:108px}.gxban.gxl{height:160px}.gxav{width:56px;height:56px}.gxstats b{font-size:.92rem}}
.lk.lk-r{border-radius:var(--lk-r)!important}.lk.lk-r>*:first-child{border-top-left-radius:var(--lk-r);border-top-right-radius:var(--lk-r)}
.lk.lk-bg{background:rgba(12,13,20,var(--lk-bg))!important}.lk.lk-tint{background:color-mix(in srgb,var(--lk-t) calc(var(--lk-bg,.55) * 40%),rgba(12,13,20,var(--lk-bg,.55)))!important}.lk.lk-blur{backdrop-filter:blur(var(--lk-blur));-webkit-backdrop-filter:blur(var(--lk-blur))}.lk.lk-pad{padding:var(--lk-pad)!important}
.lkb-none{border-color:transparent!important;box-shadow:none!important}.lkb-subtle{border:1px solid rgba(255,255,255,.08)!important}.lkb-accent{border:1px solid color-mix(in srgb,var(--lk-t,var(--accent)) 70%,transparent)!important}.lkb-glow{border:1px solid color-mix(in srgb,var(--lk-t,var(--accent)) 60%,transparent)!important;box-shadow:0 0 22px color-mix(in srgb,var(--lk-t,var(--accent)) 35%,transparent)!important}
.lkb-gradient{border:1px solid transparent!important;background-clip:padding-box!important;position:relative}.lkb-gradient::after{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--lk-t,var(--accent)),transparent 45%,var(--lk-t,var(--accent)));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none}
.lka-left{text-align:left!important}.lka-center{text-align:center!important}.lka-center .sohead,.lka-center .gxhead,.lka-center .mhead{justify-content:center}
.lk{transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s}.lkh-lift:hover{transform:translateY(-4px)}.lkh-glow:hover{box-shadow:0 0 30px color-mix(in srgb,var(--lk-t,var(--accent)) 40%,transparent)!important}.lkh-none:hover{transform:none!important}.lkh-tilt{transition:transform .15s ease-out}
.sofollow{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 0;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--sc) 18%,rgba(255,255,255,.04));border:1px solid color-mix(in srgb,var(--sc) 40%,transparent);color:var(--text);text-decoration:none;font-weight:700;font-size:.88rem;transition:background .2s,transform .2s}.sofollow:hover{background:color-mix(in srgb,var(--sc) 30%,rgba(255,255,255,.04));transform:translateY(-1px)}
.b-hw,.b-gs,.b-clips,.b-cal{padding:14px 16px}.hwt{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.95rem}.hwt i{color:var(--accent)}
.hwg{display:grid;gap:6px}.hwr{display:grid;grid-template-columns:30px auto 1fr;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05);animation:mpop .45s backwards}.hwi{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-size:.85rem}.hwk{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}.hwv{text-align:right;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gsg{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.gsr{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05)}.gsr .hwv{text-align:left;font-variant-numeric:tabular-nums}.gsr.code{grid-column:1/-1}.gsr.code .hwv{font:600 .78rem ui-monospace,monospace;white-space:normal;word-break:break-all}.gscp{align-self:flex-start;margin-top:6px;border:0;border-radius:8px;padding:5px 10px;font:inherit;font-size:.75rem;font-weight:700;cursor:pointer;background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--text)}
.clg{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.clp{display:flex;flex-direction:column;gap:5px;color:var(--text);text-decoration:none;animation:mpop .45s backwards}.clth{position:relative;aspect-ratio:16/9;border-radius:12px;background:#11131f center/cover;overflow:hidden;border:1px solid rgba(255,255,255,.06)}.clpl{position:absolute;inset:0;display:grid;place-items:center;font-size:1.1rem;color:#fff;background:rgba(0,0,0,.25);transition:background .2s}.clp:hover .clpl{background:rgba(0,0,0,.45)}.clsrc{position:absolute;left:6px;bottom:6px;font-size:.66rem;font-weight:700;padding:3px 7px;border-radius:7px;background:rgba(0,0,0,.6)}.clt{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calr{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:12px;color:var(--text);text-decoration:none;transition:background .2s}.calr:hover{background:rgba(255,255,255,.04)}.calr.past{opacity:.45}.calr.next{background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.cald{width:44px;flex:none;display:flex;flex-direction:column;align-items:center;padding:5px 0;border-radius:10px;background:rgba(255,255,255,.05)}.cald b{font-size:1.1rem;line-height:1}.cald small{font-size:.62rem;text-transform:uppercase;color:var(--muted)}.calw{flex:1;min-width:0;display:flex;flex-direction:column}.calw b{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calw small{color:var(--muted);font-size:.75rem}.calin{font-style:normal;font-size:.72rem;font-weight:800;padding:4px 8px;border-radius:99px;background:var(--accent);color:#fff}
.b-poll{padding:14px 16px}.b-poll h3{font-size:1rem;margin-bottom:10px;display:flex;gap:8px;align-items:center}.pollo{display:grid;gap:8px}.pollb{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s,transform .15s}.pollb:hover{border-color:var(--accent);transform:translateY(-1px)}.pollb.on{border-color:var(--accent)}.pollb .pfill{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--accent) 28%,transparent);transition:width .7s cubic-bezier(.2,.8,.2,1)}.pollb .plab,.pollb b{position:relative}.pollb b{font-variant-numeric:tabular-nums}
.b-gallery,.b-wallets{padding:14px}
.b-gallery h3,.b-wallets h3{font-size:.95rem;margin:0 0 10px;opacity:.85}
.galg{display:grid;grid-template-columns:repeat(var(--gc,3),minmax(0,1fr));gap:6px}
.galt{all:unset;cursor:zoom-in;aspect-ratio:1;border-radius:10px;overflow:hidden;display:block;background:rgba(255,255,255,.04)}
.galt img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease,filter .3s}.galt:hover img{transform:scale(1.07);filter:brightness(1.1)}
.galbox{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.88);backdrop-filter:blur(10px);display:grid;place-items:center;animation:galin .25s ease}.galbox.out{opacity:0;transition:opacity .25s}
@keyframes galin{from{opacity:0}}
.galbox>img{max-width:92vw;max-height:80vh;border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.7);animation:galzoom .3s cubic-bezier(.2,.8,.2,1)}@keyframes galzoom{from{transform:scale(.92)}}
.galcap{position:fixed;bottom:56px;left:0;right:0;text-align:center;font-size:.9rem;opacity:.85}.galn{position:fixed;bottom:24px;left:0;right:0;text-align:center;font-size:.75rem;opacity:.55}
.galx,.galp,.galnx{position:fixed;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;font-size:1.05rem;cursor:pointer;display:grid;place-items:center}
.galx{top:18px;right:18px}.galp{left:14px;top:50%;transform:translateY(-50%)}.galnx{right:14px;top:50%;transform:translateY(-50%)}
.b-wallets>div+div{margin-top:8px}
.wrow{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid color-mix(in srgb,var(--wc) 30%,transparent)}
.wic{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;background:var(--wc);box-shadow:0 0 14px color-mix(in srgb,var(--wc) 50%,transparent)}
.wtx{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left}.wtx b{font-size:.82rem}.wtx code{font-size:.72rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wbtn{flex:none;width:32px;height:32px;border-radius:9px;border:0;background:rgba(255,255,255,.07);color:inherit;cursor:pointer}.wbtn:hover{background:var(--wc);color:#fff}
.wqr{display:grid;place-items:center;max-height:0;overflow:hidden;transition:max-height .35s ease}.wqr.on{max-height:240px}.wqr img{width:180px;height:180px;margin:10px;background:#fff;padding:8px;border-radius:12px}
.b-skills{padding:14px 16px;display:grid;gap:10px}.b-skills h3{font-size:1rem}.skl .sklh{display:flex;justify-content:space-between;font-size:.88rem;margin-bottom:5px}.skl b{opacity:.75;font-weight:600}.sklb{height:6px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden}.sklb i{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 45%,#fff));transition:width 1.1s cubic-bezier(.2,.8,.2,1)}.reveal.in .sklb i{width:var(--w)}.b-skills.chips{display:flex;flex-wrap:wrap;gap:8px}.b-skills.chips h3{width:100%}.b-skills.chips .skl{padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.05)}.b-skills.chips .sklh{margin:0}
.b-proj h3{font-size:1rem;margin:0 0 8px 2px}.projg{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.proj{position:relative;display:block;padding:14px;border-radius:16px;color:inherit;text-decoration:none;transition:transform .2s,border-color .2s}a.proj:hover{transform:translateY(-3px);border-color:var(--accent)}.proj b{display:block;padding-right:18px}.proj p{margin:6px 0 0;font-size:.84rem;opacity:.75;line-height:1.45}.ptags{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.ptags span{font-size:.7rem;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 22%,transparent)}.pgo{position:absolute;top:14px;right:14px;font-size:.75rem;opacity:.5}
#bgfx .bgcv{position:absolute;inset:0;width:100%;height:100%;opacity:.85}#bgfx .bgcv.plasma{filter:blur(18px) saturate(1.2);transform:scale(1.15)}#bgfx .bgcv.dither{image-rendering:pixelated;opacity:.55}
.b-faq{padding:14px 16px}.b-faq h3{font-size:1rem;margin-bottom:6px}.b-faq details{border-top:1px solid var(--line);padding:10px 0}.b-faq details:first-of-type{border-top:0}.b-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:10px}.b-faq summary::after{content:'+';color:var(--accent);font-size:1.2rem;line-height:1}.b-faq details[open] summary::after{content:'–'}.b-faq p{color:var(--muted);font-size:.9rem;margin-top:6px;line-height:1.45}
.ptrow{display:flex;align-items:center;gap:6px;min-width:0}.ptrow .ptitle{flex:1;min-width:0}
.ptime{white-space:nowrap}@media (max-width:480px){.player.pl-vinyl input[type=range],.player.pl-glass input[type=range],.player.pl-vinyl .viz,.player.pl-glass .viz{display:none}}
.peq{display:none;gap:2px;align-items:flex-end;height:12px;flex:none}.peq i{width:3px;height:100%;border-radius:2px;background:var(--accent);transform-origin:bottom;animation:peq .9s ease-in-out infinite}.peq i:nth-child(2){animation-delay:-.3s}.peq i:nth-child(3){animation-delay:-.6s}
.player.playing .peq{display:inline-flex}@keyframes peq{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
.player.pl-card{flex-wrap:wrap;justify-content:center;padding:16px;gap:10px 14px}.player.pl-card>*{order:3}.player.pl-card .pcover{order:0;flex:0 0 100%;height:auto;background:none;display:grid;place-items:center}
.player.pl-card .pcover img{width:min(210px,70%);height:auto;aspect-ratio:1;border-radius:16px;box-shadow:0 14px 40px rgba(0,0,0,.5),0 0 30px color-mix(in srgb,var(--accent) 35%,transparent);transition:transform .4s}.player.pl-card.playing .pcover img{transform:scale(1.03)}
.player.pl-card .pcover i{display:grid;place-items:center;width:120px;height:120px;border-radius:18px;background:linear-gradient(135deg,var(--accent),rgba(0,0,0,.6));color:#fff;font-size:2.6rem;box-shadow:0 14px 40px rgba(0,0,0,.5),0 0 30px color-mix(in srgb,var(--accent) 35%,transparent)}.player.pl-card .pinfo{order:1;flex:0 0 100%;text-align:center}.player.pl-card .ptrow{justify-content:center}.player.pl-card .ptitle{flex:0 1 auto;font-size:.95rem;font-weight:700}.player.pl-card button{font-size:1.15rem;width:30px}
.player.pl-vinyl .pcover{width:66px;height:66px;border-radius:50%;position:relative;background:repeating-radial-gradient(circle,#111 0 2px,#1c1c22 2px 4px);box-shadow:0 6px 18px rgba(0,0,0,.5),inset 0 0 0 2px rgba(255,255,255,.06)}
.player.pl-vinyl .pcover img,.player.pl-vinyl .pcover i{width:42%;height:42%;border-radius:50%;object-fit:cover;font-size:.7rem;display:grid;place-items:center;background:var(--accent);color:#000}
.player.pl-vinyl .pcover::after{content:'';position:absolute;width:6px;height:6px;border-radius:50%;background:#0b0b0f;left:50%;top:50%;transform:translate(-50%,-50%)}
.player.pl-vinyl .pcover::before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 30deg,transparent 0 40deg,rgba(255,255,255,.12) 55deg,transparent 70deg 220deg,rgba(255,255,255,.08) 235deg,transparent 250deg)}
.player.pl-vinyl.playing .pcover{animation:vspin 3.2s linear infinite}@keyframes vspin{to{transform:rotate(360deg)}}
.player.pl-pill{border-radius:999px;padding:6px 14px 6px 6px}.player.pl-pill .pcover{border-radius:50%;width:34px;height:34px}.player.pl-pill .bar,.player.pl-pill .ptime,.player.pl-pill input[type=range],.player.pl-pill .viz{display:none}
body.locked .player.pl-island{display:none}.player.pl-island{position:fixed;top:10px;left:50%;transform:translateX(-50%);z-index:45;background:#000;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:6px 14px 6px 6px;width:auto;max-width:min(360px,calc(100vw - 24px));box-shadow:0 10px 30px rgba(0,0,0,.6);cursor:pointer;transition:border-radius .35s,padding .35s,max-width .35s}
.player.pl-island .pcover{border-radius:50%;width:30px;height:30px}.player.pl-island .bar,.player.pl-island .ptime,.player.pl-island input[type=range],.player.pl-island .viz,.player.pl-island button:not([aria-label=play]){display:none}.player.pl-island .pinfo{max-width:180px}
.player.pl-island.open{border-radius:26px;padding:12px 16px;width:min(400px,calc(100vw - 24px));max-width:none;flex-wrap:wrap;justify-content:center;gap:8px 14px}.player.pl-island.open .bar,.player.pl-island.open .ptime{display:block}.player.pl-island.open button{display:inline-block!important;order:2;font-size:1.05rem}.player.pl-island.open .pcover{order:0;width:44px;height:44px;border-radius:12px}.player.pl-island.open .pinfo{order:1;flex:1 1 calc(100% - 64px);max-width:none}.player.pl-island.open input[type=range]{display:block;order:3;flex:1 1 100%;width:auto}
.player.pl-glass{position:relative;overflow:hidden;background:rgba(255,255,255,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:rgba(255,255,255,.16);padding:14px}
.player.pl-glass::before{content:'';position:absolute;inset:-30px;background:var(--cov,none) center/cover;filter:blur(26px) saturate(1.5);opacity:.5;z-index:-1}.player.pl-glass .pcover{width:52px;height:52px;border-radius:12px;box-shadow:0 8px 20px rgba(0,0,0,.4)}
.coverbg{position:fixed;inset:-60px;z-index:0;background:center/cover no-repeat;filter:blur(48px) saturate(1.5);opacity:0;transition:opacity 1.2s,background-image .8s;pointer-events:none}body.mplaying .coverbg.has{opacity:.42}
@property --lv{syntax:'<number>';inherits:true;initial-value:0}
body.beat-sim{animation:bsim .47s ease-in-out infinite alternate}@keyframes bsim{from{--lv:.05}to{--lv:.5}}
body.beat-glow .card{box-shadow:0 0 calc(12px + var(--lv,0) * 80px) color-mix(in srgb,var(--accent) calc(25% + var(--lv,0) * 60%),transparent)!important}
body.beat-pulse .card{scale:calc(1 + var(--lv,0) * .03)}
#enter.gated{cursor:default}#enter.gated span{animation:none;letter-spacing:normal}.agate{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:340px;padding:24px;border-radius:20px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.14);text-align:center;letter-spacing:normal;font-size:1rem}
.agate>i{font-size:2rem;color:#facc15}.agate b{font-size:1.2rem}.agate p{color:#d4d4d8;font-size:.9rem;line-height:1.4}.agbtns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:4px}
.agbtns button{border:0;border-radius:12px;padding:10px 16px;font:700 .92rem inherit;cursor:pointer}.agyes{background:var(--accent);color:#000}.agno{background:rgba(255,255,255,.1);color:#fff}
.plist{display:none;flex-direction:column;gap:4px;margin-top:8px;padding:8px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);max-height:220px;overflow:auto}
.plist.open{display:flex}
.pli{display:flex;gap:10px;align-items:center;background:none;border:0;color:var(--text);font:inherit;font-size:.85rem;padding:8px 10px;border-radius:9px;cursor:pointer;text-align:left}
.pli:hover,.pli.on{background:rgba(255,255,255,.07)}
.pli.on{color:var(--accent);font-weight:600}
.pli i{width:16px;text-align:center;color:var(--muted)}
.taphint{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:45;background:rgba(14,14,20,.92);color:var(--text);border:1px solid var(--line);border-radius:999px;padding:10px 18px;font:inherit;font-size:.9rem;font-weight:600;box-shadow:0 0 24px color-mix(in srgb,var(--accent) 35%,transparent);animation:pulse 2s ease-in-out infinite;cursor:pointer}
.sharebtn{background:none;border:0;color:inherit;font:inherit;cursor:pointer;margin-left:12px;opacity:.75}
.scrollhint{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:var(--muted);font-size:1.2rem;animation:bob 2s ease-in-out infinite;display:none;text-decoration:none}
@keyframes bob{50%{transform:translate(-50%,6px)}}
.blocks{width:min(var(--width),calc(100vw - 32px));margin:0 auto;display:flex;flex-direction:column;gap:14px;padding-bottom:40px}
.blocks:empty{display:none}.blocks{gap:var(--bgap,14px)}.blocks.bgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.blocks.bgrid>*{grid-column:1/-1;min-width:0}.blocks.bgrid>.bw-half{grid-column:auto}@media(max-width:360px){.blocks.bgrid>.bw-half{grid-column:1/-1}}.blocks.bwide{width:min(var(--bwidth),calc(100vw - 32px))}
.glass{background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:1px solid var(--line);border-radius:calc(var(--radius) * .75)}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
.b-heading{font-size:1.4rem;font-weight:800;text-align:center;margin-top:10px;text-shadow:0 0 14px color-mix(in srgb,var(--accent) 50%,transparent)}
.b-text{padding:16px 18px;white-space:pre-wrap;line-height:1.55;font-weight:300}
.b-image{overflow:hidden;display:block;text-decoration:none}
.b-image img{width:100%;display:block}
.b-image figcaption{padding:10px 14px;font-size:.85rem;color:var(--muted)}
.b-card{display:flex;gap:14px;align-items:center;padding:12px;text-decoration:none;transition:transform .2s,border-color .2s}
a.b-card:hover{transform:translateY(-2px);border-color:var(--accent)}
.b-card img{width:72px;height:72px;border-radius:12px;object-fit:cover;flex:none}
.b-card .ct{font-weight:700}
.b-card .cd{color:var(--muted);font-size:.85rem;margin-top:2px}
.b-card .ca{margin-left:auto;color:var(--muted)}
.b-button{display:flex;justify-content:center;align-items:center;gap:10px;padding:14px;font-weight:600;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
.b-button:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 0 20px color-mix(in srgb,var(--accent) 30%,transparent)}
.b-embed{overflow:hidden}
.b-embed iframe{width:100%;border:0;display:block}
.b-yt iframe{aspect-ratio:16/9;height:auto}
.b-discord{display:flex;align-items:center;gap:14px;padding:14px}
.b-discord img,.b-discord .gi{width:54px;height:54px;border-radius:16px;flex:none;background:#5865f2;display:grid;place-items:center;font-size:1.4rem}
.b-discord .gn{font-weight:700}
.b-discord .gc{color:var(--muted);font-size:.82rem}
.b-discord .gc b{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 4px 0 6px}
.b-discord a{margin-left:auto;background:#23a55a;color:#fff;text-decoration:none;padding:9px 16px;border-radius:10px;font-weight:600;font-size:.88rem}
.b-divider{border:0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);margin:6px 0}
#overlay{position:fixed;inset:0;z-index:1;pointer-events:none}
#overlay.vignette{background:radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.78))}
#overlay.scanlines{background:repeating-linear-gradient(0deg,rgba(0,0,0,.28) 0 1px,transparent 1px 3px)}
#overlay.grain{inset:-20%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.13;animation:grain .8s steps(4) infinite}
#overlay.crt{background:repeating-linear-gradient(0deg,rgba(0,0,0,.3) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.72));animation:flick .12s infinite}
@keyframes grain{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,3%)}}
@keyframes flick{50%{opacity:.9}}
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
.card.cfx-rainbow::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--ang),#ff6b6b,#feca57,#48dbfb,#ff9ff3,#ff6b6b);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spinang 4s linear infinite;pointer-events:none;z-index:3}
@keyframes spinang{to{--ang:360deg}}
.card.cfx-pulse.show{animation:cpulse 3s ease-in-out infinite}
@keyframes cpulse{50%{box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 70px color-mix(in srgb,var(--accent) 55%,transparent)}}
.card.cfx-float.show{animation:cfloat 6s ease-in-out infinite}
@keyframes cfloat{50%{transform:translateY(-10px)}}
.avatar.sh-rounded{border-radius:24%}
.avatar.sh-square{border-radius:10px}
.avatar{transition:transform .08s linear,box-shadow .08s linear}
.fx-typewriter{text-shadow:0 0 12px var(--accent)}
.fx-typewriter::after{content:'_';color:var(--accent);animation:blink 1s steps(1) infinite;margin-left:2px}
.links.lh-glow a:hover{transform:none;filter:drop-shadow(0 0 12px var(--accent)) drop-shadow(0 0 4px var(--accent))}
.links.lh-shake a:hover{transform:none;animation:shake .45s}
.links.lh-spin a{transition:transform .6s,color .2s,filter .2s}
.links.lh-spin a:hover{transform:rotate(360deg) scale(1.1)}
.links.lh-none a:hover{transform:none;filter:none}
@keyframes shake{20%{transform:rotate(-12deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(4deg)}}
.viz{width:64px;height:24px;flex:none}
.lfm .now{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d51007;margin-right:5px;animation:pulse 1.4s infinite}
.links.iglow a{filter:drop-shadow(0 0 6px var(--accent))}
.badges.noglow i{filter:none!important}
.card.left{text-align:left}
.card.left .avatar-wrap{margin-left:0}
.card.left .badges,.card.left .tags,.card.left .meta,.card.left .likerow,.card.left .links:not(.buttons){justify-content:flex-start}
/* nameplates · nameplate widget · profile effect */
.npwrap{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:10px 20px;margin:2px auto 10px;border-radius:14px;overflow:hidden;isolation:isolate;width:min(100%,340px);min-height:58px;box-sizing:border-box;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.25)}
.npwrap>.nrow{position:relative;z-index:1;max-width:100%}.lhead .npwrap{width:100%;margin:0 0 6px}
.avatar-wrap.hasdeco{margin-bottom:calc(12px + var(--dpad,16px))!important}.card:not(.has-banner):not(.lay-banner):not(.lay-compact) .avatar-wrap.hasdeco{margin-top:calc(var(--dpad,16px) * .6)!important}.lhead .avatar-wrap.hasdeco{margin:0 calc(var(--dpad,16px) * .8) 0 0!important}
.left .npwrap,.card[style*="left"] .npwrap{align-items:flex-start;margin-left:0}.card.left .avatar-wrap.hasdeco{margin-left:var(--dpad,16px)!important}
.npwrap>.name,.npwrap>.uname{position:relative;z-index:1}.npwrap>.uname{margin:0}
.npvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:0;pointer-events:none}
.npart{opacity:1}.npwrap:has(.npart){background:none!important;animation:none!important}.npwrap:has(.npart)::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 62% 85% at 50% 50%,rgba(0,0,0,.5),transparent 78%)}.left .npwrap:has(.npart)::before,.card[style*="left"] .npwrap:has(.npart)::before{background:linear-gradient(90deg,rgba(0,0,0,.55),transparent 75%)}
.np-discord{background:linear-gradient(90deg,color-mix(in srgb,var(--npc,#5865f2) 18%,transparent),color-mix(in srgb,var(--npc,#5865f2) 45%,transparent))}
.np-aurora{background:linear-gradient(110deg,#0ea5e955,#a855f755,#22c55e44,#0ea5e955);background-size:300% 100%;animation:npmove 9s linear infinite}
.np-sakura{background:linear-gradient(110deg,#fbcfe855,#f472b644,#fce7f355,#fbcfe855);background-size:300% 100%;animation:npmove 12s linear infinite}
.np-cyber{background:repeating-linear-gradient(90deg,#22d3ee22 0 2px,transparent 2px 14px),linear-gradient(90deg,#0f172a99,#d946ef55);animation:npscan 3s linear infinite}
.np-flame{background:linear-gradient(0deg,#ef444466,#f9731644 45%,transparent),linear-gradient(90deg,#7f1d1d55,#f9731655);background-size:100% 200%,100% 100%;animation:npflame 1.6s ease-in-out infinite alternate}
.np-ocean{background:linear-gradient(110deg,#0c4a6e88,#0ea5e955,#14b8a655,#0c4a6e88);background-size:300% 100%;animation:npmove 10s linear infinite}
.np-galaxy{background:radial-gradient(1px 1px at 20% 30%,#fff,transparent),radial-gradient(1px 1px at 70% 60%,#fff,transparent),radial-gradient(1.5px 1.5px at 85% 25%,#fff,transparent),linear-gradient(110deg,#1e1b4bcc,#7e22ce88,#db277766,#1e1b4bcc);background-size:auto,auto,auto,300% 100%;animation:npmove 14s linear infinite}
.np-sunset{background:linear-gradient(90deg,#f9731655,#ec489955,#8b5cf655)}
.np-matrix{background:repeating-linear-gradient(0deg,#22c55e22 0 1px,transparent 1px 6px),linear-gradient(90deg,#052e1699,#16a34a44);animation:npscan 2s linear infinite}
.np-void{background:radial-gradient(circle at 85% 50%,#7c3aed66,transparent 60%),linear-gradient(90deg,#000c,#09090bcc);box-shadow:inset 0 0 0 1px #7c3aed55}
.np-gold{background:linear-gradient(110deg,#78350f88,#facc1555,#fde68a44,#78350f88);background-size:300% 100%;animation:npmove 6s linear infinite;box-shadow:inset 0 0 0 1px #facc1544}
.np-mint{background:linear-gradient(90deg,#064e3b66,#34d39944,#a7f3d033)}
.np-storm{background:linear-gradient(90deg,#1e293bcc,#475569aa);animation:npstorm 5s infinite}
@keyframes npmove{to{background-position:300% 0}}@keyframes npscan{to{background-position:28px 0,0 0}}@keyframes npflame{to{background-position:0 40%,0 0}}
@keyframes npstorm{0%,92%,100%{filter:none}93%,96%{filter:brightness(2.2)}}
.npw{position:relative;display:flex;align-items:center;gap:12px;padding:10px 14px;margin-top:12px;border-radius:12px;overflow:hidden;isolation:isolate;text-align:left;border:1px solid rgba(255,255,255,.08)}
.npw>*:not(.npvid){position:relative;z-index:1}
.npw-avw{position:relative;width:40px;height:40px;flex:none}.npw-av{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#18181b}
.npw-deco{position:absolute;left:-8px;top:-8px;width:56px;height:56px;display:none;pointer-events:none}
.npw-dot{position:absolute;right:-2px;bottom:-2px;width:14px;height:14px;border-radius:50%;border:3px solid #111214;background:#80848e;z-index:2}
.npw-name{font-weight:700;font-size:.98rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.npw-sub{font-size:.78rem;color:rgba(255,255,255,.75);text-shadow:0 1px 3px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.npw-txt{min-width:0}
.card>.pfx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;border-radius:inherit}
.deco.bdeco{left:-14%;top:-14%;width:128%;height:128%}
.stmav{background:linear-gradient(135deg,#1b2838,#2a475e);color:#c7d5e0}.stm{background:linear-gradient(160deg,rgba(23,26,33,.85),rgba(27,40,56,.85))!important}.slvl{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:50%;border:2px solid #c02942;font-size:.72rem;font-weight:800}
.stg img{width:auto;height:34px;border-radius:6px;aspect-ratio:460/215}
.ms-games{display:flex;flex-direction:column;gap:8px;margin-top:12px}.ms-games a{display:flex;gap:12px;align-items:center;padding:8px;border-radius:12px;background:rgba(255,255,255,.04);color:#fff;text-decoration:none;animation:mpop .4s backwards}.ms-games img{width:120px;border-radius:8px;flex:none}.ms-games b{display:block;font-size:.92rem}.ms-games span{font-size:.76rem;color:#9d9dac}
/* smart modules: Roblox + Discord cards and their "view profile" sheet */
.mod{position:relative;padding:14px;cursor:pointer;overflow:hidden;text-align:left;transition:transform .25s,box-shadow .25s}.mod:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,.35)}
.mhead{display:flex;align-items:center;gap:12px}.mtxt{min-width:0;flex:1}.mnm{font-weight:800;font-size:1.02rem;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.msub{font-size:.8rem;color:var(--muted);display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mav{width:52px;height:52px;border-radius:14px;flex:none;display:grid;place-items:center;overflow:hidden;font-size:1.3rem}.mav img{width:100%;height:100%;object-fit:cover}.rbxav{background:#393b3d}.mver{color:#00a2ff;font-size:.8rem}
.mchip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.07);font-size:.72rem}.mchip b{width:7px;height:7px;border-radius:50%}
.mview{margin-left:auto;flex:none;font:inherit;font-size:.78rem;font-weight:700;padding:7px 13px;border-radius:999px;border:0;background:#fff;color:#111;cursor:pointer;text-decoration:none;transition:transform .15s}.mview:hover{transform:scale(1.05)}.mview.wide{display:block;text-align:center;margin:12px 0 0}
.mstats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.mstats>div{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:12px;background:rgba(0,0,0,.25)}.mstats b{font-size:1rem}.mstats span{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.mstrip{display:flex;gap:6px;margin-top:10px;overflow:hidden}.mstrip:empty{display:none}.mstrip img{width:30px;height:30px;border-radius:50%;object-fit:cover;background:rgba(0,0,0,.3);animation:mpop .4s backwards}
.mstrip img:nth-child(1){animation-delay:0.06s}.mstrip img:nth-child(2){animation-delay:0.12s}.mstrip img:nth-child(3){animation-delay:0.18s}.mstrip img:nth-child(4){animation-delay:0.24s}.mstrip img:nth-child(5){animation-delay:0.30s}.mstrip img:nth-child(6){animation-delay:0.36s}.mstrip img:nth-child(7){animation-delay:0.42s}
@keyframes mpop{from{opacity:0;transform:translateY(6px) scale(.96)}}
.dmod{padding:0}.dban{height:72px;background:linear-gradient(120deg,#5865f2,#7983f5);background-size:cover;background-position:center}.dmod .mhead{padding:0 14px;margin-top:-30px;align-items:flex-end}.dmod .mview{margin-bottom:4px}
.dav{width:64px;height:64px;border-radius:50%;overflow:visible;background:none}.davw{position:relative;width:64px;height:64px}.davw>img:first-child{width:64px;height:64px;border-radius:50%;border:5px solid #111214;object-fit:cover;background:#111214}
.ddeco{position:absolute;left:-6px;top:-6px;width:76px;height:76px;pointer-events:none}.ddot{position:absolute;right:0;bottom:2px;width:16px;height:16px;border-radius:50%;border:4px solid #111214}
.dbody{padding:8px 14px 14px}.dbdg{display:inline-flex;gap:3px;padding:2px 5px;border-radius:7px;background:rgba(0,0,0,.3)}.dbdg:empty{display:none}.dbdg img{width:18px;height:18px}
.dbot{font-size:.62rem;font-weight:800;padding:2px 5px;border-radius:4px;background:#5865f2;color:#fff}.dtag2{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:700;padding:1px 6px;border-radius:6px;background:rgba(255,255,255,.1)}.dtag2 img{width:13px;height:13px}
.dabout{margin-top:9px;padding:9px 11px;border-radius:10px;background:rgba(0,0,0,.28);font-size:.82rem;display:flex;flex-direction:column;gap:4px}.dline{font-size:.82rem}.dbio{white-space:pre-line;color:var(--muted)}
.msheet{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,0);backdrop-filter:blur(0);transition:background .3s,backdrop-filter .3s}
.msheet.on{background:rgba(0,0,0,.6);backdrop-filter:blur(8px)}
.msh-card{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:22px;background:#0f0f14;border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 90px rgba(0,0,0,.7);padding:14px;color:#f4f4f5;text-align:left;transform:translateY(18px) scale(.98);opacity:0;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .25s}.gxs.gx{animation:none}
.msheet.on .msh-card{transform:none;opacity:1}
.msh-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.mback{font:inherit;font-size:.82rem;padding:7px 12px;border-radius:999px;border:0;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.ms-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.mav.big{width:64px;height:64px}.ms-top .mtxt{min-width:120px}.ms-nums{display:flex;gap:14px;margin-left:auto;flex:none;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.05)}.ms-nums>div{display:flex;flex-direction:column;align-items:center}.ms-nums span{font-size:.65rem;color:#9d9dac}
.ms-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;margin-top:12px}.ms-body{border-radius:16px;background:radial-gradient(circle at 50% 40%,#2b2d31,#141518);display:grid;place-items:center;min-height:200px}.ms-body img{width:100%;max-width:240px;animation:mfl 3.5s ease-in-out infinite}
@keyframes mfl{50%{transform:translateY(-8px)}}
.ms-items{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;align-content:start}.ms-items a{border-radius:12px;background:#1d1e22;aspect-ratio:1;display:grid;place-items:center;animation:mpop .4s backwards}.ms-items img{width:85%}
.ms-badges{display:flex;gap:8px;overflow-x:auto;margin-top:12px;padding-bottom:4px}.ms-badges img{width:46px;height:46px;flex:none;animation:mpop .4s backwards}.ms-bio{font-size:.85rem;color:#b4b4c2;white-space:pre-line;margin-top:10px}
.ms-dis{position:relative}.dban.dbig{height:120px;border-radius:14px;width:100%}.ms-dav{margin:-40px 0 6px 14px;width:max-content}.ms-dav .davw{transform:scale(1.3);transform-origin:left bottom}
.ms-sec{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05)}.ms-sec b{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#9d9dac}.ms-sec p{margin:4px 0 0;font-size:.88rem;white-space:pre-line}
@media(max-width:480px){.ms-grid{grid-template-columns:1fr}.ms-nums{margin-left:0}}
/* bio: size, effects and letter animations */
.bio.bsized{font-size:var(--bsz,17px)}
.bfx-glow{text-shadow:0 0 var(--bgl) var(--accent),0 0 calc(var(--bgl) * 2) color-mix(in srgb,var(--accent) 50%,transparent)}
.bfx-gradient,.bfx-gradient .bl{background:linear-gradient(90deg,var(--bg1),var(--bg2),var(--bg1));background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:bgrad 4s linear infinite}
@keyframes bgrad{to{background-position:200% center}}
.bfx-shimmer{background:linear-gradient(110deg,currentColor 35%,#fff 50%,currentColor 65%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:bshim 3s linear infinite}
@keyframes bshim{from{background-position:150% 0}to{background-position:-100% 0}}
.bfx-rainbow{background:linear-gradient(90deg,#ff6b6b,#feca57,#48dbfb,#ff9ff3,#ff6b6b);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:bgrad 5s linear infinite}
.bfx-neon{color:#fff!important;text-shadow:0 0 4px #fff,0 0 calc(var(--bgl) * .8) var(--accent),0 0 calc(var(--bgl) * 2) var(--accent),0 0 calc(var(--bgl) * 3.5) var(--accent)}
.bfx-outline{color:transparent!important;-webkit-text-stroke:1px currentColor;-webkit-text-stroke-color:var(--text)}
.bfx-shadow3d{text-shadow:1px 1px 0 var(--accent),2px 2px 0 color-mix(in srgb,var(--accent) 70%,#000),3px 3px 0 color-mix(in srgb,var(--accent) 45%,#000),4px 4px 8px rgba(0,0,0,.5)}
.bfx-chrome{background:linear-gradient(180deg,#fff 0%,#c7c7d1 45%,#6b6b7b 52%,#e4e4ea 60%,#fff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}
.bio .bl{display:inline-block;white-space:pre;animation-duration:calc(.55s * var(--bsp,1));animation-fill-mode:both;animation-delay:calc(var(--i) * 28ms * var(--bsp,1))}
.bl-fade .bl{animation-name:blf}@keyframes blf{from{opacity:0;filter:blur(4px)}}
.bl-bounce .bl{animation-name:blb;animation-timing-function:cubic-bezier(.16,1,.3,1)}@keyframes blb{from{opacity:0;transform:translateY(-22px) scale(.6)}}
.bl-flip .bl{animation-name:blfl;transform-origin:50% 100%}@keyframes blfl{from{opacity:0;transform:perspective(300px) rotateX(-95deg)}}
.bl-zoom .bl{animation-name:blz}@keyframes blz{from{opacity:0;transform:scale(2.4);filter:blur(6px)}}
.bl-split .bl{animation-name:bls;animation-duration:calc(.9s * var(--bsp,1));animation-timing-function:cubic-bezier(.2,.8,.2,1)}@keyframes bls{from{opacity:0;transform:translate(var(--rx),var(--ry)) rotate(90deg)}}
.bl-karaoke .bl{animation:blk calc(.25s * var(--bsp,1)) both;animation-delay:calc(var(--i) * 70ms * var(--bsp,1))}@keyframes blk{from{color:color-mix(in srgb,var(--text) 35%,transparent);text-shadow:none}to{color:var(--accent);text-shadow:0 0 10px var(--accent)}}
.bio.bneon{animation:bnn 1.2s linear both}@keyframes bnn{0%,18%,22%,25%,53%,57%{opacity:.15}20%,24%,55%,100%{opacity:1}}
.bio.bmarq{overflow:hidden;white-space:nowrap;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.bmq{display:inline-flex;animation:bmq 12s linear infinite}.bmq span{white-space:pre}@keyframes bmq{to{transform:translateX(-50%)}}
.badges [data-bt]{position:relative;cursor:default}
.badges [data-bt]:hover::after,.badges [data-bt].bt-on::after{content:attr(data-bt);position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);background:rgba(10,10,15,.95);color:#fff;font:600 .72rem/1.2 var(--font),system-ui,sans-serif;padding:6px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;z-index:30;border:1px solid rgba(255,255,255,.1);box-shadow:0 6px 20px rgba(0,0,0,.4);animation:btin .15s ease-out}
.badges [data-bt]:hover::before,.badges [data-bt].bt-on::before{content:'';position:absolute;bottom:calc(100% + 4px);left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:rgba(10,10,15,.95);border-bottom:0;z-index:30;pointer-events:none}
@keyframes btin{from{opacity:0;transform:translate(-50%,4px)}}
.bico{display:inline-grid;place-items:center}
.dbadges{display:inline-flex;flex-wrap:wrap;justify-content:center;max-width:100%;box-sizing:border-box;align-items:center;gap:4px;padding:3px 7px;border-radius:9px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.08)}
.badges.noglow .dbadges,.minimal .dbadges{background:none;border:0;padding:0}
.dbadge{display:inline-grid;place-items:center;width:calc(var(--bs,16px) + 4px);height:calc(var(--bs,16px) + 4px)}
.dbadge img{width:100%;height:100%;object-fit:contain;transition:transform .15s}.dbadge:hover img{transform:scale(1.18)}
.tips [data-tip]{position:relative}
.tips [data-tip]:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:rgba(10,10,15,.94);color:#fff;font:500 .72rem/1.2 var(--font),system-ui,sans-serif;padding:5px 9px;border-radius:7px;white-space:nowrap;pointer-events:none;z-index:20;border:1px solid var(--line);text-shadow:none;filter:none}
.links img.limg{width:var(--is,25px);height:var(--is,25px);object-fit:contain;border-radius:6px;display:block}
.links.buttons img.limg{width:1.25rem;height:1.25rem;display:inline-block}
.rbx-st{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}
.b-gb{padding:16px}
.b-gb h3{font-size:1rem;margin-bottom:10px}
.b-gb input,.b-gb textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:9px 11px;font:inherit;font-size:.9rem;margin-bottom:8px;resize:vertical;outline:none}
.b-gb input:focus,.b-gb textarea:focus{border-color:var(--accent)}
.b-gb button{background:var(--accent);color:#0b0b10;border:0;border-radius:10px;padding:9px 16px;font-weight:700;cursor:pointer;font-family:inherit}
.b-gb .gbnote{color:var(--muted);font-size:.8rem;margin-top:6px;min-height:1em}
.gbm{padding:10px 0 2px;border-top:1px solid var(--line);margin-top:10px}
.gbm b{font-size:.86rem}
.gbm span{color:var(--muted);font-size:.72rem;margin-left:6px}
.gbm p{font-size:.9rem;margin-top:3px;white-space:pre-wrap;word-break:break-word;font-weight:300}
.badges .bimg{width:var(--bs,16px);height:var(--bs,16px);object-fit:contain;border-radius:4px;display:block}
.badges.pills{gap:6px}
.bpill{display:inline-flex;align-items:center;gap:5px;padding:2px 10px 2px 7px;border-radius:999px;font-size:.72rem;font-weight:600;background:color-mix(in srgb,var(--bc) 18%,transparent);border:1px solid color-mix(in srgb,var(--bc) 45%,transparent);color:var(--text);line-height:1.6}
.bpill i{font-size:.85rem!important;color:var(--bc)!important}
.bpill .bimg{width:14px!important;height:14px!important}
.pstatus{display:inline-flex;gap:6px;align-items:center;margin:8px 0 2px;padding:5px 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-size:.85rem;max-width:100%;word-break:break-word}
.featured{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.featured:empty{display:none}
.featured a{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 16px;border-radius:14px;background:color-mix(in srgb,var(--accent) 22%,transparent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);color:var(--text);text-decoration:none;font-weight:700;transition:transform .2s,box-shadow .2s}
.featured a:hover{transform:translateY(-2px);box-shadow:0 0 22px color-mix(in srgb,var(--accent) 40%,transparent)}
.featured img{width:20px;height:20px;object-fit:contain}
.cardimg{position:absolute;inset:0;background-size:cover;background-position:center;pointer-events:none;z-index:0;border-radius:inherit}
.card>*:not(.cardimg):not(.pfx):not(.cdeco):not(.fcorner):not(.vcx){position:relative;z-index:1}
.card>.cdeco{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:6}
.cdeco>*{width:100%!important;height:100%!important;max-width:none!important;box-sizing:border-box;background:transparent!important;box-shadow:none!important;padding:0!important;display:block!important}
.cdeco .border-glow-card::before{border-width:2px;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread)*1%),transparent calc((var(--cone-spread) + 15)*1%),transparent calc((100 - var(--cone-spread) - 15)*1%),black calc((100 - var(--cone-spread))*1%)),linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:conic-gradient(from var(--cursor-angle) at center,black calc(var(--cone-spread)*1%),transparent calc((var(--cone-spread) + 15)*1%),transparent calc((100 - var(--cone-spread) - 15)*1%),black calc((100 - var(--cone-spread))*1%)),linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-clip:border-box,padding-box,border-box;mask-clip:border-box,padding-box,border-box;-webkit-mask-composite:source-in,xor;mask-composite:intersect,exclude}
.likebtn{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:3px 11px;font:inherit;font-size:.82rem;cursor:pointer;transition:color .2s,border-color .2s;display:inline-flex;gap:6px;align-items:center}
.likebtn:hover{border-color:#f43f5e88}
.likebtn.on{color:#f43f5e;border-color:#f43f5e88}
.likebtn.pop{animation:lp .45s ease}
@keyframes lp{40%{transform:scale(1.25)}}
.likerow{display:flex;justify-content:center;margin-top:10px}
#ptoast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);background:rgba(18,18,26,.92);border:1px solid var(--line);padding:9px 18px;border-radius:999px;opacity:0;transition:.25s;z-index:50;pointer-events:none;font-size:.88rem;backdrop-filter:blur(8px)}
#ptoast.on{opacity:1;transform:translateX(-50%)}
.b-gh{display:flex;gap:14px;align-items:center;padding:14px;text-decoration:none}
.b-gh img,.b-gh .gi{width:58px;height:58px;border-radius:50%;flex:none}
.b-gh .gi{display:grid;place-items:center;background:#24292e;font-size:1.6rem}
.b-gh .gn{font-weight:700}
.b-gh .gb{color:var(--muted);font-size:.84rem;margin-top:2px}
.b-gh .gs{display:flex;gap:12px;color:var(--muted);font-size:.8rem;margin-top:6px;flex-wrap:wrap}
.b-tick{padding:18px;text-align:center}
.bc-t{font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-shadow:0 0 16px color-mix(in srgb,var(--accent) 45%,transparent)}
.bc-l{color:var(--muted);font-size:.85rem;margin-top:2px}
.pfoot button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;margin-left:12px;opacity:.75}
.pfoot button:hover{opacity:1}
.pfoot{text-align:center;color:var(--muted);font-size:.75rem;padding:0 0 22px;opacity:.7}
.pfoot a{text-decoration:none}
.pfoot .pdisc{margin-left:12px;opacity:.8}.pfoot .pdisc:hover{opacity:1;color:#8b9cff}
@media (max-width:420px){.name{font-size:1.85rem}.player input[type=range]{display:none}}
@media (prefers-reduced-motion:reduce){*:not(.bio):not(.bio *):not(.name):not(.name *){animation:none!important;transition:none!important}}
/* ---------- v5.6: spacing, fonts ---------- */
.card{padding:var(--pad,30px) calc(var(--pad,30px) * .8) 20px}
.banner{margin:calc(var(--pad,30px) * -1) calc(var(--pad,30px) * -.8) 0}
.links{gap:var(--lg,18px)}
.name{font-family:var(--namefont,inherit)}
body.tshadow .card{text-shadow:0 2px 10px rgba(0,0,0,.65)}
.bio:not(.nocaret)::after{content:var(--caret,'|')}
.bio b{font-weight:700}.bio code{font-family:ui-monospace,monospace;font-size:.9em;padding:1px 6px;border-radius:6px;background:rgba(255,255,255,.08)}
.bio a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.bio.slide{animation:bslide .45s ease}@keyframes bslide{from{opacity:0;transform:translateY(10px)}}
/* ---------- layouts ---------- */
.lay-banner,.lay-compact{text-align:left}
.lay-banner .banner{display:block;height:150px;background-image:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,#000),#0000 90%)}
.lay-banner .lhead{display:flex;align-items:flex-start;gap:14px}
.card.lay-banner .lhead .avatar-wrap{margin-top:calc(var(--as,112px) / -2)!important}
.lay-banner .linfo{padding-top:10px}
.lay-banner .lhead .avatar-wrap,.lay-compact .lhead .avatar-wrap{margin:0!important;flex:none}
.lay-banner .linfo,.lay-compact .linfo{min-width:0;padding-bottom:4px}
.lay-banner .badges,.lay-banner .tags,.lay-banner .meta,.lay-banner .likerow,.lay-banner .links:not(.buttons),.lay-compact .badges,.lay-compact .tags,.lay-compact .meta,.lay-compact .likerow,.lay-compact .links:not(.buttons){justify-content:flex-start}
.lay-compact .lhead{display:flex;align-items:center;gap:16px;margin:4px 0 6px}
.lay-compact.has-banner .lhead{margin-top:calc(var(--as,112px) / -2.6)}
.lay-compact .avatar-wrap{width:calc(var(--as,112px) * .8)!important;height:calc(var(--as,112px) * .8)!important}
.card.lay-split{width:min(880px,calc(100vw - 32px));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:30px;align-items:center}
.lay-split .banner{margin:0 0 0;border-radius:14px;height:110px}
.lay-split .rcol .links{margin-top:0}
@media (max-width:760px){.card.lay-split{grid-template-columns:1fr;gap:12px}}
.card.lay-stack{background:none!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:0;overflow:visible;display:flex;flex-direction:column;gap:14px}
.lay-stack .sbox{position:relative;background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:1px solid var(--line);border-radius:var(--radius);padding:calc(var(--pad,30px) * .8) calc(var(--pad,30px) * .7);box-shadow:0 18px 50px rgba(0,0,0,.45);overflow:hidden}
.lay-stack .sbox .banner{margin:calc(var(--pad,30px) * -.8) calc(var(--pad,30px) * -.7) 0}
.lay-stack .sb2 .links{margin:4px 0}
.card.lay-stack.glow .sbox{box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 34px color-mix(in srgb,var(--accent) 20%,transparent)}
/* showcase: big artwork on one half, profile on the other */
.sideart{position:fixed;left:0;top:0;bottom:0;width:52vw;z-index:1;background:#000 center/cover no-repeat;pointer-events:none;-webkit-mask:linear-gradient(90deg,#000 55%,transparent);mask:linear-gradient(90deg,#000 55%,transparent);animation:sidein 1.2s cubic-bezier(.2,.8,.2,1) both}
.sideart.right{left:auto;right:0;-webkit-mask:linear-gradient(270deg,#000 55%,transparent);mask:linear-gradient(270deg,#000 55%,transparent)}
.sideart video{width:100%;height:100%;object-fit:cover}
@keyframes sidein{from{opacity:0;transform:scale(1.06)}}
body.has-sideart .page{position:relative;z-index:2}
body.has-sideart .hero,body.has-sideart .blocks{padding-left:44vw}body.has-sideart.sideart-r .hero,body.has-sideart.sideart-r .blocks{padding-left:0;padding-right:44vw}
.card.lay-showcase{background:none!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-align:left;width:min(440px,calc(56vw - 48px))}
.card.lay-showcase .banner,.card.lay-showcase.has-banner .banner{display:none!important}.card.lay-showcase::before,.card.lay-showcase::after,.card.lay-showcase .cardimg{display:none!important}.card.lay-showcase .avatar-wrap{margin-left:0!important;margin-top:0!important}.card.lay-showcase{overflow:visible}
.lay-showcase .badges,.lay-showcase .tags,.lay-showcase .meta,.lay-showcase .likerow,.lay-showcase .links:not(.buttons){justify-content:flex-start}
@media (max-width:760px){.sideart,.sideart.right{width:100vw;bottom:auto;height:62svh;-webkit-mask:linear-gradient(180deg,#000 45%,transparent);mask:linear-gradient(180deg,#000 45%,transparent)}
 body.has-sideart .hero,body.has-sideart .blocks,body.has-sideart.sideart-r .hero,body.has-sideart.sideart-r .blocks{padding-left:0;padding-right:0}body.has-sideart .hero{padding-top:38svh;align-items:end}.card.lay-showcase{width:calc(100vw - 32px)}}
/* wide + tilted: a horizontal glass card */
.card.lay-wide,.card.lay-tilt{width:min(640px,calc(100vw - 28px));text-align:left}
.lay-wide .banner:not([style]),.lay-tilt .banner:not([style]){display:none}
.lay-wide .whead,.lay-tilt .whead{display:flex;align-items:center;gap:18px}
.lay-wide .whead .avatar-wrap,.lay-tilt .whead .avatar-wrap{margin:0!important;flex:none;width:calc(var(--as,112px) * .82)!important;height:calc(var(--as,112px) * .82)!important}
.lay-wide.has-banner .whead,.lay-tilt.has-banner .whead{margin-top:calc(var(--as,112px) / -2.6)}
.lay-wide .winfo,.lay-tilt .winfo{min-width:0;flex:1}
.lay-wide .bio,.lay-tilt .bio{margin-top:6px;text-align:left}
.lay-wide .badges,.lay-wide .tags,.lay-tilt .badges,.lay-tilt .tags{justify-content:flex-start}
.lay-wide .meta,.lay-tilt .meta{justify-content:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:.8rem;opacity:.8}
.tiltwrap{perspective:1100px;display:grid;place-items:center}
.tiltwrap>.card{transform-origin:50% 50%}
.tiltwrap{transform:none;transform-style:preserve-3d;position:relative;max-width:100%}
body.t3on,html:has(body.t3on){overflow-x:hidden}
@media (max-width:640px){.card.lay-tilt,.card.lay-wide{width:calc(100vw - 44px)}}
.tslab{position:absolute;left:50%;top:50%;margin:0;pointer-events:none;translate:-50% -50%;background:none}
@keyframes tiltin{from{transform:rotateX(18deg) rotateY(-28deg) rotateZ(-6deg) scale(.9);opacity:0}}
.lay-tilt{box-shadow:30px 40px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08);cursor:grab;user-select:none;-webkit-user-select:none}.lay-tilt:active{cursor:grabbing}
.card .lvlchip{position:absolute!important;top:12px;right:14px;bottom:auto!important;left:auto!important;margin:0!important;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.74rem;font-weight:800;letter-spacing:.02em;color:#ffd36a;background:rgba(0,0,0,.35);border:1px solid rgba(255,211,106,.35);text-shadow:0 0 10px rgba(255,190,60,.6)}
.lvlchip i{font-size:.85em}
.tiltwrap{perspective:900px}.tiltwrap>.card{transform-style:flat;will-change:transform}
.tglare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:5;mix-blend-mode:screen}
.tdent{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;pointer-events:none;z-index:6;border:2px solid color-mix(in srgb,var(--accent) 70%,#fff);box-shadow:0 0 18px var(--accent);animation:tdent .85s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes tdent{to{transform:scale(14);opacity:0;border-width:.5px}}
@media (max-width:640px){.lay-wide .whead,.lay-tilt .whead{gap:12px}}
/* column: a slim dark panel with your sections inside */
.card.lay-column{width:min(380px,calc(100vw - 24px));background:rgba(8,8,12,var(--co,.88))!important;padding-bottom:16px}
.lay-column .avatar-wrap{width:calc(var(--as,112px) * .72)!important;height:calc(var(--as,112px) * .72)!important}
.lay-column .links{gap:12px}.lay-column .links a.icon{transform:scale(.8)}
.lay-column .blocks{width:100%;padding:12px 0 0;margin-top:12px;border-top:1px solid var(--line);gap:10px}
.lay-column .blocks .mod{border-radius:12px}
body.lay-column-page .hero{min-height:auto;padding:min(14vh,90px) 0 60px}
body.lay-column-page #scrollhint{display:none}
/* ---------- name effects ---------- */
.fx-shine{background:linear-gradient(110deg,var(--text) 38%,#fff 50%,var(--text) 62%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:nshine calc(3.2s * var(--nsp,1)) linear infinite}
@keyframes nshine{from{background-position:150% 0}to{background-position:-100% 0}}
.fx-neon{color:#fff;text-shadow:0 0 4px #fff,0 0 10px var(--accent),0 0 22px var(--accent),0 0 44px var(--accent);animation:nneon calc(4s * var(--nsp,1)) infinite}
@keyframes nneon{0%,18%,22%,25%,53%,57%,100%{opacity:1}20%,24%,55%{opacity:.45}}
.fx-wave span{display:inline-block;animation:nwave calc(1.6s * var(--nsp,1)) ease-in-out infinite;animation-delay:calc(var(--i) * .07s)}
@keyframes nwave{50%{transform:translateY(-.2em)}}
.fx-chromatic{text-shadow:-2px 0 #ff2a6d,2px 0 #05d9e8;animation:nchroma calc(2.4s * var(--nsp,1)) ease-in-out infinite}
@keyframes nchroma{50%{text-shadow:2px 0 #ff2a6d,-2px 0 #05d9e8}}
.fx-fire{color:#fff6d5;text-shadow:0 -1px 3px #fff,0 -3px 8px #ffde59,0 -8px 18px #ff9f1a,0 -14px 30px #e8471c;animation:nfire calc(1.3s * var(--nsp,1)) ease-in-out infinite alternate}
@keyframes nfire{to{text-shadow:0 -1px 3px #fff,0 -4px 10px #ffde59,0 -11px 22px #ff9f1a,0 -18px 38px #e8471c}}
.fx-outline{color:transparent;-webkit-text-stroke:1.6px var(--accent);text-shadow:0 0 18px color-mix(in srgb,var(--accent) 45%,transparent)}
.fx-pulse{animation:npulse calc(2.2s * var(--nsp,1)) ease-in-out infinite}
@keyframes npulse{50%{transform:scale(1.06);text-shadow:0 0 24px var(--accent)}}
.fx-float{animation:nfloat calc(3.4s * var(--nsp,1)) ease-in-out infinite}
@keyframes nfloat{50%{transform:translateY(-7px)}}
.fx-scramble{text-shadow:0 0 12px color-mix(in srgb,var(--accent) 60%,transparent);font-variant-numeric:tabular-nums}
.fx-gold{background:linear-gradient(180deg,#fff7cf 0%,#f6c945 45%,#b8860b 55%,#ffe795 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 8px rgba(246,201,69,.45))}
.fx-ice{background:linear-gradient(180deg,#ffffff 0%,#c7ecff 45%,#4cc3ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 9px rgba(125,211,252,.6))}
/* ---------- avatar effects ---------- */
.avatar-wrap{isolation:isolate}
.afx-spin::before,.afx-rainbow::before{content:'';position:absolute;inset:-6px;border-radius:var(--ar,50%);z-index:-1;animation:aspin 3s linear infinite}
.afx-spin::before{background:conic-gradient(var(--accent),transparent 35%,transparent 65%,var(--accent))}
.afx-rainbow::before{background:conic-gradient(#ff6b6b,#feca57,#48dbfb,#ff9ff3,#ff6b6b);filter:blur(1px)}
@keyframes aspin{to{transform:rotate(360deg)}}
.afx-pulse::before{content:'';position:absolute;inset:0;border-radius:var(--ar,50%);z-index:-1;animation:apulse 2s ease-out infinite}
@keyframes apulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 70%,transparent)}100%{box-shadow:0 0 0 22px transparent}}
.afx-float{animation:cfloat 4s ease-in-out infinite}
.afx-orbit::after{content:'';position:absolute;inset:-12px;border-radius:50%;border:2px dashed color-mix(in srgb,var(--accent) 65%,transparent);animation:aspin 14s linear infinite;pointer-events:none}
/* ---------- card effects ---------- */
.card.cfx-shine::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.12) 50%,transparent 60%);background-size:250% 100%;animation:cshine 6s ease-in-out infinite;pointer-events:none;border-radius:inherit;z-index:3}
@keyframes cshine{0%,30%{background-position:150% 0}70%,100%{background-position:-60% 0}}
.card.cfx-neon{border-color:var(--accent)!important;animation:cneon 3s ease-in-out infinite}
@keyframes cneon{0%,100%{box-shadow:0 0 10px var(--accent),inset 0 0 10px color-mix(in srgb,var(--accent) 30%,transparent),0 20px 60px rgba(0,0,0,.5)}50%{box-shadow:0 0 26px var(--accent),inset 0 0 18px color-mix(in srgb,var(--accent) 45%,transparent),0 20px 60px rgba(0,0,0,.5)}}
.card.cfx-aurora::before{content:'';position:absolute;inset:-45%;background:conic-gradient(from var(--ang),var(--accent),#22d3ee,#a78bfa,#f472b6,var(--accent));filter:blur(70px);opacity:.25;animation:spinang 12s linear infinite;pointer-events:none;z-index:0}
/* ---------- entrance ---------- */
/* ---------- animated backgrounds ---------- */
#bgfx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.rbhost{position:absolute;inset:0}.rbname{display:inline-block;max-width:100%}.rbnamed{background:none!important;-webkit-text-fill-color:initial!important;animation:none!important}.rbmetal{position:absolute;left:50%;top:50%;translate:-50% -50%;pointer-events:none}.rbmetal>*{width:100%!important;height:100%!important}.metalon{-webkit-text-fill-color:transparent!important;background:none!important;text-shadow:none!important}.rbhost>*{width:100%!important;height:100%!important}.rbswarm{position:fixed;inset:0;z-index:9990;pointer-events:none}.rbswarm>*{width:100%;height:100%;pointer-events:none!important}.htrb{z-index:1;border-radius:inherit;overflow:hidden;pointer-events:auto}.banner{position:relative}
#bgfx.shift{background-size:400% 400%;animation:bgshift 22s ease infinite;opacity:.9}
@keyframes bgshift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
#bgfx.aurora i{position:absolute;width:70vmax;height:70vmax;border-radius:50%;filter:blur(90px);opacity:.38;mix-blend-mode:screen;animation:aur 26s ease-in-out infinite alternate}
#bgfx.aurora i:nth-child(1){left:-20vmax;top:-25vmax}#bgfx.aurora i:nth-child(2){right:-25vmax;top:10vh;animation-duration:32s;animation-delay:-8s}#bgfx.aurora i:nth-child(3){left:15vw;bottom:-35vmax;animation-duration:38s;animation-delay:-15s}
@keyframes aur{50%{transform:translate(12vw,8vh) scale(1.15)}100%{transform:translate(-8vw,-6vh) scale(.95)}}
#bgfx.grid::before{content:'';position:absolute;left:-50%;right:-50%;bottom:-10%;height:62%;background:linear-gradient(transparent 0 calc(100% - 2px),color-mix(in srgb,var(--accent) 55%,transparent) 0) 0 0/100% 46px,linear-gradient(90deg,transparent 0 calc(100% - 2px),color-mix(in srgb,var(--accent) 55%,transparent) 0) 0 0/46px 100%;transform:perspective(320px) rotateX(62deg);transform-origin:bottom;animation:grid 2.4s linear infinite;-webkit-mask:linear-gradient(transparent,#000 45%);mask:linear-gradient(transparent,#000 45%)}
#bgfx.grid::after{content:'';position:absolute;left:50%;bottom:52%;width:44vmin;height:44vmin;transform:translateX(-50%);border-radius:50%;background:linear-gradient(#ffd166,#ff4d8d 70%);opacity:.55;filter:blur(1px);-webkit-mask:repeating-linear-gradient(#000 0 9px,transparent 9px 13px);mask:repeating-linear-gradient(#000 0 9px,transparent 9px 13px)}
@keyframes grid{to{background-position:0 46px,0 0}}
#bgwrap.kenburns{animation:kb 34s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.16) translate(-2%,-1%)}}
#clickfx{position:fixed;inset:0;z-index:31;pointer-events:none}
/* ===================== v1.4.3 — more looks ===================== */
.dtag{display:inline-flex;align-items:center;gap:4px;margin:2px auto 0;padding:1px 8px;border-radius:6px;background:rgba(255,255,255,.08);border:1px solid var(--line);font-size:.72rem;font-weight:700;letter-spacing:.03em}.dtag img{width:14px;height:14px}
.agate,.agate b{color:#f4f4f5}
/* ---------- more layouts ---------- */
.card.lay-hero{background:none!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;width:min(560px,calc(100vw - 28px))}
.lay-hero .avatar-wrap{width:calc(var(--as,112px) * 1.45)!important;height:calc(var(--as,112px) * 1.45)!important}
.lay-hero .name{font-size:clamp(2.4rem,11vw,4.2rem)!important;letter-spacing:-.03em}
.lay-hero .links.buttons a,.lay-hero .links.pills a{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.lay-hero .banner{border-radius:var(--radius);margin:0 0 0!important;height:170px}
.card.lay-terminal{text-align:left;font-family:'JetBrains Mono','Fira Code',ui-monospace,monospace;background:rgba(6,8,10,calc(.55 + var(--co,.45) * .45))!important;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent)!important;padding-top:58px;border-radius:12px}
.lay-terminal .tbar{position:absolute;left:0;right:0;top:0;height:38px;display:flex;align-items:center;gap:8px;padding:0 14px;background:rgba(255,255,255,.05);border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted)}
.lay-terminal .tbar i{width:12px;height:12px;border-radius:50%;display:block}.lay-terminal .tbar span{margin-left:auto;margin-right:auto;transform:translateX(-24px)}
.lay-terminal .avatar-wrap{margin-left:0!important}.lay-terminal .name::before{content:'> ';color:var(--accent)}
.lay-terminal .bio::before{content:'$ ';color:var(--accent)}.lay-terminal .badges,.lay-terminal .tags,.lay-terminal .meta,.lay-terminal .likerow,.lay-terminal .links:not(.buttons){justify-content:flex-start}
.lay-terminal .banner{display:none!important}.lay-terminal.has-banner .avatar-wrap{margin-top:0!important}
.card.lay-bento{width:min(860px,calc(100vw - 28px));background:none!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:0;overflow:visible;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;text-align:left}
.lay-bento .tile{position:relative;background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:1px solid var(--line);border-radius:var(--radius);padding:18px;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.4);min-width:0}
.lay-bento .t1{grid-column:span 2;grid-row:span 2;text-align:center}.lay-bento .t2{grid-column:span 2}.lay-bento .t3{grid-column:span 2}.lay-bento .t4{grid-column:span 4}.lay-bento .t5{grid-column:span 4}
.lay-bento .t1 .banner{margin:-18px -18px 0;display:block;height:110px}.lay-bento .t1.has-b .avatar-wrap{margin-top:calc(var(--as,112px) / -2)}
.lay-bento .links{margin:0}.lay-bento .tile .links:not(.buttons){justify-content:flex-start}
.lay-bento .tile::before{content:attr(data-k);position:absolute;right:14px;top:10px;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);opacity:.7}
@media (max-width:700px){.card.lay-bento{grid-template-columns:repeat(2,minmax(0,1fr))}.lay-bento .t1,.lay-bento .t2,.lay-bento .t3,.lay-bento .t4,.lay-bento .t5{grid-column:span 2;grid-row:auto}}
/* ---------- more name effects ---------- */
.fx-holo{background:linear-gradient(115deg,#ff9ff3,#feca57,#48dbfb,#1dd1a1,#c8a2ff,#ff9ff3);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:nholo calc(4s * var(--nsp,1)) linear infinite;filter:drop-shadow(0 0 10px rgba(200,162,255,.45))}
@keyframes nholo{to{background-position:300% 0}}
.fx-retro{color:#fff;text-shadow:1px 1px 0 var(--accent),2px 2px 0 var(--accent),3px 3px 0 color-mix(in srgb,var(--accent) 70%,#000),4px 4px 0 color-mix(in srgb,var(--accent) 50%,#000),6px 6px 14px rgba(0,0,0,.5)}
.fx-vapor{background:linear-gradient(180deg,#ff71ce 0%,#b967ff 50%,#01cdfe 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(3px 3px 0 rgba(1,205,254,.35)) drop-shadow(-2px -1px 0 rgba(255,113,206,.35));font-style:italic}
.fx-blood{color:#ff1f3d;text-shadow:0 0 10px rgba(255,0,40,.7),0 6px 6px rgba(120,0,10,.8);animation:nblood calc(3s * var(--nsp,1)) ease-in-out infinite}
@keyframes nblood{50%{text-shadow:0 0 22px rgba(255,0,40,.95),0 10px 10px rgba(120,0,10,.9)}}
.fx-toxic{color:#b6ff3a;text-shadow:0 0 8px #7cff00,0 0 22px #3dff00,0 0 40px rgba(61,255,0,.5);animation:ntox calc(2s * var(--nsp,1)) ease-in-out infinite alternate}
@keyframes ntox{to{color:#e6ff9a;text-shadow:0 0 12px #7cff00,0 0 30px #3dff00,0 0 60px rgba(61,255,0,.6)}}
.fx-candy{background:repeating-linear-gradient(45deg,#ff8fb8 0 10px,#fff 10px 20px);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 200%;animation:ncandy calc(3s * var(--nsp,1)) linear infinite;filter:drop-shadow(0 0 6px #ff8fb8)}
@keyframes ncandy{to{background-position:56px 0}}
.fx-sunset{background:linear-gradient(180deg,#ffd166 0%,#ff7b54 45%,#c9184a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 10px rgba(255,123,84,.5))}
.fx-ocean{background:linear-gradient(90deg,#00f5d4,#00bbf9,#4361ee,#00f5d4);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:nholo calc(6s * var(--nsp,1)) linear infinite;filter:drop-shadow(0 0 8px rgba(0,187,249,.5))}
.fx-galaxy{background:radial-gradient(circle at 30% 40%,#fff 0 2%,transparent 3%),radial-gradient(circle at 70% 60%,#fff 0 1.5%,transparent 2.5%),linear-gradient(90deg,#3a0ca3,#7209b7,#f72585,#4361ee,#3a0ca3);background-size:60px 60px,80px 80px,300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ngal calc(8s * var(--nsp,1)) linear infinite;filter:drop-shadow(0 0 12px rgba(114,9,183,.6))}
@keyframes ngal{to{background-position:60px 30px,-80px 40px,300% 0}}
.fx-flicker{color:#fff;text-shadow:0 0 6px var(--accent),0 0 18px var(--accent);animation:nflick calc(3.2s * var(--nsp,1)) linear infinite}
@keyframes nflick{0%,19%,21%,23%,25%,54%,56%,100%{opacity:1;text-shadow:0 0 6px var(--accent),0 0 18px var(--accent),0 0 40px var(--accent)}20%,24%,55%{opacity:.25;text-shadow:none}}
.fx-bounce span{display:inline-block;animation:nbnc calc(1.4s * var(--nsp,1)) cubic-bezier(.16,1,.3,1) infinite;animation-delay:calc(var(--i) * .06s)}
@keyframes nbnc{0%,50%,100%{transform:none}25%{transform:translateY(-.28em) scale(1.08)}}
.fx-spotlight{background:radial-gradient(circle at var(--sx,50%) 50%,#fff 0%,color-mix(in srgb,var(--text) 40%,transparent) 30%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:nspot calc(4s * var(--nsp,1)) ease-in-out infinite alternate}
@keyframes nspot{from{background-position:100% 0}to{background-position:0 0}}
.fx-emboss{color:color-mix(in srgb,var(--text) 85%,#000);text-shadow:-1px -1px 0 rgba(255,255,255,.55),2px 2px 3px rgba(0,0,0,.7)}
.fx-echo{text-shadow:6px 0 0 color-mix(in srgb,var(--accent) 55%,transparent),12px 0 0 color-mix(in srgb,var(--accent) 30%,transparent),18px 0 0 color-mix(in srgb,var(--accent) 14%,transparent);animation:necho calc(3s * var(--nsp,1)) ease-in-out infinite}
@keyframes necho{50%{text-shadow:-6px 0 0 color-mix(in srgb,var(--accent) 55%,transparent),-12px 0 0 color-mix(in srgb,var(--accent) 30%,transparent),-18px 0 0 color-mix(in srgb,var(--accent) 14%,transparent)}}
.fx-katana{color:#fff;text-shadow:0 0 12px color-mix(in srgb,var(--accent) 60%,transparent)}
.fx-katana::after{content:'';position:absolute;left:-8%;right:-8%;top:52%;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,#fff 30%,var(--accent) 50%,#fff 70%,transparent);box-shadow:0 0 12px var(--accent);transform:scaleX(0) rotate(-6deg);transform-origin:0 50%;animation:nkat calc(4s * var(--nsp,1)) cubic-bezier(.7,0,.3,1) infinite}
@keyframes nkat{0%,55%{transform:scaleX(0) rotate(-6deg);opacity:1}62%{transform:scaleX(1) rotate(-6deg);opacity:1}80%,100%{transform:scaleX(1) rotate(-6deg);opacity:0}}
.fx-matrix{color:#7CFF9B;text-shadow:0 0 6px #00ff66,0 0 18px rgba(0,255,102,.5);font-family:'Share Tech Mono','JetBrains Mono',monospace!important}
.fx-chrome{background:linear-gradient(180deg,#fff 0%,#e8ebf0 38%,#7d848f 50%,#3c414a 52%,#c7ccd4 75%,#fff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 rgba(0,0,0,.4)) drop-shadow(0 0 12px rgba(255,255,255,.25))}
.fx-gradient.cgrad{background:linear-gradient(90deg,var(--ng1),var(--ng2));-webkit-background-clip:text;background-clip:text}
/* ---------- more card effects ---------- */
.card.cfx-holo::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;background:linear-gradient(115deg,transparent 20%,rgba(255,159,243,.12) 35%,rgba(72,219,251,.12) 50%,rgba(254,202,87,.12) 65%,transparent 80%);background-size:300% 100%;mix-blend-mode:screen;animation:cholo 7s linear infinite}
@keyframes cholo{to{background-position:300% 0}}
.card.cfx-runner::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--ang),transparent 0 70%,var(--accent) 85%,#fff 90%,transparent 95%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spinang 3.2s linear infinite;pointer-events:none;z-index:4}
.card.cfx-glitch.show{animation:cglitch 5s steps(1) infinite}
@keyframes cglitch{0%,92%,100%{transform:none;filter:none}93%{transform:translate(-4px,1px) skewX(-2deg);filter:hue-rotate(40deg)}95%{transform:translate(4px,-1px);filter:hue-rotate(-40deg) saturate(2)}97%{transform:translate(-2px,0)}}
.card.cfx-breathe.show{animation:cbreathe 4s ease-in-out infinite}
@keyframes cbreathe{50%{box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 60px color-mix(in srgb,var(--accent) 45%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent)}}
.card.cfx-scan::after{content:'';position:absolute;left:0;right:0;top:-30%;height:30%;background:linear-gradient(transparent,color-mix(in srgb,var(--accent) 16%,transparent),transparent);animation:cscan 4.5s linear infinite;pointer-events:none;z-index:3}
@keyframes cscan{to{top:130%}}
.card.cfx-frost::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:3;border-radius:inherit;background:radial-gradient(circle at 0 0,rgba(255,255,255,.22),transparent 35%),radial-gradient(circle at 100% 100%,rgba(186,230,253,.18),transparent 40%);box-shadow:inset 0 0 30px rgba(186,230,253,.18)}
.card.cfx-sway.show{animation:csway 7s ease-in-out infinite;transform-origin:50% -40%}
@keyframes csway{25%{transform:rotate(1.2deg)}75%{transform:rotate(-1.2deg)}}
/* ---------- more avatar effects + shapes ---------- */
.afx-glitch .avatar{animation:aglitch 3.5s steps(1) infinite}
@keyframes aglitch{0%,90%,100%{transform:none;filter:none}91%{transform:translate(-3px,1px);filter:hue-rotate(90deg) saturate(2)}94%{transform:translate(3px,-2px);filter:hue-rotate(-90deg)}97%{transform:translate(-1px,0)}}
.afx-bounce{animation:abnc 2.2s cubic-bezier(.16,1,.3,1) infinite}@keyframes abnc{0%,60%,100%{transform:none}30%{transform:translateY(-12px)}}
.afx-heartbeat{animation:ahb 1.6s ease-in-out infinite}@keyframes ahb{0%,40%,100%{transform:scale(1)}10%,30%{transform:scale(1.07)}20%{transform:scale(.97)}}
.afx-halo::before{content:'';position:absolute;inset:-14px;border-radius:50%;z-index:-1;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 55%,transparent) 50%,transparent 70%);filter:blur(8px);animation:ahalo 3s ease-in-out infinite}
@keyframes ahalo{50%{transform:scale(1.12);opacity:.6}}
.afx-double::before,.afx-double::after{content:'';position:absolute;border-radius:50%;pointer-events:none;border:2px solid transparent}
.afx-double::before{inset:-9px;border-top-color:var(--accent);border-bottom-color:var(--accent);animation:aspin 2.4s linear infinite}
.afx-double::after{inset:-16px;border-left-color:#fff;border-right-color:#fff;opacity:.6;animation:aspin 3.6s linear infinite reverse}
.afx-neon .avatar{box-shadow:0 0 0 3px var(--accent),0 0 18px var(--accent),0 0 40px color-mix(in srgb,var(--accent) 60%,transparent)!important;animation:aneon 2.4s ease-in-out infinite}
@keyframes aneon{50%{box-shadow:0 0 0 3px var(--accent),0 0 28px var(--accent),0 0 60px var(--accent)}}
.afx-shake{animation:ashk 3s ease-in-out infinite}@keyframes ashk{0%,86%,100%{transform:none}88%{transform:rotate(-6deg)}90%{transform:rotate(6deg)}92%{transform:rotate(-4deg)}94%{transform:rotate(3deg)}}
/* new effects */
.afx-ripple::before,.afx-ripple::after{content:'';position:absolute;inset:0;border-radius:var(--ar,50%);border:2px solid var(--accent);z-index:-1;pointer-events:none;animation:aripple 2.4s ease-out infinite}.afx-ripple::after{animation-delay:1.2s}@keyframes aripple{from{transform:scale(1);opacity:.85}to{transform:scale(1.5);opacity:0}}
.afx-wobble{animation:awob 3.2s ease-in-out infinite}@keyframes awob{0%,58%,100%{transform:none}64%{transform:scale(1.09,.91)}70%{transform:scale(.93,1.07)}76%{transform:scale(1.04,.96)}82%{transform:scale(.98,1.02)}88%{transform:none}}
.card.cfx-flow::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:linear-gradient(90deg,var(--accent),#f472b6,#22d3ee,var(--accent));background-size:300% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:cflow 4s linear infinite;pointer-events:none;z-index:2}@keyframes cflow{to{background-position:300% 0}}
.ebord{position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;z-index:4;background:conic-gradient(from var(--ea,0deg),transparent 0 62%,color-mix(in srgb,var(--accent) 60%,#fff) 74%,#fff 76%,var(--accent) 80%,transparent 90%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:espin 2.4s linear infinite;filter:drop-shadow(0 0 5px var(--accent)) drop-shadow(0 0 12px var(--accent))}
.ebord.e2{animation-duration:3.7s;animation-direction:reverse;opacity:.7;filter:drop-shadow(0 0 8px #9cf)}
@property --ea{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes espin{to{--ea:360deg}}
.card.cfx-electric{border-color:color-mix(in srgb,var(--accent) 30%,transparent)!important;animation:eflick 3.1s steps(1) infinite}
@keyframes eflick{0%,100%{filter:none}47%{filter:brightness(1.25)}48%{filter:none}71%{filter:brightness(1.15)}}
.card.cfx-tilt.show{animation:ctilt 9s ease-in-out infinite}@keyframes ctilt{0%,100%{transform:perspective(1200px) rotateY(0) rotateX(0)}25%{transform:perspective(1200px) rotateY(5deg) rotateX(2deg)}75%{transform:perspective(1200px) rotateY(-5deg) rotateX(-2deg)}}
.afx-flip{animation:aflip 6s ease-in-out infinite;transform-style:preserve-3d}@keyframes aflip{0%,70%,100%{transform:perspective(600px) rotateY(0)}85%{transform:perspective(600px) rotateY(360deg)}}
.avatar.sh-squircle{border-radius:32%}
.avatar.sh-hexagon,.avatar.sh-diamond,.avatar.sh-blob,.avatar.sh-shield,.avatar.sh-star{border-radius:0!important;border:0!important}
.avatar.sh-star{clip-path:polygon(50% 1%,62% 34%,98% 35%,70% 57%,80% 94%,50% 73%,20% 94%,30% 57%,2% 35%,38% 34%)}
.avatar.sh-hexagon{clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%)}
.avatar.sh-diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.avatar.sh-shield{clip-path:polygon(50% 0,100% 14%,100% 56%,50% 100%,0 56%,0 14%)}
.avatar.sh-blob{clip-path:path('M56,4 C78,2 104,16 108,42 C112,68 98,100 70,108 C42,116 12,104 6,76 C0,48 18,6 56,4 Z');width:112px!important;height:112px!important}
.avatar-wrap:has(.sh-hexagon),.avatar-wrap:has(.sh-diamond),.avatar-wrap:has(.sh-shield),.avatar-wrap:has(.sh-blob),.avatar-wrap:has(.sh-star){filter:drop-shadow(0 0 14px color-mix(in srgb,var(--accent) 55%,transparent))}
/* ---------- more backgrounds ---------- */
#bgfx.waves::before,#bgfx.waves::after{content:'';position:absolute;left:-50%;right:-50%;bottom:-6vh;height:42vh;background:radial-gradient(120% 70% at 50% 100%,color-mix(in srgb,var(--accent) 35%,transparent),transparent 70%);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'%3E%3Cpath d='M0 80 C150 20 300 140 450 80 S750 20 900 80 S1150 140 1200 80 V200 H0Z'/%3E%3C/svg%3E") 0 100%/50% 100% repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'%3E%3Cpath d='M0 80 C150 20 300 140 450 80 S750 20 900 80 S1150 140 1200 80 V200 H0Z'/%3E%3C/svg%3E") 0 100%/50% 100% repeat-x;animation:bwave 14s linear infinite;opacity:.55}
#bgfx.waves::after{bottom:-10vh;opacity:.35;animation-duration:22s;animation-direction:reverse}
@keyframes bwave{to{transform:translateX(25%)}}
#bgfx.nebula i{position:absolute;width:60vmax;height:60vmax;border-radius:50%;filter:blur(80px);opacity:.42;mix-blend-mode:screen;animation:neb 30s ease-in-out infinite alternate}
#bgfx.nebula i:nth-child(1){left:-15vmax;top:-10vmax;background:radial-gradient(circle,#7209b7,transparent 65%)}#bgfx.nebula i:nth-child(2){right:-20vmax;top:20vh;background:radial-gradient(circle,#f72585,transparent 65%);animation-delay:-10s}#bgfx.nebula i:nth-child(3){left:20vw;bottom:-25vmax;background:radial-gradient(circle,#4361ee,transparent 65%);animation-delay:-20s}
@keyframes neb{50%{transform:translate(8vw,6vh) scale(1.2) rotate(40deg);filter:blur(80px) hue-rotate(40deg)}100%{transform:translate(-6vw,-4vh) scale(.9)}}
#bgfx.pulse{background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--accent) 40%,transparent),transparent 60%);animation:bpulse 4s ease-in-out infinite}
@keyframes bpulse{50%{opacity:.35;transform:scale(1.15)}}
#bgfx.lines{background:repeating-linear-gradient(-45deg,transparent 0 22px,color-mix(in srgb,var(--accent) 14%,transparent) 22px 24px);background-size:200% 200%;animation:blines 12s linear infinite}
@keyframes blines{to{background-position:68px 0}}
#bgfx.mesh{background:radial-gradient(at 20% 20%,var(--m1) 0,transparent 50%),radial-gradient(at 80% 10%,var(--m2) 0,transparent 50%),radial-gradient(at 70% 80%,var(--m3) 0,transparent 50%),radial-gradient(at 10% 90%,var(--m1) 0,transparent 50%);background-size:150% 150%;animation:bmesh 18s ease-in-out infinite alternate;opacity:.7}
@keyframes bmesh{to{background-position:100% 100%}}
#bgfx.moon::before{content:'';position:absolute;right:8vw;top:8vh;width:28vmin;height:28vmin;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,color-mix(in srgb,var(--accent) 45%,#e9e4ff) 60%,color-mix(in srgb,var(--accent) 80%,#000));box-shadow:0 0 80px color-mix(in srgb,var(--accent) 60%,transparent),0 0 200px color-mix(in srgb,var(--accent) 30%,transparent);animation:bmoon 9s ease-in-out infinite}
#bgfx.moon::after{content:'';position:absolute;left:0;right:0;bottom:0;height:26vh;background:radial-gradient(60px 46px at 30px 100%,#050408 98%,transparent) 0 100%/90px 60px repeat-x,linear-gradient(transparent,#050408 60%)}
@keyframes bmoon{50%{transform:translateY(-10px);box-shadow:0 0 110px color-mix(in srgb,var(--accent) 70%,transparent),0 0 240px color-mix(in srgb,var(--accent) 35%,transparent)}}
/* ---------- more overlays ---------- */
#overlay.vhs{background:repeating-linear-gradient(0deg,rgba(0,0,0,.25) 0 1px,transparent 1px 3px);animation:flick .15s infinite}
#overlay.vhs::after{content:'';position:absolute;left:0;right:0;height:14vh;background:linear-gradient(transparent,rgba(255,255,255,.06),transparent);animation:vroll 6s linear infinite}
@keyframes vroll{from{top:-15vh}to{top:105vh}}
#overlay.dots{background:radial-gradient(rgba(0,0,0,.35) 1px,transparent 1.6px) 0 0/5px 5px}
#overlay.noise{inset:-50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.09;animation:noisej .4s steps(4) infinite}
@keyframes noisej{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}}
#overlay.glow{box-shadow:inset 0 0 120px color-mix(in srgb,var(--accent) 35%,transparent);animation:oglow 4s ease-in-out infinite}
@keyframes oglow{50%{box-shadow:inset 0 0 180px color-mix(in srgb,var(--accent) 50%,transparent)}}
#overlay.letterbox::before,#overlay.letterbox::after{content:'';position:absolute;left:0;right:0;height:7vh;background:#000}#overlay.letterbox::before{top:0}#overlay.letterbox::after{bottom:0}
#overlay.sunset{background:linear-gradient(180deg,rgba(255,94,98,.12),transparent 40%,rgba(255,153,102,.12));mix-blend-mode:screen}
/* ---------- more entrances ---------- */
/* ---------- more link styles + hovers ---------- */
.links.pills{gap:8px!important}
.links.pills a{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--line)}
.links.pills a i,.links.pills a img.limg{font-size:1rem;width:auto;height:1rem}
.links.tiles{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px!important}
.links.tiles a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:1.25;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-size:.8rem}
.links.tiles a i{font-size:1.7rem}.links.tiles a img.limg{width:1.8rem;height:1.8rem}
.links.tiles a span,.links.pills a span,.links.list a span,.links.outline a span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.links.list{flex-direction:column;gap:0!important}
.links.list a{display:flex;align-items:center;gap:12px;font-size:.95rem;padding:12px 4px;border-bottom:1px solid var(--line)}
.links.list a:last-child{border-bottom:0}.links.list a i{width:22px;text-align:center;font-size:1.1rem}.links.list a::after{content:'→';margin-left:auto;color:var(--muted);transition:transform .2s}
.links.list a:hover{transform:none!important;filter:none}.links.list a:hover::after{transform:translateX(4px);color:var(--accent)}
.links.outline{flex-direction:column;gap:10px!important}
.links.outline a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.95rem;font-weight:600;padding:12px 16px;border-radius:12px;border:2px solid var(--accent);background:transparent}
.links.outline a:hover{background:var(--accent);color:#0b0b10;transform:none}
.links.lh-pop a:hover{transform:scale(1.22)}
.links.lh-wobble a:hover{transform:none;animation:lwob .6s}@keyframes lwob{20%{transform:rotate(-10deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}}
.links.lh-bounce a:hover{transform:none;animation:lbnc .6s cubic-bezier(.16,1,.3,1)}@keyframes lbnc{40%{transform:translateY(-10px)}}
.links.lh-jelly a:hover{transform:none;animation:ljel .6s}@keyframes ljel{30%{transform:scale(1.25,.8)}50%{transform:scale(.85,1.15)}70%{transform:scale(1.08,.95)}}
.links.lh-slide a:hover{transform:translateX(6px)}
/* ---------- more badge styles ---------- */
.badges.glass{gap:6px}.badges.glass>.bico>i,.badges.glass>.bico>.bimg{padding:6px;border-radius:9px;background:rgba(255,255,255,.08);border:1px solid var(--line);box-sizing:content-box;width:var(--bs,16px);height:var(--bs,16px);display:inline-grid;place-items:center;backdrop-filter:blur(6px)}
.badges.outline>.bico>i,.badges.outline>.bico>.bimg{padding:5px;border-radius:50%;border:1.5px solid currentColor;box-sizing:content-box;width:var(--bs,16px);height:var(--bs,16px);display:inline-grid;place-items:center}
/* ---------- bio modes ---------- */
.bio.bglitch{animation:bglt .45s steps(2)}@keyframes bglt{0%{transform:translate(-3px,0);filter:hue-rotate(90deg);opacity:.4}50%{transform:translate(3px,0);opacity:.8}100%{transform:none;opacity:1}}
.bio .bw{display:inline-block;white-space:pre;animation:bwv .5s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i) * 18ms)}@keyframes bwv{from{opacity:0;transform:translateY(10px)}}
.bio{transition:opacity .35s,filter .35s}.bio.bblur{opacity:0;filter:blur(8px)}
/* ---------- footer + page loaders ---------- */
.pfoot.hidden{display:none}
#ploader{position:fixed;inset:0;z-index:60;display:grid;place-items:center;background:#050508;transition:opacity .5s ease,visibility .5s;color:var(--accent)}
#ploader.gone{opacity:0;visibility:hidden}
#ploader .pl-t{position:absolute;bottom:18vh;left:0;right:0;text-align:center;font:600 .78rem/1 var(--font),system-ui;letter-spacing:.45em;color:#e8e8ef;opacity:.85}
.pl-orbit{position:relative;width:70px;height:70px}.pl-orbit i{position:absolute;inset:0;border-radius:50%;border:2px solid transparent;border-top-color:var(--accent);animation:aspin 1.1s cubic-bezier(.5,.2,.5,.8) infinite;filter:drop-shadow(0 0 6px var(--accent))}.pl-orbit i:nth-child(2){inset:10px;animation-duration:1.5s;animation-direction:reverse;border-top-color:#fff}.pl-orbit i:nth-child(3){inset:22px;animation-duration:.9s}
.pl-squares{display:grid;grid-template-columns:repeat(3,14px);gap:5px}.pl-squares i{width:14px;height:14px;border-radius:3px;background:var(--accent);animation:plsq 1.2s ease-in-out infinite}.pl-squares i:nth-child(1){animation-delay:0.0s}.pl-squares i:nth-child(2){animation-delay:0.1s}.pl-squares i:nth-child(3){animation-delay:0.2s}.pl-squares i:nth-child(4){animation-delay:0.1s}.pl-squares i:nth-child(5){animation-delay:0.2s}.pl-squares i:nth-child(6){animation-delay:0.3s}.pl-squares i:nth-child(7){animation-delay:0.2s}.pl-squares i:nth-child(8){animation-delay:0.3s}.pl-squares i:nth-child(9){animation-delay:0.4s}@keyframes plsq{0%,70%,100%{transform:scale(1);opacity:1}35%{transform:scale(.3);opacity:.3}}
.pl-wave{display:flex;align-items:center;gap:5px;height:44px}.pl-wave i{width:6px;height:100%;border-radius:4px;background:var(--accent);animation:plw 1s ease-in-out infinite;box-shadow:0 0 10px var(--accent)}.pl-wave i:nth-child(1){animation-delay:0.00s}.pl-wave i:nth-child(2){animation-delay:0.08s}.pl-wave i:nth-child(3){animation-delay:0.16s}.pl-wave i:nth-child(4){animation-delay:0.24s}.pl-wave i:nth-child(5){animation-delay:0.32s}.pl-wave i:nth-child(6){animation-delay:0.40s}.pl-wave i:nth-child(7){animation-delay:0.48s}@keyframes plw{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
.pl-inf{width:110px;fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-dasharray:60 160;animation:plinf 1.4s linear infinite;filter:drop-shadow(0 0 6px var(--accent))}@keyframes plinf{to{stroke-dashoffset:-220}}
.pl-ring{width:64px;height:64px;border-radius:50%;border:3px solid color-mix(in srgb,var(--accent) 20%,transparent);border-top-color:var(--accent);animation:aspin .8s linear infinite;box-shadow:0 0 24px color-mix(in srgb,var(--accent) 35%,transparent)}
.pl-bars{display:flex;gap:6px;height:44px;align-items:center}.pl-bars i{width:6px;height:100%;border-radius:4px;background:var(--accent);animation:plb 1s ease-in-out infinite}.pl-bars i:nth-child(2){animation-delay:.12s}.pl-bars i:nth-child(3){animation-delay:.24s}.pl-bars i:nth-child(4){animation-delay:.36s}.pl-bars i:nth-child(5){animation-delay:.48s}
@keyframes plb{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
.pl-pulse{width:26px;height:26px;border-radius:50%;background:var(--accent);animation:plp 1.2s ease-out infinite}@keyframes plp{from{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 70%,transparent)}to{box-shadow:0 0 0 46px transparent}}
.pl-glitch{font:900 2.6rem/1 var(--namefont,var(--font)),system-ui;color:#fff;position:relative;letter-spacing:.06em}.pl-glitch::before,.pl-glitch::after{content:attr(data-t);position:absolute;inset:0}.pl-glitch::before{color:#0ff;animation:gl1 1.2s infinite steps(2);clip-path:inset(0 0 55% 0)}.pl-glitch::after{color:#f0f;animation:gl2 1.5s infinite steps(2);clip-path:inset(55% 0 0 0)}
.pl-moon{width:90px;height:90px;border-radius:50%;box-shadow:inset -22px -6px 0 0 var(--accent);animation:plm 2.4s ease-in-out infinite;filter:drop-shadow(0 0 18px var(--accent))}@keyframes plm{50%{box-shadow:inset 22px -6px 0 0 var(--accent)}}
.pl-dots{display:flex;gap:10px}.pl-dots i{width:12px;height:12px;border-radius:50%;background:var(--accent);animation:pld 1.2s ease-in-out infinite}.pl-dots i:nth-child(2){animation-delay:.15s}.pl-dots i:nth-child(3){animation-delay:.3s}@keyframes pld{0%,80%,100%{transform:scale(.4);opacity:.4}40%{transform:scale(1);opacity:1}}
.pl-typing{font:600 1.1rem/1 'JetBrains Mono',ui-monospace,monospace;color:#e8e8ef}.pl-typing::after{content:'_';color:var(--accent);animation:blink 1s steps(1) infinite}
.pl-katana{position:relative;width:min(60vmin,320px);height:min(60vmin,320px)}.pl-katana i{position:absolute;left:50%;top:50%;width:100%;height:4px;margin:-2px 0 0 -50%;border-radius:4px;background:linear-gradient(90deg,#3a2a10 0 16%,#c99530 16% 19%,#fff 19%,#d5dbe3 70%,transparent);box-shadow:0 0 14px var(--accent);animation:plk1 .9s cubic-bezier(.6,0,.3,1) both}.pl-katana i:nth-child(2){animation-name:plk2}
@keyframes plk1{from{transform:rotate(-40deg) translateX(-60%);opacity:0}to{transform:rotate(-40deg)}}@keyframes plk2{from{transform:scaleX(-1) rotate(-40deg) translateX(-60%);opacity:0}to{transform:scaleX(-1) rotate(-40deg)}}
/* ---------- more players ---------- */
.player.pl-mini{width:auto!important;max-width:none;padding:6px!important;border-radius:999px;gap:6px}.player.pl-mini .pinfo,.player.pl-mini .bar,.player.pl-mini .ptime,.player.pl-mini input[type=range]{display:none!important}.player.pl-mini .pcover{width:38px;height:38px;border-radius:50%;animation:aspin 6s linear infinite;animation-play-state:paused}.player.pl-mini.playing .pcover{animation-play-state:running}
.player.pl-neon{background:rgba(5,5,10,.85)!important;border:1px solid var(--accent)!important;box-shadow:0 0 12px var(--accent),inset 0 0 12px color-mix(in srgb,var(--accent) 35%,transparent)!important}.player.pl-neon .pinfo b,.player.pl-neon button{color:#fff;text-shadow:0 0 8px var(--accent)}
.player.pl-retro{background:linear-gradient(#d8d2c2,#b9b2a0)!important;color:#222!important;border:3px solid #333!important;border-radius:8px!important;box-shadow:inset 0 2px 0 #fff,0 6px 0 #555!important;font-family:'VT323','Share Tech Mono',monospace}.player.pl-retro button{color:#222!important}.player.pl-retro .pinfo{background:#9bbc0f;color:#0f380f;padding:4px 8px;border-radius:4px;border:2px solid #333}
/* ---------- ✨ card engines (React Bits Holo / Spotlight / Profile / Card Nav ports) ---------- */
.vc-holo{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;pointer-events:none;mix-blend-mode:screen;opacity:0;transition:opacity .7s ease;z-index:4}
.vc-holo.on{opacity:1}.card .vc-holo.cholo.on{opacity:.95;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 48%,rgba(0,0,0,.45) 20%,#000 85%);mask-image:radial-gradient(ellipse 70% 60% at 50% 48%,rgba(0,0,0,.45) 20%,#000 85%)}
.card.cfx-holo.hgl::after{display:none}
.vc-spot{isolation:isolate}
.vc-spot__light,.vc-spot__grain,.vc-spot__border,.vc-spot__edge{position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.vc-spot__light,.vc-spot__grain{z-index:-1;opacity:0}
.vc-spot__grain{background-size:160px 160px;mix-blend-mode:overlay}
.vc-spot__border,.vc-spot__edge{z-index:6;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
.vc-spot__border{background:rgba(255,255,255,.05)}.vc-spot__edge{opacity:0}
/* new card effects */
.card .cstars{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;background-image:radial-gradient(1.4px 1.4px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 72% 12%,#fff,transparent),radial-gradient(1.6px 1.6px at 88% 46%,#fff,transparent),radial-gradient(1px 1px at 30% 64%,#fff,transparent),radial-gradient(1.3px 1.3px at 54% 86%,#fff,transparent),radial-gradient(1px 1px at 8% 82%,#fff,transparent),radial-gradient(1.2px 1.2px at 64% 38%,#fff,transparent),radial-gradient(1px 1px at 40% 8%,#fff,transparent),radial-gradient(2px 2px at 22% 40%,#fff,transparent),radial-gradient(1.5px 1.5px at 80% 74%,#fff,transparent),radial-gradient(1.8px 1.8px at 46% 52%,color-mix(in srgb,var(--accent) 60%,#fff),transparent),radial-gradient(1.2px 1.2px at 92% 90%,#fff,transparent);animation:cstw 3.6s ease-in-out infinite}
.card .cstars.s2{transform:rotate(180deg);animation-delay:-1.8s;filter:drop-shadow(0 0 3px var(--accent))}
@keyframes cstw{0%,100%{opacity:.25}50%{opacity:1}}
.card .cliquid{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:0;filter:blur(38px) saturate(1.2);opacity:.5}
.card .cliquid b{position:absolute;width:62%;aspect-ratio:1;border-radius:50%;background:var(--accent);animation:cliq 14s ease-in-out infinite alternate}
.card .cliquid b:nth-child(1){left:-12%;top:-10%}
.card .cliquid b:nth-child(2){right:-18%;top:30%;background:color-mix(in srgb,var(--accent) 45%,#22d3ee);animation-duration:17s;animation-delay:-6s}
.card .cliquid b:nth-child(3){left:20%;bottom:-24%;background:color-mix(in srgb,var(--accent) 40%,#f472b6);animation-duration:21s;animation-delay:-11s}
@keyframes cliq{0%{transform:translate(0,0) scale(1)}33%{transform:translate(28%,18%) scale(1.25)}66%{transform:translate(-14%,30%) scale(.85)}100%{transform:translate(18%,-16%) scale(1.1)}}
.card .cbeam{position:absolute;left:50%;top:-30%;width:150%;height:130%;translate:-50% 0;pointer-events:none;z-index:0;background:conic-gradient(from 0deg at 50% 0%,transparent 0deg 158deg,color-mix(in srgb,var(--accent) 55%,transparent) 171deg,rgba(255,255,255,.45) 180deg,color-mix(in srgb,var(--accent) 55%,transparent) 189deg,transparent 202deg 360deg);filter:blur(12px);opacity:.75;transform-origin:50% 0;animation:cbeam 7s ease-in-out infinite;mix-blend-mode:screen}
@keyframes cbeam{0%,100%{transform:rotate(-22deg)}50%{transform:rotate(22deg)}}
.card.cfx-prism::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ang),#ff9ff3,#feca57,#48dbfb,#1dd1a1,#a29bfe,#ff9ff3);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:spinang 6s linear infinite;pointer-events:none;z-index:3;filter:saturate(.9)}
.card.cfx-prism::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;background:linear-gradient(120deg,transparent 30%,rgba(255,159,243,.09) 42%,rgba(72,219,251,.09) 50%,rgba(254,202,87,.08) 58%,transparent 70%);background-size:300% 100%;animation:cprism 5.5s ease-in-out infinite;mix-blend-mode:screen}
@keyframes cprism{0%,100%{background-position:100% 0}50%{background-position:0 0}}
@keyframes spinang{to{--ang:360deg}}
/* card surface: pattern, gloss */
.card .cpat{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 70%,rgba(0,0,0,.25) 100%);mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.55) 70%,rgba(0,0,0,.25) 100%)}
.cp-dots{background:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1.6px) 0 0/16px 16px}
.cp-grid{background:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px) 0 0/22px 22px,linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px) 0 0/22px 22px}
.cp-lines{background:repeating-linear-gradient(0deg,rgba(255,255,255,.14) 0 1px,transparent 1px 7px)}
.cp-diagonal{background:repeating-linear-gradient(45deg,rgba(255,255,255,.13) 0 1px,transparent 1px 9px)}
.cp-checker{background:conic-gradient(rgba(255,255,255,.1) 25%,transparent 0 50%,rgba(255,255,255,.1) 0 75%,transparent 0) 0 0/26px 26px}
.cp-noise{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") 0 0/180px 180px;mix-blend-mode:overlay}
.cp-waves{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='24'%3E%3Cpath d='M0 12c10 0 10-8 20-8s10 8 20 8 10-8 20-8' fill='none' stroke='white' stroke-opacity='.28' stroke-width='1.2'/%3E%3C/svg%3E") 0 0/60px 24px}
.cp-hex{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cpath d='M14 0l14 8v16l-14 8L0 24V8zM14 32l14 8v16M14 32 0 40v16' fill='none' stroke='white' stroke-opacity='.22' stroke-width='1'/%3E%3C/svg%3E") 0 0/28px 49px}
.cp-stars{background-image:radial-gradient(1px 1px at 20px 30px,#fff,transparent),radial-gradient(1px 1px at 90px 70px,#fff,transparent),radial-gradient(1.5px 1.5px at 130px 20px,#fff,transparent),radial-gradient(1px 1px at 50px 110px,#fff,transparent),radial-gradient(1.2px 1.2px at 160px 130px,#fff,transparent),radial-gradient(1px 1px at 110px 150px,#fff,transparent);background-size:180px 180px}
.card .cshine{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.03) 28%,transparent 45%);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(0,0,0,.25)}

/* ---------- 🪪 Profile Card layout (React Bits ProfileCard) ---------- */
.card.lay-profilecard,.bc-profile{--pc-light-x:50%;--pc-light-y:50%;--pc-pointer-x:50%;--pc-pointer-y:50%;--pc-band-x:50%;--pc-band-y:50%;--pc-reach:0;--pc-rotate-x:0deg;--pc-rotate-y:0deg;--pc-shift-x:0px;--pc-shift-y:0px;--pc-tilt:0;--pc-active:0;--pc-holo:.8;--pc-glare:.5;
  --pc-tile:linear-gradient(180deg,#3a3644 0%,#27242f 100%);--pc-tile-edge:rgba(255,255,255,.07);--pc-tile-hi:rgba(255,255,255,.12);--pc-tile-shadow:0 4px 10px -4px rgba(0,0,0,.7);--pc-frame-edge:rgba(255,255,255,.08);--pc-frame-hi:rgba(255,255,255,.07);--pc-ink:#f4f4f5;--pc-muted:rgba(244,244,245,.6);--pc-shade-c:rgba(0,0,0,.4);--pc-sheen-c:rgba(255,255,255,.16);--pc-blend:color-dodge;--pc-status:#22c55e;
  --pc-spectrum:repeating-linear-gradient(0deg,hsl(2,100%,73%) 5%,hsl(53,100%,69%) 10%,hsl(93,100%,69%) 15%,hsl(176,100%,76%) 20%,hsl(228,100%,74%) 25%,hsl(260,100%,76%) 30%,hsl(2,100%,73%) 35%);
  --pc-bars:repeating-linear-gradient(-45deg,#0e152e 0%,hsl(180,10%,60%) 3.8%,hsl(180,29%,66%) 4.5%,hsl(180,10%,60%) 5.2%,#0e152e 10%,#0e152e 12%);
  --pc-falloff:radial-gradient(farthest-corner circle at var(--pc-pointer-x) var(--pc-pointer-y),hsla(0,0%,0%,.1) 12%,hsla(0,0%,0%,.15) 20%,hsla(0,0%,0%,.25) 120%)}
.card.lay-profilecard{width:min(var(--width),380px,calc(100vw - 32px));padding:10px 10px 16px;border-radius:calc(var(--radius) + 10px);overflow:visible;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.card.lay-profilecard.show.pcready{transform:perspective(1000px) rotateX(var(--pc-rotate-x)) rotateY(var(--pc-rotate-y));transition:opacity .9s ease,filter .9s ease}
.card.lay-profilecard .banner{display:none!important}
.card.lay-profilecard.pct-light{--card-bg:rgba(240,240,243,.82);--pc-tile:linear-gradient(180deg,#fff 0%,#f6f6f8 100%);--pc-tile-edge:rgba(24,24,27,.08);--pc-tile-hi:#fff;--pc-tile-shadow:0 4px 10px -5px rgba(24,24,27,.25);--pc-frame-edge:rgba(24,24,27,.07);--pc-frame-hi:rgba(255,255,255,.95);--pc-ink:#27272a;--pc-muted:rgba(39,39,42,.6);--pc-shade-c:rgba(24,24,27,.14);--pc-sheen-c:rgba(255,255,255,0);color:#27272a}
.card.lay-profilecard.pct-light .bio,.card.lay-profilecard.pct-light .meta,.card.lay-profilecard.pct-light .uname{color:#3f3f46}
.card.lay-profilecard.pct-accent{--pc-tile:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 12%) 0%,color-mix(in srgb,var(--accent),#000 18%) 100%)}
.pc-tile{position:relative;aspect-ratio:4/5;border-radius:var(--radius);background:var(--pc-tile);box-shadow:var(--pc-tile-shadow);overflow:hidden;isolation:isolate;margin:0;transform:translateZ(0)}
.pc-sheen,.pc-holo,.pc-scrim,.pc-tile-rim,.pc-glare,.pc-shade,.pc-rim{position:absolute!important;inset:0;border-radius:inherit;pointer-events:none}
.pc-photo{position:absolute;inset:calc(var(--pc-parallax,8px) * -1);width:calc(100% + 16px);height:calc(100% + 16px);object-fit:cover;object-position:center;transform:translate3d(var(--pc-shift-x),var(--pc-shift-y),0);pointer-events:none;user-select:none;-webkit-user-select:none;z-index:0}
.pc-noimg{display:grid;place-items:center;font-size:3.4rem;color:rgba(255,255,255,.25);background:var(--pc-tile)}
.pc-sheen{z-index:1;background:radial-gradient(farthest-corner circle at calc(var(--pc-light-x) - 10px) calc(var(--pc-light-y) - 10px),var(--pc-sheen-c) 0%,transparent 55%);opacity:calc(var(--pc-holo) * var(--pc-active))}
.pc-holo{z-index:1;background-image:var(--pc-spectrum),var(--pc-bars),var(--pc-falloff);background-position:0 var(--pc-band-y),var(--pc-band-x) var(--pc-band-y),center;background-size:500% 500%,300% 300%,200% 200%;background-blend-mode:color,hard-light;mix-blend-mode:var(--pc-blend);
  filter:brightness(calc(.66 + .19 * var(--pc-active))) contrast(calc(1.33 + .17 * var(--pc-active))) saturate(calc(.33 + .17 * var(--pc-active)));opacity:calc(var(--pc-holo) * (.1 + .55 * var(--pc-active)))}
.pc-holo.pat{-webkit-mask-image:var(--pc-pattern);-webkit-mask-size:42% auto;-webkit-mask-position:calc(50% - var(--pc-shift-x) * 1.5) calc(65% - var(--pc-shift-y) * 1.5);-webkit-mask-repeat:repeat;mask-image:var(--pc-pattern);mask-size:42% auto;mask-position:calc(50% - var(--pc-shift-x) * 1.5) calc(65% - var(--pc-shift-y) * 1.5);mask-repeat:repeat;opacity:calc(var(--pc-holo) * (.25 + .75 * var(--pc-active)))}
.pc-holo-glow,.pc-holo-shift{position:absolute;inset:0;opacity:calc(var(--pc-active) * .55)}
.pc-holo-glow{background-image:linear-gradient(45deg,hsl(176,100%,76%),hsl(228,100%,74%),hsl(260,100%,76%),hsl(2,100%,73%),hsl(53,100%,69%),hsl(93,100%,69%)),radial-gradient(circle at var(--pc-pointer-x) var(--pc-pointer-y),hsl(0,0%,70%) 0%,hsla(0,0%,30%,.2) 90%);background-size:250% 250%,100% 100%;background-position:var(--pc-pointer-x) var(--pc-pointer-y),center;background-blend-mode:color-dodge;filter:brightness(calc(2 - var(--pc-reach))) contrast(calc(var(--pc-reach) + 2)) saturate(calc(.5 + var(--pc-reach)));mix-blend-mode:luminosity}
.pc-holo-shift{background-image:var(--pc-spectrum),var(--pc-bars),var(--pc-falloff);background-position:0 var(--pc-band-y),calc(var(--pc-band-x) * .4) calc(var(--pc-band-y) * .5),center;background-size:200% 300%,700% 700%,100% 100%;background-blend-mode:color,hard-light;mix-blend-mode:difference;filter:brightness(.8) contrast(1.5)}
.pc-scrim{z-index:2;background:linear-gradient(to top,rgba(0,0,0,.66) 0%,rgba(0,0,0,.6) 8%,rgba(0,0,0,.5) 15%,rgba(0,0,0,.38) 22%,rgba(0,0,0,.24) 30%,rgba(0,0,0,.12) 38%,rgba(0,0,0,.04) 46%,rgba(0,0,0,0) 54%)}
.pc-info{position:absolute!important;left:18px;right:18px;bottom:16px;z-index:3;color:#fff;text-align:left}
.pc-info .name,.pc-info .nrow,.pc-name{margin:0!important;justify-content:flex-start;text-align:left;line-height:1.15;letter-spacing:-.01em}
.pc-name{font-size:19px;font-weight:700;color:#fff}
.pc-title{margin:4px 0 0;font-size:14px;line-height:1.45;color:rgba(255,255,255,.8)}
.pc-tile-rim{z-index:4;box-shadow:inset 0 0 0 1px var(--pc-tile-edge),inset 0 1px 0 var(--pc-tile-hi)}
.pc-foot{display:flex;align-items:center;gap:12px;min-width:0;padding:12px 10px 4px;text-align:left}
.pc-mini{flex:none;margin:0!important}.pc-mini .avatar{border-width:2px!important;box-shadow:none!important}.pc-mini .status-dot{width:13px;height:13px;border-width:2px;right:-1px;bottom:-1px}.pc-mini .deco{left:-14%;top:-14%;width:128%;height:128%}.pc-mini .avsticker{display:none}
.pc-mini2{flex:none;width:36px;height:36px;border-radius:50%;overflow:hidden;box-shadow:inset 0 0 0 1px var(--pc-tile-edge)}.pc-mini2 img{width:100%;height:100%;object-fit:cover;display:block}
.pc-meta{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}
.pc-handle{overflow:hidden;font-size:14px;font-weight:650;line-height:1.25;color:var(--pc-ink);white-space:nowrap;text-overflow:ellipsis}
.pc-status{display:flex;align-items:center;gap:6px;font-size:12.5px;line-height:1.25;color:var(--pc-muted);white-space:nowrap}
.pc-status::before{content:'';flex:none;width:6px;height:6px;border-radius:50%;background:var(--pc-status);box-shadow:0 0 8px var(--pc-status)}
.pc-contact{display:inline-flex;align-items:center;gap:7px;flex:none;height:36px;padding:0 14px;border-radius:calc(var(--radius) * .6);background:var(--pc-tile);box-shadow:inset 0 0 0 1px var(--pc-tile-edge),inset 0 1px 0 var(--pc-tile-hi),var(--pc-tile-shadow);color:var(--pc-ink);font-size:13px;font-weight:650;text-decoration:none;transition:filter .2s,transform .2s}
.pc-contact:hover{filter:brightness(1.14)}.pc-contact:active{transform:scale(.96)}
.card.lay-profilecard .pc-foot~*{margin-top:12px}.card.lay-profilecard .pc-foot~.badges{margin-top:10px}
.pc-glare{z-index:7;background:radial-gradient(farthest-corner circle at var(--pc-light-x) var(--pc-light-y),rgba(255,255,255,.8) 0%,rgba(255,255,255,.36) 20%,rgba(255,255,255,0) 60%);mix-blend-mode:overlay;opacity:calc(var(--pc-glare) * var(--pc-active))}
.pc-shade{z-index:7;background:radial-gradient(farthest-corner circle at var(--pc-light-x) var(--pc-light-y),transparent 30%,var(--pc-shade-c) 100%);opacity:calc(var(--pc-glare) * var(--pc-tilt))}
.pc-rim{z-index:7;box-shadow:inset 0 0 0 1px var(--pc-frame-edge),inset 0 1px 0 var(--pc-frame-hi)}

/* ---------- 🃏 fancy section cards ---------- */
.b-card2{position:relative;display:block;width:100%;box-sizing:border-box;color:inherit;text-decoration:none;--cc:var(--accent)}
.bc-arw{display:inline-block;width:14px;height:14px;flex:none}.bc-arw svg{width:100%;height:100%;display:block}
.b-card2 .ct{font-weight:750;font-size:1.05rem;letter-spacing:-.01em}.b-card2 .cd{opacity:.72;font-size:.88rem;line-height:1.45;margin-top:4px}
/* holo trading card */
.bc-holo{display:grid;place-items:center;padding:6px 0}
.bc-holo .hc-card{position:relative;width:min(290px,100%);aspect-ratio:63/88;border-radius:14px;user-select:none;-webkit-user-select:none;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.bc-holo.flip .hc-card{cursor:pointer}
.hc-shadow{position:absolute;inset:10% 7% -4%;border-radius:14px;background:rgba(0,0,0,.45);filter:blur(26px);pointer-events:none;transform:scale(.9)}
.hc-rotor{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.bc-holo.hgl .hc-rotor{transition:none}
.bc-holo.flipped:not(.hgl) .hc-rotor{transform:rotateY(180deg)}
.hc-face{position:absolute;inset:0;overflow:hidden;border-radius:14px;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#111;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.hc-back{transform:rotateY(180deg)}
.hc-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.hc-blank{display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--cc) 70%,#fff),color-mix(in srgb,var(--cc) 40%,#000) 70%)}.hc-blank b{font-size:5rem;font-weight:900;color:rgba(255,255,255,.85);text-shadow:0 6px 30px rgba(0,0,0,.35)}
.hc-cap{position:absolute;left:0;right:0;bottom:0;padding:44px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.78));text-align:left;z-index:2;color:#fff}
.hc-face .vc-holo{z-index:1}.vc-holo.art{mix-blend-mode:normal}.vc-holo.art.on{opacity:0}.vc-holo.art.ready.on{opacity:1}
.hc-bk{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:22px;text-align:left;background:radial-gradient(circle at 20% 0%,color-mix(in srgb,var(--cc) 40%,#111),#0b0b10 70%);color:#fff}
.hc-bk b{font-size:1.25rem}.hc-bk p{opacity:.8;font-size:.92rem;line-height:1.5;white-space:pre-line}
.hc-link{position:absolute;inset:0;z-index:5;border-radius:14px}
.bc-holo:not(.hgl) .hc-front::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(115deg,transparent 20%,rgba(255,159,243,.22) 35%,rgba(72,219,251,.22) 50%,rgba(254,202,87,.2) 65%,transparent 80%);background-size:250% 250%;mix-blend-mode:screen;animation:hcshine 4s ease-in-out infinite}
@keyframes hcshine{0%,100%{background-position:100% 50%}50%{background-position:0 50%}}
.bc-go{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:9px 14px;border-radius:12px;background:var(--cc);color:#fff;font-weight:700;font-size:.85rem;text-decoration:none;box-shadow:0 8px 20px -8px var(--cc)}
/* spotlight */
.bc-spot{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:24px;background:#0f0f12;box-shadow:0 24px 48px -24px rgba(0,0,0,.6);text-align:left;overflow:hidden}
.bc-spot .bs-media{border-radius:14px;overflow:hidden;aspect-ratio:16/9;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.bc-spot .bs-media img{width:100%;height:100%;object-fit:cover;display:block}
.bc-spot .bs-ico{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(180deg,#2a2a31,#17171c);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),inset 0 0 0 1px rgba(255,255,255,.06);color:var(--cc);font-size:1.1rem}
.bc-spot .bs-cta{display:inline-flex;align-items:center;gap:6px;font-weight:650;font-size:.88rem;color:var(--cc);margin-top:2px}
.bc-spot:hover .bs-cta .bc-arw{transform:translate(2px,-2px)}.bc-spot .bc-arw{transition:transform .3s}
/* profile (mini) */
.bc-profile{display:grid;place-items:center;perspective:1000px;padding:4px 0}
.bc-profile .pc-body{position:relative;display:flex;flex-direction:column;gap:8px;width:min(340px,100%);padding:10px;border-radius:26px;background:rgba(38,35,46,.66);box-shadow:0 22px 44px -20px rgba(0,0,0,.8),0 6px 16px -8px rgba(0,0,0,.5);backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);transform:rotateX(var(--pc-rotate-x)) rotateY(var(--pc-rotate-y));will-change:transform}
.bc-profile .pc-tile{border-radius:16px}.bc-profile .pc-foot{padding:6px 12px 6px}
/* flip */
.bc-flip{perspective:1000px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.bc-flip .fl-in{position:relative;aspect-ratio:16/10;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.3,1.4,.4,1)}
.bc-flip.on .fl-in{transform:rotateY(180deg)}
@media (hover:hover){.bc-flip:hover .fl-in{transform:rotateY(180deg)}.bc-flip.on:hover .fl-in{transform:none}}
.fl-face{position:absolute;inset:0;border-radius:20px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 18px 40px -18px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.08)}
.fl-front img,.fl-blank{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fl-blank{background:radial-gradient(circle at 25% 15%,color-mix(in srgb,var(--cc) 75%,#fff),color-mix(in srgb,var(--cc) 35%,#000) 75%)}
.fl-cap{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:40px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;text-align:left}
.fl-hint{font-size:.72rem;opacity:.7;white-space:nowrap}
.fl-back{transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;gap:10px;padding:22px;text-align:left;background:linear-gradient(140deg,color-mix(in srgb,var(--cc) 35%,#0d0d12),#0b0b10 70%)}
.fl-back b{font-size:1.15rem}.fl-back p{opacity:.8;line-height:1.5;font-size:.92rem;white-space:pre-line}
/* polaroid */
.bc-pola{margin:10px auto;width:min(300px,92%);padding:12px 12px 16px;background:#fbfaf6;color:#26232b;border-radius:4px;box-shadow:0 18px 34px -14px rgba(0,0,0,.6),0 2px 4px rgba(0,0,0,.25);transform:rotate(var(--rot,-2deg));transition:transform .5s cubic-bezier(.3,1.5,.5,1),box-shadow .4s}
.bc-pola:hover{transform:rotate(0deg) translateY(-6px) scale(1.03);box-shadow:0 30px 50px -18px rgba(0,0,0,.65)}
.pl-tape{position:absolute;top:-12px;left:50%;width:96px;height:26px;translate:-50% 0;rotate:-3deg;background:color-mix(in srgb,var(--cc) 30%,rgba(255,255,255,.55));opacity:.85;box-shadow:0 1px 3px rgba(0,0,0,.2);backdrop-filter:blur(2px)}
.pl-img{aspect-ratio:1;overflow:hidden;background:#222}.pl-img img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.08) contrast(1.03)}
.pl-blank{width:100%;height:100%;background:linear-gradient(135deg,color-mix(in srgb,var(--cc) 60%,#fff),color-mix(in srgb,var(--cc) 30%,#000))}
.bc-pola figcaption{padding-top:12px;font-family:'Caveat',cursive;text-align:center;line-height:1.1}.bc-pola figcaption b{display:block;font-size:1.65rem;font-weight:700}.bc-pola figcaption span{display:block;font-size:1.2rem;opacity:.75;margin-top:2px}
/* ticket */
.bc-ticket{display:flex;min-height:118px;border-radius:18px;filter:drop-shadow(0 16px 26px rgba(0,0,0,.45));text-align:left;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.bc-ticket:hover{transform:translateY(-3px) rotate(-.6deg)}
.tk-main,.tk-stub{position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--cc) 26%,#141419),#101014)}
.tk-main{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:18px 20px;border-radius:18px 0 0 18px;-webkit-mask:radial-gradient(circle 11px at 100% 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 11px at 100% 100%,#0000 98%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle 11px at 100% 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 11px at 100% 100%,#0000 98%,#000) bottom/100% 51% no-repeat}
.tk-stub{width:112px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 10px;border-radius:0 18px 18px 0;background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 55%,#000));color:#fff;-webkit-mask:radial-gradient(circle 11px at 0 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 11px at 0 100%,#0000 98%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle 11px at 0 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle 11px at 0 100%,#0000 98%,#000) bottom/100% 51% no-repeat}
.tk-stub::before{content:'';position:absolute;left:-1px;top:14px;bottom:14px;border-left:2px dashed rgba(255,255,255,.4)}
.tk-stub i{font-size:1.6rem;opacity:.9}.tk-img{width:56px;height:56px;border-radius:12px;object-fit:cover;box-shadow:0 4px 12px rgba(0,0,0,.35)}
.tk-btn{font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.25)}
.tk-kicker{font-size:.66rem;font-weight:800;letter-spacing:.22em;color:var(--cc);text-transform:uppercase;margin-bottom:4px}.tk-meta{font-size:.78rem;opacity:.6;margin-top:6px;font-family:ui-monospace,monospace}
/* neon */
.bc-neon{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:18px;background:rgba(6,6,12,.82);border:1.5px solid var(--cc);box-shadow:0 0 6px var(--cc),0 0 22px color-mix(in srgb,var(--cc) 55%,transparent),inset 0 0 18px color-mix(in srgb,var(--cc) 30%,transparent);text-align:left;animation:nnon 6s linear infinite}
.bc-neon .ct{color:#fff;text-shadow:0 0 6px var(--cc),0 0 18px var(--cc)}.bc-neon .nn-body{flex:1;min-width:0}
.nn-img{width:58px;height:58px;border-radius:14px;object-fit:cover;flex:none;box-shadow:0 0 0 1.5px var(--cc),0 0 14px var(--cc)}
.nn-go{display:inline-flex;gap:6px;align-items:center;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--cc);text-shadow:0 0 8px var(--cc)}
.bc-neon:hover{box-shadow:0 0 10px var(--cc),0 0 36px var(--cc),inset 0 0 26px color-mix(in srgb,var(--cc) 40%,transparent)}
@keyframes nnon{0%,18%,22%,62%,64%,100%{opacity:1}20%,63%{opacity:.72}}
/* stack */
.bc-stack{padding:10px 8px 14px;text-align:left}
.sk-l{position:absolute;inset:10px 8px 14px;border-radius:20px;background:color-mix(in srgb,var(--cc) 30%,#16161c);box-shadow:0 10px 24px -10px rgba(0,0,0,.6);transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.sk-l.l1{transform:rotate(-3.5deg) translateY(4px);background:color-mix(in srgb,var(--cc) 45%,#16161c)}.sk-l.l2{transform:rotate(4deg) translateY(8px);background:color-mix(in srgb,var(--cc) 22%,#16161c)}
.bc-stack:hover .sk-l.l1{transform:rotate(-8deg) translate(-14px,6px)}.bc-stack:hover .sk-l.l2{transform:rotate(9deg) translate(16px,10px)}
.sk-top{position:relative;display:flex;align-items:center;gap:14px;padding:16px;border-radius:20px;background:linear-gradient(180deg,#1f1f26,#141419);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),inset 0 0 0 1px rgba(255,255,255,.06),0 14px 30px -12px rgba(0,0,0,.7);transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.bc-stack:hover .sk-top{transform:translateY(-4px)}
.sk-img{width:64px;height:64px;border-radius:14px;object-fit:cover;flex:none}.sk-body{min-width:0}
/* glass */
.bc-glass{position:relative;min-height:190px;border-radius:24px;overflow:hidden;display:flex;align-items:flex-end;padding:12px;box-shadow:0 20px 40px -18px rgba(0,0,0,.7)}
.gl-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.gl-grad{background:radial-gradient(circle at 20% 20%,var(--cc),transparent 55%),radial-gradient(circle at 80% 70%,color-mix(in srgb,var(--cc) 40%,#22d3ee),transparent 55%),#0d0d14}
.bc-glass:hover .gl-bg{transform:scale(1.06)}
.gl-pane{position:relative;width:100%;display:block;padding:14px 46px 14px 16px;border-radius:16px;text-align:left;background:rgba(255,255,255,.1);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 0 0 1px rgba(255,255,255,.14);color:#fff}
.gl-go{position:absolute;right:12px;top:50%;translate:0 -50%;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111}
/* section card hover: shine */
.lkh-shine{overflow:hidden}.lkh-shine::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.16) 50%,transparent 65%);background-size:250% 100%;background-position:130% 0;transition:background-position .9s ease;border-radius:inherit}
.lkh-shine:hover::after{background-position:-30% 0}

/* ---------- 🧭 Card Nav section (React Bits CardNav) ---------- */
.b-cnav{position:relative;z-index:20;width:100%;height:60px;font-size:14px;line-height:1.4;-webkit-tap-highlight-color:transparent;--cn-panel:rgba(38,35,46,.72);--cn-edge:rgba(255,255,255,.08);--cn-hi:rgba(255,255,255,.07);--cn-text:#f4f4f5;--cn-muted:rgba(244,244,245,.56);--cn-hover:rgba(255,255,255,.06);--cn-tile:linear-gradient(180deg,#34303d 0%,#27242f 100%);--cn-cta:linear-gradient(180deg,#fff 0%,#ebebf0 100%);--cn-cta-ink:#121016;--cn-blur:blur(20px) saturate(1.6)}
.b-cnav.cn-s-solid{--cn-panel:#26232e;--cn-blur:none}
.b-cnav.cn-s-accent{--cn-panel:color-mix(in srgb,var(--cn-acc,var(--accent)) 30%,rgba(20,18,26,.85));--cn-tile:linear-gradient(180deg,color-mix(in srgb,var(--cn-acc,var(--accent)) 26%,#2b2733),color-mix(in srgb,var(--cn-acc,var(--accent)) 14%,#1d1a23));--cn-cta:var(--cn-acc,var(--accent));--cn-cta-ink:#fff}
.cn-panel{position:absolute;top:0;left:0;right:0;height:60px;border-radius:18px;overflow:hidden;background:var(--cn-panel);box-shadow:0 24px 48px -20px rgba(0,0,0,.8),0 6px 16px -8px rgba(0,0,0,.5);backdrop-filter:var(--cn-blur);-webkit-backdrop-filter:var(--cn-blur)}
.cn-rim{position:absolute;inset:0;z-index:3;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--cn-edge),inset 0 1px 0 var(--cn-hi);pointer-events:none}
.cn-bar{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:60px;padding:0 8px}
.cn-menu{display:inline-flex;align-items:center;gap:10px;justify-self:start;height:44px;padding:0 14px 0 16px;border:0;border-radius:10px;background:none;color:var(--cn-text);font:inherit;font-weight:500;cursor:pointer;transition:background-color .2s}
.cn-menu:hover{background:var(--cn-hover)}
.cn-burger{position:relative;width:18px;height:12px}
.cn-line{position:absolute;left:0;width:100%;height:1.5px;border-radius:2px;background:currentColor;transition:transform .5s cubic-bezier(.22,1,.36,1),top .5s cubic-bezier(.22,1,.36,1)}
.cn-line.t{top:2.25px}.cn-line.b{top:8.25px}
.b-cnav[data-open] .cn-line.t{top:5.25px;transform:rotate(45deg)}.b-cnav[data-open] .cn-line.b{top:5.25px;transform:rotate(-45deg)}
.cn-mlabel{position:relative;display:inline-grid;overflow:hidden}
.cn-word{grid-area:1/1;transition:transform .5s cubic-bezier(.22,1,.36,1)}.cn-word.c{transform:translateY(110%)}
.b-cnav[data-open] .cn-word.o{transform:translateY(-110%)}.b-cnav[data-open] .cn-word.c{transform:translateY(0)}
.cn-logo{display:inline-flex;align-items:center;justify-self:center;height:26px;color:var(--cn-text);min-width:0}
.cn-logo img{height:100%;width:auto;display:block}.cn-word2{font-weight:800;letter-spacing:-.02em;font-size:1.05rem}
.cn-me{display:inline-flex;align-items:center;gap:8px;font-weight:700}.cn-me img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.cn-cta{display:inline-flex;align-items:center;justify-content:center;justify-self:end;height:44px;padding:0 16px;border-radius:10px;background:var(--cn-cta);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 16px -6px rgba(0,0,0,.6);color:var(--cn-cta-ink);font-weight:650;white-space:nowrap;text-decoration:none;transition:filter .2s}
.cn-cta:hover{filter:brightness(.94)}.cn-cta.ghost{visibility:hidden;width:44px;padding:0}
.cn-content{position:absolute;top:60px;left:0;right:0;display:flex;flex-direction:column;gap:8px;padding:0 8px 8px;perspective:900px;visibility:hidden}
.b-cnav[data-shown] .cn-content{visibility:visible}
.cn-cards{display:flex;gap:8px}
.cn-card{position:relative;display:flex;flex:1 1 0;flex-direction:column;gap:18px;min-width:0;min-height:168px;padding:16px 16px 14px;border-radius:10px;background:var(--cn-tile);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 1px 0 rgba(255,255,255,.1),0 4px 10px -4px rgba(0,0,0,.6);color:var(--cn-text);text-align:left;transform-origin:50% 0;will-change:transform,opacity;opacity:0}
.cn-card[data-tinted]{box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 4px 10px -4px rgba(0,0,0,.45)}
.cn-head{display:flex;flex-direction:column;gap:4px}.cn-label{font-size:17px;font-weight:650;letter-spacing:-.015em}
.cn-desc{margin:0;color:var(--cn-muted);font-size:13px;line-height:1.45}.cn-card[data-tinted] .cn-desc{color:inherit;opacity:.72}
.cn-links{display:flex;flex-direction:column;gap:2px;margin:auto 0 0;padding:0;list-style:none}
.cn-link{display:inline-flex;align-items:center;gap:8px;padding:3px 0;color:inherit;font-size:14px;font-weight:500;text-decoration:none;opacity:.82;transition:opacity .2s}
.cn-link:hover{opacity:1}
.cn-arrow{position:relative;display:inline-block;flex:none;width:14px;height:14px;overflow:hidden}
.cn-ai{position:absolute;inset:0;transition:transform .45s cubic-bezier(.22,1,.36,1)}.cn-ai svg{width:100%;height:100%;display:block}
.cn-ai.in{transform:translate(-110%,110%)}
.cn-link:hover .cn-ai.out{transform:translate(110%,-110%)}.cn-link:hover .cn-ai.in{transform:translate(0,0)}
.cn-cta.wide{display:none;width:100%;height:44px}
.b-cnav[data-narrow] .cn-bar{grid-template-columns:auto 1fr auto}
.b-cnav[data-narrow] .cn-logo{grid-column:1;grid-row:1;justify-self:start;padding-left:12px}
.b-cnav[data-narrow] .cn-menu{grid-column:3;grid-row:1;justify-self:end}
.b-cnav[data-narrow] .cn-bar>.cn-cta{display:none}
.b-cnav[data-narrow] .cn-cards{flex-direction:column}
.b-cnav[data-narrow] .cn-card{flex:none;min-height:0;gap:10px;padding:14px 14px 12px}
.b-cnav[data-narrow] .cn-links{flex-direction:row;flex-wrap:wrap;gap:2px 16px}
.b-cnav[data-narrow] .cn-cta.wide{display:flex}
@media (prefers-reduced-motion:reduce){.cn-line,.cn-word,.cn-ai{transition:none}}
/* ---------- 🎴 more card styles ---------- */
.b-card2.bsz-sm{max-width:300px;margin-inline:auto}.b-card2.bsz-lg{max-width:560px;margin-inline:auto}.b-card2.bsz-md{--hcw:290px}
.bc-holo.bsz-sm .hc-card{width:min(220px,100%)}.bc-holo.bsz-lg .hc-card{width:min(360px,100%)}.bc-holo.bsz-full .hc-card{width:min(440px,100%)}
.bc-profile.bsz-sm .pc-body{width:min(270px,100%)}.bc-profile.bsz-lg .pc-body,.bc-profile.bsz-full .pc-body{width:min(420px,100%)}
.bc-rarity.bsz-sm .rc-card{width:min(220px,100%)}.bc-rarity.bsz-lg .rc-card{width:min(340px,100%)}.bc-rarity.bsz-full .rc-card{width:min(400px,100%)}
/* ribbon in the corner */
.has-rib{position:relative}
.bc-rib{position:absolute;top:-6px;right:-6px;width:92px;height:92px;overflow:hidden;z-index:9;pointer-events:none}
.bc-rib span{position:absolute;top:22px;right:-30px;width:130px;padding:5px 0;transform:rotate(45deg);background:linear-gradient(90deg,var(--cc),color-mix(in srgb,var(--cc) 55%,#fff));color:#fff;font:800 11px/1 system-ui,sans-serif;letter-spacing:.12em;text-align:center;text-transform:uppercase;box-shadow:0 4px 10px rgba(0,0,0,.35)}
.bc-rib::before,.bc-rib::after{content:'';position:absolute;border:3px solid color-mix(in srgb,var(--cc) 55%,#000);border-top-color:transparent;border-right-color:transparent}
.bc-rib::before{top:0;left:30px}.bc-rib::after{bottom:30px;right:0}
.bc-shine{overflow:hidden}.bc-shine::after{content:'';position:absolute;inset:0;z-index:8;pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.22) 50%,transparent 65%);background-size:250% 100%;background-position:130% 0;animation:bcsh 4.5s ease-in-out infinite}
@keyframes bcsh{0%,60%{background-position:130% 0}100%{background-position:-30% 0}}
.bc-glow{box-shadow:0 0 0 1px color-mix(in srgb,var(--cc) 50%,transparent),0 0 34px color-mix(in srgb,var(--cc) 45%,transparent)!important}
.bc-pop{position:fixed;z-index:99;pointer-events:none;border-radius:2px;font-weight:900;line-height:1}
/* entrance animations */
.reveal.rv-flip{transform:perspective(800px) rotateX(-40deg) translateY(30px);transform-origin:50% 0}
.reveal.rv-zoom{transform:scale(.82)}
.reveal.rv-blur{transform:none;filter:blur(14px);transition:opacity .8s ease,filter .8s ease}
.reveal.rv-slide{transform:translateX(-50px)}
.reveal.rv-pop{transform:scale(.55) rotate(-8deg);transition:opacity .5s ease,transform .7s cubic-bezier(.3,1.6,.5,1)}
.reveal.rv-none{opacity:1;transform:none;transition:none}
.reveal.in.rv-flip,.reveal.in.rv-zoom,.reveal.in.rv-slide,.reveal.in.rv-pop{transform:none}.reveal.in.rv-blur{filter:none}
/* rarity trading card */
.bc-rarity{display:grid;place-items:center;padding:6px 0;--rr:#9ca3af;--rr2:#e5e7eb}
.rr-rare{--rr:#3b82f6;--rr2:#93c5fd}.rr-epic{--rr:#a855f7;--rr2:#e9d5ff}.rr-legendary{--rr:#f59e0b;--rr2:#fde68a}.rr-mythic{--rr:#ec4899;--rr2:#67e8f9}
.rc-card{position:relative;width:min(280px,100%);padding:7px;border-radius:16px;background:linear-gradient(145deg,var(--rr2),var(--rr) 40%,color-mix(in srgb,var(--rr) 50%,#000) 100%);box-shadow:0 22px 40px -18px rgba(0,0,0,.75),0 0 26px color-mix(in srgb,var(--rr) 35%,transparent);user-select:none;touch-action:pan-y;will-change:transform}
.rr-legendary .rc-card,.rr-mythic .rc-card{background:conic-gradient(from var(--ang),var(--rr),var(--rr2),var(--rr),color-mix(in srgb,var(--rr2) 50%,#fff),var(--rr));animation:spinang 5s linear infinite}
.rc-face{position:relative;display:flex;flex-direction:column;gap:6px;padding:9px;border-radius:11px;background:linear-gradient(180deg,#1b1b22,#101015);color:#f4f4f5;text-align:left}
.rc-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:0 3px}
.rc-name{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rc-hp{font-size:.78rem;font-weight:900;color:var(--rr2);white-space:nowrap}
.rc-art{position:relative;aspect-ratio:4/3;border-radius:8px;overflow:hidden;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--rr) 70%,#000),0 2px 0 rgba(255,255,255,.08)}
.rc-art img{width:100%;height:100%;object-fit:cover;display:block}
.rc-blank{width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,var(--rr2),var(--rr) 45%,#0b0b10)}.rc-blank b{font-size:3.4rem;font-weight:900;color:rgba(255,255,255,.9)}
.rc-art .vc-holo{z-index:2}
.rc-type{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:4px 8px;border-radius:6px;background:color-mix(in srgb,var(--rr) 22%,#16161c);font-size:.72rem;font-weight:700;letter-spacing:.04em}
.rc-r{text-transform:uppercase;color:var(--rr2);font-weight:900;letter-spacing:.14em}
.rc-box{display:flex;flex-direction:column;gap:7px;padding:4px 4px 2px;font-size:.82rem;line-height:1.4}.rc-box p{opacity:.82}
.rc-stats{display:grid;gap:5px}.rc-st{display:grid;grid-template-columns:48px 1fr 26px;align-items:center;gap:7px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.rc-st i{display:block;height:6px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden}.rc-st i b{display:block;height:100%;width:var(--v,0);border-radius:inherit;background:linear-gradient(90deg,var(--rr),var(--rr2))}
.rc-st em{font-style:normal;text-align:right;opacity:.8}
.rc-foot{display:flex;justify-content:space-between;align-items:center;padding:2px 4px 0}
.rc-stars{color:var(--rr2);letter-spacing:.14em;font-size:.82rem;text-shadow:0 0 8px var(--rr)}
.rc-go{display:inline-flex;gap:5px;align-items:center;font-size:.74rem;font-weight:800;color:var(--rr2);text-decoration:none}.rc-no{font:700 .7rem ui-monospace,monospace;opacity:.5}
/* vinyl */
.bc-vinyl{display:flex;align-items:center;gap:18px;padding:16px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--cc) 18%,#121217),#0d0d11);box-shadow:0 18px 36px -18px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.06);text-align:left;overflow:hidden}
.vy-wrap{position:relative;flex:none;width:112px;aspect-ratio:1;margin-right:40px}
.vy-sleeve{position:absolute;inset:0;border-radius:6px;overflow:hidden;z-index:2;box-shadow:6px 0 14px rgba(0,0,0,.5)}.vy-sleeve img,.vy-blank{width:100%;height:100%;object-fit:cover;display:block}
.vy-blank{background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 30%,#000))}
.vy-disc{position:absolute;inset:4%;border-radius:50%;z-index:1;background:repeating-radial-gradient(circle,#111 0 1.5px,#1d1d1d 1.5px 3px);box-shadow:0 4px 12px rgba(0,0,0,.6);transform:translateX(30%);transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.vy-disc::after{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 30deg,transparent,rgba(255,255,255,.12) 10%,transparent 20%,transparent 50%,rgba(255,255,255,.1) 60%,transparent 70%)}
.vy-label{position:absolute;inset:32%;border-radius:50%;background:var(--cc) center/cover;box-shadow:0 0 0 2px #0a0a0a;animation:vyspin 3.2s linear infinite}
.vy-label::after{content:'';position:absolute;left:50%;top:50%;width:8%;height:8%;border-radius:50%;background:#0a0a0a;transform:translate(-50%,-50%)}
.bc-vinyl:hover .vy-disc,.bc-vinyl.in .vy-disc{transform:translateX(42%) rotate(40deg)}
@keyframes vyspin{to{transform:rotate(360deg)}}
.vy-info{min-width:0}.vy-meta{display:inline-flex;gap:6px;align-items:center;margin-top:8px;font-size:.75rem;font-weight:700;color:var(--cc)}
/* comic */
.bc-comic{position:relative;padding:12px;background:#fffdf2;color:#111;border:3px solid #111;border-radius:6px;box-shadow:7px 7px 0 #111;text-align:left;transform:rotate(-.6deg);transition:transform .3s,box-shadow .3s}
.bc-comic:hover{transform:rotate(0) translate(-2px,-2px);box-shadow:10px 10px 0 #111}
.cm-cap{position:absolute;top:-14px;left:14px;z-index:3;padding:4px 10px;background:#fde047;border:3px solid #111;font:400 .95rem 'Bangers',Impact,sans-serif;letter-spacing:.06em;transform:rotate(-2deg)}
.cm-panel{position:relative;aspect-ratio:16/10;border:3px solid #111;overflow:hidden;background:var(--cc)}
.cm-img{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(1.15) saturate(1.25)}
.cm-panel::after{content:'';position:absolute;inset:0;background:radial-gradient(rgba(0,0,0,.35) 1.2px,transparent 1.6px) 0 0/7px 7px;mix-blend-mode:multiply;opacity:.6;pointer-events:none}
.cm-blank{width:100%;height:100%;background:repeating-conic-gradient(from 0deg at 50% 50%,var(--cc) 0 12deg,color-mix(in srgb,var(--cc) 60%,#fff) 12deg 24deg)}
.cm-pow{position:absolute;right:10px;top:10px;z-index:2;padding:8px 12px;background:#ef4444;color:#fde047;border:3px solid #111;font:400 1.5rem/1 'Bangers',Impact,sans-serif;letter-spacing:.04em;transform:rotate(8deg);clip-path:polygon(0 18%,14% 0,30% 14%,48% 0,62% 16%,82% 2%,86% 24%,100% 34%,88% 52%,100% 72%,80% 78%,74% 100%,54% 86%,34% 100%,26% 82%,4% 92%,10% 66%,0 48%,12% 34%)}
.cm-bubble{position:relative;margin:14px 6px 2px;padding:10px 14px;background:#fff;border:3px solid #111;border-radius:22px;font-family:'Bangers',Impact,sans-serif;letter-spacing:.03em}
.cm-bubble::before{content:'';position:absolute;top:-14px;left:28px;border:12px solid transparent;border-bottom-color:#111;border-top:0}
.cm-bubble::after{content:'';position:absolute;top:-8px;left:31px;border:9px solid transparent;border-bottom-color:#fff;border-top:0}
.cm-bubble .ct{font-size:1.35rem;font-weight:400}.cm-bubble .cd{font-family:system-ui,sans-serif;opacity:.8;font-size:.85rem}
/* retro window */
.bc-retro{background:#c0c0c0;color:#000;border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:inset -1px -1px 0 #808080,inset 1px 1px 0 #dfdfdf,8px 10px 0 rgba(0,0,0,.35);font-family:'MS Sans Serif',Tahoma,Verdana,sans-serif;text-align:left;border-radius:0}
.w95-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:3px;padding:3px 4px 3px 6px;background:linear-gradient(90deg,#000080,#1084d0);color:#fff;font-weight:700;font-size:.82rem}
.w95-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.w95-btns{display:flex;gap:2px}
.w95-btns i,.w95-x{display:grid;place-items:center;width:18px;height:16px;padding:0;background:#c0c0c0;color:#000;font:700 11px/1 sans-serif;font-style:normal;border:1.5px solid;border-color:#fff #404040 #404040 #fff;cursor:pointer}
.w95-body{display:flex;flex-direction:column;gap:10px;padding:10px 12px 12px}
.w95-img{width:100%;max-height:220px;object-fit:cover;display:block;border:2px solid;border-color:#808080 #fff #fff #808080}
.w95-txt{font-size:.85rem;line-height:1.45}.w95-row{display:flex;justify-content:flex-end}
.w95-btn{display:inline-block;min-width:76px;padding:5px 12px;text-align:center;background:#c0c0c0;color:#000;text-decoration:none;font-size:.82rem;border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:inset -1px -1px 0 #808080;outline:1px dotted #000;outline-offset:-5px}
.w95-btn:active{border-color:#404040 #fff #fff #404040}
.bc-retro.min .w95-body{display:none}
/* magazine cover */
.bc-mag{position:relative;display:block;aspect-ratio:3/4;max-width:340px;margin-inline:auto;overflow:hidden;border-radius:4px;box-shadow:0 22px 40px -16px rgba(0,0,0,.75);color:#fff;text-decoration:none;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.bc-mag:hover{transform:translateY(-4px) rotate(-.8deg)}
.mg-img,.mg-blank{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mg-blank{background:linear-gradient(160deg,var(--cc),#111)}
.mg-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 30%,transparent 55%,rgba(0,0,0,.75))}
.mg-mast{position:absolute;top:10px;left:0;right:0;text-align:center;font:900 clamp(2.4rem,13vw,4.2rem)/.9 'Playfair Display',Georgia,serif;letter-spacing:-.03em;text-transform:uppercase;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.35);mix-blend-mode:normal;padding:0 8px;overflow:hidden;white-space:nowrap;text-overflow:clip}
.mg-issue{position:absolute;top:calc(10px + clamp(2.4rem,13vw,4.2rem));right:12px;padding:3px 8px;background:var(--cc);font:800 .64rem/1.2 system-ui,sans-serif;letter-spacing:.16em}
.mg-lines{position:absolute;left:14px;right:14px;bottom:30px;display:flex;flex-direction:column;gap:3px;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.mg-lines b{font:900 1.3rem/1.1 'Playfair Display',Georgia,serif;text-transform:uppercase}.mg-lines span{font-size:.82rem;font-weight:600;opacity:.92}
.mg-bar{position:absolute;left:0;right:0;bottom:0;padding:5px 14px;background:#fff;color:#111;font:800 .7rem system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
/* gradient border */
.bc-grad{position:relative;isolation:isolate;padding:2px;border-radius:20px;background:conic-gradient(from var(--ang),var(--cc),#22d3ee,#f472b6,#facc15,var(--cc));animation:spinang 4s linear infinite;text-align:left}
.bc-grad::before{content:'';position:absolute;inset:6px;border-radius:inherit;background:inherit;filter:blur(18px);opacity:.55;z-index:-1}
.gd-in{position:relative;display:flex;align-items:center;gap:14px;padding:16px;border-radius:18px;background:#0e0e13}
.gd-img{width:60px;height:60px;border-radius:14px;object-fit:cover;flex:none}.gd-body{flex:1;min-width:0}.gd-arw{opacity:.7}
/* sticker */
.bc-sticker{position:relative;display:block;width:fit-content;max-width:100%;margin:8px auto;transform:rotate(var(--rot,-2deg));transition:transform .4s cubic-bezier(.3,1.5,.5,1);filter:drop-shadow(0 10px 14px rgba(0,0,0,.45))}
.bc-sticker:hover{transform:rotate(0) scale(1.04)}
.st-in{display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;border-radius:999px;background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 55%,#000));color:#fff;box-shadow:0 0 0 6px #fff;text-align:left;clip-path:none}
.st-img,.st-blank{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 3px rgba(255,255,255,.9)}
.st-blank{display:grid;place-items:center;background:rgba(255,255,255,.2)}.st-blank b{font-weight:900;font-size:1.4rem}
.st-txt .ct{font-weight:900}.st-txt .cd{opacity:.85}
.st-peel{position:absolute;right:6px;bottom:-4px;width:26px;height:26px;border-radius:0 0 999px 0;background:linear-gradient(135deg,transparent 50%,#e5e5e5 50%,#fff 70%);box-shadow:-2px -2px 4px rgba(0,0,0,.15);transform-origin:100% 100%;transition:width .35s,height .35s}
.bc-sticker:hover .st-peel{width:38px;height:38px}
/* business card */
.bc-biz{perspective:1000px;cursor:pointer;max-width:380px;margin-inline:auto;-webkit-tap-highlight-color:transparent}
.bz-in{position:relative;aspect-ratio:1.75;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.3,1.3,.4,1)}
.bc-biz.on .bz-in{transform:rotateY(180deg)}
.bz-face{position:absolute;inset:0;border-radius:14px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 18px 36px -16px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.07)}
.bz-front{display:flex;flex-direction:column;justify-content:space-between;padding:18px 20px;background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--cc) 40%,transparent),transparent 55%),linear-gradient(135deg,#1c1c22,#0e0e12);text-align:left}
.bz-front::after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 2px,transparent 2px 6px);pointer-events:none}
.bz-logo{width:42px;height:42px;border-radius:10px;object-fit:cover}.bz-mono{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--cc);color:#fff;font-weight:900;letter-spacing:.04em}
.bz-id b{display:block;font-size:1.2rem;letter-spacing:.02em}.bz-id span{display:block;margin-top:2px;font-size:.8rem;opacity:.65;letter-spacing:.14em;text-transform:uppercase}
.bz-hint{position:absolute;right:14px;top:16px;opacity:.4;font-size:.8rem}
.bz-back{transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;gap:10px;padding:18px 22px;background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 40%,#000));color:#fff;text-align:left}
.bz-lines{display:flex;flex-direction:column;gap:4px;font:600 .86rem ui-monospace,monospace}
.bz-go{align-self:flex-start;display:inline-flex;gap:6px;align-items:center;padding:7px 12px;border-radius:10px;background:rgba(255,255,255,.18);color:#fff;font-weight:700;font-size:.82rem;text-decoration:none}
/* ---------- 🗂️ card collection ---------- */
.b-cards{position:relative;min-width:0;overflow-x:clip;overflow-y:visible;padding-bottom:4px}
.rc-card .bc-rib{top:-11px;left:50%;right:auto;width:auto;height:auto;overflow:visible;translate:-50% 0}.rc-card .bc-rib::before,.rc-card .bc-rib::after{display:none}.rc-card .bc-rib span{position:static;display:block;width:auto;padding:4px 12px;border-radius:999px;transform:none;white-space:nowrap}
.cc-title{font-size:1.1rem;font-weight:800;margin:0 4px 10px;text-align:left}
.cc-track{position:relative}
.cc-carousel .cc-track{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:14px 18%;margin:0 -4px;-webkit-overflow-scrolling:touch}
.cc-carousel .cc-track::-webkit-scrollbar{display:none}
.cc-carousel .cc-item{flex:0 0 64%;scroll-snap-align:center;transition:transform .15s linear,opacity .15s linear}
.cc-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:8px}
.cc-arr{width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:inherit;cursor:pointer;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.cc-arr:hover{background:rgba(255,255,255,.14)}
.cc-dots{display:flex;gap:6px}.cc-dots button{width:7px;height:7px;padding:0;border:0;border-radius:9px;background:rgba(255,255,255,.25);cursor:pointer;transition:width .3s,background .3s}.cc-dots button.on{width:20px;background:var(--accent)}
.cc-hint{font-size:.78rem;opacity:.55}
.cc-fan .cc-track{height:360px}
.cc-fan .cc-item{position:absolute;bottom:20px;transform-origin:50% 90%;transform:rotate(var(--fr)) translateY(var(--fy));transition:transform .45s cubic-bezier(.3,1.3,.5,1),z-index 0s .1s;z-index:calc(10 + var(--i));cursor:pointer}
@media (hover:hover){.cc-fan .cc-item:hover{transform:rotate(0) translateY(-34px) scale(1.06);z-index:60}}
.cc-fan .cc-item.up{transform:rotate(0) translateY(-34px) scale(1.08);z-index:70}
.cc-grid .cc-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:360px){.cc-grid .cc-track{grid-template-columns:1fr}}
.cc-grid .cc-item .hc-card,.cc-grid .cc-item .rc-card,.cc-grid .cc-item .pc-body{width:100%}
.cc-deck .cc-track{height:420px}
.cc-deck .cc-item{position:absolute;left:50%;top:0;width:min(290px,86%);translate:-50% 0;transform:translateY(calc(var(--d,0) * 10px)) scale(calc(1 - var(--d,0) * .05));transition:transform .35s cubic-bezier(.3,1.2,.5,1),opacity .3s;touch-action:pan-y;cursor:grab}
.cc-deck .cc-item.drag{transition:none;cursor:grabbing}.cc-deck .cc-item.fly{opacity:0;transition:transform .33s ease-in,opacity .33s}
.cc-item .bc-holo,.cc-item.bc-holo,.cc-item.bc-rarity,.cc-item.bc-profile{padding:0}
/* ---------- 📱 Now Playing layout ---------- */
body.lay-np .hero,body.lay-np .scrollhint{display:none!important}body.lay-np .cb-l{display:none}body.lay-np .cb-r{top:50px;width:40px;height:40px;font-size:1rem}body.lay-np .cm-panel{top:98px}
body.lay-np{--np-red:color-mix(in srgb,var(--accent) 35%,#ff2d45)}
.np{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;padding:10px clamp(14px,2.6vw,34px) 26px;color:#f5f5f7;font-family:var(--font),-apple-system,'SF Pro Display',system-ui,sans-serif;overflow:hidden;isolation:isolate}
.np::before{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(120% 80% at 0% 0%,rgba(255,255,255,.07),transparent 60%),linear-gradient(180deg,rgba(14,14,18,.55),rgba(10,10,13,.82));pointer-events:none}
.np-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.2;transition:opacity .25s linear;background:radial-gradient(70% 60% at 85% 100%,var(--np-red),transparent 70%),radial-gradient(45% 40% at 10% 90%,color-mix(in srgb,var(--np-red) 70%,transparent),transparent 70%);mix-blend-mode:screen}
.np-snow{position:absolute;inset:0;z-index:-1;pointer-events:none}
/* status bar */
.np-status{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;height:34px;font-size:.82rem;font-weight:600;letter-spacing:.01em}
.np-status.min{opacity:0;pointer-events:none;height:10px}
.np-sl{display:flex;gap:10px;align-items:baseline}.np-clock{font-weight:700;font-size:.92rem}.np-date{opacity:.55;text-transform:capitalize}
.np-sr{display:flex;gap:8px;align-items:center;justify-content:flex-end}.np-handle{opacity:.6;margin-right:6px;font-weight:500}
.npi{display:inline-flex;align-items:center;justify-content:center;line-height:0}.npi svg{display:block}
/* dynamic island */
.np-island{justify-self:center;display:flex;align-items:center;min-width:150px;max-width:min(360px,70vw);height:30px;padding:0 10px 0 5px;border:0;border-radius:999px;background:#000;color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 8px 24px rgba(0,0,0,.45);cursor:pointer;font:inherit;transition:height .5s cubic-bezier(.3,1.4,.5,1),min-width .5s cubic-bezier(.3,1.4,.5,1),border-radius .5s,padding .4s;overflow:hidden}
.isl-main{display:flex;align-items:center;gap:8px;min-width:0;width:100%}
.isl-c{width:20px;height:20px;border-radius:6px;background:#222 center/cover;flex:none}
.isl-t{flex:1;min-width:0;font-size:.74rem;font-weight:600;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.isl-w{display:flex;gap:2px;align-items:center;height:14px;flex:none}.isl-w i{width:2.5px;height:4px;border-radius:2px;background:var(--np-red);transition:height .2s}
.np.playing .isl-w i{animation:islw 1s ease-in-out infinite}.np.playing .isl-w i:nth-child(2){animation-delay:-.6s}.np.playing .isl-w i:nth-child(3){animation-delay:-.3s}.np.playing .isl-w i:nth-child(4){animation-delay:-.8s}.np.playing .isl-w i:nth-child(5){animation-delay:-.15s}
@keyframes islw{0%,100%{height:4px}50%{height:14px}}
.isl-x{display:none;align-items:center;gap:10px;width:100%}
.np-island.big{height:52px;min-width:min(340px,80vw);border-radius:28px;padding:0 10px}
.np-island.big .isl-main{display:none}.np-island.big .isl-x{display:flex;animation:ixin .45s ease both}
@keyframes ixin{from{opacity:0;transform:scale(.9)}}
.ix-av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#3a3a3f;font-weight:800;flex:none}
.ix-t{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left;line-height:1.15}.ix-t b{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ix-t small{font-size:.68rem;opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ix-no,.ix-ok{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:.85rem}.ix-no{background:#ff3b30}.ix-ok{background:#34c759;animation:ixok 1.2s ease-in-out infinite}
@keyframes ixok{50%{transform:scale(1.08)}}
.ix-ring{width:26px;height:26px;border-radius:50%;border:3px solid #ff9f0a;border-right-color:rgba(255,159,10,.25);animation:npspin 1.2s linear infinite;flex:none}@keyframes npspin{to{transform:rotate(360deg)}}
.ix-tm{font-variant-numeric:tabular-nums;color:#ff9f0a;font-size:1.05rem}
.ix-hrt{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--np-red) 25%,#000);color:var(--np-red);flex:none;animation:hbeat .8s ease-in-out infinite}
.ix-bpm{color:var(--np-red);font-size:1.15rem;font-variant-numeric:tabular-nums}
@keyframes hbeat{0%,100%{transform:scale(1)}20%{transform:scale(1.18)}40%{transform:scale(.96)}}
/* main grid */
.np-main{flex:1;display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(18px,3vw,46px);align-items:start;padding-top:12px;min-height:0}
.np-main.flip{grid-template-columns:minmax(0,1.22fr) minmax(280px,.78fr)}.np-main.flip .np-col{order:2}
.np-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}
.nbx{position:relative;border-radius:22px;background:rgba(255,255,255,.075);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07),0 12px 30px -16px rgba(0,0,0,.6);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);padding:14px;min-width:0;animation:npin .7s cubic-bezier(.2,.8,.2,1) both}
.nbx.full{grid-column:1/-1}.nbx:nth-child(2){animation-delay:.06s}.nbx:nth-child(3){animation-delay:.12s}.nbx:nth-child(4){animation-delay:.18s}.nbx:nth-child(5){animation-delay:.24s}
@keyframes npin{from{opacity:0;transform:translateY(14px) scale(.98)}}
.nbx-h{display:flex;align-items:center;gap:7px;font-size:.8rem;margin-bottom:8px}.nbx-h b{font-weight:650}.nbx-r{margin-left:auto;opacity:.5;font-size:.72rem}
.nbx-f{font-size:.66rem;opacity:.45;margin-top:4px}
/* art */
.nbx-art{padding:0;overflow:hidden;aspect-ratio:16/8}
.np-artimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.15) contrast(1.05);transition:opacity .5s}
.nbx-art::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent 30%,transparent 70%,rgba(0,0,0,.55));pointer-events:none}
.np-artlbl{position:absolute;left:12px;top:10px;z-index:1;font-size:.7rem;font-weight:600;opacity:.85}
.np-artfoot{position:absolute;left:12px;right:12px;bottom:9px;z-index:1;display:flex;justify-content:space-between;font-size:.62rem;font-weight:700;letter-spacing:.14em;opacity:.7}
/* player */
.np-ptop{display:flex;align-items:flex-start;gap:8px}.np-pinfo{flex:1;min-width:0}
.np-ptr{display:flex;align-items:center;gap:6px}.np-pt{font-size:1.05rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.np-e{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:3px;background:rgba(255,255,255,.55);color:#000;font-size:.58rem;font-weight:900;flex:none}
.np-pa{display:block;font-size:.8rem;opacity:.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.np-star,.np-more{width:28px;height:28px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:grid;place-items:center;font-size:.72rem;cursor:pointer;flex:none}.np-star.on{color:var(--np-red)}
.np-bar{position:relative;height:6px;border-radius:9px;background:rgba(255,255,255,.18);margin:14px 0 6px;cursor:pointer}
.np-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:inherit;background:rgba(255,255,255,.85)}
.np-bar em{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;translate:-50% -50%;box-shadow:0 2px 6px rgba(0,0,0,.4);opacity:0;transition:opacity .2s}.np-bar:hover em{opacity:1}
.np-times{display:flex;justify-content:space-between;font-size:.66rem;opacity:.5;font-variant-numeric:tabular-nums}
.np-ctl{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.np-ctl button{border:0;background:none;color:#fff;font-size:1.15rem;cursor:pointer;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;transition:transform .15s,background .2s}
.np-ctl button:active{transform:scale(.88)}.np-ctl .np-pp{font-size:1.5rem}
.np-prev .npi{transform:scaleX(-1)}.np-star.on{color:#ffd60a!important}.np-ctl .np-side{opacity:.55;font-size:.9rem;width:32px;height:32px;display:grid;place-items:center}
.np-list{display:none;flex-direction:column;gap:2px;margin-top:8px;max-height:180px;overflow:auto}.np-list.open{display:flex}
.np-list button{text-align:left;border:0;background:rgba(255,255,255,.05);color:#fff;padding:7px 10px;border-radius:10px;font:inherit;font-size:.8rem;cursor:pointer}.np-list button.on{background:rgba(255,255,255,.16)}
/* heart rate */
.np-heart{color:var(--np-red)}
.np-bpmrow{display:flex;align-items:baseline;gap:6px}.np-bpmrow span{font-size:.72rem;opacity:.5}
.np-bpm{font-size:clamp(2.2rem,3.6vw,3rem);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1;transition:color .4s,text-shadow .4s}
.np-bpm.hot{color:var(--np-red);text-shadow:0 0 22px color-mix(in srgb,var(--np-red) 55%,transparent)}
.np-ecg{width:100%;height:46px;display:block;margin-top:4px}
/* medication / checklist */
.np-mlist{display:flex;flex-direction:column;gap:6px}
.np-mrow{display:grid;grid-template-columns:18px 1fr 18px;gap:8px;align-items:center;font-size:.76rem}.np-mrow small{display:block;opacity:.45;font-size:.62rem}.np-mrow b{font-weight:600}
.np-chk{width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);transition:background .3s,box-shadow .3s;position:relative}
.np-mrow.done .np-chk{background:#fff;box-shadow:none}.np-mrow.done .np-chk::after{content:'';position:absolute;left:5px;top:2.5px;width:4px;height:8px;border:solid #111;border-width:0 2px 2px 0;transform:rotate(45deg)}
.np-mbtn{margin-top:10px;padding:7px 8px;border-radius:12px;background:rgba(255,255,255,.08);font-size:.68rem;text-align:center;opacity:.8;transition:background .4s,color .4s}
.np-mbtn.bad{background:var(--np-red);color:#fff;opacity:1;font-weight:700;box-shadow:0 6px 18px -6px var(--np-red)}
/* profile + note + links */
.np-prof{display:flex;gap:12px;align-items:center;text-align:left}.np-prof .avatar-wrap{margin:0!important;flex:none}.np-prof .avatar{border-width:2px!important}
.np-pid{min-width:0;display:flex;flex-direction:column;gap:3px}.np-pid .name,.np-pid .nrow{font-size:1.25rem!important;justify-content:flex-start;margin:0!important}.np-pid .badges{justify-content:flex-start;margin:0}.np-pid .bio{font-size:.82rem!important;text-align:left;margin:0;opacity:.75}
.nbx-profile .links{justify-content:flex-start;margin-top:10px}.nbx-links .links{justify-content:center;margin:0}
.nbx .presence{margin-top:10px}
.np-note{font-size:.84rem;line-height:1.5;opacity:.85;white-space:pre-line}
/* lyrics */
.np-lyr{min-width:0;display:flex;flex-direction:column;height:calc(100vh - 92px);height:calc(100svh - 92px);max-height:860px}
.np-lyh{display:flex;align-items:center;gap:8px;font-size:.72rem;opacity:.55;font-weight:600;margin-bottom:6px}.np-lyh i{font-size:.65rem}
.np-live{font-size:.56rem;padding:2px 6px;border-radius:6px;background:rgba(255,255,255,.12);letter-spacing:.08em}
/* pop-up banners */
.np-notes{position:absolute;top:48px;right:clamp(12px,2.6vw,34px);z-index:5;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 28px));pointer-events:none}
.np-note2{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:18px;background:rgba(40,40,46,.72);backdrop-filter:blur(26px) saturate(1.6);-webkit-backdrop-filter:blur(26px) saturate(1.6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 16px 36px -12px rgba(0,0,0,.7);transform:translateY(-30px) scale(.96);opacity:0;transition:transform .55s cubic-bezier(.3,1.4,.5,1),opacity .35s}
.np-note2.in{transform:none;opacity:1}.np-note2.out{transform:translateY(-20px) scale(.96);opacity:0}
.nn-ic{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(180deg,#5b5b62,#3a3a40);font-size:.8rem;flex:none}
.nn-b{flex:1;min-width:0}.nn-top{display:flex;justify-content:space-between;font-size:.6rem;letter-spacing:.06em;opacity:.55}.nn-b b{display:block;font-size:.82rem;margin-top:1px}.nn-b p{font-size:.74rem;opacity:.75;margin-top:1px;line-height:1.35}
.np-mark{position:absolute;right:clamp(14px,2.6vw,34px);bottom:12px;font-size:.66rem;opacity:.3;letter-spacing:.04em;pointer-events:none}
/* phones: art + player on top, big lyrics, widgets under */
@media (max-width:860px){
  .np{padding:8px 12px 22px}.np-status{grid-template-columns:auto 1fr auto}.np-handle,.np-date{display:none}
  .np-main,.np-main.flip{grid-template-columns:1fr;gap:14px}
  .np-lyr{order:0;height:46vh;height:46svh}.np-col{order:1}.np-main.flip .np-col{order:1}
  .nbx-art{aspect-ratio:16/9}
}
/* ---------- 🪐 halo-style extras ---------- */
.fsub{display:block;font-size:.78em;opacity:.6;margin-top:2px}.ftime{font-variant-numeric:tabular-nums;padding:0 4px;border-radius:6px;background:rgba(255,255,255,.08)}
.b-text code,.b-heading code{font-family:ui-monospace,monospace;font-size:.88em;padding:1px 5px;border-radius:6px;background:rgba(255,255,255,.1)}
.b-text a,.b-heading a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
/* favourites */
.b-favs{text-align:left}
.fv-title{font-size:clamp(1.5rem,5vw,2.1rem);font-weight:800;letter-spacing:-.02em;margin:0 4px 4px;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.fv-sub{opacity:.7;margin:0 4px 12px;font-size:.92rem}
.fv-grid{display:grid;grid-template-columns:repeat(var(--per,3),minmax(0,1fr));gap:14px}
.fv-grid.flip>*{animation:fvin .5s cubic-bezier(.2,.8,.2,1) both}.fv-grid.flip>*:nth-child(2){animation-delay:.05s}.fv-grid.flip>*:nth-child(3){animation-delay:.1s}.fv-grid.flip>*:nth-child(4){animation-delay:.15s}
@keyframes fvin{from{opacity:0;transform:translateY(12px) scale(.97)}}
.fv-card{display:flex;flex-direction:column;border-radius:26px!important;overflow:hidden;padding:0!important;text-decoration:none;color:inherit;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.fv-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px -16px rgba(0,0,0,.7)}
.fv-cov{aspect-ratio:3/4;overflow:hidden;background:rgba(255,255,255,.05)}.fv-cov img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.fv-card:hover .fv-cov img{transform:scale(1.05)}
.fk-music .fv-cov,.fk-albums .fv-cov{aspect-ratio:1}.fk-games .fv-cov{aspect-ratio:2/3}
.fv-noimg{width:100%;height:100%;display:grid;place-items:center;font-size:2rem;opacity:.35}
.fv-body{display:flex;flex-direction:column;gap:6px;padding:12px 14px 14px}.fv-name{font-size:1.02rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fv-body small{opacity:.6;margin-top:-4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fv-meta{display:flex;align-items:center;gap:10px;font-size:.85rem;opacity:.9}.fv-sc i{color:#fbbf24}
.fv-tag{margin-left:auto;padding:2px 8px;border:1.5px solid rgba(255,255,255,.6);border-radius:8px;font-size:.72rem;font-weight:800;letter-spacing:.04em;opacity:.9;white-space:nowrap;max-width:46%;overflow:hidden;text-overflow:ellipsis}
.fv-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:14px}
.fv-arr{border:0;background:none;color:inherit;font-size:1.4rem;cursor:pointer;padding:4px 8px;opacity:.9}
.fv-dots{display:flex;gap:7px}.fv-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;transition:background .3s,transform .3s}.fv-dots button.on{background:#fff;transform:scale(1.15)}
.fv-list .fv-grid{grid-template-columns:1fr;gap:8px}.fv-list .fv-card{flex-direction:row;border-radius:16px!important}.fv-list .fv-cov{width:64px;flex:none;aspect-ratio:3/4}.fv-list .fv-body{justify-content:center}
/* widgets inside the card */
.cwid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;text-align:left}
.cwid>*{margin:0!important;min-width:0;width:auto!important;max-width:none!important}.cwid>.cw-full{grid-column:1/-1}
.cwid .glass,.cwid .mod{border-radius:var(--w-r,22px)}
@media (max-width:520px){.cwid{grid-template-columns:1fr}}
.bwid{width:min(var(--cardw,440px),100%);margin:12px auto 0;max-width:calc(100vw - 24px)}
.hw{container-type:inline-size;position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--w-r,28px);background:rgba(10,10,12,.55);border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);min-height:92px;overflow:hidden;text-align:left;animation:hwIn .6s cubic-bezier(.2,.8,.2,1) both;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s,background .3s}
.hw:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.14)}
@keyframes hwIn{from{opacity:0;transform:translateY(10px) scale(.98)}}
.hw-lbl{position:absolute;top:10px;right:16px;font-size:10.5px;font-weight:600;opacity:.45;letter-spacing:.01em;display:flex;align-items:center;gap:4px;white-space:nowrap}
.hw-av{position:relative;flex:0 0 auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.06);font-size:26px}
.hw-av>img:not(.hw-deco){width:100%;height:100%;border-radius:inherit;object-fit:cover}
.hw-discordserver .hw-av,.hw-minecraft .hw-av,.hw-roblox .hw-av,.hw-custom .hw-av,.hw-modrinth .hw-av,.hw-steam .hw-av,.hw-time .hw-av,.hw-weather .hw-av{border-radius:16px}
.hw-minecraft .hw-av img{image-rendering:pixelated}
.hw-deco{position:absolute;inset:-12%;width:124%;height:124%;pointer-events:none}
.hw-st{position:absolute;right:-1px;bottom:-1px;width:17px;height:17px;border-radius:50%;border:3.5px solid #141416;background:#80848e}
.hw-st.st-online{background:#23a55a}.hw-st.st-idle{background:#f0b232}.hw-st.st-dnd{background:#f23f43}.hw-st.st-offline{background:#80848e}
.hw-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;padding-right:4px;padding-top:6px}
.hw-n{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:nowrap}
.hw-n b{font-size:17px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hw-clock{font-variant-numeric:tabular-nums;font-size:22px!important;letter-spacing:.02em}
.hw-tag{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);white-space:nowrap}
.hw-bdg{display:inline-flex;gap:3px;align-items:center;flex-shrink:0}.hw-bdg img{width:16px;height:16px;object-fit:contain}
.hw-s,.hw-s2{font-size:12.5px;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hw-s2{opacity:.5}
.hw-on,.hw-mem{display:inline-flex;align-items:center;gap:5px;margin-right:12px}.hw-on i{width:8px;height:8px;border-radius:50%;background:#23a55a;box-shadow:0 0 8px #23a55a}.hw-mem i{font-size:11px}
.hw-act{margin-top:4px}
.hw-tap{cursor:pointer}.hw-btn{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 12px;border-radius:999px;background:#fff;color:#111!important;font-size:12px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s}
.hw-btn svg rect{fill:#111}.hw-btn:hover{transform:scale(1.04);box-shadow:0 4px 18px rgba(255,255,255,.25)}
.hw-art{flex:0 0 auto;width:66px;height:66px;border-radius:14px;overflow:hidden;margin:16px -2px -4px 0;box-shadow:0 6px 20px rgba(0,0,0,.4)}.hw-art img{width:100%;height:100%;object-fit:cover;animation:hwArt .8s ease both}.hw-art:empty{display:none}
@keyframes hwArt{from{opacity:0;transform:scale(1.08)}}
.hw-emo{font-size:30px;line-height:1}
.hw-load .hw-av,.hw-load .hw-n,.hw-load .hw-s{background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.13),rgba(255,255,255,.05));background-size:200% 100%;animation:hwSk 1.2s linear infinite;border-radius:10px;color:transparent}
.hw-load .hw-av{border-radius:50%}.hw-load .hw-n{height:16px;width:60%}.hw-load .hw-s{height:11px;width:80%}
@keyframes hwSk{to{background-position:-200% 0}}
.cwid:has(.hw){grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}.cwid .hw{min-height:88px;padding:14px 16px}@container (max-width:330px){.hw-art{display:none!important}}@container (max-width:250px){.hw-lbl{display:none}}.cwid .hw-av{width:58px;height:58px}.cwid .hw-art{width:64px;height:64px}
@media (max-width:520px){.hw{padding:14px}.hw-av{width:56px;height:56px}.hw-n b{font-size:16px}}
.b-proj2 .fv-dots{justify-content:center}.b-proj2 .pj-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pj{display:flex;flex-direction:column;border-radius:22px;overflow:hidden;color:inherit;text-decoration:none;position:relative;animation:hwIn .5s calc(var(--i)*80ms) cubic-bezier(.2,.8,.2,1) both;transition:transform .3s}
.pj:hover{transform:translateY(-3px)}.pj-img{aspect-ratio:16/9;overflow:hidden}.pj-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.pj:hover .pj-img img{transform:scale(1.05)}
.pj-b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;text-align:left}.pj-b>b{font-size:16px}.pj-b p{margin:0;font-size:13px;opacity:.75}
.pj-go{position:absolute;top:12px;right:12px;font-size:12px;padding:7px;border-radius:10px;background:rgba(0,0,0,.45);backdrop-filter:blur(6px)}
@media (max-width:560px){.b-proj2 .pj-grid{grid-template-columns:1fr}}
.scrollhint{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:5;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;font-weight:600;opacity:.85;pointer-events:none;transition:opacity .5s;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.promo-on .scrollhint{bottom:100px}.itint a i,.itint a svg{color:var(--itint)!important;fill:var(--itint)}.bmono img{filter:grayscale(1) brightness(1.6)}.bmono i{color:#fff!important}.btint i{color:var(--btint)!important}.btint img{filter:drop-shadow(0 0 0 var(--btint))}.card.has-banner .banner,.lay-banner .banner,.lay-modern .banner{-webkit-mask-image:linear-gradient(#000 var(--bnf,35%),transparent)!important;mask-image:linear-gradient(#000 var(--bnf,35%),transparent)!important}.card .banner.bn-nofade{-webkit-mask-image:none!important;mask-image:none!important}.cov-circle .pcover,.cov-circle .pcover img,.cov-circle .hw-art{border-radius:50%!important}.cov-circle .playing .pcover img{animation:covSpin 9s linear infinite}@keyframes covSpin{to{transform:rotate(360deg)}}.novol .player input[aria-label=volume],.novol .player .vol,.novol .pvol{display:none!important}.scrollhint{transition:opacity .5s,bottom .5s}.scrollhint svg{animation:shB 1.6s ease-in-out infinite}.scrollhint.gone{opacity:0}
@keyframes shB{50%{transform:translateY(5px)}}
.promo{position:fixed;left:50%;bottom:16px;transform:translate(-50%,140%);z-index:60;width:min(520px,calc(100vw - 24px));display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:20px;background:rgba(10,10,12,.92);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);color:#fff;text-decoration:none;box-shadow:0 18px 50px rgba(0,0,0,.55);transition:transform .6s cubic-bezier(.2,.9,.2,1)}
.promo.on{transform:translate(-50%,0)}.promo img{width:38px;height:38px;border-radius:10px;object-fit:cover}.promo b{display:block;font-size:14px}.promo span{font-size:12.5px;opacity:.6}.promo .px{margin-left:auto;background:rgba(255,255,255,.12);border:0;color:#fff;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:12px;display:grid;place-items:center}

/* player in its own box */
.hero.has-pbox{grid-template-rows:auto auto;align-content:center;gap:14px}
.pbox{width:min(var(--width),calc(100vw - 32px));padding:12px 14px;border-radius:var(--radius);background:var(--card-bg);backdrop-filter:blur(var(--card-blur));-webkit-backdrop-filter:blur(var(--card-blur));border:1px solid var(--line);opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.pbox.show{opacity:1;transform:none}.pbox #music{margin:0}.pbox .player{margin:0!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
.card[style*="--bw"] ~ .pbox{border-width:var(--bw)}
/* corner buttons */
.cornbtn{position:fixed;top:14px;z-index:35;width:48px;height:48px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(10,10,14,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:1.25rem;cursor:pointer;transition:transform .2s,background .2s}
.cornbtn:hover{background:rgba(10,10,14,.55);transform:scale(1.06)}.cornbtn:active{transform:scale(.92)}
.cb-l{left:14px}.cb-r{right:14px}
.cb-n{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#18181b;border:1.5px solid rgba(255,255,255,.4);font-size:.68rem;display:grid;place-items:center}
.cm-panel{position:fixed;top:72px;right:14px;z-index:36;width:min(360px,calc(100vw - 28px));max-height:min(560px,calc(100vh - 96px));display:flex;flex-direction:column;border-radius:20px;background:rgba(16,16,22,.88);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 24px 60px -20px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.08);opacity:0;transform:translateY(-10px) scale(.97);pointer-events:none;transition:opacity .25s,transform .35s cubic-bezier(.3,1.3,.5,1);text-align:left}
.cm-panel.open{opacity:1;transform:none;pointer-events:auto}
.cm-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.07)}.cm-x{border:0;background:none;color:inherit;font-size:1rem;cursor:pointer;opacity:.7}
.cm-list{flex:1;overflow:auto;padding:8px 14px;display:flex;flex-direction:column;gap:8px}.cm-list .gbm{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.05)}.cm-list .gbm span{font-size:.7rem;opacity:.5;margin-left:6px}.cm-list .gbm p{font-size:.86rem;margin-top:2px;white-space:pre-line}
.cm-empty{opacity:.55;font-size:.86rem;text-align:center;padding:16px 0}
.cm-form{display:flex;flex-direction:column;gap:6px;padding:10px 14px 14px;border-top:1px solid rgba(255,255,255,.07)}
.cm-form input,.cm-form textarea{width:100%;border:0;border-radius:10px;padding:8px 10px;background:rgba(255,255,255,.07);color:inherit;font:inherit;font-size:.86rem;resize:none}
.cm-row{display:flex;align-items:center;gap:8px}.cm-row .gbnote{flex:1;font-size:.76rem;opacity:.7}.cm-send{border:0;border-radius:10px;padding:8px 16px;background:var(--accent);color:#fff;font:inherit;font-weight:700;cursor:pointer}
/* section dots */
.secdots{position:fixed;right:12px;top:50%;transform:translateY(-50%);z-index:30;display:flex;flex-direction:column;gap:9px}
.secdots button{width:10px;height:10px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.4);cursor:pointer;transition:height .35s cubic-bezier(.3,1.4,.5,1),background .3s}.secdots button.on{height:30px;background:#fff}
/* section modes */
.blocks.sm-fill>*{min-height:calc(100svh - 40px);display:flex;flex-direction:column;justify-content:center;margin:0 auto}
.blocks.sm-fill>.glass,.blocks.sm-fill>.mod{min-height:0;margin:calc(50svh - 160px) auto}
html.sm-snap{scroll-snap-type:y mandatory}html.sm-snap .hero,html.sm-snap .blocks>*{scroll-snap-align:center}
body.noreveal .reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
.reveal{transition-duration:var(--rvms,.7s)!important}
/* rotating backgrounds */
.bgrot{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease}.bgrot.on{opacity:1}.bgrot video{width:100%;height:100%;object-fit:cover}
/* one look for every widget */
.wstyle .blocks .glass,.wstyle .blocks .mod,.wstyle .cwid>*,.wstyle .presence .act,.wstyle .featured>*{background:var(--w-bg)!important;color:var(--w-tx)!important;border:var(--w-bd)!important;border-radius:var(--w-r)!important}
.wstyle .blocks .cd,.wstyle .cwid .gc,.wstyle .blocks small,.wstyle .cwid small{color:var(--w-sub)!important}
/* badges in a box */
.badges.bbox{display:inline-flex!important;width:auto;padding:5px 10px;margin-inline:auto;background:var(--bb-bg);border:var(--bb-bd);border-radius:var(--bb-r)}
/* modern layout (halo) */
.card.lay-modern{padding:0 0 16px;overflow:hidden;text-align:left}
.lay-modern .banner{display:block!important;height:170px;margin:0!important;border-radius:0!important;background-size:cover;background-position:center;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.lay-modern .banner.mbn-auto{background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 70%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 30%,#111),#0b0b10)}
.lay-modern .mhead{display:flex;align-items:center;gap:16px;margin:-62px 22px 0;position:relative;z-index:2}
.lay-modern .mhead .avatar-wrap{margin:0!important;flex:none;width:min(var(--as),118px)!important;height:min(var(--as),118px)!important}
.lay-modern .minfo{min-width:0;padding-top:34px}.lay-modern .mname{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lay-modern .mname .name,.lay-modern .mname .nrow{margin:0!important;justify-content:flex-start}
.lay-modern .mname .badges{margin:0!important;justify-content:flex-start}.lay-modern .uname{text-align:left;margin:0}.lay-modern .bio{text-align:left;margin:4px 0 0!important;font-size:.95rem}
.lay-modern .mwid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 18px 0}.lay-modern .mwid>*{margin:0!important;min-width:0}.lay-modern .mwid>:empty{display:none}
.lay-modern .mwid:has(>:empty){grid-template-columns:1fr}
.lay-modern .links{justify-content:center;margin:16px 18px 0}.lay-modern .tags{justify-content:flex-start;margin:10px 22px 0}
.lay-modern .mfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 22px 0}.lay-modern .mfoot .meta{justify-content:flex-start;margin:0}.lay-modern .mfoot .likerow{margin:0}
.lay-modern #music,.lay-modern .cwid{margin-left:18px;margin-right:18px}
@media (max-width:520px){.lay-modern .mwid{grid-template-columns:1fr}.lay-modern .mhead{margin:-50px 16px 0;gap:12px}.lay-modern .banner{height:140px}}
/* ❤ / 👍 👎 */
.likerow.thumbs{gap:8px}.likebtn.thumb.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.likebtn.thumb.down.on{color:#f43f5e;border-color:#f43f5e88}

/* 📡 Signal name effect (referral reward) */
.fx-signal{background:linear-gradient(90deg,#7dd3fc,#a78bfa,#f0abfc,#7dd3fc) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:fxsig calc(3.2s * var(--nsp,1)) linear infinite,fxsigp calc(1.6s * var(--nsp,1)) ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(125,211,252,.45))}
@keyframes fxsig{to{background-position:300% 0}}@keyframes fxsigp{50%{filter:drop-shadow(0 0 16px rgba(167,139,250,.75))}}

/* Modern without a banner + the Float layout */
.lay-modern.mnobn .banner{display:none!important}
.lay-modern.mnobn{padding-top:22px}
.lay-modern.mnobn .mhead{margin:0 22px}
.lay-modern.mnobn .minfo{padding-top:0}
.lay-modern .bio{display:block}
.card.lay-float{background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:10px 6px 6px;overflow:visible}
.card.lay-float::before,.card.lay-float::after{display:none!important}
.lay-float .banner{display:none!important}
.lay-float .fhead{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.lay-float .fhead .avatar-wrap{margin:0 0 10px!important}
.lay-float .fname{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.lay-float .fname .name,.lay-float .fname .nrow,.lay-float .fname .badges{margin:0!important}
.lay-float .name,.lay-float .bio,.lay-float .uname,.lay-float .meta{text-shadow:0 2px 14px rgba(0,0,0,.65)}
.lay-float .bio{margin:6px auto 0!important;opacity:.85}
.lay-float .fwid{margin:18px 0 0}
.lay-float .fwid>*{background:rgba(10,10,14,.55)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:22px}
.lay-float .links{justify-content:center;margin:16px 0 0}
.lay-float .mfoot{display:flex;align-items:center;justify-content:space-between;margin:14px 6px 0}
.lay-float .mfoot .meta{margin:0;justify-content:flex-start}
body.lay-floatpg .pbox{background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
body.lay-floatpg .pbox .plyrics{background:transparent;border:0}

/* ================= lyrics — the one stylesheet for every place lyrics show =================
   card player (3-line strip or the full list), Now Playing layout, Discord / Spotify status box.
   Rules: lyrics are white/grey only (never the accent colour), lines only fade and slide,
   a word fills left→right with a clipped white copy on top (no transparent text, no width tricks),
   and every effect starts from the state the line is already showing, so nothing jumps or blinks. */

/* the box under the player */
.plyrics{display:none;margin-top:8px;padding:12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);text-align:center;--lz:1}
.plyrics.open{display:block}
.plyrics.lz-sm{--lz:.85}.plyrics.lz-lg{--lz:1.25}.plyrics.lz-xl{--lz:1.55}
.plyrics .lmsg{color:var(--muted);font-size:calc(.85rem * var(--lz));line-height:1.35;padding:8px 0}
.plyrics .plain{white-space:pre-wrap;max-height:180px;overflow:auto;font-size:.82rem;color:var(--muted)}
.lcredit{display:none}

/* one line: its words wrap and stay centred */
.plyrics .fl{display:flex;flex-wrap:wrap;justify-content:center;column-gap:.28em;row-gap:0;padding:3px 14px;font-weight:650;line-height:1.3;font-size:calc(.95rem * var(--lz));opacity:.3;transition:opacity .35s ease}
.plyrics .fl.long{font-size:calc(.88rem * var(--lz))}
.plyrics .fl[data-s=pv],.plyrics .fl[data-s=nx]{opacity:.55}
.plyrics .fl.on{opacity:1}

/* 3-line strip: one column that slides up a row per line */
.plyrics.strip{position:relative;height:calc(5.4em * var(--lz));overflow:hidden;padding:0;-webkit-mask:linear-gradient(transparent,#000 24%,#000 76%,transparent);mask:linear-gradient(transparent,#000 24%,#000 76%,transparent)}
.plyrics.strip .ltrk{position:absolute;left:0;right:0;top:0;transition:transform .45s cubic-bezier(.25,1,.5,1);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.plyrics.strip .ltrk.jump{transition:none}

/* full lyrics: a list you can scroll, the sung line stays in the middle */
.plyrics.full{position:relative;max-height:240px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px 0;-webkit-mask:linear-gradient(transparent,#000 18%,#000 82%,transparent);mask:linear-gradient(transparent,#000 18%,#000 82%,transparent)}
.plyrics.full .fl{padding:5px 12px}

/* karaoke words (card player + status box): dim → filled by a white copy clipped to the sung part */
.fl .w,.lyr .w{position:relative;color:rgba(244,244,245,.45);color:color-mix(in srgb,var(--text) 45%,transparent)}
.plyrics .fl:not(.on) .w{color:var(--text)}
.fl .w.sung,.lyr .w.sung,.lfx .fl .w.cur{color:var(--text)}
.fl .w.cur::after,.lyr .w.cur::after{content:attr(data-w);position:absolute;left:0;top:0;white-space:pre;pointer-events:none;color:var(--text);-webkit-clip-path:inset(-25% calc(100% - var(--p,0%)) -25% 0);clip-path:inset(-25% calc(100% - var(--p,0%)) -25% 0)}
.lfx .fl .w.cur::after,.plyrics .fl:not(.on) .w.cur::after{content:none}
.lyr{margin-top:8px;font-size:.82rem;line-height:1.35;min-height:1.2em}
.lyr .lc{color:var(--text);font-weight:600}
.lyr .ln{color:var(--muted);font-size:.75rem;margin-top:2px}

/* classic effects: a short nudge on the new line (or its words) that starts and ends at rest, so nothing jumps.
   Scaling moves the whole line — scaling single words would eat the gaps between them. */
@keyframes lwHop{0%,100%{transform:none}35%{transform:translateY(-3px)}}
@keyframes lwSlide{0%,100%{transform:none}35%{transform:translateX(6px)}}
@keyframes lwRise{0%,100%{transform:none}35%{transform:translateY(-5px)}}
@keyframes lwPop{0%,100%{transform:none}40%{transform:scale(.96)}70%{transform:scale(1.03)}}
@keyframes lwZoom{0%,100%{transform:none}30%{transform:scale(1.07)}}
@keyframes lwFlip{0%,100%{transform:none}30%{transform:perspective(400px) rotateX(40deg)}}
@keyframes lwBlur{from{filter:blur(2px)}to{filter:none}}
@keyframes lwType{from{opacity:.35}to{opacity:1}}
@keyframes lwGlow{0%,100%{text-shadow:none}35%{text-shadow:0 0 16px rgba(255,255,255,.7),0 0 2px rgba(255,255,255,.9)}}
@keyframes lwNeon{0%,100%{opacity:1}12%{opacity:.6}22%{opacity:1}30%{opacity:.75}38%{opacity:1}}
.la-slide .fl.on{animation:lwSlide .4s ease-out}
.la-rise .fl.on{animation:lwRise .5s ease-out}
.la-pop .fl.on{animation:lwPop .4s ease-out}
.la-zoom .fl.on{animation:lwZoom .4s ease-out}
.la-flip .fl.on .w{animation:lwFlip .45s ease-out;transform-origin:50% 100%}
.la-wave .fl.on .w{animation:lwHop .45s ease-out both;animation-delay:calc(var(--wi,0) * 45ms)}
.la-blur .fl[data-s=nx]{filter:blur(2px)}
.la-blur .fl.on .w{filter:blur(2px)}
.la-blur .fl.on .w{animation:lwBlur .4s ease-out forwards}
.la-type .fl[data-s=nx] .w{opacity:.35}
.la-type .fl.on .w{opacity:.35;animation:lwType 1ms linear forwards;animation-delay:calc(var(--wi,0) * 70ms)}
.la-glow .fl.on .w{animation:lwGlow .9s ease-out}
.la-neon .fl.on .w{animation:lwNeon .7s linear}

/* the 5 "Teletype" effects, letter by letter (card player <b> letters and Now Playing <b> letters) */
.lfx .fl b,.np-fx .npl b{display:inline-block;font:inherit;white-space:pre;position:relative}
/* 1 · typewriter: letters type in one by one */
@keyframes lyShow{from{opacity:.35}to{opacity:1}}
.la-typewriter .fl[data-s=nx] b,.np-fx-typewriter .npl.n1 b{opacity:.35}
.la-typewriter .fl.on b,.np-fx-typewriter .npl.cur b{opacity:.35;animation:lyShow 1ms linear forwards;animation-delay:calc(var(--i) * var(--ts) * 1s)}
/* 2 · focus: each letter slips from a soft blur into focus */
@keyframes lyFocus{from{filter:blur(2px);opacity:.55}to{filter:none;opacity:1}}
/* (the waiting line is blurred as one piece — one filter instead of one per letter keeps phones smooth) */
.la-focus .fl[data-s=nx],.np-fx-focus .np-lines .npl.n1{filter:blur(2px)}
.la-focus .fl[data-s=nx] b,.np-fx-focus .npl.n1 b{opacity:.55}
.la-focus .fl.on b,.np-fx-focus .npl.cur b{filter:blur(2px);opacity:.55;animation:lyFocus .45s ease-out forwards;animation-delay:calc(var(--i) * var(--ts) * 1s)}
/* 3 · spotlight: a light runs across the unlit line and leaves it lit */
@keyframes lySpot{0%{opacity:.3;text-shadow:none}40%{opacity:1;text-shadow:0 0 14px rgba(255,255,255,.75)}100%{opacity:1;text-shadow:none}}
.la-spotlight .fl[data-s=nx] b,.np-fx-spotlight .npl.n1 b{opacity:.3}
.la-spotlight .fl.on b,.np-fx-spotlight .npl.cur b{opacity:.3;animation:lySpot .7s ease-out forwards;animation-delay:calc(var(--i) * var(--ts) * 1s)}
/* 4 · dissolve: letters fade up out of a blur, one after another */
@keyframes lyDis{from{opacity:.2;filter:blur(2px);transform:translateY(4px)}to{opacity:1;filter:none;transform:none}}
.la-dissolve .fl[data-s=nx],.np-fx-dissolve .np-lines .npl.n1{filter:blur(2px)}
.la-dissolve .fl[data-s=nx] b,.np-fx-dissolve .npl.n1 b{opacity:.2;transform:translateY(4px)}
.la-dissolve .fl.on b,.np-fx-dissolve .npl.cur b{opacity:.2;filter:blur(2px);transform:translateY(4px);animation:lyDis .5s ease-out forwards;animation-delay:calc(var(--i) * var(--ts) * 1s)}
/* 5 · curtain: letters rise from behind a hard edge (lines still to come wait behind it) */
@keyframes lyCur{from{transform:translateY(105%)}to{transform:none}}
.la-curtain .fl .w,.np-fx-curtain .npl .nw{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.04em .03em .14em;margin-bottom:-.14em}
.la-curtain .fl:is([data-s=nx],[data-s=far]) b,.np-fx-curtain .npl:is(.n1,.n2,.n3,.far) b{transform:translateY(105%)}
.la-curtain .fl.on b,.np-fx-curtain .npl.cur b{transform:translateY(105%);animation:lyCur .6s cubic-bezier(.22,1,.36,1) forwards;animation-delay:calc(var(--i) * var(--ts) * 1s)}

/* ===== Now Playing layout ===== */
.np-lines{position:relative;flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 70%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 70%,transparent 100%)}
.np-track{position:absolute;left:0;right:0;top:0;transition:transform .5s cubic-bezier(.25,1,.5,1);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.np-track.jump{transition:none}
.npl{font-size:calc(clamp(1.7rem,3.3vw,3rem) * var(--np-ls,1));font-weight:800;line-height:1.16;letter-spacing:-.015em;padding:.18em 0;color:rgba(255,255,255,.32);max-width:24ch;transition:opacity .4s ease}
.npl.past{opacity:.16}.npl.p1{opacity:.3}.npl.cur{opacity:1;color:rgba(255,255,255,.36)}.npl.n1{opacity:.6}.npl.n2{opacity:.42}.npl.n3{opacity:.3}.npl.far{opacity:.18}
.np-lines.blur .npl.past{filter:blur(2px)}.np-lines.blur .npl.n1{filter:blur(.6px)}.np-lines.blur .npl.n2{filter:blur(1.6px)}.np-lines.blur .npl.n3{filter:blur(2.6px)}.np-lines.blur .npl.far{filter:blur(4px)}
.npl.np-empty{color:rgba(255,255,255,.5)}
.nw{position:relative}
.npl.cur .nw.sung,.np-fx .npl.cur .nw.on{color:#fff}
.npl.cur .nw.on{color:rgba(255,255,255,.36)}
.npl.cur .nw.on::after{content:attr(data-t);position:absolute;left:0;top:0;white-space:pre;color:#fff;pointer-events:none;-webkit-clip-path:inset(-25% calc(100% - var(--p,0%)) -25% 0);clip-path:inset(-25% calc(100% - var(--p,0%)) -25% 0)}
.np-fx .npl.cur .nw.on::after,.npl.cur .nw.hot::after{content:none}
/* red words: a steady glow */
.nw.hot{color:color-mix(in srgb,var(--np-red) 55%,transparent)}
@keyframes npHot{0%,100%{text-shadow:0 0 14px color-mix(in srgb,var(--np-red) 60%,transparent),0 0 2px var(--np-red)}50%{text-shadow:0 0 26px color-mix(in srgb,var(--np-red) 85%,transparent),0 0 4px var(--np-red)}}
.npl.cur .nw.hot.on,.npl.cur .nw.hot.sung{color:var(--np-red);animation:npHot 1.8s ease-in-out infinite}
@media (max-width:860px){.npl{font-size:calc(clamp(1.45rem,7vw,2.1rem) * var(--np-ls,1));max-width:none}}

@media (prefers-reduced-motion:reduce){
  .plyrics .fl,.plyrics.strip .ltrk,.np-track,.npl{transition:none}
  .plyrics .fl .w,.plyrics .fl b,.npl b,.npl .nw{animation:none!important;opacity:1!important;filter:none!important;transform:none!important}
}
.fa-si::before{content:''!important;display:inline-block;width:1em;height:1em;vertical-align:-.125em;background:currentColor;-webkit-mask:var(--si) center/contain no-repeat;mask:var(--si) center/contain no-repeat}.fa-si-valorant{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M23.792 2.152a.252.252 0 0 0-.098.083c-3.384 4.23-6.769 8.46-10.15 12.69-.107.093-.025.288.119.265 2.439.003 4.877 0 7.316.001a.66.66 0 0 0 .552-.25c.774-.967 1.55-1.934 2.324-2.903a.72.72 0 0 0 .144-.49c-.002-3.077 0-6.153-.003-9.23.016-.11-.1-.206-.204-.167zM.077 2.166c-.077.038-.074.132-.076.205.002 3.074.001 6.15.001 9.225a.679.679 0 0 0 .158.463l7.64 9.55c.12.152.308.25.505.247 2.455 0 4.91.003 7.365 0 .142.02.222-.174.116-.265C10.661 15.176 5.526 8.766.4 2.35c-.08-.094-.174-.272-.322-.184z%22/%3E%3C/svg%3E")}.fa-si-osu{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M7.698 10.362c-.1855-.2184-.4189-.3905-.7002-.5162-.2813-.1257-.6104-.1885-.9874-.1885s-.7046.0628-.9829.1885-.5088.2978-.6912.5162c-.1827.2185-.3203.4773-.413.7765-.0928.2993-.1391.6194-.1391.9605 0 .3412.0463.6584.1391.9516.0927.2933.2303.5491.413.7675.1824.2185.4129.3891.6912.5116.2783.1226.6059.1841.9829.1841s.7061-.0615.9875-.1841c.2813-.1226.5146-.2931.7002-.5116.1855-.2184.3231-.4742.413-.7675.0897-.2931.1346-.6104.1346-.9516 0-.3411-.0449-.6612-.1346-.9605-.0899-.2992-.2276-.558-.4131-.7765zm-.965 2.8096c-.1467.2484-.3875.3725-.7227.3725-.3291 0-.567-.1241-.7136-.3725-.1467-.2483-.2199-.6059-.2199-1.0727s.0732-.8243.2199-1.0727c.1466-.2482.3844-.3725.7136-.3725.3352 0 .5759.1243.7227.3725.1466.2484.2199.6059.2199 1.0727.0001.4668-.0733.8245-.2199 1.0727zm11.8894-.8303-.0898-4.3896a4.5409 4.5409 0 0 1 .6912-.0539c.2334 0 .4668.0179.7002.0539l-.0898 4.3896c-.2096.0359-.41.0538-.6015.0538a3.4957 3.4957 0 0 1-.6103-.0538zm1.3196 1.4003c0 .2215-.0179.443-.0538.6643a4.2055 4.2055 0 0 1-.6553.0538 4.1414 4.1414 0 0 1-.6642-.0538 4.0882 4.0882 0 0 1-.0539-.6553c0-.2154.018-.4367.0539-.6643a4.0876 4.0876 0 0 1 .6552-.0538c.2155 0 .4368.018.6643.0538.0359.2276.0538.446.0538.6553zm-3.2226-4.0305c.2095 0 .422.018.6373.0539v4.4614c-.1916.0659-.4443.1302-.7585.193-.3141.0629-.6418.0943-.9829.0943-.3052 0-.5985-.024-.8798-.0718-.2813-.0479-.5282-.1495-.7405-.3052-.2125-.1555-.3815-.3829-.5072-.6823-.1257-.2991-.1885-.697-.1885-1.1938V9.765a3.8725 3.8725 0 0 1 .6373-.0539c.2094 0 .4219.018.6373.0539v2.4596c0 .2455.0194.4474.0584.6059.0388.1586.0988.2843.1795.377a.6606.6606 0 0 0 .3007.1974c.1197.0391.2603.0584.4219.0584.2214 0 .407-.0209.5566-.0628V9.765a3.8218 3.8218 0 0 1 .6284-.0539zm-4.3625 2.6841c.0538.1497.0808.3321.0808.5476 0 .2215-.0464.428-.1392.6194-.0928.1916-.2274.3577-.4039.4982-.1766.1407-.3905.2514-.6418.3322-.2514.0808-.5356.1212-.8528.1212a5.2984 5.2984 0 0 1-.395-.0135 3.1226 3.1226 0 0 1-.3456-.0448 4.0482 4.0482 0 0 1-.3277-.0763 3.9336 3.9336 0 0 1-.35-.1166 2.5768 2.5768 0 0 1 .0852-.4893 3.0737 3.0737 0 0 1 .1751-.4802c.1975.0779.3844.1362.561.1751.1765.039.3605.0584.5521.0584.0838 0 .175-.0075.2738-.0225a.9945.9945 0 0 0 .2737-.0808.6467.6467 0 0 0 .2109-.1526c.0569-.0628.0853-.145.0853-.2469 0-.1436-.0434-.2469-.1302-.3097-.0868-.0628-.208-.1181-.3636-.1661l-.5565-.1616c-.3352-.0956-.5969-.2379-.7855-.4263-.1885-.1886-.2827-.4713-.2827-.8484 0-.4547.163-.8108.4892-1.0682.3261-.2573.7705-.386 1.333-.386.2334 0 .4638.0211.6913.0629.2273.0419.4578.1048.6912.1885-.012.1557-.0419.3173-.0897.4847-.048.1676-.1048.3142-.1706.4398a3.58 3.58 0 0 0-.4757-.1571 2.18 2.18 0 0 0-.5477-.0673c-.2034 0-.3621.0314-.4758.0943-.1137.0629-.1705.1631-.1705.3007 0 .1317.0403.2244.1211.2783.0809.0538.1959.1048.3456.1526l.5117.1526c.1675.048.3187.1063.4533.1751.1347.0688.2498.1541.3456.2558.0958.1016.1707.2272.2246.3768zM12 0C5.3726 0 0 5.3726 0 12.0001 0 18.6273 5.3726 24 12 24c6.6275 0 12-5.3727 12-11.9999C24 5.3726 18.6275 0 12 0zm0 22.8c-5.9647 0-10.8-4.8354-10.8-10.7999C1.2 6.0353 6.0353 1.2 12 1.2s10.8 4.8353 10.8 10.8001C22.8 17.9646 17.9647 22.8 12 22.8z%22/%3E%3C/svg%3E")}.fa-si-chess{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 0a3.85 3.85 0 0 0-3.875 3.846A3.84 3.84 0 0 0 9.73 6.969l-2.79 1.85c0 .622.144 1.114.434 1.649H9.83c-.014.245-.014.549-.014.925 0 .025.003.048.006.071-.064 1.353-.507 3.472-3.62 5.842-.816.625-1.423 1.495-1.806 2.533a.33.33 0 0 0-.045.084 8.124 8.124 0 0 0-.39 2.516c0 .1.216 1.561 8.038 1.561s8.038-1.46 8.038-1.561c0-2.227-.824-4.048-2.24-5.133-4.034-3.08-3.586-5.74-3.644-6.838h2.458c.29-.535.434-1.027.434-1.649l-2.79-1.836a3.86 3.86 0 0 0 1.604-3.123A3.873 3.873 0 0 0 13.445.275c-.004-.002-.01.004-.015.004A3.76 3.76 0 0 0 12 0Z%22/%3E%3C/svg%3E")}.fa-si-lichess{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M10.457 6.161a.237.237 0 0 0-.296.165c-.8 2.785 2.819 5.579 5.214 7.428.653.504 1.216.939 1.591 1.292 1.745 1.642 2.564 2.851 2.733 3.178a.24.24 0 0 0 .275.122c.047-.013 4.726-1.3 3.934-4.574a.257.257 0 0 0-.023-.06L18.204 3.407 18.93.295a.24.24 0 0 0-.262-.293c-1.7.201-3.115.435-4.5 1.425-4.844-.323-8.718.9-11.213 3.539C.334 7.737-.246 11.515.085 14.128c.763 5.655 5.191 8.631 9.081 9.532.993.229 1.974.34 2.923.34 3.344 0 6.297-1.381 7.946-3.85a.24.24 0 0 0-.372-.3c-3.411 3.527-9.002 4.134-13.296 1.444-4.485-2.81-6.202-8.41-3.91-12.749C4.741 4.221 8.801 2.362 13.888 3.31c.056.01.115 0 .165-.029l.335-.197c.926-.546 1.961-1.157 2.873-1.279l-.694 1.993a.243.243 0 0 0 .02.202l6.082 10.192c-.193 2.028-1.706 2.506-2.226 2.611-.287-.645-.814-1.364-2.306-2.803-.422-.407-1.21-.941-2.124-1.56-2.364-1.601-5.937-4.02-5.391-5.984a.239.239 0 0 0-.165-.295z%22/%3E%3C/svg%3E")}.fa-si-cs2{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M21.7101 3.2348a.0218.0218 0 0 1-.0216-.0215c.001-.0815.003-.3698.004-.424 0-.1292-.1428-.1831-.2117-.0829-.0113.016-.1457.212-.2287.3323a.0244.0244 0 0 1-.0198.0103h-6.5508a.0473.0473 0 0 1-.0473-.0463l-.0131-.177a.0477.0477 0 0 1 .056-.0477l.335.0319a.059.059 0 0 0 .0624-.0445l.2441-.989a.0475.0475 0 0 0-.0295-.0542l-.2268-.0848a.0427.0427 0 0 1-.0263-.0295c-.0412-.1722-.3766-1.3235-1.9935-1.581-.7867-.125-1.302.2107-1.577.4784a1.594 1.594 0 0 0-.3018.4095l-.0965.2125c-.008.0164-.046.2157-.046.234l.0513.9815a.109.109 0 0 0 .0422.0856l.3546.153-.1958.3244a.055.055 0 0 1-.053.0402s-.417.0108-.6227.0192c-.3856.0155-1.2444.4858-1.8773 1.8385-.6219 1.3282-.724 1.5496-.724 1.5496a.0736.0736 0 0 1-.0684.0398l-.5776.0019c-.0356 0-.0736.0285-.0886.0608l-.8982 2.5428c-.0149.0323-.006.081.0173.1081l.627.3918a.059.059 0 0 1 .0195.059l-.3274.9664a.1916.1916 0 0 1-.0235.0618l-.4343.3824a.1056.1056 0 0 0-.0356.059l-.5978 1.5308a.0632.0632 0 0 1-.0608.0455l-.3355.0018a.1633.1633 0 0 0-.162.1488l-.2007 2.2883a1.7194 1.7194 0 0 1-.0159.1207l-.1583.908a.128.128 0 0 1-.0333.0553l-.5584.4263c-.2559.2443-.5988.6903-.7665 1.0015l-1.86 3.9235c-.045.0833-.0811.227-.0788.3221l.1321.2354c.002.0842-.0319.4559-.0707.5307L.817 23.6545a.0985.0985 0 0 0-.003.0856l.0309.0706.0932.1859 1.8913.0029c.1173.0106.247-.1396.2507-.3005l.1027-1.2965-.0268-.1952 3.6063-4.232c.0942-.1146.222-.3168.2861-.4506l1.7186-3.7892a.1712.1712 0 0 1 .1004-.088l.1086-.035a.1694.1694 0 0 1 .1827.0528c.1505.1807.5042.781.6765 1.0315.1425.2079.8495 1.2304 1.1582 1.5675.0853.0926.3481.198.4658.2696a.083.083 0 0 1 .029.1119l-1.0298 1.8083-.4549 2.1357a.9542.9542 0 0 0-.0356.1526l-.4118 1.4831c.003.1873-.141.2856-.1527.5064l-.15 1.084a.0581.0581 0 0 0 .0582.0614l2.5445.014c.0951-.0003.1902-.0045.2854-.0067a1.1049 1.1049 0 0 0 .0755-.0069c.1242-.0158.5629-.0754.75-.1503.1097-.0388.1809-.0819.2268-.1295.1855-.1935.2002-.278.2034-.3975.001-.0212-.011-.0726-.0283-.1049-.0053-.0117-.0316-.0382-.059-.0477l-1.1815-.3562a.3693.3693 0 0 1-.1889-.1338l-.3172-.469a.0865.0865 0 0 1 .0173-.0973l.618-.609a.2017.2017 0 0 0 .0483-.072l1.9036-4.488c.089-.285.0595-.6056 0-.9445-.044-.2504-.6854-1.3264-.8532-1.6236-.1476-.262-1.0677-1.8707-1.286-2.2517-.0793-.1376-.1894-.1328-.2287-.276l-.0726-1.1173a.0398.0398 0 0 1 .0356-.0505l.3312-.0276a.093.093 0 0 0 .0741-.0487l1.147-2.1544a.0958.0958 0 0 0-.002-.094l-.2349-.2907a.0874.0874 0 0 1-.001-.0875l.3515-.3796a.054.054 0 0 1 .0736-.0206l.9343.5266a.3819.3819 0 0 0 .186.0505c.259-.0019.6858-.1549.908-.2906a.3833.3833 0 0 0 .1386-.148l.4583-1.0703c.006-.0136.0262-.0117.029.0028l.1278.5953a.0635.0635 0 0 0 .0788.0501l1.3494-.3a.0662.0662 0 0 0 .05-.0786l-.318-1.3437a.0716.0716 0 0 1 .009-.0534l.1313-.2036a.281.281 0 0 0 .036-.0814l.1589-.725a.0408.0408 0 0 1 .0397-.0323l3.7327.0047a.0916.0916 0 0 0 .0932-.0931v-.6336a.022.022 0 0 1 .0216-.0216h1.4393a.0465.0465 0 0 0 .0464-.0463v-.2855a.0465.0465 0 0 0-.0464-.0463h-1.4398z%22/%3E%3C/svg%3E")}.fa-si-modrinth{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12.252.004a11.78 11.768 0 0 0-8.92 3.73 11 10.999 0 0 0-2.17 3.11 11.37 11.359 0 0 0-1.16 5.169c0 1.42.17 2.5.6 3.77.24.759.77 1.899 1.17 2.529a12.3 12.298 0 0 0 8.85 5.639c.44.05 2.54.07 2.76.02.2-.04.22.1-.26-1.7l-.36-1.37-1.01-.06a8.5 8.489 0 0 1-5.18-1.8 5.34 5.34 0 0 1-1.3-1.26c0-.05.34-.28.74-.5a37.572 37.545 0 0 1 2.88-1.629c.03 0 .5.45 1.06.98l1 .97 2.07-.43 2.06-.43 1.47-1.47c.8-.8 1.48-1.5 1.48-1.52 0-.09-.42-1.63-.46-1.7-.04-.06-.2-.03-1.02.18-.53.13-1.2.3-1.45.4l-.48.15-.53.53-.53.53-.93.1-.93.07-.52-.5a2.7 2.7 0 0 1-.96-1.7l-.13-.6.43-.57c.68-.9.68-.9 1.46-1.1.4-.1.65-.2.83-.33.13-.099.65-.579 1.14-1.069l.9-.9-.7-.7-.7-.7-1.95.54c-1.07.3-1.96.53-1.97.53-.03 0-2.23 2.48-2.63 2.97l-.29.35.28 1.03c.16.56.3 1.16.31 1.34l.03.3-.34.23c-.37.23-2.22 1.3-2.84 1.63-.36.2-.37.2-.44.1-.08-.1-.23-.6-.32-1.03-.18-.86-.17-2.75.02-3.73a8.84 8.839 0 0 1 7.9-6.93c.43-.03.77-.08.78-.1.06-.17.5-2.999.47-3.039-.01-.02-.1-.02-.2-.03Zm3.68.67c-.2 0-.3.1-.37.38-.06.23-.46 2.42-.46 2.52 0 .04.1.11.22.16a8.51 8.499 0 0 1 2.99 2 8.38 8.379 0 0 1 2.16 3.449 6.9 6.9 0 0 1 .4 2.8c0 1.07 0 1.27-.1 1.73a9.37 9.369 0 0 1-1.76 3.769c-.32.4-.98 1.06-1.37 1.38-.38.32-1.54 1.1-1.7 1.14-.1.03-.1.06-.07.26.03.18.64 2.56.7 2.78l.06.06a12.07 12.058 0 0 0 7.27-9.4c.13-.77.13-2.58 0-3.4a11.96 11.948 0 0 0-5.73-8.578c-.7-.42-2.05-1.06-2.25-1.06Z%22/%3E%3C/svg%3E")}.fa-si-monkeytype{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M20 14.4a.8.8 0 1 1 0 1.6.8.8 0 0 1 0-1.6ZM8.8 14.4h4.8a.8.8 0 1 1 0 1.6H8.8a.8.8 0 1 1 0-1.6ZM7.2 9.6a.8.8 0 0 1 .8.8V12a.8.8 0 1 1-1.6 0v-1.6a.8.8 0 0 1 .8-.8Z M3.201 10.359A2.4 2.4 0 0 1 7.2 8.612a2.4 2.4 0 0 1 4 1.788V12a.8.8 0 1 1-1.6 0v-1.6a.8.8 0 1 0-1.6 0V12a.8.8 0 1 1-1.6 0v-1.6a.8.8 0 1 0-1.6 0V12a.8.8 0 1 1-1.6 0v-1.6l.001-.041ZM17.6 12.8v2.4a.8.8 0 1 1-1.6 0v-2.4h-2.306c-.493 0-.894-.358-.894-.8 0-.442.401-.8.894-.8h6.212c.493 0 .894.358.894.8 0 .442-.401.8-.894.8H17.6ZM16.8 8H20a.8.8 0 1 1 0 1.6h-3.2a.8.8 0 1 1 0-1.6ZM4 14.4h1.6a.8.8 0 1 1 0 1.6H4a.8.8 0 1 1 0-1.6ZM13.2 8h.4a.8.8 0 1 1 0 1.6h-.4a.8.8 0 1 1 0-1.6Z M1.6 14.4H0V8.8c0-2.208 1.792-4 4-4h16c2.208 0 4 1.792 4 4v6.4c0 2.208-1.792 4-4 4H4c-2.208 0-4-1.792-4-4v-1.6h1.6v1.6A2.4 2.4 0 0 0 4 17.6h16a2.4 2.4 0 0 0 2.4-2.4V8.8A2.4 2.4 0 0 0 20 6.4H4a2.4 2.4 0 0 0-2.4 2.4v5.6Z%22/%3E%3C/svg%3E")}.fa-si-duolingo{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M14.484 18.213c1.142 1.033 2.657 1.662 4.316 1.662l.294-.001c1.985-.038 3.749-.976 4.905-2.422v1.98c0 2.522-2.043 4.568-4.567 4.568H4.569C2.045 23.998.002 21.954.002 19.43v-1.92c1.181 1.443 2.976 2.365 4.985 2.365l.35-.001c1.61-.027 3.076-.646 4.191-1.648.555.764 1.456 1.26 2.473 1.26 1.023 0 1.928-.502 2.483-1.273zm-5.349-.996c-.989 1.022-2.375 1.658-3.909 1.658h-.239c-2.229 0-4.146-1.343-4.987-3.262v-7.16c.281-.64.68-1.216 1.169-1.699-.035-.731.132-1.469.511-2.128.256-.44.867-.504 1.21-.124l.766.851c.007-.003.014-.003.021-.005-.098-.78.037-1.587.419-2.308.24-.45.757-.53 1.114-.164 0 0 3.939 3.979 4.035 4.084 1.542 1.348 4.066 1.287 5.686-.18.002-.003.007-.005.009-.007.042-.042 3.855-3.9 3.855-3.9.3361-.3451.8619-.3101 1.113.164.385.724.518 1.535.417 2.32.002.001.003.001.004.002l.007.002c.001 0 .002 0 .003.001l.776-.86c.342-.38.954-.316 1.207.124.387.673.553 1.427.509 2.173.496.501.897 1.099 1.169 1.762v6.941c-.816 1.978-2.761 3.373-5.032 3.373H18.8c-1.547 0-2.945-.648-3.936-1.686a.8386.8386 0 0 0-.009-.067c.313-.017.528-.162.688-.33.152-.16.299-.397.299-.776 0 0-.022-.312-.024-.324.693.767 1.696 1.249 2.811 1.249 2.092 0 3.787-1.696 3.787-3.787v-2.243c0-2.092-1.697-3.787-3.787-3.787-2.093 0-3.787 1.695-3.787 3.787v2.243c0 .266.027.526.079.776-.712-.784-1.744-1.278-2.842-1.278-1.239 0-2.339.523-3.064 1.355.063-.274.097-.56.097-.853v-2.243c0-2.092-1.697-3.787-3.788-3.787-2.09 0-3.787 1.695-3.787 3.787v2.243c0 2.093 1.697 3.787 3.787 3.787 1.151 0 2.182-.513 2.876-1.322-.008.035-.039.395-.039.395 0 .378.147.616.298.775.16.168.374.312.688.331a.7783.7783 0 0 0-.012.097zm.997.073c.729.131 1.733.305 1.792.305h.157c.059 0 1.789-.303 1.789-.303-.327.705-1.041 1.194-1.869 1.194-.829 0-1.543-.49-1.869-1.196zm-.971-1.379c.246-1.313 1.462-2.259 2.918-2.259 1.324 0 2.521.97 2.763 2.259v.105c0 .082-.029.115-.103.106l-2.658.473h-.157l-2.66-.476c-.075.01-.103-.023-.103-.105Zm8.023-6.392c.255-.14.549-.22.861-.22.992 0 1.798.804 1.798 1.798v1.919c0 .991-.804 1.797-1.798 1.797-.991 0-1.797-.803-1.797-1.797v-1.542c.034.003.068.005.103.005.64 0 1.16-.518 1.16-1.156 0-.312-.125-.596-.327-.804zM5.162 9.461c.227-.104.48-.162.746-.162.991 0 1.798.804 1.798 1.798v1.919c0 .991-.804 1.797-1.798 1.797-.991 0-1.797-.803-1.797-1.797v-1.571c.089.022.182.034.278.034.641 0 1.16-.518 1.16-1.156 0-.342-.149-.65-.387-.862ZM.002 6.554V4.568C.002 2.044 2.045 0 4.569 0h14.865c2.522 0 4.565 2.044 4.565 4.568v2.041a5.1847 5.1847 0 0 0-.164-.197 4.8592 4.8592 0 0 0-.646-2.284c-.433-.754-1.315-1.037-2.07-.786a4.785 4.785 0 0 0-.327-.774h-.001c-.287-.54-.758-.835-1.248-.908-.493-.073-1.033.072-1.464.515l-3.82 3.864c-1.226 1.11-3.127 1.199-4.313.205-.103-.109-4.025-4.071-4.025-4.071-.427-.438-.966-.584-1.46-.51-.489.073-.961.367-1.248.907v.002c-.133.25-.241.508-.327.771-.753-.252-1.635.029-2.071.782 0 0-.001.001-.001.002-.4.694-.613 1.459-.645 2.23-.057.065-.113.13-.167.197z%22/%3E%3C/svg%3E")}.fa-si-epic{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M3.537 0C2.165 0 1.66.506 1.66 1.879V18.44a4.262 4.262 0 00.02.433c.031.3.037.59.316.92.027.033.311.245.311.245.153.075.258.13.43.2l8.335 3.491c.433.199.614.276.928.27h.002c.314.006.495-.071.928-.27l8.335-3.492c.172-.07.277-.124.43-.2 0 0 .284-.211.311-.243.28-.33.285-.621.316-.92a4.261 4.261 0 00.02-.434V1.879c0-1.373-.506-1.88-1.878-1.88zm13.366 3.11h.68c1.138 0 1.688.553 1.688 1.696v1.88h-1.374v-1.8c0-.369-.17-.54-.523-.54h-.235c-.367 0-.537.17-.537.539v5.81c0 .369.17.54.537.54h.262c.353 0 .523-.171.523-.54V8.619h1.373v2.143c0 1.144-.562 1.71-1.7 1.71h-.694c-1.138 0-1.7-.566-1.7-1.71V4.82c0-1.144.562-1.709 1.7-1.709zm-12.186.08h3.114v1.274H6.117v2.603h1.648v1.275H6.117v2.774h1.74v1.275h-3.14zm3.816 0h2.198c1.138 0 1.7.564 1.7 1.708v2.445c0 1.144-.562 1.71-1.7 1.71h-.799v3.338h-1.4zm4.53 0h1.4v9.201h-1.4zm-3.13 1.235v3.392h.575c.354 0 .523-.171.523-.54V4.965c0-.368-.17-.54-.523-.54zm-3.74 10.147a1.708 1.708 0 01.591.108 1.745 1.745 0 01.49.299l-.452.546a1.247 1.247 0 00-.308-.195.91.91 0 00-.363-.068.658.658 0 00-.28.06.703.703 0 00-.224.163.783.783 0 00-.151.243.799.799 0 00-.056.299v.008a.852.852 0 00.056.31.7.7 0 00.157.245.736.736 0 00.238.16.774.774 0 00.303.058.79.79 0 00.445-.116v-.339h-.548v-.565H7.37v1.255a2.019 2.019 0 01-.524.307 1.789 1.789 0 01-.683.123 1.642 1.642 0 01-.602-.107 1.46 1.46 0 01-.478-.3 1.371 1.371 0 01-.318-.455 1.438 1.438 0 01-.115-.58v-.008a1.426 1.426 0 01.113-.57 1.449 1.449 0 01.312-.46 1.418 1.418 0 01.474-.309 1.58 1.58 0 01.598-.111 1.708 1.708 0 01.045 0zm11.963.008a2.006 2.006 0 01.612.094 1.61 1.61 0 01.507.277l-.386.546a1.562 1.562 0 00-.39-.205 1.178 1.178 0 00-.388-.07.347.347 0 00-.208.052.154.154 0 00-.07.127v.008a.158.158 0 00.022.084.198.198 0 00.076.066.831.831 0 00.147.06c.062.02.14.04.236.061a3.389 3.389 0 01.43.122 1.292 1.292 0 01.328.17.678.678 0 01.207.24.739.739 0 01.071.337v.008a.865.865 0 01-.081.382.82.82 0 01-.229.285 1.032 1.032 0 01-.353.18 1.606 1.606 0 01-.46.061 2.16 2.16 0 01-.71-.116 1.718 1.718 0 01-.593-.346l.43-.514c.277.223.578.335.9.335a.457.457 0 00.236-.05.157.157 0 00.082-.142v-.008a.15.15 0 00-.02-.077.204.204 0 00-.073-.066.753.753 0 00-.143-.062 2.45 2.45 0 00-.233-.062 5.036 5.036 0 01-.413-.113 1.26 1.26 0 01-.331-.16.72.72 0 01-.222-.243.73.73 0 01-.082-.36v-.008a.863.863 0 01.074-.359.794.794 0 01.214-.283 1.007 1.007 0 01.34-.185 1.423 1.423 0 01.448-.066 2.006 2.006 0 01.025 0zm-9.358.025h.742l1.183 2.81h-.825l-.203-.499H8.623l-.198.498h-.81zm2.197.02h.814l.663 1.08.663-1.08h.814v2.79h-.766v-1.602l-.711 1.091h-.016l-.707-1.083v1.593h-.754zm3.469 0h2.235v.658h-1.473v.422h1.334v.61h-1.334v.442h1.493v.658h-2.255zm-5.3.897l-.315.793h.624zm-1.145 5.19h8.014l-4.09 1.348z%22/%3E%3C/svg%3E")}.fa-si-riot{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M13.458.86 0 7.093l3.353 12.761 2.552-.313-.701-8.024.838-.373 1.447 8.202 4.361-.535-.775-8.857.83-.37 1.591 9.025 4.412-.542-.849-9.708.84-.374 1.74 9.87L24 17.318V3.5Zm.316 19.356.222 1.256L24 23.14v-4.18l-10.22 1.256Z%22/%3E%3C/svg%3E")}.fa-si-lol{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22m1.912 0 1.212 2.474v19.053L1.912 24h14.73l1.337-4.682H8.33V0ZM12 1.516c-.913 0-1.798.112-2.648.312v1.74a9.738 9.738 0 0 1 2.648-.368c5.267 0 9.536 4.184 9.536 9.348a9.203 9.203 0 0 1-2.3 6.086l-.273.954-.602 2.112c2.952-1.993 4.89-5.335 4.89-9.122C23.25 6.468 18.213 1.516 12 1.516Zm0 2.673c-.924 0-1.814.148-2.648.414v13.713h8.817a8.246 8.246 0 0 0 2.36-5.768c0-4.617-3.818-8.359-8.529-8.359zM2.104 7.312A10.858 10.858 0 0 0 .75 12.576c0 1.906.492 3.7 1.355 5.266z%22/%3E%3C/svg%3E")}.fa-si-battlenet{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M18.94 8.296C15.9 6.892 11.534 6 7.426 6.332c.206-1.36.714-2.308 1.548-2.508 1.148-.275 2.4.48 3.594 1.854.782.102 1.71.28 2.355.429C12.747 2.013 9.828-.282 7.607.565c-1.688.644-2.553 2.97-2.448 6.094-2.2.468-3.915 1.3-5.013 2.495-.056.065-.181.227-.137.305.034.058.146-.008.194-.04 1.274-.89 2.904-1.373 5.027-1.676.303 3.333 1.713 7.56 4.055 10.952-1.28.502-2.356.536-2.946-.087-.812-.856-.784-2.318-.19-4.04a26.764 26.764 0 0 1-.807-2.254c-2.459 3.934-2.986 7.61-1.143 9.11 1.402 1.14 3.847.725 6.502-.926 1.505 1.672 3.083 2.74 4.667 3.094.084.015.287.043.332-.034.034-.06-.08-.124-.131-.149-1.408-.657-2.64-1.828-3.964-3.515 2.735-1.929 5.691-5.263 7.457-8.988 1.076.86 1.64 1.773 1.398 2.595-.336 1.131-1.615 1.84-3.403 2.185a27.697 27.697 0 0 1-1.548 1.826c4.634.16 8.08-1.22 8.458-3.565.286-1.786-1.295-3.696-4.053-5.17.696-2.139.832-4.04.346-5.588-.029-.08-.106-.27-.196-.27-.068 0-.067.13-.063.187.135 1.547-.263 3.2-1.062 5.19zm-8.533 9.869c-1.96-3.145-3.09-6.849-3.082-10.594 3.702-.124 7.474.748 10.714 2.627-1.743 3.269-4.385 6.1-7.633 7.966h.001z%22/%3E%3C/svg%3E")}.fa-si-mal{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M8.273 7.247v8.423l-2.103-.003v-5.216l-2.03 2.404-1.989-2.458-.02 5.285H.001L0 7.247h2.203l1.865 2.545 2.015-2.546 2.19.001zm8.628 2.069l.025 6.335h-2.365l-.008-2.871h-2.8c.07.499.21 1.266.417 1.779.155.381.298.751.583 1.128l-1.705 1.125c-.349-.636-.622-1.337-.878-2.082a9.296 9.296 0 0 1-.507-2.179c-.085-.75-.097-1.471.107-2.212a3.908 3.908 0 0 1 1.161-1.866c.313-.293.749-.5 1.1-.687.351-.187.743-.264 1.107-.359a7.405 7.405 0 0 1 1.191-.183c.398-.034 1.107-.066 2.39-.028l.545 1.749H14.51c-.593.008-.878.001-1.341.209a2.236 2.236 0 0 0-1.278 1.92l2.663.033.038-1.81h2.309zm3.992-2.099v6.627l3.107.032-.43 1.775h-4.807V7.187l2.13.03z%22/%3E%3C/svg%3E")}.fa-si-anilist{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M24 17.53v2.421c0 .71-.391 1.101-1.1 1.101h-5l-.057-.165L11.84 3.736c.106-.502.46-.788 1.053-.788h2.422c.71 0 1.1.391 1.1 1.1v12.38H22.9c.71 0 1.1.392 1.1 1.101zM11.034 2.947l6.337 18.104h-4.918l-1.052-3.131H6.019l-1.077 3.131H0L6.361 2.948h4.673zm-.66 10.96-1.69-5.014-1.541 5.015h3.23z%22/%3E%3C/svg%3E")}.fa-si-letterboxd{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M8.224 14.352a4.447 4.447 0 0 1-3.775 2.092C1.992 16.444 0 14.454 0 12s1.992-4.444 4.45-4.444c1.592 0 2.988.836 3.774 2.092-.427.682-.673 1.488-.673 2.352s.246 1.67.673 2.352zM15.101 12c0-.864.247-1.67.674-2.352-.786-1.256-2.183-2.092-3.775-2.092s-2.989.836-3.775 2.092c.427.682.674 1.488.674 2.352s-.247 1.67-.674 2.352c.786 1.256 2.183 2.092 3.775 2.092s2.989-.836 3.775-2.092A4.42 4.42 0 0 1 15.1 12zm4.45-4.444a4.447 4.447 0 0 0-3.775 2.092c.427.682.673 1.488.673 2.352s-.246 1.67-.673 2.352a4.447 4.447 0 0 0 3.775 2.092C22.008 16.444 24 14.454 24 12s-1.992-4.444-4.45-4.444z%22/%3E%3C/svg%3E")}.fa-si-imdb{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M22.3781 0H1.6218C.7411.0583.0587.7437.0018 1.5953l-.001 20.783c.0585.8761.7125 1.543 1.5559 1.6191A.337.337 0 0 0 1.6016 24h20.7971a.4579.4579 0 0 0 .0437-.002c.8727-.0768 1.5568-.8271 1.5568-1.7085V1.7098c0-.8914-.696-1.6416-1.584-1.7078A.3294.3294 0 0 0 22.3781 0zm0 .496a1.2144 1.2144 0 0 1 1.1252 1.2139v20.5797c0 .6377-.4875 1.1602-1.1045 1.2145H1.6016c-.5967-.0543-1.0645-.5297-1.1053-1.1258V1.6284C.5371 1.0185 1.0184.5364 1.6217.496h20.7564zM4.7954 8.2603v7.3636H2.8899V8.2603h1.9055zm6.5367 0v7.3636H9.6707v-4.9704l-.6711 4.9704H7.813l-.6986-4.8618-.0066 4.8618h-1.668V8.2603h2.468c.0748.4476.1492.9694.2307 1.5734l.2712 1.8713.4407-3.4447h2.4817zm2.9772 1.3289c.0742.0404.122.108.1417.2034.0279.0953.0345.3118.0345.6442v2.8548c0 .4881-.0345.7867-.0955.8954-.0609.1152-.2304.1695-.5018.1695V9.5211c.204 0 .3457.0205.4211.0681zm-.0211 6.0347c.4543 0 .8006-.0265 1.0245-.0742.2304-.0477.4204-.1357.5694-.2648.1556-.1218.2642-.298.3251-.5219.0611-.2238.1021-.6648.1021-1.3224v-2.5832c0-.6986-.0271-1.1668-.0742-1.4039-.041-.237-.1431-.4543-.3126-.6437-.1695-.1973-.4198-.3324-.7456-.421-.3191-.0808-.8542-.1285-1.7694-.1285h-1.4244v7.3636h2.3051zm5.14-1.7827c0 .3523-.0199.5762-.0544.6708-.033.0947-.1894.1424-.3046.1424-.1086 0-.19-.0477-.2238-.1351-.041-.0887-.0609-.2986-.0609-.6238v-1.9469c0-.3324.0199-.5423.0543-.6237.0338-.0808.1086-.122.2171-.122.1153 0 .2709.0412.3114.1425.041.0947.0609.2986.0609.6032v1.8926zm-2.4747-5.5809v7.3636h1.7157l.1152-.4675c.1556.1894.3251.3324.5152.4271.1828.0881.4608.1357.678.1357.3047 0 .5629-.0748.7802-.237.2165-.1562.3589-.3462.4198-.5628.0543-.2173.0887-.543.0887-.9841v-2.0675c0-.4409-.0139-.7324-.0344-.8681-.0199-.1357-.0742-.2781-.1695-.4204-.1021-.1425-.2437-.251-.4272-.3325-.1834-.0742-.3999-.1152-.6576-.1152-.2172 0-.4952.0477-.6846.1285-.1835.0887-.353.2238-.5086.4007V8.2603h-1.8309z%22/%3E%3C/svg%3E")}.fa-si-tmdb{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M6.62 12a2.291 2.291 0 0 1 2.292-2.295h-.013A2.291 2.291 0 0 1 11.189 12a2.291 2.291 0 0 1-2.29 2.291h.013A2.291 2.291 0 0 1 6.62 12zm10.72-4.062h4.266a2.291 2.291 0 0 0 2.29-2.291 2.291 2.291 0 0 0-2.29-2.296H17.34a2.291 2.291 0 0 0-2.291 2.296 2.291 2.291 0 0 0 2.29 2.29zM2.688 20.645h8.285a2.291 2.291 0 0 0 2.291-2.292 2.291 2.291 0 0 0-2.29-2.295H2.687a2.291 2.291 0 0 0-2.291 2.295 2.291 2.291 0 0 0 2.29 2.292zm10.881-6.354h.81l1.894-4.586H15.19l-1.154 3.008h-.013l-1.135-3.008h-1.154zm4.208 0h1.011V9.705h-1.011zm2.878 0h3.235v-.93h-2.223v-.933h1.99v-.934h-1.99v-.855h2.107v-.934h-3.112zM1.31 7.941h1.01V4.247h1.31v-.895H0v.895h1.31zm3.747 0h1.011V5.959h1.958v1.984h1.011v-4.59h-1.01v1.711H6.061V3.351H5.057zm5.348 0h3.242v-.933H11.41v-.934h1.99v-.933h-1.99v-.856h2.107v-.934h-3.112zM.162 14.296h1.005v-3.52h.013l1.167 3.52h.765l1.206-3.52h.013v3.52h1.011v-4.59H3.82L2.755 12.7h-.013L1.686 9.705H.156zm14.534 6.353h1.641a3.188 3.188 0 0 0 .98-.149 2.531 2.531 0 0 0 .824-.437 2.123 2.123 0 0 0 .567-.713 2.193 2.193 0 0 0 .223-.983 2.399 2.399 0 0 0-.218-1.07 1.958 1.958 0 0 0-.586-.716 2.405 2.405 0 0 0-.873-.392 4.349 4.349 0 0 0-1.046-.13h-1.519zm1.013-3.656h.596a2.26 2.26 0 0 1 .606.08 1.514 1.514 0 0 1 .503.244 1.167 1.167 0 0 1 .34.412 1.28 1.28 0 0 1 .13.587 1.546 1.546 0 0 1-.13.658 1.127 1.127 0 0 1-.347.433 1.41 1.41 0 0 1-.518.238 2.797 2.797 0 0 1-.649.07h-.538zm4.686 3.656h1.88a2.997 2.997 0 0 0 .613-.064 1.735 1.735 0 0 0 .554-.214 1.221 1.221 0 0 0 .402-.39 1.105 1.105 0 0 0 .155-.606 1.188 1.188 0 0 0-.071-.415 1.01 1.01 0 0 0-.204-.34 1.087 1.087 0 0 0-.317-.24 1.297 1.297 0 0 0-.413-.13v-.012a1.203 1.203 0 0 0 .575-.366.962.962 0 0 0 .216-.648 1.081 1.081 0 0 0-.149-.603 1.022 1.022 0 0 0-.389-.354 1.673 1.673 0 0 0-.54-.169 4.463 4.463 0 0 0-.6-.041h-1.712zm1.011-3.734h.687a1.4 1.4 0 0 1 .24.022.748.748 0 0 1 .22.075.432.432 0 0 1 .16.147.418.418 0 0 1 .061.236.47.47 0 0 1-.055.233.433.433 0 0 1-.146.156.62.62 0 0 1-.204.084 1.058 1.058 0 0 1-.23.026h-.745zm0 1.835h.765a1.96 1.96 0 0 1 .266.02 1.015 1.015 0 0 1 .26.07.519.519 0 0 1 .204.152.406.406 0 0 1 .08.26.481.481 0 0 1-.06.253.519.519 0 0 1-.16.168.62.62 0 0 1-.217.09 1.155 1.155 0 0 1-.237.027H21.4z%22/%3E%3C/svg%3E")}.fa-si-trakt{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M12 24C5.385 24 0 18.615 0 12S5.385 0 12 0s12 5.385 12 12-5.385 12-12 12zm0-22.789C6.05 1.211 1.211 6.05 1.211 12S6.05 22.79 12 22.79 22.79 17.95 22.79 12 17.95 1.211 12 1.211zm-7.11 17.32c1.756 1.92 4.294 3.113 7.11 3.113 1.439 0 2.801-.313 4.027-.876l-6.697-6.68-4.44 4.443zm14.288-.067c1.541-1.71 2.484-3.99 2.484-6.466 0-3.885-2.287-7.215-5.568-8.76l-6.089 6.076 9.164 9.15h.009zm-9.877-8.429L4.227 15.09l-.679-.68 5.337-5.336 6.23-6.225c-.978-.328-2.02-.509-3.115-.509C6.663 2.337 2.337 6.663 2.337 12c0 2.172.713 4.178 1.939 5.801l5.056-5.055.359.329 7.245 7.245c.15-.082.285-.164.42-.266L9.33 12.05l-4.854 4.855-.679-.679 5.535-5.535.359.331 8.46 8.437c.135-.1.255-.215.375-.316L9.39 10.027l-.083.015-.006-.007zm3.047 1.028l-.678-.676 4.788-4.79.679.689-4.789 4.785v-.008zm4.542-6.578l-5.52 5.52-.68-.679 5.521-5.52.679.684v-.005z%22/%3E%3C/svg%3E")}.fa-si-crunchyroll{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M2.933 13.467a10.55 10.55 0 1 1 21.067-.8V12c0-6.627-5.373-12-12-12S0 5.373 0 12s5.373 12 12 12h.8a10.617 10.617 0 0 1-9.867-10.533zM19.2 14a3.85 3.85 0 0 1-1.333-7.467A7.89 7.89 0 0 0 14 5.6a8.4 8.4 0 1 0 8.4 8.4 6.492 6.492 0 0 0-.133-1.6A3.415 3.415 0 0 1 19.2 14z%22/%3E%3C/svg%3E")}.fa-si-netflix{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M5.398 0v.006c3.028 8.556 5.37 15.175 8.348 23.596 2.344.058 4.85.398 4.854.398-2.8-7.924-5.923-16.747-8.487-24zm8.489 0v9.63L18.6 22.951c-.043-7.86-.004-15.913.002-22.95zM5.398 1.05V24c1.873-.225 2.81-.312 4.715-.398v-9.22z%22/%3E%3C/svg%3E")}.fa-si-roblox{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M18.926 23.998 0 18.892 5.075.002 24 5.108ZM15.348 10.09l-5.282-1.453-1.414 5.273 5.282 1.453z%22/%3E%3C/svg%3E")}.fa-si-kick{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M1.333 0h8v5.333H12V2.667h2.667V0h8v8H20v2.667h-2.667v2.666H20V16h2.667v8h-8v-2.667H12v-2.666H9.333V24h-8Z%22/%3E%3C/svg%3E")}.fa-si-steam{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M11.979 0C5.678 0 .511 4.86.022 11.037l6.432 2.658c.545-.371 1.203-.59 1.912-.59.063 0 .125.004.188.006l2.861-4.142V8.91c0-2.495 2.028-4.524 4.524-4.524 2.494 0 4.524 2.031 4.524 4.527s-2.03 4.525-4.524 4.525h-.105l-4.076 2.911c0 .052.004.105.004.159 0 1.875-1.515 3.396-3.39 3.396-1.635 0-3.016-1.173-3.331-2.727L.436 15.27C1.862 20.307 6.486 24 11.979 24c6.627 0 11.999-5.373 11.999-12S18.605 0 11.979 0zM7.54 18.21l-1.473-.61c.262.543.714.999 1.314 1.25 1.297.539 2.793-.076 3.332-1.375.263-.63.264-1.319.005-1.949s-.75-1.121-1.377-1.383c-.624-.26-1.29-.249-1.878-.03l1.523.63c.956.4 1.409 1.5 1.009 2.455-.397.957-1.497 1.41-2.454 1.012H7.54zm11.415-9.303c0-1.662-1.353-3.015-3.015-3.015-1.665 0-3.015 1.353-3.015 3.015 0 1.665 1.35 3.015 3.015 3.015 1.663 0 3.015-1.35 3.015-3.015zm-5.273-.005c0-1.252 1.013-2.266 2.265-2.266 1.249 0 2.266 1.014 2.266 2.266 0 1.251-1.017 2.265-2.266 2.265-1.253 0-2.265-1.014-2.265-2.265z%22/%3E%3C/svg%3E")}.fa-si-playstation{--si:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M8.984 2.596v17.547l3.915 1.261V6.688c0-.69.304-1.151.794-.991.636.18.76.814.76 1.505v5.875c2.441 1.193 4.362-.002 4.362-3.152 0-3.237-1.126-4.675-4.438-5.827-1.307-.448-3.728-1.186-5.39-1.502zm4.656 16.241l6.296-2.275c.715-.258.826-.625.246-.818-.586-.192-1.637-.139-2.357.123l-4.205 1.5V14.98l.24-.085s1.201-.42 2.913-.615c1.696-.18 3.785.03 5.437.661 1.848.601 2.04 1.472 1.576 2.072-.465.6-1.622 1.036-1.622 1.036l-8.544 3.107V18.86zM1.807 18.6c-1.9-.545-2.214-1.668-1.352-2.32.801-.586 2.16-1.052 2.16-1.052l5.615-2.013v2.313L4.205 17c-.705.271-.825.632-.239.826.586.195 1.637.15 2.343-.12L8.247 17v2.074c-.12.03-.256.044-.39.073-1.939.331-3.996.196-6.038-.479z%22/%3E%3C/svg%3E")}.fa-si-minecraft{--si:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5 22 7v10.5L12 23 2 17.5V7Z' opacity='.35'/%3E%3Cpath d='M12 1.5 22 7l-10 5.5L2 7Z'/%3E%3Cpath d='M2 7l10 5.5v3L9.5 14v2L7 14.6v-2.2L4.5 11v2L2 11.6Z'/%3E%3Cpath d='M22 7 12 12.5v3l2.5-1.4v2L17 14.7v-2.2l2.5-1.4v2L22 11.6Z'/%3E%3C/svg%3E")}.fa-roblox::before{content:''!important;display:inline-block;width:1em;height:1em;vertical-align:-.125em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M5.16.86 0 19.1l18.84 4.04L24 4.9 5.16.86Zm8.6 14.3-4.8-1.04 1.04-4.84 4.82 1.03-1.06 4.85Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M5.16.86 0 19.1l18.84 4.04L24 4.9 5.16.86Zm8.6 14.3-4.8-1.04 1.04-4.84 4.82 1.03-1.06 4.85Z'/%3E%3C/svg%3E") center/contain no-repeat}