var CWCLetterGrid=(function(hr){"use strict";const hn=['','','','','','','',''];function Tr(L){return`data:image/svg+xml,${(L.includes("xmlns")?L:L.replace("/g,"%3E")}`}const Pr=hn.map(Tr),Lr={body:0,shadow:1},fn=Tr(''),kr=1,Ls=1;function fr(L){return"generate"in L}const zs={C:{cols:7,topCap:[".XXXX.","XXXXXX","XX..XX"],body:"XX....",bottomCap:["XX..XX","XXXXXX",".XXXX."]},O:{cols:7,topCap:[".XXXX.","XXXXXX"],body:"XX..XX",bottomCap:["XXXXXX",".XXXX."]},D:{cols:7,topCap:["XXXXX.","XXXXXX"],body:"XX..XX",bottomCap:["XXXXXX","XXXXX."]},E:{cols:7,topCap:[".XXXXX","XXXXXX"],body:"XX....",midBar:["XXXXX.","XXXXX."],bottomCap:["XXXXXX",".XXXXX"]},B:{cols:7,topCap:["XXXXX.","XXXXXX"],body:"XX..XX",midBar:["XXXXXX","XXXXXX"],bottomCap:["XXXXXX","XXXXX."]},U:{cols:7,topCap:["XX..XX"],body:"XX..XX",bottomCap:["XX..XX","XXXXXX",".XXXX."]},I:{cols:7,topCap:["XXXXXX","XXXXXX"],body:"..XX..",bottomCap:["XXXXXX","XXXXXX"]},L:{cols:7,topCap:["XX...."],body:"XX....",bottomCap:["XX....","XXXXXX","XXXXXX"]},T:{cols:7,topCap:["XXXXXX","XXXXXX"],body:"..XX..",bottomCap:["..XX.."]},N:{cols:7,topCap:["XX..XX"],body:"XX..XX",midBar:["XXX.XX","XXXXXX","XX.XXX"],bottomCap:["XX..XX"]},K:{cols:7,generate(L){const C=[],D=Math.floor((L-1)/2);for(let z=0;z{const O=Math.abs(z-C);return O<.6?"..XX..":O<1.6?".XXXX.":"XX..XX"})}},Y:{cols:7,topCap:["XX..XX","XX..XX","XX..XX"],upperBody:"XX..XX",midBar:["XXXXXX",".XXXXX"],body:"....XX",bottomCap:["XX..XX","XXXXXX",".XXXX."]},Z:{cols:7,generate(L){const C=["XXXXXX","XXXXXX"],D=L-4;for(let z=0;z1?z/(D-1):0,V=Math.ceil(5-tt*4-.3),G=Math.floor(4-tt*4+.3);for(let H=G;H<=V;H++)O[H]="X";C.push(O.join(""))}return C.push("XXXXXX","XXXXXX"),C}},0:{cols:7,generate(L){const C=[".XXXX.","XXXXXX","XX..XX"],D=L-6;if(D===1)C.push("XXXXXX");else if(D===2)C.push("XX.XXX","XXX.XX");else if(D===3)C.push("XX.XXX","XXXXXX","XXX.XX");else{const z=["XX.XXX","XX.XXX","XXXXXX","XXX.XX"],O=Math.floor((D-4)/2);for(let tt=0;tt1?z/(D-1):0,V=Math.round(4-tt*4);O[V]="X",V+1<6&&(O[V+1]="X"),C.push(O.join(""))}return C.push("XXXXXX","XXXXXX"),C}},3:{cols:7,topCap:[".XXXX.","XXXXXX","XX..XX"],midBar:["..XXX.","..XXX."],body:"....XX",bottomCap:["XX..XX","XXXXXX",".XXXX."]},4:{cols:7,topCap:["XX..XX","XX..XX"],upperBody:"XX..XX",midBar:["XXXXXX",".XXXXX"],body:"....XX",bottomCap:[]},5:{cols:7,topCap:["XXXXXX","XXXXXX","XX...."],upperBody:"XX....",midBar:["XXXXX.",".XXXXX"],body:"....XX",bottomCap:["XX..XX","XXXXXX",".XXXX."]},6:{cols:7,topCap:[".XXXX.","XXXXXX","XX..XX"],upperBody:"XX....",midBar:["XXXXX.","XXXXXX"],body:"XX..XX",bottomCap:["XXXXXX",".XXXX."]},7:{cols:7,generate(L){const C=["XXXXXX","XXXXXX"],D=L-2;for(let z=0;z1?z/(D-1):0,V=Math.floor(4.5-tt*4.5);O[V]="X",O[V+1]="X",C.push(O.join(""))}return C}},8:{cols:7,topCap:[".XXXX.","XXXXXX"],body:"XX..XX",midBar:[".XXXX.","XXXXXX"],bottomCap:["XXXXXX",".XXXX."]},9:{cols:7,topCap:[".XXXX.","XXXXXX","XX..XX"],upperBody:"XX..XX",midBar:["XXXXXX",".XXXXX"],body:"....XX",bottomCap:["XX..XX","XXXXXX",".XXXX."]},コ:{cols:11,topCap:["XXXXXXXXX.","XXXXXXXXX."],body:".......XX.",bottomCap:["XXXXXXXXX.","XXXXXXXXX."]},ー:{cols:11,topCap:[],body:"..........",midBar:["XXXXXXXXX.","XXXXXXXXX."],bottomCap:[]},ト:{cols:11,topCap:["XX........"],body:"XX........",upperBody:"XX........",midBar:["XXXXX.....","XX..XXX...","XX....XX.."],bottomCap:["XX........"]},ド:{cols:11,topCap:["XX....X.X.","XX.....X.."],body:"XX........",upperBody:"XX........",midBar:["XXXXX.....","XX..XXX...","XX....XX.."],bottomCap:["XX........"]},テ:{cols:11,topCap:["XXXXXXXXX.","XXXXXXXXX.","..XXXXXX.."],body:"....XX....",bottomCap:["....XX...."]},ィ:{cols:11,topCap:["....XX....","....XXX..."],body:".....XX...",bottomCap:[".....XX..."]},ン:{cols:11,generate(L){const C=[];C.push(".XX......."),C.push("..XX......");const D=L-2;for(let z=0;z1?z/(D-1):0,V=Math.round(8-tt*6);O[Math.min(9,V)]="X",O[Math.max(0,V-1)]="X",C.push(O.join(""))}return C}},カ:{cols:11,topCap:[".XXXXXXXX.",".XXXXXXXX.","....XX..XX"],body:"....XX..XX",bottomCap:["...XX...XX","..XX......"]},ビ:{cols:11,topCap:["XX....X.X.","XX.....X..","XXXXXXXX.."],body:"......XX..",bottomCap:["......XX.."]},ル:{cols:11,topCap:["..XX..XX.."],body:"..XX..XX..",bottomCap:["..XX...XX.",".XX.....XX"]},イ:{cols:11,generate(L){const C=[],D=Math.max(2,Math.ceil(L*.35));for(let z=0;z1?z/(D-1):0,V=Math.round(5-tt*4);O[V]="X",V+1<6&&(O[V+1]="X"),C.push(O.join(""))}for(let z=D;z1?O/(D-1):1,G=Math.round(V*7);tt[Math.min(9,G)]="X",tt[Math.min(9,G+1)]="X",O0&&(tt[G-1]="X"),C.push(tt.join(""))}return C}}};function cr(L){var C;return((C=zs[L])==null?void 0:C.cols)??7}const Ir=new Map;function wi(L,C){const D=`${L}:${C}`,z=Ir.get(D);if(z)return z;const O=zs[L];if(!O)return[];let tt;if(fr(O))tt=O.generate(C);else{if(tt=[...O.topCap],O.midBar){const U=Array.isArray(O.midBar)?O.midBar:[O.midBar],R=O.topCap.length+O.bottomCap.length+U.length,vt=Math.max(0,C-R),ht=Math.floor(vt/2),q=Math.ceil(vt/2),K=O.upperBody||O.body;for(let lt=0;lt({oldR:lt,newR:lt})),newOnly:Array.from({length:Math.max(0,D-C)},(K,lt)=>q+lt),oldOnly:Array.from({length:Math.max(0,C-D)},(K,lt)=>q+lt)}}const O=z.generate(C),tt=z.generate(D),V=O.length,G=tt.length,H=[],et=[],U=[],R=Math.min(V,G),vt=Math.ceil(R/2),ht=R-vt;for(let q=0;q0){const q=Math.floor(et/2),K=Math.ceil(et/2),lt=Math.floor(U/2),ct=Math.ceil(U/2),Bt=Math.min(q,lt);for(let N=0;Net-U))O.push({startCol:H,letters:z.get(H)});const tt=[];for(let H=0;H{const et=new Int8Array(V).fill(-1);for(const{wi:U,li:R}of H.letters)et[U]=R;return et});return{columnGroups:O,letterToColGroup:tt,groupWordLetter:G}}const pr=["THINK","PAIR","BUILD","ITERATE"],Oe=1,Rr=[7,0,14,0],un=49,dn=7;pr.length;const mn=768,vn=Fr(pr,Rr),gn={words:pr,wordOffsetCols:Rr,compositionCols:un,numColGroups:dn,...vn},yn=`
/* ── CWC LetterGrid Embed ─────────────────────────────── */
.cwc-lg-hero {
flex: 1;
min-width: 0;
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
padding-top: 2rem;
padding-bottom: 2rem;
padding-right: 0.25rem;
overflow: hidden;
touch-action: pan-y;
}
@media (min-width: 768px) {
.cwc-lg-hero {
padding-top: clamp(2rem, 4vh, 4rem);
padding-bottom: clamp(2rem, 4vh, 4rem);
padding-right: 0;
}
}
.cwc-lg-canvas {
flex-shrink: 0;
opacity: 0;
position: relative;
z-index: 1;
}
/* ── LCP poster ── */
.cwc-lg-poster {
position: absolute;
inset: 0;
background-color: var(--page-bg, #faf9f5);
pointer-events: none;
z-index: 0;
}
.cwc-lg-canvas[style] ~ .cwc-lg-poster {
visibility: hidden;
}
/* ── Breakout HUD — scoreboard ── */
.cwc-lg-breakout-hud {
position: absolute;
top: 8px;
left: 8px;
z-index: 10;
pointer-events: none;
animation: cwcLgHudFadeIn 200ms ease-out;
}
@media (min-width: 768px) {
.cwc-lg-breakout-hud {
top: 3rem;
left: auto;
right: 3rem;
}
}
/* ── Close button ── */
.cwc-lg-hud-close-btn {
position: absolute;
top: 8px;
right: 8px;
z-index: 10;
width: 28px;
height: 28px;
border-radius: 50%;
border: 1px solid var(--border-primary, #b0aea5);
background: color-mix(in srgb, var(--page-bg, #faf9f5) 85%, white 15%);
color: var(--fg-secondary, #30302e);
font-size: 1rem;
line-height: 1;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
pointer-events: auto;
transition: opacity 150ms ease;
animation: cwcLgHudFadeIn 200ms ease-out;
}
@media (min-width: 768px) {
.cwc-lg-hud-close-btn { display: none; }
}
.cwc-lg-hud-close-btn:hover { opacity: 0.7; }
/* ── HUD panel ── */
.cwc-lg-hud-panel {
pointer-events: auto;
display: flex;
flex-direction: column;
width: 120px;
position: relative;
z-index: 8;
}
@media (min-width: 768px) {
.cwc-lg-hud-panel { width: 160px; }
}
.cwc-lg-hud-row {
background: color-mix(in srgb, var(--page-bg, #faf9f5) 85%, white 15%);
border: 1px solid var(--border-primary, #b0aea5);
padding: 4px 8px;
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: -1px;
min-height: 1.75rem;
}
@media (min-width: 768px) {
.cwc-lg-hud-row { padding: 8px 12px; min-height: 2.75rem; }
}
.cwc-lg-hud-label {
font-family: var(--font-family-sans, 'Anthropic Mono Variable', 'JetBrains Mono', monospace);
font-size: 0.5625rem;
line-height: 0.75rem;
color: var(--fg-tertiary, #5e5d59);
text-transform: uppercase;
letter-spacing: 0.5px;
font-variation-settings: 'opsz' 16;
font-feature-settings: 'lnum', 'tnum';
}
@media (min-width: 768px) {
.cwc-lg-hud-label { font-size: 0.6875rem; line-height: 0.875rem; }
}
.cwc-lg-hud-value {
font-family: var(--font-family-sans, 'Anthropic Mono Variable', 'JetBrains Mono', monospace);
font-size: 0.6875rem;
line-height: 0.875rem;
color: var(--fg-primary, #141413);
font-variation-settings: 'opsz' 16;
font-feature-settings: 'lnum', 'tnum';
}
@media (min-width: 768px) {
.cwc-lg-hud-value { font-size: 0.9375rem; line-height: 1.25rem; }
}
.cwc-lg-hud-lives { display: flex; gap: 4px; align-items: center; }
.cwc-lg-hud-life-dot {
width: 7px;
height: 7px;
background: var(--accent-clay, #c96442);
mask-image: url('https://cdn.sanity.io/images/4zrzovbb/claude-com/b505899fba92ce63e8dfbfd89e29cf29cd099b21-116x116.svg');
mask-size: contain;
mask-repeat: no-repeat;
}
@media (min-width: 768px) {
.cwc-lg-hud-life-dot { width: 10px; height: 10px; }
}
/* ── Sound toggle ── */
.cwc-lg-hud-sound-toggle {
width: 100%;
cursor: pointer;
transition: opacity 150ms ease;
}
.cwc-lg-hud-sound-toggle:hover { opacity: 0.7; }
.cwc-lg-hud-switch {
position: relative;
display: inline-block;
width: 24px;
height: 14px;
border-radius: 7px;
background: var(--fg-tertiary, #5e5d59);
opacity: 0.4;
transition: background 150ms ease, opacity 150ms ease;
flex-shrink: 0;
}
.cwc-lg-hud-switch::after {
content: '';
position: absolute;
top: 2px;
left: 2px;
width: 10px;
height: 10px;
border-radius: 50%;
background: var(--page-bg, #faf9f5);
transition: transform 150ms ease;
}
.cwc-lg-hud-switch[data-on] {
background: var(--accent-clay, #c96442);
opacity: 1;
}
.cwc-lg-hud-switch[data-on]::after {
transform: translateX(10px);
}
@media (min-width: 768px) {
.cwc-lg-hud-switch { width: 30px; height: 16px; border-radius: 8px; }
.cwc-lg-hud-switch::after { top: 2px; left: 2px; width: 12px; height: 12px; }
.cwc-lg-hud-switch[data-on]::after { transform: translateX(14px); }
}
/* ── Game Over ── */
.cwc-lg-breakout-game-over {
position: absolute;
inset: 0;
z-index: 10;
pointer-events: none;
display: flex;
align-items: center;
justify-content: center;
animation: cwcLgHudFadeIn 200ms ease-out;
}
.cwc-lg-hud-title {
font-family: var(--font-family-sans, 'Anthropic Mono Variable', 'JetBrains Mono', monospace);
font-size: 0.6875rem;
line-height: 0.875rem;
color: var(--fg-primary, #141413);
font-variation-settings: 'opsz' 16;
width: 100%;
text-align: center;
}
@media (min-width: 768px) {
.cwc-lg-hud-title { font-size: 0.9375rem; line-height: 1.25rem; }
}
.cwc-lg-hud-play-again {
background: var(--fg-primary, #141413);
border: 1px solid var(--border-primary, #b0aea5);
padding: 4px 8px;
margin-bottom: -1px;
cursor: pointer;
font-family: var(--font-family-sans, 'Anthropic Mono Variable', 'JetBrains Mono', monospace);
font-size: 0.6875rem;
line-height: 0.875rem;
color: var(--bg-primary, #faf9f5);
width: 100%;
text-align: center;
font-variation-settings: 'opsz' 16;
transition: opacity 150ms ease;
}
@media (min-width: 768px) {
.cwc-lg-hud-play-again { padding: 8px 12px; font-size: 0.9375rem; line-height: 1.25rem; }
}
.cwc-lg-hud-play-again:hover {
background: color-mix(in srgb, var(--fg-primary, #141413) 85%, var(--page-bg, #faf9f5) 15%);
}
.cwc-lg-hud-exit-game {
background: color-mix(in srgb, var(--page-bg, #faf9f5) 85%, white 15%);
border: 1px solid var(--border-primary, #b0aea5);
padding: 4px 8px;
cursor: pointer;
font-family: var(--font-family-sans, 'Anthropic Mono Variable', 'JetBrains Mono', monospace);
font-size: 0.6875rem;
line-height: 0.875rem;
color: var(--fg-secondary, #30302e);
width: 100%;
text-align: center;
font-variation-settings: 'opsz' 16;
transition: opacity 150ms ease;
}
@media (min-width: 768px) {
.cwc-lg-hud-exit-game { padding: 8px 12px; font-size: 0.9375rem; line-height: 1.25rem; }
}
.cwc-lg-hud-exit-game:hover {
background: color-mix(in srgb, var(--page-bg, #faf9f5) 75%, white 25%);
}
/* ── Mobile touch targets ── */
@media (max-width: 767px) {
.cwc-lg-breakout-hud { top: 12px; left: 12px; }
.cwc-lg-hud-close-btn {
top: 12px; right: 12px;
width: 40px; height: 40px; min-height: 40px;
font-size: 1.375rem;
background: var(--page-bg, #faf9f5);
border: 1px solid var(--border-primary, #b0aea5);
}
.cwc-lg-breakout-game-over .cwc-lg-hud-panel { width: 200px; }
.cwc-lg-breakout-game-over .cwc-lg-hud-row { padding: 8px 12px; }
.cwc-lg-breakout-game-over .cwc-lg-hud-title { font-size: 0.875rem; line-height: 1.125rem; }
.cwc-lg-breakout-game-over .cwc-lg-hud-value { font-size: 0.875rem; line-height: 1.125rem; }
.cwc-lg-breakout-game-over .cwc-lg-hud-play-again,
.cwc-lg-breakout-game-over .cwc-lg-hud-exit-game {
min-height: 44px; padding: 12px 16px;
font-size: 0.875rem; line-height: 1.125rem;
}
.cwc-lg-breakout-game-over .cwc-lg-hud-exit-game {
background: var(--page-bg, #faf9f5);
}
}
/* ── Mobile fullscreen breakout ── */
@media (max-width: 767px) {
html[data-breakout="active"] {
overflow: hidden;
}
html[data-breakout="active"] .cwc-lg-hero {
position: fixed;
top: 80px;
left: 0;
right: 0;
bottom: 0;
z-index: 9999;
width: 100vw;
height: calc(100svh - 80px);
padding: 0;
background: var(--page-bg, #faf9f5);
}
}
/* ── Animations ── */
@keyframes cwcLgHudFadeIn {
from { opacity: 0; transform: translateY(-4px); }
to { opacity: 1; transform: translateY(0); }
}
/* ═══════════════════════════════════════════════
ClawdMascot
═══════════════════════════════════════════════ */
.cwc-lg-mascot-wrapper {
position: absolute;
bottom: -22px;
right: 32px;
z-index: 35;
pointer-events: auto;
cursor: pointer;
user-select: none;
-webkit-user-select: none;
-webkit-tap-highlight-color: transparent;
display: flex;
flex-direction: column;
align-items: center;
}
/* Entrance / exit */
.cwc-lg-mascot-entering {
animation: cwcLgClawdSlideUp 500ms cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.cwc-lg-mascot-exiting {
animation: cwcLgClawdSlideDown 300ms ease-in forwards;
pointer-events: none;
}
@keyframes cwcLgClawdSlideUp {
from { transform: translateY(100%); opacity: 0; }
to { transform: translateY(0); opacity: 1; }
}
@keyframes cwcLgClawdSlideDown {
from { transform: translateY(0); opacity: 1; }
to { transform: translateY(100%); opacity: 0; }
}
/* Bounce (idle) */
@keyframes cwcLgClawdBounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-6px); }
}
.cwc-lg-mascot-bouncing {
animation: cwcLgClawdBounce 2s ease-in-out infinite;
}
/* Label */
@keyframes cwcLgLabelPopIn {
from { opacity: 0; transform: scale(0.8) translateY(4px); }
to { opacity: 1; transform: scale(1) translateY(0); }
}
.cwc-lg-mascot-label {
font-family: var(--font-family-sans, 'Anthropic Sans Variable', system-ui, sans-serif);
font-size: 0.6875rem;
pointer-events: none;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.5px;
line-height: 1.3;
animation: cwcLgLabelPopIn 300ms cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
position: relative;
background: var(--fg-primary, #141413);
color: var(--page-bg, #faf9f5);
padding: 4px 8px;
border-radius: 6px;
margin-bottom: 8px;
}
/* Lottie container */
.cwc-lg-mascot-lottie {
display: block;
width: 100px;
aspect-ratio: 1200 / 1050;
}
.cwc-lg-mascot-lottie div,
.cwc-lg-mascot-lottie svg {
width: 100% !important;
height: 100% !important;
}
.cwc-lg-mascot-lottie svg {
shape-rendering: crispEdges;
display: block;
}
/* Hover scale (pointer devices only) */
@media (hover: hover) {
.cwc-lg-mascot-lottie {
transition: transform 150ms ease-out;
}
.cwc-lg-mascot-lottie:hover {
transform: scale(1.05);
}
.cwc-lg-mascot-bouncing:hover {
animation-play-state: paused;
}
}
/* Desktop backdrop removed — bg color mismatch in Webflow */
/* Mobile */
@media (max-width: 767px) {
.cwc-lg-mascot-wrapper {
bottom: -16px;
right: 0;
z-index: 10;
width: 100px;
}
.cwc-lg-mascot-lottie {
width: 56px;
}
.cwc-lg-mascot-label {
font-size: 0.5625rem;
max-width: 100px;
width: max-content;
}
}
/* ═══════════════════════════════════════════════
ClawdCheerleader
═══════════════════════════════════════════════ */
.cwc-lg-cheer-wrapper {
position: fixed;
bottom: env(safe-area-inset-bottom, 0px);
right: calc(32px + env(safe-area-inset-right, 0px));
z-index: 35;
pointer-events: none;
user-select: none;
-webkit-user-select: none;
-webkit-tap-highlight-color: transparent;
display: flex;
flex-direction: column;
align-items: center;
}
.cwc-lg-cheer-entering {
animation: cwcLgCheerSlideUp 500ms cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}
.cwc-lg-cheer-exiting {
animation: cwcLgCheerSlideDown 300ms ease-in forwards;
}
@keyframes cwcLgCheerSlideUp {
from { transform: translateY(100%); opacity: 0; }
to { transform: translateY(0); opacity: 1; }
}
@keyframes cwcLgCheerSlideDown {
from { transform: translateY(0); opacity: 1; }
to { transform: translateY(100%); opacity: 0; }
}
.cwc-lg-cheer-label {
font-family: var(--font-family-sans, 'Anthropic Sans Variable', system-ui, sans-serif);
font-size: 0.6875rem;
pointer-events: none;
margin-bottom: -24px;
position: relative;
z-index: 1;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.5px;
line-height: 1.3;
background: var(--fg-primary, #141413);
color: var(--page-bg, #faf9f5);
padding: 4px 8px;
border-radius: 6px;
}
.cwc-lg-cheer-lottie {
display: block;
width: 80px;
aspect-ratio: 1200 / 1400;
}
.cwc-lg-cheer-lottie div,
.cwc-lg-cheer-lottie svg {
width: 100% !important;
height: 100% !important;
}
.cwc-lg-cheer-lottie svg {
shape-rendering: crispEdges;
display: block;
}
/* Mobile: absolute within grid wrapper */
@media (max-width: 767px) {
.cwc-lg-cheer-wrapper {
position: absolute;
bottom: 0;
right: 12px;
z-index: 10;
}
.cwc-lg-cheer-lottie {
width: 56px;
}
.cwc-lg-cheer-label {
font-size: 0.5625rem;
max-width: 100px;
margin-bottom: 8px;
}
}
@media (prefers-reduced-motion: reduce) {
.cwc-lg-breakout-hud,
.cwc-lg-breakout-game-over { animation: none; }
.cwc-lg-hud-play-again,
.cwc-lg-hud-exit-game,
.cwc-lg-hud-sound-toggle,
.cwc-lg-hud-switch,
.cwc-lg-hud-switch::after { transition: none; }
/* Mascot */
.cwc-lg-mascot-entering { animation: none; opacity: 1; transform: translateY(0); }
.cwc-lg-mascot-exiting { animation: none; opacity: 0; }
.cwc-lg-mascot-bouncing { animation: none; }
.cwc-lg-mascot-label { animation: none; }
/* Cheerleader */
.cwc-lg-cheer-entering { animation: none; opacity: 1; transform: translateY(0); }
.cwc-lg-cheer-exiting { animation: none; opacity: 0; }
}
/* ── Confetti overlay ── */
.cwc-lg-confetti-overlay {
position: absolute;
inset: 0;
z-index: 5;
pointer-events: none;
}
`;let Br=!1;function _n(){if(Br)return;Br=!0;const L=document.createElement("style");L.textContent=yn,L.setAttribute("data-cwc-lettergrid",""),document.head.appendChild(L)}let Or=!1;function Xn(L){let C=0;for(const D of L)C+=cr(D);return C}function wn(L){const C=L.map(tt=>Xn(tt)),D=Math.max(...C),z=C.map(tt=>Math.floor((D-tt)/2)),O=Fr(L,z);return{words:L,wordOffsetCols:z,compositionCols:D,numColGroups:O.columnGroups.length,...O}}function bn(L,C={}){const D=C.words?wn(C.words.split(/\s+/).filter(Boolean)):C.config??gn,{svgConfig:z=Lr,className:O="",mouseTarget:tt}=C,V=D;_n();const G=typeof L=="string"?document.querySelector(L):L;if(!G)throw new Error(`CWCLetterGrid: target "${L}" not found`);const H=document.createElement("div");H.className=`cwc-lg-hero${O?` ${O}`:""}`,H.setAttribute("role","img"),H.setAttribute("aria-label","Interactive typographic grid");const et=document.createElement("canvas");et.className="cwc-lg-canvas",et.setAttribute("aria-hidden","true");const U=document.createElement("div");U.className="cwc-lg-poster",U.setAttribute("aria-hidden","true"),H.appendChild(et),H.appendChild(U),G.appendChild(H);let R=null,vt=!1;return Promise.resolve().then(()=>Dn).then(({createCanvasEngine:ht})=>{if(vt)return;const q=tt?typeof tt=="string"?document.querySelector(tt)??void 0:tt:void 0;R=ht({heroEl:H,canvas:et,config:V,svgConfig:z,skipEntrance:Or,disableGame:!0,mouseTarget:q}),R.onEntranceComplete=()=>{Or=!0,window.dispatchEvent(new CustomEvent("grid-entrance-complete"))},R.start()}),()=>{vt=!0,R==null||R.destroy(),H.remove()}}const B={...{SPRING_TENSION:.15,SPRING_FRICTION:.4,BLEND_SPRING_TENSION:.25,BLEND_SPRING_FRICTION:.45,BLEND_WARMUP_DURATION:1200,BLEND_WARMUP_TENSION:.06,HEIGHT_SPRING_TENSION:.15,HEIGHT_SPRING_FRICTION:.4,MIN_H:8,MAX_H:32,SIGMA_X:1.5,SIGMA_Y:.55,FOCUS_LERP:.3,IDLE_FOCUS_LERP:.12,IDLE_SMOOTHING_RATE:.09,HOVER_FALLOFF_RADIUS:.6,SHAKE_THRESHOLD:15,SHAKE_COUNT_TRIGGER:3,SHAKE_WINDOW:600,SHAKE_COOLDOWN:1500,SHAKE_WOBBLE_AMPLITUDE:2.5,SHAKE_WOBBLE_DECAY:.92,SHAKE_FOCUS_LERP:.25,SHAKE_WOBBLE_ANGULAR_VELOCITY:.3,IDLE_DELAY:0,IDLE_DEMO_PERIOD:8e3,IDLE_BLEND_FADE_IN:1500,WAVE_ENABLED:1,FISHEYE_TRANSITIONS:0,SPIN_STAGGER_PER_COL:15,SHADOW_INTERVAL_MIN:8e3,SHADOW_INTERVAL_MAX:15e3,WAVE_INITIAL_BODY_DELAY_MS:0,WAVE_INITIAL_SHADOW_DELAY_MS:500,WAVE_WORD_STAGGER_MS:0,WAVE_LETTER_STAGGER_MS:80,WAVE_LETTER_JITTER_MS:160,WAVE_CELL_JITTER_MS:300,WAVE_FPS:12,LOTTIE_FISHEYE_FPS:18,LOTTIE_EXIT_FPS:36,LOTTIE_EXIT_START_FRAME:3,LOTTIE_EXIT_HOLD_FRAMES:3,LOTTIE_MIN_INTERRUPT_FRAMES:4,TW_INITIAL_DELAY_MS:700,TW_TYPE_SPEED_MS:65,TW_ERASE_SPEED_MS:40,TW_PAUSE_MS:5e3,TW_PAUSE_ALT_MS:2e3,TW_GAP_MS:200,BK_MAX_LIVES:3,BK_COMBO_WINDOW_MS:2e3,BK_PADDLE_SHRINK_INTERVAL:30,BK_MIN_PADDLE_CELLS:5,BK_SHAKE_DURATION_MS:200,BK_SHAKE_INTENSITY:4,BK_EXTRA_BALL_SCORE:2e3,BK_MOBILE_BALL_SPEED_FACTOR:.4,BK_DESKTOP_BALL_SPEED_FACTOR:.55,BK_MOBILE_PADDLE_CELLS:10,BK_DESKTOP_PADDLE_CELLS:8,BK_MOBILE_RAMP_INTERVAL:25,BK_MOBILE_RAMP_FACTOR:1.03,BK_MOBILE_SHRINK_INTERVAL:40,BK_MOBILE_TOP_PADDING_PCT:.2,BK_MOBILE_PADDLE_BOTTOM_PCT:.26,BK_SOUND_ENABLED:1,BK_HAPTICS_ENABLED:1,BK_AUDIO_VOLUME:.3,BK_STAR_LOOP:0,BK_BLOB_ENABLED:1,BK_BLOB_INTERVAL_MIN:40,BK_BLOB_INTERVAL_MAX:100,BK_BLOB_CLUSTER_MIN:2,BK_BLOB_CLUSTER_MAX:5,BK_BLOB_STAGGER_PER_CELL_MS:40,BK_BLOB_STAGGER_JITTER_MS:20,BK_BLOB_FPS:12,BK_BLOB_MEMORY_DECAY_MS:4e3,ENTRANCE_WORD_STAGGER_MS:0,ENTRANCE_LETTER_STAGGER_MS:50,ENTRANCE_LETTER_JITTER_MS:100,ENTRANCE_CELL_JITTER_MS:200,PHANTOM_ENABLED:1,PHANTOM_COUNT:100,PHANTOM_SIGMA_X:.35,PHANTOM_SIGMA_Y:.35,PHANTOM_STAGGER_MS:800,PHANTOM_HOLD_MIN_MS:200,PHANTOM_HOLD_MAX_MS:600,PHANTOM_FPS:18,GYRO_FLAT_BETA:15,GYRO_FLAT_GAMMA:5,GYRO_FLAT_DURATION:1e3,RENDER_FPS:0,CSS_STAGGER_DURATION:500,CSS_STAGGER_TRANSLATE_Y:12,CSS_HUD_FADE_DURATION:200,CSS_CLAWD_SLIDE_UP_DURATION:500,CSS_CLAWD_SLIDE_DOWN_DURATION:300,CSS_CLAWD_BOUNCE_DURATION:2e3}};function Cn(L,C,D){const z=new Float64Array(C),O=new Int32Array(C),tt=new Float64Array(C),V=Array.from({length:L},()=>new Int32Array(C)),G=Array.from({length:L},()=>new Float64Array(C)),H=Array.from({length:L},()=>new Float64Array(C)),et=Array.from({length:L},()=>new Float64Array(C));function U(K,lt,ct,Bt,Tt){if(Bt<.001){for(let J=0;J1?B.SIGMA_X*(L-1)/4:D;for(let J=0;J.01&&(ct=!0)}else for(let Bt=0;Bt.01||Math.abs(et[Bt][Tt])>.01)&&(ct=!0)}return ct}function vt(K,lt){const ct=K;let Bt=0;for(let nt=0;ntN?.4:0;tt[nt]=Xt+J,Bt+=N}const Tt=lt-Bt;for(let nt=0;ntN&&O[Xt]{V==="idle"&&Te("idle-demo")},B.IDLE_DELAY))}function Te(M){if(V!==M){switch(V){case"loading":Bt=performance.now();break;case"mouse":K=0,lt=0,ct=0;break;case"wobble":gt=0,ct=0;break;case"idle-demo":ct=0;break}switch(M){case"idle":ht=0,xt();break;case"idle-demo":Tt=performance.now();break;case"mouse":nt&&clearTimeout(nt),V==="idle-demo"&&(vt=0,ct=0);break;case"gyro":nt&&clearTimeout(nt);break;case"wobble":gt=B.SHAKE_WOBBLE_AMPLITUDE,N=Math.random()*Math.PI*2,ht=1,nt&&clearTimeout(nt);break}V=M,Ue()}}function si(M,rt=1){if(V==="idle-demo"){const mt=M-Tt,Kt=mt/B.IDLE_DEMO_PERIOD*Math.PI*2;U=(Math.sin(Kt-Math.PI/2)+1)/2*(C-1),R=(Math.sin(Kt*2)+1)/2*(D-1);const It=Math.min(1,mt/B.IDLE_BLEND_FADE_IN);ht=It*It*It*It,q=!1}if(V==="gyro"&&(ht=1),V==="wobble"&&(N+=B.SHAKE_WOBBLE_ANGULAR_VELOCITY*rt,gt*=Math.pow(B.SHAKE_WOBBLE_DECAY,rt),U=O+Math.cos(N)*gt,R=tt+Math.sin(N)*gt,U=Math.max(0,Math.min(C-1,U)),R=Math.max(0,Math.min(D-1,R)),q=!1,gt<.01&&(U=O,R=tt,Te(G?"gyro":"idle"))),q)return!1;let pt=!0;if(re)H=U,et=R,vt=ht;else{if(V==="mouse"||V==="gyro"){const It=B.SPRING_TENSION*(U-H)-B.SPRING_FRICTION*K,yt=B.SPRING_TENSION*(R-et)-B.SPRING_FRICTION*lt;K+=It*rt,lt+=yt*rt,H+=K*rt,et+=lt*rt}else{const It=V==="wobble"?B.SHAKE_FOCUS_LERP:V==="idle-demo"?B.IDLE_FOCUS_LERP:B.FOCUS_LERP,yt=1-Math.pow(1-It,rt);H+=(U-H)*yt,et+=(R-et)*yt}let mt=B.BLEND_SPRING_TENSION;if(Bt>0){const It=M-Bt;if(Itmt?"horizontal":"vertical",ni==="horizontal"&&(V!=="mouse"&&(K=0,lt=0,Te("mouse")),ht=1,Ue())}ni!=="vertical"&&(M.preventDefault(),V!=="mouse"&&Te("mouse"),Ue(),zi(rt))}function Pt(){ni==="horizontal"&&Te(G?"gyro":"idle"),ni=null}function it(){if(re)return;ft=mt=>{if(V==="loading"||V==="mouse"||mt.gamma===null||mt.beta===null)return;if(G||(G=!0),Se=mt.gamma,jt=mt.beta,Math.abs(mt.beta)=B.GYRO_FLAT_DURATION){V==="gyro"&&Te("idle");return}}else ae=0;if(V==="wobble")return;V!=="gyro"&&Te("gyro"),Ue(),U=(Math.max(-45,Math.min(45,mt.gamma))+45)/90*(C-1),R=(Math.max(20,Math.min(70,mt.beta))-20)/50*(D-1)},Re=mt=>{var Ot;if(V==="loading")return;const Kt=mt.accelerationIncludingGravity;if(!Kt||Kt.x===null||Kt.y===null||Kt.z===null)return;const It=Kt.x,yt=Kt.y,_t=Kt.z;if(St){const oe=It-Xt,le=yt-J,Xe=_t-j;if(Math.sqrt(oe*oe+le*le+Xe*Xe)>=B.SHAKE_THRESHOLD){const $e=performance.now();for(st.push($e);st.length>0&&$e-st[0]>B.SHAKE_WINDOW;)st.shift();st.length>=B.SHAKE_COUNT_TRIGGER&&$e-W>B.SHAKE_COOLDOWN&&(W=$e,st.length=0,(Ot=L.onShake)==null||Ot.call(L),Te("wobble"))}}Xt=It,J=yt,j=_t,St=!0};const M=typeof DeviceOrientationEvent<"u",rt=typeof DeviceMotionEvent<"u",pt=()=>{M&&ft&&window.addEventListener("deviceorientation",ft),rt&&Re&&window.addEventListener("devicemotion",Re)};Ne=pt,pt(),window.addEventListener("gyro-permission-granted",se)}function se(){Ne&&Ne()}function Ei(M,rt,pt){Fe=M,Me=pt??M,ke=rt,typeof window<"u"&&window.matchMedia&&(me=window.matchMedia("(prefers-reduced-motion: reduce)"),re=me.matches,Nt=()=>{re=me.matches,re&&(V==="idle-demo"&&Te("idle"),H=U,et=R,vt=ht),Ue()},me.addEventListener("change",Nt)),De=Je,je=ri,Me.addEventListener("mousemove",De),Me.addEventListener("mouseleave",je),Ee=mi,Ae=ai,ze=Pt,Me.addEventListener("touchstart",Ee,{passive:!0}),Me.addEventListener("touchmove",Ae,{passive:!1}),Me.addEventListener("touchend",ze),Me.addEventListener("touchcancel",ze),it()}function bi(){const M=Me??Fe;M&&(De&&M.removeEventListener("mousemove",De),je&&M.removeEventListener("mouseleave",je),Ee&&M.removeEventListener("touchstart",Ee),Ae&&M.removeEventListener("touchmove",Ae),ze&&(M.removeEventListener("touchend",ze),M.removeEventListener("touchcancel",ze))),me&&Nt&&me.removeEventListener("change",Nt),ft&&window.removeEventListener("deviceorientation",ft),Re&&window.removeEventListener("devicemotion",Re),window.removeEventListener("gyro-permission-granted",se),nt&&clearTimeout(nt),Fe=null,ke=null,De=null,je=null,Ee=null,Ae=null,ze=null,ft=null,Re=null,Ne=null,me=null,Nt=null}const Ve={mode:V,focusX:0,focusY:0,blend:0,settled:!0,rawGamma:0,rawBeta:0,gyroAvailable:!1};return{get state(){return Ve.mode=V,Ve.focusX=H,Ve.focusY=et,Ve.blend=vt,Ve.settled=q,Ve.rawGamma=Se,Ve.rawBeta=jt,Ve.gyroAvailable=G,Ve},tick:si,transition:Te,ensureAnimating:Ue,attachListeners:Ei,detachListeners:bi,enableGyro:se,get prefersReducedMotion(){return re}}}function Dr(L,C){if(typeof OffscreenCanvas<"u")return new OffscreenCanvas(L,C);const D=document.createElement("canvas");return D.width=L,D.height=C,D}function Nr(L){const C=L.getContext("2d");if(!C)throw new Error("strip-baker: failed to get 2d context");return C}function ur(L){return new Promise((C,D)=>{const z=new Image;z.onload=()=>C(z),z.onerror=D,z.src=L})}async function dr(L,C,D,z){const O=Math.round(C*z),tt=Dr(O,O),V=Nr(tt);return V.fillStyle=D,V.fillRect(0,0,O,O),V.globalCompositeOperation="destination-in",V.drawImage(L,0,0,O,O),V.globalCompositeOperation="source-over",tt}function An(){let L=null,C=null,D=0,z=0,O=1,tt={body:0,shadow:1},V=!1;const G=new Map;async function H(R,vt,ht,q,K){if(q){const nt=await ur(fn),gt=await dr(nt,R,vt,K);return{body:gt,shadow:gt}}const[lt,ct]=await Promise.all([ur(Pr[ht.body]),ur(Pr[ht.shadow])]),[Bt,Tt]=await Promise.all([dr(lt,R,vt,K),dr(ct,R,vt,K)]);return{body:Bt,shadow:Tt}}function et(R,vt,ht){const q=wi(R,vt),K=vt+Oe,lt=Math.round(D*O),ct=z*O,Bt=Math.ceil(ht*lt+Math.max(0,ht-1)*ct),Tt=Math.ceil(K*lt+Math.max(0,K-1)*ct),nt=Dr(Bt,Tt),gt=Nr(nt);for(let N=0;N`${L.wi}:${L.li}:${L.r}:${L.c}`,qs=(L,C)=>`${L}:${C}`;function xn(L){return L&&L.__esModule&&Object.prototype.hasOwnProperty.call(L,"default")?L.default:L}var ks={exports:{}},Mn=ks.exports,Vr;function En(){return Vr||(Vr=1,(function(L,C){typeof document<"u"&&typeof navigator<"u"&&(function(D,z){L.exports=z()})(Mn,(function(){var D="http://www.w3.org/2000/svg",z="",O=!1,tt=-999999,V=function(e){O=!!e},G=function(){return O},H=function(e){z=e},et=function(){return z};function U(t){return document.createElement(t)}function R(t,e){var i,s=t.length,n;for(i=0;i1?i[1]=1:i[1]<=0&&(i[1]=0),Fe(i[0],i[1],i[2])}function De(t,e){var i=Me(t[0]*255,t[1]*255,t[2]*255);return i[2]+=e,i[2]>1?i[2]=1:i[2]<0&&(i[2]=0),Fe(i[0],i[1],i[2])}function je(t,e){var i=Me(t[0]*255,t[1]*255,t[2]*255);return i[0]+=e/360,i[0]>1?i[0]-=1:i[0]<0&&(i[0]+=1),Fe(i[0],i[1],i[2])}(function(){var t=[],e,i;for(e=0;e<256;e+=1)i=e.toString(16),t[e]=i.length===1?"0"+i:i;return function(s,n,r){return s<0&&(s=0),n<0&&(n=0),r<0&&(r=0),"#"+t[s]+t[n]+t[r]}})();var Ee=function(e){lt=!!e},Ae=function(){return lt},ze=function(e){ct=e},ft=function(){return ct},Re=function(e){J=e},Ne=function(){return J},Ue=function(e){Bt=e};function xt(t){return document.createElementNS(D,t)}function Te(t){"@babel/helpers - typeof";return Te=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Te(t)}var si=(function(){var t=1,e=[],i,s,n={onmessage:function(){},postMessage:function(w){i({data:w})}},r={postMessage:function(w){n.onmessage({data:w})}};function a(f){if(window.Worker&&window.Blob&&G()){var w=new Blob(["var _workerSelf = self; self.onmessage = ",f.toString()],{type:"text/javascript"}),b=URL.createObjectURL(w);return new Worker(b)}return i=f,n}function h(){s||(s=a(function(w){function b(){function T($,v){var S,l,c=$.length,I,E,Ct,Gt;for(l=0;l=0;v-=1)if($[v].ty==="sh")if($[v].ks.k.i)X($[v].ks.k);else for(c=$[v].ks.k.length,l=0;lS[0]?!0:S[0]>$[0]?!1:$[1]>S[1]?!0:S[1]>$[1]?!1:$[2]>S[2]?!0:S[2]>$[2]?!1:null}var P=(function(){var $=[4,4,14];function v(l){var c=l.t.d;l.t.d={k:[{s:c,t:0}]}}function S(l){var c,I=l.length;for(c=0;c=0;c-=1)if(l[c].ty==="sh")if(l[c].ks.k.i)l[c].ks.k.c=l[c].closed;else for(Ct=l[c].ks.k.length,E=0;E500)&&(this._imageLoaded(),clearInterval(p)),g+=1}).bind(this),50)}function r(_){var g=s(_,this.assetsPath,this.path),p=xt("image");Tt?this.testImageLoaded(p):p.addEventListener("load",this._imageLoaded,!1),p.addEventListener("error",(function(){d.img=t,this._imageLoaded()}).bind(this),!1),p.setAttributeNS("http://www.w3.org/1999/xlink","href",g),this._elementHelper.append?this._elementHelper.append(p):this._elementHelper.appendChild(p);var d={img:p,assetData:_};return d}function a(_){var g=s(_,this.assetsPath,this.path),p=U("img");p.crossOrigin="anonymous",p.addEventListener("load",this._imageLoaded,!1),p.addEventListener("error",(function(){d.img=t,this._imageLoaded()}).bind(this),!1),p.src=g;var d={img:p,assetData:_};return d}function h(_){var g={assetData:_},p=s(_,this.assetsPath,this.path);return si.loadData(p,(function(d){g.img=d,this._footageLoaded()}).bind(this),(function(){g.img={},this._footageLoaded()}).bind(this)),g}function o(_,g){this.imagesLoadedCb=g;var p,d=_.length;for(p=0;pthis.animationData.op&&(this.animationData.op=t.op,this.totalFrames=Math.floor(t.op-this.animationData.ip));var e=this.animationData.layers,i,s=e.length,n=t.layers,r,a=n.length;for(r=0;rthis.timeCompleted&&(this.currentFrame=this.timeCompleted),this.trigger("enterFrame"),this.renderFrame(),this.trigger("drawnFrame")},Pt.prototype.renderFrame=function(){if(!(this.isLoaded===!1||!this.renderer))try{this.expressionsPlugin&&this.expressionsPlugin.resetFrame(),this.renderer.renderFrame(this.currentFrame+this.firstFrame)}catch(t){this.triggerRenderFrameError(t)}},Pt.prototype.play=function(t){t&&this.name!==t||this.isPaused===!0&&(this.isPaused=!1,this.trigger("_play"),this.audioController.resume(),this._idle&&(this._idle=!1,this.trigger("_active")))},Pt.prototype.pause=function(t){t&&this.name!==t||this.isPaused===!1&&(this.isPaused=!0,this.trigger("_pause"),this._idle=!0,this.trigger("_idle"),this.audioController.pause())},Pt.prototype.togglePause=function(t){t&&this.name!==t||(this.isPaused===!0?this.play():this.pause())},Pt.prototype.stop=function(t){t&&this.name!==t||(this.pause(),this.playCount=0,this._completedLoop=!1,this.setCurrentRawFrameValue(0))},Pt.prototype.getMarkerData=function(t){for(var e,i=0;i=this.totalFrames-1&&this.frameModifier>0?!this.loop||this.playCount===this.loop?this.checkSegments(e>this.totalFrames?e%this.totalFrames:0)||(i=!0,e=this.totalFrames-1):e>=this.totalFrames?(this.playCount+=1,this.checkSegments(e%this.totalFrames)||(this.setCurrentRawFrameValue(e%this.totalFrames),this._completedLoop=!0,this.trigger("loopComplete"))):this.setCurrentRawFrameValue(e):e<0?this.checkSegments(e%this.totalFrames)||(this.loop&&!(this.playCount--<=0&&this.loop!==!0)?(this.setCurrentRawFrameValue(this.totalFrames+e%this.totalFrames),this._completedLoop?this.trigger("loopComplete"):this._completedLoop=!0):(i=!0,e=0)):this.setCurrentRawFrameValue(e),i&&(this.setCurrentRawFrameValue(e),this.pause(),this.trigger("complete"))}},Pt.prototype.adjustSegment=function(t,e){this.playCount=0,t[1]0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(-1)),this.totalFrames=t[0]-t[1],this.timeCompleted=this.totalFrames,this.firstFrame=t[1],this.setCurrentRawFrameValue(this.totalFrames-.001-e)):t[1]>t[0]&&(this.frameModifier<0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(1)),this.totalFrames=t[1]-t[0],this.timeCompleted=this.totalFrames,this.firstFrame=t[0],this.setCurrentRawFrameValue(.001+e)),this.trigger("segmentStart")},Pt.prototype.setSegment=function(t,e){var i=-1;this.isPaused&&(this.currentRawFrame+this.firstFramee&&(i=e-t)),this.firstFrame=t,this.totalFrames=e-t,this.timeCompleted=this.totalFrames,i!==-1&&this.goToAndStop(i,!0)},Pt.prototype.playSegments=function(t,e){if(e&&(this.segments.length=0),ai(t[0])==="object"){var i,s=t.length;for(i=0;i=0;S-=1)e[S].animation.destroy(v)}function k(v,S,l){var c=[].concat([].slice.call(document.getElementsByClassName("lottie")),[].slice.call(document.getElementsByClassName("bodymovin"))),I,E=c.length;for(I=0;I0?d=k:p=k;while(Math.abs(P)>r&&++Q=n?T(p,Rt,d,X):dt===0?Rt:y(p,P,P+o,d,X)}},t})(),Ei=(function(){function t(e){return e.concat(K(e.length))}return{double:t}})(),bi=(function(){return function(t,e,i){var s=0,n=t,r=K(n),a={newElement:h,release:o};function h(){var u;return s?(s-=1,u=r[s]):u=e(),u}function o(u){s===n&&(r=Ei.double(r),n*=2),i&&i(u),r[s]=u,s+=1}return a}})(),Ve=(function(){function t(){return{addedLength:0,percents:q("float32",Ne()),lengths:q("float32",Ne())}}return bi(8,t)})(),M=(function(){function t(){return{lengths:[],totalLength:0}}function e(i){var s,n=i.lengths.length;for(s=0;s-.001&&g<.001}function i(f,w,b,y,T,_,g,p,d){if(b===0&&_===0&&d===0)return e(f,w,y,T,g,p);var X=t.sqrt(t.pow(y-f,2)+t.pow(T-w,2)+t.pow(_-b,2)),x=t.sqrt(t.pow(g-f,2)+t.pow(p-w,2)+t.pow(d-b,2)),P=t.sqrt(t.pow(g-y,2)+t.pow(p-T,2)+t.pow(d-_,2)),k;return X>x?X>P?k=X-x-P:k=P-x-X:P>x?k=P-x-X:k=x-X-P,k>-1e-4&&k<1e-4}var s=(function(){return function(f,w,b,y){var T=Ne(),_,g,p,d,X,x=0,P,k=[],Q=[],zt=Ve.newElement();for(p=b.length,_=0;_g?-1:1,X=!0;X;)if(y[_]<=g&&y[_+1]>g?(p=(g-y[_])/(y[_+1]-y[_]),X=!1):_+=d,_<0||_>=T-1){if(_===T-1)return b[_];X=!1}return b[_]+(b[_+1]-b[_])*p}function u(f,w,b,y,T,_){var g=o(T,_),p=1-g,d=t.round((p*p*p*f[0]+(g*p*p+p*g*p+p*p*g)*b[0]+(g*g*p+p*g*g+g*p*g)*y[0]+g*g*g*w[0])*1e3)/1e3,X=t.round((p*p*p*f[1]+(g*p*p+p*g*p+p*p*g)*b[1]+(g*g*p+p*g*g+g*p*g)*y[1]+g*g*g*w[1])*1e3)/1e3;return[d,X]}var m=q("float32",8);function A(f,w,b,y,T,_,g){T<0?T=0:T>1&&(T=1);var p=o(T,g);_=_>1?1:_;var d=o(_,g),X,x=f.length,P=1-p,k=1-d,Q=P*P*P,zt=p*P*P*3,Rt=p*p*P*3,dt=p*p*p,Yt=P*P*k,Lt=p*P*k+P*p*k+P*P*d,$=p*p*k+P*p*d+p*P*d,v=p*p*d,S=P*k*k,l=p*k*k+P*d*k+P*k*d,c=p*d*k+P*d*d+p*k*d,I=p*d*d,E=k*k*k,Ct=d*k*k+k*d*k+k*k*d,Gt=d*d*k+k*d*d+d*k*d,qt=d*d*d;for(X=0;X=u.t-i){o.h&&(o=u),n=0;break}if(u.t-i>t){n=r;break}r=_||t=_?d.points.length-1:0;for(f=d.points[X].point.length,A=0;A=k&&x=_)s[0]=p[0],s[1]=p[1],s[2]=p[2];else if(t<=g)s[0]=o.s[0],s[1]=o.s[1],s[2]=o.s[2];else{var Lt=Ot(o.s),$=Ot(p),v=(t-g)/(_-g);_t(s,yt(Lt,$,v))}else for(r=0;r=_?w=1:t1e-6?(f=Math.acos(w),b=Math.sin(f),y=Math.sin((1-i)*f)/b,T=Math.sin(i*f)/b):(y=1-i,T=i),s[0]=y*n+T*o,s[1]=y*r+T*u,s[2]=y*a+T*m,s[3]=y*h+T*A,s}function _t(t,e){var i=e[0],s=e[1],n=e[2],r=e[3],a=Math.atan2(2*s*r-2*i*n,1-2*s*s-2*n*n),h=Math.asin(2*i*s+2*n*r),o=Math.atan2(2*i*r-2*s*n,1-2*i*i-2*n*n);t[0]=a/j,t[1]=h/j,t[2]=o/j}function Ot(t){var e=t[0]*j,i=t[1]*j,s=t[2]*j,n=Math.cos(e/2),r=Math.cos(i/2),a=Math.cos(s/2),h=Math.sin(e/2),o=Math.sin(i/2),u=Math.sin(s/2),m=n*r*a-h*o*u,A=h*o*a+n*r*u,f=h*r*a+n*o*u,w=n*o*a-h*r*u;return[A,f,w,m]}function oe(){var t=this.comp.renderedFrame-this.offsetTime,e=this.keyframes[0].t-this.offsetTime,i=this.keyframes[this.keyframes.length-1].t-this.offsetTime;if(!(t===this._caching.lastFrame||this._caching.lastFrame!==mt&&(this._caching.lastFrame>=i&&t>=i||this._caching.lastFrame=t&&(this._caching._lastKeyframeIndex=-1,this._caching.lastIndex=0);var s=this.interpolateValue(t,this._caching);this.pv=s}return this._caching.lastFrame=t,this.pv}function le(t){var e;if(this.propType==="unidimensional")e=t*this.mult,Kt(this.v-e)>1e-5&&(this.v=e,this._mdf=!0);else for(var i=0,s=this.v.length;i1e-5&&(this.v[i]=e,this._mdf=!0),i+=1}function Xe(){if(!(this.elem.globalData.frameId===this.frameId||!this.effectsSequence.length)){if(this.lock){this.setVValue(this.pv);return}this.lock=!0,this._mdf=this._isFirstFrame;var t,e=this.effectsSequence.length,i=this.kf?this.pv:this.data.k;for(t=0;t=this._maxLength&&this.doubleArrayLength(),i){case"v":r=this.v;break;case"i":r=this.i;break;case"o":r=this.o;break;default:r=[];break}(!r[s]||r[s]&&!n)&&(r[s]=vi.newElement()),r[s][0]=t,r[s][1]=e},He.prototype.setTripleAt=function(t,e,i,s,n,r,a,h){this.setXYAt(t,e,"v",a,h),this.setXYAt(i,s,"o",a,h),this.setXYAt(n,r,"i",a,h)},He.prototype.reverse=function(){var t=new He;t.setPathData(this.c,this._length);var e=this.v,i=this.o,s=this.i,n=0;this.c&&(t.setTripleAt(e[0][0],e[0][1],s[0][0],s[0][1],i[0][0],i[0][1],0,!1),n=1);var r=this._length-1,a=this._length,h;for(h=n;h=Lt[Lt.length-1].t-this.offsetTime)X=Lt[Lt.length-1].s?Lt[Lt.length-1].s[0]:Lt[Lt.length-2].e[0],P=!0;else{for(var $=d,v=Lt.length-1,S=!0,l,c,I;S&&(l=Lt[$],c=Lt[$+1],!(c.t-this.offsetTime>_));)$=c.t-this.offsetTime)dt=1;else if(_p&&_>p)||(this._caching.lastIndex=d<_?this._caching.lastIndex:0,this.interpolateShape(_,this.pv,this._caching)),this._caching.lastFrame=_,this.pv}function s(){this.paths=this.localShapeCollection}function n(_,g){if(_._length!==g._length||_.c!==g.c)return!1;var p,d=_._length;for(p=0;p0||l>-1e-6&&l<0?s(l*c)/c:l}function S(){var l=this.props,c=v(l[0]),I=v(l[1]),E=v(l[4]),Ct=v(l[5]),Gt=v(l[12]),qt=v(l[13]);return"matrix("+c+","+I+","+E+","+Ct+","+Gt+","+qt+")"}return function(){this.reset=n,this.rotate=r,this.rotateX=a,this.rotateY=h,this.rotateZ=o,this.skew=m,this.skewFromAxis=A,this.shear=u,this.scale=f,this.setTransform=w,this.translate=b,this.transform=y,this.multiply=T,this.applyToPoint=X,this.applyToX=x,this.applyToY=P,this.applyToZ=k,this.applyToPointArray=Yt,this.applyToTriplePoints=dt,this.applyToPointStringified=Lt,this.toCSS=$,this.to2dCSS=S,this.clone=p,this.cloneFromProps=d,this.equals=g,this.inversePoints=Rt,this.inversePoint=zt,this.getInverseMatrix=Q,this._t=this.transform,this.isIdentity=_,this._identity=!0,this._identityCalculated=!1,this.props=q("float32",16),this.reset()}})();function Qi(t){"@babel/helpers - typeof";return Qi=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Qi(t)}var Qt={};function ts(t){H(t)}function ds(){it.searchAnimations()}function es(t){Ee(t)}function is(t){Ue(t)}function ms(t){return it.loadAnimation(t)}function Ss(t){if(typeof t=="string")switch(t){case"high":Re(200);break;default:case"medium":Re(50);break;case"low":Re(10);break}else!isNaN(t)&&t>1&&Re(t)}function As(){return typeof navigator<"u"}function Js(t,e){t==="expressions"&&ze(e)}function $s(t){switch(t){case"propertyFactory":return at;case"shapePropertyFactory":return Pi;case"matrix":return he;default:return null}}Qt.play=it.play,Qt.pause=it.pause,Qt.setLocationHref=ts,Qt.togglePause=it.togglePause,Qt.setSpeed=it.setSpeed,Qt.setDirection=it.setDirection,Qt.stop=it.stop,Qt.searchAnimations=ds,Qt.registerAnimation=it.registerAnimation,Qt.loadAnimation=ms,Qt.setSubframeRendering=es,Qt.resize=it.resize,Qt.goToAndStop=it.goToAndStop,Qt.destroy=it.destroy,Qt.setQuality=Ss,Qt.inBrowser=As,Qt.installPlugin=Js,Qt.freeze=it.freeze,Qt.unfreeze=it.unfreeze,Qt.setVolume=it.setVolume,Qt.mute=it.mute,Qt.unmute=it.unmute,Qt.getRegisteredAnimations=it.getRegisteredAnimations,Qt.useWebWorker=V,Qt.setIDPrefix=is,Qt.__getFactory=$s,Qt.version="5.13.0";function Zs(){document.readyState==="complete"&&(clearInterval(er),ds())}function Is(t){for(var e=Fs.split("&"),i=0;i=1?r.push({s:t-1,e:e-1}):(r.push({s:t,e:1}),r.push({s:0,e:e-1}));var a=[],h,o=r.length,u;for(h=0;hs+i)){var m,A;u.s*n<=s?m=0:m=(u.s*n-s)/i,u.e*n>=s+i?A=1:A=(u.e*n-s)/i,a.push([m,A])}return a.length||a.push([0,0]),a},ei.prototype.releasePathsData=function(t){var e,i=t.length;for(e=0;e1?e=1+s:this.s.v<0?e=0+s:e=this.s.v+s,this.e.v>1?i=1+s:this.e.v<0?i=0+s:i=this.e.v+s,e>i){var n=e;e=i,i=n}e=Math.round(e*1e4)*1e-4,i=Math.round(i*1e4)*1e-4,this.sValue=e,this.eValue=i}else e=this.sValue,i=this.eValue;var r,a,h=this.shapes.length,o,u,m,A,f,w=0;if(i===e)for(a=0;a=0;a-=1)if(y=this.shapes[a],y.shape._mdf){for(T=y.localShapeCollection,T.releaseShapes(),this.m===2&&h>1?(d=this.calculateShapeEdges(e,i,y.totalShapeLength,p,w),p+=y.totalShapeLength):d=[[_,g]],u=d.length,o=0;o=1?b.push({s:y.totalShapeLength*(_-1),e:y.totalShapeLength*(g-1)}):(b.push({s:y.totalShapeLength*_,e:y.totalShapeLength}),b.push({s:0,e:y.totalShapeLength*(g-1)}));var X=this.addShapes(y,b[0]);if(b[0].s!==b[0].e){if(b.length>1){var x=y.shape.paths.shapes[y.shape.paths._length-1];if(x.c){var P=X.pop();this.addPaths(X,T),X=this.addShapes(y,b[1],P)}else this.addPaths(X,T),X=this.addShapes(y,b[1])}this.addPaths(X,T)}}y.shape.paths=T}}},ei.prototype.addPaths=function(t,e){var i,s=t.length;for(i=0;ie.e){i.c=!1;break}else e.s<=u&&e.e>=u+m.addedLength?(this.addSegment(n[r].v[h-1],n[r].o[h-1],n[r].i[h],n[r].v[h],i,A,T),T=!1):(w=pt.getNewSegment(n[r].v[h-1],n[r].v[h],n[r].o[h-1],n[r].i[h],(e.s-u)/m.addedLength,(e.e-u)/m.addedLength,f[h-1]),this.addSegmentFromArray(w,i,A,T),T=!1,i.c=!1),u+=m.addedLength,A+=1;if(n[r].c&&f.length){if(m=f[h-1],u<=e.e){var _=f[h-1].addedLength;e.s<=u&&e.e>=u+_?(this.addSegment(n[r].v[h-1],n[r].o[h-1],n[r].i[0],n[r].v[0],i,A,T),T=!1):(w=pt.getNewSegment(n[r].v[h-1],n[r].v[0],n[r].o[h-1],n[r].i[0],(e.s-u)/_,(e.e-u)/_,f[h-1]),this.addSegmentFromArray(w,i,A,T),T=!1,i.c=!1)}else i.c=!1;u+=m.addedLength,A+=1}if(i._length&&(i.setXYAt(i.v[y][0],i.v[y][1],"i",y),i.setXYAt(i.v[i._length-1][0],i.v[i._length-1][1],"o",i._length-1)),u>e.e)break;r=this.p.keyframes[this.p.keyframes.length-1].t?(m=this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length-1].t/u,0),A=this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length-1].t-.05)/u,0)):(m=this.p.pv,A=this.p.getValueAtTime((this.p._caching.lastFrame+this.p.offsetTime-.01)/u,this.p.offsetTime));else if(this.px&&this.px.keyframes&&this.py.keyframes&&this.px.getValueAtTime&&this.py.getValueAtTime){m=[],A=[];var f=this.px,w=this.py;f._caching.lastFrame+f.offsetTime<=f.keyframes[0].t?(m[0]=f.getValueAtTime((f.keyframes[0].t+.01)/u,0),m[1]=w.getValueAtTime((w.keyframes[0].t+.01)/u,0),A[0]=f.getValueAtTime(f.keyframes[0].t/u,0),A[1]=w.getValueAtTime(w.keyframes[0].t/u,0)):f._caching.lastFrame+f.offsetTime>=f.keyframes[f.keyframes.length-1].t?(m[0]=f.getValueAtTime(f.keyframes[f.keyframes.length-1].t/u,0),m[1]=w.getValueAtTime(w.keyframes[w.keyframes.length-1].t/u,0),A[0]=f.getValueAtTime((f.keyframes[f.keyframes.length-1].t-.01)/u,0),A[1]=w.getValueAtTime((w.keyframes[w.keyframes.length-1].t-.01)/u,0)):(m=[f.pv,w.pv],A[0]=f.getValueAtTime((f._caching.lastFrame+f.offsetTime-.01)/u,f.offsetTime),A[1]=w.getValueAtTime((w._caching.lastFrame+w.offsetTime-.01)/u,w.offsetTime))}else A=t,m=A;this.v.rotate(-Math.atan2(m[1]-A[1],m[0]-A[0]))}this.data.p&&this.data.p.s?this.data.p.z?this.v.translate(this.px.v,this.py.v,-this.pz.v):this.v.translate(this.px.v,this.py.v,0):this.v.translate(this.p.v[0],this.p.v[1],-this.p.v[2])}this.frameId=this.elem.globalData.frameId}}function s(){if(this.appliedTransformations=0,this.pre.reset(),!this.a.effectsSequence.length)this.pre.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations=1;else return;if(!this.s.effectsSequence.length)this.pre.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.appliedTransformations=2;else return;if(this.sk)if(!this.sk.effectsSequence.length&&!this.sa.effectsSequence.length)this.pre.skewFromAxis(-this.sk.v,this.sa.v),this.appliedTransformations=3;else return;this.r?this.r.effectsSequence.length||(this.pre.rotate(-this.r.v),this.appliedTransformations=4):!this.rz.effectsSequence.length&&!this.ry.effectsSequence.length&&!this.rx.effectsSequence.length&&!this.or.effectsSequence.length&&(this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.appliedTransformations=4)}function n(){}function r(o){this._addDynamicProperty(o),this.elem.addDynamicProperty(o),this._isDirty=!0}function a(o,u,m){if(this.elem=o,this.frameId=-1,this.propType="transform",this.data=u,this.v=new he,this.pre=new he,this.appliedTransformations=0,this.initDynamicPropertyContainer(m||o),u.p&&u.p.s?(this.px=at.getProp(o,u.p.x,0,0,this),this.py=at.getProp(o,u.p.y,0,0,this),u.p.z&&(this.pz=at.getProp(o,u.p.z,0,0,this))):this.p=at.getProp(o,u.p||{k:[0,0,0]},1,0,this),u.rx){if(this.rx=at.getProp(o,u.rx,0,j,this),this.ry=at.getProp(o,u.ry,0,j,this),this.rz=at.getProp(o,u.rz,0,j,this),u.or.k[0].ti){var A,f=u.or.k.length;for(A=0;A0;)i-=1,this._elements.unshift(e[i]);this.dynamicProperties.length?this.k=!0:this.getValue(!0)},Si.prototype.resetElements=function(t){var e,i=t.length;for(e=0;e0?Math.floor(f):Math.ceil(f),y=this.pMatrix.props,T=this.rMatrix.props,_=this.sMatrix.props;this.pMatrix.reset(),this.rMatrix.reset(),this.sMatrix.reset(),this.tMatrix.reset(),this.matrix.reset();var g=0;if(f>0){for(;gb;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!0),g-=1;w&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,-w,!0),g-=w)}s=this.data.m===1?0:this._currentCopies-1,n=this.data.m===1?1:-1,r=this._currentCopies;for(var p,d;r;){if(e=this.elemsData[s].it,i=e[e.length-1].transform.mProps.v.props,d=i.length,e[e.length-1].transform.mProps._mdf=!0,e[e.length-1].transform.op._mdf=!0,e[e.length-1].transform.op.v=this._currentCopies===1?this.so.v:this.so.v+(this.eo.v-this.so.v)*(s/(this._currentCopies-1)),g!==0){for((s!==0&&n===1||s!==this._currentCopies-1&&n===-1)&&this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),this.matrix.transform(T[0],T[1],T[2],T[3],T[4],T[5],T[6],T[7],T[8],T[9],T[10],T[11],T[12],T[13],T[14],T[15]),this.matrix.transform(_[0],_[1],_[2],_[3],_[4],_[5],_[6],_[7],_[8],_[9],_[10],_[11],_[12],_[13],_[14],_[15]),this.matrix.transform(y[0],y[1],y[2],y[3],y[4],y[5],y[6],y[7],y[8],y[9],y[10],y[11],y[12],y[13],y[14],y[15]),p=0;p0&&s<1?[e]:[]:[e-s,e+s].filter(function(n){return n>0&&n<1})},Y.prototype.split=function(t){if(t<=0)return[wt(this.points[0]),this];if(t>=1)return[this,wt(this.points[this.points.length-1])];var e=gi(this.points[0],this.points[1],t),i=gi(this.points[1],this.points[2],t),s=gi(this.points[2],this.points[3],t),n=gi(e,i,t),r=gi(i,s,t),a=gi(n,r,t);return[new Y(this.points[0],e,n,a,!0),new Y(a,r,s,this.points[3],!0)]};function ot(t,e){var i=t.points[0][e],s=t.points[t.points.length-1][e];if(i>s){var n=s;s=i,i=n}for(var r=F(3*t.a[e],2*t.b[e],t.c[e]),a=0;a0&&r[a]<1){var h=t.point(r[a])[e];hs&&(s=h)}return{min:i,max:s}}Y.prototype.bounds=function(){return{x:ot(this,0),y:ot(this,1)}},Y.prototype.boundingBox=function(){var t=this.bounds();return{left:t.x.min,right:t.x.max,top:t.y.min,bottom:t.y.max,width:t.x.max-t.x.min,height:t.y.max-t.y.min,cx:(t.x.max+t.x.min)/2,cy:(t.y.max+t.y.min)/2}};function ut(t,e,i){var s=t.boundingBox();return{cx:s.cx,cy:s.cy,width:s.width,height:s.height,bez:t,t:(e+i)/2,t1:e,t2:i}}function At(t){var e=t.bez.split(.5);return[ut(e[0],t.t1,t.t),ut(e[1],t.t,t.t2)]}function Vt(t,e){return Math.abs(t.cx-e.cx)*2=r||t.width<=s&&t.height<=s&&e.width<=s&&e.height<=s){n.push([t.t,e.t]);return}var a=At(t),h=At(e);Et(a[0],h[0],i+1,s,n,r),Et(a[0],h[1],i+1,s,n,r),Et(a[1],h[0],i+1,s,n,r),Et(a[1],h[1],i+1,s,n,r)}}Y.prototype.intersections=function(t,e,i){e===void 0&&(e=2),i===void 0&&(i=7);var s=[];return Et(ut(this,0,1),ut(t,0,1),0,e,s,i),s},Y.shapeSegment=function(t,e){var i=(e+1)%t.length();return new Y(t.v[e],t.o[e],t.i[i],t.v[i],!0)},Y.shapeSegmentInverted=function(t,e){var i=(e+1)%t.length();return new Y(t.v[i],t.i[i],t.o[e],t.v[e],!0)};function Dt(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function Mt(t,e,i,s){var n=[t[0],t[1],1],r=[e[0],e[1],1],a=[i[0],i[1],1],h=[s[0],s[1],1],o=Dt(Dt(n,r),Dt(a,h));return xs(o[2])?null:[o[0]/o[2],o[1]/o[2]]}function Ft(t,e,i){return[t[0]+Math.cos(e)*i,t[1]-Math.sin(e)*i]}function bt(t,e){return Math.hypot(t[0]-e[0],t[1]-e[1])}function Ht(t,e){return vs(t[0],e[0])&&vs(t[1],e[1])}function Wt(){}R([ti],Wt),Wt.prototype.initModifierProperties=function(t,e){this.getValue=this.processKeys,this.amplitude=at.getProp(t,e.s,0,null,this),this.frequency=at.getProp(t,e.r,0,null,this),this.pointsType=at.getProp(t,e.pt,0,null,this),this._isAnimated=this.amplitude.effectsSequence.length!==0||this.frequency.effectsSequence.length!==0||this.pointsType.effectsSequence.length!==0};function Jt(t,e,i,s,n,r,a){var h=i-Math.PI/2,o=i+Math.PI/2,u=e[0]+Math.cos(i)*s*n,m=e[1]-Math.sin(i)*s*n;t.setTripleAt(u,m,u+Math.cos(h)*r,m-Math.sin(h)*r,u+Math.cos(o)*a,m-Math.sin(o)*a,t.length())}function Ut(t,e){var i=[e[0]-t[0],e[1]-t[1]],s=-Math.PI*.5,n=[Math.cos(s)*i[0]-Math.sin(s)*i[1],Math.sin(s)*i[0]+Math.cos(s)*i[1]];return n}function $t(t,e){var i=e===0?t.length()-1:e-1,s=(e+1)%t.length(),n=t.v[i],r=t.v[s],a=Ut(n,r);return Math.atan2(0,1)-Math.atan2(a[1],a[0])}function ge(t,e,i,s,n,r,a){var h=$t(e,i),o=e.v[i%e._length],u=e.v[i===0?e._length-1:i-1],m=e.v[(i+1)%e._length],A=r===2?Math.sqrt(Math.pow(o[0]-u[0],2)+Math.pow(o[1]-u[1],2)):0,f=r===2?Math.sqrt(Math.pow(o[0]-m[0],2)+Math.pow(o[1]-m[1],2)):0;Jt(t,e.v[i%e._length],h,a,s,f/((n+1)*2),A/((n+1)*2))}function be(t,e,i,s,n,r){for(var a=0;a1&&e.length>1&&(n=ne(t[0],e[e.length-1]),n)?[[t[0].split(n[0])[0]],[e[e.length-1].split(n[1])[1]]]:[i,s]}function gs(t){for(var e,i=1;i1&&(e=ns(t[t.length-1],t[0]),t[t.length-1]=e[0],t[0]=e[1]),t}function Ai(t,e){var i=t.inflectionPoints(),s,n,r,a;if(i.length===0)return[Be(t,e)];if(i.length===1||vs(i[1],1))return r=t.split(i[0]),s=r[0],n=r[1],[Be(s,e),Be(n,e)];r=t.split(i[0]),s=r[0];var h=(i[1]-i[0])/(1-i[0]);return r=r[1].split(h),a=r[0],n=r[1],[Be(s,e),Be(a,e),Be(n,e)]}function Ce(){}R([ti],Ce),Ce.prototype.initModifierProperties=function(t,e){this.getValue=this.processKeys,this.amount=at.getProp(t,e.a,0,null,this),this.miterLimit=at.getProp(t,e.ml,0,null,this),this.lineJoin=e.lj,this._isAnimated=this.amount.effectsSequence.length!==0},Ce.prototype.processPath=function(t,e,i,s){var n=ve.newElement();n.c=t.c;var r=t.length();t.c||(r-=1);var a,h,o,u=[];for(a=0;a=0;a-=1)o=Y.shapeSegmentInverted(t,a),u.push(Ai(o,e));u=gs(u);var m=null,A=null;for(a=0;a0&&(Ct=!1),Ct){var fe=U("style");fe.setAttribute("f-forigin",l[c].fOrigin),fe.setAttribute("f-origin",l[c].origin),fe.setAttribute("f-family",l[c].fFamily),fe.type="text/css",fe.innerText="@font-face {font-family: "+l[c].fFamily+"; font-style: normal; src: url('"+l[c].fPath+"');}",S.appendChild(fe)}}else if(l[c].fOrigin==="g"||l[c].origin===1){for(Gt=document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'),qt=0;qt=55296&&l<=56319){var c=v.charCodeAt(1);c>=56320&&c<=57343&&(S=(l-55296)*1024+c-56320+65536)}return S}function x(v,S){var l=v.toString(16)+S.toString(16);return A.indexOf(l)!==-1}function P(v){return v===o}function k(v){return v===h}function Q(v){var S=X(v);return S>=u&&S<=m}function zt(v){return Q(v.substr(0,2))&&Q(v.substr(2,2))}function Rt(v){return i.indexOf(v)!==-1}function dt(v,S){var l=X(v.substr(S,2));if(l!==s)return!1;var c=0;for(S+=2;c<5;){if(l=X(v.substr(S,2)),la)return!1;c+=1,S+=2}return X(v.substr(S,2))===n}function Yt(){this.isLoaded=!0}var Lt=function(){this.fonts=[],this.chars=null,this.typekitLoaded=0,this.isLoaded=!1,this._warned=!1,this.initTime=Date.now(),this.setIsLoadedBinded=this.setIsLoaded.bind(this),this.checkLoadedFontsBinded=this.checkLoadedFonts.bind(this)};Lt.isModifier=x,Lt.isZeroWidthJoiner=P,Lt.isFlagEmoji=zt,Lt.isRegionalCode=Q,Lt.isCombinedCharacter=Rt,Lt.isRegionalFlag=dt,Lt.isVariationSelector=k,Lt.BLACK_FLAG_CODE_POINT=s;var $={addChars:_,addFonts:T,getCharData:g,getFontByName:d,measureText:p,checkLoadedFonts:b,setIsLoaded:Yt};return Lt.prototype=$,Lt})();function ii(t){this.animationData=t}ii.prototype.getProp=function(t){return this.animationData.slots&&this.animationData.slots[t.sid]?Object.assign(t,this.animationData.slots[t.sid].p):t};function Li(t){return new ii(t)}function ue(){}ue.prototype={initRenderable:function(){this.isInRange=!1,this.hidden=!1,this.isTransparent=!1,this.renderableComponents=[]},addRenderableComponent:function(e){this.renderableComponents.indexOf(e)===-1&&this.renderableComponents.push(e)},removeRenderableComponent:function(e){this.renderableComponents.indexOf(e)!==-1&&this.renderableComponents.splice(this.renderableComponents.indexOf(e),1)},prepareRenderableFrame:function(e){this.checkLayerLimits(e)},checkTransparency:function(){this.finalTransform.mProp.o.v<=0?!this.isTransparent&&this.globalData.renderConfig.hideOnTransparent&&(this.isTransparent=!0,this.hide()):this.isTransparent&&(this.isTransparent=!1,this.show())},checkLayerLimits:function(e){this.data.ip-this.data.st<=e&&this.data.op-this.data.st>e?this.isInRange!==!0&&(this.globalData._mdf=!0,this._mdf=!0,this.isInRange=!0,this.show()):this.isInRange!==!1&&(this.globalData._mdf=!0,this.isInRange=!1,this.hide())},renderRenderable:function(){var e,i=this.renderableComponents.length;for(e=0;e.1)&&this.audio.seek(this._currentTime/this.globalData.frameRate):(this.audio.play(),this.audio.seek(this._currentTime/this.globalData.frameRate),this._isPlaying=!0))},ci.prototype.show=function(){},ci.prototype.hide=function(){this.audio.pause(),this._isPlaying=!1},ci.prototype.pause=function(){this.audio.pause(),this._isPlaying=!1,this._canPlay=!1},ci.prototype.resume=function(){this._canPlay=!0},ci.prototype.setRate=function(t){this.audio.rate(t)},ci.prototype.volume=function(t){this._volumeMultiplier=t,this._previousVolume=t*this._volume,this.audio.volume(this._previousVolume)},ci.prototype.getBaseElement=function(){return null},ci.prototype.destroy=function(){},ci.prototype.sourceRectAtTime=function(){},ci.prototype.initExpressions=function(){};function Ze(){}Ze.prototype.checkLayers=function(t){var e,i=this.layers.length,s;for(this.completeLayers=!0,e=i-1;e>=0;e-=1)this.elements[e]||(s=this.layers[e],s.ip-s.st<=t-this.layers[e].st&&s.op-s.st>t-this.layers[e].st&&this.buildItem(e)),this.completeLayers=this.elements[e]?this.completeLayers:!1;this.checkPendingElements()},Ze.prototype.createItem=function(t){switch(t.ty){case 2:return this.createImage(t);case 0:return this.createComp(t);case 1:return this.createSolid(t);case 3:return this.createNull(t);case 4:return this.createShape(t);case 5:return this.createText(t);case 6:return this.createAudio(t);case 13:return this.createCamera(t);case 15:return this.createFootage(t);default:return this.createNull(t)}},Ze.prototype.createCamera=function(){throw new Error("You're using a 3d camera. Try the html renderer.")},Ze.prototype.createAudio=function(t){return new ci(t,this.globalData,this)},Ze.prototype.createFootage=function(t){return new as(t,this.globalData,this)},Ze.prototype.buildAllItems=function(){var t,e=this.layers.length;for(t=0;t0&&(this.maskElement.setAttribute("id",f),this.element.maskedElement.setAttribute(g,"url("+et()+"#"+f+")"),s.appendChild(this.maskElement)),this.viewData.length&&this.element.addRenderableComponent(this)}os.prototype.getMaskProperty=function(t){return this.viewData[t].prop},os.prototype.renderFrame=function(t){var e=this.element.finalTransform.mat,i,s=this.masksProperties.length;for(i=0;i1&&(s+=" C"+e.o[n-1][0]+","+e.o[n-1][1]+" "+e.i[0][0]+","+e.i[0][1]+" "+e.v[0][0]+","+e.v[0][1]),i.lastPath!==s){var a="";i.elem&&(e.c&&(a=t.inv?this.solidPath+s:s),i.elem.setAttribute("d",a)),i.lastPath=s}},os.prototype.destroy=function(){this.element=null,this.globalData=null,this.maskElement=null,this.data=null,this.masksProperties=null};var Ds=(function(){var t={};t.createFilter=e,t.createAlphaToLuminanceFilter=i;function e(s,n){var r=xt("filter");return r.setAttribute("id",s),n!==!0&&(r.setAttribute("filterUnits","objectBoundingBox"),r.setAttribute("x","0%"),r.setAttribute("y","0%"),r.setAttribute("width","100%"),r.setAttribute("height","100%")),r}function i(){var s=xt("feColorMatrix");return s.setAttribute("type","matrix"),s.setAttribute("color-interpolation-filters","sRGB"),s.setAttribute("values","0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1"),s}return t})(),sr=(function(){var t={maskType:!0,svgLumaHidden:!0,offscreenCanvas:typeof OffscreenCanvas<"u"};return(/MSIE 10/i.test(navigator.userAgent)||/MSIE 9/i.test(navigator.userAgent)||/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(t.maskType=!1),/firefox/i.test(navigator.userAgent)&&(t.svgLumaHidden=!1),t})(),yr={},Jr="filter_result_";function _r(t){var e,i="SourceGraphic",s=t.data.ef?t.data.ef.length:0,n=Nt(),r=Ds.createFilter(n,!0),a=0;this.filters=[];var h;for(e=0;e=0&&(s=this.shapeModifiers[e].processShapes(this._isFirstFrame),!s);e-=1);}},searchProcessedElement:function(e){for(var i=this.processedElements,s=0,n=i.length;s.01)return!1;i+=1}return!0},Es.prototype.checkCollapsable=function(){if(this.o.length/2!==this.c.length/4)return!1;if(this.data.k.k[0].s)for(var t=0,e=this.data.k.k.length;t0;)_=f.transformers[Q].mProps._mdf||_,k-=1,Q-=1;if(_)for(k=X-f.styles[p].lvl,Q=f.transformers.length-1;k>0;)P.multiply(f.transformers[Q].mProps.v),k-=1,Q-=1}else P=t;if(x=f.sh.paths,y=x._length,_){for(T="",b=0;b=1?Yt=.99:Yt<=-1&&(Yt=-.99);var Lt=Rt*Yt,$=Math.cos(dt+f.a.v)*Lt+T[0],v=Math.sin(dt+f.a.v)*Lt+T[1];b.setAttribute("fx",$),b.setAttribute("fy",v),y&&!f.g._collapsable&&(f.of.setAttribute("fx",$),f.of.setAttribute("fy",v))}}}function m(A,f,w){var b=f.style,y=f.d;y&&(y._mdf||w)&&y.dashStr&&(b.pElem.setAttribute("stroke-dasharray",y.dashStr),b.pElem.setAttribute("stroke-dashoffset",y.dashoffset[0])),f.c&&(f.c._mdf||w)&&b.pElem.setAttribute("stroke","rgb("+N(f.c.v[0])+","+N(f.c.v[1])+","+N(f.c.v[2])+")"),(f.o._mdf||w)&&b.pElem.setAttribute("stroke-opacity",f.o.v),(f.w._mdf||w)&&(b.pElem.setAttribute("stroke-width",f.w.v),b.msElem&&b.msElem.setAttribute("stroke-width",f.w.v))}return i})();function Ie(t,e,i){this.shapes=[],this.shapesData=t.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.initElement(t,e,i),this.prevViewData=[]}R([xi,Di,Ns,Xr,Ni,Mi,Ms],Ie),Ie.prototype.initSecondaryElement=function(){},Ie.prototype.identityMatrix=new he,Ie.prototype.buildExpressionInterface=function(){},Ie.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes()},Ie.prototype.filterUniqueShapes=function(){var t,e=this.shapes.length,i,s,n=this.stylesList.length,r,a=[],h=!1;for(s=0;s1&&h&&this.setShapesAsAnimated(a)}},Ie.prototype.setShapesAsAnimated=function(t){var e,i=t.length;for(e=0;e=0;o-=1){if(T=this.searchProcessedElement(t[o]),T?e[o]=i[T-1]:t[o]._render=a,t[o].ty==="fl"||t[o].ty==="st"||t[o].ty==="gf"||t[o].ty==="gs"||t[o].ty==="no")T?e[o].style.closed=t[o].hd:e[o]=this.createStyleElement(t[o],n),t[o]._render&&e[o].style.pElem.parentNode!==s&&s.appendChild(e[o].style.pElem),f.push(e[o].style);else if(t[o].ty==="gr"){if(!T)e[o]=this.createGroupElement(t[o]);else for(A=e[o].it.length,m=0;m1,this.kf&&this.addEffect(this.getKeyframeValue.bind(this)),this.kf},li.prototype.addEffect=function(t){this.effectsSequence.push(t),this.elem.addDynamicProperty(this)},li.prototype.getValue=function(t){if(!((this.elem.globalData.frameId===this.frameId||!this.effectsSequence.length)&&!t)){this.currentData.t=this.data.d.k[this.keysIndex].s.t;var e=this.currentData,i=this.keysIndex;if(this.lock){this.setCurrentData(this.currentData);return}this.lock=!0,this._mdf=!1;var s,n=this.effectsSequence.length,r=t||this.data.d.k[this.keysIndex].s;for(s=0;se);)i+=1;return this.keysIndex!==i&&(this.keysIndex=i),this.data.d.k[this.keysIndex].s},li.prototype.buildFinalText=function(t){for(var e=[],i=0,s=t.length,n,r,a=!1,h=!1,o="";i=55296&&n<=56319?qe.isRegionalFlag(t,i)?o=t.substr(i,14):(r=t.charCodeAt(i+1),r>=56320&&r<=57343&&(qe.isModifier(n,r)?(o=t.substr(i,2),a=!0):qe.isFlagEmoji(t.substr(i,4))?o=t.substr(i,4):o=t.substr(i,2))):n>56319?(r=t.charCodeAt(i+1),qe.isVariationSelector(n)&&(a=!0)):qe.isZeroWidthJoiner(n)&&(a=!0,h=!0),a?(e[e.length-1]+=o,a=!1):e.push(o),i+=o.length;return e},li.prototype.completeTextData=function(t){t.__complete=!0;var e=this.elem.globalData.fontManager,i=this.data,s=[],n,r,a,h=0,o,u=i.m.g,m=0,A=0,f=0,w=[],b=0,y=0,T,_,g=e.getFontByName(t.f),p,d=0,X=yi(g);t.fWeight=X.weight,t.fStyle=X.style,t.finalSize=t.s,t.finalText=this.buildFinalText(t.t),r=t.finalText.length,t.finalLineHeight=t.lh;var x=t.tr/1e3*t.finalSize,P;if(t.sz)for(var k=!0,Q=t.sz[0],zt=t.sz[1],Rt,dt;k;){dt=this.buildFinalText(t.t),Rt=0,b=0,r=dt.length,x=t.tr/1e3*t.finalSize;var Yt=-1;for(n=0;nQ&&dt[n]!==" "?(Yt===-1?r+=1:n=Yt,Rt+=t.finalLineHeight||t.finalSize*1.2,dt.splice(n,Yt===n?1:0,"\r"),Yt=-1,b=0):(b+=d,b+=x);Rt+=g.ascent*t.finalSize/100,this.canResize&&t.finalSize>this.minimumFontSize&&zt