@font-face{font-family:Figtree;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;margin:0;padding:0}img,video{max-width:100%;display:block}ul,ol{list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:var(--cursor-link);appearance:none;background:0 0;border:none}:root{--cursor-default:url(/cursors/Normal.png) 6 4, default;--cursor-link:url(/cursors/Link.png) 11 5, pointer;--cursor-text:url(/cursors/Text.png) 14 13, text;--cursor-help:url(/cursors/Help.png) 6 4, help;--cursor-blocked:url(/cursors/NotAllowed.png) 6 4, not-allowed;--font-sans:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--canvas:#fff;--surface:#fff;--surface-2:#f7f7f5;--surface-3:#efefec;--ink:#18181b;--ink-2:#3f3f46;--muted:#66666e;--subtle:#74747b;--line:rgba(var(--shade), .08);--line-strong:rgba(var(--shade), .15);--shade:24, 24, 27;--shadow-rgb:24, 24, 27;--on-ink:#fff;--ink-hover:#2e2e33;--surface-4:#e4e4e0;--bubble-1:#18181b05;--bubble-2:#18181b08;--candy-from:#e6e6e3;--candy-to:#fff;--candy-glint:#fffffff2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--accent:#18181b;--accent-ink:#18181b;--accent-soft:#efefec;--radius-sm:8px;--radius:12px;--radius-lg:18px;--shadow-overlay:0 24px 60px -24px rgba(var(--shadow-rgb), .4);--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--fs-big:1.375rem;--fs-body:1.0625rem;--fs-small:.875rem;--fs-xs:var(--fs-small);--fs-sm:var(--fs-small);--fs-base:var(--fs-body);--fs-md:var(--fs-body);--fs-lg:var(--fs-body);--fs-title:var(--fs-big);--fs-display:var(--fs-big);--sb-inset:12px;--sb-open:272px;--sb-rail:64px;--sb-duration:.3s;--topbar-h:52px;--view-max:51rem}:root[data-theme=dark]{--canvas:#0c0c0e;--surface:#131316;--surface-2:#1a1a1e;--surface-3:#232328;--surface-4:#2c2c31;--ink:#f4f4f5;--ink-2:#d4d4d8;--muted:#a1a1aa;--subtle:#8e8e96;--shade:255, 255, 255;--shadow-rgb:0, 0, 0;--on-ink:#0c0c0e;--ink-hover:#dcdce0;--accent:#f4f4f5;--accent-ink:#f4f4f5;--accent-soft:#232328;--bubble-1:#ffffff06;--bubble-2:#ffffff0d;--candy-from:#26262b;--candy-to:#34343a;--candy-glint:#ffffff59;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-intro]{background:var(--ink)}html{background:var(--canvas);-webkit-text-size-adjust:100%;font-size:16px}body{min-height:100dvh;color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-base);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;font-weight:500;line-height:1.2}p{text-wrap:pretty}::selection{background:var(--accent-soft);color:var(--ink)}*{scrollbar-width:thin;scrollbar-color:rgba(var(--shade), .2) transparent}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}[tabindex="-1"]:focus{outline:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{--sb-current:var(--sb-open)}.app[data-sidebar=rail]{--sb-current:var(--sb-rail)}.stage{padding-top:calc(var(--topbar-h) + 10px)}.stage-panel{background:var(--surface);position:relative}@media (width<=1023px){html,body{background:var(--surface)}}@media (width>=1024px){body{overflow:hidden}.stage{top:0;bottom:0;right:0;left:calc(var(--sb-inset) + var(--sb-current));transition:left var(--sb-duration) var(--ease-drawer);padding:0;position:fixed}.stage-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.stage-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;overflow-y:auto}}.page-veil{z-index:45;top:var(--topbar-h);background:var(--surface);pointer-events:none;animation:veil-out .56s var(--ease-out) forwards;place-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.page-veil.is-boot{animation-duration:.95s;top:0}@media (width>=1024px){.page-veil,.page-veil.is-boot{top:0;left:calc(var(--sb-inset) + var(--sb-current))}}@keyframes veil-out{0%,58%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:reduce){.page-veil.is-nav{display:none}}.view{width:100%;max-width:var(--view-max);animation:view-in .24s var(--ease-out);flex-direction:column;margin:0 auto;padding:1.5rem 1.125rem 2rem;display:flex;container:view/inline-size}@media (width>=1024px){.view{min-height:100%;padding:2.5rem 3rem 1.5rem}}@media (width>=1024px) and (width<=1279px){.view{padding-inline:2rem}}@keyframes view-in{0%{opacity:.5;transform:translateY(6px)}}.view-body{flex:1}.glitch-word{white-space:nowrap}.glitch-cell{vertical-align:top;text-align:center;height:1lh;display:inline-block}.button{height:2.625rem;font-size:var(--fs-body);white-space:nowrap;transition:background-color .15s ease, color .15s ease, transform .16s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.125rem;font-weight:500;line-height:1;display:inline-flex}.button:active,.chip-button:active,.pressable:active{transform:scale(.97)}.button .icon{flex-shrink:0}.button-primary{background:var(--ink);color:var(--on-ink)}.button-primary:hover{background:var(--ink-hover)}.button-secondary{background:var(--surface-3);color:var(--ink)}.button-secondary:hover{background:var(--surface-4)}.button-secondary .icon,.button-quiet .icon{color:var(--accent-ink)}.button-quiet{color:var(--ink-2);padding:0 .5rem}.button-quiet:hover{color:var(--accent-ink)}.tag{background:var(--surface-3);color:var(--ink-2);font-size:var(--fs-small);white-space:nowrap;border-radius:6px;align-items:center;padding:.1875rem .5rem;font-weight:500;line-height:1.5;display:inline-flex}.status{color:var(--ink-2);font-size:var(--fs-small);font-weight:600}.chip{background:var(--surface-2);height:2rem;font-size:var(--fs-body);white-space:nowrap;border-radius:999px;align-items:center;gap:.5rem;padding:0 .75rem 0 .25rem;font-weight:500;display:inline-flex}.chip-logo{object-fit:contain;background:#0b0b0d;border-radius:50%;flex-shrink:0;width:1.5rem;height:1.5rem;padding:.25rem}@media (prefers-reduced-motion:reduce){@keyframes view-in{0%{opacity:.5}}.button:active,.chip-button:active,.pressable:active{transform:none}.stage{transition:none!important}}html,body{cursor:var(--cursor-default)}a,button,summary,label,select,[role=button],[role=tab]{cursor:var(--cursor-link)}input:not([type=checkbox],[type=radio],[type=button],[type=submit]),textarea,[contenteditable=true]{cursor:var(--cursor-text)}:disabled,[aria-disabled=true]{cursor:var(--cursor-blocked)}.site-footer-links a,.collab-projects a,.proj-more,.anime-more,.cred-fullsize,.proj-back,.view-all,.list-section-link,.pd-link{text-decoration:none;position:relative}.site-footer-links a:after,.collab-projects a:after,.proj-more:after,.anime-more:after,.cred-fullsize:after,.proj-back:after,.view-all:after,.list-section-link:after,.pd-link:after{content:"";height:9px;-webkit-mask:var(--scribble) 0 0 / 100% 100% no-repeat;-webkit-mask:var(--scribble) 0 0 / 100% 100% no-repeat;mask:var(--scribble) 0 0 / 100% 100% no-repeat;clip-path:inset(0 100% 0 0);pointer-events:none;background:currentColor;transition:clip-path .3s cubic-bezier(.8,1,.7,1);position:absolute;top:calc(100% - 1px);left:0;right:0}.site-footer-links a:hover:after,.site-footer-links a:focus-visible:after,.collab-projects a:hover:after,.collab-projects a:focus-visible:after,.proj-more:hover:after,.proj-more:focus-visible:after,.anime-more:hover:after,.anime-more:focus-visible:after,.cred-fullsize:hover:after,.cred-fullsize:focus-visible:after,.proj-back:hover:after,.proj-back:focus-visible:after,.view-all:hover:after,.view-all:focus-visible:after,.list-section-link:hover:after,.list-section-link:focus-visible:after,.pd-link:hover:after,.pd-link:focus-visible:after{clip-path:inset(0);transition-duration:.6s;transition-timing-function:cubic-bezier(.7,0,.3,1)}:root{--scribble:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 101 9' preserveAspectRatio='none'%3E%3Cpath d='M.426 1.973C4.144 1.567 17.77-.514 21.443 1.48 24.296 3.026 24.844 4.627 27.5 7c3.075 2.748 6.642-4.141 10.066-4.688 7.517-1.2 13.237 5.425 17.59 2.745C58.5 3 60.464-1.786 66 2c1.996 1.365 3.174 3.737 5.286 4.41 5.423 1.727 25.34-7.981 29.14-1.294' fill='none' stroke='%23000' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E")}@media (prefers-reduced-motion:reduce){.site-footer-links a:after,.pd-link:after,.collab-projects a:after,.proj-more:after,.proj-back:after,.view-all:after,.list-section-link:after{transition-duration:.01ms}}.theme-toggle{--primary:#a1a1aa;--light:#d9d9d9;--dark:#18181b;--gray:#3f3f46;--size:24px;--gap:3px;z-index:0;box-sizing:content-box;width:calc((var(--size) + var(--gap)) * 2);height:var(--size);background:var(--dark);cursor:pointer;border:1px solid #777;border-bottom:0;border-radius:9999px;flex:none;margin:4px;padding:3px;transition:background-color .3s ease-in-out,border-color .3s ease-in-out;position:relative}.theme-toggle:before,.theme-toggle:after{content:"";z-index:-1;border-radius:9999px;position:absolute;top:50%;left:50%;translate:-50% -50%}.theme-toggle:before{background:var(--gray);border:1px solid #777;border-bottom:0;width:calc(100% + 8px);height:calc(100% + 8px);transition:box-shadow .3s ease-in-out}.theme-toggle:after{background-image:radial-gradient(circle at 50% -100%,#ffffff47 0%,#0000008c 80%);width:100%;height:100%}.theme-toggle-knob{width:var(--size);height:var(--size);background-image:radial-gradient(circle at 50% 0%, #666 0%, var(--gray) 100%);box-shadow:inset 0 -.15rem .15rem var(--primary);border:1px solid #aaa;border-bottom:0;border-radius:9999px;justify-content:center;align-items:center;transition:transform .3s ease-in-out,background-image .3s ease-in-out;display:flex;position:relative;overflow:clip}.theme-toggle-icon{object-fit:contain;pointer-events:none;width:80%;height:80%;transition:transform .3s ease-in-out;position:relative}.theme-toggle-sparkle{width:calc(var(--width) * 1px);aspect-ratio:1;background-color:var(--light);transform-origin:50%;rotate:calc(1deg * var(--deg));animation:theme-sparkle calc(100s / var(--duration)) linear infinite;border-radius:50%;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes theme-sparkle{to{width:calc(var(--width) * .5px);transform:translate(1000%,-50%)}}.theme-toggle.is-dark{border-color:var(--line-strong);background:0 0}.theme-toggle.is-dark:before{box-shadow:0 .5rem 1.25rem -1rem #ffffff80}.theme-toggle.is-dark .theme-toggle-knob{transform:translateX(calc(var(--gap) * 2 + 100%)) rotate(-225deg);background-image:radial-gradient(circle at 50% 0,#8e8e96 0%,#e4e4e7 100%);border-color:#f4f4f5;overflow:visible}.theme-toggle.is-dark .theme-toggle-icon{transform:rotate(225deg)}.theme-toggle.is-dark .theme-toggle-sparkle{z-index:-1;width:calc(var(--width) * 1.5px);background-color:#acacac;animation-name:theme-sparkle-out}@keyframes theme-sparkle-out{to{width:calc(var(--width) * 1px);transform:translate(2500%,-50%)}}.theme-toggle:focus-visible{outline-offset:5px;outline:2px solid #a1a1aa}@media (prefers-reduced-motion:reduce){.theme-toggle-sparkle{animation:none}.theme-toggle-knob,.theme-toggle-icon{transition:none}}.sidebar{z-index:60;top:var(--sb-inset);bottom:var(--sb-inset);left:var(--sb-inset);width:var(--sb-open);transition:width var(--sb-duration) var(--ease-drawer);display:flex;position:fixed}.sidebar.is-rail{width:var(--sb-rail)}.sidebar-card{border:1px solid rgba(var(--shade), .07);background:var(--surface);min-width:0;box-shadow:0 0 0 6px var(--bubble-1), 0 0 0 7px var(--bubble-2), 0 18px 44px -10px rgba(var(--shadow-rgb), .2);border-radius:22px;flex-direction:column;flex:1;padding:11px;display:flex;position:relative;overflow:hidden}.sb-label,.sb-fade{transition:opacity .2s .15s}.sidebar.is-rail .sb-label,.sidebar.is-rail .sb-fade{opacity:0;transition:opacity .11s}.sidebar-head{align-items:center;height:48px;margin-bottom:14px;display:flex}.sidebar-brand{min-width:0;height:40px;color:var(--ink);font-size:var(--fs-big);letter-spacing:-.01em;white-space:nowrap;border-radius:12px;flex:auto;align-items:center;gap:8px;padding:0 10px;font-weight:500;transition:opacity .2s .15s,background-color .15s;display:flex;overflow:hidden}.sidebar-head-resume{flex:none;margin:0 6px}.sidebar.is-rail .sidebar-head-resume{display:none}.sidebar-brand:hover{background:var(--surface-2)}.sidebar.is-rail .sidebar-brand{visibility:hidden;flex:0 0 0;padding:0;transition:opacity .11s,visibility 0s linear .11s}.sidebar-iconbtn{width:40px;height:38px;color:var(--muted);transition:background-color .15s ease, color .15s ease, transform .16s var(--ease-out);border-radius:12px;flex:0 0 40px;place-items:center;display:grid}.sidebar-iconbtn:hover{background:var(--surface-2);color:var(--ink)}.sidebar-link,.sidebar-cta{z-index:1;height:42px;color:var(--ink-2);font-size:var(--fs-body);white-space:nowrap;transition:background-color .15s ease, color .15s ease, border-color .15s ease, box-shadow .2s ease, transform .16s var(--ease-out);border-radius:12px;align-items:center;gap:12px;padding:0 10px;font-weight:500;display:flex;position:relative;overflow:hidden}.sidebar-link:active,.sidebar-cta:active,.sidebar-iconbtn:active,.sidebar-pillbtn:active,.sidebar-roundbtn:active{transform:scale(.97)}.sidebar-link:focus-visible,.sidebar-cta:focus-visible,.sidebar-iconbtn:focus-visible,.sidebar-brand:focus-visible{outline-offset:-2px}.sb-icon{width:20px;height:20px;color:var(--subtle);flex:0 0 20px;place-items:center;transition:color .15s;display:grid}.sb-label{flex:1;min-width:0;overflow:hidden}.sb-count{color:var(--subtle);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.sb-trail{color:var(--subtle);transition:transform .2s var(--ease-out), color .15s ease;place-items:center;display:grid}@property --mask-x{syntax:"<percentage>";inherits:false;initial-value:100%}.sidebar-cta{--shine:rgba(var(--shade), .55);text-align:left;border:1px solid rgba(var(--shade), .14);background:radial-gradient(95% 60% at 50% 75%, var(--candy-from) 0%, var(--candy-to) 100%);width:100%;height:44px;color:var(--ink);letter-spacing:.02em;box-shadow:0 4px 14px -6px rgba(var(--shadow-rgb), .35), inset 0 1px 8px -4px var(--candy-glint);transition:filter .15s ease, box-shadow .2s ease, transform .16s var(--ease-out);border-radius:999px;margin-bottom:18px;padding-left:9px;font-weight:600}.sidebar-cta:after{content:"";background:linear-gradient(90deg, transparent, var(--candy-glint), transparent);pointer-events:none;height:1px;position:absolute;top:1px;left:14%;right:14%}.sidebar-cta:before{content:"";border-radius:inherit;background:linear-gradient(-75deg, transparent 30%, var(--shine) 50%, transparent 70%) 100% 0 / 200% 100%;-webkit-mask-composite:xor;opacity:0;pointer-events:none;padding:1px;animation:2s linear infinite cta-rim;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.sidebar-cta .sb-label{-webkit-mask-image:linear-gradient(-75deg, #fff calc(var(--mask-x) + 20%), transparent calc(var(--mask-x) + 30%), #fff calc(var(--mask-x) + 100%));-webkit-mask-image:linear-gradient(-75deg, #fff calc(var(--mask-x) + 20%), transparent calc(var(--mask-x) + 30%), #fff calc(var(--mask-x) + 100%));mask-image:linear-gradient(-75deg, #fff calc(var(--mask-x) + 20%), transparent calc(var(--mask-x) + 30%), #fff calc(var(--mask-x) + 100%));animation:2s linear infinite cta-label}@keyframes cta-label{0%{--mask-x:100%}50%,to{--mask-x:-100%}}@keyframes cta-rim{0%{opacity:0;background-position:100% 0}25%{opacity:1}50%{opacity:0;background-position:0 0}to{opacity:0;background-position:0 0}}@media (prefers-reduced-motion:reduce){.sidebar-cta:before,.sidebar-cta .sb-label{animation:none;-webkit-mask-image:none;mask-image:none}}.sidebar-cta .sb-icon,.sidebar-cta .sb-trail{color:var(--ink-2)}.sidebar-cta:hover{filter:brightness(.97)}.sidebar-cta.is-active{filter:brightness(.95)}.sidebar-cta:hover .sb-trail,.sidebar-cta:active .sb-trail{transform:translate(2px)}.sidebar-nav{scrollbar-width:none;flex:1;min-height:0;position:relative;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-pill{background:var(--surface-2);opacity:0;pointer-events:none;border-radius:12px;position:absolute;top:0;left:0;right:0}.sidebar-nav:before,.sidebar-nav:after{content:"";pointer-events:none;position:absolute}.sidebar-nav:before{z-index:0;background:radial-gradient(120px circle at 0 var(--spotlight-y,0), rgba(var(--shade), .09), transparent 70%);opacity:0;transition:opacity .3s;inset:0}.sidebar-nav[data-spot=on]:before{opacity:1}.sidebar-nav:after{z-index:2;background:radial-gradient(52px circle at 0 var(--ambience-y,0), rgba(var(--shade), .9) 0%, transparent 100%);opacity:0;width:3px;transition:opacity .2s;top:0;bottom:0;left:0}.sidebar-nav[data-active=on]:after{opacity:1}.sidebar-pill.is-ready{transition:transform .24s var(--ease-out), height .24s var(--ease-out), opacity .2s ease}.sidebar-list{flex-direction:column;gap:3px;display:flex}.sidebar-home{opacity:0;visibility:hidden;height:0;transition:height var(--sb-duration) var(--ease-drawer), margin var(--sb-duration) var(--ease-drawer), opacity .15s ease, visibility 0s linear var(--sb-duration);margin-bottom:-3px;overflow:hidden}.sidebar.is-rail .sidebar-home{opacity:1;visibility:visible;height:42px;transition:height var(--sb-duration) var(--ease-drawer), margin var(--sb-duration) var(--ease-drawer), opacity .2s ease .1s, visibility 0s;margin-bottom:0}.sidebar-group{margin-top:14px}.sidebar-group-label{height:28px;color:var(--subtle);font-size:var(--fs-small);white-space:nowrap;align-items:flex-end;padding:0 10px 7px;display:flex}.sidebar-link:hover{background:var(--surface-2);color:var(--ink)}.sidebar-link:hover .sb-icon{color:var(--ink-2)}@media (prefers-reduced-motion:no-preference){.sidebar-link:not(.is-active):hover .sb-icon .icon,.sidebar-cta:hover .sb-icon .icon{transform-origin:50% 70%;animation:.8s both sb-icon-pop}}@keyframes sb-icon-pop{0%{animation-timing-function:ease-in;transform:scale(1)}12%{opacity:.55;animation-timing-function:linear(0, .35 10%, 1.25 22%, .88 36%, 1.07 50%, .98 64%, 1.01 78%, 1);transform:scale(.22,.9)}to{opacity:1;transform:scale(1)}}.sidebar-link.is-active,.sidebar-link.is-active:hover{color:var(--ink);background:0 0}.sidebar-link.is-active .sb-icon{color:var(--accent-ink)}.sidebar-link.is-active .sb-count{color:var(--muted)}.sidebar-foot{flex-direction:column;margin-top:12px;transition:opacity .2s .15s,visibility;display:flex}.sidebar.is-rail .sidebar-foot{opacity:0;visibility:hidden;transition:opacity .11s,visibility 0s linear .11s}.sidebar-meta{color:var(--subtle);font-size:var(--fs-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-pillbtn,.sidebar-roundbtn{border:1px solid rgba(var(--shade), .09);background:var(--surface);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .05), 0 4px 12px -8px rgba(var(--shadow-rgb), .28);transition:border-color .15s ease, color .15s ease, transform .16s var(--ease-out)}.sidebar-pillbtn{height:34px;color:var(--ink);font-size:var(--fs-body);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:0 14px 0 12px;font-weight:500;display:inline-flex}.sidebar-pillbtn .icon{color:var(--accent-ink)}.sidebar-pillbtn:hover,.sidebar-roundbtn:hover{border-color:rgba(var(--shade), .18)}.sidebar-foot-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:12px 4px 2px 10px;display:flex}.sidebar-foot-actions{align-items:center;gap:6px;display:flex}.sidebar-roundbtn{width:34px;height:34px;color:var(--ink-2);border-radius:50%;place-items:center;display:grid}.sidebar-roundbtn:hover{color:var(--accent-ink)}.sidebar-tip{z-index:2;color:#18181b;font-size:var(--fs-small);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-overlay);animation:sidebar-tip-in .125s var(--ease-out);background:#fff;border:1px solid #00000014;border-radius:12px 14px;padding:8px 14px;font-weight:600;position:absolute;left:calc(100% + 10px);transform:translateY(-50%)}.sidebar-tip.is-instant{animation:none}@keyframes sidebar-tip-in{0%{opacity:0;transform:translate(-4px,-50%)}}.topbar,.sidebar-backdrop{display:none}@media (width<=1023px){.topbar{z-index:60;height:var(--topbar-h);background:var(--surface);box-shadow:0 10px 20px -18px rgba(var(--shadow-rgb), .45);justify-content:space-between;align-items:center;padding:0 6px 0 8px;display:flex;position:fixed;top:0;left:0;right:0}.topbar-brand{height:40px;font-size:var(--fs-big);letter-spacing:-.01em;border-radius:10px;align-items:center;padding:0 10px;font-weight:500;display:flex}.topbar-menu{width:44px;height:44px;color:var(--ink);border-radius:11px;place-items:center;transition:background-color .15s;display:grid}.topbar-menu:hover{background:var(--surface-2)}.sidebar-backdrop{z-index:70;background:rgba(var(--shadow-rgb), .3);opacity:0;pointer-events:none;transition:opacity .25s;display:block;position:fixed;inset:0}.sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.sidebar{z-index:80;visibility:hidden;width:min(300px,100vw - 56px);transition:transform .32s var(--ease-drawer), visibility 0s linear .32s;top:10px;bottom:10px;left:10px;transform:translate(calc(-100% - 24px))}.sidebar.is-drawer-open{visibility:visible;transition:transform .32s var(--ease-drawer), visibility 0s;transform:none}.sidebar .sidebar-card{box-shadow:var(--shadow-overlay)}}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar.is-drawer-open,.sidebar-home,.sidebar.is-rail .sidebar-home{transition:none}}.sidebar-foot-row .sidebar-meta{text-overflow:clip;white-space:normal;line-height:1.25}.sidebar-roundbtn.is-stack{box-shadow:none;color:var(--ink-2);background:0 0;border:0;border-radius:8px;position:relative}.stack-layer{transition:transform .3s;position:absolute;inset:0}.stack-layer span{border:1px solid rgba(var(--shade), .22);border-radius:8px;transition:all .3s;position:absolute;inset:0}.stack-layer span:not(.stack-face){opacity:0}.stack-face{background:var(--surface);color:var(--ink-2);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .05), 0 4px 12px -8px rgba(var(--shadow-rgb), .28);place-items:center;display:grid}.sidebar-roundbtn.is-stack:hover .stack-layer,.sidebar-roundbtn.is-stack:focus-visible .stack-layer{transform:rotate(-35deg)skew(20deg)}.sidebar-roundbtn.is-stack:hover .stack-layer span:first-child,.sidebar-roundbtn.is-stack:focus-visible .stack-layer span:first-child{opacity:.2}.sidebar-roundbtn.is-stack:hover .stack-layer span:nth-child(2),.sidebar-roundbtn.is-stack:focus-visible .stack-layer span:nth-child(2){opacity:.4;transform:translate(3px,-3px)}.sidebar-roundbtn.is-stack:hover .stack-layer span:nth-child(3),.sidebar-roundbtn.is-stack:focus-visible .stack-layer span:nth-child(3){opacity:.6;transform:translate(6px,-6px)}.sidebar-roundbtn.is-stack:hover .stack-layer span:nth-child(4),.sidebar-roundbtn.is-stack:focus-visible .stack-layer span:nth-child(4){opacity:.8;transform:translate(9px,-9px)}.sidebar-roundbtn.is-stack:hover .stack-layer .stack-face,.sidebar-roundbtn.is-stack:focus-visible .stack-layer .stack-face{opacity:1;transform:translate(12px,-12px)}@media (prefers-reduced-motion:reduce){.stack-layer,.stack-layer span{transition:none}}.sidebar-pillbtn.is-stack{box-shadow:none;background:0 0;border:0;padding:0;position:relative}.is-pill .stack-layer{display:inline-flex;position:relative;inset:auto}.is-pill .stack-layer span{border-radius:999px}.is-pill .stack-face{height:34px;color:var(--ink);font-size:var(--fs-body);align-items:center;gap:6px;padding:0 14px 0 12px;font-weight:500;display:inline-flex;position:relative;inset:auto}.is-pill:hover .stack-layer,.is-pill:focus-visible .stack-layer{transform:rotate(-6deg)skew(8deg)}.is-pill:hover .stack-layer span:first-child,.is-pill:focus-visible .stack-layer span:first-child{opacity:.2}.is-pill:hover .stack-layer span:nth-child(2),.is-pill:focus-visible .stack-layer span:nth-child(2){opacity:.4;transform:translate(2px,-2px)}.is-pill:hover .stack-layer span:nth-child(3),.is-pill:focus-visible .stack-layer span:nth-child(3){opacity:.6;transform:translate(4px,-4px)}.is-pill:hover .stack-layer span:nth-child(4),.is-pill:focus-visible .stack-layer span:nth-child(4){opacity:.8;transform:translate(6px,-6px)}.is-pill:hover .stack-layer .stack-face,.is-pill:focus-visible .stack-layer .stack-face{opacity:1;transform:translate(8px,-8px)}.square-loader{--sq:10px;--sq-gap:10px;grid-template-columns:repeat(3, var(--sq));gap:var(--sq-gap);display:inline-grid}.square-loader-cell{width:var(--sq);height:var(--sq);border-radius:calc(var(--sq) * .2);background:var(--ink);opacity:var(--sq-floor,.12);animation:square-wave .675s ease-in-out calc(var(--n) * 75ms - .675s) infinite alternate}.square-loader-cell:nth-child(5){background:var(--accent)}@keyframes square-wave{0%{opacity:var(--sq-floor,.12)}to{opacity:1}}@media (prefers-reduced-motion:reduce){[class*=square-loader]{animation:none!important}}.cursor-loader{z-index:120;pointer-events:none;opacity:0;will-change:transform;transition:opacity .18s;position:fixed;top:0;left:0}.cursor-loader .square-loader{--sq-floor:.28;background:var(--surface);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .08), 0 6px 14px -6px rgba(var(--shadow-rgb), .28);transform-origin:0 0;transition:transform .25s var(--ease-out);border-radius:7px;padding:5px;transform:scale(.55)}.cursor-loader:not(.is-hot):not(.is-busy) .square-loader-cell{animation-play-state:paused}.cursor-loader.is-present.is-hot,.cursor-loader.is-present.is-busy{opacity:1}.cursor-loader.is-present.is-hot .square-loader,.cursor-loader.is-present.is-busy .square-loader{transform:scale(1)}@media (hover:none),(pointer:coarse){.cursor-loader{display:none}}@media (prefers-reduced-motion:reduce){.cursor-loader .square-loader{transition:none;transform:none}}.intro-web{z-index:300;pointer-events:none;position:fixed;inset:0}.intro-web-canvas{width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.intro-web{background:var(--ink);animation:.4s forwards intro-fade}@keyframes intro-fade{to{opacity:0}}}.portrait-reveal{border-radius:var(--radius-lg);-webkit-tap-highlight-color:transparent;width:100%;height:100%;position:relative}.portrait-reveal.is-interactive{touch-action:pan-y pinch-zoom}.portrait-reveal.is-interactive:focus-visible{outline:none}.portrait-reveal img{object-fit:cover;object-position:var(--portrait-pos);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.portrait-reveal-alt{--lens:radial-gradient( circle var(--lr,0px) at var(--lx,50%) var(--ly,35%), #000 0%, #000 50%, #0009 72%, transparent 100%);pointer-events:none;-webkit-mask-image:var(--lens);-webkit-mask-image:var(--lens);mask-image:var(--lens);position:absolute;inset:0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.portrait-reveal-placeholder{--web:calc(var(--lr,0px) * 2.4);isolation:isolate;-webkit-mask-image:var(--lens), var(--portrait-url);-webkit-mask-image:var(--lens), var(--portrait-url);mask-image:var(--lens), var(--portrait-url);-webkit-mask-size:100% 100%,cover;mask-size:100% 100%,cover;-webkit-mask-position:0 0, var(--portrait-pos);-webkit-mask-position:0 0, var(--portrait-pos);mask-position:0 0, var(--portrait-pos);-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;mask-composite:intersect}.portrait-reveal-placeholder img{filter:grayscale()contrast(1.45)brightness(.92)}.portrait-reveal-placeholder:before,.portrait-reveal-placeholder:after{content:"";z-index:1;mix-blend-mode:multiply;position:absolute;inset:0}.portrait-reveal-placeholder:before{background:#d0122f}.portrait-reveal-placeholder:after{opacity:.55;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath d='M100 100L100.0 -42.0M100 100L171.0 -23.0M100 100L223.0 29.0M100 100L242.0 100.0M100 100L223.0 171.0M100 100L171.0 223.0M100 100L100.0 242.0M100 100L29.0 223.0M100 100L-23.0 171.0M100 100L-42.0 100.0M100 100L-23.0 29.0M100 100L29.0 -23.0M100.0 82.0Q104.1 84.7 109.0 84.4Q111.2 88.8 115.6 91.0Q115.3 95.9 118.0 100.0Q115.3 104.1 115.6 109.0Q111.2 111.2 109.0 115.6Q104.1 115.3 100.0 118.0Q95.9 115.3 91.0 115.6Q88.8 111.2 84.4 109.0Q84.7 104.1 82.0 100.0Q84.7 95.9 84.4 91.0Q88.8 88.8 91.0 84.4Q95.9 84.7 100.0 82.0M100.0 64.0Q108.2 69.4 118.0 68.8Q122.4 77.6 131.2 82.0Q130.6 91.8 136.0 100.0Q130.6 108.2 131.2 118.0Q122.4 122.4 118.0 131.2Q108.2 130.6 100.0 136.0Q91.8 130.6 82.0 131.2Q77.6 122.4 68.8 118.0Q69.4 108.2 64.0 100.0Q69.4 91.8 68.8 82.0Q77.6 77.6 82.0 68.8Q91.8 69.4 100.0 64.0M100.0 44.0Q112.8 52.4 128.0 51.5Q134.8 65.2 148.5 72.0Q147.6 87.2 156.0 100.0Q147.6 112.8 148.5 128.0Q134.8 134.8 128.0 148.5Q112.8 147.6 100.0 156.0Q87.2 147.6 72.0 148.5Q65.2 134.8 51.5 128.0Q52.4 112.8 44.0 100.0Q52.4 87.2 51.5 72.0Q65.2 65.2 72.0 51.5Q87.2 52.4 100.0 44.0M100.0 22.0Q117.8 33.7 139.0 32.5Q148.5 51.5 167.5 61.0Q166.3 82.2 178.0 100.0Q166.3 117.8 167.5 139.0Q148.5 148.5 139.0 167.5Q117.8 166.3 100.0 178.0Q82.2 166.3 61.0 167.5Q51.5 148.5 32.5 139.0Q33.7 117.8 22.0 100.0Q33.7 82.2 32.5 61.0Q51.5 51.5 61.0 32.5Q82.2 33.7 100.0 22.0M100.0 -2.0Q123.2 13.3 151.0 11.7Q163.5 36.5 188.3 49.0Q186.7 76.8 202.0 100.0Q186.7 123.2 188.3 151.0Q163.5 163.5 151.0 188.3Q123.2 186.7 100.0 202.0Q76.8 186.7 49.0 188.3Q36.5 163.5 11.7 151.0Q13.3 123.2 -2.0 100.0Q13.3 76.8 11.7 49.0Q36.5 36.5 49.0 11.7Q76.8 13.3 100.0 -2.0M100.0 -28.0Q129.2 -8.8 164.0 -10.9Q179.6 20.4 210.9 36.0Q208.8 70.8 228.0 100.0Q208.8 129.2 210.9 164.0Q179.6 179.6 164.0 210.9Q129.2 208.8 100.0 228.0Q70.8 208.8 36.0 210.9Q20.4 179.6 -10.9 164.0Q-8.8 129.2 -28.0 100.0Q-8.8 70.8 -10.9 36.0Q20.4 20.4 36.0 -10.9Q70.8 -8.8 100.0 -28.0' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:var(--web) var(--web);background-position:calc(var(--lx,50%) - var(--web) / 2) calc(var(--ly,35%) - var(--web) / 2)}.portrait-reveal.has-small-cursor{cursor:url(/cursors/Normal-22.png) 4 3,default}.portrait-cursor{z-index:2;background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 2px var(--surface);opacity:0;pointer-events:none;border-radius:50%;margin:-5px 0 0 -5px;transition:opacity .15s;display:none;position:absolute;top:0;left:0}.portrait-reveal[data-cursor=on] .portrait-cursor{opacity:1}.ap{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink);font-size:var(--fs-small);border-radius:999px;align-items:center;gap:.5rem;padding:.25rem .375rem .25rem .25rem;line-height:1.2;display:inline-flex;position:relative;overflow:hidden}.ap-avatar{background:var(--surface-3);object-fit:cover;border-radius:50%;flex:none;width:2.25rem;height:2.25rem}.ap-eq{flex:none;align-items:flex-end;gap:2px;height:1rem;display:flex}.ap-eq i{background:var(--muted);transform-origin:bottom;border-radius:2px;width:2px;height:100%;display:block;transform:scaleY(.28)}.ap.is-playing .ap-eq i{animation:1s ease-in-out infinite ap-eq}.ap.is-playing .ap-eq i:nth-child(2){animation-duration:1.25s}.ap.is-playing .ap-eq i:nth-child(3){animation-duration:.85s}.ap.is-playing .ap-eq i:nth-child(4){animation-duration:1.45s}@keyframes ap-eq{50%{transform:scaleY(1)}}.ap-text{flex-direction:column;min-width:0;display:flex}.ap-title{white-space:nowrap;font-weight:500}.ap-sub{color:var(--subtle);white-space:nowrap;font-size:12px}.ap-btn{background:var(--ink);width:2rem;height:2rem;color:var(--on-ink);transition:transform .16s var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.ap-btn:active:not(:disabled){transform:scale(.93)}.ap-btn:disabled{opacity:.35}.ap-seek{height:6px;cursor:var(--cursor-link);position:absolute;bottom:0;left:0;right:0}.ap-seek:before{content:"";background:var(--line-strong);height:2px;position:absolute;bottom:0;left:0;right:0}.ap-seek-fill{background:var(--ink);height:2px;position:absolute;bottom:0;left:0}@media (width<=479px){.ap-text{display:none}}@media (prefers-reduced-motion:reduce){.ap.is-playing .ap-eq i{animation:none;transform:scaleY(.6)}}.particle-name{width:100%;height:3.25rem;color:var(--ink);font-family:var(--font-sans);display:block}.list-section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.875rem;display:flex}.list-section-title{color:var(--muted);font-size:var(--fs-body);letter-spacing:0;font-weight:500}.list-section-aside{color:var(--subtle);font-size:var(--fs-small);font-variant-numeric:tabular-nums}.list-section-link{color:var(--subtle);transition:color .15s}.list-section-link:hover{color:var(--ink)}.media-rows>li+li{border-top:1px solid var(--line)}.media-row{border-radius:var(--radius);transition:background-color .15s ease, transform .16s var(--ease-out);grid-template-columns:5.5rem minmax(0,1fr) auto;align-items:center;gap:1.5rem;margin:0 -.75rem;padding:1rem .75rem;display:grid}.media-row:hover{background:var(--surface-2)}.media-row:active{transform:scale(.99)}.media-row:focus-visible{outline-offset:-2px}.media-thumb{aspect-ratio:16/10;border:1px solid var(--line);background:var(--surface-2);border-radius:8px;display:block;overflow:hidden}.media-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease-out)}.media-row:hover .media-thumb img,.media-row:active .media-thumb img{transform:scale(1.04)}.media-text{flex-direction:column;gap:.125rem;min-width:0;display:flex}.media-title{color:var(--ink);font-size:var(--fs-body);letter-spacing:-.01em;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;font-weight:500;display:flex}.media-badge{border:1px solid var(--line-strong);color:var(--ink-2);font-size:var(--fs-small);letter-spacing:0;border-radius:999px;padding:.0625rem .5rem;font-weight:500}.media-desc{color:var(--muted);font-size:var(--fs-body);line-height:1.45}.media-meta{color:var(--subtle);font-size:var(--fs-small);text-align:right;white-space:nowrap}.media-rows>li.is-faded{opacity:.35;pointer-events:none}.media-more{justify-content:center;padding-top:1.25rem;display:flex}.media-more.is-link{justify-content:flex-end}.view-all{color:var(--ink);font-size:var(--fs-small)}.more-pill{border:1px solid rgba(var(--shade), .1);background:var(--surface);height:2.75rem;color:var(--ink);font-size:var(--fs-body);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .05), 0 6px 16px -10px rgba(var(--shadow-rgb), .25);transition:border-color .15s ease, transform .16s var(--ease-out);border-radius:999px;align-items:center;padding:0 1.5rem;font-weight:500;display:inline-flex}.more-pill:hover{border-color:rgba(var(--shade), .2)}.more-pill:active{transform:scale(.97)}.media-thumb-logos{place-items:center;display:grid}.logo-stack{align-items:center;display:flex}.logo-stack>*+*{margin-left:-7px}.media-thumb-logos .logo-stack-item,.media-thumb-logos .logo-stack-more{width:26px;height:26px;box-shadow:0 0 0 2px var(--surface-2);transition:transform .3s var(--ease-out);border-radius:50%}.media-thumb-logos .logo-stack-item{object-fit:contain;background:#0b0b0d;padding:5px}.logo-stack-more{background:var(--surface);color:var(--ink-2);font-variant-numeric:tabular-nums;place-items:center;font-size:.75rem;font-weight:600;display:grid}.media-row:hover .media-thumb-logos .logo-stack-item,.media-row:active .media-thumb-logos .logo-stack-item,.media-row:hover .media-thumb-logos .logo-stack-more,.media-row:active .media-thumb-logos .logo-stack-more{transform:translateX(calc(var(--k) * 3px))}@container view (width<=559px){.media-row{grid-template-columns:4.5rem minmax(0,1fr);align-items:start;gap:.25rem 1rem}.media-thumb{grid-row:1/span 2}.media-thumb-logos .logo-stack-item,.media-thumb-logos .logo-stack-more{width:21px;height:21px}.media-thumb-logos .logo-stack-item{padding:4px}.media-thumb-logos .logo-stack-more{font-size:.6875rem}.media-meta{font-size:var(--fs-small);text-align:left;grid-column:2}}@media (prefers-reduced-motion:reduce){.media-row:active,.more-pill:active{transform:none}}.media-rows>li{position:relative}.media-rows>li:hover{z-index:2}.media-rows>li:has(.media-row:active){z-index:2}.media-row{position:relative}.thumb-fan{z-index:3;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:3.5rem}.fan-card{--w:168px;--h:105px;--lift:-82px;top:calc(var(--h) / -2);left:calc(var(--w) / -2);width:var(--w);height:var(--h);border:3px solid var(--surface);background:var(--surface-2);box-shadow:0 2px 6px rgba(var(--shadow-rgb), .08), 0 18px 36px -14px rgba(var(--shadow-rgb), .35);opacity:0;border-radius:10px;transition:transform .3s ease-in-out,opacity .3s ease-in-out;position:absolute;overflow:hidden;transform:translate(0)rotate(0)scale(.5)}.fan-card img{object-fit:cover;width:100%;height:100%}.thumb-fan.is-doc .fan-card{--w:160px;--h:120px;--lift:-88px;background:var(--surface)}.thumb-fan.is-doc .fan-card img{object-fit:contain}.thumb-fan.is-portrait .fan-card{--w:100px;--h:133px;--lift:-104px;background:0 0;border:0;border-radius:6px}.thumb-fan.is-logo .fan-card{--w:52px;--h:52px;--lift:-66px;background:#0b0b0d;border-width:2px;border-radius:12px}.thumb-fan.is-logo .fan-card img{object-fit:contain;padding:9px}.media-row:hover .fan-card,.media-row:active .fan-card{opacity:1;transform:translate(var(--x), var(--lift)) rotate(var(--r)) scale(1);transition:transform .4s cubic-bezier(.1,1,.3,1),opacity .4s cubic-bezier(.1,1,.3,1)}@media (width<=639px){.thumb-fan{left:50%}}@media (prefers-reduced-motion:reduce){.fan-card,.media-row:hover .fan-card,.media-row:active .fan-card{transform:translate(var(--x), var(--lift)) rotate(var(--r)) scale(1);transition:opacity .2s}}.sp{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));width:100%;max-width:42rem;margin:0 auto;display:grid;position:relative}.sp-glow{z-index:1;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--mx,0) var(--my,0), #f5b83d24, transparent 70%);transition:opacity .3s;position:absolute;inset:0}.sp:hover .sp-glow{opacity:1}.sp-belt{grid-column:1/-1;grid-template-columns:subgrid;animation:7s ease-in-out infinite alternate sp-glide;display:grid}@keyframes sp-glide{0%{transform:translate(-1.5rem)}to{transform:translate(1.5rem)}}.sp-cell{grid-template:1fr/1fr;min-height:11rem;display:grid;position:relative}.sp-item{text-align:center;opacity:0;filter:blur(8px);flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;gap:.375rem;padding:1rem .5rem;display:flex;transform:translateY(14px)}.sp-item.is-active,.sp-item.is-leaving{transition:opacity .6s ease, filter .6s ease, transform .6s var(--ease-out)}.sp-item.is-active{opacity:1;filter:none;transform:none}.sp-item.is-leaving{transform:translateY(-14px)}.sp-avatar{object-fit:cover;width:3.5rem;height:3.5rem;box-shadow:0 0 0 1px var(--line-strong);border-radius:50%}.sp-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:600;line-height:1.55;overflow:hidden}.sp-count{color:var(--muted);font-size:12px;line-height:1.4}@media (width<=36rem){.sp{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.sp-belt{animation:none}.sp-item.is-active,.sp-item.is-leaving{transition:none}}.ss-shots .sp-cell{min-height:8.5rem}.ss-shots .sp-item{cursor:var(--cursor-link)}.ss-shots .sp-item:not(.is-active){pointer-events:none}.sp-frame{width:100%;max-width:var(--shot-w,11rem);box-shadow:0 0 0 1px var(--line-strong), 0 10px 24px -14px rgba(var(--shadow-rgb), .5);transition:transform .35s var(--ease-out), box-shadow .35s ease;border-radius:12px;display:block;position:relative;overflow:hidden}.sp-shot{width:100%;aspect-ratio:var(--shot-ratio,16 / 10);object-fit:cover;object-position:center top;display:block}.sp-stats{pointer-events:none;justify-content:center;gap:.25rem;display:flex;position:absolute;bottom:.25rem;left:.25rem;right:.25rem}.sp-stats span{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#0c0c0ebd;border-radius:999px;align-items:center;gap:.25rem;padding:.0625rem .375rem;font-size:10px;font-weight:600;line-height:1.5;display:inline-flex}.ss-tip{z-index:5;pointer-events:none;position:absolute;top:0;left:0}.ss-tip-bubble{background:var(--ink);color:var(--on-ink);white-space:nowrap;box-shadow:0 8px 20px -8px rgba(var(--shadow-rgb), .55);border-radius:18px;flex-direction:column;align-items:center;gap:.0625rem;padding:.4rem 1rem;line-height:1.35;display:flex;position:relative}.ss-tip-bubble strong{font-size:13px;font-weight:600}.ss-tip-bubble span{opacity:.7;font-size:11px}.ss-tip-bubble:after{content:"";border:6px solid #0000;border-top-color:var(--ink);border-bottom:0;margin-left:-6px;position:absolute;top:100%;left:50%}.ss-shots .sp-item:hover .sp-frame,.ss-shots .sp-item:active .sp-frame,.ss-shots .sp-item:focus-visible .sp-frame{box-shadow:0 0 0 1px var(--ink), 0 16px 30px -14px rgba(var(--shadow-rgb), .6);transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.sp-frame,.sp-shot{transition:none}}.work{border-bottom:1px solid var(--line);flex-direction:column;gap:.75rem;padding-block:1.25rem;display:flex}.work:last-child{border-bottom:0}.work-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.work-title{color:var(--ink);font-size:14px;font-weight:500}.work-context{color:var(--muted);font-weight:400}.work-period{color:var(--subtle);font-size:var(--fs-small);flex:none}.work-points{color:var(--ink-2);flex-direction:column;gap:.5rem;padding-left:1.25rem;font-size:14px;line-height:1.55;list-style:outside;display:flex}.work-tags{color:var(--subtle);font-size:var(--fs-small)}@media (width<=639px){.work-head{flex-direction:column;gap:.125rem}}.achievements{flex-direction:column;gap:.75rem;display:flex}.achievements .stats-strip{margin-bottom:1.25rem}.champion{--tint:90, 120, 255;--label:#3555d6;border:1px solid rgba(var(--tint), .3);background:linear-gradient(135deg, rgba(var(--tint), .14), rgba(var(--tint), .04) 70%, var(--surface));color:var(--ink);isolation:isolate;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex;position:relative;overflow:hidden}.champion-ribbon{z-index:-1;opacity:.7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.champion:after{content:"";z-index:-1;border-radius:inherit;background-image:radial-gradient(rgba(var(--tint), .55) 1px, transparent 1.2px);opacity:.55;background-size:12px 12px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 50%);mask-image:linear-gradient(90deg,#000,#0000 50%)}.champion.is-crimson{--tint:200, 40, 65;--label:#b3203a}.champion-text{min-width:0}.champion-label{color:var(--label);font-size:var(--fs-small);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem;font-weight:700}.champion-title{font-size:var(--fs-body);letter-spacing:-.01em;font-weight:600}.champion-detail{color:var(--muted);font-size:var(--fs-small);margin-top:.25rem}.champion.is-clickable{text-align:left;width:100%;font:inherit;cursor:var(--cursor-link);transition:transform .16s var(--ease-out)}.champion.is-clickable:active{transform:scale(.99)}.champion-soon{background:var(--ink);color:var(--on-ink);font-size:var(--fs-small);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s var(--ease-out);border-radius:999px;margin-top:-.9rem;padding:.25rem .75rem;font-weight:500;position:absolute;top:50%;right:9rem;transform:translateY(4px)}.champion.is-soon .champion-soon{opacity:1;transform:none}.champion-trophy{width:auto;height:6rem;filter:drop-shadow(0 8px 10px rgba(var(--shadow-rgb), .22));transform-origin:50% 90%;transition:transform .4s var(--ease-out);flex:none;margin-right:.25rem}.champion.is-crimson .champion-trophy{width:7.5rem;height:auto}.champion:hover .champion-trophy,.champion:active .champion-trophy{transform:rotate(-3deg)translateY(-4px)scale(1.04)}@media (width<=639px){.champion-soon{margin-top:0;top:auto;bottom:.5rem;right:.75rem}}@media (width<=479px){.champion{padding:.75rem 1rem}.champion-trophy{height:5rem;margin-right:0}.champion.is-crimson .champion-trophy{width:6rem;height:auto}}@media (prefers-reduced-motion:reduce){.champion-trophy{transition:none}}:root[data-theme=dark] .champion{--label:#9db0ff}:root[data-theme=dark] .champion.is-crimson{--label:#ff8d9d}:root[data-theme=dark] .champion-ribbon{opacity:.1}.stats-strip{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding-block:1.25rem;display:grid}.stat{display:flex}.stat-hit{text-align:center;transition:background-color .15s ease, transform .16s var(--ease-out);border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:.375rem;padding:.25rem .5rem;display:flex}.stat-hit:hover{background:var(--surface-2)}.stat-hit:active{transform:scale(.98)}.stat+.stat{border-left:1px solid var(--line)}.stat-value{font-size:var(--fs-big);letter-spacing:-.02em;font-weight:600;line-height:1.1;display:block}.stat-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:500}.cylinder{--w:clamp(120px, 24vw, 168px);--h:calc(var(--w) * 1.12);height:calc(var(--h) + 3rem);perspective:900px;perspective-origin:50% 40%;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;position:relative;-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.cylinder.is-dragging{cursor:grabbing}.cylinder-ring{width:var(--w);height:var(--h);margin:calc(var(--h) / -2) 0 0 calc(var(--w) / -2);transform-style:preserve-3d;will-change:transform;position:absolute;top:50%;left:50%}.cylinder-item{background:var(--surface-3);backface-visibility:hidden;transform:rotateY(calc(var(--i) * var(--step))) translateZ(calc(var(--w) / 2 / tan(180deg / var(--n)) * 1.1));border-radius:10px;margin:0;position:absolute;inset:0;overflow:hidden}.cylinder-item img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.cylinder-section{padding-top:0}.cylinder-wrap{position:relative}.talk-cloud{z-index:2;will-change:transform;pointer-events:none;opacity:0;width:min(340px,94%);transition:opacity .3s;position:absolute;top:0;left:0}.talk-cloud.is-visible{opacity:1}.talk-cloud-drift{aspect-ratio:320/150;animation:5s ease-in-out infinite talk-cloud-drift;position:relative}.talk-cloud-shape{width:100%;height:100%;filter:drop-shadow(0 8px 14px rgba(var(--shadow-rgb), .16));position:absolute;inset:0;overflow:visible}.talk-cloud-edge{fill:var(--line-strong);stroke:var(--line-strong);stroke-width:5px;stroke-linejoin:round}.talk-cloud-fill{fill:var(--surface);stroke:none}.talk-cloud-text{text-align:center;text-wrap:balance;flex-direction:column;align-items:center;font-size:14px;line-height:1.3;display:flex;position:absolute;inset:27% 16% 22%}.talk-cloud-line{color:var(--ink);animation:talk-cloud-line .45s var(--ease-out);flex:1;align-items:center;font-weight:500;display:flex}.talk-cloud-hint{color:var(--muted);margin-top:auto;margin-bottom:12px;font-size:12px;line-height:1.2}@keyframes talk-cloud-drift{0%,to{transform:translate(-16px,4px)rotate(-2deg)}25%{transform:translate(-4px,-8px)rotate(0)}50%{transform:translate(16px,-3px)rotate(2deg)}75%{transform:translate(4px,7px)rotate(0)}}.talk-cloud-shape circle,.talk-cloud-shape ellipse{transform-box:fill-box;transform-origin:50%;animation:3.4s ease-in-out infinite talk-cloud-puff}.talk-cloud-shape circle:nth-child(2){animation-delay:-.6s}.talk-cloud-shape circle:nth-child(3){animation-delay:-1.2s}.talk-cloud-shape circle:nth-child(4){animation-delay:-1.8s}.talk-cloud-shape circle:nth-child(5){animation-delay:-2.4s}@keyframes talk-cloud-puff{0%,to{transform:scale(1)}50%{transform:scale(1.09)}}@keyframes talk-cloud-line{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.talk-cloud-drift,.talk-cloud-shape circle,.talk-cloud-shape ellipse,.talk-cloud-line{animation:none}}.view-header{flex-direction:column;gap:1rem;margin-bottom:1.75rem;display:flex}@container view (width>=600px){.view-header{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:2rem}}.view-header-main{flex-direction:column;gap:.5rem;max-width:44rem;display:flex}.view-title{font-size:var(--fs-big)}.view-title .particle-name{width:min(100%,24rem);height:3rem}.view-lede{max-width:60ch;color:var(--ink-2);font-size:var(--fs-body)}.view-header-aside{flex-shrink:0}.subhead{color:var(--ink);font-size:var(--fs-body);letter-spacing:-.005em;margin-bottom:.75rem;font-weight:600}.view-footer{flex-direction:column;gap:1.5rem;margin-top:2rem;display:flex}.pager{justify-content:space-between;gap:1rem;display:flex}@media (width>=1024px){.pager{display:none}}.site-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding-top:1.25rem;display:flex}.site-footer-copy{color:var(--muted);font-size:var(--fs-small)}.site-footer-links{flex-wrap:wrap;gap:.25rem 1.75rem;display:flex}.site-footer-links a{color:var(--muted);font-size:var(--fs-small);transition:color .15s;position:relative}.site-footer-links a:hover{color:var(--ink)}@media (width<=639px){.pager{display:none}.site-footer{flex-direction:column-reverse;align-items:flex-start}.site-footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem 1.25rem;width:100%;display:grid}}@media (prefers-reduced-motion:reduce){.site-footer-links a:after{transition:none}}.pager-link{border-radius:var(--radius-sm);transition:background-color .15s ease, transform .16s var(--ease-out);flex-direction:column;gap:.125rem;margin:-.375rem -.625rem;padding:.375rem .625rem;display:inline-flex}.pager-link:active{transform:scale(.97)}.pager-next{text-align:right;align-items:flex-end}.pager-link:hover{background:var(--surface-2)}.pager-hint{color:var(--subtle);font-size:var(--fs-small)}.pager-label{font-size:var(--fs-body);align-items:center;gap:.25rem;font-weight:600;display:inline-flex}.pager-label .icon{color:var(--accent-ink)}.soon-card{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface-2);flex-direction:column;align-items:flex-start;gap:.875rem;padding:1.75rem;display:flex}.soon-badge{background:var(--surface);color:var(--ink-2);font-size:var(--fs-small);box-shadow:0 0 0 1px var(--line);border-radius:999px;align-items:center;gap:.375rem;padding:.25rem .75rem;font-weight:500;display:inline-flex}.soon-body{max-width:34rem;color:var(--ink-2);font-size:var(--fs-body);line-height:1.55}.soon-link{color:var(--ink);font-size:var(--fs-small);align-items:center;gap:.25rem;font-weight:500;display:inline-flex}.soon-link:hover{text-underline-offset:3px;text-decoration:underline}.home-hero{align-items:center;gap:1.75rem;padding-top:1rem;display:grid}@container view (width>=640px){.home-hero{grid-template-columns:16.5rem minmax(0,1fr);gap:2.75rem}.home-hero .home-portrait{--disc:100%}}.home-intro{flex-direction:column;align-items:flex-start;display:flex}.home-title{width:min(100%,25rem);font-size:var(--fs-big);letter-spacing:-.015em;line-height:1.3}.hero-line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:visible clip}.hero-line>span{display:inline-block}.hero-line+.hero-line{color:var(--subtle)}.hero-line>.hero-mark{display:block}.hero-mark{isolation:isolate;cursor:var(--cursor-default);position:relative}.home-lede{max-width:38ch;color:var(--ink-2);font-size:var(--fs-body);margin-top:1.25rem;line-height:1.6}.home-meta{max-width:44ch;color:var(--muted);font-size:var(--fs-body);margin-top:.625rem}.home-portrait{--disc:min(100%, 16.5rem);width:var(--disc);justify-self:center;padding-bottom:3.25rem;position:relative}.portrait-float{aspect-ratio:1;animation:7s ease-in-out infinite portrait-float;position:relative}.home-portrait:hover .portrait-float,.home-portrait:focus-within .portrait-float,.home-portrait:hover .portrait-ground,.home-portrait:focus-within .portrait-ground{animation-play-state:paused}.portrait-disc{aspect-ratio:1;background:var(--surface);box-shadow:0 2px 6px rgba(var(--shadow-rgb), .05), 0 18px 48px -10px rgba(var(--shadow-rgb), .16);border-radius:50%;position:absolute;bottom:0;left:0;right:0}.portrait-cutout{border-radius:50%;position:absolute;inset:0;overflow:hidden}.portrait-cutout>.portrait-reveal{width:142%;height:113.6%;position:absolute;top:-11.6%;left:-21%}.portrait-ground{background:rgba(var(--shade), .16);filter:blur(10px);border-radius:50%;height:1.25rem;animation:7s ease-in-out infinite portrait-ground;position:absolute;bottom:1.75rem;left:18%;right:18%}@keyframes portrait-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes portrait-ground{0%,to{opacity:1;transform:scaleX(1)}50%{opacity:.6;transform:scaleX(.82)}}.home-hint{background:var(--surface-2);color:var(--ink-2);font-size:var(--fs-small);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:.5rem;padding:.3125rem .75rem;font-weight:500;transition:background-color .3s,color .3s;display:inline-flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.home-hint-dot{background:var(--subtle);width:6px;height:6px;transition:background-color .3s ease, transform .3s var(--ease-out);border-radius:50%}.home-hint.is-ship{background:var(--accent-soft);color:var(--accent-ink)}.home-hint.is-ship .home-hint-dot{background:var(--accent);transform:scale(1.3)}.is-first .portrait-disc{animation:disc-in .6s var(--ease-out) var(--enter-delay,0s) both}.is-first .portrait-cutout>.portrait-reveal{animation:step-out 1.1s var(--ease-out) calc(var(--enter-delay,0s) + .15s) both}.is-first .portrait-ground{animation:fade-in .6s ease calc(var(--enter-delay,0s) + .3s) both, portrait-ground 7s ease-in-out .9s infinite}.is-first .hero-line>span{animation:line-up .85s var(--ease-out) calc(var(--enter-delay,0s) + .2s) both}.is-first .hero-line+.hero-line>span{animation-delay:calc(var(--enter-delay,0s) + .3s)}.is-first .home-intro>p{animation:settle-in .6s var(--ease-out) calc(var(--enter-delay,0s) + .45s) both}.is-first .home-intro>p+p{animation-delay:calc(var(--enter-delay,0s) + .55s)}.is-first .home-hint{animation:fade-in .5s ease calc(var(--enter-delay,0s) + 1s) both}@keyframes disc-in{0%{opacity:0;transform:scale(.9)}}@keyframes step-out{0%{transform:translateY(16%)}}@keyframes line-up{0%{transform:translateY(105%)}}@keyframes settle-in{0%{opacity:0;transform:translateY(10px)}}@keyframes fade-in{0%{opacity:0}}.home-sections{flex-direction:column;gap:5rem;margin-top:2rem;display:flex}.home-sections .list-section-head{align-items:flex-end;padding-bottom:1rem}.home-sections .list-section-title{max-width:30ch;color:var(--ink);font-size:var(--fs-small);letter-spacing:-.02em;font-weight:500;line-height:1.2}.home-sections .list-section-aside{font-size:var(--fs-small);flex-shrink:0;padding-bottom:.25rem}[data-reveal]:not(.is-in) .list-section-head,[data-reveal]:not(.is-in) .media-rows>li,[data-reveal]:not(.is-in) .media-more{opacity:0}[data-reveal].is-in .list-section-head,[data-reveal].is-in .media-rows>li,[data-reveal].is-in .media-more{animation:rise-in .6s var(--ease-out) both;animation-delay:calc(var(--i,0) * 55ms)}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){.portrait-float,.portrait-ground,.is-first .portrait-ground,.is-first .portrait-cutout>.portrait-reveal,.is-first .hero-line>span{animation:none}@keyframes disc-in{0%{opacity:0}}@keyframes settle-in{0%{opacity:0}}@keyframes rise-in{0%{opacity:0}}}.view-home .media-desc{font-size:14px;line-height:1.55}.contact-card{z-index:55;top:112px;left:calc(var(--sb-inset) + var(--sb-current,272px) + 12px);width:min(31rem, calc(100vw - var(--sb-inset) * 2 - var(--sb-current,272px) - 24px));border:1px solid rgba(var(--shade), .08);background:var(--surface);max-height:calc(100dvh - 124px);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .05), 0 24px 56px -24px rgba(var(--shadow-rgb), .35);transform-origin:0 24px;animation:contact-in .22s var(--ease-out) both;border-radius:22px;flex-direction:column;gap:.875rem;padding:1.25rem;display:flex;position:fixed;overflow-y:auto}@keyframes contact-in{0%{opacity:0;transform:scale(.96)translate(-8px)}}.contact-backdrop{display:none}@media (width<=1023px){.contact-backdrop{z-index:54;background:rgba(var(--shadow-rgb), .35);display:block;position:fixed;inset:0}.contact-card{transform-origin:50%;width:min(31rem,100vw - 32px);max-height:calc(100dvh - 32px);animation-name:contact-in-center;top:50%;left:50%;transform:translate(-50%,-50%)}}@keyframes contact-in-center{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}}@media (prefers-reduced-motion:reduce){.contact-card{animation:none}}.contact-title{font-size:var(--fs-big);letter-spacing:-.01em;font-weight:600}.field-row{gap:.875rem;display:grid}@media (width>=460px){.field-row{grid-template-columns:1fr 1fr}}.field{flex-direction:column;gap:.375rem;display:flex}.field-label{color:var(--muted);font-size:var(--fs-small)}.field input,.field textarea{border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--ink);font:inherit;border-radius:14px;padding:.6875rem .875rem;transition:border-color .15s,background-color .15s}.field input{height:2.75rem}.field textarea{resize:vertical;min-height:7.5rem}.field input:hover,.field textarea:hover{border-color:var(--line-strong)}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--ink);background:var(--surface);outline:none}.form-foot{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.form-note{max-width:22rem;color:var(--muted);font-size:var(--fs-small)}.send-pill{border:1px solid rgba(var(--shade), .09);background:var(--surface);height:2.75rem;color:var(--ink);box-shadow:0 1px 2px rgba(var(--shadow-rgb), .05), 0 6px 16px -10px rgba(var(--shadow-rgb), .25);transition:border-color .15s ease, transform .16s var(--ease-out);border-radius:999px;flex:none;padding:0 1.5rem;font-weight:500}.send-pill:hover{border-color:rgba(var(--shade), .2)}.send-pill:active{transform:scale(.97)}.send-pill:disabled{opacity:.6;cursor:progress}.hover-preview{z-index:150;pointer-events:none;will-change:transform;justify-content:center;align-items:flex-end;width:0;height:0;display:flex;position:fixed;top:0;left:0}.hover-preview.is-below{align-items:flex-start}.hover-preview.is-below .hover-preview-card{margin:22px 0 0;transform:translateY(-40px)}.hover-preview.is-below .hover-preview-card.is-visible{transform:translateY(0)}.hover-preview-card{background:var(--surface);width:230px;box-shadow:0 10px 30px #0000002e, 0 0 0 1px var(--line);opacity:0;border-radius:16px;flex:none;margin:0 0 22px;transition:opacity .3s,transform .3s;overflow:hidden;transform:translateY(40px)}.hover-preview-card.is-visible{opacity:1;transform:translateY(0)}.hover-preview-cover{background:#18181b;height:64px}.hover-preview-cover[data-brand=facebook]{background:linear-gradient(135deg,#1877f2,#5aa2ff)}.hover-preview-cover[data-brand=instagram]{background:linear-gradient(135deg,#feda75,#fa7e1e 30%,#d62976 60%,#962fbf 80%,#4f5bd5)}.hover-preview-cover[data-brand=tiktok]{background:linear-gradient(135deg,#25f4ee,#111 45%,#fe2c55)}.hover-preview-cover[data-brand=linkedin]{background:linear-gradient(135deg,#0a66c2,#5aa9e6)}.hover-preview-cover[data-brand=github]{background:linear-gradient(135deg,#24292f,#57606a)}.hover-preview-cover[data-brand=mail]{background:linear-gradient(135deg,#ea4335,#fbbc05)}.hover-preview-avatar{border:4px solid var(--surface);background:var(--line);object-fit:cover;border-radius:50%;width:84px;height:84px;margin:-42px 0 0 14px;display:block;position:relative}.hover-preview-avatar.is-logo{object-fit:contain;background:#1f1f24;padding:18px}.hover-preview-meta{justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .9rem .85rem;display:flex}.hover-preview-text{min-width:0;line-height:1.25;display:grid}.hover-preview-text strong{color:var(--ink);font-size:.875rem;font-weight:600}.hover-preview-text span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.hover-preview-badge{color:#fff;background:#18181b;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.hover-preview-badge[data-brand=facebook]{background:#1877f2}.hover-preview-badge[data-brand=instagram]{background:radial-gradient(circle at 30% 107%,#fdf497 0% 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%)}.hover-preview-badge[data-brand=tiktok]{background:#000;box-shadow:-1.5px -1.5px #25f4ee,1.5px 1.5px #fe2c55}.hover-preview-badge[data-brand=linkedin]{background:#0a66c2}.hover-preview-badge[data-brand=github]{background:#24292f}.hover-preview-badge[data-brand=mail]{background:#ea4335}@media (prefers-reduced-motion:reduce){.hover-preview-card{transition:opacity .1s;transform:none}}.hover-preview-card.is-wide{width:320px}.hover-preview-wide{background:var(--surface);width:100%;height:auto;padding:10px 10px 0;display:block}[data-preview]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
