@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/unbounded-cyrillic-wght-normal.C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/unbounded-vietnamese-wght-normal.rat7GD3o.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/unbounded-latin-ext-wght-normal.D6H-S6MW.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/unbounded-latin-wght-normal.D5afBTBx.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.skill-row{border-top:1px solid var(--color-line);grid-template-columns:44px 1fr minmax(120px,1fr) 56px;align-items:center;gap:18px;padding:18px 0;display:grid}.skill-row:last-child{border-bottom:1px solid var(--color-line)}.skill-icon{border-radius:7px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex;overflow:hidden}.skill-label{letter-spacing:-.005em;color:var(--color-ink);font-size:16px}.skill-track{background:var(--color-line);border-radius:999px;height:2px;position:relative;overflow:hidden}.skill-fill{background:var(--color-ink);width:0;transition:width 1.1s cubic-bezier(.2,.7,.1,1);transition-delay:calc(var(--i,0) * 90ms + .18s);border-radius:999px;position:absolute;inset:0 auto 0 0}.skill-row.is-visible .skill-fill{width:var(--pct,0%)}.skill-num{text-align:right;color:var(--color-muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:13px}@media (width<=640px){.skill-row{grid-template-columns:36px 1fr 48px;grid-template-areas:"icon label num""track track track";gap:12px 14px}.skill-icon{grid-area:icon}.skill-label{grid-area:label}.skill-track{grid-area:track}.skill-num{grid-area:num}}.contact-form{margin-top:28px;display:block}.contact-form:not(.is-enhanced) .contact-row,.contact-form:not(.is-enhanced) .contact-submit{display:none}.contact-row{border-top:1px solid var(--color-line);grid-template-columns:110px 1fr;align-items:baseline;gap:18px;padding:16px 0;display:grid}.contact-row--message{border-bottom:1px solid var(--color-line);align-items:start}.contact-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--color-muted);padding-top:4px;font-size:11px}.contact-input{width:100%;min-height:44px;font:inherit;color:var(--color-ink);background:0 0;border:0;outline:none;padding:4px 0;font-size:17px}.contact-input::placeholder{color:var(--color-muted)}.contact-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.contact-input--textarea{resize:vertical;min-height:110px;line-height:1.45}.contact-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;display:flex}.contact-submit{background:var(--color-ink);height:46px;color:var(--color-paper);letter-spacing:-.005em;cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:14px;font-weight:500;transition:background-color .2s,transform .2s,opacity .2s;display:inline-flex}.contact-submit:hover:not(:disabled){background:var(--color-accent);transform:translateY(-1px)}.contact-submit:disabled{opacity:.6;cursor:progress}.contact-fallback{color:var(--color-muted);font-size:13px}.contact-fallback a{min-height:44px;color:var(--color-ink);text-underline-offset:3px;align-items:center;text-decoration:underline 1px;transition:color .15s;display:inline-flex}.contact-fallback a:hover{color:var(--color-accent)}.contact-status{min-height:20px;color:var(--color-muted);margin-top:14px;font-size:14px;transition:color .2s}.contact-status[data-kind=success]{color:#2a8a4d}.contact-status[data-kind=error]{color:#b94632}@media (width<=640px){.contact-row,.contact-row--message{grid-template-columns:1fr;gap:6px}.contact-label{padding-top:0}}@media (prefers-reduced-motion:reduce){.skill-fill{transition:none}}.work-grid{--ease-out:cubic-bezier(.2, .7, .1, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--gap:clamp(14px, 1.6vw, 28px);column-gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr));padding-bottom:24px;display:grid}.work-tile{grid-column:1/-1}.work-link{color:inherit;display:block}.work-link:focus-visible{outline:none}.work-link:focus-visible .work-frame{outline:2px solid var(--color-accent);outline-offset:5px}.work-frame{--radius:0px;aspect-ratio:4/5;border-radius:var(--radius);transition:box-shadow .7s var(--ease-out);position:relative}.work-art{isolation:isolate;clip-path:inset(0 round var(--radius));position:absolute;inset:0;overflow:hidden;container-type:size}.work-art:after{content:"";z-index:40;pointer-events:none;background:radial-gradient(circle at calc(50% + var(--px,0) * 50%) calc(40% + var(--py,0) * 50%), #ffffff38, transparent 45%);mix-blend-mode:soft-light;opacity:0;transition:opacity .5s;position:absolute;inset:0}.is-live .work-frame{box-shadow:0 34px 60px -34px #1313118c}.is-live .work-art:after{opacity:1}.depth{translate:calc(var(--px,0) * var(--d,0) * 1px) calc(var(--py,0) * var(--d,0) * 1px)}@media (width>=600px){.work-frame{aspect-ratio:3/2}}@media (width>=960px){.work-grid{container-type:inline-size}.work-frame{--radius:6px;aspect-ratio:auto;height:calc(((100cqw - 11 * var(--gap)) * 7 / 12 + 6 * var(--gap)) * 10.5 / 16);transform:perspective(1200px) rotateX(calc(var(--py,0) * -3deg)) rotateY(calc(var(--px,0) * 4deg))}.work-tile.is-wide{grid-column:span 7}.work-tile.is-narrow{grid-column:span 5}}.work-meta{justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0 48px;display:flex}.work-meta h3{letter-spacing:-.01em;font-size:16px;font-weight:550}.work-meta p{color:var(--color-muted);margin-top:2px;font-size:13px;line-height:1.4}.work-meta>span{transition:transform .45s var(--ease-out), color .3s;font-size:20px;line-height:1}.is-live .work-meta>span{color:var(--color-accent);transform:translate(3px,-3px)}@media (width<=959px){.work-grid{--bleed:20px;margin-inline:calc(var(--bleed) * -1)}.work-meta{padding:12px var(--bleed) 30px}}@media (width>=640px) and (width<=959px){.work-grid{--bleed:32px}}.sc{position:absolute;inset:0;overflow:hidden}.sc img{max-width:none;display:block;position:absolute}.sc-emoji{color:#f7f2ee;background:#0d0a09}.em-glow{opacity:.7;background:radial-gradient(38% 48% at 16% 88%,#f26c4557,#0000 70%),radial-gradient(45% 55% at 80% 35%,#fbbc2433,#0000 70%),radial-gradient(30% 30% at 58% 0,#f26c4529,#0000 70%);transition:opacity .8s;position:absolute;inset:-10%}.is-live .em-glow{opacity:1}.em-dots{background-image:radial-gradient(#ffffff14 1px,#0000 1.3px);background-size:22px 22px;position:absolute;inset:0;mask-image:radial-gradient(#000 30%,#0000 78%)}.em-brand{z-index:5;font:600 clamp(12px, 2.6cqmin, 18px) "Unbounded Variable", var(--font-sans);letter-spacing:-.02em;align-items:center;gap:1.5cqmin;display:flex;position:absolute;top:5.5cqmin;left:5.5cqmin}.sc .em-brand img{width:max(22px,5.6cqmin);height:max(22px,5.6cqmin);position:static}.em-copy{z-index:5;width:46cqw;position:absolute;bottom:5.5cqmin;left:5.5cqmin}.em-head{font:700 clamp(19px, 5.6cqmin, 56px)/1.04 "Unbounded Variable", var(--font-sans);letter-spacing:-.035em}.em-head span,.em-head b{display:block}.em-head b{background:linear-gradient(95deg,#f26c45,#f78f3a 48%,#fbbc24);color:#0000;background-clip:text;padding-bottom:.06em;font-weight:700}.em-keys{color:#8c817a;align-items:center;gap:.55em;margin-top:2.8cqmin;font-size:clamp(9px,1.9cqmin,13px);display:flex}.em-keys i{font-style:normal}.em-keys kbd{font:600 1em var(--font-sans);color:#f7f2ee;background:#211b18;border-radius:.5em;padding:.45em .75em;box-shadow:inset 0 -2px #0000008c,0 0 0 1px #ffffff1a}.is-live .em-keys kbd{animation:em-press .45s var(--ease-out) both}.is-live .em-keys kbd:nth-of-type(2){animation-delay:70ms}.is-live .em-keys kbd:nth-of-type(3){animation-delay:.14s}@keyframes em-press{45%{transform:translateY(2px);box-shadow:inset 0 0 #0000008c,0 0 0 1px #f78f3a,0 0 14px #f78f3a8c}to{box-shadow:inset 0 -2px #0000008c,0 0 0 1px #f78f3ab3}}.em-float{z-index:3;width:var(--s);height:var(--s);filter:drop-shadow(0 1.5cqmin 2.4cqmin #00000073);transform:rotate(var(--r))}.em-float.f1{--s:13cqmin;--r:-12deg;top:6%;left:49%}.em-float.f2{--s:9.5cqmin;--r:10deg;filter:blur(1px)drop-shadow(0 1.5cqmin 2.4cqmin #00000073);top:7%;right:3%}.em-float.f3{--s:14cqmin;--r:14deg;bottom:5%;right:2.5%}.em-float.f4{--s:7.5cqmin;--r:8deg;opacity:.7;filter:blur(1.5px);bottom:9%;left:47%}.is-live .em-float{animation:3.2s ease-in-out infinite alternate em-bob}.is-live .em-float.f2{animation-delay:-1.1s}.is-live .em-float.f3{animation-delay:-2s}.is-live .em-float.f4{animation-delay:-.6s}.is-live .em-float.f1{animation:em-hop .9s 2.4s var(--ease-spring) both, em-bob 3.2s 3.3s ease-in-out infinite alternate}@keyframes em-bob{to{transform:rotate(calc(var(--r) * -.4)) translateY(-1.8cqmin)}}@keyframes em-hop{0%{transform:rotate(var(--r))}35%{transform:translateY(-4cqmin)rotate(6deg)scale(1.18)}to{transform:rotate(var(--r))}}.em-panel{--pw:min(42cqw, 72cqh);z-index:4;right:6cqw;height:fit-content;width:var(--pw);font-family:"Segoe UI Variable Text", "Segoe UI", var(--font-sans);font-size:calc(var(--pw) / 24);word-spacing:.06em;transition:transform .8s var(--ease-out);background:#221f1ee0;border-radius:.9em;margin-block:auto;padding:.7em;position:absolute;inset-block:0;transform:rotate(-4deg)scale(.97);box-shadow:0 0 0 1px #ffffff17,0 2.4em 4.5em -1.2em #000000d9}.is-live .em-panel{transform:none}.em-search{background:#ffffff0f;border-radius:.45em;align-items:center;gap:.5em;height:2.2em;padding:0 .7em;transition:box-shadow .3s;display:flex;box-shadow:inset 0 0 0 1px #ffffff1f}.is-live .em-search{transition-delay:.2s;box-shadow:inset 0 0 0 1px #ffffff24,inset 0 -2px #f26c45}.em-search svg{fill:none;stroke:#b5aaa2;stroke-width:2px;stroke-linecap:round;flex:none;width:1em;height:1em}.em-field{white-space:nowrap;flex:1;align-items:center;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.em-ph{color:#8c817a;font-size:.86em;transition:opacity .2s;position:absolute;left:0}.is-live .em-ph{opacity:0;transition-delay:.25s}.em-q{font-size:.92em;display:inline-flex}.em-q i{max-width:0;font-style:normal;display:inline-block;overflow:hidden}.is-live .em-q i{animation:1ms step-end .45s both em-type}.is-live .em-q i:nth-child(2){animation-delay:.62s}.is-live .em-q i:nth-child(3){animation-delay:.79s}.is-live .em-q i:nth-child(4){animation-delay:.96s}@keyframes em-type{0%{max-width:0}to{max-width:1em}}.em-caret{opacity:0;background:#f7f2ee;width:1.5px;height:1.1em;margin-left:1px}.is-live .em-caret{animation:1s step-end .3s infinite em-blink}@keyframes em-blink{0%{opacity:1}50%{opacity:0}}.em-cats{border-bottom:1px solid #ffffff12;justify-content:space-between;padding:.6em .3em .45em;display:flex}.em-cats svg{fill:none;stroke:#8c817a;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.05em;height:1.05em}.em-cats svg:first-child{stroke:#f78f3a}.em-label{color:#b5aaa2;height:1.9em;font-size:.72em;font-weight:600;position:relative}.em-label span{transition:opacity .25s,transform .25s;position:absolute;top:.5em;left:.35em}.em-label .l2{opacity:0;transform:translateY(.6em)}.is-live .em-label .l1{opacity:0;transition-delay:1.1s;transform:translateY(-.6em)}.is-live .em-label .l2{opacity:1;transition-delay:1.2s;transform:none}.em-cells{position:relative}.em-grid,.em-results{grid-template-columns:repeat(6,1fr);display:grid}.em-results{position:absolute;inset:0 0 auto}.em-cells span{aspect-ratio:1;border-radius:.45em;place-items:center;display:grid}.sc .em-cells img{width:64%;height:64%;position:static}.em-grid span{transition:opacity .25s,transform .3s}.is-live .em-grid span{opacity:0;transition-delay:calc(1.05s + var(--i) * 12ms);transform:scale(.6)}.em-results span{opacity:0;transition:opacity .2s,transform .2s,background-color .2s,box-shadow .2s;transform:scale(.5)}.is-live .em-results span{opacity:1;transition:opacity .3s, transform .45s var(--ease-spring);transition-delay:calc(1.3s + var(--i) * 45ms);transform:none}.is-live .em-results span:first-child{transition:opacity .3s 1.3s, transform .45s var(--ease-spring) 1.3s, background-color .2s 1.95s, box-shadow .2s 1.95s;animation:em-pick .6s 1.95s var(--ease-spring) forwards;background-color:#ffffff1a;box-shadow:inset 0 0 0 1.5px #f78f3a}@keyframes em-pick{40%{transform:scale(1.22)rotate(-6deg)}to{transform:scale(1.08)}}.em-preview{background:#0003;border-top:1px solid #ffffff12;border-radius:0 0 .9em .9em;align-items:center;height:3.2em;margin:.6em -.7em -.7em;padding:0 .9em;display:flex;position:relative}.pv{align-items:center;gap:.7em;transition:opacity .3s,transform .3s;display:flex;position:absolute;left:.9em;right:6em}.sc .pv img{flex:none;width:2.1em;height:2.1em;position:static}.pv>span{min-width:0}.pv b{text-overflow:ellipsis;white-space:nowrap;font-size:.8em;font-weight:600;display:block;overflow:hidden}.pv code{font:.66em var(--font-mono);color:#b5aaa2;display:block}.pv-b{opacity:0;transform:translateY(30%)}.is-live .pv-a{opacity:0;transition-delay:2s;transform:translateY(-30%)}.is-live .pv-b{opacity:1;transition-delay:2.05s;transform:none}.em-copied{color:#7ee2a8;opacity:0;background:#1d3828;border-radius:99px;align-items:center;gap:.35em;padding:.35em .65em;font-size:.68em;font-weight:600;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;right:.9em;transform:scale(.7)}.em-copied svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:1.1em;height:1.1em}.is-live .em-copied{opacity:1;transition:opacity .25s 2.4s, transform .4s var(--ease-spring) 2.4s;transform:none}@container (aspect-ratio<=6/5){.em-copy{width:auto;top:15cqmin;bottom:auto;right:5.5cqmin}.em-head{font-size:7.4cqmin}.em-panel{--pw:min(80cqw, 56cqh);left:0;right:0;margin:0 auto;inset-block:auto 6cqmin}.em-float.f1{--s:12cqmin;top:29%;left:auto;right:5%}.em-float.f2{--s:8cqmin;top:3%}.em-float.f3{--s:11cqmin;bottom:33%;left:-2%;right:auto}.em-float.f4{display:none}}.sc-giga{--gp-font:"Unbounded Variable", var(--font-sans);color:#f3f6fc;background:#04060c}.sc .gp-planet{opacity:.82;filter:saturate(.9)brightness(.82);width:min(150cqw,210cqh);height:auto;transition:opacity 1.2s var(--ease-out), filter 1.2s var(--ease-out), transform 1.6s var(--ease-out);top:-6%;right:-30cqw}.is-live .gp-planet{opacity:1;filter:saturate(1.15)brightness(1.08);transform:scale(1.05)}.gp-space{position:absolute;inset:0}.gp-space canvas{opacity:0;width:100%;height:100%;transition:opacity .8s;display:block;position:absolute;inset:0}.gp-space.is-ready canvas{opacity:1}.gp-space.is-ready .gp-planet{visibility:hidden;transition:visibility 0s .8s}.gp-grid{background-image:linear-gradient(#d6e2ff09 1px,#0000 1px),linear-gradient(90deg,#d6e2ff09 1px,#0000 1px);background-size:7cqmin 7cqmin;position:absolute;inset:0;mask-image:radial-gradient(at 25% 45%,#000,#0000 72%)}.gp-stars i{left:var(--x);top:var(--y);opacity:.35;background:#d6e6ff;border-radius:50%;width:2px;height:2px;position:absolute;box-shadow:0 0 6px #6cb4ff}.is-live .gp-stars i{animation:2.4s ease-in-out infinite alternate gp-twinkle;animation-delay:calc(var(--i) * -.37s)}@keyframes gp-twinkle{0%{opacity:.15}to{opacity:.95}}.gp-shade{background:linear-gradient(90deg,#04060ce0 0%,#04060c59 48%,#0000 72%),linear-gradient(#04060c00 52%,#04060cf2 100%);position:absolute;inset:0}.gp-brand{z-index:5;font:600 clamp(12px, 2.8cqmin, 19px) var(--gp-font);letter-spacing:-.02em;align-items:center;gap:1.3cqmin;display:flex;position:absolute;top:5.5cqmin;left:5.5cqmin}.gp-brand svg{width:max(20px,5cqmin);height:max(20px,5cqmin)}.gp-brand .a{fill:none;stroke:#3b91e8;stroke-width:16px;stroke-linecap:round;stroke-linejoin:round}.gp-brand .b{fill:none;stroke:#e8eef9;stroke-width:16px;stroke-linecap:round}.gp-brand .c{fill:#e8eef9}.gp-brand .d{fill:#3b91e8}.gp-auto{z-index:5;font:500 clamp(9px, 1.9cqmin, 13px)/1 var(--font-mono);color:#8590a6;background:#0a0f1b99;border-radius:99px;grid-template-columns:auto auto;align-items:center;column-gap:.6em;padding:.55em .9em;transition:color .3s,box-shadow .3s;display:grid;position:absolute;top:5cqmin;right:5.5cqmin;box-shadow:inset 0 0 0 1px #d6e2ff1f}.gp-auto i{background:#5b6478;border-radius:50%;width:.6em;height:.6em;transition:background .3s,box-shadow .3s}.gp-auto>span{grid-area:1/2;transition:opacity .25s}.gp-auto .a-on{opacity:0}.is-live .gp-auto{color:#4ade80;transition-delay:.15s;box-shadow:inset 0 0 0 1px #4ade8059}.is-live .gp-auto i{background:#4ade80;transition-delay:.15s;box-shadow:0 0 0 .25em #4ade802e,0 0 10px #4ade80}.is-live .gp-auto .a-off{opacity:0;transition-delay:.15s}.is-live .gp-auto .a-on{opacity:1;transition-delay:.15s}.gp-head{z-index:5;max-width:76cqw;font:700 clamp(18px, 6.2cqmin, 46px)/1.1 var(--gp-font);letter-spacing:-.035em;text-shadow:0 2px 24px #04060cb3;position:absolute;top:18%;left:5.5cqmin}.gp-head b{background:linear-gradient(100deg,#7cc0ff,#6ee7ff,#b9a8ff,#7cc0ff) 0 0/200% 100%;color:#0000;text-shadow:none;background-clip:text;padding-bottom:.08em;display:block}.is-live .gp-head b{animation:4s linear infinite gp-shine}@keyframes gp-shine{to{background-position:-200% 0}}.gp-panel{z-index:6;max-width:30em;font:clamp(11.5px, 2.7cqmin, 14px)/1.3 var(--font-sans);backdrop-filter:blur(10px);background:linear-gradient(#0e1424d6,#080c16eb);border-radius:1.1em;padding:.9em 1em;transition:box-shadow .6s;position:absolute;bottom:5.5cqmin;left:5.5cqmin;right:5.5cqmin;box-shadow:inset 0 0 0 1px #d6e2ff1a,0 2em 4em -2em #000000e6}.is-live .gp-panel{box-shadow:inset 0 0 0 1px #6cb4ff3d,0 2em 4em -1.6em #3b91e880}.gp-task{border-bottom:1px solid #d6e2ff14;justify-content:space-between;align-items:center;gap:1em;padding-bottom:.65em;display:flex}.gp-task-name{align-items:center;gap:.5em;font-weight:600;display:inline-flex}.gp-task-name i{background:linear-gradient(135deg,#6cb4ff,#6ee7ff);border-radius:50%;width:.55em;height:.55em;box-shadow:0 0 8px #6ee7ff}.gp-ai{font:.8em/1 var(--font-mono);color:#6cb4ff;white-space:nowrap;grid-template-columns:auto auto;align-items:center;column-gap:.35em;display:grid}.gp-ai svg{fill:currentColor;width:1em;height:1em}.gp-ai>span{grid-area:1/2;transition:opacity .25s}.gp-ai .w-b{opacity:0;color:#4ade80}.is-live .gp-ai svg{animation:1.1s ease-in-out 2 gp-spin}.is-live .gp-ai .w-a{opacity:0;transition-delay:1.75s}.is-live .gp-ai .w-b{opacity:1;transition-delay:1.75s}@keyframes gp-spin{to{transform:rotate(180deg)scale(1.15)}}.gp-draft{border-bottom:1px solid #d6e2ff14;align-items:center;gap:.75em;padding:.65em 0;display:flex}.sc .gp-draft img{object-fit:cover;opacity:.45;filter:saturate(.5);border-radius:.5em;flex:none;width:4.4em;height:2.9em;transition:opacity .6s,filter .6s;position:static}.is-live .gp-draft img{opacity:1;filter:none;transition-delay:.2s}.gp-lines{flex:1;gap:.3em;min-width:0;display:grid}.gp-lines p{height:1.3em;position:relative}.gp-lines p:before{content:"";background:#d6e2ff17;border-radius:.3em;width:92%;height:.55em;margin-top:-.28em;transition:opacity .3s;position:absolute;top:50%;left:0}.gp-lines p:nth-child(2):before{width:68%}.gp-lines span{color:#c2cbdc;white-space:nowrap;clip-path:inset(0 100% 0 0);font-size:.88em;transition:clip-path .25s;display:block;position:relative;overflow:hidden}.is-live .gp-lines span{clip-path:inset(0);transition:clip-path .7s steps(24, end) calc(.3s + var(--i) * .7s)}.is-live .gp-lines p:before{opacity:0;transition-delay:calc(.3s + var(--i) * .7s)}.gp-channels{gap:.1em;margin:0;padding:.45em 0 0;list-style:none;display:grid}.gp-channels li{grid-template-columns:1.25em auto 1fr 1.35em;align-items:center;gap:.6em;padding:.4em .1em;display:grid;position:relative}.gp-icon{fill:none;stroke:#8590a6;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.25em;height:1.25em;transition:stroke .3s}.gp-name{font-size:.92em;font-weight:600}.gp-status{font:.8em/1.2 var(--font-mono);color:#8590a6;white-space:nowrap;justify-items:end;display:grid;overflow:hidden}.gp-status>span{grid-area:1/1;transition:opacity .25s,transform .3s}.gp-status .s-p{opacity:0;color:#4ade80;transform:translateY(70%)}.gp-mark{place-items:center;width:1.35em;height:1.35em;display:grid;position:relative}.gp-mark .spin{border:2px solid #d6e2ff29;border-radius:50%;transition:opacity .2s;position:absolute;inset:.12em}.gp-mark svg{fill:none;stroke:#03130a;stroke-width:3.4px;stroke-linecap:round;stroke-linejoin:round;background:#4ade80;border-radius:50%;width:100%;height:100%;padding:.2em;transition:transform .2s;position:absolute;inset:0;transform:scale(0)}.gp-channels li:after{content:"";transform-origin:0;background:linear-gradient(90deg,#3b91e8,#6ee7ff);border-radius:2px;height:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.is-live .gp-mark .spin{opacity:0;transition:opacity .2s calc(1.75s + var(--i) * .5s);border-top-color:#6cb4ff;animation:.7s linear infinite gp-rot}.is-live .gp-mark svg{transition:transform .4s var(--ease-spring) calc(1.75s + var(--i) * .5s);transform:scale(1)}.is-live .gp-status .s-q{opacity:0;transition-delay:calc(1.75s + var(--i) * .5s);transform:translateY(-70%)}.is-live .gp-status .s-p{opacity:1;transition-delay:calc(1.75s + var(--i) * .5s);transform:none}.is-live .gp-icon{stroke:#6cb4ff;transition-delay:calc(1.75s + var(--i) * .5s)}.is-live .gp-channels li:after{animation:gp-progress .5s linear calc(1.25s + var(--i) * .5s) both}@keyframes gp-rot{to{transform:rotate(360deg)}}@keyframes gp-progress{0%{opacity:1;transform:scaleX(0)}90%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}.sc-gothic{color:#e7c27c;background:#0c0a08}.sc .go-bg{object-fit:cover;object-position:50% 42%;width:100%;height:100%;inset:0;scale:1.08}.go-flash{z-index:1;mix-blend-mode:screen;opacity:0;background:radial-gradient(70% 60% at 74% 8%,#d6dcffcc,#9a8cff47 48%,#0000 80%);position:absolute;inset:0}.go-barrier{z-index:1;fill:none;width:100%;height:64%;position:absolute;top:3%;left:0;overflow:visible}.go-barrier path{stroke:#9a8cff;stroke-width:1.4px;vector-effect:non-scaling-stroke;opacity:.12;filter:drop-shadow(0 0 5px #9a8cffe6);transition:opacity .8s}.go-barrier .b2{stroke:#e2ddff;stroke-width:2px;stroke-dasharray:5 22;opacity:0}.is-live .go-barrier path{opacity:.75}.is-live .go-barrier .b2{opacity:.9;animation:3s linear infinite go-shimmer}@keyframes go-shimmer{to{stroke-dashoffset:-108px}}.go-bolt{z-index:2;fill:none;stroke:#f1f2ff;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px #b3a8ff)drop-shadow(0 0 10px #9a8cff);opacity:0;width:17cqmin;height:30cqmin;position:absolute;top:-3%;right:15%;overflow:visible}.go-bolt path{stroke-dasharray:140;stroke-dashoffset:140px}.go-bolt .fork{stroke-width:1.1px}.is-live .go-flash{animation:4.6s .25s infinite go-flash}.is-live .go-bolt{animation:4.6s .25s infinite go-bolt}.is-live .go-bolt path{animation:4.6s .25s infinite go-bolt-draw}@keyframes go-flash{0%{opacity:0}3%{opacity:1}5%{opacity:.15}7%{opacity:.85}14%,to{opacity:0}}@keyframes go-bolt{0%{opacity:0}2%,9%{opacity:1}15%,to{opacity:0}}@keyframes go-bolt-draw{0%{stroke-dashoffset:140px}3%,to{stroke-dashoffset:0}}.go-shade{z-index:2;background:radial-gradient(at 50% 42%,#0000 40%,#0807058c 100%),linear-gradient(#0807054d,#0000 28% 52%,#080705eb);position:absolute;inset:0}.go-torch{z-index:3;mix-blend-mode:screen;opacity:.5;background:radial-gradient(closest-side,#ff963c61,#e0782f1f 50%,#0000 75%);border-radius:50%;width:36cqmin;height:36cqmin;transition:opacity .6s;position:absolute}.go-torch.t1{bottom:-6cqmin;left:-13cqmin}.go-torch.t2{bottom:6cqmin;right:-11cqmin}.is-live .go-torch{opacity:1;animation:1.7s ease-in-out infinite alternate go-flicker}.is-live .go-torch.t2{animation-delay:-.8s}@keyframes go-flicker{0%{opacity:.7}30%{opacity:1;transform:scale(1.07)}55%{opacity:.78}80%{opacity:.95;transform:scale(.97)}to{opacity:.85}}.go-embers i{z-index:3;bottom:-2%;left:calc(7% + var(--i) * 13.5%);opacity:0;background:#ffc27a;border-radius:50%;width:max(2px,.55cqmin);height:max(2px,.55cqmin);position:absolute;box-shadow:0 0 6px #ff8a3d}.is-live .go-embers i{animation:go-ember calc(3s + var(--i) * .37s) calc(.3s - var(--i) * .55s) linear infinite}@keyframes go-ember{10%{opacity:1}to{opacity:0;transform:translate(5cqmin,-62cqh)}}.go-logo{z-index:5;filter:drop-shadow(0 1.4cqmin 3cqmin #000000d9);width:min(74cqw,100cqh);margin:0 auto;position:absolute;top:50%;left:0;right:0}.sc .go-logo img{width:100%;height:auto;position:static}.go-logo{--rise:-31cqh;transition:transform .9s var(--ease-out);transform:translateY(-50%)scale(1)}.is-live .go-logo{transform:translateY(calc(var(--rise) - 36%)) scale(.74)}@container (aspect-ratio<=9/10){.is-live .go-logo{transform:translateY(calc(var(--rise) - 16%)) scale(.86)}}.go-sheen{-webkit-mask:var(--logo) center / 100% 100% no-repeat;mask:var(--logo) center / 100% 100% no-repeat;mix-blend-mode:screen;opacity:0;background:linear-gradient(105deg,#0000 40%,#fff0cde6 50%,#0000 60%) 120% 0/260% 100% no-repeat;position:absolute;inset:0}.is-live .go-sheen{animation:4.6s .45s infinite go-sheen}@keyframes go-sheen{0%{opacity:1;background-position:120% 0}20%{opacity:1;background-position:-20% 0}21%,to{opacity:0;background-position:-20% 0}}.go-dice{z-index:6;pointer-events:none;opacity:0;transition:opacity .35s;position:absolute;inset:0}.is-live .go-dice{opacity:1}.go-dice canvas{width:100%;height:60%;position:absolute;bottom:9cqmin;left:0}.go-result{text-align:center;font:clamp(11px, 2.6cqmin, 17px)/1.3 var(--font-display);color:#ece2cc;text-shadow:0 1px 3px #000,0 0 12px #000c;position:absolute;bottom:5.5cqmin;left:5.5cqmin;right:5.5cqmin}.go-result[data-kind=win]{color:#ffe3b0}.go-result[data-kind=lose]{color:#c8dbe3}.go-result[data-kind=crit-success]{color:#fff1c4;text-shadow:0 2px 6px #000,0 0 26px #ffc85acc}.go-result[data-kind=crit-fail]{color:#ffb3a3;text-shadow:0 2px 6px #000,0 0 26px #c8321ecc}@container (aspect-ratio<=6/5){.go-logo{--rise:-28cqh;width:86cqw}.go-bolt{right:8%}}.sc-fallout{--hud:#b7da87;--amber:#ffdc76;color:var(--amber);background:#0b1016}.fo-pano{position:absolute;inset:0}.sc .fo-still{object-fit:cover;filter:saturate(.55)brightness(.72);width:100%;height:100%;inset:0}.fo-pano canvas{opacity:0;width:100%;height:100%;transition:opacity .6s;display:block;position:absolute;inset:0}.fo-pano.is-ready canvas{opacity:1}.fo-pano.is-ready .fo-still{visibility:hidden;transition:visibility 0s .6s}.fo-lines{z-index:1;opacity:.7;background:repeating-linear-gradient(0deg,#0000 0 2px,#0003 2px 3px),linear-gradient(#0000 74%,#05080abf);position:absolute;inset:0}.fo-marks{z-index:3;position:absolute;inset:0}.fo-mark{font:600 clamp(10px, 2.3cqmin, 14px)/1 var(--font-sans);color:var(--amber);position:absolute;top:0;left:0}.fo-mark-in{opacity:0;justify-items:center;gap:.3em;transition:opacity .3s;display:grid;position:absolute;transform:translate(-50%,-1.4em)}.fo-mark.is-on .fo-mark-in{opacity:1;animation:fo-pop .6s var(--ease-out) both}@keyframes fo-pop{0%{opacity:0;filter:blur(3px)brightness(2.5);scale:1.9}30%{opacity:1}45%{opacity:.3}60%{opacity:1;filter:none;scale:.94}to{opacity:1;scale:1}}.fo-mark-in:before{content:"";opacity:0;border:1px solid;border-radius:50%;width:3.4em;height:3.4em;margin:-1.7em 0 0 -1.7em;position:absolute;top:1.4em;left:50%}.fo-mark.is-on .fo-mark-in:before{animation:fo-ping .9s .12s var(--ease-out) both}@keyframes fo-ping{0%{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(1.9)}}.sc .fo-mark img{filter:drop-shadow(0 1px 2px #000000e6);width:auto;height:2.8em;position:static}.fo-mark b{text-shadow:0 0 2px #000,0 1px 3px #000;letter-spacing:.02em}.fo-loot{background:#00000073;align-items:center;gap:.2em;padding:.25em;display:flex}.sc .fo-loot img{height:2.3em}.sc .fo-loot .fo-portrait{filter:grayscale()brightness(.85);height:1.4em}.fo-mark.hostile{color:#ff6565}.sc .fo-mark.hostile img{filter:grayscale()sepia()saturate(5)hue-rotate(-38deg)brightness(.95)drop-shadow(0 1px 2px #000000e6)}.fo-hp{background:#ff6565;width:3.4em;height:.32em;display:block;box-shadow:0 0 0 1px #000000b3}.fo-holo{z-index:5;aspect-ratio:960/470;width:min(54cqw,86cqh);position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.sc .fo-holo img{width:100%;height:100%;inset:0}.sc .fo-sign{filter:drop-shadow(0 .5cqmin 1.6cqmin #000000b3)}.fo-tube{opacity:0}.fo-spill{z-index:4;aspect-ratio:2/1.25;opacity:0;background:radial-gradient(closest-side,#ffd66057,#ffc4401f 55%,#0000);width:min(92cqw,150cqh);position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.is-live .fo-tube.t-y,.is-live .fo-spill{animation:1.1s step-end .2s both fo-ign-y}.is-live .fo-tube.t-w{animation:1.1s step-end .5s both fo-ign-w}.is-live .fo-tube.t-g{animation:1.3s step-end .85s both fo-ign-g}@keyframes fo-ign-y{0%{opacity:0}8%{opacity:1}13%{opacity:0}22%{opacity:.85}26%{opacity:.15}34%,to{opacity:1}}@keyframes fo-ign-w{0%{opacity:0}10%{opacity:.9}14%{opacity:0}30%{opacity:1}34%{opacity:.3}40%,to{opacity:1}}@keyframes fo-ign-g{0%{opacity:0}12%{opacity:.7}16%{opacity:0}34%{opacity:1}38%{opacity:0}46%{opacity:.9}50%{opacity:.4}58%,to{opacity:1}}.fo-switch{--w:clamp(34px, 7.4cqmin, 50px);--h:calc(var(--w) * .52);--k:calc(var(--h) - 8px);z-index:6;width:var(--w);height:var(--h);background:#0c140fb8;border-radius:4px;transition:background .3s .1s,box-shadow .3s .1s;position:absolute;top:5.5cqmin;right:5.5cqmin;box-shadow:inset 0 0 0 1px #b7da8759}.fo-switch i{width:var(--k);height:var(--k);transition:transform .45s var(--ease-spring) .1s, background .3s .1s, box-shadow .3s .1s;background:#56614c;border-radius:2px;position:absolute;top:4px;left:4px}.is-live .fo-switch{background:#b7da8733;box-shadow:inset 0 0 0 1px #b7da87d9,0 0 14px #b7da874d}.is-live .fo-switch i{transform:translateX(calc(var(--w) - var(--k) - 8px));background:var(--hud);box-shadow:0 0 10px var(--hud)}.fo-compass{z-index:4;width:min(72cqw,118cqh);height:max(28px,7.5cqmin);position:absolute;bottom:5cqmin;left:50%;transform:translate(-50%);mask:linear-gradient(90deg,#0000,#000 16% 84%,#0000)}.fo-compass canvas{width:100%;height:100%;display:block}@container (aspect-ratio<=6/5){.fo-holo,.fo-spill{top:36%}.fo-holo{width:80cqw}.fo-spill{width:130cqw}.fo-compass{width:88cqw}}@media (prefers-reduced-motion:reduce){.work-art,.work-art *,.work-art :before,.work-art :after{transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.work-frame{transform:none}.depth{translate:none}}.lang[data-astro-cid-3s4v7zxg]{align-items:center;gap:2px;font-size:13px;display:flex}.lang[data-astro-cid-3s4v7zxg] a[data-astro-cid-3s4v7zxg]{min-width:44px;min-height:44px;color:var(--color-muted);justify-content:center;align-items:center;display:inline-flex}.lang[data-astro-cid-3s4v7zxg] a[data-astro-cid-3s4v7zxg][aria-current]{color:var(--color-ink);text-underline-offset:5px;text-decoration:underline}.lang[data-astro-cid-3s4v7zxg] a[data-astro-cid-3s4v7zxg]:hover{color:var(--color-accent)}
