hyperframes 0.7.5 → 0.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -50,7 +50,7 @@ var VERSION;
50
50
  var init_version = __esm({
51
51
  "src/version.ts"() {
52
52
  "use strict";
53
- VERSION = true ? "0.7.5" : "0.0.0-dev";
53
+ VERSION = true ? "0.7.6" : "0.0.0-dev";
54
54
  }
55
55
  });
56
56
 
@@ -22507,10 +22507,11 @@ function updateAnimationInScript(script, animationId, updates) {
22507
22507
  if (updates.duration !== void 0) {
22508
22508
  upsertProp(ms, call.varsArg, "duration", updates.duration);
22509
22509
  }
22510
- if (updates.ease !== void 0) {
22510
+ const easeValue = updates.easeEach ?? updates.ease;
22511
+ if (easeValue !== void 0) {
22511
22512
  const kfNode = keyframesObjectNode(call.varsArg);
22512
- if (kfNode) upsertProp(ms, kfNode, "easeEach", updates.ease);
22513
- else upsertProp(ms, call.varsArg, "ease", updates.ease);
22513
+ if (kfNode) upsertProp(ms, kfNode, "easeEach", easeValue);
22514
+ else upsertProp(ms, call.varsArg, "ease", easeValue);
22514
22515
  }
22515
22516
  if (updates.extras) {
22516
22517
  for (const [key2, value] of Object.entries(updates.extras)) {
@@ -23063,13 +23064,13 @@ function materializeKeyframesFromScript(script, animationId, keyframes, easeEach
23063
23064
  }
23064
23065
  return ms.toString();
23065
23066
  }
23066
- function addAnimationWithKeyframesToScript(script, targetSelector, position, duration, keyframes, ease) {
23067
+ function addAnimationWithKeyframesToScript(script, targetSelector, position, duration, keyframes, ease, easeEach) {
23067
23068
  const parsed = parseGsapScriptAcornForWrite(script);
23068
23069
  if (!parsed) return { script, id: "" };
23069
23070
  const insertionPoint = findInsertionPoint(parsed);
23070
23071
  if (insertionPoint === null) return { script, id: "" };
23071
23072
  const sorted = [...keyframes].sort((a, b2) => a.percentage - b2.percentage);
23072
- const kfObjCode = buildKeyframeObjectCode(sorted);
23073
+ const kfObjCode = buildKeyframeObjectCode(sorted, easeEach);
23073
23074
  const varParts = [`keyframes: ${kfObjCode}`, `duration: ${valueToCode(duration)}`];
23074
23075
  if (ease) varParts.push(`ease: ${JSON.stringify(ease)}`);
23075
23076
  const stmtCode = `${parsed.timelineVar}.to(${JSON.stringify(targetSelector)}, { ${varParts.join(", ")} }, ${valueToCode(position)});`;
@@ -25203,6 +25204,26 @@ function stripJsComments(source) {
25203
25204
  }
25204
25205
  return out;
25205
25206
  }
25207
+ function stripHtmlCommentsOnce(source) {
25208
+ let out = "";
25209
+ let i2 = 0;
25210
+ for (; ; ) {
25211
+ const start = source.indexOf("<!--", i2);
25212
+ if (start < 0) return out + source.slice(i2);
25213
+ const end = source.indexOf("-->", start + 4);
25214
+ if (end < 0) return out + source.slice(i2);
25215
+ out += source.slice(i2, start);
25216
+ i2 = end + 3;
25217
+ }
25218
+ }
25219
+ function stripHtmlComments(source) {
25220
+ let out = source;
25221
+ for (let prev = ""; prev !== out; ) {
25222
+ prev = out;
25223
+ out = stripHtmlCommentsOnce(out);
25224
+ }
25225
+ return out;
25226
+ }
25206
25227
  function extractScriptTextsAndSrcs(scripts) {
25207
25228
  const texts = scripts.filter((s2) => !/\bsrc\s*=/.test(s2.attrs)).map((s2) => s2.content);
25208
25229
  const srcs = scripts.map((s2) => readAttr(`<script ${s2.attrs}>`, "src") || "").filter(Boolean);
@@ -25236,7 +25257,7 @@ var init_utils2 = __esm({
25236
25257
  // ../core/src/lint/context.ts
25237
25258
  function buildLintContext(html, options = {}) {
25238
25259
  const rawSource = html || "";
25239
- let source = rawSource;
25260
+ let source = stripHtmlComments(rawSource);
25240
25261
  const templateMatch = source.match(/<template[^>]*>([\s\S]*)<\/template>/i);
25241
25262
  if (templateMatch?.[1]) source = templateMatch[1];
25242
25263
  const tags = extractOpenTags(source);
@@ -25540,13 +25561,13 @@ var init_core = __esm({
25540
25561
  ];
25541
25562
  for (const script of scripts) {
25542
25563
  const stripped = stripJsComments(script.content);
25543
- for (const { pattern, label: label2, hint } of patterns) {
25564
+ for (const { pattern, label: label2, hint: hint2 } of patterns) {
25544
25565
  if (pattern.test(stripped)) {
25545
25566
  findings.push({
25546
25567
  code: "non_deterministic_code",
25547
25568
  severity: "error",
25548
25569
  message: `Script contains \`${label2}\` which produces non-deterministic output. Renders may differ between frames or runs.`,
25549
- fixHint: hint,
25570
+ fixHint: hint2,
25550
25571
  snippet: truncateSnippet(script.content)
25551
25572
  });
25552
25573
  }
@@ -27103,6 +27124,17 @@ function isCompositionRootOrMount(rawTag) {
27103
27124
  readAttr(rawTag, "data-composition-id") || readAttr(rawTag, "data-composition-src")
27104
27125
  );
27105
27126
  }
27127
+ function extractCssUrlReferences(css) {
27128
+ const out = [];
27129
+ const noComments = css.replace(/\/\*[\s\S]*?\*\//g, "");
27130
+ const urlPattern = /\burl\(\s*(["']?)([^)"']+)\1\s*\)/g;
27131
+ let m2;
27132
+ while ((m2 = urlPattern.exec(noComments)) !== null) {
27133
+ const raw = (m2[2] ?? "").trim();
27134
+ if (raw) out.push(raw);
27135
+ }
27136
+ return out;
27137
+ }
27106
27138
  function extractCssSelectors(css) {
27107
27139
  const out = [];
27108
27140
  const noComments = css.replace(/\/\*[\s\S]*?\*\//g, "");
@@ -27142,20 +27174,56 @@ var init_composition = __esm({
27142
27174
  MAX_TIMED_ELEMENTS_PER_TRACK = 3;
27143
27175
  TRACK_DENSITY_EXEMPT_TAGS = /* @__PURE__ */ new Set(["audio", "script", "style", "video"]);
27144
27176
  compositionRules = [
27145
- // invalid_capture_path — catches ../capture/ in src/href attributes and scripts.
27146
- // Sub-compositions live in compositions/ but are served relative to the project
27147
- // root, so all asset paths must be root-relative ("capture/...").
27148
- // Using "../capture/..." works on disk but breaks in Studio and renders.
27149
- ({ rawSource, options }) => {
27177
+ // invalid_parent_traversal_in_asset_path — catches `../` traversal in src,
27178
+ // href, inline-style url(), and <style> url() asset references on
27179
+ // compositions. Sub-compositions live under compositions/ but are served
27180
+ // with the project root as their base URL, so any `../`-traversing path
27181
+ // climbs above the project root and 404s in Studio preview. Renders
27182
+ // tolerate it because the server-side bundler rewrites `../foo` against
27183
+ // each sub-composition's source path; the runtime now mirrors that fallback
27184
+ // (see rewriteSubCompositionAssetPaths in runtime/compositionLoader.ts), but
27185
+ // the authoring-time signal is still wrong — flag it at lint time so the
27186
+ // baked path is plain root-relative and matches what the bundler emits.
27187
+ //
27188
+ // Mirrors the runtime fallback's surface: `[src]` / `[href]` attribute
27189
+ // values, `[style]` inline url(), and `<style>` block url() references.
27190
+ // Skips absolute URLs (http(s)://, //, data:, /-prefixed root-relative),
27191
+ // hash anchors, and plain relative paths (`assets/x.mp4`) — only `../`
27192
+ // traversal is flagged. Subsumes the older `../capture/`-specific rule.
27193
+ // fallow-ignore-next-line complexity
27194
+ ({ tags, styles, rawSource, options }) => {
27150
27195
  if (isRegistrySourceFile(options.filePath) || isRegistryInstalledFile(rawSource)) return [];
27151
- const matches2 = rawSource.match(/\.\.\/capture\//g);
27152
- if (!matches2 || matches2.length === 0) return [];
27196
+ const offenders = [];
27197
+ const collect = (value) => {
27198
+ if (!value) return;
27199
+ const trimmed = value.trim();
27200
+ if (!trimmed.startsWith("../") && trimmed !== "..") return;
27201
+ offenders.push(trimmed);
27202
+ };
27203
+ for (const tag of tags) {
27204
+ collect(readAttr(tag.raw, "src"));
27205
+ collect(readAttr(tag.raw, "href"));
27206
+ const styleAttr = readJsonAttr(tag.raw, "style");
27207
+ if (styleAttr) {
27208
+ for (const url of extractCssUrlReferences(styleAttr)) collect(url);
27209
+ }
27210
+ }
27211
+ for (const style of styles) {
27212
+ for (const url of extractCssUrlReferences(style.content)) collect(url);
27213
+ }
27214
+ if (offenders.length === 0) return [];
27215
+ const prefixCounts = /* @__PURE__ */ new Map();
27216
+ for (const path2 of offenders) {
27217
+ const prefix = path2.match(/^(?:\.\.\/)+[^/]+\//)?.[0] ?? path2;
27218
+ prefixCounts.set(prefix, (prefixCounts.get(prefix) ?? 0) + 1);
27219
+ }
27220
+ const prefixSummary = Array.from(prefixCounts.entries()).sort(([, a], [, b2]) => b2 - a).map(([prefix, count]) => count > 1 ? `${prefix} (${count})` : prefix).join(", ");
27153
27221
  return [
27154
27222
  {
27155
- code: "invalid_capture_path",
27223
+ code: "invalid_parent_traversal_in_asset_path",
27156
27224
  severity: "error",
27157
- message: `Found ${matches2.length} asset path(s) using ../capture/ \u2014 will 404 in Studio and renders.`,
27158
- fixHint: 'Replace all "../capture/" with "capture/" throughout this file. Compositions are served with the project root as their base URL, so paths must be root-relative, not relative to the compositions/ directory.'
27225
+ message: `Found ${offenders.length} asset path(s) traversing above the project root with "../" (${prefixSummary}). Renders rewrite this against each sub-composition's source path, but Studio preview and other live consumers resolve against the project root and 404.`,
27226
+ fixHint: 'Use plain root-relative paths (e.g. "assets/...", "capture/...", "fonts/...") \u2014 compositions are served with the project root as their base URL, so paths must be root-relative, not relative to the compositions/ directory.'
27159
27227
  }
27160
27228
  ];
27161
27229
  },
@@ -28877,7 +28945,7 @@ var RUNTIME_IIFE;
28877
28945
  var init_runtime_inline = __esm({
28878
28946
  "../core/src/generated/runtime-inline.ts"() {
28879
28947
  "use strict";
28880
- RUNTIME_IIFE = '"use strict";(()=>{var ga=Object.create;var Hn=Object.defineProperty;var ya=Object.getOwnPropertyDescriptor;var ba=Object.getOwnPropertyNames;var Sa=Object.getPrototypeOf,Aa=Object.prototype.hasOwnProperty;var Ea=(t,e,n)=>e in t?Hn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ne=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var wa=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of ba(e))!Aa.call(t,r)&&r!==n&&Hn(t,r,{get:()=>e[r],enumerable:!(i=ya(e,r))||i.enumerable});return t};var Ca=(t,e,n)=>(n=t!=null?ga(Sa(t)):{},wa(e||!t||!t.__esModule?Hn(n,"default",{value:t,enumerable:!0}):n,t));var xe=(t,e,n)=>Ea(t,typeof e!="symbol"?e+"":e,n);var Dr=ne((Xf,Jn)=>{var Y=String,Rr=function(){return{isColorSupported:!1,reset:Y,bold:Y,dim:Y,italic:Y,underline:Y,inverse:Y,hidden:Y,strikethrough:Y,black:Y,red:Y,green:Y,yellow:Y,blue:Y,magenta:Y,cyan:Y,white:Y,gray:Y,bgBlack:Y,bgRed:Y,bgGreen:Y,bgYellow:Y,bgBlue:Y,bgMagenta:Y,bgCyan:Y,bgWhite:Y,blackBright:Y,redBright:Y,greenBright:Y,yellowBright:Y,blueBright:Y,magentaBright:Y,cyanBright:Y,whiteBright:Y,bgBlackBright:Y,bgRedBright:Y,bgGreenBright:Y,bgYellowBright:Y,bgBlueBright:Y,bgMagentaBright:Y,bgCyanBright:Y,bgWhiteBright:Y}};Jn.exports=Rr();Jn.exports.createColors=Rr});var Yn=ne(()=>{});var on=ne((em,Or)=>{"use strict";var Ir=Dr(),Pr=Yn(),_t=class t extends Error{constructor(e,n,i,r,o,s){super(e),this.name="CssSyntaxError",this.reason=e,o&&(this.file=o),r&&(this.source=r),s&&(this.plugin=s),typeof n<"u"&&typeof i<"u"&&(typeof n=="number"?(this.line=n,this.column=i):(this.line=n.line,this.column=n.column,this.endLine=i.line,this.endColumn=i.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,t)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let n=this.source;e==null&&(e=Ir.isColorSupported);let i=u=>u,r=u=>u,o=u=>u;if(e){let{bold:u,gray:m,red:f}=Ir.createColors(!0);r=x=>u(f(x)),i=x=>m(x),Pr&&(o=x=>Pr(x))}let s=n.split(/\\r?\\n/),l=Math.max(this.line-3,0),a=Math.min(this.line+2,s.length),c=String(a).length;return s.slice(l,a).map((u,m)=>{let f=l+1+m,x=" "+(" "+f).slice(-c)+" | ";if(f===this.line){if(u.length>160){let g=20,b=Math.max(0,this.column-g),F=Math.max(this.column+g,this.endColumn+g),_=u.slice(b,F),L=i(x.replace(/\\d/g," "))+u.slice(0,Math.min(this.column-1,g-1)).replace(/[^\\t]/g," ");return r(">")+i(x)+o(_)+`\n `+L+r("^")}let E=i(x.replace(/\\d/g," "))+u.slice(0,this.column-1).replace(/[^\\t]/g," ");return r(">")+i(x)+o(u)+`\n `+E+r("^")}return" "+i(x)+o(u)}).join(`\n`)}toString(){let e=this.showSourceCode();return e&&(e=`\n\n`+e+`\n`),this.name+": "+this.message+e}};Or.exports=_t;_t.default=_t});var Xn=ne((tm,Hr)=>{"use strict";var il=/(<)(\\/?style\\b)/gi,rl=/(<)(!--)/g;function qe(t){return typeof t!="string"||!t.includes("<")?t:t.replace(il,"\\\\3c $2").replace(rl,"\\\\3c $2")}var Br={after:`\n`,beforeClose:`\n`,beforeComment:`\n`,beforeDecl:`\n`,beforeOpen:" ",beforeRule:`\n`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function ol(t){return t[0].toUpperCase()+t.slice(1)}var Lt=class{constructor(e){this.builder=e}atrule(e,n){let i=e.raws,r="@"+e.name,o=e.params?this.rawValue(e,"params"):"";if(typeof i.afterName<"u"?r+=i.afterName:o&&(r+=" "),e.nodes)this.block(e,r+o);else{let s=(i.between||"")+(n?";":"");this.builder(qe(r+o+s),e)}}beforeAfter(e,n){let i;e.type==="decl"?i=this.raw(e,null,"beforeDecl"):e.type==="comment"?i=this.raw(e,null,"beforeComment"):n==="before"?i=this.raw(e,null,"beforeRule"):i=this.raw(e,null,"beforeClose");let r=e.parent,o=0;for(;r&&r.type!=="root";)o+=1,r=r.parent;if(i.includes(`\n`)){let s=this.raw(e,null,"indent");if(s.length)for(let l=0;l<o;l++)i+=s}return i}block(e,n){let i=this.raw(e,"between","beforeOpen");this.builder(qe(n+i)+"{",e,"start");let r;e.nodes&&e.nodes.length?(this.body(e),r=this.raw(e,"after")):r=this.raw(e,"after","emptyBody"),r&&this.builder(qe(r)),this.builder("}",e,"end")}body(e){let n=e.nodes,i=n.length-1;for(;i>0&&n[i].type==="comment";)i-=1;let r=this.raw(e,"semicolon"),o=e.type==="document";for(let s=0;s<n.length;s++){let l=n[s],a=this.raw(l,"before");a&&this.builder(o?a:qe(a)),this.stringify(l,i!==s||r)}}comment(e){let n=this.raw(e,"left","commentLeft"),i=this.raw(e,"right","commentRight");this.builder(qe("/*"+n+e.text+i+"*/"),e)}decl(e,n){let i=e.raws,r=this.raw(e,"between","colon"),o=e.prop+r+this.rawValue(e,"value");e.important&&(o+=i.important||" !important"),n&&(o+=";"),this.builder(qe(o),e)}document(e){this.body(e)}raw(e,n,i){let r;if(i||(i=n),n&&(r=e.raws[n],typeof r<"u"))return r;let o=e.parent;if(i==="before"&&(!o||o.type==="root"&&o.first===e||o&&o.type==="document"))return"";if(!o)return Br[i];let s=e.root(),l=s.rawCache||(s.rawCache={});if(typeof l[i]<"u")return l[i];if(i==="before"||i==="after")return this.beforeAfter(e,i);{let a="raw"+ol(i);this[a]?r=this[a](s,e):s.walk(c=>{if(r=c.raws[n],typeof r<"u")return!1})}return typeof r>"u"&&(r=Br[i]),l[i]=r,r}rawBeforeClose(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length>0&&typeof i.raws.after<"u")return n=i.raws.after,n.includes(`\n`)&&(n=n.replace(/[^\\n]+$/,"")),!1}),n&&(n=n.replace(/\\S/g,"")),n}rawBeforeComment(e,n){let i;return e.walkComments(r=>{if(typeof r.raws.before<"u")return i=r.raws.before,i.includes(`\n`)&&(i=i.replace(/[^\\n]+$/,"")),!1}),typeof i>"u"?i=this.raw(n,null,"beforeDecl"):i&&(i=i.replace(/\\S/g,"")),i}rawBeforeDecl(e,n){let i;return e.walkDecls(r=>{if(typeof r.raws.before<"u")return i=r.raws.before,i.includes(`\n`)&&(i=i.replace(/[^\\n]+$/,"")),!1}),typeof i>"u"?i=this.raw(n,null,"beforeRule"):i&&(i=i.replace(/\\S/g,"")),i}rawBeforeOpen(e){let n;return e.walk(i=>{if(i.type!=="decl"&&(n=i.raws.between,typeof n<"u"))return!1}),n}rawBeforeRule(e){let n;return e.walk(i=>{if(i.nodes&&(i.parent!==e||e.first!==i)&&typeof i.raws.before<"u")return n=i.raws.before,n.includes(`\n`)&&(n=n.replace(/[^\\n]+$/,"")),!1}),n&&(n=n.replace(/\\S/g,"")),n}rawColon(e){let n;return e.walkDecls(i=>{if(typeof i.raws.between<"u")return n=i.raws.between.replace(/[^\\s:]/g,""),!1}),n}rawEmptyBody(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length===0&&(n=i.raws.after,typeof n<"u"))return!1}),n}rawIndent(e){if(e.raws.indent)return e.raws.indent;let n;return e.walk(i=>{let r=i.parent;if(r&&r!==e&&r.parent&&r.parent===e&&typeof i.raws.before<"u"){let o=i.raws.before.split(`\n`);return n=o[o.length-1],n=n.replace(/\\S/g,""),!1}}),n}rawSemicolon(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length&&i.last.type==="decl"&&(n=i.raws.semicolon,typeof n<"u"))return!1}),n}rawValue(e,n){let i=e[n],r=e.raws[n];return r&&r.value===i?r.raw:i}root(e){if(this.body(e),e.raws.after){let n=e.raws.after,i=e.parent&&e.parent.type==="document";this.builder(i?n:qe(n))}}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(qe(e.raws.ownSemicolon),e,"end")}stringify(e,n){if(!this[e.type])throw new Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,n)}};Hr.exports=Lt;Lt.default=Lt});var vt=ne((nm,Wr)=>{"use strict";var sl=Xn();function Qn(t,e){new sl(e).stringify(t)}Wr.exports=Qn;Qn.default=Qn});var sn=ne((im,Zn)=>{"use strict";Zn.exports.isClean=Symbol("isClean");Zn.exports.my=Symbol("my")});var Dt=ne((rm,Gr)=>{"use strict";var al=on(),ll=Xn(),ul=vt(),{isClean:kt,my:cl}=sn();function ei(t,e){let n=new t.constructor;for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i)||i==="proxyCache")continue;let r=t[i],o=typeof r;i==="parent"&&o==="object"?e&&(n[i]=e):i==="source"?n[i]=r:Array.isArray(r)?n[i]=r.map(s=>ei(s,n)):(o==="object"&&r!==null&&(r=ei(r)),n[i]=r)}return n}function We(t,e){if(e&&typeof e.offset<"u")return e.offset;let n=1,i=1,r=0;for(let o=0;o<t.length;o++){if(i===e.line&&n===e.column){r=o;break}t[o]===`\n`?(n=1,i+=1):n+=1}return r}var Rt=class{get proxyOf(){return this}constructor(e={}){this.raws={},this[kt]=!1,this[cl]=!0;for(let n in e)if(n==="nodes"){this.nodes=[];for(let i of e[n])typeof i.clone=="function"?this.append(i.clone()):this.append(i)}else this[n]=e[n]}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\\n\\s{4}at /.test(e.stack)){let n=this.source;e.stack=e.stack.replace(/\\n\\s{4}at /,`$&${n.input.from}:${n.start.line}:${n.start.column}$&`)}return e}after(e){return this.parent.insertAfter(this,e),this}assign(e={}){for(let n in e)this[n]=e[n];return this}before(e){return this.parent.insertBefore(this,e),this}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}clone(e={}){let n=ei(this);for(let i in e)n[i]=e[i];return n}cloneAfter(e={}){let n=this.clone(e);return this.parent.insertAfter(this,n),n}cloneBefore(e={}){let n=this.clone(e);return this.parent.insertBefore(this,n),n}error(e,n={}){if(this.source){let{end:i,start:r}=this.rangeBy(n);return this.source.input.error(e,{column:r.column,line:r.line},{column:i.column,line:i.line},n)}return new al(e)}getProxyProcessor(){return{get(e,n){return n==="proxyOf"?e:n==="root"?()=>e.root().toProxy():e[n]},set(e,n,i){return e[n]===i||(e[n]=i,(n==="prop"||n==="value"||n==="name"||n==="params"||n==="important"||n==="text")&&e.markDirty()),!0}}}markClean(){this[kt]=!0}markDirty(){if(this[kt]){this[kt]=!1;let e=this;for(;e=e.parent;)e[kt]=!1}}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}positionBy(e={}){let n=this.source.start;if(e.index)n=this.positionInside(e.index);else if(e.word){let i="document"in this.source.input?this.source.input.document:this.source.input.css,o=i.slice(We(i,this.source.start),We(i,this.source.end)).indexOf(e.word);o!==-1&&(n=this.positionInside(o))}return n}positionInside(e){let n=this.source.start.column,i=this.source.start.line,r="document"in this.source.input?this.source.input.document:this.source.input.css,o=We(r,this.source.start),s=o+e;for(let l=o;l<s;l++)r[l]===`\n`?(n=1,i+=1):n+=1;return{column:n,line:i,offset:s}}prev(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e-1]}rangeBy(e={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,i={column:this.source.start.column,line:this.source.start.line,offset:We(n,this.source.start)},r=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:We(n,this.source.end)+1}:{column:i.column+1,line:i.line,offset:i.offset+1};if(e.word){let s=n.slice(We(n,this.source.start),We(n,this.source.end)).indexOf(e.word);s!==-1&&(i=this.positionInside(s),r=this.positionInside(s+e.word.length))}else e.start?i={column:e.start.column,line:e.start.line,offset:We(n,e.start)}:e.index&&(i=this.positionInside(e.index)),e.end?r={column:e.end.column,line:e.end.line,offset:We(n,e.end)}:typeof e.endIndex=="number"?r=this.positionInside(e.endIndex):e.index&&(r=this.positionInside(e.index+1));return(r.line<i.line||r.line===i.line&&r.column<=i.column)&&(r={column:i.column+1,line:i.line,offset:i.offset+1}),{end:r,start:i}}raw(e,n){return new ll().raw(this,e,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...e){if(this.parent){let n=this,i=!1;for(let r of e)r===this?i=!0:i?(this.parent.insertAfter(n,r),n=r):this.parent.insertBefore(n,r);i||this.remove()}return this}root(){let e=this;for(;e.parent&&e.parent.type!=="document";)e=e.parent;return e}toJSON(e,n){let i={},r=n==null;n=n||new Map;let o=0;for(let s in this){if(!Object.prototype.hasOwnProperty.call(this,s)||s==="parent"||s==="proxyCache")continue;let l=this[s];if(Array.isArray(l))i[s]=l.map(a=>typeof a=="object"&&a.toJSON?a.toJSON(null,n):a);else if(typeof l=="object"&&l.toJSON)i[s]=l.toJSON(null,n);else if(s==="source"){if(l==null)continue;let a=n.get(l.input);a==null&&(a=o,n.set(l.input,o),o++),i[s]={end:l.end,inputId:a,start:l.start}}else i[s]=l}return r&&(i.inputs=[...n.keys()].map(s=>s.toJSON())),i}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(e=ul){e.stringify&&(e=e.stringify);let n="";return e(this,i=>{n+=i}),n}warn(e,n,i={}){let r={node:this};for(let o in i)r[o]=i[o];return e.warn(n,r)}};Gr.exports=Rt;Rt.default=Rt});var Pt=ne((om,Ur)=>{"use strict";var dl=Dt(),It=class extends dl{constructor(e){super(e),this.type="comment"}};Ur.exports=It;It.default=It});var Bt=ne((sm,Vr)=>{"use strict";var fl=Dt(),Ot=class extends fl{get variable(){return this.prop.startsWith("--")||this.prop[0]==="$"}constructor(e){e&&typeof e.value<"u"&&typeof e.value!="string"&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}};Vr.exports=Ot;Ot.default=Ot});var $e=ne((am,Qr)=>{"use strict";var zr=Pt(),jr=Bt(),ml=Dt(),{isClean:qr,my:$r}=sn(),ti,Kr,Jr,ni;function Yr(t){return t.map(e=>(e.nodes&&(e.nodes=Yr(e.nodes)),delete e.source,e))}function Xr(t){if(t[qr]=!1,t.proxyOf.nodes)for(let e of t.proxyOf.nodes)Xr(e)}var De=class t extends ml{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...e){for(let n of e){let i=this.normalize(n,this.last);for(let r of i)this.proxyOf.nodes.push(r)}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let n of this.nodes)n.cleanRaws(e)}each(e){if(!this.proxyOf.nodes)return;let n=this.getIterator(),i,r;for(;this.indexes[n]<this.proxyOf.nodes.length&&(i=this.indexes[n],r=e(this.proxyOf.nodes[i],i),r!==!1);)this.indexes[n]+=1;return delete this.indexes[n],r}every(e){return this.nodes.every(e)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let e=this.lastEach;return this.indexes[e]=0,e}getProxyProcessor(){return{get(e,n){return n==="proxyOf"?e:e[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...i)=>e[n](...i.map(r=>typeof r=="function"?(o,s)=>r(o.toProxy(),s):r)):n==="every"||n==="some"?i=>e[n]((r,...o)=>i(r.toProxy(),...o)):n==="root"?()=>e.root().toProxy():n==="nodes"?e.nodes.map(i=>i.toProxy()):n==="first"||n==="last"?e[n].toProxy():e[n]:e[n]},set(e,n,i){return e[n]===i||(e[n]=i,(n==="name"||n==="params"||n==="selector")&&e.markDirty()),!0}}}index(e){return typeof e=="number"?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}insertAfter(e,n){let i=this.index(e),r=this.normalize(n,this.proxyOf.nodes[i]).reverse();i=this.index(e);for(let s of r)this.proxyOf.nodes.splice(i+1,0,s);let o;for(let s in this.indexes)o=this.indexes[s],i<o&&(this.indexes[s]=o+r.length);return this.markDirty(),this}insertBefore(e,n){let i=this.index(e),r=i===0?"prepend":!1,o=this.normalize(n,this.proxyOf.nodes[i],r).reverse();i=this.index(e);for(let l of o)this.proxyOf.nodes.splice(i,0,l);let s;for(let l in this.indexes)s=this.indexes[l],i<=s&&(this.indexes[l]=s+o.length);return this.markDirty(),this}normalize(e,n){if(typeof e=="string")e=Yr(Kr(e).nodes);else if(typeof e>"u")e=[];else if(Array.isArray(e)){e=e.slice(0);for(let r of e)r.parent&&r.parent.removeChild(r,"ignore")}else if(e.type==="root"&&this.type!=="document"){e=e.nodes.slice(0);for(let r of e)r.parent&&r.parent.removeChild(r,"ignore")}else if(e.type)e=[e];else if(e.prop){if(typeof e.value>"u")throw new Error("Value field is missed in node creation");typeof e.value!="string"&&(e.value=String(e.value)),e=[new jr(e)]}else if(e.selector||e.selectors)e=[new ni(e)];else if(e.name)e=[new ti(e)];else if(e.text)e=[new zr(e)];else throw new Error("Unknown node type in node creation");return e.map(r=>(r[$r]||t.rebuild(r),r=r.proxyOf,r.parent&&r.parent.removeChild(r),r[qr]&&Xr(r),r.raws||(r.raws={}),typeof r.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(r.raws.before=n.raws.before.replace(/\\S/g,"")),r.parent=this.proxyOf,r))}prepend(...e){e=e.reverse();for(let n of e){let i=this.normalize(n,this.first,"prepend").reverse();for(let r of i)this.proxyOf.nodes.unshift(r);for(let r in this.indexes)this.indexes[r]=this.indexes[r]+i.length}return this.markDirty(),this}push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(e){e=this.index(e),this.proxyOf.nodes[e].parent=void 0,this.proxyOf.nodes.splice(e,1);let n;for(let i in this.indexes)n=this.indexes[i],n>=e&&(this.indexes[i]=n-1);return this.markDirty(),this}replaceValues(e,n,i){return i||(i=n,n={}),this.walkDecls(r=>{n.props&&!n.props.includes(r.prop)||n.fast&&!r.value.includes(n.fast)||(r.value=r.value.replace(e,i))}),this.markDirty(),this}some(e){return this.nodes.some(e)}walk(e){return this.each((n,i)=>{let r;try{r=e(n,i)}catch(o){throw n.addToError(o)}return r!==!1&&n.walk&&(r=n.walk(e)),r})}walkAtRules(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="atrule"&&e.test(i.name))return n(i,r)}):this.walk((i,r)=>{if(i.type==="atrule"&&i.name===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="atrule")return n(i,r)}))}walkComments(e){return this.walk((n,i)=>{if(n.type==="comment")return e(n,i)})}walkDecls(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="decl"&&e.test(i.prop))return n(i,r)}):this.walk((i,r)=>{if(i.type==="decl"&&i.prop===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="decl")return n(i,r)}))}walkRules(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="rule"&&e.test(i.selector))return n(i,r)}):this.walk((i,r)=>{if(i.type==="rule"&&i.selector===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="rule")return n(i,r)}))}};De.registerParse=t=>{Kr=t};De.registerRule=t=>{ni=t};De.registerAtRule=t=>{ti=t};De.registerRoot=t=>{Jr=t};Qr.exports=De;De.default=De;De.rebuild=t=>{t.type==="atrule"?Object.setPrototypeOf(t,ti.prototype):t.type==="rule"?Object.setPrototypeOf(t,ni.prototype):t.type==="decl"?Object.setPrototypeOf(t,jr.prototype):t.type==="comment"?Object.setPrototypeOf(t,zr.prototype):t.type==="root"&&Object.setPrototypeOf(t,Jr.prototype),t[$r]=!0,t.nodes&&t.nodes.forEach(e=>{De.rebuild(e)})}});var an=ne((lm,eo)=>{"use strict";var Zr=$e(),ut=class extends Zr{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}};eo.exports=ut;ut.default=ut;Zr.registerAtRule(ut)});var ln=ne((um,io)=>{"use strict";var pl=$e(),to,no,it=class extends pl{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new to(new no,this,e).stringify()}};it.registerLazyResult=t=>{to=t};it.registerProcessor=t=>{no=t};io.exports=it;it.default=it});var oo=ne((cm,ro)=>{var hl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",xl=(t,e=21)=>(n=e)=>{let i="",r=n|0;for(;r--;)i+=t[Math.random()*t.length|0];return i},gl=(t=21)=>{let e="",n=t|0;for(;n--;)e+=hl[Math.random()*64|0];return e};ro.exports={nanoid:gl,customAlphabet:xl}});var un=ne(()=>{});var cn=ne(()=>{});var ii=ne(()=>{});var so=ne(()=>{});var oi=ne((bm,uo)=>{"use strict";var{existsSync:yl,readFileSync:bl}=so(),{dirname:ri,join:Sl}=un(),{SourceMapConsumer:ao,SourceMapGenerator:lo}=cn();function Al(t){return Buffer?Buffer.from(t,"base64").toString():window.atob(t)}var Ht=class{constructor(e,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let i=n.map?n.map.prev:void 0,r=this.loadMap(n.from,i);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=ri(this.mapFile)),r&&(this.text=r)}consumer(){return this.consumerCache||(this.consumerCache=new ao(this.json||this.text)),this.consumerCache}decodeInline(e){let n=/^data:application\\/json;charset=utf-?8;base64,/,i=/^data:application\\/json;base64,/,r=/^data:application\\/json;charset=utf-?8,/,o=/^data:application\\/json,/,s=e.match(r)||e.match(o);if(s)return decodeURIComponent(e.substr(s[0].length));let l=e.match(n)||e.match(i);if(l)return Al(e.substr(l[0].length));let a=e.slice(22);throw a=a.slice(0,a.indexOf(",")),new Error("Unsupported source map encoding "+a)}getAnnotationURL(e){return e.replace(/^\\/\\*\\s*# sourceMappingURL=/,"").trim()}isMap(e){return typeof e!="object"?!1:typeof e.mappings=="string"||typeof e._mappings=="string"||Array.isArray(e.sections)}loadAnnotation(e){let n=e.match(/\\/\\*\\s*# sourceMappingURL=/g);if(!n)return;let i=e.lastIndexOf(n.pop()),r=e.indexOf("*/",i);i>-1&&r>-1&&(this.annotation=this.getAnnotationURL(e.substring(i,r)))}loadFile(e,n,i){if(!(!i&&!this.unsafeMap&&!/\\.map$/i.test(e))&&(this.root=ri(e),yl(e)))return this.mapFile=e,bl(e,"utf-8").toString().trim()}loadMap(e,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let i=n(e);if(i){let r=this.loadFile(i,e,!0);if(!r)throw new Error("Unable to load previous source map: "+i.toString());return r}}else{if(n instanceof ao)return lo.fromSourceMap(n).toString();if(n instanceof lo)return n.toString();if(this.isMap(n))return JSON.stringify(n);throw new Error("Unsupported previous source map format: "+n.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let i=this.annotation;e&&(i=Sl(ri(e),i));let r=this.loadFile(i,e,!1);if(r)try{this.json=JSON.parse(r.replace(/^\\)]}\'[^\\n]*\\n/,""))}catch{return}return r}}}startWith(e,n){return e?e.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};uo.exports=Ht;Ht.default=Ht});var Wt=ne((Sm,ho)=>{"use strict";var{nanoid:El}=oo(),{isAbsolute:li,resolve:ui}=un(),{SourceMapConsumer:wl,SourceMapGenerator:Cl}=cn(),{fileURLToPath:co,pathToFileURL:dn}=ii(),fo=on(),Fl=oi(),si=Yn(),ai=Symbol("lineToIndexCache"),Ml=!!(wl&&Cl),mo=!!(ui&&li);function po(t){if(t[ai])return t[ai];let e=t.css.split(`\n`),n=new Array(e.length),i=0;for(let r=0,o=e.length;r<o;r++)n[r]=i,i+=e[r].length+1;return t[ai]=n,n}var ct=class{get from(){return this.file||this.id}constructor(e,n={}){if(e===null||typeof e>"u"||typeof e=="object"&&!e.toString)throw new Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),this.css[0]==="\\uFEFF"||this.css[0]==="\\uFFFE"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,this.document=this.css,n.document&&(this.document=n.document.toString()),n.from&&(!mo||/^\\w+:\\/\\//.test(n.from)||li(n.from)?this.file=n.from:this.file=ui(n.from)),mo&&Ml){let i=new Fl(this.css,n);if(i.text){this.map=i;let r=i.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id="<input css "+El(6)+">"),this.map&&(this.map.file=this.from)}error(e,n,i,r={}){let o,s,l,a,c;if(n&&typeof n=="object"){let m=n,f=i;if(typeof m.offset=="number"){a=m.offset;let x=this.fromOffset(a);n=x.line,i=x.col}else n=m.line,i=m.column,a=this.fromLineAndColumn(n,i);if(typeof f.offset=="number"){l=f.offset;let x=this.fromOffset(l);s=x.line,o=x.col}else s=f.line,o=f.column,l=this.fromLineAndColumn(f.line,f.column)}else if(i)a=this.fromLineAndColumn(n,i);else{a=n;let m=this.fromOffset(a);n=m.line,i=m.col}let u=this.origin(n,i,s,o);return u?c=new fo(e,u.endLine===void 0?u.line:{column:u.column,line:u.line},u.endLine===void 0?u.column:{column:u.endColumn,line:u.endLine},u.source,u.file,r.plugin):c=new fo(e,s===void 0?n:{column:i,line:n},s===void 0?i:{column:o,line:s},this.css,this.file,r.plugin),c.input={column:i,endColumn:o,endLine:s,endOffset:l,line:n,offset:a,source:this.css},this.file&&(dn&&(c.input.url=dn(this.file).toString()),c.input.file=this.file),c}fromLineAndColumn(e,n){return po(this)[e-1]+n-1}fromOffset(e){let n=po(this),i=n[n.length-1],r=0;if(e>=i)r=n.length-1;else{let o=n.length-2,s;for(;r<o;)if(s=r+(o-r>>1),e<n[s])o=s-1;else if(e>=n[s+1])r=s+1;else{r=s;break}}return{col:e-n[r]+1,line:r+1}}mapResolve(e){return/^\\w+:\\/\\//.test(e)?e:ui(this.map.consumer().sourceRoot||this.map.root||".",e)}origin(e,n,i,r){if(!this.map)return!1;let o=this.map.consumer(),s=o.originalPositionFor({column:n,line:e});if(!s.source)return!1;let l;typeof i=="number"&&(l=o.originalPositionFor({column:r,line:i}));let a;li(s.source)?a=dn(s.source):a=new URL(s.source,this.map.consumer().sourceRoot||dn(this.map.mapFile));let c={column:s.column,endColumn:l&&l.column,endLine:l&&l.line,line:s.line,url:a.toString()};if(a.protocol==="file:")if(co)c.file=co(a);else throw new Error("file: protocol is not available in this PostCSS build");let u=o.sourceContentFor(s.source);return u&&(c.source=u),c}toJSON(){let e={};for(let n of["hasBOM","css","file","id"])this[n]!=null&&(e[n]=this[n]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}};ho.exports=ct;ct.default=ct;si&&si.registerInput&&si.registerInput(ct)});var dt=ne((Am,bo)=>{"use strict";var xo=$e(),go,yo,Ke=class extends xo{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}normalize(e,n,i){let r=super.normalize(e);if(n){if(i==="prepend")this.nodes.length>1?n.raws.before=this.nodes[1].raws.before:delete n.raws.before;else if(this.first!==n)for(let o of r)o.raws.before=n.raws.before}return r}removeChild(e,n){let i=this.index(e);return!n&&i===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[i].raws.before),super.removeChild(e)}toResult(e={}){return new go(new yo,this,e).stringify()}};Ke.registerLazyResult=t=>{go=t};Ke.registerProcessor=t=>{yo=t};bo.exports=Ke;Ke.default=Ke;xo.registerRoot(Ke)});var ci=ne((Em,So)=>{"use strict";var Gt={comma(t){return Gt.split(t,[","],!0)},space(t){let e=[" ",`\n`," "];return Gt.split(t,e)},split(t,e,n){let i=[],r="",o=!1,s=0,l=!1,a="",c=!1;for(let u of t)c?c=!1:u==="\\\\"?c=!0:l?u===a&&(l=!1):u===\'"\'||u==="\'"?(l=!0,a=u):u==="("?s+=1:u===")"?s>0&&(s-=1):s===0&&e.includes(u)&&(o=!0),o?(r!==""&&i.push(r.trim()),r="",o=!1):r+=u;return(n||r!=="")&&i.push(r.trim()),i}};So.exports=Gt;Gt.default=Gt});var fn=ne((wm,Eo)=>{"use strict";var Ao=$e(),Nl=ci(),ft=class extends Ao{get selectors(){return Nl.comma(this.selector)}set selectors(e){let n=this.selector?this.selector.match(/,\\s*/):null,i=n?n[0]:","+this.raw("between","beforeOpen");this.selector=e.join(i)}constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}};Eo.exports=ft;ft.default=ft;Ao.registerRule(ft)});var Co=ne((Cm,wo)=>{"use strict";var Tl=an(),_l=Pt(),Ll=Bt(),vl=Wt(),kl=oi(),Rl=dt(),Dl=fn();function Ut(t,e){if(Array.isArray(t))return t.map(r=>Ut(r));let{inputs:n,...i}=t;if(n){e=[];for(let r of n){let o={...r,__proto__:vl.prototype};o.map&&(o.map={...o.map,__proto__:kl.prototype}),e.push(o)}}if(i.nodes&&(i.nodes=t.nodes.map(r=>Ut(r,e))),i.source){let{inputId:r,...o}=i.source;i.source=o,r!=null&&(i.source.input=e[r])}if(i.type==="root")return new Rl(i);if(i.type==="decl")return new Ll(i);if(i.type==="rule")return new Dl(i);if(i.type==="comment")return new _l(i);if(i.type==="atrule")return new Tl(i);throw new Error("Unknown node type: "+t.type)}wo.exports=Ut;Ut.default=Ut});var fi=ne((Fm,Lo)=>{"use strict";var{dirname:mn,relative:Mo,resolve:No,sep:To}=un(),{SourceMapConsumer:_o,SourceMapGenerator:pn}=cn(),{pathToFileURL:Fo}=ii(),Il=Wt(),Pl=!!(_o&&pn),Ol=!!(mn&&No&&Mo&&To),di=class{constructor(e,n,i,r){this.stringify=e,this.mapOpts=i.map||{},this.root=n,this.opts=i,this.css=r,this.originalCSS=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}addAnnotation(){let e;this.isInline()?e="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?e=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?e=this.mapOpts.annotation(this.opts.to,this.root):e=this.outputFile()+".map";let n=`\n`;this.css.includes(`\\r\n`)&&(n=`\\r\n`),this.css+=n+"/*# sourceMappingURL="+e+" */"}applyPrevMaps(){for(let e of this.previous()){let n=this.toUrl(this.path(e.file)),i=e.root||mn(e.file),r;this.mapOpts.sourcesContent===!1?(r=new _o(e.text),r.sourcesContent&&(r.sourcesContent=null)):r=e.consumer(),this.map.applySourceMap(r,n,this.toUrl(this.path(i)))}}clearAnnotation(){if(this.mapOpts.annotation!==!1){if(this.root){let e;for(let n=this.root.nodes.length-1;n>=0;n--)e=this.root.nodes[n],e.type==="comment"&&e.text.startsWith("# sourceMappingURL=")&&this.root.removeChild(n)}else if(this.css){let e;for(;(e=this.css.lastIndexOf("/*#"))!==-1;){let n=this.css.indexOf("*/",e+3);if(n===-1)break;for(;e>0&&this.css[e-1]===`\n`;)e--;this.css=this.css.slice(0,e)+this.css.slice(n+2)}}}}generate(){if(this.clearAnnotation(),Ol&&Pl&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,n=>{e+=n}),[e]}}generateMap(){if(this.root)this.generateString();else if(this.previous().length===1){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=pn.fromSourceMap(e,{ignoreInvalidMapping:!0})}else this.map=new pn({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}generateString(){this.css="",this.map=new pn({file:this.outputFile(),ignoreInvalidMapping:!0});let e=1,n=1,i="<no source>",r={generated:{column:0,line:0},original:{column:0,line:0},source:""},o,s;this.stringify(this.root,(l,a,c)=>{if(this.css+=l,a&&c!=="end"&&(r.generated.line=e,r.generated.column=n-1,a.source&&a.source.start?(r.source=this.sourcePath(a),r.original.line=a.source.start.line,r.original.column=a.source.start.column-1,this.map.addMapping(r)):(r.source=i,r.original.line=1,r.original.column=0,this.map.addMapping(r))),s=l.match(/\\n/g),s?(e+=s.length,o=l.lastIndexOf(`\n`),n=l.length-o):n+=l.length,a&&c!=="start"){let u=a.parent||{raws:{}};(!(a.type==="decl"||a.type==="atrule"&&!a.nodes)||a!==u.last||u.raws.semicolon)&&(a.source&&a.source.end?(r.source=this.sourcePath(a),r.original.line=a.source.end.line,r.original.column=a.source.end.column-1,r.generated.line=e,r.generated.column=n-2,this.map.addMapping(r)):(r.source=i,r.original.line=1,r.original.column=0,r.generated.line=e,r.generated.column=n-1,this.map.addMapping(r)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(e=>e.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let e=this.mapOpts.annotation;return typeof e<"u"&&e!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(e=>e.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(e){if(this.mapOpts.absolute||e.charCodeAt(0)===60||/^\\w+:\\/\\//.test(e))return e;let n=this.memoizedPaths.get(e);if(n)return n;let i=this.opts.to?mn(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(i=mn(No(i,this.mapOpts.annotation)));let r=Mo(i,e);return this.memoizedPaths.set(e,r),r}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(e=>{if(e.source&&e.source.input.map){let n=e.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let e=new Il(this.originalCSS,this.opts);e.map&&this.previousMaps.push(e.map)}return this.previousMaps}setSourcesContent(){let e={};if(this.root)this.root.walk(n=>{if(n.source){let i=n.source.input.from;if(i&&!e[i]){e[i]=!0;let r=this.usesFileUrls?this.toFileUrl(i):this.toUrl(this.path(i));this.map.setSourceContent(r,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(e){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(e.source.input.from):this.toUrl(this.path(e.source.input.from))}toBase64(e){return Buffer?Buffer.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}toFileUrl(e){let n=this.memoizedFileURLs.get(e);if(n)return n;if(Fo){let i=Fo(e).toString();return this.memoizedFileURLs.set(e,i),i}else throw new Error("`map.absolute` option is not available in this PostCSS build")}toUrl(e){let n=this.memoizedURLs.get(e);if(n)return n;To==="\\\\"&&(e=e.replace(/\\\\/g,"/"));let i=encodeURI(e).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(e,i),i}};Lo.exports=di});var Ro=ne((Mm,ko)=>{"use strict";var hn=/[\\t\\n\\f\\r "#\'()/;[\\\\\\]{}]/g,xn=/[\\t\\n\\f\\r !"#\'():;@[\\\\\\]{}]|\\/(?=\\*)/g,Bl=/.[\\r\\n"\'(/\\\\]/,vo=/[\\da-f]/i;ko.exports=function(e,n={}){let i=e.css.valueOf(),r=n.ignoreErrors,o,s,l,a,c,u,m,f,x,E,g=i.length,b=0,F=[],_=[],L=-1;function ee(){return b}function H(C){throw e.error("Unclosed "+C,b)}function N(){return _.length===0&&b>=g}function y(C){if(_.length)return _.pop();if(b>=g)return;let M=C?C.ignoreUnclosed:!1;switch(o=i.charCodeAt(b),o){case 10:case 32:case 9:case 13:case 12:{a=b;do a+=1,o=i.charCodeAt(a);while(o===32||o===10||o===9||o===13||o===12);u=["space",i.slice(b,a)],b=a-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let k=String.fromCharCode(o);u=[k,k,b];break}case 40:{if(E=F.length?F.pop()[1]:"",x=i.charCodeAt(b+1),E==="url"&&x!==39&&x!==34&&x!==32&&x!==10&&x!==9&&x!==12&&x!==13){a=b;do{if(m=!1,a=i.indexOf(")",a+1),a===-1)if(r||M){a=b;break}else H("bracket");for(f=a;i.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);u=["brackets",i.slice(b,a+1),b,a],b=a}else b<=L?u=["(","(",b]:(a=i.indexOf(")",b+1),s=i.slice(b,a+1),a===-1||Bl.test(s)?(L=a===-1?g:a,u=["(","(",b]):(u=["brackets",s,b,a],b=a));break}case 39:case 34:{c=o===39?"\'":\'"\',a=b;do{if(m=!1,a=i.indexOf(c,a+1),a===-1)if(r||M){a=b+1;break}else H("string");for(f=a;i.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);u=["string",i.slice(b,a+1),b,a],b=a;break}case 64:{hn.lastIndex=b+1,hn.test(i),hn.lastIndex===0?a=i.length-1:a=hn.lastIndex-2,u=["at-word",i.slice(b,a+1),b,a],b=a;break}case 92:{for(a=b,l=!0;i.charCodeAt(a+1)===92;)a+=1,l=!l;if(o=i.charCodeAt(a+1),l&&o!==47&&o!==32&&o!==10&&o!==9&&o!==13&&o!==12&&(a+=1,vo.test(i.charAt(a)))){for(;vo.test(i.charAt(a+1));)a+=1;i.charCodeAt(a+1)===32&&(a+=1)}u=["word",i.slice(b,a+1),b,a],b=a;break}default:{o===47&&i.charCodeAt(b+1)===42?(a=i.indexOf("*/",b+2)+1,a===0&&(r||M?a=i.length:H("comment")),u=["comment",i.slice(b,a+1),b,a],b=a):(xn.lastIndex=b+1,xn.test(i),xn.lastIndex===0?a=i.length-1:a=xn.lastIndex-2,u=["word",i.slice(b,a+1),b,a],F.push(u),b=a);break}}return b++,u}function A(C){_.push(C)}return{back:A,endOfFile:N,nextToken:y,position:ee}}});var Oo=ne((Nm,Po)=>{"use strict";var Hl=an(),Wl=Pt(),Gl=Bt(),Ul=dt(),Do=fn(),Vl=Ro(),Io={empty:!0,space:!0};function zl(t){for(let e=t.length-1;e>=0;e--){let n=t[e],i=n[3]||n[2];if(i)return i}}var mi=class{constructor(e){this.input=e,this.root=new Ul,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:e,start:{column:1,line:1,offset:0}}}atrule(e){let n=new Hl;n.name=e[1].slice(1),n.name===""&&this.unnamedAtrule(n,e),this.init(n,e[2]);let i,r,o,s=!1,l=!1,a=[],c=[];for(;!this.tokenizer.endOfFile();){if(e=this.tokenizer.nextToken(),i=e[0],i==="("||i==="["?c.push(i==="("?")":"]"):i==="{"&&c.length>0?c.push("}"):i===c[c.length-1]&&c.pop(),c.length===0)if(i===";"){n.source.end=this.getPosition(e[2]),n.source.end.offset++,this.semicolon=!0;break}else if(i==="{"){l=!0;break}else if(i==="}"){if(a.length>0){for(o=a.length-1,r=a[o];r&&r[0]==="space";)r=a[--o];r&&(n.source.end=this.getPosition(r[3]||r[2]),n.source.end.offset++)}this.end(e);break}else a.push(e);else a.push(e);if(this.tokenizer.endOfFile()){s=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(a),a.length?(n.raws.afterName=this.spacesAndCommentsFromStart(a),this.raw(n,"params",a),s&&(e=a[a.length-1],n.source.end=this.getPosition(e[3]||e[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(e){let n=this.colon(e);if(n===!1)return;let i=0,r;for(let o=n-1;o>=0&&(r=e[o],!(r[0]!=="space"&&(i+=1,i===2)));o--);throw this.input.error("Missed semicolon",r[0]==="word"?r[3]+1:r[2])}colon(e){let n=0,i,r,o;for(let[s,l]of e.entries()){if(r=l,o=r[0],o==="("&&(n+=1),o===")"&&(n-=1),n===0&&o===":")if(!i)this.doubleColon(r);else{if(i[0]==="word"&&i[1]==="progid")continue;return s}i=r}return!1}comment(e){let n=new Wl;this.init(n,e[2]),n.source.end=this.getPosition(e[3]||e[2]),n.source.end.offset++;let i=e[1].slice(2,-2);if(!i.trim())n.text="",n.raws.left=i,n.raws.right="";else{let r=i.match(/^(\\s*)([^]*\\S)(\\s*)$/);n.text=r[2],n.raws.left=r[1],n.raws.right=r[3]}}createTokenizer(){this.tokenizer=Vl(this.input)}decl(e,n){let i=new Gl;this.init(i,e[0][2]);let r=e[e.length-1];for(r[0]===";"&&(this.semicolon=!0,e.pop()),i.source.end=this.getPosition(r[3]||r[2]||zl(e)),i.source.end.offset++;e[0][0]!=="word";)e.length===1&&this.unknownWord(e),i.raws.before+=e.shift()[1];for(i.source.start=this.getPosition(e[0][2]),i.prop="";e.length;){let c=e[0][0];if(c===":"||c==="space"||c==="comment")break;i.prop+=e.shift()[1]}i.raws.between="";let o;for(;e.length;)if(o=e.shift(),o[0]===":"){i.raws.between+=o[1];break}else o[0]==="word"&&/\\w/.test(o[1])&&this.unknownWord([o]),i.raws.between+=o[1];(i.prop[0]==="_"||i.prop[0]==="*")&&(i.raws.before+=i.prop[0],i.prop=i.prop.slice(1));let s=[],l;for(;e.length&&(l=e[0][0],!(l!=="space"&&l!=="comment"));)s.push(e.shift());this.precheckMissedSemicolon(e);for(let c=e.length-1;c>=0;c--){if(o=e[c],o[1].toLowerCase()==="!important"){i.important=!0;let u=this.stringFrom(e,c);u=this.spacesFromEnd(e)+u,u!==" !important"&&(i.raws.important=u);break}else if(o[1].toLowerCase()==="important"){let u=e.slice(0),m="";for(let f=c;f>0;f--){let x=u[f][0];if(m.trim().startsWith("!")&&x!=="space")break;m=u.pop()[1]+m}m.trim().startsWith("!")&&(i.important=!0,i.raws.important=m,e=u)}if(o[0]!=="space"&&o[0]!=="comment")break}e.some(c=>c[0]!=="space"&&c[0]!=="comment")&&(i.raws.between+=s.map(c=>c[1]).join(""),s=[]),this.raw(i,"value",s.concat(e),n),i.value.includes(":")&&!n&&this.checkMissedSemicolon(e)}doubleColon(e){throw this.input.error("Double colon",{offset:e[2]},{offset:e[2]+e[1].length})}emptyRule(e){let n=new Do;this.init(n,e[2]),n.selector="",n.raws.between="",this.current=n}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(e[2]),n.source.end.offset+=n.raws.ownSemicolon.length)}}getPosition(e){let n=this.input.fromOffset(e);return{column:n.col,line:n.line,offset:e}}init(e,n){this.current.push(e),e.source={input:this.input,start:this.getPosition(n)},e.raws.before=this.spaces,this.spaces="",e.type!=="comment"&&(this.semicolon=!1)}other(e){let n=!1,i=null,r=!1,o=null,s=[],l=e[1].startsWith("--"),a=[],c=e;for(;c;){if(i=c[0],a.push(c),i==="("||i==="[")o||(o=c),s.push(i==="("?")":"]");else if(l&&r&&i==="{")o||(o=c),s.push("}");else if(s.length===0)if(i===";")if(r){this.decl(a,l);return}else break;else if(i==="{"){this.rule(a);return}else if(i==="}"){this.tokenizer.back(a.pop()),n=!0;break}else i===":"&&(r=!0);else i===s[s.length-1]&&(s.pop(),s.length===0&&(o=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),s.length>0&&this.unclosedBracket(o),n&&r){if(!l)for(;a.length&&(c=a[a.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(a.pop());this.decl(a,l)}else this.unknownWord(a)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch(e=this.tokenizer.nextToken(),e[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e);break}this.endFile()}precheckMissedSemicolon(){}raw(e,n,i,r){let o,s,l=i.length,a="",c=!0,u,m;for(let f=0;f<l;f+=1)o=i[f],s=o[0],s==="space"&&f===l-1&&!r?c=!1:s==="comment"?(m=i[f-1]?i[f-1][0]:"empty",u=i[f+1]?i[f+1][0]:"empty",!Io[m]&&!Io[u]?a.slice(-1)===","?c=!1:a+=o[1]:c=!1):a+=o[1];if(!c){let f=i.reduce((x,E)=>x+E[1],"");e.raws[n]={raw:f,value:a}}e[n]=a}rule(e){e.pop();let n=new Do;this.init(n,e[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(n,"selector",e),this.current=n}spacesAndCommentsFromEnd(e){let n,i="";for(;e.length&&(n=e[e.length-1][0],!(n!=="space"&&n!=="comment"));)i=e.pop()[1]+i;return i}spacesAndCommentsFromStart(e){let n,i="";for(;e.length&&(n=e[0][0],!(n!=="space"&&n!=="comment"));)i+=e.shift()[1];return i}spacesFromEnd(e){let n,i="";for(;e.length&&(n=e[e.length-1][0],n==="space");)i=e.pop()[1]+i;return i}stringFrom(e,n){let i="";for(let r=n;r<e.length;r++)i+=e[r][1];return e.splice(n,e.length-n),i}unclosedBlock(){let e=this.current.source.start;throw this.input.error("Unclosed block",e.line,e.column)}unclosedBracket(e){throw this.input.error("Unclosed bracket",{offset:e[2]},{offset:e[2]+1})}unexpectedClose(e){throw this.input.error("Unexpected }",{offset:e[2]},{offset:e[2]+1})}unknownWord(e){throw this.input.error("Unknown word "+e[0][1],{offset:e[0][2]},{offset:e[0][2]+e[0][1].length})}unnamedAtrule(e,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};Po.exports=mi});var yn=ne((Tm,Bo)=>{"use strict";var jl=$e(),ql=Wt(),$l=Oo();function gn(t,e){let n=new ql(t,e),i=new $l(n);try{i.parse()}catch(r){throw r}return i.root}Bo.exports=gn;gn.default=gn;jl.registerParse(gn)});var pi=ne((_m,Ho)=>{"use strict";var Vt=class{constructor(e,n={}){if(this.type="warning",this.text=e,n.node&&n.node.source){let i=n.node.rangeBy(n);this.line=i.start.line,this.column=i.start.column,this.endLine=i.end.line,this.endColumn=i.end.column}for(let i in n)this[i]=n[i]}toString(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}};Ho.exports=Vt;Vt.default=Vt});var bn=ne((Lm,Wo)=>{"use strict";var Kl=pi(),zt=class{get content(){return this.css}constructor(e,n,i){this.processor=e,this.messages=[],this.root=n,this.opts=i,this.css="",this.map=void 0}toString(){return this.css}warn(e,n={}){n.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(n.plugin=this.lastPlugin.postcssPlugin);let i=new Kl(e,n);return this.messages.push(i),i}warnings(){return this.messages.filter(e=>e.type==="warning")}};Wo.exports=zt;zt.default=zt});var hi=ne((vm,Uo)=>{"use strict";var Go={};Uo.exports=function(e){Go[e]||(Go[e]=!0,typeof console<"u"&&console.warn&&console.warn(e))}});var yi=ne((Rm,qo)=>{"use strict";var Jl=$e(),Yl=ln(),Xl=fi(),Ql=yn(),Vo=bn(),Zl=dt(),eu=vt(),{isClean:Be,my:tu}=sn(),km=hi(),nu={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},iu={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},ru={Once:!0,postcssPlugin:!0,prepare:!0},mt=0;function jt(t){return typeof t=="object"&&typeof t.then=="function"}function jo(t){let e=!1,n=nu[t.type];return t.type==="decl"?e=t.prop.toLowerCase():t.type==="atrule"&&(e=t.name.toLowerCase()),e&&t.append?[n,n+"-"+e,mt,n+"Exit",n+"Exit-"+e]:e?[n,n+"-"+e,n+"Exit",n+"Exit-"+e]:t.append?[n,mt,n+"Exit"]:[n,n+"Exit"]}function zo(t){let e;return t.type==="document"?e=["Document",mt,"DocumentExit"]:t.type==="root"?e=["Root",mt,"RootExit"]:e=jo(t),{eventIndex:0,events:e,iterator:0,node:t,visitorIndex:0,visitors:[]}}function xi(t){return t[Be]=!1,t.nodes&&t.nodes.forEach(e=>xi(e)),t}var gi={},Je=class t{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(e,n,i){this.stringified=!1,this.processed=!1;let r;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))r=xi(n);else if(n instanceof t||n instanceof Vo)r=xi(n.root),n.map&&(typeof i.map>"u"&&(i.map={}),i.map.inline||(i.map.inline=!1),i.map.prev=n.map);else{let o=Ql;i.syntax&&(o=i.syntax.parse),i.parser&&(o=i.parser),o.parse&&(o=o.parse);try{r=o(n,i)}catch(s){this.processed=!0,this.error=s}r&&!r[tu]&&Jl.rebuild(r)}this.result=new Vo(e,r,i),this.helpers={...gi,postcss:gi,result:this.result},this.plugins=this.processor.plugins.map(o=>typeof o=="object"&&o.prepare?{...o,...o.prepare(this.result)}:o)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(e,n){let i=this.result.lastPlugin;try{n&&n.addToError(e),this.error=e,e.name==="CssSyntaxError"&&!e.plugin?(e.plugin=i.postcssPlugin,e.setMessage()):i.postcssVersion}catch(r){console&&console.error&&console.error(r)}return e}prepareVisitors(){this.listeners={};let e=(n,i,r)=>{this.listeners[i]||(this.listeners[i]=[]),this.listeners[i].push([n,r])};for(let n of this.plugins)if(typeof n=="object")for(let i in n){if(!iu[i]&&/^[A-Z]/.test(i))throw new Error(`Unknown event ${i} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!ru[i])if(typeof n[i]=="object")for(let r in n[i])r==="*"?e(n,i,n[i][r]):e(n,i+"-"+r.toLowerCase(),n[i][r]);else typeof n[i]=="function"&&e(n,i,n[i])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let e=0;e<this.plugins.length;e++){let n=this.plugins[e],i=this.runOnRoot(n);if(jt(i))try{await i}catch(r){throw this.handleError(r)}}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Be];){e[Be]=!0;let n=[zo(e)];for(;n.length>0;){let i=this.visitTick(n);if(jt(i))try{await i}catch(r){let o=n[n.length-1].node;throw this.handleError(r,o)}}}if(this.listeners.OnceExit)for(let[n,i]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(e.type==="document"){let r=e.nodes.map(o=>i(o,this.helpers));await Promise.all(r)}else await i(e,this.helpers)}catch(r){throw this.handleError(r)}}}return this.processed=!0,this.stringify()}runOnRoot(e){this.result.lastPlugin=e;try{if(typeof e=="object"&&e.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(i=>e.Once(i,this.helpers));return jt(n[0])?Promise.all(n):n}return e.Once(this.result.root,this.helpers)}else if(typeof e=="function")return e(this.result.root,this.result)}catch(n){throw this.handleError(n)}}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,n=eu;e.syntax&&(n=e.syntax.stringify),e.stringifier&&(n=e.stringifier),n.stringify&&(n=n.stringify);let i=this.result.root.source;if(e.map===void 0&&!(i&&i.input&&i.input.map)){let s="";return n(this.result.root,l=>{s+=l}),this.result.css=s,this.result}let o=new Xl(n,this.result.root,this.result.opts).generate();return this.result.css=o[0],this.result.map=o[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins){let n=this.runOnRoot(e);if(jt(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Be];)e[Be]=!0,this.walkSync(e);if(this.listeners.OnceExit)if(e.type==="document")for(let n of e.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,e)}return this.result}then(e,n){return this.async().then(e,n)}toString(){return this.css}visitSync(e,n){for(let[i,r]of e){this.result.lastPlugin=i;let o;try{o=r(n,this.helpers)}catch(s){throw this.handleError(s,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(jt(o))throw this.getAsyncError()}}visitTick(e){let n=e[e.length-1],{node:i,visitors:r}=n;if(i.type!=="root"&&i.type!=="document"&&!i.parent){e.pop();return}if(r.length>0&&n.visitorIndex<r.length){let[s,l]=r[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===r.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=s;try{return l(i.toProxy(),this.helpers)}catch(a){throw this.handleError(a,i)}}if(n.iterator!==0){let s=n.iterator,l;for(;l=i.nodes[i.indexes[s]];)if(i.indexes[s]+=1,!l[Be]){l[Be]=!0,e.push(zo(l));return}n.iterator=0,delete i.indexes[s]}let o=n.events;for(;n.eventIndex<o.length;){let s=o[n.eventIndex];if(n.eventIndex+=1,s===mt){i.nodes&&i.nodes.length&&(i[Be]=!0,n.iterator=i.getIterator());return}else if(this.listeners[s]){n.visitors=this.listeners[s];return}}e.pop()}walkSync(e){e[Be]=!0;let n=jo(e);for(let i of n)if(i===mt)e.nodes&&e.each(r=>{r[Be]||this.walkSync(r)});else{let r=this.listeners[i];if(r&&this.visitSync(r,e.toProxy()))return}}warnings(){return this.sync().warnings()}};Je.registerPostcss=t=>{gi=t};qo.exports=Je;Je.default=Je;Zl.registerLazyResult(Je);Yl.registerLazyResult(Je)});var Ko=ne((Im,$o)=>{"use strict";var ou=fi(),su=yn(),au=bn(),lu=vt(),Dm=hi(),qt=class{get content(){return this.result.css}get css(){return this.result.css}get map(){return this.result.map}get messages(){return[]}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){if(this._root)return this._root;let e,n=su;try{e=n(this._css,this._opts)}catch(i){this.error=i}if(this.error)throw this.error;return this._root=e,e}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(e,n,i){n=n.toString(),this.stringified=!1,this._processor=e,this._css=n,this._opts=i,this._map=void 0;let r=lu;this.result=new au(this._processor,void 0,this._opts),this.result.css=n;let o=this;Object.defineProperty(this.result,"root",{get(){return o.root}});let s=new ou(r,void 0,this._opts,n);if(s.isMap()){let[l,a]=s.generate();l&&(this.result.css=l),a&&(this.result.map=a)}else s.clearAnnotation(),this.result.css=s.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}sync(){if(this.error)throw this.error;return this.result}then(e,n){return this.async().then(e,n)}toString(){return this._css}warnings(){return[]}};$o.exports=qt;qt.default=qt});var Yo=ne((Pm,Jo)=>{"use strict";var uu=ln(),cu=yi(),du=Ko(),fu=dt(),rt=class{constructor(e=[]){this.version="8.5.14",this.plugins=this.normalize(e)}normalize(e){let n=[];for(let i of e)if(i.postcss===!0?i=i():i.postcss&&(i=i.postcss),typeof i=="object"&&Array.isArray(i.plugins))n=n.concat(i.plugins);else if(typeof i=="object"&&i.postcssPlugin)n.push(i);else if(typeof i=="function")n.push(i);else if(!(typeof i=="object"&&(i.parse||i.stringify)))throw new Error(i+" is not a PostCSS plugin");return n}process(e,n={}){return!this.plugins.length&&!n.parser&&!n.stringifier&&!n.syntax?new du(this,e,n):new cu(this,e,n)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}};Jo.exports=rt;rt.default=rt;fu.registerProcessor(rt);uu.registerProcessor(rt)});var rs=ne((Om,is)=>{"use strict";var Xo=an(),Qo=Pt(),mu=$e(),pu=on(),Zo=Bt(),es=ln(),hu=Co(),xu=Wt(),gu=yi(),yu=ci(),bu=Dt(),Su=yn(),bi=Yo(),Au=bn(),ts=dt(),ns=fn(),Eu=vt(),wu=pi();function se(...t){return t.length===1&&Array.isArray(t[0])&&(t=t[0]),new bi(t)}se.plugin=function(e,n){let i=!1;function r(...s){console&&console.warn&&!i&&(i=!0,console.warn(e+`: postcss.plugin was deprecated. Migration guide:\nhttps://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+`: \\u91CC\\u9762 postcss.plugin \\u88AB\\u5F03\\u7528. \\u8FC1\\u79FB\\u6307\\u5357:\nhttps://www.w3ctech.com/topic/2226`));let l=n(...s);return l.postcssPlugin=e,l.postcssVersion=new bi().version,l}let o;return Object.defineProperty(r,"postcss",{get(){return o||(o=r()),o}}),r.process=function(s,l,a){return se([r(a)]).process(s,l)},r};se.stringify=Eu;se.parse=Su;se.fromJSON=hu;se.list=yu;se.comment=t=>new Qo(t);se.atRule=t=>new Xo(t);se.decl=t=>new Zo(t);se.rule=t=>new ns(t);se.root=t=>new ts(t);se.document=t=>new es(t);se.CssSyntaxError=pu;se.Declaration=Zo;se.Container=mu;se.Processor=bi;se.Document=es;se.Comment=Qo;se.Warning=wu;se.AtRule=Xo;se.Result=Au;se.Input=xu;se.Rule=ns;se.Root=ts;se.Node=bu;gu.registerPostcss(se);is.exports=se;se.default=se});function nn(){return globalThis}function R(t,e){if(typeof window>"u")return;let n=nn(),i=n.__hf?.onSwallowed;if(i)try{i({label:t,error:e})}catch(r){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${t} swallowed:`,e)}function Ae(t){try{window.parent.postMessage(t,"*")}catch(e){R("bridge.postMessage",e)}}var Fa={play:(t,e)=>e.onPlay(),pause:(t,e)=>e.onPause(),"stop-media":(t,e)=>e.onStopMedia(),seek:(t,e)=>e.onSeek(Number(t.frame??0),t.seekMode??"commit"),tick:(t,e)=>e.onTick(),"set-muted":(t,e)=>e.onSetMuted(!!t.muted),"set-volume":(t,e)=>e.onSetVolume(Math.max(0,Math.min(1,Number(t.volume??1)))),"set-media-output-muted":(t,e)=>e.onSetMediaOutputMuted(!!t.muted),"set-native-media-sync-disabled":(t,e)=>e.onSetNativeMediaSyncDisabled(!!t.disabled),"set-web-audio-media-disabled":(t,e)=>e.onSetWebAudioMediaDisabled(!!t.disabled),"set-playback-rate":(t,e)=>e.onSetPlaybackRate(Number(t.playbackRate??1)),"set-color-grading":(t,e)=>e.onSetColorGrading(t.target??null,t.grading??null),"set-color-grading-compare":(t,e)=>e.onSetColorGradingCompare(t.target??null,t.compare??null),"enable-pick-mode":(t,e)=>e.onEnablePickMode(),"disable-pick-mode":(t,e)=>e.onDisablePickMode(),"flash-elements":t=>Ma(t)};function Ma(t){let e=t.selectors,n=t.duration||800;e&&Na(e,n)}function Qi(t){let e=n=>{let i=n.data;if(!i||i.source!=="hf-parent"||i.type!=="control")return;let r=i.action;if(typeof r!="string")return;let o=Fa[r];o&&o(i,t)};return window.addEventListener("message",e),Ae({source:"hf-preview",type:"ready"}),e}function Na(t,e){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`\n .__hf-flash {\n outline: 2px solid rgba(59, 130, 246, 0.6) !important;\n outline-offset: 2px !important;\n animation: __hf-flash-pulse ${e}ms ease-out forwards !important;\n }\n @keyframes __hf-flash-pulse {\n 0% { outline-color: rgba(59, 130, 246, 0.8); }\n 100% { outline-color: transparent; }\n }\n `,document.head.appendChild(n)}for(let n of t)try{document.querySelectorAll(n).forEach(r=>{r.classList.add("__hf-flash"),setTimeout(()=>r.classList.remove("__hf-flash"),e)})}catch(i){R("bridge.flashElements.querySelector",i)}}var Wn=null;function Zi(t){Wn=t}function At(t,e){if(Wn)try{Wn({source:"hf-preview",type:"analytics",event:t,properties:e??{}})}catch(n){R("runtime.analytics.site1",n)}}function er(t){let e=[],n=l=>{if(typeof l.getAnimations!="function")return[];try{return l.getAnimations()}catch{return[]}},i=(l,a)=>{for(let c of l){try{c.currentTime=a}catch(u){R("runtime.adapters.css.site1",u)}try{c.pause()}catch(u){R("runtime.adapters.css.site2",u)}}},r=l=>{for(let a of l)try{a.play()}catch(c){R("runtime.adapters.css.site3",c)}},o=l=>{for(let a of l)try{a.pause()}catch(c){R("runtime.adapters.css.site4",c)}},s=l=>{l.baseDelay?l.el.style.animationDelay=l.baseDelay:l.el.style.removeProperty("animation-delay"),l.basePlayState?l.el.style.animationPlayState=l.basePlayState:l.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{e=[];let l=document.querySelectorAll("*");for(let a of l){if(!(a instanceof HTMLElement))continue;let c=window.getComputedStyle(a);!c.animationName||c.animationName==="none"||e.push({el:a,baseDelay:a.style.animationDelay||"",basePlayState:a.style.animationPlayState||""})}},seek:l=>{let a=Number(l.time)||0;for(let c of e){if(!c.el.isConnected)continue;let u=t?.resolveStartSeconds?t.resolveStartSeconds(c.el):Number.parseFloat(c.el.getAttribute("data-start")??"0")||0,m=Math.max(0,a-u)*1e3,f=n(c.el);if(f.length>0){i(f,m);continue}c.el.style.animationPlayState="paused",c.el.style.animationDelay=`-${(m/1e3).toFixed(3)}s`}},pause:()=>{for(let l of e){if(!l.el.isConnected)continue;let a=n(l.el);a.length>0&&o(a),s(l)}},play:()=>{for(let l of e)l.el.isConnected&&(s(l),r(n(l.el)))},revert:()=>{e=[]}}}function tr(t){return{name:"gsap",discover:()=>{},seek:e=>{let n=t.getTimeline();if(!n)return;n.pause();let i=Math.max(0,Number(e.time)||0);typeof n.totalTime=="function"?(n.totalTime(i+.001,!0),n.totalTime(i,!1)):n.seek(i,!1)},pause:()=>{let e=t.getTimeline();e&&e.pause()}}}function nr(){return{name:"animejs",discover:()=>{try{let t=window.anime;if(!t||typeof t.running>"u")return;let e=t.running;if(!Array.isArray(e)||e.length===0)return;let n=window.__hfAnime??[],i=new Set(n);for(let r of e)i.has(r)||n.push(r);window.__hfAnime=n}catch(t){R("runtime.adapters.animejs.site1",t)}},seek:t=>{let e=Math.max(0,(Number(t.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let i of n)try{typeof i.seek=="function"&&i.seek(e)}catch(r){R("runtime.adapters.animejs.site2",r)}},pause:()=>{let t=window.__hfAnime;if(!(!t||t.length===0))for(let e of t)try{typeof e.pause=="function"&&e.pause()}catch(n){R("runtime.adapters.animejs.site3",n)}},play:()=>{let t=window.__hfAnime;if(!(!t||t.length===0))for(let e of t)try{typeof e.play=="function"&&e.play()}catch(n){R("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function or(){return{name:"lottie",discover:()=>{try{let t=window.lottie;if(t&&typeof t.getRegisteredAnimations=="function"){let e=t.getRegisteredAnimations();if(Array.isArray(e)&&e.length>0){let n=window.__hfLottie??[],i=new Set(n);for(let r of e)i.has(r)||n.push(r);window.__hfLottie=n}}}catch(t){R("runtime.adapters.lottie.site1",t)}},seek:t=>{let e=Math.max(0,Number(t.time)||0),n=window.__hfLottie;if(!(!n||n.length===0))for(let i of n)try{if(ir(i))i.goToAndStop(e*1e3,!1);else if(rr(i)){if(typeof i.setCurrentRawFrameValue=="function"){let r=i.totalFrames??0,o=i.frameRate??30,s=e*o;r>0&&i.setCurrentRawFrameValue(Math.min(s,r-1))}else if(typeof i.seek=="function"){let r=i.duration??1,o=Math.min(100,e/r*100);i.seek(o)}}}catch(r){R("runtime.adapters.lottie.site2",r)}},pause:()=>{let t=window.__hfLottie;if(!(!t||t.length===0))for(let e of t)try{(ir(e)||rr(e))&&e.pause()}catch(n){R("runtime.adapters.lottie.site3",n)}},revert:()=>{}}}function ir(t){return typeof t=="object"&&t!==null&&typeof t.goToAndStop=="function"}function rr(t){return typeof t=="object"&&t!==null&&typeof t.pause=="function"&&("totalFrames"in t||"duration"in t)}var Gn=-1;function rn(t){if(t!==Gn){Gn=t;try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:{time:t}}))}catch(e){R("runtime.adapters.seek-dispatch.site1",e)}}}function sr(t){Gn=t;try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:{time:t}}))}catch(e){R("runtime.adapters.seek-dispatch.force",e)}}function ar(){let t=null,e=0,n=null,i=null,r=null,o=null,s=()=>{if(typeof window>"u")return null;let u=window.THREE?.DefaultLoadingManager;return!u||typeof u!="object"||typeof u.itemsLoaded!="number"||typeof u.itemsTotal!="number"?null:u},l=c=>{o||c.itemsTotal<=c.itemsLoaded||(o=new Promise(u=>{c.onLoad=function(){try{r?.call(this)}finally{o=null,c.onLoad=r??null,u()}}}))},a=c=>{n!==c&&(n=c,i=c.onStart??null,r=c.onLoad??null,c.onStart=function(u,m,f){try{i?.call(this,u,m,f)}finally{l(c)}})};return{name:"three",discover:()=>{let c=s();c&&(a(c),l(c))},seek:c=>{t=Math.max(0,Number(c.time)||0),e=t,window.__hfThreeTime=t,rn(t)},pause:()=>{t==null&&(t=Math.max(0,e))},play:()=>{t=null},revert:()=>{t=null,e=0},getReadyPromise:()=>{let c=s();return!c||c.itemsTotal<=c.itemsLoaded?null:(o||l(c),o)}}}function Oe(t){let e=null,n=new WeakSet;return{name:t.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let i=t.getInstances();if(i.length===0)return null;let r=i.filter(o=>!n.has(o));return r.length===0?null:e||(e=Promise.allSettled(r.map(o=>t.waitFor(o).then(()=>{n.add(o)}))).then(()=>{e=null}),e)}}}function lr(){return Oe({name:"mapbox",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfMapbox;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{if(t.loaded()){e();return}t.on("load",e)})})}function ur(){return Oe({name:"leaflet",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfLeaflet;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>t.whenReady(e))})}function cr(){return Oe({name:"google-maps",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfGoogleMaps;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{let n=t.addListener("tilesloaded",()=>{n.remove(),e()})})})}function dr(){return Oe({name:"maplibre",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfMaplibre;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{if(t.loaded()){e();return}t.on("load",e)})})}function fr(){return Oe({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfD3;return Array.isArray(t)?t:[]},waitFor:t=>t.end()})}function mr(){let t=null,e=0;return{name:"typegpu",discover:()=>{},seek:n=>{t=Math.max(0,Number(n.time)||0),e=t,window.__hfTypegpuTime=t,rn(t)},pause:()=>{t==null&&(t=Math.max(0,e))},play:()=>{t=null},revert:()=>{t=null,e=0}}}function pr(t){let e=t.nextElementSibling;if(e instanceof HTMLImageElement&&e.classList.contains("__render_frame__")&&e.complete&&e.naturalWidth>0)return e;if(t.id){let n=document.getElementById(`__render_frame_${t.id}__`);if(n instanceof HTMLImageElement&&n.complete&&n.naturalWidth>0)return n}return null}function hr(){let t=globalThis.GPUQueue;if(!t?.prototype?.copyExternalImageToTexture)return;let e=t.prototype.copyExternalImageToTexture;t.prototype.copyExternalImageToTexture=function(n,i,r){if(n?.source instanceof HTMLVideoElement){let o=pr(n.source);if(o)return e.call(this,{...n,source:o},i,r)}return e.call(this,n,i,r)}}function xr(){let t=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],e=["texImage2D","texSubImage2D"];for(let n of t){let i=n?.prototype;if(i)for(let r of e){let o=i[r];if(typeof o!="function"||o.__hfVideoPatched)continue;let s=function(...l){let a=l.length-1,c=l[a];if(c instanceof HTMLVideoElement){let u=pr(c);u&&(l[a]=u)}return o.apply(this,l)};s.__hfVideoPatched=!0,i[r]=s}}}function gr(){let t=!1,e=0,n=new WeakMap,i=()=>{if(!document.getAnimations)return[];try{return document.getAnimations()}catch{return[]}},r=l=>{let a=Number(l.currentTime);return Number.isFinite(a)&&a>0?a:0},o=(l,a)=>a<=0?l:l>=a?Math.max(0,l-a):l,s=(l,a)=>{let c=n.get(l);if(c)return c;let u={compositionTimeMs:a,animationTimeMs:t?o(r(l),a):r(l)};return n.set(l,u),u};return{name:"waapi",discover:()=>{t=!0;for(let l of i())s(l,e)},seek:l=>{let a=Math.max(0,(Number(l.time)||0)*1e3);e=a;for(let c of i()){let u=t?s(c,a):s(c,0),m=u.animationTimeMs+Math.max(0,a-u.compositionTimeMs);try{c.currentTime=m}catch(f){R("runtime.adapters.waapi.site1",f)}try{c.pause()}catch(f){R("runtime.adapters.waapi.site2",f)}}},pause:()=>{if(document.getAnimations)for(let l of document.getAnimations())try{l.pause()}catch(a){R("runtime.adapters.waapi.site3",a)}}}}function yr(t,e){if(t.length===0)return 1;let n=0;for(;n<t.length-2&&e>=t[n+1].time;)n+=1;let i=t[n],r=t[n+1]??i,o=r.time-i.time,s=o<=0?0:Math.min(1,Math.max(0,(e-i.time)/o));return i.volume+(r.volume-i.volume)*s}function Ta(t,e,n,i){let r=Number.parseFloat(t.dataset.start??"0")||0,o=Number.parseFloat(t.dataset.end??""),s=Number.parseFloat(t.dataset.duration??""),l=Number.isFinite(o)&&o>r?o:Number.isFinite(s)&&s>0?r+s:n,a=Number.parseFloat(t.dataset.volume??""),c=Number.isFinite(a)?Math.max(0,Math.min(1,a)):1;t.volume=c;let u=1/Math.min(60,Math.max(1,i)),m=Math.max(0,r),f=Math.min(n,l),x=[];for(let g=m;g<=f+1e-6;g+=u){let b=Math.min(f,g);e(b);let F=Number(t.volume);if(!Number.isFinite(F))continue;let _=Math.max(0,Math.min(1,F)),L=x.at(-1);if((!L||Math.abs(L.volume-_)>1e-4||b===f)&&x.push({time:Number(b.toFixed(6)),volume:Number(_.toFixed(6))}),b===f)break}return x.some(g=>Math.abs(g.volume-c)>1e-4)?x:null}function br(t,e,n,i){if(!e||!(t instanceof HTMLAudioElement)&&!(t instanceof HTMLVideoElement)||n<=0)return;let o=Ta(t,s=>{try{typeof e.totalTime=="function"?e.totalTime(s,!0):typeof e.seek=="function"&&e.seek(s,!0)}catch{}},n,60);o&&i.set(t,o)}function Ct(t){let e=t.defaultPlaybackRate;return Number.isFinite(e)&&e>0?Math.max(.1,Math.min(5,e)):1}function Sr(t){let e=Array.from(document.querySelectorAll("video, audio")),n=t?.shouldIncludeElement?e.filter(s=>t.shouldIncludeElement?.(s)):e.filter(s=>s.hasAttribute("data-start")),i=[],r=[],o=0;for(let s of n){let l=t?.resolveStartSeconds?t.resolveStartSeconds(s):Number.parseFloat(s.dataset.start??"0");if(!Number.isFinite(l))continue;let a=Number.parseFloat(s.dataset.playbackStart??s.dataset.mediaStart??"0")||0,c=Ct(s),u=s.loop,m=Number.isFinite(s.duration)&&s.duration>0?s.duration:null,f=t?.resolveDurationSeconds?.(s)??Number.parseFloat(s.dataset.duration??"");(!Number.isFinite(f)||f<=0)&&m!=null&&(f=Math.max(0,(m-a)/c));let x=Number.isFinite(f)&&f>0?l+f:Number.POSITIVE_INFINITY,E=Number.parseFloat(s.dataset.volume??""),g={el:s,start:l,mediaStart:a,duration:Number.isFinite(f)&&f>0?f:Number.POSITIVE_INFINITY,end:x,volume:Number.isFinite(E)?E:null,playbackRate:c,loop:u,sourceDuration:m};i.push(g),s.tagName==="VIDEO"&&r.push(g),Number.isFinite(x)&&(o=Math.max(o,x))}return{timedMediaEls:n,mediaClips:i,videoClips:r,maxMediaEnd:o}}var Un=new WeakMap,Et=new WeakMap,Vn=new WeakSet,at=new WeakSet;function _a(t){if(at.has(t))return;at.add(t);let e=()=>at.delete(t);t.addEventListener("playing",e,{once:!0}),t.addEventListener("pause",e,{once:!0}),t.addEventListener("error",e,{once:!0})}var La=3;function va(t){return t.error!=null||t.networkState===La}var zn=new WeakMap;function wt(t){return Number.isFinite(t)?Math.max(0,Math.min(1,t)):1}function Ar(t){let e=!!(t.outputMuted||t.userMuted);for(let n of t.clips){let{el:i}=n;if(!i.isConnected)continue;let r=(t.timeSeconds-n.start)*n.playbackRate+n.mediaStart;if(t.timeSeconds>=n.start&&t.timeSeconds<=n.end&&r>=0&&(!i.ended||n.loop)){if(n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let M=n.sourceDuration-n.mediaStart;M>0&&r>=n.sourceDuration&&(r=n.mediaStart+(r-n.mediaStart)%M)}let s=wt(t.userVolume??1),l=wt(n.volume??1),a=zn.get(i),c=wt(i.volume),u;n.volumeKeyframes&&n.volumeKeyframes.length>0?u=wt(yr(n.volumeKeyframes,r)):a===void 0||Math.abs(c-a)>1e-4?u=c:u=l;let m=wt(u*s);i.volume=m,zn.set(i,m),t.onElementVolume?.(i,m),(e||t.isWebAudioOwned?.(i))&&(i.muted=!0),i.preload!=="auto"&&(i.preload="auto");try{i.playbackRate=n.playbackRate*t.playbackRate}catch(M){R("runtime.media.site1",M)}let f=.04,x=2,E=i.currentTime||0,g=Math.abs(E-r),b=r-E,F=Un.get(i);Un.set(i,b);let _=F===void 0,L=!_&&Math.abs(b-F)>.5,ee=g>3,H=g>.5&&(_||L||ee),N=i.tagName==="VIDEO"&&!i.paused,y=F!==void 0&&Math.abs(b-F)<.004,A=!1;if(!N&&!H&&!_&&y&&g>f){let M=(Et.get(i)??0)+1;Et.set(i,M),M>=x&&(A=!0,Et.set(i,0))}else g<=f&&Et.set(i,0);let C=!N&&t.forceSync&&g>.02;if(H||A||C){if(!(i.tagName==="VIDEO"&&i.id&&!!document.getElementById(`__render_frame_${i.id}__`))){try{i.currentTime=r}catch(k){R("runtime.media.site2",k)}if(Math.abs(i.currentTime-r)>.5&&!Vn.has(i)){Vn.add(i),i.load();try{i.currentTime=r}catch(k){R("runtime.media.site3",k)}}}at.delete(i)}t.playing&&i.paused&&!at.has(i)&&!va(i)?(_a(i),i.play().catch(M=>{at.delete(i),(M&&typeof M=="object"&&"name"in M?String(M.name??""):"")==="NotAllowedError"&&t.onAutoplayBlocked?.()})):!t.playing&&!i.paused&&i.pause();continue}Un.delete(i),Et.delete(i),Vn.delete(i),zn.delete(i),i.paused||i.pause()}}var ka=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),Ra=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),Da="data-hf-color-grading-source-hidden";function Er(t){let e=!1,n=null,i=null,r=null,o=null;function s(y,A){try{window.dispatchEvent(new CustomEvent(y,{detail:A}))}catch(C){R("runtime.picker.site1",C)}}function l(y){r=y,s("hyperframe:picker:hovered",{elementInfo:r,isPickMode:e,timestamp:Date.now()})}function a(y){o=y,s("hyperframe:picker:selected",{elementInfo:o,isPickMode:e,timestamp:Date.now()})}function c(y){let A=y.ownerDocument.defaultView;if(!A)return!1;let C=y;for(;C&&C!==document.body&&C!==document.documentElement;){let M=A.getComputedStyle(C);if(M.display==="none"||M.visibility==="hidden"||M.pointerEvents==="none")return!0;let k=Number.parseFloat(M.opacity);if(Number.isFinite(k)&&k<=.01&&!C.hasAttribute(Da))return!0;C=C.parentElement}return!1}function u(y){if(!y||y===document.body||y===document.documentElement)return!1;let A=y.tagName.toLowerCase();return!(A==="script"||A==="style"||A==="link"||A==="meta"||y.classList.contains("__hf-pick-highlight")||y.closest(ka)||c(y))}function m(y){return!!y?.closest(Ra)}function f(y){let A=y;if(A.id)return`#${A.id}`;let C=y.getAttribute("data-composition-id");if(C)return`[data-composition-id="${CSS.escape(C)}"]`;let M=y.getAttribute("data-composition-src");if(M)return`[data-composition-src="${CSS.escape(M)}"]`;let k=y.getAttribute("data-track-index");if(k)return`[data-track-index="${CSS.escape(k)}"]`;let W=y.tagName.toLowerCase(),G=y.parentElement;if(!G)return W;let J=G.querySelectorAll(`:scope > ${W}`);if(J.length===1)return W;for(let v=0;v<J.length;v+=1)if(J[v]===y)return`${W}:nth-of-type(${v+1})`;return W}function x(y){let A=y.tagName.toLowerCase(),C=(y.textContent??"").trim().replace(/\\s+/g," "),M=(k,W)=>k.length>W?`${k.slice(0,W-1)}\\u2026`:k;return A==="h1"||A==="h2"||A==="h3"?"Heading":A==="p"||A==="span"||A==="div"?C.length>0?M(C,56):"Text":A==="img"?"Image":A==="video"?"Video":A==="audio"?"Audio":A==="svg"?"Shape":y.getAttribute("data-composition-src")?"Composition":A==="section"?"Section":`${A.charAt(0).toUpperCase()}${A.slice(1)}`}function E(y,A,C){let M=typeof C=="number"&&C>0?C:8,k=[];if(document.elementsFromPoint)k=document.elementsFromPoint(y,A);else if(document.elementFromPoint){let J=document.elementFromPoint(y,A);k=J?[J]:[]}if(m(k[0]??null))return[];let W={},G=[];for(let J=0;J<k.length;J+=1){let v=k[J];if(!u(v))continue;let ie=`${v.tagName}::${v.id||""}::${J}`;if(!W[ie]&&(W[ie]=!0,G.push(v),G.length>=M))break}return G}function g(y){let A=y.getBoundingClientRect(),C={};for(let k=0;k<y.attributes.length;k+=1){let W=y.attributes[k];W.name.startsWith("data-")&&(C[W.name]=W.value)}return{id:y.id||null,tagName:y.tagName.toLowerCase(),selector:f(y),label:x(y),boundingBox:{x:A.left,y:A.top,width:A.width,height:A.height},textContent:y.textContent?y.textContent.trim().slice(0,200):null,src:y.getAttribute("src")||y.getAttribute("data-composition-src")||null,dataAttributes:C}}function b(y,A,C){return E(y,A,C).map(g)}function F(y){if(!e)return;let C=E(y.clientX,y.clientY,1)[0]??(y.target instanceof Element?y.target:null);if(!u(C)||n===C)return;n&&n.classList.remove("__hf-pick-highlight"),n=C,C.classList.add("__hf-pick-highlight");let M=g(C);l(M),t.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:M})}function _(y){if(!e)return;y.preventDefault(),y.stopPropagation(),y.stopImmediatePropagation();let A=b(y.clientX,y.clientY,8);A.length!==0&&(l(A[0]??null),t.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:A,selectedIndex:0,point:{x:y.clientX,y:y.clientY}}))}function L(y){y.key==="Escape"&&(H(),t.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function ee(){e||(e=!0,i=document.createElement("style"),i.textContent=[".__hf-pick-highlight { outline: 2px solid #4f8cf7 !important; outline-offset: 2px; cursor: crosshair !important; }",".__hf-pick-active * { cursor: crosshair !important; }"].join(`\n`),document.head.appendChild(i),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",F,!0),document.addEventListener("click",_,!0),document.addEventListener("keydown",L,!0),s("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function H(){e&&(e=!1,n&&(n.classList.remove("__hf-pick-highlight"),n=null),i&&(i.remove(),i=null),document.body.classList.remove("__hf-pick-active"),document.removeEventListener("mousemove",F,!0),document.removeEventListener("click",_,!0),document.removeEventListener("keydown",L,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function N(){window.__HF_PICKER_API={enable:ee,disable:H,isActive:()=>e,getHovered:()=>r,getSelected:()=>o,getCandidatesAtPoint:(y,A,C)=>Number.isFinite(y)&&Number.isFinite(A)?b(y,A,C):[],pickAtPoint:(y,A,C)=>{if(!Number.isFinite(y)||!Number.isFinite(A))return null;let M=b(y,A,8);if(!M.length)return null;let k=Math.max(0,Math.min(M.length-1,Number(C??0))),W=M[k]??null;return W?(a(W),t.postMessage({source:"hf-preview",type:"element-picked",elementInfo:W}),H(),W):null},pickManyAtPoint:(y,A,C)=>{if(!Number.isFinite(y)||!Number.isFinite(A))return[];let M=b(y,A,8);if(!M.length)return[];let k=[],W=Array.isArray(C)?C:[0];for(let G of W){let J=Math.max(0,Math.min(M.length-1,Math.floor(Number(G)))),v=M[J];if(!v)continue;k.some(Me=>Me.selector===v.selector&&Me.tagName===v.tagName)||k.push(v)}return k.length?(a(k[0]??null),t.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:k}),H(),k):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:ee,disablePickMode:H,installPickerApi:N}}var Ia=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function lt(t,e){let n=Number.isFinite(e)&&e>0?e:30,i=Number.isFinite(t)&&t>0?t:0;return Math.floor(i*n+1e-9)/n}function wr(t,e,n=Ia){for(let i of n){let r=e.getPropertyValue(i);r&&t.setProperty(i,r)}}function Ft(t,e,n){let i=t?.[e];return typeof i=="function"?Number(i.call(t))||n:typeof i=="number"&&Number.isFinite(i)?i:(i!=null&&R("runtime.player.nonConformantNum",{prop:e,actual:typeof i}),n)}function Re(t,e){let n=t?.[e];if(typeof n=="function"){n.call(t);return}n!==void 0&&R("runtime.player.nonConformantVoid",{method:e,actual:typeof n})}function Mt(t,e,n){if(t){for(let i of Object.values(t))if(!(!i||i===e))try{n(i)}catch(r){R("runtime.player.site1",r)}}}function Cr(t,e,n){let i=lt(e,n);return Re(t,"pause"),typeof t.totalTime=="function"?t.totalTime(i,!1):typeof t.seek=="function"&&t.seek(i,!1),i}function Pa(t,e,n,i){let r=[];Mt(t,e,o=>{Re(o,"play"),r.push(o)});try{return Cr(e,n,i)}finally{for(let o of r)try{Re(o,"pause")}catch(s){R("runtime.player.site2",s)}}}function Oa(t,e){Mt(t,e,n=>{Re(n,"play")})}function Fr(t){return{_timeline:null,play:()=>{let e=t.getTimeline();if(!e||t.getIsPlaying())return;let n=Math.max(0,Number(t.getSafeDuration?.()??Ft(e,"duration",0))||0);n>0&&Math.max(0,Ft(e,"time",0))>=n&&(Re(e,"pause"),typeof e.seek=="function"&&e.seek(0,!1),t.onDeterministicSeek(0),t.setIsPlaying(!1),t.onSyncMedia(0,!1),t.onRenderFrameSeek(0)),typeof e.timeScale=="function"&&e.timeScale(t.getPlaybackRate()),Re(e,"play"),Mt(t.getTimelineRegistry?.(),e,i=>{typeof i.timeScale=="function"&&i.timeScale(t.getPlaybackRate()),Re(i,"play")}),t.onDeterministicPlay(),t.setIsPlaying(!0),t.onShowNativeVideos(),t.onStatePost(!0)},pause:()=>{let e=t.getTimeline();if(!e)return;Re(e,"pause"),Mt(t.getTimelineRegistry?.(),e,i=>{Re(i,"pause")});let n=Math.max(0,Ft(e,"time",0));t.onDeterministicSeek(n),t.onDeterministicPause(),t.setIsPlaying(!1),t.onSyncMedia(n,!1),t.onRenderFrameSeek(n),t.onStatePost(!0)},seek:(e,n)=>{let i=t.getTimeline();if(!i)return;let r=Math.max(0,Number(e)||0),o=t.getIsPlaying(),s=Pa(t.getTimelineRegistry?.(),i,r,t.getCanonicalFps());t.onDeterministicSeek(s),n?.keepPlaying&&o?(typeof i.timeScale=="function"&&i.timeScale(t.getPlaybackRate()),Re(i,"play"),Mt(t.getTimelineRegistry?.(),i,l=>{typeof l.timeScale=="function"&&l.timeScale(t.getPlaybackRate()),Re(l,"play")}),t.onDeterministicPlay(),t.onShowNativeVideos(),t.onSyncMedia(s,!0)):(t.setIsPlaying(!1),t.onSyncMedia(s,!1)),t.onRenderFrameSeek(s),t.onStatePost(!0)},renderSeek:e=>{let n=t.getTimeline(),i=t.getCanonicalFps(),r=n?(Oa(t.getTimelineRegistry?.(),n),Cr(n,e,i)):lt(Math.max(0,Number(e)||0),i);t.onDeterministicSeek(r),t.setIsPlaying(!1),t.onSyncMedia(r,!1),t.onRenderFrameSeek(r),t.onStatePost(!0)},getTime:()=>Ft(t.getTimeline(),"time",0),getDuration:()=>Ft(t.getTimeline(),"duration",0),isPlaying:()=>t.getIsPlaying(),setPlaybackRate:e=>t.setPlaybackRate(e),getPlaybackRate:()=>t.getPlaybackRate()}}function Mr(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}var Ba=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function qn(t){return t.id||t.getAttribute("data-hf-id")||null}function jn(t){if(t==null)return null;let e=Number(t);return Number.isFinite(e)?e:null}function Ha(t,e){let n=t.getAttribute("data-composition-id");if(!n)return null;let i=Number(e[n]?.duration?.());return Number.isFinite(i)&&i>0?i:null}function Wa(t){if(!(t instanceof HTMLMediaElement)||!Number.isFinite(t.duration))return null;let e=jn(t.getAttribute("data-playback-start"))??jn(t.getAttribute("data-media-start"))??0;return t.duration>e?t.duration-e:null}function Ga(t,e,n,i){let r=jn(t.getAttribute("data-duration"));return r!=null&&r>0?r:Ha(t,e)??Wa(t)??Math.max(0,n-i)}function Ua(t){for(let[e,n]of t){let i=e.parentElement;for(;i;){let r=t.get(i);if(r){n.parentId=r.id,r.children.push(n);break}i=i.parentElement}}}function Nr(t){let{startResolver:e,timelineRegistry:n,rootDuration:i}=t,r=new Map,o=document.querySelector("[data-composition-id]"),s=0;for(let l of document.querySelectorAll("[data-start]")){if(l===o||Ba.has(l.tagName))continue;let a=e.resolveStartForElement(l,0);if(Ga(l,n,i,a)<=0)continue;let c={id:qn(l)??`__clip-${s++}`,element:l,parentId:null,children:[]};r.set(l,c)}return Ua(r),{roots:Array.from(r.values()).filter(l=>l.parentId===null)}}var Va="data-hf-authored-duration",za="data-hf-authored-end";function nt(t){if(t==null||t==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}function ja(t){return nt(t.getAttribute("data-duration"))}function qa(t){return nt(t.getAttribute("data-end"))}function $a(t){return nt(t.getAttribute(Va))}function Ka(t){return nt(t.getAttribute(za))}function Ja(t){let e=(t??"").trim();if(!e)return null;let n=nt(e);if(n!=null)return{kind:"absolute",value:n};let i=e.match(/^([A-Za-z0-9_.:-]+)(?:\\s*([+-])\\s*([0-9]*\\.?[0-9]+))?$/);if(!i)return null;let r=(i[1]??"").trim();if(!r)return null;let o=i[2]??"+",s=i[3]??"0",l=Number.parseFloat(s),a=Number.isFinite(l)?Math.max(0,l):0,c=o==="-"?-a:a;return{kind:"reference",refId:r,offset:c}}function je(t){let e=t.timelineRegistry??{},n=t.includeAuthoredTimingAttrs??!1,i=new WeakMap,r=new WeakMap,o=new Set,s=u=>{let m=document.getElementById(u);return m||(document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`)??null)},l=u=>{let m=r.get(u);if(m!==void 0)return m;let f=null,x=ja(u)??(n?$a(u):null);if(x!=null&&x>0&&(f=x),f==null||f<=0){let E=qa(u)??(n?Ka(u):null);if(E!=null){let g=c(u,0),b=E-g;Number.isFinite(b)&&b>0&&(f=b)}}if((f==null||f<=0)&&u instanceof HTMLMediaElement){let E=nt(u.getAttribute("data-playback-start"))??nt(u.getAttribute("data-media-start"))??0;Number.isFinite(u.duration)&&u.duration>E&&(f=(u.duration-E)/Ct(u))}if(f==null||f<=0){let E=u.getAttribute("data-composition-id");if(E){let g=e[E]??null;if(g&&typeof g.duration=="function")try{let b=Number(g.duration());Number.isFinite(b)&&b>0&&(f=b)}catch(b){R("runtime.startResolver.site1",b)}}}return f!=null&&Number.isFinite(f)&&f>0?(r.set(u,f),f):(r.set(u,null),null)},a=(u,m)=>{if(u.hasAttribute("data-composition-id")){let x=u.parentElement?.closest("[data-composition-id]");return x?c(x,m):0}let f=u.closest("[data-composition-id]");return f?c(f,m):0},c=(u,m)=>{let f=i.get(u);if(f!==void 0)return f??m;if(o.has(u))return m;o.add(u);try{let x=Ja(u.getAttribute("data-start"));if(!x){if(u.hasAttribute("data-composition-id")){let _=u.parentElement;if(_&&(_.hasAttribute("data-composition-src")||_.hasAttribute("data-composition-id"))){let L=c(_,m);return i.set(u,L),L}}return i.set(u,m),m}if(x.kind==="absolute"){let _=Math.max(0,x.value),L=Math.max(0,a(u,m)+_);return i.set(u,L),L}let E=s(x.refId);if(!E)return i.set(u,m),m;let g=c(E,0),b=l(E);if(b==null||b<=0){let _=Math.max(0,g+x.offset);return i.set(u,_),_}let F=Math.max(0,g+b+x.offset);return i.set(u,F),F}finally{o.delete(u)}};return{resolveStartForElement:(u,m=0)=>c(u,Math.max(0,m)),resolveDurationForElement:u=>l(u)}}function Tr(t){let e=t.trim().toLowerCase();return!(!e||e==="main"||e.includes("caption")||e.includes("ambient"))}var Ya="data-hf-authored-duration",Xa="data-hf-authored-end";function we(t){if(t==null||t==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}function $n(t){return we(t.getAttribute("data-duration"))??we(t.getAttribute(Ya))}function _r(t){return we(t.getAttribute("data-end"))??we(t.getAttribute(Xa))}function Kn(...t){let e=t.filter(n=>Number.isFinite(n??null));return e.length===0?null:Math.max(...e)}var Lr={composition:0,video:1,image:2,element:3,audio:4};function Qa(t){if(t.length===0)return;let e=new Map;for(let s of t){let l=e.get(s.track)??new Set;l.add(s.kind),e.set(s.track,l)}if(!Array.from(e.values()).some(s=>s.size>1))return;let i=0,r=new Map,o=[...e.keys()].sort((s,l)=>s-l);for(let s of o){let l=e.get(s);if(l.size===1)r.set(`${s}:${[...l][0]}`,i++);else{let a=[...l].sort((c,u)=>(Lr[c]??99)-(Lr[u]??99));for(let c of a)r.set(`${s}:${c}`,i++)}}for(let s of t){let l=`${s.track}:${s.kind}`,a=r.get(l);a!=null&&(s.track=a)}}function Tt(t){let e=String(t??"").trim();if(!e)return null;let n=e.toLowerCase();if(n.startsWith("data:")||n.startsWith("javascript:"))return null;try{return new URL(e,document.baseURI).toString()}catch{return e}}function vr(t){let e=t.getAttribute("src")??t.getAttribute("data-src");if(e)return Tt(e);let n=t.getAttribute("data-composition-src");if(n)return Tt(n);let i=t.querySelector("img[src], video[src], audio[src], source[src]");return i?Tt(i.getAttribute("src")):null}function Za(t){let e=t.className;return typeof e!="string"?null:e.split(/\\s+/).map(n=>n.trim()).find(n=>n&&n!=="clip"&&!n.startsWith("__hf-"))??null}function el(t){if(!t)return null;try{return new URL(t,document.baseURI).pathname.split("/").filter(Boolean).at(-1)??null}catch{return t.split(/[\\\\/]/).filter(Boolean).at(-1)??null}}function tl(t){let e=t.textContent?.replace(/\\s+/g," ").trim();return e?e.length>32?`${e.slice(0,31)}...`:e:null}function Nt(t){let e=t.replace(/\\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\\s+/g," ").trim();return e?e.replace(/\\b\\w/g,n=>n.toUpperCase()):t}function nl(t,e,n){let i=t.getAttribute("data-timeline-label")??t.getAttribute("data-label")??t.getAttribute("aria-label")??null;if(i?.trim())return i.trim();let r=t.getAttribute("data-composition-id");if(r)return Nt(r);let o=t.id;if(o)return Nt(o);let s=Za(t);if(s)return Nt(s);let l=el(vr(t));if(l)return Nt(l);let a=tl(t);return a||`${Nt(e)} ${n+1}`}function kr(t){let n=window.__timelines??{},i=je({timelineRegistry:n,includeAuthoredTimingAttrs:!0}),r=O=>{if(!O)return null;let D=n[O]??null;if(!D||typeof D.duration!="function")return null;try{let B=Number(D.duration());return Number.isFinite(B)&&B>0?B:null}catch{return null}},o=O=>{let D=we(O.getAttribute("data-duration"));if(D!=null&&D>0)return D;let B=we(O.getAttribute("data-playback-start"))??we(O.getAttribute("data-media-start"))??0;return Number.isFinite(O.duration)&&O.duration>B?Math.max(0,(O.duration-B)/Ct(O)):null},s=()=>{let O=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(O.length===0)return null;let D=0;for(let B of O){let ae=B.hasAttribute("data-hf-auto-start")?i.resolveStartForElement(B,0):Math.max(0,Number(B.getAttribute("data-start")??0)||0);if(!Number.isFinite(ae))continue;let re=o(B);re==null||re<=0||(D=Math.max(D,Math.max(0,ae)+re))}return D>0?D:null},l=(O,D)=>{let B=[],ae=null,re=null,j=null,q=O.parentElement;for(;q;){let z=q.getAttribute("data-composition-id");z&&(B.push(z),!j&&q!==D&&(j=z),ae==null&&(ae=i.resolveStartForElement(q,0)),re==null&&(re=we(q.getAttribute("data-duration"))??r(z)??null)),q=q.parentElement}return{parentCompositionId:j,compositionAncestors:B.reverse(),inheritedStart:ae,inheritedDuration:re}},a=document.querySelector("[data-composition-id]"),c=Array.from(document.querySelectorAll("[data-composition-id]")),u=a?.getAttribute("data-composition-id")??null,m=a?i.resolveStartForElement(a,0):0,f=s(),x=f!=null?Math.max(0,f-Math.max(0,m)):null,E=r(u),g=$n(a??document.body),b=Kn(...c.filter(O=>O!==a).map(O=>{let D=i.resolveStartForElement(O,0),B=i.resolveDurationForElement(O)??r(O.getAttribute("data-composition-id"))??null;return!Number.isFinite(D)||B==null||B<=0?null:Math.max(0,D)+B})),F=b!=null?Math.max(0,b-Math.max(0,m)):null,_=typeof E=="number"&&Number.isFinite(E)&&E>0?E:null,L=typeof g=="number"&&Number.isFinite(g)&&g>0?g:null,ee=typeof x=="number"&&Number.isFinite(x)&&x>0?x:null,H=typeof F=="number"&&Number.isFinite(F)&&F>0?F:null,N=Kn(ee,H),y=_!=null&&N!=null&&_>N+1,C=L??(y?N:Kn(_,ee,H))??null,k=(C!=null?m+C:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),W=(O,D)=>!Number.isFinite(D)||D<=0?0:k==null||!Number.isFinite(k)?D:!Number.isFinite(O)||O>=k?0:Math.max(0,Math.min(D,k-O)),G=[],J=[],v=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),ie=0;for(let O=0;O<v.length;O+=1){let D=v[O];if(D===a||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(D.tagName))continue;let B=l(D,a),ae=i.resolveStartForElement(D,B.inheritedStart??0),re=D.getAttribute("data-composition-id"),j=$n(D);if((j==null||j<=0)&&re&&re!==u&&(j=r(re)),(j==null||j<=0)&&D instanceof HTMLMediaElement){let be=we(D.getAttribute("data-playback-start"))??we(D.getAttribute("data-media-start"))??0;Number.isFinite(D.duration)&&D.duration>0&&(j=Math.max(0,D.duration-be))}if(j==null||j<=0){let be=B.inheritedDuration;if(be!=null&&be>0){let Ne=(B.inheritedStart??0)+be;j=Math.max(0,Ne-ae)}}if(j==null||j<=0||(j=W(ae,j),j<=0))continue;let q=ae+j;ie=Math.max(ie,q);let z=D.tagName.toLowerCase(),Le=re&&re!==u?"composition":z==="video"?"video":z==="audio"?"audio":z==="img"?"image":"element";G.push({id:qn(D)??re??null,label:nl(D,Le,G.length),start:ae,duration:j,track:Number.parseInt(D.getAttribute("data-track-index")??D.getAttribute("data-track")??String(O),10)||0,kind:Le,tagName:z,compositionId:D.getAttribute("data-composition-id"),compositionAncestors:B.compositionAncestors,parentCompositionId:B.parentCompositionId,nodePath:null,compositionSrc:Tt(D.getAttribute("data-composition-src")),assetUrl:vr(D),timelineRole:D.getAttribute("data-timeline-role"),timelineLabel:D.getAttribute("data-timeline-label"),timelineGroup:D.getAttribute("data-timeline-group"),timelinePriority:we(D.getAttribute("data-timeline-priority"))})}let Me=new Set(G.map(O=>O.id)),V=a?.getAttribute("data-composition-id")??null,te=V?n[V]??null:null;if(te&&a){let O=te;if(typeof O.getChildren=="function")try{let D=O.getChildren(!0,!0,!1)??[],B=new Map;for(let j of a.children){let q=j;if(!q.id)continue;let z=q.tagName.toLowerCase();z==="script"||z==="style"||z==="link"||B.set(q,{id:q.id,start:1/0,end:-1/0})}let ae=j=>{let q=j;for(;q;){if(B.has(q))return q;if(q===a)return null;q=q.parentElement}return null};for(let j of D){if(typeof j.targets!="function"||typeof j.startTime!="function"||typeof j.duration!="function")continue;let q=j.startTime(),z=j.parent;for(;z&&z!==te&&typeof z.startTime=="function";)q+=z.startTime(),z=z.parent;let Le=q+j.duration();if(!(!Number.isFinite(q)||!Number.isFinite(Le)))for(let be of j.targets()){if(!(be instanceof Element))continue;let Ve=ae(be);if(!Ve)continue;let Ne=B.get(Ve);Ne&&(Ne.start=Math.min(Ne.start,q),Ne.end=Math.max(Ne.end,Le))}}let re=G.length>0?Math.max(...G.map(j=>j.track))+1:0;for(let[j,q]of B){if(q.start===1/0||q.end===-1/0)continue;let z=j;if(Me.has(z.id))continue;let Le=Math.max(0,q.end-q.start);if(Le<=0)continue;let be=W(q.start,Le);be<=0||(ie=Math.max(ie,q.start+be),G.push({id:z.id,label:z.getAttribute("data-timeline-label")??z.getAttribute("data-label")??z.getAttribute("aria-label")??z.id,start:q.start,duration:be,track:Number.parseInt(z.getAttribute("data-track-index")??z.getAttribute("data-track")??"",10)||re,kind:"element",tagName:z.tagName.toLowerCase(),compositionId:z.getAttribute("data-composition-id"),compositionAncestors:V?[V]:[],parentCompositionId:V,nodePath:null,compositionSrc:null,assetUrl:null,timelineRole:z.getAttribute("data-timeline-role"),timelineLabel:z.getAttribute("data-timeline-label"),timelineGroup:z.getAttribute("data-timeline-group"),timelinePriority:we(z.getAttribute("data-timeline-priority"))}),Me.add(z.id))}}catch(D){R("runtime.timeline.site1",D)}}if(a&&C!=null&&C>0){let O=G.length>0?Math.max(...G.map(D=>D.track))+1:0;for(let D of a.children){let B=D;if(!B.id||Me.has(B.id))continue;let ae=B.getAttribute("data-timeline-role");if(ae!=="overlay"&&ae!=="persistent-overlay")continue;let re=B.tagName.toLowerCase();if(re==="script"||re==="style"||re==="link"||re==="meta"||window.getComputedStyle(B).display==="none")continue;let q=W(0,C);q<=0||(ie=Math.max(ie,q),G.push({id:B.id,label:B.getAttribute("data-timeline-label")??B.getAttribute("data-label")??B.getAttribute("aria-label")??B.id,start:0,duration:q,track:Number.parseInt(B.getAttribute("data-track-index")??B.getAttribute("data-track")??"",10)||O,kind:"element",tagName:re,compositionId:B.getAttribute("data-composition-id"),compositionAncestors:V?[V]:[],parentCompositionId:V,nodePath:null,compositionSrc:null,assetUrl:null,timelineRole:ae,timelineLabel:B.getAttribute("data-timeline-label"),timelineGroup:B.getAttribute("data-timeline-group"),timelinePriority:we(B.getAttribute("data-timeline-priority"))}),Me.add(B.id))}}Qa(G);for(let O of c){if(O===a)continue;let D=O.getAttribute("data-composition-id");if(!D||!Tr(D))continue;let B=i.resolveStartForElement(O,0),ae=$n(O);if((ae==null||ae<=0)&&_r(O)!=null){let z=_r(O);ae=Math.max(0,z-B)}let re=r(D),j=ae&&ae>0?ae:re;if(j==null||j<=0)continue;let q=W(B,j);q<=0||J.push({id:D,label:O.getAttribute("data-label")??D,start:B,duration:q,thumbnailUrl:Tt(O.getAttribute("data-thumbnail-url")),avatarName:null})}let U=Math.max(1,ie||1,C??0);return{source:"hf-preview",type:"timeline",durationInFrames:y&&L==null?Number.POSITIVE_INFINITY:Math.max(1,Math.ceil(U*Math.max(1,t.canonicalFps))),clips:G,scenes:J,compositionWidth:we(a?.getAttribute("data-width"))??1920,compositionHeight:we(a?.getAttribute("data-height"))??1080}}var ce=Ca(rs(),1),os=ce.default,Bm=ce.default.stringify,Hm=ce.default.fromJSON,Wm=ce.default.plugin,Gm=ce.default.parse,Um=ce.default.list,Vm=ce.default.document,zm=ce.default.comment,jm=ce.default.atRule,qm=ce.default.rule,$m=ce.default.decl,Km=ce.default.root,Jm=ce.default.CssSyntaxError,Ym=ce.default.Declaration,Xm=ce.default.Container,Qm=ce.default.Processor,Zm=ce.default.Document,ep=ce.default.Comment,tp=ce.default.Warning,np=ce.default.AtRule,ip=ce.default.Result,rp=ce.default.Input,op=ce.default.Rule,sp=ce.default.Root,ap=ce.default.Node;var Si="data-hf-authored-id";function Ai(t){return t.replace(/[.*+?^${}()|[\\]\\\\]/g,"\\\\$&")}function Ei(t){return t.replace(/\\\\/g,"\\\\\\\\").replace(/"/g,\'\\\\"\')}function Cu(t){return t&&t.replace(/[^a-zA-Z0-9_-]/g,n=>`\\\\${n}`).replace(/^-?\\d/,n=>`\\\\${n}`)}function ss(t){let e=t.trim();return e?Array.from(new Set([e,Cu(e)])).filter(Boolean):[]}function Fu(t){return!!t&&/[\\w-]/.test(t)}function Mu(t,e,n){let i=ss(e).sort((l,a)=>a.length-l.length);if(i.length===0)return t;let r="",o=0,s=null;for(let l=0;l<t.length;l+=1){let a=t[l],c=l>0?t[l-1]:"";if(s){r+=a,a===s&&c!=="\\\\"&&(s=null);continue}if(a===\'"\'||a==="\'"){s=a,r+=a;continue}if(a==="["){o+=1,r+=a;continue}if(a==="]"){o=Math.max(0,o-1),r+=a;continue}if(a==="#"&&o===0){let u=i.find(m=>t.startsWith(m,l+1));if(u){let m=t[l+1+u.length];if(!Fu(m)){r+=n,l+=u.length;continue}}}r+=a}return r}function Nu(t,e){let n=e?.trim();return n?Mu(t,n,`[${Si}="${Ei(n)}"]`):t}function Tu(t,e,n,i,r){let o=Nu(t,i),s=_u(o,e,n),l=s.trim();if(!l||/^(html|body|:root|\\*)$/i.test(l))return t;let a=new RegExp(`\\\\[\\\\s*data-composition-id\\\\s*=\\\\s*(["\'])${Ai(n)}\\\\1\\\\s*\\\\]`,"g");if(a.test(l))return s.replace(a,e);let c=s.match(/^\\s*/)?.[0]??"",u=s.match(/\\s*$/)?.[0]??"";if(r){let m=i?`[${Si}="${Ei(i)}"]`:null;if(m&&l.startsWith(m)){let f=l.slice(m.length);return`${c}${e}${m}${f}${u}`}}return`${c}${e} ${l}${u}`}function _u(t,e,n){let i=Ai(n),r=String.raw`\\[\\s*data-composition-id\\s*=\\s*(?:"${i}"|\'${i}\')\\s*\\]`,o=String.raw`\\s*\\[\\s*data-(?:start|duration)\\s*=\\s*(?:"[^"]*"|\'[^\']*\')\\s*\\]`;return t.replace(new RegExp(`${r}(?:${o})+`,"g"),e).replace(new RegExp(`(?:${o})+${r}`,"g"),e)}var Lu=new Set(["keyframes","-webkit-keyframes","font-face"]);function vu(t){return t?.type==="atrule"}function ku(t){let e=t.parent;for(;e;){if(vu(e)&&Lu.has(e.name.toLowerCase()))return!0;e=e.parent}return!1}function wi(t,e,n,i,r){let o=e.trim();if(!t||!o)return t;let s=n||`[data-composition-id="${Ei(o)}"]`,l=os.parse(t);return l.walkRules(a=>{ku(a)||(a.selectors=a.selectors.map(c=>Tu(c,s,o,i,r?.compoundAuthoredRoot)))}),l.toResult({map:!1}).css}function as(t,e,n="[HyperFrames] composition script error:",i,r=e,o){let s=JSON.stringify(e),l=JSON.stringify(r),a=JSON.stringify(n),c=Ai(e),u=JSON.stringify(o?.trim()||null),m=JSON.stringify(i??null),f=JSON.stringify(String.raw`\\[\\s*data-composition-id\\s*=\\s*(?:"${c}"|\'${c}\')\\s*\\]`),x=JSON.stringify(String.raw`\\s*\\[\\s*data-(?:start|duration)\\s*=\\s*(?:"[^"]*"|\'[^\']*\')\\s*\\]`),E=JSON.stringify(ss(o?.trim()||""));return`(function(){\n var __hfCompId = ${s};\n var __hfTimelineCompId = ${l};\n var __hfErrorLabel = ${a};\n var __hfAuthoredRootId = ${u};\n var __hfAuthoredRootAttr = ${JSON.stringify(Si)};\n var __hfEscapeAttr = function(value) {\n return (value + "").replace(/\\\\\\\\/g, "\\\\\\\\\\\\\\\\").replace(/"/g, "\\\\\\\\\\\\"");\n };\n var __hfRootSelector = ${m} || (__hfCompId\n ? \'[data-composition-id="\' + __hfEscapeAttr(__hfCompId) + \'"]\'\n : "");\n var __hfRoot = null;\n var __hfRootSelectorPattern = ${f};\n var __hfTimingSelectorPattern = ${x};\n var __hfAuthoredRootIdForms = ${E};\n var __hfAuthoredRootSelector = __hfAuthoredRootId\n ? "[" + __hfAuthoredRootAttr + \'="\' + __hfEscapeAttr(__hfAuthoredRootId) + \'"]\'\n : "";\n var __hfIsSelectorNameChar = function(char) {\n return !!char && /[\\\\w-]/.test(char);\n };\n var __hfReplaceAuthoredRootIdSelectors = function(selector) {\n if (!__hfAuthoredRootSelector || !__hfAuthoredRootIdForms.length || typeof selector !== "string") {\n return selector;\n }\n var result = "";\n var bracketDepth = 0;\n var quote = null;\n for (var index = 0; index < selector.length; index += 1) {\n var char = selector[index];\n var previousChar = index > 0 ? selector[index - 1] : "";\n if (quote) {\n result += char;\n if (char === quote && previousChar !== "\\\\\\\\") {\n quote = null;\n }\n continue;\n }\n if (char === \'"\' || char === "\'") {\n quote = char;\n result += char;\n continue;\n }\n if (char === "[") {\n bracketDepth += 1;\n result += char;\n continue;\n }\n if (char === "]") {\n bracketDepth = Math.max(0, bracketDepth - 1);\n result += char;\n continue;\n }\n if (char === "#" && bracketDepth === 0) {\n var matchedForm = null;\n for (var formIndex = 0; formIndex < __hfAuthoredRootIdForms.length; formIndex += 1) {\n var form = __hfAuthoredRootIdForms[formIndex];\n if (selector.slice(index + 1, index + 1 + form.length) === form) {\n matchedForm = form;\n break;\n }\n }\n if (matchedForm) {\n var nextChar = selector[index + 1 + matchedForm.length];\n if (!__hfIsSelectorNameChar(nextChar)) {\n result += __hfAuthoredRootSelector;\n index += matchedForm.length;\n continue;\n }\n }\n }\n result += char;\n }\n return result;\n };\n var __hfNormalizeSelector = function(selector) {\n if (!__hfCompId || typeof selector !== "string") return selector;\n var normalized = selector\n .replace(new RegExp(__hfRootSelectorPattern + \'(?:\' + __hfTimingSelectorPattern + \')+\', \'g\'), __hfRootSelector)\n .replace(new RegExp(\'(?:\' + __hfTimingSelectorPattern + \')+\' + __hfRootSelectorPattern, \'g\'), __hfRootSelector);\n if (__hfAuthoredRootSelector) {\n normalized = __hfReplaceAuthoredRootIdSelectors(normalized);\n }\n return normalized;\n };\n var __hfFindRoot = function() {\n if (!__hfRoot && __hfRootSelector) {\n __hfRoot = window.document.querySelector(__hfRootSelector);\n }\n return __hfRoot;\n };\n var __hfContains = function(node) {\n var root = __hfFindRoot();\n return !root || node === root || root.contains(node);\n };\n var __hfQueryAll = function(selector) {\n var root = __hfFindRoot();\n if (!root || typeof selector !== "string") {\n return window.document.querySelectorAll(selector);\n }\n return Array.prototype.filter.call(window.document.querySelectorAll(__hfNormalizeSelector(selector)), function(node) {\n return __hfContains(node);\n });\n };\n var __hfQueryOne = function(selector) {\n var matches = __hfQueryAll(selector);\n return matches[0] || null;\n };\n var __hfGetElementById = function(id) {\n var found = window.document.getElementById(id);\n if (found && __hfContains(found)) return found;\n var root = __hfFindRoot();\n if (!root) return found || null;\n var idValue = id + "";\n if (__hfAuthoredRootId && __hfAuthoredRootId === idValue && root.getAttribute && root.getAttribute(__hfAuthoredRootAttr) === idValue) {\n return root;\n }\n if (root.id === idValue) return root;\n if (typeof root.querySelector !== "function") return null;\n try {\n var authoredRootMatch = root.querySelector(\'[\' + __hfAuthoredRootAttr + \'="\' + __hfEscapeAttr(idValue) + \'"]\');\n if (authoredRootMatch) return authoredRootMatch;\n } catch {}\n if (typeof CSS !== "undefined" && CSS && typeof CSS.escape === "function") {\n try {\n return root.querySelector("#" + CSS.escape(idValue)) || null;\n } catch {}\n }\n try {\n return root.querySelector(\'[id="\' + __hfEscapeAttr(idValue) + \'"]\') || null;\n } catch {}\n return null;\n };\n var __hfScopedDocument = typeof Proxy === "function"\n ? new Proxy(window.document, {\n get: function(target, prop, receiver) {\n if (prop === "querySelector") return __hfQueryOne;\n if (prop === "querySelectorAll") return __hfQueryAll;\n if (prop === "getElementById") return __hfGetElementById;\n var value = Reflect.get(target, prop, target);\n return typeof value === "function" ? value.bind(target) : value;\n },\n })\n : window.document;\n var __hfTimelineRegistryProxy = null;\n var __hfGetTimelineRegistry = function() {\n window.__timelines = window.__timelines || {};\n if (!__hfCompId || __hfCompId === __hfTimelineCompId || typeof Proxy !== "function") {\n return window.__timelines;\n }\n if (!__hfTimelineRegistryProxy) {\n __hfTimelineRegistryProxy = new Proxy(window.__timelines, {\n get: function(target, prop, receiver) {\n return Reflect.get(target, prop === __hfCompId ? __hfTimelineCompId : prop, target);\n },\n set: function(target, prop, value, receiver) {\n return Reflect.set(target, prop === __hfCompId ? __hfTimelineCompId : prop, value, target);\n },\n });\n }\n return __hfTimelineRegistryProxy;\n };\n var __hfScopedWindow = typeof Proxy === "function"\n ? new Proxy(window, {\n get: function(target, prop, receiver) {\n if (prop === "__timelines") return __hfGetTimelineRegistry();\n return Reflect.get(target, prop, target);\n },\n set: function(target, prop, value, receiver) {\n if (prop === "__timelines") {\n target.__timelines = value || {};\n __hfTimelineRegistryProxy = null;\n return true;\n }\n return Reflect.set(target, prop, value, target);\n },\n })\n : window;\n var __hfResolveGsapTarget = function(target) {\n if (typeof target !== "string") return target;\n return __hfQueryAll(target);\n };\n var __hfScopeTimeline = function(timeline) {\n if (!timeline || timeline.__hfScopedCompositionRoot === __hfFindRoot()) return timeline;\n ["to", "from", "fromTo", "set"].forEach(function(method) {\n var original = timeline[method];\n if (typeof original !== "function") return;\n timeline[method] = function(target) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(target);\n return original.apply(timeline, args);\n };\n });\n try {\n Object.defineProperty(timeline, "__hfScopedCompositionRoot", {\n value: __hfFindRoot(),\n configurable: true,\n });\n } catch {\n // Best-effort: timelines coming from user code may have a frozen target\n // or a non-extensible defineProperty path. Swallow \\u2014 the scoped root\n // is an enrichment, not a correctness invariant for playback.\n }\n return timeline;\n };\n var __hfBaseGsap = typeof gsap === "undefined" ? window.gsap : gsap;\n var __hfScopedGsap = !__hfBaseGsap || typeof Proxy !== "function"\n ? __hfBaseGsap\n : new Proxy(__hfBaseGsap, {\n get: function(target, prop, receiver) {\n if (prop === "timeline") {\n return function() {\n return __hfScopeTimeline(target.timeline.apply(target, arguments));\n };\n }\n if (prop === "to" || prop === "from" || prop === "fromTo" || prop === "set") {\n return function(firstArg) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(firstArg);\n return target[prop].apply(target, args);\n };\n }\n if (prop === "utils" && target.utils && typeof Proxy === "function") {\n return new Proxy(target.utils, {\n get: function(utilsTarget, utilsProp, utilsReceiver) {\n if (utilsProp === "toArray") {\n return function(firstArg) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(firstArg);\n return utilsTarget.toArray.apply(utilsTarget, args);\n };\n }\n if (utilsProp === "selector") {\n return function(base) {\n var baseEl = typeof base === "string" ? __hfQueryOne(base) : base;\n var root = baseEl || __hfFindRoot();\n return function(selector) {\n if (!root || typeof selector !== "string") return [];\n return Array.prototype.filter.call(\n window.document.querySelectorAll(__hfNormalizeSelector(selector)),\n function(node) {\n return node === root || (typeof root.contains === "function" && root.contains(node));\n },\n );\n };\n };\n }\n var value = Reflect.get(utilsTarget, utilsProp, utilsTarget);\n return typeof value === "function" ? value.bind(utilsTarget) : value;\n },\n });\n }\n var value = Reflect.get(target, prop, target);\n return typeof value === "function" ? value.bind(target) : value;\n },\n });\n var __hfBaseHyperframes = window.__hyperframes;\n var __hfScopedHyperframes = !__hfBaseHyperframes\n ? __hfBaseHyperframes\n : Object.assign({}, __hfBaseHyperframes, {\n getVariables: function() {\n var byComp = window.__hfVariablesByComp;\n var scoped = byComp && __hfTimelineCompId ? byComp[__hfTimelineCompId] : null;\n return scoped ? Object.assign({}, scoped) : {};\n },\n });\n var __hfRun = function() {\n try {\n (function(document, gsap, window, __hyperframes) {\n${t.replace(/<\\/(script)/gi,"<\\\\/$1")}\n }).call(window, __hfScopedDocument, __hfScopedGsap, __hfScopedWindow, __hfScopedHyperframes);\n } catch (_err) {\n console.error(__hfErrorLabel, __hfCompId, _err);\n }\n };\n __hfFindRoot();\n __hfRun();\n})();`}function ls(){if(typeof document>"u")return{};let t=Ci(document.documentElement),e=Ru();return{...t,...e}}function Ci(t){if(!t)return{};let e=t.getAttribute("data-composition-variables");if(!e)return{};let n;try{n=JSON.parse(e)}catch{return{}}if(!Array.isArray(n))return{};let i={};for(let r of n){if(!r||typeof r!="object")continue;let o=r;typeof o.id!="string"||!("default"in o)||(i[o.id]=o.default)}return i}function Ru(){if(typeof window>"u")return{};let t=window.__hfVariables;return!t||typeof t!="object"||Array.isArray(t)?{}:t}var Du=8e3,Iu=/^(?![a-zA-Z][a-zA-Z\\d+\\-.]*:)(?!\\/\\/)(?!\\/)(?!\\.\\.?\\/).+/;function Pu(t,e){return`${t}__hf${e}`}var Ou=t=>new Promise(e=>{let n=!1,i=Date.now(),r=null,o=s=>{n||(n=!0,r!=null&&window.clearTimeout(r),e({status:s,elapsedMs:Math.max(0,Date.now()-i)}))};t.addEventListener("load",()=>o("load"),{once:!0}),t.addEventListener("error",()=>o("error"),{once:!0}),r=window.setTimeout(()=>o("timeout"),Du)});function Fi(t){for(;t.firstChild;)t.removeChild(t.firstChild);t.textContent=""}var Bu=["data-composition-id","data-composition-file","data-start","data-duration","data-end","data-track-index","data-track","data-composition-src","data-hf-authored-duration","data-hf-authored-end"];function Hu(t){let e=document.importNode(t,!0),n=e.getAttribute("id")?.trim();for(let o of Bu)e.removeAttribute(o);n&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",n)),e.setAttribute("data-hf-inner-root","true");let i=e.getAttribute("data-width"),r=e.getAttribute("data-height");return e.style.width=i?`${i}px`:"100%",e.style.height=r?`${r}px`:"100%",e}function us(t,e){let n=t.trim();if(!n)return t;try{return Iu.test(n)?new URL(n,document.baseURI).toString():e?new URL(n,e).toString():new URL(n,document.baseURI).toString()}catch{return t}}function Wu(t){let e=t.getAttribute("data-variable-values");if(!e)return{};let n;try{n=JSON.parse(e)}catch{return{}}return!n||typeof n!="object"||Array.isArray(n)?{}:n}function Sn(t){let e=(t.getAttribute("data-composition-id")||"").trim()||null;return{authoredCompositionId:(t.getAttribute("data-hf-original-composition-id")||e||"").trim()||null,runtimeCompositionId:e}}function Gu(t){let e=new Map;for(let n of t){let i=Sn(n).authoredCompositionId||"";i&&e.set(i,(e.get(i)||0)+1)}return e}function cs(t){let e=Sn(t).authoredCompositionId;return e?!!document.querySelector(`template#${CSS.escape(e)}-template`):!1}function Uu(t){return!!t.querySelector(\'[data-hf-inner-root="true"]\')}function Vu(t){return t.hasAttribute("data-composition-src")?!0:cs(t)?t.children.length===0||t.hasAttribute("data-hf-original-composition-id")?!0:Uu(t):!1}function Ni(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(e=>e.hasAttribute("data-composition-src")?!0:cs(e))}function ds(){let t=window.__hfVariablesByComp;if(!t)return;let e=new Set(Ni().map(n=>Sn(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(t))e.has(n)||delete t[n]}function fs(t,e=Gu(t)){let n=new Map,i=new Map;for(let r of t){let{authoredCompositionId:o,runtimeCompositionId:s}=Sn(r),l=Vu(r);if(!o){i.set(r,{authoredCompositionId:null,runtimeCompositionId:s});continue}let a=(e.get(o)||0)>1,c=s||o;if(l){let u=a?(n.get(o)||0)+1:0;a&&n.set(o,u),c=a?Pu(o,u):o,a?r.setAttribute("data-hf-original-composition-id",o):r.removeAttribute("data-hf-original-composition-id"),r.setAttribute("data-composition-id",c),s&&s!==c&&window.__hfVariablesByComp&&delete window.__hfVariablesByComp[s]}i.set(r,{authoredCompositionId:o,runtimeCompositionId:c})}return i}async function Mi(t){let e=null;t.authoredCompositionId&&(e=Array.from(t.sourceNode.querySelectorAll("[data-composition-id]")).find(x=>x.getAttribute("data-composition-id")===t.authoredCompositionId)??null);let n=e??t.sourceNode,i=e?.getAttribute("data-composition-id")?.trim()||t.authoredCompositionId||null,r=t.runtimeCompositionId||i||null,o=e?.getAttribute("id")?.trim()||null,s=r?`[data-composition-id="${CSS.escape(r)}"]`:void 0;if(t.headLinks)for(let f of t.headLinks){let x=f.getAttribute("href")||"";x&&(document.head.querySelector(`link[href="${CSS.escape(x)}"]`)||document.head.appendChild(f.cloneNode(!0)))}if(t.headStyles)for(let f of t.headStyles){let x=f.cloneNode(!0);x instanceof HTMLStyleElement&&(i&&(x.textContent=wi(x.textContent||"",i,s,o)),document.head.appendChild(x),t.injectedStyles.push(x))}let l=Array.from(n.querySelectorAll("style"));for(let f of l){let x=f.cloneNode(!0);x instanceof HTMLStyleElement&&(i&&(x.textContent=wi(x.textContent||"",i,s,o)),document.head.appendChild(x),t.injectedStyles.push(x))}let a=[];if(t.headScripts)for(let f of t.headScripts){let x=f.getAttribute("type")?.trim()??"",E=f.getAttribute("src")?.trim()??"";if(E){let g=us(E,t.compositionUrl);a.push({kind:"external",src:g,type:x})}else{let g=f.textContent?.trim()??"";g&&a.push({kind:"inline",content:g,type:x,scopeCompositionId:i})}}let c=Array.from(n.querySelectorAll("script")),u=[...a];for(let f of c){let x=f.getAttribute("type")?.trim()??"",E=f.getAttribute("src")?.trim()??"";if(E){let g=us(E,t.compositionUrl);u.push({kind:"external",src:g,type:x})}else{let g=f.textContent?.trim()??"";g&&u.push({kind:"inline",content:g,type:x,scopeCompositionId:i})}f.parentNode?.removeChild(f)}let m=Array.from(n.querySelectorAll("style"));for(let f of m)f.parentNode?.removeChild(f);if(e){let f=e.getAttribute("data-width"),x=e.getAttribute("data-height"),E=t.parseDimensionPx(f),g=t.parseDimensionPx(x);f&&t.host.setAttribute("data-width",f),x&&t.host.setAttribute("data-height",x),E&&t.host instanceof HTMLElement&&(t.host.style.width=E),g&&t.host instanceof HTMLElement&&(t.host.style.height=g),e.hasAttribute("data-timeline-locked")&&t.host.setAttribute("data-timeline-locked",""),t.host.appendChild(Hu(e))}else t.hasTemplate?t.host.appendChild(document.importNode(n,!0)):t.host.innerHTML=t.fallbackBodyInnerHtml;if(r){let f={...t.declaredVariableDefaults??{},...Wu(t.host)};Object.keys(f).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[r]=f):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[r]}for(let f of u){let x=document.createElement("script");if(f.type&&(x.type=f.type),x.async=!1,f.kind==="external"?x.src=f.src:f.type.toLowerCase()==="module"?x.textContent=f.content:f.scopeCompositionId?x.textContent=as(f.content,f.scopeCompositionId,"[HyperFrames] composition script error:",s,r||f.scopeCompositionId,o):x.textContent=`(function(){${f.content}})();`,document.body.appendChild(x),t.injectedScripts.push(x),f.kind==="external"){let E=await Ou(x);E.status!=="load"&&t.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:t.authoredCompositionId,runtimeCompositionId:t.runtimeCompositionId,hostCompositionSrc:t.hostCompositionSrc,resolvedScriptSrc:f.src,loadStatus:E.status,elapsedMs:E.elapsedMs}})}}}async function ms(t){let e=Ni();if(ds(),e.length===0)return;let n=fs(e),i=e.filter(r=>{if(r.hasAttribute("data-composition-src")||r.children.length>0)return!1;let o=n.get(r)?.authoredCompositionId;return o?!!document.querySelector(`template#${CSS.escape(o)}-template`):!1});if(i.length!==0)for(let r of i){let o=n.get(r),s=o?.authoredCompositionId;if(!s)continue;let l=document.querySelector(`template#${CSS.escape(s)}-template`);Fi(r),await Mi({host:r,authoredCompositionId:s,runtimeCompositionId:o?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:l.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,onDiagnostic:t.onDiagnostic})}}async function ps(t){let e=Ni();if(ds(),e.length===0)return;let n=fs(e),i=e.filter(r=>r.hasAttribute("data-composition-src"));i.length!==0&&await Promise.all(i.map(async r=>{let o=r.getAttribute("data-composition-src");if(!o)return;let s=n.get(r),l=s?.authoredCompositionId||null,a=s?.runtimeCompositionId||l||null,c=null;try{c=new URL(o,document.baseURI)}catch{c=null}Fi(r);try{let u=l!=null?document.querySelector(`template#${CSS.escape(l)}-template`):null;if(u){await Mi({host:r,authoredCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,sourceNode:u.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:c,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,onDiagnostic:t.onDiagnostic});return}let m=await fetch(o);if(!m.ok)throw new Error(`HTTP ${m.status}`);let f=await m.text(),E=new DOMParser().parseFromString(f,"text/html"),g=(l?E.querySelector(`template#${CSS.escape(l)}-template`):null)??E.querySelector("template"),b=g?g.content:E.body,F=g?void 0:Array.from(E.head.querySelectorAll("style")),_=g?void 0:Array.from(E.head.querySelectorAll("script")),L=g?void 0:Array.from(E.head.querySelectorAll(\'link[rel="stylesheet"], link[rel="preconnect"]\'));await Mi({host:r,authoredCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,sourceNode:b,hasTemplate:!!g,fallbackBodyInnerHtml:E.body.innerHTML,compositionUrl:c,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,headStyles:F,headScripts:_,headLinks:L,declaredVariableDefaults:Ci(E.documentElement),onDiagnostic:t.onDiagnostic})}catch(u){t.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,errorMessage:u instanceof Error?u.message:"unknown_error"}}),Fi(r)}}))}function zu(t){return t instanceof HTMLElement?t.dataset.captionWrapper!=="true"?t:t.querySelector(":scope > span")??null:null}function ju(){let t=[],e=document.querySelectorAll(".caption-group");for(let n of e)for(let i of n.children){if(!(i instanceof HTMLElement))continue;let r=i.dataset.captionWrapper==="true"?i.querySelector(":scope > span"):i.tagName==="SPAN"?i:null;r&&t.push(r)}return t}function qu(t){let e=t.parentElement;if(e?.dataset.captionWrapper==="true")return e;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",t.parentNode?.insertBefore(n,t),n.appendChild(t),n}function Ti(){let t=window.gsap;t&&document.querySelectorAll(".caption-group").length!==0&&fetch("caption-overrides.json").then(e=>e.ok?e.json():null).then(e=>{if(!e||!Array.isArray(e)||e.length===0)return;let n=ju();for(let i of e){let r=null;if(i.wordId&&(r=zu(document.getElementById(i.wordId))),!r&&i.wordIndex!==void 0&&(r=n[i.wordIndex]??null),!r)continue;let o={},s={};if(i.x!==void 0&&(o.x=i.x),i.y!==void 0&&(o.y=i.y),i.scale!==void 0&&(o.scale=i.scale),i.rotation!==void 0&&(o.rotation=i.rotation),i.opacity!==void 0&&(s.opacity=i.opacity),i.fontSize!==void 0&&(s.fontSize=`${i.fontSize}px`),i.fontWeight!==void 0&&(s.fontWeight=i.fontWeight),i.fontFamily!==void 0&&(s.fontFamily=i.fontFamily),i.activeColor||i.dimColor){let a=t.getTweensOf(r).filter(u=>u.vars.color!==void 0).sort((u,m)=>u.startTime()-m.startTime()),c=a.length>0?String(a[0].vars.color):"";for(let u of a)String(u.vars.color)===c?i.dimColor&&(u.vars.color=i.dimColor):i.activeColor&&(u.vars.color=i.activeColor);i.dimColor&&t.set(r,{color:i.dimColor})}if(Object.keys(s).length>0&&t.set(r,s),Object.keys(o).length>0){let l=qu(r);t.set(l,o)}}}).catch(()=>{})}var Kt="data-color-grading",$u="rec709",Ye={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,saturation:0},hs=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","saturation"],Ku=[{id:"neutral",label:"Neutral",adjust:{...Ye}},{id:"warm-clean",label:"Warm Clean",adjust:{...Ye,exposure:.05,contrast:.08,highlights:-.08,shadows:.08,temperature:.16,saturation:.06}},{id:"cool-clean",label:"Cool Clean",adjust:{...Ye,contrast:.06,highlights:-.06,shadows:.06,temperature:-.12,tint:.04,saturation:.04}},{id:"soft-boost",label:"Soft Boost",adjust:{...Ye,exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,saturation:.1}},{id:"bright-pop",label:"Bright Pop",adjust:{...Ye,exposure:.12,contrast:.12,whites:.08,blacks:-.04,saturation:.14}},{id:"deep-contrast",label:"Deep Contrast",adjust:{...Ye,exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}}],Ju=new Map(Ku.map(t=>[t.id,t])),Yu=/^\\$(?:\\{([A-Za-z0-9_.:-]+)\\}|([A-Za-z0-9_.:-]+))$/,Xu={exposure:{min:-2,max:2},contrast:{min:-1,max:1},highlights:{min:-1,max:1},shadows:{min:-1,max:1},whites:{min:-1,max:1},blacks:{min:-1,max:1},temperature:{min:-1,max:1},tint:{min:-1,max:1},saturation:{min:-1,max:1}};function $t(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Qu(t,e,n){return Number.isFinite(t)?Math.min(n,Math.max(e,t)):0}function xs(t,e){let n=typeof t=="number"?t:Number(t);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):e}function Zu(t,e){let n=typeof t=="number"?t:Number(t);if(!Number.isFinite(n))return 0;let i=Xu[e];return Qu(n,i.min,i.max)}function ec(t){if(t==null)return null;let e=String(t).trim();return e||null}function tc(t){if(t==null)return null;if(typeof t=="string"){let n=t.trim();return n?{src:n,intensity:1}:null}if(!$t(t))return null;let e=t.src;return typeof e!="string"||e.trim()===""?null:{src:e.trim(),intensity:xs(t.intensity,1)}}function nc(t){if(typeof t=="string"){let e=t.trim();if(!e)return null;if(e.startsWith("{"))try{let n=JSON.parse(e);return $t(n)?n:null}catch{return null}return{preset:e,intensity:1}}return $t(t)?t:null}function ic(t,e){let n=t.trim().match(Yu);if(!n)return t;let i=n[1]??n[2]??"";return i&&Object.hasOwn(e,i)?e[i]:t}function _i(t,e){if(typeof t=="string"){let i=ic(t,e);if(i!==t)return i;let r=t.trim();if(!r.startsWith("{"))return t;try{return _i(JSON.parse(r),e)}catch{return t}}if(!$t(t))return t;let n={};for(let[i,r]of Object.entries(t))n[i]=_i(r,e);return n}function rc(t){return t?Ju.get(t)??null:null}function Li(t){let e=nc(t);if(!e||e.enabled===!1)return null;let n=ec(e.preset),r=rc(n)?.adjust??Ye,o=$t(e.adjust)?e.adjust:{},s=hs.reduce((l,a)=>(l[a]=Zu(o[a]??r[a],a),l),{...Ye});return{enabled:!0,preset:n,intensity:xs(e.intensity,1),adjust:s,lut:tc(e.lut),colorSpace:typeof e.colorSpace=="string"&&e.colorSpace.trim()?e.colorSpace.trim():$u}}function gs(t,e){return Li(_i(t,e))}function Jt(t){return!t?.enabled||t.intensity===0?!1:t.lut&&t.lut.intensity!==0?!0:hs.some(e=>Math.abs(t.adjust[e])>1e-4)}var Ee=class extends Error{constructor(n,i=null){super(i==null?n:`${n} at line ${i}`);xe(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=i}},oc=[0,0,0],sc=[1,1,1],ac=64;function lc(t){let e=!1;for(let n=0;n<t.length;n++){let i=t[n];if(i===\'"\'&&(e=!e),i==="#"&&!e)return t.slice(0,n)}return t}function pt(t,e){let n=Number(t);if(!Number.isFinite(n))throw new Ee(`Invalid number "${t}"`,e);return n}function ys(t,e,n){if(t.length!==3)throw new Ee(`${e} expects three numbers`,n);return[pt(t[0],n),pt(t[1],n),pt(t[2],n)]}function bs(t,e,n){if(!t)throw new Ee(`${e} expects a size`,n);let i=Number(t);if(!Number.isInteger(i)||i<2)throw new Ee(`${e} must be an integer greater than 1`,n);return i}function uc(t,e){if(e[0]<=t[0]||e[1]<=t[1]||e[2]<=t[2])throw new Ee("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function cc(t){let e=/^TITLE\\s+"([^"]*)"\\s*$/i.exec(t);if(e)return e[1]??null;let n=/^TITLE\\s+(.+)\\s*$/i.exec(t);return n&&(n[1]??"").trim()||null}function dc(t){return/^[+-]?(?:\\d|\\.\\d)/.test(t)}function Ss(t,e={}){let n=e.maxSize??ac,i=null,r=oc,o=sc,s=null,l=null,a=[],c=t.replace(/^\\uFEFF/,"").split(/\\r?\\n/);for(let m=0;m<c.length;m++){let f=m+1,x=lc(c[m]??"").trim();if(!x)continue;let E=x.split(/\\s+/),g=(E[0]??"").toUpperCase(),b=E.slice(1);if(g==="TITLE"){i=cc(x);continue}if(g==="DOMAIN_MIN"){r=ys(b,g,f);continue}if(g==="DOMAIN_MAX"){o=ys(b,g,f);continue}if(g==="LUT_1D_SIZE"){s=bs(b[0],g,f);continue}if(g==="LUT_3D_SIZE"){if(l=bs(b[0],g,f),l>n)throw new Ee(`LUT_3D_SIZE ${l} exceeds max ${n}`,f);continue}if(!dc(g)){if(g.startsWith("LUT_"))throw new Ee(`Unsupported cube keyword ${g}`,f);continue}if(!l)throw s?new Ee("1D cube LUTs are not supported yet",f):new Ee("LUT data appears before LUT_3D_SIZE",f);if(E.length!==3)throw new Ee("LUT data rows must contain three numbers",f);a.push(pt(E[0],f),pt(E[1],f),pt(E[2],f))}if(s&&l)throw new Ee("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw s?new Ee("1D cube LUTs are not supported yet"):new Ee("Missing LUT_3D_SIZE");uc(r,o);let u=l*l*l;if(a.length!==u*3)throw new Ee(`Expected ${u} LUT rows for size ${l}, found ${a.length/3}`);return{title:i,size:l,domainMin:r,domainMax:o,data:new Float32Array(a)}}function fc(t){return Number.isFinite(t)?Math.min(1,Math.max(0,t)):0}function vi(t){return Math.round(fc(t)*255)}function As(t){let e=t.size,n=e*e,i=e,r=new Uint8Array(n*i*4);for(let o=0;o<e;o++)for(let s=0;s<e;s++)for(let l=0;l<e;l++){let a=((o*e+s)*e+l)*3,c=(s*n+o*e+l)*4;r[c]=vi(t.data[a]??0),r[c+1]=vi(t.data[a+1]??0),r[c+2]=vi(t.data[a+2]??0),r[c+3]=255}return{width:n,height:i,data:r}}var An=new Map,mc="data-hf-color-grading-canvas",Ms="data-hf-color-grading-source-hidden",pc="__hf_color_grading_canvas__",hc=64,Yt={enabled:!1,position:.5,softness:0,lineWidth:2};function xc(t){let e=window,i=t.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"",r=i?e.__hfVariablesByComp?.[i]:void 0;if(r)return r;let o=e.__hyperframes?.getVariables?.();return o&&typeof o=="object"?o:e.__hfVariables??{}}function ki(t){let e=t.getAttribute(Kt);return e==null?null:gs(e,xc(t))}var gc=["attribute vec2 a_pos;","varying vec2 v_uv;","void main(){"," v_uv = a_pos * 0.5 + 0.5;"," gl_Position = vec4(a_pos, 0.0, 1.0);","}"].join(`\n`),yc=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_lut;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_saturation;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 sampleColor = texture2D(u_source, uv);"," vec3 original = sampleColor.rgb;"," vec3 color = original * pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," color += u_blacks * 0.25 * (1.0 - smoothstep(0.0, 0.35, y));"," color += u_whites * 0.25 * smoothstep(0.65, 1.0, y);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," color = clamp(color, 0.0, 1.0);"," color = clamp(applyLut(color), 0.0, 1.0);"," vec3 graded = mix(original, color, u_intensity);"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`\n`);function ot(t){return t instanceof HTMLVideoElement||t instanceof HTMLImageElement}function Es(t,e,n){let i=t.createShader(n);return i?(t.shaderSource(i,e),t.compileShader(i),t.getShaderParameter(i,t.COMPILE_STATUS)?i:(R("runtime.colorGrading.compileShader",t.getShaderInfoLog(i)),t.deleteShader(i),null)):null}function bc(t){let e=Es(t,gc,t.VERTEX_SHADER),n=Es(t,yc,t.FRAGMENT_SHADER);if(!e||!n)return e&&t.deleteShader(e),n&&t.deleteShader(n),null;let i=t.createProgram();return i?(t.attachShader(i,e),t.attachShader(i,n),t.linkProgram(i),t.deleteShader(e),t.deleteShader(n),t.getProgramParameter(i,t.LINK_STATUS)?i:(R("runtime.colorGrading.linkProgram",t.getProgramInfoLog(i)),t.deleteProgram(i),null)):null}function ws(t,e=t.LINEAR){let n=t.createTexture();return n?(t.bindTexture(t.TEXTURE_2D,n),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,e),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,null),n):null}function Sc(t){let e=t.getContext("webgl",{alpha:!0,premultipliedAlpha:!1,preserveDrawingBuffer:!0});if(!e)return null;let n=bc(e),i=ws(e),r=ws(e,e.NEAREST);if(!n||!i||!r)return n&&e.deleteProgram(n),i&&e.deleteTexture(i),r&&e.deleteTexture(r),null;let o=e.createBuffer();return o?(e.bindBuffer(e.ARRAY_BUFFER,o),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{gl:e,program:{program:n,texture:i,lutTexture:r,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),lut:e.getUniformLocation(n,"u_lut"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),exposure:e.getUniformLocation(n,"u_exposure"),contrast:e.getUniformLocation(n,"u_contrast"),highlights:e.getUniformLocation(n,"u_highlights"),shadows:e.getUniformLocation(n,"u_shadows"),whites:e.getUniformLocation(n,"u_whites"),blacks:e.getUniformLocation(n,"u_blacks"),temperature:e.getUniformLocation(n,"u_temperature"),tint:e.getUniformLocation(n,"u_tint"),saturation:e.getUniformLocation(n,"u_saturation"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}}):(e.deleteProgram(n),e.deleteTexture(i),e.deleteTexture(r),null)}function Ac(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Ec(t){if(!Ac(t))return{...Yt};let e=(n,i,r,o)=>{let s=typeof n=="number"?n:Number(n);return Math.min(o,Math.max(r,Number.isFinite(s)?s:i))};return{enabled:t.enabled===!0,position:e(t.position,Yt.position,0,1),softness:e(t.softness,Yt.softness,0,.25),lineWidth:e(t.lineWidth,Yt.lineWidth,0,12)}}function Ns(t){try{let e=new URL(t,document.baseURI);return e.protocol==="data:"?{href:e.href}:e.protocol!=="http:"&&e.protocol!=="https:"?{error:"LUT must be project-local or a data URL"}:e.origin!==window.location.origin?{error:"Remote LUT URLs are not supported"}:{href:e.href}}catch{return{error:"Invalid LUT URL"}}}function Di(t){return t instanceof Error?t.message:"LUT failed to load"}function wc(t){let e=Ns(t);if("error"in e)return{state:"error",message:e.error};let n=An.get(e.href);if(n)return n;let i=fetch(e.href,{credentials:"same-origin"}).then(o=>{if(!o.ok)throw new Error(`Failed to load LUT (${o.status})`);return o.text()}).then(o=>Ss(o,{maxSize:hc})),r={state:"pending",promise:i};return An.set(e.href,r),i.then(o=>An.set(e.href,{state:"ready",lut:o}),o=>An.set(e.href,{state:"error",message:Di(o)})),r}function Cs(t,e,n){if(t.lut?.src===e)return t.lut;let i=As(n),{gl:r,program:o}=t;try{return r.activeTexture(r.TEXTURE1),r.bindTexture(r.TEXTURE_2D,o.lutTexture),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,i.width,i.height,0,r.RGBA,r.UNSIGNED_BYTE,i.data),t.lut={src:e,title:n.title,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:i.width,textureHeight:i.height},t.lutError=null,t.lutLoadingSrc=null,t.lut}catch(s){return t.lut=null,t.lutError=Di(s),t.lutLoadingSrc=null,R("runtime.colorGrading.uploadLut",s),null}}function Cc(t){let e=t.grading.lut?.src.trim()??"",n=t.grading.lut?.intensity??1;if(!e||n<=0)return t.lut=null,t.lutLoadingSrc=null,t.lutError=null,null;let i=Ns(e);if("error"in i)return t.lut=null,t.lutLoadingSrc=null,t.lutError=i.error,null;if(t.lut?.src===i.href)return t.lut;t.lut=null;let r=wc(e);return r.state==="ready"?Cs(t,i.href,r.lut):r.state==="error"?(t.lutError=r.message,t.lutLoadingSrc=null,null):(t.lutLoadingSrc!==i.href&&(t.lutLoadingSrc=i.href,t.lutError=null,r.promise.then(o=>{t.destroyed||t.grading.lut?.src.trim()!==e||(Cs(t,i.href,o),Ge(t))},o=>{t.destroyed||t.grading.lut?.src.trim()!==e||(t.lut=null,t.lutError=Di(o),t.lutLoadingSrc=null,Ge(t))})),null)}function Ri(t){if(!t)return null;if(typeof t=="string"){let e=t.trim();if(!e)return null;let n=document.getElementById(e.replace(/^#/,""));if(n&&ot(n))return n;try{let i=document.querySelector(e);return i&&ot(i)?i:null}catch{return null}}if(t.hfId){let e=document.querySelector(`[data-hf-id="${CSS.escape(t.hfId)}"]`);if(e&&ot(e))return e}if(t.id){let e=document.getElementById(t.id);if(e&&ot(e))return e}if(!t.selector)return null;try{let e=Array.from(document.querySelectorAll(t.selector)),n=Math.max(0,Math.floor(Number(t.selectorIndex??0)||0)),i=e[n]??null;return i&&ot(i)?i:null}catch{return null}}function Fc(t){return t instanceof HTMLVideoElement?t.videoWidth>0&&t.videoHeight>0?{width:t.videoWidth,height:t.videoHeight}:null:t instanceof HTMLImageElement&&t.naturalWidth>0&&t.naturalHeight>0?{width:t.naturalWidth,height:t.naturalHeight}:null}function Ts(t){return t instanceof HTMLVideoElement?t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&t.videoWidth>0&&t.videoHeight>0:t instanceof HTMLImageElement?t.complete&&t.naturalWidth>0&&t.naturalHeight>0:!1}function Mc(t){if(!t.id)return null;let e=document.getElementById(`__render_frame_${t.id}__`);return e instanceof HTMLImageElement&&Ts(e)?e:null}function Nc(t){if(t instanceof HTMLVideoElement){let e=Mc(t);if(e)return e}return Ts(t)?t:null}function Fs(t,e){let n=t.toLowerCase();if(n==="center")return .5;if(e==="x"){if(n==="left")return 0;if(n==="right")return 1}else{if(n==="top")return 0;if(n==="bottom")return 1}if(n.endsWith("%")){let i=Number.parseFloat(n);return Number.isFinite(i)?i/100:null}return null}function Tc(t){let e=t.trim().split(/\\s+/).filter(Boolean),n=.5,i=.5;for(let r=0;r<e.length;r++){let o=e[r]??"",s=Fs(o,"x"),l=Fs(o,"y");if(s!==null&&(o==="left"||o==="right"||o.endsWith("%")&&r===0)){n=s;continue}if(l!==null&&(o==="top"||o==="bottom"||o.endsWith("%")&&r>0)){i=l;continue}}return{x:n,y:i}}function _c(t,e,n,i,r,o){if(t<=0||e<=0||n<=0||i<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let s=r||"fill",l=t,a=e;if(s==="contain"||s==="cover"||s==="scale-down"){let f=s==="cover"?Math.max(t/n,e/i):Math.min(t/n,e/i);l=n*f,a=i*f,s==="scale-down"&&l>n&&a>i&&(l=n,a=i)}else s==="none"&&(l=n,a=i);let c=Tc(o||"center"),u=(t-l)*c.x/t,m=(e-a)*c.y/e;return{scaleX:l/t,scaleY:a/e,offsetX:u,offsetY:m}}function Lc(t,e){window.getComputedStyle(e).position==="static"&&(t.touchedParent||(t.touchedParent=e,t.parentInlinePosition=e.style.position||null),e.style.position="relative")}function vc(t,e){let{element:n,canvas:i}=t,r=n.parentElement;r&&Lc(t,r);let o=window.getComputedStyle(e);wr(i.style,o),i.style.pointerEvents="none",i.style.position="absolute",i.style.inset="auto",i.style.left=`${n.offsetLeft}px`,i.style.top=`${n.offsetTop}px`,i.style.right="auto",i.style.bottom="auto",i.style.width=`${n.offsetWidth}px`,i.style.height=`${n.offsetHeight}px`,i.style.display="block",i.style.opacity=t.sourceOpacityForCanvas,i.style.visibility=t.sourceVisibleForCanvas?"visible":"hidden";let s=n.getBoundingClientRect(),l=Math.max(0,Math.round(n.offsetWidth||s.width)),a=Math.max(0,Math.round(n.offsetHeight||s.height));return l<=0||a<=0?(i.style.display="none",null):(i.width!==l&&(i.width=l),i.height!==a&&(i.height=a),{width:l,height:a})}function kc(t,e,n,i,r,o,s){t.uniform1i(e.source,0),t.uniform1i(e.lut,1),t.uniform2f(e.resolution,o.width,o.height),t.uniform2f(e.uvScale,s.scaleX,s.scaleY),t.uniform2f(e.uvOffset,s.offsetX,s.offsetY),t.uniform1f(e.lutEnabled,i?1:0),t.uniform1f(e.lutSize,i?.size??2),t.uniform2f(e.lutTextureSize,i?.textureWidth??1,i?.textureHeight??1),t.uniform3f(e.lutDomainMin,i?.domainMin[0]??0,i?.domainMin[1]??0,i?.domainMin[2]??0),t.uniform3f(e.lutDomainMax,i?.domainMax[0]??1,i?.domainMax[1]??1,i?.domainMax[2]??1),t.uniform1f(e.lutIntensity,n.lut?.intensity??0),t.uniform1f(e.exposure,n.adjust.exposure),t.uniform1f(e.contrast,n.adjust.contrast),t.uniform1f(e.highlights,n.adjust.highlights),t.uniform1f(e.shadows,n.adjust.shadows),t.uniform1f(e.whites,n.adjust.whites),t.uniform1f(e.blacks,n.adjust.blacks),t.uniform1f(e.temperature,n.adjust.temperature),t.uniform1f(e.tint,n.adjust.tint),t.uniform1f(e.saturation,n.adjust.saturation),t.uniform1f(e.intensity,n.intensity),t.uniform1f(e.compareEnabled,r.enabled?1:0),t.uniform1f(e.comparePosition,r.position),t.uniform1f(e.compareSoftness,r.softness),t.uniform1f(e.compareLineWidth,r.lineWidth)}function Rc(t){t.sourceHidden||(t.sourceInlineOpacity=t.element.style.getPropertyValue("opacity")||null,t.sourceInlineOpacityPriority=t.element.style.getPropertyPriority("opacity")),t.element.setAttribute(Ms,"true"),t.element.style.setProperty("opacity","0","important"),t.sourceHidden=!0}function Ge(t){if(t.destroyed)return!1;let e=Nc(t.element);if(!e)return t.hasDrawn||(t.canvas.style.display="none"),!1;let n=Fc(e);if(!n)return!1;let i=e instanceof HTMLElement?e:t.element,r=t.element.style.getPropertyValue("opacity"),o=t.element.style.getPropertyPriority("opacity"),s=t.sourceHidden&&r==="0"&&o==="important",l=t.element.style.getPropertyValue("visibility");if(!s){let x=window.getComputedStyle(t.element);t.sourceOpacityForCanvas=x.opacity||"1",t.sourceVisibleForCanvas=l!=="hidden"&&x.visibility!=="hidden"}let a=vc(t,i);if(!a)return!1;let c=window.getComputedStyle(i),u=_c(a.width,a.height,n.width,n.height,c.objectFit,c.objectPosition),{gl:m,program:f}=t;try{let x=Cc(t);return m.viewport(0,0,a.width,a.height),m.useProgram(f.program),m.activeTexture(m.TEXTURE0),m.bindTexture(m.TEXTURE_2D,f.texture),m.pixelStorei(m.UNPACK_FLIP_Y_WEBGL,!0),m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,e),m.activeTexture(m.TEXTURE1),m.bindTexture(m.TEXTURE_2D,f.lutTexture),kc(m,f,t.grading,x,t.compare,a,u),m.enableVertexAttribArray(f.position),m.vertexAttribPointer(f.position,2,m.FLOAT,!1,0,0),m.drawArrays(m.TRIANGLE_STRIP,0,4),Rc(t),t.hasDrawn=!0,!0}catch(x){return R("runtime.colorGrading.drawEntry",x),!1}}function Xe(t,e,n,i){e.addEventListener(n,i),t.cleanup.push(()=>e.removeEventListener(n,i))}function Dc(t){t.animationFrame!==null&&(window.cancelAnimationFrame(t.animationFrame),t.animationFrame=null),t.videoFrameHandle!==null&&t.element instanceof HTMLVideoElement&&(t.element.cancelVideoFrameCallback?.(t.videoFrameHandle),t.videoFrameHandle=null)}function Xt(t){if(t.destroyed||!(t.element instanceof HTMLVideoElement)||t.videoFrameHandle!==null||t.animationFrame!==null)return;let e=t.element,n=e;if(typeof n.requestVideoFrameCallback=="function"){t.videoFrameHandle=n.requestVideoFrameCallback(()=>{t.videoFrameHandle=null,Ge(t),!t.destroyed&&!e.paused&&!e.ended&&Xt(t)});return}t.animationFrame=window.requestAnimationFrame(()=>{t.animationFrame=null,Ge(t),!t.destroyed&&!e.paused&&!e.ended&&Xt(t)})}function Ic(t){let e=()=>{Ge(t)};Xe(t,t.element,"load",e),Xe(t,t.element,"loadedmetadata",e),Xe(t,t.element,"loadeddata",e),Xe(t,t.element,"seeked",e),Xe(t,t.element,"timeupdate",e),Xe(t,window,"resize",e),t.element instanceof HTMLVideoElement&&(Xe(t,t.element,"play",()=>Xt(t)),Xe(t,t.element,"pause",e)),typeof ResizeObserver<"u"&&(t.resizeObserver=new ResizeObserver(e),t.resizeObserver.observe(t.element))}function Pc(t){if(!t.destroyed){t.destroyed=!0,Dc(t),t.resizeObserver?.disconnect();for(let e of t.cleanup)e();if(t.cleanup.length=0,t.canvas.remove(),t.gl.deleteTexture(t.program.texture),t.gl.deleteTexture(t.program.lutTexture),t.gl.deleteProgram(t.program.program),t.sourceHidden){t.element.removeAttribute(Ms);let e=t.element.style.getPropertyValue("opacity"),n=t.element.style.getPropertyPriority("opacity");e==="0"&&n==="important"&&(t.sourceInlineOpacity===null?t.element.style.removeProperty("opacity"):t.element.style.setProperty("opacity",t.sourceInlineOpacity,t.sourceInlineOpacityPriority))}t.touchedParent&&(t.parentInlinePosition===null?t.touchedParent.style.removeProperty("position"):t.touchedParent.style.position=t.parentInlinePosition)}}function Oc(t){let e=document.createElement("canvas");return e.className=pc,e.setAttribute(mc,"true"),e.setAttribute("data-hyperframes-ignore",""),e.setAttribute("data-hyperframes-picker-ignore",""),e.setAttribute("data-hf-ignore",""),e.setAttribute("aria-hidden","true"),e.style.pointerEvents="none",e.style.display="none",t.parentNode?.insertBefore(e,t.nextSibling),e}function _s(){let t=new WeakMap,e=new Set,n=null,i=!1,r=(g,b,F)=>{let _=t.get(g);if(_)return _.grading=b,_.source=F,Ge(_),g instanceof HTMLVideoElement&&!g.paused&&Xt(_),!0;let L=Oc(g),ee=Sc(L);if(!ee)return L.remove(),!1;let H={element:g,canvas:L,gl:ee.gl,program:ee.program,grading:b,compare:{...Yt},lut:null,lutLoadingSrc:null,lutError:null,source:F,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(g).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(g).visibility!=="hidden",hasDrawn:!1,destroyed:!1};return t.set(g,H),e.add(g),Ic(H),Ge(H),g instanceof HTMLVideoElement&&!g.paused&&Xt(H),!0},o=(g,b)=>{if(i)return!1;let F=Ri(g);if(!F)return!1;let _=t.get(F);if(!_){let L=ki(F);if(!Jt(L)||!r(F,L,"attribute"))return!1;_=t.get(F)}return _?(_.compare=Ec(b),Ge(_),!0):!1},s=g=>{let b=t.get(g);b&&(Pc(b),t.delete(g),e.delete(g))},l=()=>{if(i)return 0;let g=new Set;document.querySelectorAll(`video[${Kt}], img[${Kt}]`).forEach(F=>{if(!ot(F))return;g.add(F);let _=ki(F);Jt(_)?r(F,_,"attribute"):s(F)});for(let F of Array.from(e)){let _=t.get(F);_&&(!F.isConnected||_.source==="attribute"&&!g.has(F))&&s(F)}return e.size},a=()=>{if(i)return 0;let g=0;for(let b of Array.from(e,F=>t.get(F)))b&&Ge(b)&&(g+=1);return g},c=(g,b)=>{if(i)return!1;let F=Ri(g);if(!F)return!1;let _=Li(b);return Jt(_)?r(F,_,"live"):(s(F),!0)},u=(g,b)=>{if(!ot(g))return!1;let F=t.get(g);return F?(F.sourceVisibleForCanvas=b,!0):!1},m=g=>{let b=Ri(g);if(!b)return{state:"missing",message:"Media not found"};let F=t.get(b);if(F)return F.lutError?{state:"unavailable",message:F.lutError}:F.grading.lut&&F.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:F.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:F.lut?"Shader + LUT active":"Shader active"};let _=ki(b);return Jt(_)?{state:"unavailable",message:"WebGL unavailable"}:{state:"inactive",message:"No grading applied"}},f=()=>{if(!i){i=!0,n?.disconnect(),n=null;for(let g of Array.from(e))s(g)}};document.body&&(n=new MutationObserver(()=>l()),n.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[Kt]}));let x={refresh:l,redraw:a,setGrading:c,setCompare:o,setSourceVisibility:u,getStatus:m,destroy:f},E=window;return E.__hf=E.__hf||{},E.__hf.colorGrading=x,l(),x}var En=class{constructor(e){xe(this,"_baseTime",0);xe(this,"_playStartMs",null);xe(this,"_rate",1);xe(this,"_duration",1/0);xe(this,"_nowMs");xe(this,"_audioSource",null);this._baseTime=e?.initialTime??0,this._rate=e?.rate??1,this._duration=e?.duration??1/0,this._nowMs=e?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let i=null;if("currentTimeSeconds"in this._audioSource)i=this._audioSource.currentTimeSeconds;else{let{el:r,compositionStart:o,mediaStart:s}=this._audioSource;!r.paused&&Number.isFinite(r.currentTime)&&(i=(r.currentTime-s)/(r.playbackRate>0?r.playbackRate:1)*this._rate+o)}if(i!==null)return Number.isFinite(this._duration)&&i>=this._duration?this._duration:Math.max(0,i)}let e=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+e*this._rate;return Number.isFinite(this._duration)&&n>=this._duration?this._duration:Math.max(0,n)}play(){return this._playStartMs!==null||Number.isFinite(this._duration)&&this._baseTime>=this._duration?!1:(this._playStartMs=this._nowMs(),!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(e){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(e,this._duration)):Math.max(0,e);this._baseTime=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs())}isPlaying(){return this._playStartMs!==null}setRate(e){let n=Number.isFinite(e)&&e>0?Math.max(.1,Math.min(5,e)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs()),this._rate=n}getRate(){return this._rate}setDuration(e){this._duration=Number.isFinite(e)&&e>0?e:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}attachAudioSource(e){this._audioSource=e}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs()),this._audioSource=null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:e}=this._audioSource;if(!e.paused&&Number.isFinite(e.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){return Number.isFinite(this._duration)&&this.now()>=this._duration}};function Ls(t){return!Number.isFinite(t)||t<=0?1:t}function Bc(t,e){e||t.paused||!nn().__hfDebug||console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",t.currentSrc||t.getAttribute("src")||"")}function Hc(t,e){let{elapsed:n,mediaStart:i,scheduledAt:r,safeRate:o,clipDuration:s}=e,l=Number.isFinite(s)&&s>0,a=s*o;if(n>=0){let u=a-n;return l&&u<=0?!1:(l?t.start(0,n+i,u):t.start(0,n+i),!0)}let c=-n/o;return l?t.start(r+c,i,a):t.start(r+c,i),!0}var wn=class{constructor(){xe(this,"_ctx",null);xe(this,"_bufferCache",new Map);xe(this,"_failedSrcs",new Set);xe(this,"_activeSources",[]);xe(this,"_masterGain",null);xe(this,"_rateAnchorCtx",0);xe(this,"_rateAnchorComp",0);xe(this,"_rate",1);xe(this,"_paused",!0);xe(this,"_playGeneration",0)}async init(){try{return this._ctx=new AudioContext,this._masterGain=this._ctx.createGain(),this._masterGain.connect(this._ctx.destination),!0}catch{return!1}}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}async decodeAudioElement(e){let n=e.currentSrc||e.getAttribute("src");if(!n)return null;if(this._bufferCache.has(n))return this._bufferCache.get(n);if(this._failedSrcs.has(n)||!this._ctx)return null;let i;try{let r=await fetch(n,{cache:"no-store"});if(!r.ok)return R("webAudioTransport.fetch",new Error(`${r.status} ${n}`)),null;i=await r.arrayBuffer()}catch(r){return R("webAudioTransport.fetch",r),null}try{let r=await this._ctx.decodeAudioData(i);return this._bufferCache.set(n,r),r}catch(r){return this._failedSrcs.add(n),R("webAudioTransport.decode",r),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}async schedulePlayback(e,n,i,r,o,s,l,a=1,c=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),l!==this._playGeneration)return null;let u=Ls(a),m=this._ctx.createBufferSource();m.buffer=n,m.playbackRate.value=u;let f=this._ctx.createGain();f.gain.value=s,m.connect(f),f.connect(this._masterGain);let x=o-i,E=this._ctx.currentTime;if(this._rate=u,this._rateAnchorCtx=E,this._rateAnchorComp=o,!Hc(m,{elapsed:x,mediaStart:r,scheduledAt:E,safeRate:u,clipDuration:c}))return m.disconnect(),f.disconnect(),null;let g=e.muted;e.muted=!0,Bc(e,g);let b={el:e,sourceNode:m,gainNode:f,compositionStart:i,mediaStart:r,scheduledAt:E,priorMuted:g,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(b),this._paused=!1,m.addEventListener("ended",()=>{let F=this._activeSources.indexOf(b);F!==-1&&(this._activeSources.splice(F,1),e.muted=g,this._activeSources.length===0&&(this._paused=!0))}),b}catch(u){return R("webAudioTransport.schedule",u),null}}setRate(e){let n=Ls(e);if(n===this._rate)return!1;this._ctx&&!this._paused&&(this._rateAnchorComp=this.getTime(),this._rateAnchorCtx=this._ctx.currentTime),this._rate=n;for(let i of this._activeSources)try{i.sourceNode.playbackRate.value=n}catch(r){R("webAudioTransport.setRate",r)}return!0}hasBoundedActiveSources(){return this._activeSources.some(e=>e.bounded)}stopAll(){for(let e of this._activeSources){try{e.sourceNode.stop(),e.sourceNode.disconnect(),e.gainNode.disconnect()}catch{}e.el.muted=e.priorMuted}this._activeSources=[],this._paused=!0}setVolume(e){this._masterGain&&(this._masterGain.gain.value=Math.max(0,Math.min(1,e)))}setElementVolume(e,n){let i=Math.max(0,Math.min(1,n));for(let r of this._activeSources)if(r.el===e)try{r.gainNode.gain.value=i}catch(o){R("webAudioTransport.setElementVolume",o)}}setMuted(e){this._masterGain&&(this._masterGain.gain.value=e?0:1)}isActive(){return this._activeSources.length>0&&!this._paused}ownsElement(e){return!this._paused&&this._activeSources.some(n=>n.el===e)}destroy(){if(this.stopAll(),this._bufferCache.clear(),this._failedSrcs.clear(),this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null}};var vs="data-hf-studio-manual-edit-gesture";var Ii="data-hf-authored-duration",Pi="data-hf-authored-end";function ks(){let t=Mr(),e=null,n=null,i=null,r=[],o=new Set,s=null;if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(d){R("runtime.init.site1",d)}document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden"),window.__timelines=window.__timelines||{};let l=d=>{r.push(d)},a=(d,p,h)=>{let S=h??`${d}:${JSON.stringify(p)}`;o.has(S)||(o.add(S),Ae({source:"hf-preview",type:"diagnostic",code:d,details:p}))},c=d=>{let p={scale:1,focusX:960,focusY:540},h=[],S=[],w={time:d.getTime(),duration:d.getDuration(),isPlaying:d.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:d.play,pause:d.pause,seek:d.seek,getTime:d.getTime,getDuration:d.getDuration,isPlaying:d.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>p,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>h,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:d.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...w,time:d.getTime(),duration:d.getDuration(),isPlaying:d.isPlaying()})}},u=1/60,m=.75,f=2,x=.05,E=100,g=240,b=d=>{if(d instanceof Error)return d.message||String(d);if(typeof d=="string")return d;try{return JSON.stringify(d)}catch{return String(d??"")}},F=d=>{let p=d.toLowerCase();return p.includes("cannot read properties of null")||p.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:p.includes("failed to execute \'queryselector\'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:p.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},_=d=>{if(d==null||d.trim()==="")return null;let p=Number.parseFloat(d);return!Number.isFinite(p)||p<=0?null:`${p}px`},L=()=>{let d=document.querySelector(\'[data-composition-id][data-root="true"]\');if(d instanceof HTMLElement)return d;let p=Array.from(document.querySelectorAll("[data-composition-id]"));return p.length===0?null:p.find(h=>!h.parentElement?.closest("[data-composition-id]"))??p[0]??null},ee=()=>{let d=L();if(!d)return;let p=_(d.getAttribute("data-width")),h=_(d.getAttribute("data-height"));p&&(d.style.width=p),h&&(d.style.height=h),p&&d.style.setProperty("--comp-width",p),h&&d.style.setProperty("--comp-height",h)},H=()=>{let d=L(),p=Array.from(document.querySelectorAll("[data-composition-id]")).filter(h=>h.hasAttribute("data-duration")||h.hasAttribute("data-end"));for(let h of p){if(d&&h===d)continue;let S=h.getAttribute("data-duration"),w=h.getAttribute("data-end");S!=null&&!h.hasAttribute(Ii)&&h.setAttribute(Ii,S),w!=null&&!h.hasAttribute(Pi)&&h.setAttribute(Pi,w),h.removeAttribute("data-duration"),h.removeAttribute("data-end")}},N=()=>{let d=L();if(!d)return;d.style.position||(d.style.position="relative"),d.style.overflow="hidden";let p=_(d.getAttribute("data-width")),h=_(d.getAttribute("data-height"));p&&(d.style.width=p),h&&(d.style.height=h);let S=Array.from(d.children);for(let w of S){let T=w.tagName.toLowerCase();if(T==="script"||T==="style"||T==="link"||T==="meta"||!w.hasAttribute("data-start"))continue;let I=(w.style.top==="0px"||w.style.top==="0")&&(w.style.left==="0px"||w.style.left==="0")&&w.style.width==="100%"&&w.style.height==="100%",$=/translate\\(\\s*-50%\\s*,\\s*-50%\\s*\\)/.test(w.style.transform);if(I&&$&&!w.hasAttribute("data-width")&&!w.hasAttribute("data-height")){let ze=w.style.top,ge=w.style.left,St=w.style.width,le=w.style.height;w.style.top="",w.style.left="",w.style.width="",w.style.height="";let Z=window.getComputedStyle(w);Z.top!=="auto"||Z.bottom!=="auto"||Z.left!=="auto"||Z.right!=="auto"||Z.width!=="0px"||Z.height!=="0px"||(w.style.top=ze,w.style.left=ge,w.style.width=St,w.style.height=le)}let Q=window.getComputedStyle(w),pe=Q.position;if(pe!=="absolute"&&pe!=="fixed"&&(w.style.position="absolute"),!!w.style.top||!!w.style.bottom||Q.top!=="auto"||Q.bottom!=="auto"||(w.style.top="0"),!!w.style.left||!!w.style.right||Q.left!=="auto"||Q.right!=="auto"||(w.style.left="0"),T!=="audio"){let ze=_(w.getAttribute("data-width")),ge=_(w.getAttribute("data-height")),St=Q.width!=="0px"&&Q.width!=="auto",le=Q.height!=="0px"&&Q.height!=="auto";ze?!w.style.width&&!St&&(w.style.width=ze):!w.style.width&&Q.width==="0px"&&(w.style.width="100%"),ge?!w.style.height&&!le&&(w.style.height=ge):!w.style.height&&Q.height==="0px"&&(w.style.height="100%")}}},y=(d,p=0,h)=>je({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:h?.includeAuthoredTimingAttrs??!0}).resolveStartForElement(d,p),A=(d,p)=>je({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:p?.includeAuthoredTimingAttrs??!0}).resolveDurationForElement(d),C=(d,p=0)=>!d.hasAttribute("data-hf-auto-start")&&d.hasAttribute("data-start")?Math.max(0,Number(d.getAttribute("data-start")??0)||0):y(d,p),M=(d,p)=>{let h=d.tagName.toLowerCase();if(h==="script"||h==="style"||h==="link"||h==="meta")return!1;let S=h==="video"||h==="audio"?C(d,0):y(d,0),w=A(d),T=d.getAttribute("data-composition-id");if(T){let $=(window.__timelines??{})[T],Q=null;if($&&typeof $.duration=="function"){let he=Number($.duration());Number.isFinite(he)&&he>0&&(Q=he)}!(d.hasAttribute("data-duration")||d.hasAttribute("data-end")||d.hasAttribute(Ii)||d.hasAttribute(Pi))&&(w==null||w<=0)&&Q!=null&&(w=Q)}let I=w!=null&&w>0?S+w:Number.POSITIVE_INFINITY;return p>=S&&(Number.isFinite(I)?p<=I:!0)},k=!!document.querySelector("[data-composition-src]"),W=!1;{let d=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let p of d){let h=p.getAttribute("data-composition-id");if(h&&p.children.length===0&&document.querySelector(`template#${CSS.escape(h)}-template`)){W=!0;break}}}let G=!k&&!W,J=d=>{if(!d||typeof d.duration!="function")return null;try{let p=Number(d.duration());return Number.isFinite(p)?Math.max(0,p):null}catch{return null}},v=d=>typeof d=="number"&&Number.isFinite(d)&&d>u,ie=d=>{let p=Number(d.getAttribute("data-duration"));if(Number.isFinite(p)&&p>0)return p;let h=Number(d.getAttribute("data-playback-start")??d.getAttribute("data-media-start")??"0"),S=Number.isFinite(h)?Math.max(0,h):0;return Number.isFinite(d.duration)&&d.duration>S?Math.max(0,d.duration-S):null},Me=()=>{let d=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(d.length===0)return null;let p=0;for(let h of d){let S=C(h,0);if(!Number.isFinite(S))continue;let w=ie(h);w==null||w<=u||(p=Math.max(p,Math.max(0,S)+w))}return p>u?p:null},V=()=>{let d=L();if(!d)return null;let p=window.__timelines??{},h=je({timelineRegistry:p,includeAuthoredTimingAttrs:!0}),S=0,w=Number.parseFloat(d.getAttribute("data-duration")??"");Number.isFinite(w)&&w>0&&(S=w);let T=Array.from(d.querySelectorAll("[data-composition-id][data-start]"));for(let I of T){if(!(I instanceof Element)||I.parentElement?.closest("[data-composition-id]")!==d)continue;let Q=h.resolveStartForElement(I,0),pe=h.resolveDurationForElement(I);!Number.isFinite(Q)||pe==null||pe<=0||(S=Math.max(S,Math.max(0,Q)+pe))}return S>u?S:null},te=()=>{let d=Me();return typeof d!="number"||!Number.isFinite(d)||d<=u?null:d},U=d=>v(d)?Math.max(u,d*m):u,X=(d,p=0)=>{let h=J(d),S=te(),w=V(),T=Math.max(S??0,w??0),I=Number.isFinite(p)&&p>u?p:0,$=0;return v(h)?$=Math.max(h,T,I):v(T)?$=Math.max(T,I):$=I,$>0?Math.max(0,$):0},Ce=()=>{let d=window.__timelines??{},p=je({timelineRegistry:d,includeAuthoredTimingAttrs:!0}),h=te(),S=V(),w=Math.max(h??0,S??0)||null,T=U(w),I=le=>{let Z=document.querySelector(`[data-composition-id="${CSS.escape(le)}"]`);return Z?p.resolveStartForElement(Z,0):0},$=le=>{let Z=window.gsap;if(!Z||typeof Z.timeline!="function")return null;let fe=Z.timeline({paused:!0});for(let ye of le)fe.add(ye.timeline,I(ye.compositionId));return fe},Q=(le,Z)=>{if(!v(le))return null;let fe=window.gsap;if(!fe||typeof fe.timeline!="function")return null;let ye=fe.timeline({paused:!0});if(Z)try{ye.add(Z,0)}catch(ue){R("runtime.init.site2",ue)}let Se=ye;if(typeof Se.to=="function")try{Se.to({},{duration:le})}catch(ue){R("runtime.init.site3",ue)}return ye},pe=(le,Z)=>{let fe=le;if(typeof fe.getChildren!="function")return[];try{let ye=fe.getChildren(!0,!0,!0)??[];if(!Array.isArray(ye))return[];let Se=[];for(let ue of Z)if(!ye.some(ke=>ke===ue.timeline))try{let ke=I(ue.compositionId);le.add(ue.timeline,ke),Se.push(ue.compositionId)}catch(ke){R("runtime.init.site4",ke)}return Se}catch{return[]}},he=L(),K=he?.getAttribute("data-composition-id")??null;if(!K)return{timeline:null};let oe=d[K]??null,ge=(()=>{if(!he)return[];let le=new Set,Z=Array.from(he.querySelectorAll("[data-composition-id]")),fe=[];for(let ye of Z){let Se=ye.getAttribute("data-composition-id");if(!Se||Se===K||le.has(Se))continue;le.add(Se);let ue=d[Se]??null;if(!ue||typeof ue.play!="function"||typeof ue.pause!="function")continue;let Fe=J(ue);fe.push({compositionId:Se,timeline:ue,durationSeconds:Fe??0})}return fe})(),St=le=>{for(let Z of le){let fe=Z.timeline;if(typeof fe.paused=="function")try{fe.paused(!1)}catch(ye){R("runtime.init.site5",ye)}}};if(ge.length>0&&St(ge),oe){let le=ge.length>0?pe(oe,ge):[];if((ge.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id=\'"+K+"\'])"))&&(O=!0),le.length>0)try{let ue=oe.time();oe.seek(ue,!1)}catch{}let Z=J(oe);if(!v(Z)&&ge.length>0){let ue=ge.map(xa=>xa.compositionId),Fe=$(ge),ke=J(Fe);if(Fe&&v(ke))return{timeline:Fe,selectedTimelineIds:ue,selectedDurationSeconds:ke,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:T,selectedDurationSeconds:ke,mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedTimelineIds:ue,autoNestedChildren:le}}};let On=Q(w??0,oe),Bn=J(On);if(On&&v(Bn))return{timeline:On,selectedTimelineIds:[K],selectedDurationSeconds:Bn,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedDurationSeconds:Bn,selectedTimelineIds:[K],autoNestedChildren:le}}}}if(!v(Z)&&ge.length===0){let ue=Q(w??0,oe),Fe=J(ue);if(ue&&v(Fe))return{timeline:ue,selectedTimelineIds:[K],selectedDurationSeconds:Fe,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedDurationSeconds:Fe,selectedTimelineIds:[K]}}}}let fe=he?.getAttribute("data-duration"),ye=fe?parseFloat(fe):null,Se=Math.max(v(ye)?ye:0,S??0);if(Se>0&&v(Se)&&v(Z)&&Se>=Z+.5){let ue=oe;if(typeof ue.to=="function")try{ue.to({},{duration:0},Se)}catch(ke){R("runtime.init.site6",ke)}let Fe=J(oe);if(v(Fe))return{timeline:oe,selectedTimelineIds:[K],selectedDurationSeconds:Fe,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:K,rootDurationSeconds:Z,rootDeclaredDur:ye,authoredCompositionDurationFloorSeconds:S,newDur:Fe}}}}return{timeline:oe,selectedTimelineIds:[K],selectedDurationSeconds:Z,mediaDurationFloorSeconds:h,diagnostics:le.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:K,selectedDurationSeconds:Z,autoNestedChildren:le}}:void 0}}if(ge.length>0){let le=ge.map(ye=>ye.compositionId),Z=$(ge),fe=J(Z);if(Z)return{timeline:Z,selectedTimelineIds:le,selectedDurationSeconds:fe,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:K,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:T,selectedDurationSeconds:fe,mediaDurationFloorSeconds:h,selectedTimelineIds:le}}}}return{timeline:null}},O=!1,D=()=>{if(!G)return!1;let d=t.capturedTimeline,p=J(d),h=v(p);if(d&&h&&O)return!1;let S=Ce();if(!S.timeline)return!1;if(d&&d===S.timeline)return typeof d.timeScale=="function"&&d.timeScale(t.playbackRate),!1;t.capturedTimeline=S.timeline,typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);let w=X(t.capturedTimeline,0);if(w>0){try{P.setDuration(w)}catch{}t.capturedTimeline.pause();let T=Math.max(0,t.currentTime||0);typeof t.capturedTimeline.totalTime=="function"&&t.capturedTimeline.totalTime(T,!1);let I=window.__hfStudioManualEditsApply;typeof I=="function"&&I()}if(S.diagnostics&&Ae({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),Ae({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),window.parent!==window){let T=L(),I=w>0?w:0,$=String(I>0?I:1),Q=new Set,pe=new Set(document.querySelectorAll("[data-start]")),he=K=>{let oe=K.parentElement;for(;oe&&oe!==T;){if(pe.has(oe))return!0;oe=oe.parentElement}return!1};if(t.capturedTimeline.getChildren)try{for(let K of t.capturedTimeline.getChildren(!0))if(typeof K.targets=="function")for(let oe of K.targets())oe instanceof HTMLElement&&oe!==T&&(oe.hasAttribute("data-start")||he(oe)||Q.has(oe)||(Q.add(oe),oe.setAttribute("data-start","0"),oe.setAttribute("data-duration",$)))}catch{}if(T instanceof HTMLElement)for(let K of T.querySelectorAll("[id]"))K instanceof HTMLElement&&K!==T&&(K.hasAttribute("data-start")||he(K)||Q.has(K)||K.tagName==="SCRIPT"||K.tagName==="STYLE"||K.tagName==="LINK"||(Q.add(K),K.setAttribute("data-start","0"),K.setAttribute("data-duration",$)))}for(let T of be)Ve.delete(T),ji(T);return!0};window.__hfForceTimelineRebind=()=>{O=!1,D()};let B=()=>{let d=L();if(!(d instanceof HTMLElement))return;let p=d.getBoundingClientRect(),h=Number(d.getAttribute("data-width")),S=Number(d.getAttribute("data-height")),w=window.getComputedStyle(d),T=Number.isFinite(h)&&h>0&&Number.isFinite(S)&&S>0,I=p.width<=0||p.height<=0||d.clientWidth<=0||d.clientHeight<=0;!T||!I||a("root_stage_layout_zero",{compositionId:d.getAttribute("data-composition-id")??null,declaredWidth:h,declaredHeight:S,rectWidth:Math.round(p.width),rectHeight:Math.round(p.height),clientWidth:d.clientWidth,clientHeight:d.clientHeight,display:w.display,visibility:w.visibility,overflow:w.overflow},`root-stage-layout-zero:${d.getAttribute("data-composition-id")??"unknown"}`)},ae=()=>{t.tornDown||(s!=null&&window.cancelAnimationFrame(s),s=window.requestAnimationFrame(()=>{s=null,B()}))},re=()=>{n=d=>{let p=b(d.error??d.message).slice(0,g);if(!p)return;let h=F(p);Ae({source:"hf-preview",type:"diagnostic",code:h.code,details:{category:h.category,message:p,filename:d.filename||null,line:Number.isFinite(d.lineno)?d.lineno:null,column:Number.isFinite(d.colno)?d.colno:null}})},i=d=>{let p=b(d.reason).slice(0,g);if(!p)return;let h=F(p);Ae({source:"hf-preview",type:"diagnostic",code:`${h.code}_unhandled_rejection`,details:{category:`${h.category}-unhandled-rejection`,message:p}})},window.addEventListener("error",n),window.addEventListener("unhandledrejection",i)},j=()=>{let d=Array.from(document.querySelectorAll("img, video, audio, source, link[rel=\'stylesheet\']"));for(let h of d){let S=()=>{if(!(h instanceof Element))return;let w=h.tagName.toLowerCase(),T=h.getAttribute("src")??h.getAttribute("href")??h.getAttribute("poster")??null,I=w==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";a(I,{tagName:w,assetUrl:T,currentSrc:(h instanceof HTMLImageElement||h instanceof HTMLMediaElement)&&h.currentSrc||null,readyState:h instanceof HTMLMediaElement?h.readyState:null,networkState:h instanceof HTMLMediaElement?h.networkState:null},`${I}:${w}:${T??"unknown"}`)};h.addEventListener("error",S),l(()=>{h.removeEventListener("error",S)})}let p=document.fonts;p&&p.ready.then(()=>{if(t.tornDown)return;let h=Array.from(p).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);h.length!==0&&a("runtime_font_load_issue",{failedFamilies:h,totalFaces:Array.from(p).length},`runtime-font-load-issue:${h.join("|")}`)}).catch(()=>{})},q=(d,p)=>{if(!d.timeline)return!1;let h=t.capturedTimeline;if(h&&h===d.timeline)return!1;let S=Math.max(0,t.currentTime||0),w=t.isPlaying;t.capturedTimeline=d.timeline,typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);try{t.capturedTimeline.pause(),t.capturedTimeline.seek(S,!1),w&&t.capturedTimeline.play()}catch(T){R("runtime.init.site7",T)}return Ae({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:p,previousTime:S,selectedTimelineIds:d.selectedTimelineIds??[],selectedDurationSeconds:d.selectedDurationSeconds??null,mediaDurationFloorSeconds:d.mediaDurationFloorSeconds??null}}),!0},z=null,Le=!1,be=new Set,Ve=new WeakMap,Ne=()=>{t.tornDown||(z!=null&&window.clearTimeout(z),z=window.setTimeout(()=>{if(t.tornDown)return;z=null;let d=Ce();if(!d.timeline||!v(d.mediaDurationFloorSeconds??null))return;if(!t.capturedTimeline){D()&&(st(),Te(!0));return}if(Le)return;let h=J(t.capturedTimeline),S=d.selectedDurationSeconds??J(d.timeline);v(S)&&(!v(h)||S>=h+x)&&q(d,"manual")&&(Le=!0,Ae({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:h??null,selectedDurationSeconds:S??null,selectedTimelineIds:d.selectedTimelineIds??[],mediaDurationFloorSeconds:d.mediaDurationFloorSeconds??null}}),st(),Te(!0))},E))},oa=()=>{for(let d of be)d.removeEventListener("loadedmetadata",Ne),d.removeEventListener("durationchange",Ne);be.clear()},_n=()=>{if(t.tornDown)return;let d=Array.from(document.querySelectorAll("video, audio"));for(let p of d){if(be.has(p))continue;be.add(p);let h=Number.parseFloat(p.dataset.volume??"");Number.isFinite(h)&&(p.volume=Math.max(0,Math.min(1,h))),p.addEventListener("loadedmetadata",Ne),p.addEventListener("durationchange",Ne),p.preload!=="auto"&&(p.preload="auto"),p.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&p.load(),ji(p)}},ji=d=>{Ve.has(d)||br(d,t.capturedTimeline,X(t.capturedTimeline,0),Ve)},Ln=new WeakMap,qi=d=>{let p=Ln.get(d);if(p!==void 0)return p;let h=window.getComputedStyle(d).position,S=h==="static"||h==="relative"||h==="sticky";return Ln.set(d,S),S},vn=new WeakMap,sa=d=>{let p=vn.get(d);if(p!==void 0)return p;let h=d.querySelector("[data-start]")===null;return vn.set(d,h),h},aa=()=>{Ln=new WeakMap,vn=new WeakMap},ve=()=>{let d=T=>{let I=T.closest("[data-composition-id]"),$=I?y(I,0):null,Q=I?A(I,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:I,inheritedStart:$,inheritedDuration:Q}},p=Sr({shouldIncludeElement:T=>T.hasAttribute("data-start")||!!d(T).compositionRoot,resolveStartSeconds:T=>{let I=d(T);return C(T,I.inheritedStart??0)},resolveDurationSeconds:T=>{let I=d(T),$=C(T,I.inheritedStart??0),Q=Number.parseFloat(T.dataset.playbackStart??T.dataset.mediaStart??"0")||0,pe=I.inheritedStart!=null&&I.inheritedDuration!=null&&I.inheritedDuration>0?Math.max(0,I.inheritedStart+I.inheritedDuration-$):null,he=Number.isFinite(T.duration)&&T.duration>Q?Math.max(0,T.duration-Q):null,K=Number.parseFloat(T.dataset.duration??""),oe=Number.isFinite(K)&&K>0?K:null,ze=[he,pe,oe].filter(ge=>ge!=null);return ze.length>0?Math.min(...ze):null}});for(let T of p.mediaClips){let I=Ve.get(T.el);I&&(T.volumeKeyframes=I)}let h=t.mediaForceSyncNextTick;h&&(t.mediaForceSyncNextTick=!1),t.nativeMediaSyncDisabled||Ar({clips:p.mediaClips,timeSeconds:t.currentTime,playing:t.isPlaying,playbackRate:t.playbackRate,outputMuted:t.mediaOutputMuted||!t.webAudioMediaDisabled&&!t.nativeMediaSyncDisabled&&de.isActive(),userMuted:t.bridgeMuted,userVolume:t.bridgeVolume,forceSync:h,onElementVolume:(T,I)=>de.setElementVolume(T,I),isWebAudioOwned:T=>de.ownsElement(T),onAutoplayBlocked:()=>{t.mediaAutoplayBlockedPosted||(t.mediaAutoplayBlockedPosted=!0,Ae({source:"hf-preview",type:"media-autoplay-blocked"}))}});let S=Array.from(document.querySelectorAll("[data-start]")),w=L();for(let T of S){if(!(T instanceof HTMLElement))continue;let I=M(T,t.currentTime);if(I){let $=T.parentElement;for(;$&&$!==w;){if($ instanceof HTMLElement&&$.hasAttribute("data-start")&&!M($,t.currentTime)){I=!1;break}$=$.parentElement}}T.style.visibility=I?"visible":"hidden",(T instanceof HTMLVideoElement||T instanceof HTMLImageElement)&&e?.setSourceVisibility(T,I),I?qi(T)&&T.style.removeProperty("display"):qi(T)&&sa(T)&&(T.style.display="none")}},Te=d=>{let p=Math.max(0,Math.round((t.currentTime||0)*t.canonicalFps)),h=Date.now();(d||p!==t.bridgeLastPostedFrame||t.isPlaying!==t.bridgeLastPostedPlaying||t.bridgeMuted!==t.bridgeLastPostedMuted||h-t.bridgeLastPostedAt>=t.bridgeMaxPostIntervalMs)&&(t.bridgeLastPostedFrame=p,t.bridgeLastPostedPlaying=t.isPlaying,t.bridgeLastPostedMuted=t.bridgeMuted,t.bridgeLastPostedAt=h,Ae({source:"hf-preview",type:"state",frame:p,isPlaying:t.isPlaying,muted:t.bridgeMuted,playbackRate:t.playbackRate}))},kn="",la=()=>{let d="";for(let p of document.querySelectorAll("[data-start]"))d+=`${p.id}:${p.tagName}|`;return d},st=()=>{H(),ee(),N();let d=L();if(d){let S=_(d.getAttribute("data-width")),w=_(d.getAttribute("data-height")),T=S?parseInt(S,10):0,I=w?parseInt(w,10):0;T>0&&I>0&&Ae({source:"hf-preview",type:"stage-size",width:T,height:I})}D();let p=kr({canonicalFps:t.canonicalFps});window.__clipManifest=p;let h=la();if(kn!==h&&aa(),!window.__clipTree||kn!==h){let S=window;window.__clipTree=Nr({startResolver:je({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:p.durationInFrames/t.canonicalFps}),kn=h}Ae(p),ae()},Pe=(d,p=0)=>{for(let h of t.deterministicAdapters){try{d==="discover"&&h.discover(),d==="pause"&&h.pause(),d==="play"&&h.play&&h.play()}catch(S){R("runtime.init.site8",S)}if(d==="discover")try{h.seek({time:p})}catch(S){R("runtime.init.site9",S)}}},et=()=>{window.__renderReady=!1},yt=null,bt=!0,ua=()=>{let d=[];for(let p of t.deterministicAdapters){let h=p.getReadyPromise;if(typeof h=="function")try{let S=h();S&&d.push(S)}catch(S){R("runtime.init.adapterReady",S)}}return d},ca=()=>{let d=ua();if(d.length===0)return yt=null,bt=!0,!0;let p=d.length===1?d[0]:Promise.all(d);return p!==yt&&(yt=p,bt=!1,Promise.resolve(p).then(()=>{yt===p&&(bt=!0,et())},h=>{yt===p&&(bt=!0,R("runtime.init.adapterReady",h),et())})),bt};if(G)Ti();else{let d={injectedStyles:t.injectedCompStyles,injectedScripts:t.injectedCompScripts,parseDimensionPx:_,onDiagnostic:({code:p,details:h})=>{Ae({source:"hf-preview",type:"diagnostic",code:p,details:h})}};ps(d).then(()=>ms(d)).finally(()=>{G=!0,_n(),j(),Ti(),et()})}let en=Er({postMessage:d=>Ae(d)});en.installPickerApi();let He=_s();e=He,l(()=>{He.destroy(),e=null});let Rn=d=>{let p=Number(d);!Number.isFinite(p)||p<=0?t.playbackRate=1:t.playbackRate=Math.max(.1,Math.min(5,p)),t.mediaForceSyncNextTick=!0,t.capturedTimeline&&typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);let h=document.querySelectorAll("video, audio");for(let S of h)if(S instanceof HTMLMediaElement)try{S.playbackRate=t.playbackRate}catch(w){R("runtime.init.site10",w)}},me=Fr({getTimeline:()=>t.capturedTimeline,setTimeline:d=>{t.capturedTimeline=d},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>t.isPlaying,setIsPlaying:d=>{t.isPlaying!==d&&(t.mediaForceSyncNextTick=!0),t.isPlaying=d},getPlaybackRate:()=>t.playbackRate,setPlaybackRate:Rn,getCanonicalFps:()=>t.canonicalFps,onSyncMedia:(d,p)=>{t.currentTime=Math.max(0,Number(d)||0),t.isPlaying!==p&&(t.mediaForceSyncNextTick=!0),t.isPlaying=p,ve()},onStatePost:Te,onDeterministicSeek:d=>{for(let p of t.deterministicAdapters)try{p.seek({time:Number(d)||0})}catch(h){R("runtime.init.site11",h)}},onDeterministicPause:()=>Pe("pause"),onDeterministicPlay:()=>Pe("play"),onRenderFrameSeek:()=>{He.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>X(t.capturedTimeline,0)});window.__player=c(me),window.__playerReady=!0,Zi(Ae),At("composition_loaded",{duration:me.getDuration(),compositionId:document.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")??null}),t.controlBridgeHandler=Qi({onPlay:()=>{me.play(),At("composition_played",{time:me.getTime()})},onPause:()=>{me.pause(),At("composition_paused",{time:me.getTime()})},onStopMedia:()=>{de.stopAll();let d=document.querySelectorAll("video, audio");for(let p of d)p instanceof HTMLMediaElement&&!p.paused&&p.pause()},onSeek:(d,p)=>{let h=Math.max(0,d)/t.canonicalFps;me.seek(h),At("composition_seeked",{time:h})},onSetMuted:d=>{t.bridgeMuted=d;let p=d||t.mediaOutputMuted;de.setMuted(p);let h=document.querySelectorAll("video, audio");for(let S of h)S instanceof HTMLMediaElement&&(S.muted=p||S.defaultMuted)},onSetVolume:d=>{t.bridgeVolume=d,de.setVolume(d);let p=document.querySelectorAll("video, audio");for(let h of p){if(!(h instanceof HTMLMediaElement))continue;let S=parseFloat(h.dataset.volume??""),w=Number.isFinite(S)?S:1;h.volume=w*d}},onSetMediaOutputMuted:d=>{t.mediaOutputMuted=d;let p=d||t.bridgeMuted;de.setMuted(p);let h=document.querySelectorAll("video, audio");for(let S of h)S instanceof HTMLMediaElement&&(S.muted=p||S.defaultMuted)},onSetNativeMediaSyncDisabled:d=>{t.nativeMediaSyncDisabled!==d&&(t.nativeMediaSyncDisabled=d,t.mediaForceSyncNextTick=!0,d?(de.stopAll(),P.detachAudioSource()):ve())},onSetWebAudioMediaDisabled:d=>{t.webAudioMediaDisabled!==d&&(t.webAudioMediaDisabled=d,t.mediaForceSyncNextTick=!0,d&&(de.stopAll(),P.detachAudioSource()),ve())},onSetPlaybackRate:d=>{Rn(d),t.transportClock&&t.transportClock.setRate(t.playbackRate),Yi()},onSetColorGrading:(d,p)=>{He.setGrading(d,p)},onSetColorGradingCompare:(d,p)=>{He.setCompare(d,p)},onTick:()=>{if(t.tornDown||!P.isPlaying())return;let d=P.now();if(t.currentTime=d,tt(d),P.reachedEnd()){de.stopAll(),P.detachAudioSource(),P.pause(),t.isPlaying=!1;let p=P.getDuration();Number.isFinite(p)&&(P.seek(p),t.currentTime=p,tt(p)),Pe("pause"),ve(),Te(!0)}},onEnablePickMode:()=>en.enablePickMode(),onDisablePickMode:()=>en.disablePickMode()}),t.deterministicAdapters=[gr(),er({resolveStartSeconds:d=>y(d,0)}),nr(),or(),ar(),lr(),ur(),cr(),dr(),fr(),mr(),tr({getTimeline:()=>t.capturedTimeline})],hr(),xr(),window.__hfReseekGpu=d=>{let p=Math.max(0,Number(d)||0);window.__hfThreeTime=p,window.__hfTypegpuTime=p,sr(p)},re(),_n(),Pe("discover");let P=new En;t.transportClock=P;let de=new wn,Dn=!1;de.init().then(d=>{Dn=d});let da=()=>{let d=t.capturedTimeline,p=D();t.capturedTimeline&&(p||t.capturedTimeline!==d||!me._timeline)&&(me._timeline=t.capturedTimeline);let h=X(t.capturedTimeline,0);h>0&&P.setDuration(h),Pe("discover",t.currentTime),window.__renderReady=!0,st(),Te(!0)};if(et=()=>{if(!G||window.__hfTimelinesBuilding){window.__renderReady=!1;return}if(Pe("discover",t.currentTime),!ca()){window.__renderReady=!1;return}da()},window.__hfTimelinesBuilding){window.__renderReady=!1;let d=()=>{window.removeEventListener("hf-timelines-built",d),et()};window.addEventListener("hf-timelines-built",d)}et(),G&&setTimeout(()=>{et()},0);let tn=0,In=!1,fa=(d,p,h)=>{try{d.pause(),typeof d.totalTime=="function"?d.totalTime(p,!1):d.seek(p,!1)}catch(S){R(h,S)}},ma=d=>{let p=window.__timelines??{},h=L()?.getAttribute("data-composition-id")??null;for(let[S,w]of Object.entries(p)){if(!w||S===h)continue;let T=document.querySelector(`[data-composition-id="${CSS.escape(S)}"]`);if(!T)continue;let I=y(T,0);if(!Number.isFinite(I))continue;let $=A(T,{includeAuthoredTimingAttrs:!0}),Q=J(w),pe=$!=null&&$>0?$:Q,he=Math.max(0,pe!=null&&pe>0?Math.min(pe,d-I):d-I);fa(w,he,"runtime.init.transport.childTimeline")}},pa=d=>{let p=window.__timelines??{};for(let h of Object.values(p))if(!(!h||h===d))try{h.play()}catch(S){R("runtime.init.activateSiblings",S)}},tt=(d,p)=>{let h=t.capturedTimeline;if(h){p?.activateChildren&&pa(h);try{typeof h.totalTime=="function"?h.totalTime(d,!1):h.seek(d,!1)}catch(S){R("runtime.init.transport.seek",S)}}else ma(d);for(let S of t.deterministicAdapters)try{S.seek({time:d})}catch(w){R("runtime.init.transport.adapter",w)}},ha=()=>{try{return document.querySelector(`[${vs}]`)!=null}catch{return!1}},$i=()=>{if(!(t.tornDown||In)){In=!0;try{if(t.transportRafId=window.requestAnimationFrame($i),tn+=1,tn%60===0&&!(P.isPlaying()&&t.capturedTimeline!=null&&P.now()<f)){let h=t.capturedTimeline;if(D()){t.capturedTimeline&&!me._timeline&&(me._timeline=t.capturedTimeline),t.capturedTimeline&&t.capturedTimeline!==h&&t.capturedTimeline.pause();let S=X(t.capturedTimeline,0);S>0&&P.setDuration(S),st()}}if(tn%20===0&&st(),tn%30===0&&_n(),t.capturedTimeline){let p=X(t.capturedTimeline,0);p>0&&(!P.isPlaying()||p>=P.getDuration())&&P.setDuration(p)}if(P.isPlaying()&&!t.mediaOutputMuted)if(!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&de.isActive()&&de.context){let p=de.getTime();p>=0&&P.attachAudioSource({currentTimeSeconds:p})}else{let p=document.querySelectorAll("audio[data-start]"),h=!1;for(let S of p){if(!(S instanceof HTMLMediaElement)||!S.isConnected)continue;let w=Number.parseFloat(S.dataset.start??""),T=Number.parseFloat(S.dataset.duration??""),I=Number.isFinite(T)&&T>0?w+T:1/0,$=Number.parseFloat(S.dataset.playbackStart??S.dataset.mediaStart??"0")||0;if(Number.isFinite(w)&&t.currentTime>=w&&t.currentTime<=I){S.paused?!S.error&&S.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&(P.attachAudioSource({currentTimeSeconds:t.currentTime}),h=!0):(P.attachAudioSource({el:S,compositionStart:w,mediaStart:$}),h=!0);break}}!h&&P.hasAudioSource()&&P.detachAudioSource()}else P.hasAudioSource()&&P.detachAudioSource();let d=P.now();if(t.currentTime=d,(P.isPlaying()||!ha())&&tt(d),P.isPlaying()&&P.reachedEnd()){de.stopAll(),P.detachAudioSource(),P.pause(),t.isPlaying=!1;let p=P.getDuration();Number.isFinite(p)&&(P.seek(p),t.currentTime=p,tt(p)),Pe("pause"),ve(),Te(!0);return}P.isPlaying()&&ve(),Te(!1)}finally{In=!1}}},Ki=d=>{let p=document.querySelectorAll("video, audio");for(let h of p){if(!(h instanceof HTMLMediaElement)||!h.isConnected)continue;let S=Number.parseFloat(h.dataset.start??"");if(!Number.isFinite(S))continue;let w=Number.parseFloat(h.dataset.duration??""),T=Number.isFinite(w)&&w>0?S+w:1/0;if(d<S||d>=T)continue;let I=Number.parseFloat(h.dataset.playbackStart??h.dataset.mediaStart??"0")||0,$=d-S+I;if($>=0)try{h.currentTime=$}catch{}}},Ji=()=>{if(t.nativeMediaSyncDisabled||t.webAudioMediaDisabled)return;let d=de.startGeneration(),p=document.querySelectorAll("audio[data-start]");for(let h of p){if(!(h instanceof HTMLMediaElement)||!h.isConnected)continue;let S=Number.parseFloat(h.dataset.start??"");if(!Number.isFinite(S))continue;let w=Number.parseFloat(h.dataset.playbackStart??h.dataset.mediaStart??"0")||0,T=Number.parseFloat(h.dataset.volume??""),I=Number.isFinite(T)?T:1,$=Number.parseFloat(h.dataset.duration??""),Q=Number.isFinite($)&&$>0?$:Number.POSITIVE_INFINITY,pe=h.closest("[data-composition-id]");if(pe){let he=y(pe,0),K=A(pe,{includeAuthoredTimingAttrs:!0});K!=null&&K>0&&(Q=Math.min(Q,Math.max(0,he+K-S)))}de.decodeAudioElement(h).then(he=>{!he||!P.isPlaying()||de.schedulePlayback(h,he,S,w,P.now(),I*t.bridgeVolume,d,t.playbackRate,Q)})}},Yi=()=>{de.setRate(t.playbackRate)&&!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&Dn&&P.isPlaying()&&de.hasBoundedActiveSources()&&(de.stopAll(),Ji())};if(me.play=()=>{let d=t.capturedTimeline;if(P.isPlaying())return;let p=X(d,0);if(p>0)P.setDuration(p),P.reachedEnd()&&(P.seek(0),t.currentTime=0,tt(0));else{let h=L(),S=Number(h?.getAttribute("data-duration")??0);S>0&&P.setDuration(S)}d&&d.pause(),P.play()&&(t.isPlaying=!0,t.mediaForceSyncNextTick=!0,Ki(P.now()),Dn&&!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&Ji(),Pe("play"),ve(),He.redraw(),Te(!0))},me.pause=()=>{if(!P.isPlaying())return;de.stopAll(),P.detachAudioSource(),P.pause(),t.isPlaying=!1,t.currentTime=P.now(),t.mediaForceSyncNextTick=!0,Ki(t.currentTime);let d=t.capturedTimeline;d&&d.pause(),Pe("pause"),ve(),He.redraw(),Te(!0)},me.seek=d=>{let p=lt(Math.max(0,Number(d)||0),t.canonicalFps);de.stopAll(),P.detachAudioSource(),P.isPlaying()&&P.pause(),P.seek(p),t.currentTime=P.now(),t.isPlaying=!1,t.mediaForceSyncNextTick=!0;let S=t.capturedTimeline;S&&S.pause(),tt(t.currentTime),Pe("pause"),ve(),He.redraw(),Te(!0)},me.renderSeek=d=>{let p=lt(Math.max(0,Number(d)||0),t.canonicalFps);P.isPlaying()&&P.pause(),P.seek(p),t.currentTime=P.now(),t.isPlaying=!1,t.mediaForceSyncNextTick=!0,tt(t.currentTime,{activateChildren:!0}),ve(),He.redraw(),Te(!0)},me.getTime=()=>P.now(),me.getDuration=()=>{let d=P.getDuration();return Number.isFinite(d)?d:0},me.isPlaying=()=>P.isPlaying(),me.setPlaybackRate=d=>{Rn(d),P.setRate(t.playbackRate),Yi()},t.capturedTimeline){let d=X(t.capturedTimeline,0);d>0&&P.setDuration(d),t.capturedTimeline.pause()}let Xi=window.__player;if(Xi){let d=["play","pause","seek","renderSeek","getTime","getDuration","isPlaying"];for(let p of d)Object.defineProperty(Xi,p,{get:()=>me[p],set:h=>{me[p]=h},configurable:!0})}t.transportRafId=window.requestAnimationFrame($i),st(),Te(!0);let Pn=()=>{if(!t.tornDown){t.tornDown=!0,t.transportRafId!=null&&(window.cancelAnimationFrame(t.transportRafId),t.transportRafId=null),t.transportClock=null,de.destroy(),z!=null&&(window.clearTimeout(z),z=null),s!=null&&(window.cancelAnimationFrame(s),s=null),oa(),t.controlBridgeHandler&&(window.removeEventListener("message",t.controlBridgeHandler),t.controlBridgeHandler=null),n&&(window.removeEventListener("error",n),n=null),i&&(window.removeEventListener("unhandledrejection",i),i=null),t.beforeUnloadHandler&&(window.removeEventListener("beforeunload",t.beforeUnloadHandler),t.beforeUnloadHandler=null),en.disablePickMode();for(let d of t.deterministicAdapters)if(!(!d||typeof d.revert!="function"))try{d.revert()}catch(p){R("runtime.init.site12",p)}t.deterministicAdapters=[];for(let d of r.splice(0))try{d()}catch(p){R("runtime.init.site13",p)}for(let d of t.injectedCompStyles)try{d.remove()}catch(p){R("runtime.init.site14",p)}t.injectedCompStyles=[];for(let d of t.injectedCompScripts)try{d.remove()}catch(p){R("runtime.init.site15",p)}t.injectedCompScripts=[],t.capturedTimeline=null,window.__hfRuntimeTeardown===Pn&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=Pn,t.beforeUnloadHandler=Pn,window.addEventListener("beforeunload",t.beforeUnloadHandler)}var Rs=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],Oi=[[697,698,"ON"],[706,719,"ON"],[722,735,"ON"],[741,749,"ON"],[751,767,"ON"],[768,879,"NSM"],[884,885,"ON"],[894,894,"ON"],[900,901,"ON"],[903,903,"ON"],[1014,1014,"ON"],[1155,1161,"NSM"],[1418,1418,"ON"],[1421,1422,"ON"],[1423,1423,"ET"],[1424,1424,"R"],[1425,1469,"NSM"],[1470,1470,"R"],[1471,1471,"NSM"],[1472,1472,"R"],[1473,1474,"NSM"],[1475,1475,"R"],[1476,1477,"NSM"],[1478,1478,"R"],[1479,1479,"NSM"],[1480,1535,"R"],[1536,1541,"AN"],[1542,1543,"ON"],[1544,1544,"AL"],[1545,1546,"ET"],[1547,1547,"AL"],[1548,1548,"CS"],[1549,1549,"AL"],[1550,1551,"ON"],[1552,1562,"NSM"],[1563,1610,"AL"],[1611,1631,"NSM"],[1632,1641,"AN"],[1642,1642,"ET"],[1643,1644,"AN"],[1645,1647,"AL"],[1648,1648,"NSM"],[1649,1749,"AL"],[1750,1756,"NSM"],[1757,1757,"AN"],[1758,1758,"ON"],[1759,1764,"NSM"],[1765,1766,"AL"],[1767,1768,"NSM"],[1769,1769,"ON"],[1770,1773,"NSM"],[1774,1775,"AL"],[1776,1785,"EN"],[1786,1808,"AL"],[1809,1809,"NSM"],[1810,1839,"AL"],[1840,1866,"NSM"],[1867,1957,"AL"],[1958,1968,"NSM"],[1969,1983,"AL"],[1984,2026,"R"],[2027,2035,"NSM"],[2036,2037,"R"],[2038,2041,"ON"],[2042,2044,"R"],[2045,2045,"NSM"],[2046,2069,"R"],[2070,2073,"NSM"],[2074,2074,"R"],[2075,2083,"NSM"],[2084,2084,"R"],[2085,2087,"NSM"],[2088,2088,"R"],[2089,2093,"NSM"],[2094,2136,"R"],[2137,2139,"NSM"],[2140,2143,"R"],[2144,2191,"AL"],[2192,2193,"AN"],[2194,2198,"AL"],[2199,2207,"NSM"],[2208,2249,"AL"],[2250,2273,"NSM"],[2274,2274,"AN"],[2275,2306,"NSM"],[2362,2362,"NSM"],[2364,2364,"NSM"],[2369,2376,"NSM"],[2381,2381,"NSM"],[2385,2391,"NSM"],[2402,2403,"NSM"],[2433,2433,"NSM"],[2492,2492,"NSM"],[2497,2500,"NSM"],[2509,2509,"NSM"],[2530,2531,"NSM"],[2546,2547,"ET"],[2555,2555,"ET"],[2558,2558,"NSM"],[2561,2562,"NSM"],[2620,2620,"NSM"],[2625,2626,"NSM"],[2631,2632,"NSM"],[2635,2637,"NSM"],[2641,2641,"NSM"],[2672,2673,"NSM"],[2677,2677,"NSM"],[2689,2690,"NSM"],[2748,2748,"NSM"],[2753,2757,"NSM"],[2759,2760,"NSM"],[2765,2765,"NSM"],[2786,2787,"NSM"],[2801,2801,"ET"],[2810,2815,"NSM"],[2817,2817,"NSM"],[2876,2876,"NSM"],[2879,2879,"NSM"],[2881,2884,"NSM"],[2893,2893,"NSM"],[2901,2902,"NSM"],[2914,2915,"NSM"],[2946,2946,"NSM"],[3008,3008,"NSM"],[3021,3021,"NSM"],[3059,3064,"ON"],[3065,3065,"ET"],[3066,3066,"ON"],[3072,3072,"NSM"],[3076,3076,"NSM"],[3132,3132,"NSM"],[3134,3136,"NSM"],[3142,3144,"NSM"],[3146,3149,"NSM"],[3157,3158,"NSM"],[3170,3171,"NSM"],[3192,3198,"ON"],[3201,3201,"NSM"],[3260,3260,"NSM"],[3276,3277,"NSM"],[3298,3299,"NSM"],[3328,3329,"NSM"],[3387,3388,"NSM"],[3393,3396,"NSM"],[3405,3405,"NSM"],[3426,3427,"NSM"],[3457,3457,"NSM"],[3530,3530,"NSM"],[3538,3540,"NSM"],[3542,3542,"NSM"],[3633,3633,"NSM"],[3636,3642,"NSM"],[3647,3647,"ET"],[3655,3662,"NSM"],[3761,3761,"NSM"],[3764,3772,"NSM"],[3784,3790,"NSM"],[3864,3865,"NSM"],[3893,3893,"NSM"],[3895,3895,"NSM"],[3897,3897,"NSM"],[3898,3901,"ON"],[3953,3966,"NSM"],[3968,3972,"NSM"],[3974,3975,"NSM"],[3981,3991,"NSM"],[3993,4028,"NSM"],[4038,4038,"NSM"],[4141,4144,"NSM"],[4146,4151,"NSM"],[4153,4154,"NSM"],[4157,4158,"NSM"],[4184,4185,"NSM"],[4190,4192,"NSM"],[4209,4212,"NSM"],[4226,4226,"NSM"],[4229,4230,"NSM"],[4237,4237,"NSM"],[4253,4253,"NSM"],[4957,4959,"NSM"],[5008,5017,"ON"],[5120,5120,"ON"],[5760,5760,"WS"],[5787,5788,"ON"],[5906,5908,"NSM"],[5938,5939,"NSM"],[5970,5971,"NSM"],[6002,6003,"NSM"],[6068,6069,"NSM"],[6071,6077,"NSM"],[6086,6086,"NSM"],[6089,6099,"NSM"],[6107,6107,"ET"],[6109,6109,"NSM"],[6128,6137,"ON"],[6144,6154,"ON"],[6155,6157,"NSM"],[6158,6158,"BN"],[6159,6159,"NSM"],[6277,6278,"NSM"],[6313,6313,"NSM"],[6432,6434,"NSM"],[6439,6440,"NSM"],[6450,6450,"NSM"],[6457,6459,"NSM"],[6464,6464,"ON"],[6468,6469,"ON"],[6622,6655,"ON"],[6679,6680,"NSM"],[6683,6683,"NSM"],[6742,6742,"NSM"],[6744,6750,"NSM"],[6752,6752,"NSM"],[6754,6754,"NSM"],[6757,6764,"NSM"],[6771,6780,"NSM"],[6783,6783,"NSM"],[6832,6877,"NSM"],[6880,6891,"NSM"],[6912,6915,"NSM"],[6964,6964,"NSM"],[6966,6970,"NSM"],[6972,6972,"NSM"],[6978,6978,"NSM"],[7019,7027,"NSM"],[7040,7041,"NSM"],[7074,7077,"NSM"],[7080,7081,"NSM"],[7083,7085,"NSM"],[7142,7142,"NSM"],[7144,7145,"NSM"],[7149,7149,"NSM"],[7151,7153,"NSM"],[7212,7219,"NSM"],[7222,7223,"NSM"],[7376,7378,"NSM"],[7380,7392,"NSM"],[7394,7400,"NSM"],[7405,7405,"NSM"],[7412,7412,"NSM"],[7416,7417,"NSM"],[7616,7679,"NSM"],[8125,8125,"ON"],[8127,8129,"ON"],[8141,8143,"ON"],[8157,8159,"ON"],[8173,8175,"ON"],[8189,8190,"ON"],[8192,8202,"WS"],[8203,8205,"BN"],[8207,8207,"R"],[8208,8231,"ON"],[8232,8232,"WS"],[8233,8233,"B"],[8234,8238,"BN"],[8239,8239,"CS"],[8240,8244,"ET"],[8245,8259,"ON"],[8260,8260,"CS"],[8261,8286,"ON"],[8287,8287,"WS"],[8288,8303,"BN"],[8304,8304,"EN"],[8308,8313,"EN"],[8314,8315,"ES"],[8316,8318,"ON"],[8320,8329,"EN"],[8330,8331,"ES"],[8332,8334,"ON"],[8352,8399,"ET"],[8400,8432,"NSM"],[8448,8449,"ON"],[8451,8454,"ON"],[8456,8457,"ON"],[8468,8468,"ON"],[8470,8472,"ON"],[8478,8483,"ON"],[8485,8485,"ON"],[8487,8487,"ON"],[8489,8489,"ON"],[8494,8494,"ET"],[8506,8507,"ON"],[8512,8516,"ON"],[8522,8525,"ON"],[8528,8543,"ON"],[8585,8587,"ON"],[8592,8721,"ON"],[8722,8722,"ES"],[8723,8723,"ET"],[8724,9013,"ON"],[9083,9108,"ON"],[9110,9257,"ON"],[9280,9290,"ON"],[9312,9351,"ON"],[9352,9371,"EN"],[9450,9899,"ON"],[9901,10239,"ON"],[10496,11123,"ON"],[11126,11263,"ON"],[11493,11498,"ON"],[11503,11505,"NSM"],[11513,11519,"ON"],[11647,11647,"NSM"],[11744,11775,"NSM"],[11776,11869,"ON"],[11904,11929,"ON"],[11931,12019,"ON"],[12032,12245,"ON"],[12272,12287,"ON"],[12288,12288,"WS"],[12289,12292,"ON"],[12296,12320,"ON"],[12330,12333,"NSM"],[12336,12336,"ON"],[12342,12343,"ON"],[12349,12351,"ON"],[12441,12442,"NSM"],[12443,12444,"ON"],[12448,12448,"ON"],[12539,12539,"ON"],[12736,12773,"ON"],[12783,12783,"ON"],[12829,12830,"ON"],[12880,12895,"ON"],[12924,12926,"ON"],[12977,12991,"ON"],[13004,13007,"ON"],[13175,13178,"ON"],[13278,13279,"ON"],[13311,13311,"ON"],[19904,19967,"ON"],[42128,42182,"ON"],[42509,42511,"ON"],[42607,42610,"NSM"],[42611,42611,"ON"],[42612,42621,"NSM"],[42622,42623,"ON"],[42654,42655,"NSM"],[42736,42737,"NSM"],[42752,42785,"ON"],[42888,42888,"ON"],[43010,43010,"NSM"],[43014,43014,"NSM"],[43019,43019,"NSM"],[43045,43046,"NSM"],[43048,43051,"ON"],[43052,43052,"NSM"],[43064,43065,"ET"],[43124,43127,"ON"],[43204,43205,"NSM"],[43232,43249,"NSM"],[43263,43263,"NSM"],[43302,43309,"NSM"],[43335,43345,"NSM"],[43392,43394,"NSM"],[43443,43443,"NSM"],[43446,43449,"NSM"],[43452,43453,"NSM"],[43493,43493,"NSM"],[43561,43566,"NSM"],[43569,43570,"NSM"],[43573,43574,"NSM"],[43587,43587,"NSM"],[43596,43596,"NSM"],[43644,43644,"NSM"],[43696,43696,"NSM"],[43698,43700,"NSM"],[43703,43704,"NSM"],[43710,43711,"NSM"],[43713,43713,"NSM"],[43756,43757,"NSM"],[43766,43766,"NSM"],[43882,43883,"ON"],[44005,44005,"NSM"],[44008,44008,"NSM"],[44013,44013,"NSM"],[64285,64285,"R"],[64286,64286,"NSM"],[64287,64296,"R"],[64297,64297,"ES"],[64298,64335,"R"],[64336,64450,"AL"],[64451,64466,"ON"],[64467,64829,"AL"],[64830,64847,"ON"],[64848,64911,"AL"],[64912,64913,"ON"],[64914,64967,"AL"],[64968,64975,"ON"],[64976,65007,"BN"],[65008,65020,"AL"],[65021,65023,"ON"],[65024,65039,"NSM"],[65040,65049,"ON"],[65056,65071,"NSM"],[65072,65103,"ON"],[65104,65104,"CS"],[65105,65105,"ON"],[65106,65106,"CS"],[65108,65108,"ON"],[65109,65109,"CS"],[65110,65118,"ON"],[65119,65119,"ET"],[65120,65121,"ON"],[65122,65123,"ES"],[65124,65126,"ON"],[65128,65128,"ON"],[65129,65130,"ET"],[65131,65131,"ON"],[65136,65278,"AL"],[65279,65279,"BN"],[65281,65282,"ON"],[65283,65285,"ET"],[65286,65290,"ON"],[65291,65291,"ES"],[65292,65292,"CS"],[65293,65293,"ES"],[65294,65295,"CS"],[65296,65305,"EN"],[65306,65306,"CS"],[65307,65312,"ON"],[65339,65344,"ON"],[65371,65381,"ON"],[65504,65505,"ET"],[65506,65508,"ON"],[65509,65510,"ET"],[65512,65518,"ON"],[65520,65528,"BN"],[65529,65533,"ON"],[65534,65535,"BN"],[65793,65793,"ON"],[65856,65932,"ON"],[65936,65948,"ON"],[65952,65952,"ON"],[66045,66045,"NSM"],[66272,66272,"NSM"],[66273,66299,"EN"],[66422,66426,"NSM"],[67584,67870,"R"],[67871,67871,"ON"],[67872,68096,"R"],[68097,68099,"NSM"],[68100,68100,"R"],[68101,68102,"NSM"],[68103,68107,"R"],[68108,68111,"NSM"],[68112,68151,"R"],[68152,68154,"NSM"],[68155,68158,"R"],[68159,68159,"NSM"],[68160,68324,"R"],[68325,68326,"NSM"],[68327,68408,"R"],[68409,68415,"ON"],[68416,68863,"R"],[68864,68899,"AL"],[68900,68903,"NSM"],[68904,68911,"AL"],[68912,68921,"AN"],[68922,68927,"AL"],[68928,68937,"AN"],[68938,68968,"R"],[68969,68973,"NSM"],[68974,68974,"ON"],[68975,69215,"R"],[69216,69246,"AN"],[69247,69290,"R"],[69291,69292,"NSM"],[69293,69311,"R"],[69312,69327,"AL"],[69328,69336,"ON"],[69337,69369,"AL"],[69370,69375,"NSM"],[69376,69423,"R"],[69424,69445,"AL"],[69446,69456,"NSM"],[69457,69487,"AL"],[69488,69505,"R"],[69506,69509,"NSM"],[69510,69631,"R"],[69633,69633,"NSM"],[69688,69702,"NSM"],[69714,69733,"ON"],[69744,69744,"NSM"],[69747,69748,"NSM"],[69759,69761,"NSM"],[69811,69814,"NSM"],[69817,69818,"NSM"],[69826,69826,"NSM"],[69888,69890,"NSM"],[69927,69931,"NSM"],[69933,69940,"NSM"],[70003,70003,"NSM"],[70016,70017,"NSM"],[70070,70078,"NSM"],[70089,70092,"NSM"],[70095,70095,"NSM"],[70191,70193,"NSM"],[70196,70196,"NSM"],[70198,70199,"NSM"],[70206,70206,"NSM"],[70209,70209,"NSM"],[70367,70367,"NSM"],[70371,70378,"NSM"],[70400,70401,"NSM"],[70459,70460,"NSM"],[70464,70464,"NSM"],[70502,70508,"NSM"],[70512,70516,"NSM"],[70587,70592,"NSM"],[70606,70606,"NSM"],[70608,70608,"NSM"],[70610,70610,"NSM"],[70625,70626,"NSM"],[70712,70719,"NSM"],[70722,70724,"NSM"],[70726,70726,"NSM"],[70750,70750,"NSM"],[70835,70840,"NSM"],[70842,70842,"NSM"],[70847,70848,"NSM"],[70850,70851,"NSM"],[71090,71093,"NSM"],[71100,71101,"NSM"],[71103,71104,"NSM"],[71132,71133,"NSM"],[71219,71226,"NSM"],[71229,71229,"NSM"],[71231,71232,"NSM"],[71264,71276,"ON"],[71339,71339,"NSM"],[71341,71341,"NSM"],[71344,71349,"NSM"],[71351,71351,"NSM"],[71453,71453,"NSM"],[71455,71455,"NSM"],[71458,71461,"NSM"],[71463,71467,"NSM"],[71727,71735,"NSM"],[71737,71738,"NSM"],[71995,71996,"NSM"],[71998,71998,"NSM"],[72003,72003,"NSM"],[72148,72151,"NSM"],[72154,72155,"NSM"],[72160,72160,"NSM"],[72193,72198,"NSM"],[72201,72202,"NSM"],[72243,72248,"NSM"],[72251,72254,"NSM"],[72263,72263,"NSM"],[72273,72278,"NSM"],[72281,72283,"NSM"],[72330,72342,"NSM"],[72344,72345,"NSM"],[72544,72544,"NSM"],[72546,72548,"NSM"],[72550,72550,"NSM"],[72752,72758,"NSM"],[72760,72765,"NSM"],[72850,72871,"NSM"],[72874,72880,"NSM"],[72882,72883,"NSM"],[72885,72886,"NSM"],[73009,73014,"NSM"],[73018,73018,"NSM"],[73020,73021,"NSM"],[73023,73029,"NSM"],[73031,73031,"NSM"],[73104,73105,"NSM"],[73109,73109,"NSM"],[73111,73111,"NSM"],[73459,73460,"NSM"],[73472,73473,"NSM"],[73526,73530,"NSM"],[73536,73536,"NSM"],[73538,73538,"NSM"],[73562,73562,"NSM"],[73685,73692,"ON"],[73693,73696,"ET"],[73697,73713,"ON"],[78912,78912,"NSM"],[78919,78933,"NSM"],[90398,90409,"NSM"],[90413,90415,"NSM"],[92912,92916,"NSM"],[92976,92982,"NSM"],[94031,94031,"NSM"],[94095,94098,"NSM"],[94178,94178,"ON"],[94180,94180,"NSM"],[113821,113822,"NSM"],[113824,113827,"BN"],[117760,117973,"ON"],[118e3,118009,"EN"],[118010,118012,"ON"],[118016,118451,"ON"],[118458,118480,"ON"],[118496,118512,"ON"],[118528,118573,"NSM"],[118576,118598,"NSM"],[119143,119145,"NSM"],[119155,119162,"BN"],[119163,119170,"NSM"],[119173,119179,"NSM"],[119210,119213,"NSM"],[119273,119274,"ON"],[119296,119361,"ON"],[119362,119364,"NSM"],[119365,119365,"ON"],[119552,119638,"ON"],[120513,120513,"ON"],[120539,120539,"ON"],[120571,120571,"ON"],[120597,120597,"ON"],[120629,120629,"ON"],[120655,120655,"ON"],[120687,120687,"ON"],[120713,120713,"ON"],[120745,120745,"ON"],[120771,120771,"ON"],[120782,120831,"EN"],[121344,121398,"NSM"],[121403,121452,"NSM"],[121461,121461,"NSM"],[121476,121476,"NSM"],[121499,121503,"NSM"],[121505,121519,"NSM"],[122880,122886,"NSM"],[122888,122904,"NSM"],[122907,122913,"NSM"],[122915,122916,"NSM"],[122918,122922,"NSM"],[123023,123023,"NSM"],[123184,123190,"NSM"],[123566,123566,"NSM"],[123628,123631,"NSM"],[123647,123647,"ET"],[124140,124143,"NSM"],[124398,124399,"NSM"],[124643,124643,"NSM"],[124646,124646,"NSM"],[124654,124655,"NSM"],[124661,124661,"NSM"],[124928,125135,"R"],[125136,125142,"NSM"],[125143,125251,"R"],[125252,125258,"NSM"],[125259,126063,"R"],[126064,126143,"AL"],[126144,126207,"R"],[126208,126287,"AL"],[126288,126463,"R"],[126464,126703,"AL"],[126704,126705,"ON"],[126706,126719,"AL"],[126720,126975,"R"],[126976,127019,"ON"],[127024,127123,"ON"],[127136,127150,"ON"],[127153,127167,"ON"],[127169,127183,"ON"],[127185,127221,"ON"],[127232,127242,"EN"],[127243,127247,"ON"],[127279,127279,"ON"],[127338,127343,"ON"],[127405,127405,"ON"],[127584,127589,"ON"],[127744,128728,"ON"],[128732,128748,"ON"],[128752,128764,"ON"],[128768,128985,"ON"],[128992,129003,"ON"],[129008,129008,"ON"],[129024,129035,"ON"],[129040,129095,"ON"],[129104,129113,"ON"],[129120,129159,"ON"],[129168,129197,"ON"],[129200,129211,"ON"],[129216,129217,"ON"],[129232,129240,"ON"],[129280,129623,"ON"],[129632,129645,"ON"],[129648,129660,"ON"],[129664,129674,"ON"],[129678,129734,"ON"],[129736,129736,"ON"],[129741,129756,"ON"],[129759,129770,"ON"],[129775,129784,"ON"],[129792,129938,"ON"],[129940,130031,"ON"],[130032,130041,"EN"],[130042,130042,"ON"],[131070,131071,"BN"],[196606,196607,"BN"],[262142,262143,"BN"],[327678,327679,"BN"],[393214,393215,"BN"],[458750,458751,"BN"],[524286,524287,"BN"],[589822,589823,"BN"],[655358,655359,"BN"],[720894,720895,"BN"],[786430,786431,"BN"],[851966,851967,"BN"],[917502,917759,"BN"],[917760,917999,"NSM"],[918e3,921599,"BN"],[983038,983039,"BN"],[1048574,1048575,"BN"],[1114110,1114111,"BN"]];function Wc(t){if(t<=255)return Rs[t];let e=0,n=Oi.length-1;for(;e<=n;){let i=e+n>>1,r=Oi[i];if(t<r[0]){n=i-1;continue}if(t>r[1]){e=i+1;continue}return r[2]}return"L"}function Gc(t){let e=t.length;if(e===0)return null;let n=new Array(e),i=!1;for(let c=0;c<e;){let u=t.charCodeAt(c),m=u,f=1;if(u>=55296&&u<=56319&&c+1<e){let E=t.charCodeAt(c+1);E>=56320&&E<=57343&&(m=(u-55296<<10)+(E-56320)+65536,f=2)}let x=Wc(m);(x==="R"||x==="AL"||x==="AN")&&(i=!0);for(let E=0;E<f;E++)n[c+E]=x;c+=f}if(!i)return null;let r=0;for(let c=0;c<e;c++){let u=n[c];if(u==="L"){r=0;break}if(u==="R"||u==="AL"){r=1;break}}let o=new Int8Array(e);for(let c=0;c<e;c++)o[c]=r;let s=r&1?"R":"L",l=s,a=l;for(let c=0;c<e;c++)n[c]==="NSM"?n[c]=a:a=n[c];a=l;for(let c=0;c<e;c++){let u=n[c];u==="EN"?n[c]=a==="AL"?"AN":"EN":(u==="R"||u==="L"||u==="AL")&&(a=u)}for(let c=0;c<e;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<e-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<e;c++){if(n[c]!=="EN")continue;let u;for(u=c-1;u>=0&&n[u]==="ET";u--)n[u]="EN";for(u=c+1;u<e&&n[u]==="ET";u++)n[u]="EN"}for(let c=0;c<e;c++){let u=n[c];(u==="WS"||u==="ES"||u==="ET"||u==="CS")&&(n[c]="ON")}a=l;for(let c=0;c<e;c++){let u=n[c];u==="EN"?n[c]=a==="L"?"L":"EN":(u==="R"||u==="L")&&(a=u)}for(let c=0;c<e;c++){if(n[c]!=="ON")continue;let u=c+1;for(;u<e&&n[u]==="ON";)u++;let m=c>0?n[c-1]:l,f=u<e?n[u]:l,x=m!=="L"?"R":"L";if(x===(f!=="L"?"R":"L"))for(let g=c;g<u;g++)n[g]=x;c=u-1}for(let c=0;c<e;c++)n[c]==="ON"&&(n[c]=s);for(let c=0;c<e;c++){let u=n[c];(o[c]&1)===0?u==="R"?o[c]++:(u==="AN"||u==="EN")&&(o[c]+=2):(u==="L"||u==="AN"||u==="EN")&&o[c]++}return o}function Ds(t,e){let n=Gc(t);if(n===null)return null;let i=new Int8Array(e.length);for(let r=0;r<e.length;r++)i[r]=n[e[r]];return i}var Uc=/[ \\t\\n\\r\\f]+/g,Vc=/[\\t\\n\\r\\f]| {2,}|^ | $/;function zc(t){let e=t??"normal";return e==="pre-wrap"?{mode:e,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:e,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function jc(t){if(!Vc.test(t))return t;let e=t.replace(Uc," ");return e.charCodeAt(0)===32&&(e=e.slice(1)),e.length>0&&e.charCodeAt(e.length-1)===32&&(e=e.slice(0,-1)),e}function qc(t){return/[\\r\\f]/.test(t)?t.replace(/\\r\\n/g,`\n`).replace(/[\\r\\f]/g,`\n`):t.replace(/\\r\\n/g,`\n`)}var Bi=null,$c;function Kc(){return Bi===null&&(Bi=new Intl.Segmenter($c,{granularity:"word"})),Bi}var Jc=/\\p{Script=Arabic}/u,Cn=/\\p{M}/u,Us=/\\p{Nd}/u;function Is(t){return Jc.test(t)}function Ps(t){return t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=183984&&t<=191471||t>=191472&&t<=192093||t>=194560&&t<=195103||t>=196608&&t<=201551||t>=201552&&t<=205743||t>=205744&&t<=210041||t>=63744&&t<=64255||t>=12288&&t<=12351||t>=12352&&t<=12447||t>=12448&&t<=12543||t>=44032&&t<=55215||t>=65280&&t<=65519}function Ie(t){for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);if(!(n<12288)){if(n>=55296&&n<=56319&&e+1<t.length){let i=t.charCodeAt(e+1);if(i>=56320&&i<=57343){let r=(n-55296<<10)+(i-56320)+65536;if(Ps(r))return!0;e++;continue}}if(Ps(n))return!0}}return!1}function Yc(t){let e=Nn(t);return e!==null&&(Mn.has(e)||Qe.has(e))}var Xc=new Set(["\\xA0","\\u202F","\\u2060","\\uFEFF"]);function Qc(t){return Ie(t)}function Zc(t){let e=Nn(t);return e!==null&&Xc.has(e)}function Fn(t){return!Yc(t)&&!Zc(t)}var Mn=new Set(["\\uFF0C","\\uFF0E","\\uFF01","\\uFF1A","\\uFF1B","\\uFF1F","\\u3001","\\u3002","\\u30FB","\\uFF09","\\u3015","\\u3009","\\u300B","\\u300D","\\u300F","\\u3011","\\u3017","\\u3019","\\u301B","\\u30FC","\\u3005","\\u303B","\\u309D","\\u309E","\\u30FD","\\u30FE"]),Zt=new Set([\'"\',"(","[","{","\\u201C","\\u2018","\\xAB","\\u2039","\\uFF08","\\u3014","\\u3008","\\u300A","\\u300C","\\u300E","\\u3010","\\u3016","\\u3018","\\u301A"]),Wi=new Set(["\'","\\u2019"]),Qe=new Set([".",",","!","?",":",";","\\u060C","\\u061B","\\u061F","\\u0964","\\u0965","\\u104A","\\u104B","\\u104C","\\u104D","\\u104F",")","]","}","%",\'"\',"\\u201D","\\u2019","\\xBB","\\u203A","\\u2026"]),ed=new Set([":",".","\\u060C","\\u061B"]),td=new Set(["\\u104F"]),nd=new Set(["\\u201D","\\u2019","\\xBB","\\u203A","\\u300D","\\u300F","\\u3011","\\u300B","\\u3009","\\u3015","\\uFF09"]);function id(t){if(Gi(t))return!0;let e=!1;for(let n of t){if(Qe.has(n)){e=!0;continue}if(!(e&&Cn.test(n)))return!1}return e}function rd(t){for(let e of t)if(!Mn.has(e)&&!Qe.has(e))return!1;return t.length>0}function od(t){if(Gi(t))return!0;for(let e of t)if(!Zt.has(e)&&!Wi.has(e)&&!Cn.test(e))return!1;return t.length>0}function Gi(t){let e=!1;for(let n of t)if(!(n==="\\\\"||Cn.test(n))){if(Zt.has(n)||Qe.has(n)||Wi.has(n)){e=!0;continue}return!1}return e}function Vs(t,e){let n=e-1;if(n<=0)return Math.max(n,0);let i=t.charCodeAt(n);if(i<56320||i>57343)return n;let r=n-1;if(r<0)return n;let o=t.charCodeAt(r);return o>=55296&&o<=56319?r:n}function Nn(t){if(t.length===0)return null;let e=Vs(t,t.length);return t.slice(e)}function sd(t){let e=Array.from(t),n=e.length;for(;n>0;){let i=e[n-1];if(Cn.test(i)){n--;continue}if(Zt.has(i)||Wi.has(i)){n--;continue}break}return n<=0||n===e.length?null:{head:e.slice(0,n).join(""),tail:e.slice(n).join("")}}function ad(t,e,n){return n==="text"&&!e&&t.length===1&&t!=="-"&&t!=="\\u2014"?t:null}function Os(t,e,n,i){let r=e[i],o=t[i];if(r==null)return o;let s=n[i];if(o.length===s)return o;let l=r.repeat(s);return t[i]=l,l}function Bs(t,e){return t&&e!==null&&ed.has(e)}function ld(t){let e=Nn(t);return e!==null&&td.has(e)}function ud(t){if(t.length<2||t[0]!==" ")return null;let e=t.slice(1);return/^\\p{M}+$/u.test(e)?{space:" ",marks:e}:null}function Tn(t){let e=t.length;for(;e>0;){let n=Vs(t,e),i=t.slice(n,e);if(nd.has(i))return!0;if(!Qe.has(i))return!1;e=n}return!1}function cd(t,e){if(e.preserveOrdinarySpaces||e.preserveHardBreaks){if(t===" ")return"preserved-space";if(t===" ")return"tab";if(e.preserveHardBreaks&&t===`\n`)return"hard-break"}return t===" "?"space":t==="\\xA0"||t==="\\u202F"||t==="\\u2060"||t==="\\uFEFF"?"glue":t==="\\u200B"?"zero-width-break":t==="\\xAD"?"soft-hyphen":"text"}var dd=/[\\x20\\t\\n\\xA0\\xAD\\u200B\\u202F\\u2060\\uFEFF]/;function _e(t){return t.length===1?t[0]:t.join("")}function fd(t,e){let n=[];for(let i=t.length-1;i>=0;i--)n.push(t[i]);return n.push(e),_e(n)}function md(t,e,n,i){if(!dd.test(t))return[{text:t,isWordLike:e,kind:"text",start:n}];let r=[],o=null,s=[],l=n,a=!1,c=0;for(let u of t){let m=cd(u,i),f=m==="text"&&e;if(o!==null&&m===o&&f===a){s.push(u),c+=u.length;continue}o!==null&&r.push({text:_e(s),isWordLike:a,kind:o,start:l}),o=m,s=[u],l=n+c,a=f,c+=u.length}return o!==null&&r.push({text:_e(s),isWordLike:a,kind:o,start:l}),r}function Hi(t){return t==="space"||t==="preserved-space"||t==="zero-width-break"||t==="hard-break"}var pd=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function hd(t,e){let n=t.texts[e];return n.startsWith("www.")?!0:pd.test(n)&&e+1<t.len&&t.kinds[e+1]==="text"&&t.texts[e+1]==="//"}function xd(t){return t.includes("?")&&(t.includes("://")||t.startsWith("www."))}function gd(t){let e=t.texts.slice(),n=t.isWordLike.slice(),i=t.kinds.slice(),r=t.starts.slice();for(let s=0;s<t.len;s++){if(i[s]!=="text"||!hd(t,s))continue;let l=[e[s]],a=s+1;for(;a<t.len&&!Hi(i[a]);){l.push(e[a]),n[s]=!0;let c=e[a].includes("?");if(i[a]="text",e[a]="",a++,c)break}e[s]=_e(l)}let o=0;for(let s=0;s<e.length;s++){let l=e[s];l.length!==0&&(o!==s&&(e[o]=l,n[o]=n[s],i[o]=i[s],r[o]=r[s]),o++)}return e.length=o,n.length=o,i.length=o,r.length=o,{len:o,texts:e,isWordLike:n,kinds:i,starts:r}}function yd(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o];if(e.push(s),n.push(t.isWordLike[o]),i.push(t.kinds[o]),r.push(t.starts[o]),!xd(s))continue;let l=o+1;if(l>=t.len||Hi(t.kinds[l]))continue;let a=[],c=t.starts[l],u=l;for(;u<t.len&&!Hi(t.kinds[u]);)a.push(t.texts[u]),u++;a.length>0&&(e.push(_e(a)),n.push(!0),i.push("text"),r.push(c),o=u-1)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}var bd=new Set([":","-","/","\\xD7",",",".","+","\\u2013","\\u2014"]),Hs=/^[A-Za-z0-9_]+[,:;]*$/,Ws=/[,:;]+$/;function zs(t){for(let e of t)if(Us.test(e))return!0;return!1}function Qt(t){if(t.length===0)return!1;for(let e of t)if(!(Us.test(e)||bd.has(e)))return!1;return!0}function Sd(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o],l=t.kinds[o];if(l==="text"&&Qt(s)&&zs(s)){let a=[s],c=o+1;for(;c<t.len&&t.kinds[c]==="text"&&Qt(t.texts[c]);)a.push(t.texts[c]),c++;e.push(_e(a)),n.push(!0),i.push("text"),r.push(t.starts[o]),o=c-1;continue}e.push(s),n.push(t.isWordLike[o]),i.push(l),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Ad(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o],l=t.kinds[o],a=t.isWordLike[o];if(l==="text"&&a&&Hs.test(s)){let c=[s],u=Ws.test(s),m=o+1;for(;u&&m<t.len&&t.kinds[m]==="text"&&t.isWordLike[m]&&Hs.test(t.texts[m]);){let f=t.texts[m];c.push(f),u=Ws.test(f),m++}e.push(_e(c)),n.push(!0),i.push("text"),r.push(t.starts[o]),o=m-1;continue}e.push(s),n.push(a),i.push(l),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Ed(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o];if(t.kinds[o]==="text"&&s.includes("-")){let l=s.split("-"),a=l.length>1;for(let c=0;c<l.length;c++){let u=l[c];if(!a)break;(u.length===0||!zs(u)||!Qt(u))&&(a=!1)}if(a){let c=0;for(let u=0;u<l.length;u++){let m=l[u],f=u<l.length-1?`${m}-`:m;e.push(f),n.push(!0),i.push("text"),r.push(t.starts[o]+c),c+=f.length}continue}}e.push(s),n.push(t.isWordLike[o]),i.push(t.kinds[o]),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function wd(t){let e=[],n=[],i=[],r=[],o=0;for(;o<t.len;){let s=[t.texts[o]],l=t.isWordLike[o],a=t.kinds[o],c=t.starts[o];if(a==="glue"){let u=[s[0]],m=c;for(o++;o<t.len&&t.kinds[o]==="glue";)u.push(t.texts[o]),o++;let f=_e(u);if(o<t.len&&t.kinds[o]==="text")s[0]=f,s.push(t.texts[o]),l=t.isWordLike[o],a="text",c=m,o++;else{e.push(f),n.push(!1),i.push("glue"),r.push(m);continue}}else o++;if(a==="text")for(;o<t.len&&t.kinds[o]==="glue";){let u=[];for(;o<t.len&&t.kinds[o]==="glue";)u.push(t.texts[o]),o++;let m=_e(u);if(o<t.len&&t.kinds[o]==="text"){s.push(m,t.texts[o]),l=l||t.isWordLike[o],o++;continue}s.push(m)}e.push(_e(s)),n.push(l),i.push(a),r.push(c)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Cd(t){let e=t.texts.slice(),n=t.isWordLike.slice(),i=t.kinds.slice(),r=t.starts.slice();for(let o=0;o<e.length-1;o++){if(i[o]!=="text"||i[o+1]!=="text"||!Ie(e[o])||!Ie(e[o+1]))continue;let s=sd(e[o]);s!==null&&(e[o]=s.head,e[o+1]=s.tail+e[o+1],r[o+1]=r[o]+s.head.length)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Gs(t,e,n){let i=Kc(),r=0,o=[],s=[],l=[],a=[],c=[],u=[],m=[],f=[],x=[],E=[],g=[],b=[];for(let N of i.segment(t))for(let y of md(N.segment,N.isWordLike??!1,N.index,n)){let ie=function(){u[v]!==null&&(s[v]=[Os(o,u,m,v)],u[v]=null),s[v].push(y.text),l[v]=l[v]||y.isWordLike,f[v]=f[v]||M,x[v]=x[v]||k,E[v]=G,g[v]=J,b[v]=Bs(x[v],W)},A=y.kind==="text",C=ad(y.text,y.isWordLike,y.kind),M=Ie(y.text),k=Is(y.text),W=Nn(y.text),G=Tn(y.text),J=ld(y.text),v=r-1;e.carryCJKAfterClosingQuote&&A&&r>0&&a[v]==="text"&&M&&f[v]&&E[v]||A&&r>0&&a[v]==="text"&&rd(y.text)&&f[v]||A&&r>0&&a[v]==="text"&&g[v]?ie():A&&r>0&&a[v]==="text"&&y.isWordLike&&k&&b[v]?(ie(),l[v]=!0):C!==null&&r>0&&a[v]==="text"&&u[v]===C?m[v]=(m[v]??1)+1:A&&!y.isWordLike&&r>0&&a[v]==="text"&&(id(y.text)||y.text==="-"&&l[v])?ie():(o[r]=y.text,s[r]=[y.text],l[r]=y.isWordLike,a[r]=y.kind,c[r]=y.start,u[r]=C,m[r]=C===null?0:1,f[r]=M,x[r]=k,E[r]=G,g[r]=J,b[r]=Bs(k,W),r++)}for(let N=0;N<r;N++){if(u[N]!==null){o[N]=Os(o,u,m,N);continue}o[N]=_e(s[N])}for(let N=1;N<r;N++)a[N]==="text"&&!l[N]&&Gi(o[N])&&a[N-1]==="text"&&(o[N-1]+=o[N],l[N-1]=l[N-1]||l[N],o[N]="");let F=Array.from({length:r},()=>null),_=-1;for(let N=r-1;N>=0;N--){let y=o[N];if(y.length!==0){if(a[N]==="text"&&!l[N]&&od(y)&&_>=0&&a[_]==="text"){let A=F[_]??[];A.push(y),F[_]=A,c[_]=c[N],o[N]="";continue}_=N}}for(let N=0;N<r;N++){let y=F[N];y!=null&&(o[N]=fd(y,o[N]))}let L=0;for(let N=0;N<r;N++){let y=o[N];y.length!==0&&(L!==N&&(o[L]=y,l[L]=l[N],a[L]=a[N],c[L]=c[N]),L++)}o.length=L,l.length=L,a.length=L,c.length=L;let ee=wd({len:L,texts:o,isWordLike:l,kinds:a,starts:c}),H=Cd(Ad(Ed(Sd(yd(gd(ee))))));for(let N=0;N<H.len-1;N++){let y=ud(H.texts[N]);y!==null&&(H.kinds[N]!=="space"&&H.kinds[N]!=="preserved-space"||H.kinds[N+1]!=="text"||!Is(H.texts[N+1])||(H.texts[N]=y.space,H.isWordLike[N]=!1,H.kinds[N]=H.kinds[N]==="preserved-space"?"preserved-space":"space",H.texts[N+1]=y.marks+H.texts[N+1],H.starts[N+1]=H.starts[N]+y.space.length))}return H}function Fd(t,e){if(t.len===0)return[];if(!e.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:t.len,consumedEndSegmentIndex:t.len}];let n=[],i=0;for(let r=0;r<t.len;r++)t.kinds[r]==="hard-break"&&(n.push({startSegmentIndex:i,endSegmentIndex:r,consumedEndSegmentIndex:r+1}),i=r+1);return i<t.len&&n.push({startSegmentIndex:i,endSegmentIndex:t.len,consumedEndSegmentIndex:t.len}),n}function Md(t){if(t.len<=1)return t;let e=[],n=[],i=[],r=[],o=null,s=!1,l=0,a=!1,c=!1;function u(){o!==null&&(e.push(_e(o)),n.push(s),i.push("text"),r.push(l),o=null)}for(let m=0;m<t.len;m++){let f=t.texts[m],x=t.kinds[m],E=t.isWordLike[m],g=t.starts[m];if(x==="text"){let b=Qc(f),F=Fn(f);if(o!==null&&a&&c){o.push(f),s=s||E,a=a||b,c=F;continue}u(),o=[f],s=E,l=g,a=b,c=F;continue}u(),e.push(f),n.push(E),i.push(x),r.push(g)}return u(),{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function js(t,e,n="normal",i="normal"){let r=zc(n),o=r.mode==="pre-wrap"?qc(t):jc(t);if(o.length===0)return{normalized:o,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let s=i==="keep-all"?Md(Gs(o,e,r)):Gs(o,e,r);return{normalized:o,chunks:Fd(s,r),...s}}var ht=null,qs=new Map,xt=null,Nd=96,Td=/\\p{Emoji_Presentation}/u,_d=/[\\p{Emoji_Presentation}\\p{Extended_Pictographic}\\p{Regional_Indicator}\\uFE0F\\u20E3]/u,Ui=null,$s=new Map;function Vi(){if(ht!==null)return ht;if(typeof OffscreenCanvas<"u")return ht=new OffscreenCanvas(1,1).getContext("2d"),ht;if(typeof document<"u")return ht=document.createElement("canvas").getContext("2d"),ht;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function Ld(t){let e=qs.get(t);return e||(e=new Map,qs.set(t,e)),e}function Ue(t,e){let n=e.get(t);return n===void 0&&(n={width:Vi().measureText(t).width,containsCJK:Ie(t)},e.set(t,n)),n}function gt(){if(xt!==null)return xt;if(typeof navigator>"u")return xt={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},xt;let t=navigator.userAgent,n=navigator.vendor==="Apple Computer, Inc."&&t.includes("Safari/")&&!t.includes("Chrome/")&&!t.includes("Chromium/")&&!t.includes("CriOS/")&&!t.includes("FxiOS/")&&!t.includes("EdgiOS/"),i=t.includes("Chrome/")||t.includes("Chromium/")||t.includes("CriOS/")||t.includes("Edg/");return xt={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:i,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},xt}function vd(t){let e=t.match(/(\\d+(?:\\.\\d+)?)\\s*px/);return e?parseFloat(e[1]):16}function Ks(){return Ui===null&&(Ui=new Intl.Segmenter(void 0,{granularity:"grapheme"})),Ui}function kd(t){return Td.test(t)||t.includes("\\uFE0F")}function Js(t){return _d.test(t)}function Rd(t,e){let n=$s.get(t);if(n!==void 0)return n;let i=Vi();i.font=t;let r=i.measureText("\\u{1F600}").width;if(n=0,r>e+.5&&typeof document<"u"&&document.body!==null){let o=document.createElement("span");o.style.font=t,o.style.display="inline-block",o.style.visibility="hidden",o.style.position="absolute",o.textContent="\\u{1F600}",document.body.appendChild(o);let s=o.getBoundingClientRect().width;document.body.removeChild(o),r-s>.5&&(n=r-s)}return $s.set(t,n),n}function Dd(t){let e=0,n=Ks();for(let i of n.segment(t))kd(i.segment)&&e++;return e}function Id(t,e){return e.emojiCount===void 0&&(e.emojiCount=Dd(t)),e.emojiCount}function Ze(t,e,n){return n===0?e.width:e.width-Id(t,e)*n}function Ys(t,e,n,i,r){if(e.breakableFitAdvances!==void 0)return e.breakableFitAdvances;let o=Ks(),s=[];for(let u of o.segment(t))s.push(u.segment);if(s.length<=1)return e.breakableFitAdvances=null,e.breakableFitAdvances;if(r==="sum-graphemes"){let u=[];for(let m of s){let f=Ue(m,n);u.push(Ze(m,f,i))}return e.breakableFitAdvances=u,e.breakableFitAdvances}if(r==="pair-context"||s.length>Nd){let u=[],m=null,f=0;for(let x of s){let E=Ue(x,n),g=Ze(x,E,i);if(m===null)u.push(g);else{let b=m+x,F=Ue(b,n);u.push(Ze(b,F,i)-f)}m=x,f=g}return e.breakableFitAdvances=u,e.breakableFitAdvances}let l=[],a="",c=0;for(let u of s){a+=u;let m=Ue(a,n),f=Ze(a,m,i);l.push(f-c),c=f}return e.breakableFitAdvances=l,e.breakableFitAdvances}function Xs(t,e){let n=Vi();n.font=t;let i=Ld(t),r=vd(t),o=e?Rd(t,r):0;return{cache:i,fontSize:r,emojiCorrection:o}}function Pd(t,e){for(;e<t.widths.length;){let n=t.kinds[e];if(n!=="space"&&n!=="zero-width-break"&&n!=="soft-hyphen")break;e++}return e}function Od(t,e){if(e<=0)return 0;let n=t%e;return Math.abs(n)<=1e-6?e:e-n}function Bd(t,e,n,i,r){let o=0,s=e;for(;o<t.length;){let l=s+t[o];if((o+1<t.length?l+r:l)>n+i)break;s=l,o++}return{fitCount:o,fittedWidth:s}}function Qs(t,e){return t.simpleLineWalkFastPath?Zs(t,e):ea(t,e)}function Zs(t,e,n){let{widths:i,kinds:r,breakableFitAdvances:o}=t;if(i.length===0)return 0;let l=gt().lineFitEpsilon,a=e+l,c=0,u=0,m=!1,f=0,x=0,E=0,g=0,b=-1,F=0;function _(){b=-1,F=0}function L(C=E,M=g,k=u){c++,n?.({startSegmentIndex:f,startGraphemeIndex:x,endSegmentIndex:C,endGraphemeIndex:M,width:k}),u=0,m=!1,_()}function ee(C,M){m=!0,f=C,x=0,E=C+1,g=0,u=M}function H(C,M,k){m=!0,f=C,x=M,E=C,g=M+1,u=k}function N(C,M){if(!m){ee(C,M);return}u+=M,E=C+1,g=0}function y(C,M){let k=o[C];for(let W=M;W<k.length;W++){let G=k[W];m?u+G>a?(L(),H(C,W,G)):(u+=G,E=C,g=W+1):H(C,W,G)}m&&E===C&&g===k.length&&(E=C+1,g=0)}let A=0;for(;A<i.length&&!(!m&&(A=Pd(t,A),A>=i.length));){let C=i[A],M=r[A],k=M==="space"||M==="preserved-space"||M==="tab"||M==="zero-width-break"||M==="soft-hyphen";if(!m){C>e&&o[A]!==null?y(A,0):ee(A,C),k&&(b=A+1,F=u-C),A++;continue}if(u+C>a){if(k){N(A,C),L(A+1,0,u-C),A++;continue}if(b>=0){if(E>b||E===b&&g>0){L();continue}L(b,0,F);continue}if(C>e&&o[A]!==null){L(),y(A,0),A++;continue}L();continue}N(A,C),k&&(b=A+1,F=u-C),A++}return m&&L(),c}function ea(t,e,n){if(t.simpleLineWalkFastPath)return Zs(t,e,n);let{widths:i,lineEndFitAdvances:r,lineEndPaintAdvances:o,kinds:s,breakableFitAdvances:l,discretionaryHyphenWidth:a,tabStopAdvance:c,chunks:u}=t;if(i.length===0||u.length===0)return 0;let m=gt(),f=m.lineFitEpsilon,x=e+f,E=0,g=0,b=!1,F=0,_=0,L=0,ee=0,H=-1,N=0,y=0,A=null;function C(){H=-1,N=0,y=0,A=null}function M(V=L,te=ee,U=g){E++,n?.({startSegmentIndex:F,startGraphemeIndex:_,endSegmentIndex:V,endGraphemeIndex:te,width:U}),g=0,b=!1,C()}function k(V,te){b=!0,F=V,_=0,L=V+1,ee=0,g=te}function W(V,te,U){b=!0,F=V,_=te,L=V,ee=te+1,g=U}function G(V,te){if(!b){k(V,te);return}g+=te,L=V+1,ee=0}function J(V,te,U,X){if(!te)return;let Ce=V==="tab"?0:r[U],O=V==="tab"?X:o[U];H=U+1,N=g-X+Ce,y=g-X+O,A=V}function v(V,te){let U=l[V];for(let X=te;X<U.length;X++){let Ce=U[X];b?g+Ce>x?(M(),W(V,X,Ce)):(g+=Ce,L=V,ee=X+1):W(V,X,Ce)}b&&L===V&&ee===U.length&&(L=V+1,ee=0)}function ie(V){if(A!=="soft-hyphen")return!1;let te=l[V];if(te==null)return!1;let{fitCount:U,fittedWidth:X}=Bd(te,g,e,f,a);return U===0?!1:(g=X,L=V,ee=U,C(),U===te.length?(L=V+1,ee=0,!0):(M(V,U,X+a),v(V,U),!0))}function Me(V){E++,n?.({startSegmentIndex:V.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:V.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),C()}for(let V=0;V<u.length;V++){let te=u[V];if(te.startSegmentIndex===te.endSegmentIndex){Me(te);continue}b=!1,g=0,F=te.startSegmentIndex,_=0,L=te.startSegmentIndex,ee=0,C();let U=te.startSegmentIndex;for(;U<te.endSegmentIndex;){let X=s[U],Ce=X==="space"||X==="preserved-space"||X==="tab"||X==="zero-width-break"||X==="soft-hyphen",O=X==="tab"?Od(g,c):i[U];if(X==="soft-hyphen"){b&&(L=U+1,ee=0,H=U+1,N=g+a,y=g+a,A=X),U++;continue}if(!b){O>e&&l[U]!==null?v(U,0):k(U,O),J(X,Ce,U,O),U++;continue}if(g+O>x){let B=g+(X==="tab"?0:r[U]),ae=g+(X==="tab"?O:o[U]);if(A==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&N<=x){M(H,0,y);continue}if(A==="soft-hyphen"&&ie(U)){U++;continue}if(Ce&&B<=x){G(U,O),M(U+1,0,ae),U++;continue}if(H>=0&&N<=x){if(L>H||L===H&&ee>0){M();continue}let re=H;M(re,0,y),U=re;continue}if(O>e&&l[U]!==null){M(),v(U,0),U++;continue}M();continue}G(U,O),J(X,Ce,U,O),U++}if(b){let X=H===te.consumedEndSegmentIndex?y:g;M(te.consumedEndSegmentIndex,0,X)}}return E}var zi=null;function Hd(){return zi===null&&(zi=new Intl.Segmenter(void 0,{granularity:"grapheme"})),zi}function Wd(t){return t?{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[],segments:[]}:{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[]}}function Gd(t,e){let n=[],i=[],r=0,o=!1,s=!1,l=!1;function a(){i.length!==0&&(n.push({text:i.length===1?i[0]:i.join(""),start:r}),i=[],o=!1,s=!1,l=!1)}function c(m,f,x){i=[m],r=f,o=x,s=Tn(m),l=Zt.has(m)}function u(m,f){i.push(m),o=o||f;let x=Tn(m);m.length===1&&Qe.has(m)?s=s||x:s=x,l=!1}for(let m of Hd().segment(t)){let f=m.segment,x=Ie(f);if(i.length===0){c(f,m.index,x);continue}if(l||Mn.has(f)||Qe.has(f)||e.carryCJKAfterClosingQuote&&x&&s){u(f,x);continue}if(!o&&!x){u(f,x);continue}a(),c(f,m.index,x)}return a(),n}function Ud(t){if(t.length<=1)return t;let e=[],n=[t[0].text],i=t[0].start,r=Ie(t[0].text),o=Fn(t[0].text);function s(){e.push({text:n.length===1?n[0]:n.join(""),start:i})}for(let l=1;l<t.length;l++){let a=t[l],c=Ie(a.text),u=Fn(a.text);if(r&&o){n.push(a.text),r=r||c,o=u;continue}s(),n=[a.text],i=a.start,r=c,o=u}return s(),e}function Vd(t,e,n,i){let r=gt(),{cache:o,emojiCorrection:s}=Xs(e,Js(t.normalized)),l=Ze("-",Ue("-",o),s),c=Ze(" ",Ue(" ",o),s)*8;if(t.len===0)return Wd(n);let u=[],m=[],f=[],x=[],E=t.chunks.length<=1,g=n?[]:null,b=[],F=n?[]:null,_=Array.from({length:t.len});function L(y,A,C,M,k,W,G){k!=="text"&&k!=="space"&&k!=="zero-width-break"&&(E=!1),u.push(A),m.push(C),f.push(M),x.push(k),g?.push(W),b.push(G),F!==null&&F.push(y)}function ee(y,A,C,M,k){let W=Ue(y,o),G=Ze(y,W,s),J=A==="space"||A==="preserved-space"||A==="zero-width-break"?0:G,v=A==="space"||A==="zero-width-break"?0:G;if(k&&M&&y.length>1){let ie="sum-graphemes";Qt(y)?ie="pair-context":r.preferPrefixWidthsForBreakableRuns&&(ie="segment-prefixes");let Me=Ys(y,W,o,s,ie);L(y,G,J,v,A,C,Me);return}L(y,G,J,v,A,C,null)}for(let y=0;y<t.len;y++){_[y]=u.length;let A=t.texts[y],C=t.isWordLike[y],M=t.kinds[y],k=t.starts[y];if(M==="soft-hyphen"){L(A,0,l,l,M,k,null);continue}if(M==="hard-break"){L(A,0,0,0,M,k,null);continue}if(M==="tab"){L(A,0,0,0,M,k,null);continue}let W=Ue(A,o);if(M==="text"&&W.containsCJK){let G=Gd(A,r),J=i==="keep-all"?Ud(G):G;for(let v=0;v<J.length;v++){let ie=J[v];ee(ie.text,"text",k+ie.start,C,i==="keep-all"||!Ie(ie.text))}continue}ee(A,M,k,C,!0)}let H=zd(t.chunks,_,u.length),N=g===null?null:Ds(t.normalized,g);return F!==null?{widths:u,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:x,simpleLineWalkFastPath:E,segLevels:N,breakableFitAdvances:b,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:H,segments:F}:{widths:u,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:x,simpleLineWalkFastPath:E,segLevels:N,breakableFitAdvances:b,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:H}}function zd(t,e,n){let i=[];for(let r=0;r<t.length;r++){let o=t[r],s=o.startSegmentIndex<e.length?e[o.startSegmentIndex]:n,l=o.endSegmentIndex<e.length?e[o.endSegmentIndex]:n,a=o.consumedEndSegmentIndex<e.length?e[o.consumedEndSegmentIndex]:n;i.push({startSegmentIndex:s,endSegmentIndex:l,consumedEndSegmentIndex:a})}return i}function jd(t,e,n,i){let r=i?.wordBreak??"normal",o=js(t,gt(),i?.whiteSpace,r);return Vd(o,e,n,r)}function ta(t,e,n){return jd(t,e,!1,n)}function na(t,e,n){let i=Qs(t,e);return{lineCount:i,height:i*n}}var qd={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function ia(t,e){let n={...qd,...e},i=1.2;for(let r=n.baseFontSize;r>=n.minFontSize;r-=n.step){let o=`${n.fontWeight} ${r}px ${n.fontFamily}`,s=ta(t,o),{lineCount:l}=na(s,n.maxWidth,r*i);if(l<=1)return{fontSize:r,fits:!0}}return{fontSize:n.minFontSize,fits:!1}}window.__timelines=window.__timelines||{};window.__hyperframes={fitTextFontSize:ia,getVariables:ls};function ra(){let t=window;t.__hyperframeRuntimeBootstrapped||(t.__hyperframeRuntimeBootstrapped=!0,ks())}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",ra,{once:!0}):ra();})();\n';
28948
+ RUNTIME_IIFE = '"use strict";(()=>{var Ea=Object.create;var Gn=Object.defineProperty;var wa=Object.getOwnPropertyDescriptor;var Ca=Object.getOwnPropertyNames;var Fa=Object.getPrototypeOf,Ma=Object.prototype.hasOwnProperty;var Na=(t,e,n)=>e in t?Gn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ee=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Ta=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ca(e))!Ma.call(t,r)&&r!==n&&Gn(t,r,{get:()=>e[r],enumerable:!(i=wa(e,r))||i.enumerable});return t};var _a=(t,e,n)=>(n=t!=null?Ea(Fa(t)):{},Ta(e||!t||!t.__esModule?Gn(n,"default",{value:t,enumerable:!0}):n,t));var ye=(t,e,n)=>Na(t,typeof e!="symbol"?e+"":e,n);var Pr=ee((lm,Xn)=>{var J=String,Ir=function(){return{isColorSupported:!1,reset:J,bold:J,dim:J,italic:J,underline:J,inverse:J,hidden:J,strikethrough:J,black:J,red:J,green:J,yellow:J,blue:J,magenta:J,cyan:J,white:J,gray:J,bgBlack:J,bgRed:J,bgGreen:J,bgYellow:J,bgBlue:J,bgMagenta:J,bgCyan:J,bgWhite:J,blackBright:J,redBright:J,greenBright:J,yellowBright:J,blueBright:J,magentaBright:J,cyanBright:J,whiteBright:J,bgBlackBright:J,bgRedBright:J,bgGreenBright:J,bgYellowBright:J,bgBlueBright:J,bgMagentaBright:J,bgCyanBright:J,bgWhiteBright:J}};Xn.exports=Ir();Xn.exports.createColors=Ir});var Qn=ee(()=>{});var an=ee((dm,Hr)=>{"use strict";var Or=Pr(),Br=Qn(),_t=class t extends Error{constructor(e,n,i,r,o,s){super(e),this.name="CssSyntaxError",this.reason=e,o&&(this.file=o),r&&(this.source=r),s&&(this.plugin=s),typeof n<"u"&&typeof i<"u"&&(typeof n=="number"?(this.line=n,this.column=i):(this.line=n.line,this.column=n.column,this.endLine=i.line,this.endColumn=i.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,t)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let n=this.source;e==null&&(e=Or.isColorSupported);let i=u=>u,r=u=>u,o=u=>u;if(e){let{bold:u,gray:m,red:f}=Or.createColors(!0);r=x=>u(f(x)),i=x=>m(x),Br&&(o=x=>Br(x))}let s=n.split(/\\r?\\n/),l=Math.max(this.line-3,0),a=Math.min(this.line+2,s.length),c=String(a).length;return s.slice(l,a).map((u,m)=>{let f=l+1+m,x=" "+(" "+f).slice(-c)+" | ";if(f===this.line){if(u.length>160){let g=20,b=Math.max(0,this.column-g),F=Math.max(this.column+g,this.endColumn+g),L=u.slice(b,F),k=i(x.replace(/\\d/g," "))+u.slice(0,Math.min(this.column-1,g-1)).replace(/[^\\t]/g," ");return r(">")+i(x)+o(L)+`\n `+k+r("^")}let A=i(x.replace(/\\d/g," "))+u.slice(0,this.column-1).replace(/[^\\t]/g," ");return r(">")+i(x)+o(u)+`\n `+A+r("^")}return" "+i(x)+o(u)}).join(`\n`)}toString(){let e=this.showSourceCode();return e&&(e=`\n\n`+e+`\n`),this.name+": "+this.message+e}};Hr.exports=_t;_t.default=_t});var Zn=ee((fm,Gr)=>{"use strict";var ll=/(<)(\\/?style\\b)/gi,ul=/(<)(!--)/g;function qe(t){return typeof t!="string"||!t.includes("<")?t:t.replace(ll,"\\\\3c $2").replace(ul,"\\\\3c $2")}var Wr={after:`\n`,beforeClose:`\n`,beforeComment:`\n`,beforeDecl:`\n`,beforeOpen:" ",beforeRule:`\n`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function cl(t){return t[0].toUpperCase()+t.slice(1)}var Lt=class{constructor(e){this.builder=e}atrule(e,n){let i=e.raws,r="@"+e.name,o=e.params?this.rawValue(e,"params"):"";if(typeof i.afterName<"u"?r+=i.afterName:o&&(r+=" "),e.nodes)this.block(e,r+o);else{let s=(i.between||"")+(n?";":"");this.builder(qe(r+o+s),e)}}beforeAfter(e,n){let i;e.type==="decl"?i=this.raw(e,null,"beforeDecl"):e.type==="comment"?i=this.raw(e,null,"beforeComment"):n==="before"?i=this.raw(e,null,"beforeRule"):i=this.raw(e,null,"beforeClose");let r=e.parent,o=0;for(;r&&r.type!=="root";)o+=1,r=r.parent;if(i.includes(`\n`)){let s=this.raw(e,null,"indent");if(s.length)for(let l=0;l<o;l++)i+=s}return i}block(e,n){let i=this.raw(e,"between","beforeOpen");this.builder(qe(n+i)+"{",e,"start");let r;e.nodes&&e.nodes.length?(this.body(e),r=this.raw(e,"after")):r=this.raw(e,"after","emptyBody"),r&&this.builder(qe(r)),this.builder("}",e,"end")}body(e){let n=e.nodes,i=n.length-1;for(;i>0&&n[i].type==="comment";)i-=1;let r=this.raw(e,"semicolon"),o=e.type==="document";for(let s=0;s<n.length;s++){let l=n[s],a=this.raw(l,"before");a&&this.builder(o?a:qe(a)),this.stringify(l,i!==s||r)}}comment(e){let n=this.raw(e,"left","commentLeft"),i=this.raw(e,"right","commentRight");this.builder(qe("/*"+n+e.text+i+"*/"),e)}decl(e,n){let i=e.raws,r=this.raw(e,"between","colon"),o=e.prop+r+this.rawValue(e,"value");e.important&&(o+=i.important||" !important"),n&&(o+=";"),this.builder(qe(o),e)}document(e){this.body(e)}raw(e,n,i){let r;if(i||(i=n),n&&(r=e.raws[n],typeof r<"u"))return r;let o=e.parent;if(i==="before"&&(!o||o.type==="root"&&o.first===e||o&&o.type==="document"))return"";if(!o)return Wr[i];let s=e.root(),l=s.rawCache||(s.rawCache={});if(typeof l[i]<"u")return l[i];if(i==="before"||i==="after")return this.beforeAfter(e,i);{let a="raw"+cl(i);this[a]?r=this[a](s,e):s.walk(c=>{if(r=c.raws[n],typeof r<"u")return!1})}return typeof r>"u"&&(r=Wr[i]),l[i]=r,r}rawBeforeClose(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length>0&&typeof i.raws.after<"u")return n=i.raws.after,n.includes(`\n`)&&(n=n.replace(/[^\\n]+$/,"")),!1}),n&&(n=n.replace(/\\S/g,"")),n}rawBeforeComment(e,n){let i;return e.walkComments(r=>{if(typeof r.raws.before<"u")return i=r.raws.before,i.includes(`\n`)&&(i=i.replace(/[^\\n]+$/,"")),!1}),typeof i>"u"?i=this.raw(n,null,"beforeDecl"):i&&(i=i.replace(/\\S/g,"")),i}rawBeforeDecl(e,n){let i;return e.walkDecls(r=>{if(typeof r.raws.before<"u")return i=r.raws.before,i.includes(`\n`)&&(i=i.replace(/[^\\n]+$/,"")),!1}),typeof i>"u"?i=this.raw(n,null,"beforeRule"):i&&(i=i.replace(/\\S/g,"")),i}rawBeforeOpen(e){let n;return e.walk(i=>{if(i.type!=="decl"&&(n=i.raws.between,typeof n<"u"))return!1}),n}rawBeforeRule(e){let n;return e.walk(i=>{if(i.nodes&&(i.parent!==e||e.first!==i)&&typeof i.raws.before<"u")return n=i.raws.before,n.includes(`\n`)&&(n=n.replace(/[^\\n]+$/,"")),!1}),n&&(n=n.replace(/\\S/g,"")),n}rawColon(e){let n;return e.walkDecls(i=>{if(typeof i.raws.between<"u")return n=i.raws.between.replace(/[^\\s:]/g,""),!1}),n}rawEmptyBody(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length===0&&(n=i.raws.after,typeof n<"u"))return!1}),n}rawIndent(e){if(e.raws.indent)return e.raws.indent;let n;return e.walk(i=>{let r=i.parent;if(r&&r!==e&&r.parent&&r.parent===e&&typeof i.raws.before<"u"){let o=i.raws.before.split(`\n`);return n=o[o.length-1],n=n.replace(/\\S/g,""),!1}}),n}rawSemicolon(e){let n;return e.walk(i=>{if(i.nodes&&i.nodes.length&&i.last.type==="decl"&&(n=i.raws.semicolon,typeof n<"u"))return!1}),n}rawValue(e,n){let i=e[n],r=e.raws[n];return r&&r.value===i?r.raw:i}root(e){if(this.body(e),e.raws.after){let n=e.raws.after,i=e.parent&&e.parent.type==="document";this.builder(i?n:qe(n))}}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(qe(e.raws.ownSemicolon),e,"end")}stringify(e,n){if(!this[e.type])throw new Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,n)}};Gr.exports=Lt;Lt.default=Lt});var vt=ee((mm,Ur)=>{"use strict";var dl=Zn();function ei(t,e){new dl(e).stringify(t)}Ur.exports=ei;ei.default=ei});var ln=ee((pm,ti)=>{"use strict";ti.exports.isClean=Symbol("isClean");ti.exports.my=Symbol("my")});var Dt=ee((hm,Vr)=>{"use strict";var fl=an(),ml=Zn(),pl=vt(),{isClean:kt,my:hl}=ln();function ni(t,e){let n=new t.constructor;for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i)||i==="proxyCache")continue;let r=t[i],o=typeof r;i==="parent"&&o==="object"?e&&(n[i]=e):i==="source"?n[i]=r:Array.isArray(r)?n[i]=r.map(s=>ni(s,n)):(o==="object"&&r!==null&&(r=ni(r)),n[i]=r)}return n}function We(t,e){if(e&&typeof e.offset<"u")return e.offset;let n=1,i=1,r=0;for(let o=0;o<t.length;o++){if(i===e.line&&n===e.column){r=o;break}t[o]===`\n`?(n=1,i+=1):n+=1}return r}var Rt=class{get proxyOf(){return this}constructor(e={}){this.raws={},this[kt]=!1,this[hl]=!0;for(let n in e)if(n==="nodes"){this.nodes=[];for(let i of e[n])typeof i.clone=="function"?this.append(i.clone()):this.append(i)}else this[n]=e[n]}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\\n\\s{4}at /.test(e.stack)){let n=this.source;e.stack=e.stack.replace(/\\n\\s{4}at /,`$&${n.input.from}:${n.start.line}:${n.start.column}$&`)}return e}after(e){return this.parent.insertAfter(this,e),this}assign(e={}){for(let n in e)this[n]=e[n];return this}before(e){return this.parent.insertBefore(this,e),this}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}clone(e={}){let n=ni(this);for(let i in e)n[i]=e[i];return n}cloneAfter(e={}){let n=this.clone(e);return this.parent.insertAfter(this,n),n}cloneBefore(e={}){let n=this.clone(e);return this.parent.insertBefore(this,n),n}error(e,n={}){if(this.source){let{end:i,start:r}=this.rangeBy(n);return this.source.input.error(e,{column:r.column,line:r.line},{column:i.column,line:i.line},n)}return new fl(e)}getProxyProcessor(){return{get(e,n){return n==="proxyOf"?e:n==="root"?()=>e.root().toProxy():e[n]},set(e,n,i){return e[n]===i||(e[n]=i,(n==="prop"||n==="value"||n==="name"||n==="params"||n==="important"||n==="text")&&e.markDirty()),!0}}}markClean(){this[kt]=!0}markDirty(){if(this[kt]){this[kt]=!1;let e=this;for(;e=e.parent;)e[kt]=!1}}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}positionBy(e={}){let n=this.source.start;if(e.index)n=this.positionInside(e.index);else if(e.word){let i="document"in this.source.input?this.source.input.document:this.source.input.css,o=i.slice(We(i,this.source.start),We(i,this.source.end)).indexOf(e.word);o!==-1&&(n=this.positionInside(o))}return n}positionInside(e){let n=this.source.start.column,i=this.source.start.line,r="document"in this.source.input?this.source.input.document:this.source.input.css,o=We(r,this.source.start),s=o+e;for(let l=o;l<s;l++)r[l]===`\n`?(n=1,i+=1):n+=1;return{column:n,line:i,offset:s}}prev(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e-1]}rangeBy(e={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,i={column:this.source.start.column,line:this.source.start.line,offset:We(n,this.source.start)},r=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:We(n,this.source.end)+1}:{column:i.column+1,line:i.line,offset:i.offset+1};if(e.word){let s=n.slice(We(n,this.source.start),We(n,this.source.end)).indexOf(e.word);s!==-1&&(i=this.positionInside(s),r=this.positionInside(s+e.word.length))}else e.start?i={column:e.start.column,line:e.start.line,offset:We(n,e.start)}:e.index&&(i=this.positionInside(e.index)),e.end?r={column:e.end.column,line:e.end.line,offset:We(n,e.end)}:typeof e.endIndex=="number"?r=this.positionInside(e.endIndex):e.index&&(r=this.positionInside(e.index+1));return(r.line<i.line||r.line===i.line&&r.column<=i.column)&&(r={column:i.column+1,line:i.line,offset:i.offset+1}),{end:r,start:i}}raw(e,n){return new ml().raw(this,e,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...e){if(this.parent){let n=this,i=!1;for(let r of e)r===this?i=!0:i?(this.parent.insertAfter(n,r),n=r):this.parent.insertBefore(n,r);i||this.remove()}return this}root(){let e=this;for(;e.parent&&e.parent.type!=="document";)e=e.parent;return e}toJSON(e,n){let i={},r=n==null;n=n||new Map;let o=0;for(let s in this){if(!Object.prototype.hasOwnProperty.call(this,s)||s==="parent"||s==="proxyCache")continue;let l=this[s];if(Array.isArray(l))i[s]=l.map(a=>typeof a=="object"&&a.toJSON?a.toJSON(null,n):a);else if(typeof l=="object"&&l.toJSON)i[s]=l.toJSON(null,n);else if(s==="source"){if(l==null)continue;let a=n.get(l.input);a==null&&(a=o,n.set(l.input,o),o++),i[s]={end:l.end,inputId:a,start:l.start}}else i[s]=l}return r&&(i.inputs=[...n.keys()].map(s=>s.toJSON())),i}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(e=pl){e.stringify&&(e=e.stringify);let n="";return e(this,i=>{n+=i}),n}warn(e,n,i={}){let r={node:this};for(let o in i)r[o]=i[o];return e.warn(n,r)}};Vr.exports=Rt;Rt.default=Rt});var Pt=ee((xm,zr)=>{"use strict";var xl=Dt(),It=class extends xl{constructor(e){super(e),this.type="comment"}};zr.exports=It;It.default=It});var Bt=ee((gm,qr)=>{"use strict";var gl=Dt(),Ot=class extends gl{get variable(){return this.prop.startsWith("--")||this.prop[0]==="$"}constructor(e){e&&typeof e.value<"u"&&typeof e.value!="string"&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}};qr.exports=Ot;Ot.default=Ot});var je=ee((ym,eo)=>{"use strict";var jr=Pt(),$r=Bt(),yl=Dt(),{isClean:Kr,my:Jr}=ln(),ii,Yr,Xr,ri;function Qr(t){return t.map(e=>(e.nodes&&(e.nodes=Qr(e.nodes)),delete e.source,e))}function Zr(t){if(t[Kr]=!1,t.proxyOf.nodes)for(let e of t.proxyOf.nodes)Zr(e)}var Re=class t extends yl{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...e){for(let n of e){let i=this.normalize(n,this.last);for(let r of i)this.proxyOf.nodes.push(r)}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let n of this.nodes)n.cleanRaws(e)}each(e){if(!this.proxyOf.nodes)return;let n=this.getIterator(),i,r;for(;this.indexes[n]<this.proxyOf.nodes.length&&(i=this.indexes[n],r=e(this.proxyOf.nodes[i],i),r!==!1);)this.indexes[n]+=1;return delete this.indexes[n],r}every(e){return this.nodes.every(e)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let e=this.lastEach;return this.indexes[e]=0,e}getProxyProcessor(){return{get(e,n){return n==="proxyOf"?e:e[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...i)=>e[n](...i.map(r=>typeof r=="function"?(o,s)=>r(o.toProxy(),s):r)):n==="every"||n==="some"?i=>e[n]((r,...o)=>i(r.toProxy(),...o)):n==="root"?()=>e.root().toProxy():n==="nodes"?e.nodes.map(i=>i.toProxy()):n==="first"||n==="last"?e[n].toProxy():e[n]:e[n]},set(e,n,i){return e[n]===i||(e[n]=i,(n==="name"||n==="params"||n==="selector")&&e.markDirty()),!0}}}index(e){return typeof e=="number"?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}insertAfter(e,n){let i=this.index(e),r=this.normalize(n,this.proxyOf.nodes[i]).reverse();i=this.index(e);for(let s of r)this.proxyOf.nodes.splice(i+1,0,s);let o;for(let s in this.indexes)o=this.indexes[s],i<o&&(this.indexes[s]=o+r.length);return this.markDirty(),this}insertBefore(e,n){let i=this.index(e),r=i===0?"prepend":!1,o=this.normalize(n,this.proxyOf.nodes[i],r).reverse();i=this.index(e);for(let l of o)this.proxyOf.nodes.splice(i,0,l);let s;for(let l in this.indexes)s=this.indexes[l],i<=s&&(this.indexes[l]=s+o.length);return this.markDirty(),this}normalize(e,n){if(typeof e=="string")e=Qr(Yr(e).nodes);else if(typeof e>"u")e=[];else if(Array.isArray(e)){e=e.slice(0);for(let r of e)r.parent&&r.parent.removeChild(r,"ignore")}else if(e.type==="root"&&this.type!=="document"){e=e.nodes.slice(0);for(let r of e)r.parent&&r.parent.removeChild(r,"ignore")}else if(e.type)e=[e];else if(e.prop){if(typeof e.value>"u")throw new Error("Value field is missed in node creation");typeof e.value!="string"&&(e.value=String(e.value)),e=[new $r(e)]}else if(e.selector||e.selectors)e=[new ri(e)];else if(e.name)e=[new ii(e)];else if(e.text)e=[new jr(e)];else throw new Error("Unknown node type in node creation");return e.map(r=>(r[Jr]||t.rebuild(r),r=r.proxyOf,r.parent&&r.parent.removeChild(r),r[Kr]&&Zr(r),r.raws||(r.raws={}),typeof r.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(r.raws.before=n.raws.before.replace(/\\S/g,"")),r.parent=this.proxyOf,r))}prepend(...e){e=e.reverse();for(let n of e){let i=this.normalize(n,this.first,"prepend").reverse();for(let r of i)this.proxyOf.nodes.unshift(r);for(let r in this.indexes)this.indexes[r]=this.indexes[r]+i.length}return this.markDirty(),this}push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(e){e=this.index(e),this.proxyOf.nodes[e].parent=void 0,this.proxyOf.nodes.splice(e,1);let n;for(let i in this.indexes)n=this.indexes[i],n>=e&&(this.indexes[i]=n-1);return this.markDirty(),this}replaceValues(e,n,i){return i||(i=n,n={}),this.walkDecls(r=>{n.props&&!n.props.includes(r.prop)||n.fast&&!r.value.includes(n.fast)||(r.value=r.value.replace(e,i))}),this.markDirty(),this}some(e){return this.nodes.some(e)}walk(e){return this.each((n,i)=>{let r;try{r=e(n,i)}catch(o){throw n.addToError(o)}return r!==!1&&n.walk&&(r=n.walk(e)),r})}walkAtRules(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="atrule"&&e.test(i.name))return n(i,r)}):this.walk((i,r)=>{if(i.type==="atrule"&&i.name===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="atrule")return n(i,r)}))}walkComments(e){return this.walk((n,i)=>{if(n.type==="comment")return e(n,i)})}walkDecls(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="decl"&&e.test(i.prop))return n(i,r)}):this.walk((i,r)=>{if(i.type==="decl"&&i.prop===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="decl")return n(i,r)}))}walkRules(e,n){return n?e instanceof RegExp?this.walk((i,r)=>{if(i.type==="rule"&&e.test(i.selector))return n(i,r)}):this.walk((i,r)=>{if(i.type==="rule"&&i.selector===e)return n(i,r)}):(n=e,this.walk((i,r)=>{if(i.type==="rule")return n(i,r)}))}};Re.registerParse=t=>{Yr=t};Re.registerRule=t=>{ri=t};Re.registerAtRule=t=>{ii=t};Re.registerRoot=t=>{Xr=t};eo.exports=Re;Re.default=Re;Re.rebuild=t=>{t.type==="atrule"?Object.setPrototypeOf(t,ii.prototype):t.type==="rule"?Object.setPrototypeOf(t,ri.prototype):t.type==="decl"?Object.setPrototypeOf(t,$r.prototype):t.type==="comment"?Object.setPrototypeOf(t,jr.prototype):t.type==="root"&&Object.setPrototypeOf(t,Xr.prototype),t[Jr]=!0,t.nodes&&t.nodes.forEach(e=>{Re.rebuild(e)})}});var un=ee((bm,no)=>{"use strict";var to=je(),ut=class extends to{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}};no.exports=ut;ut.default=ut;to.registerAtRule(ut)});var cn=ee((Sm,oo)=>{"use strict";var bl=je(),io,ro,nt=class extends bl{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new io(new ro,this,e).stringify()}};nt.registerLazyResult=t=>{io=t};nt.registerProcessor=t=>{ro=t};oo.exports=nt;nt.default=nt});var ao=ee((Am,so)=>{var Sl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Al=(t,e=21)=>(n=e)=>{let i="",r=n|0;for(;r--;)i+=t[Math.random()*t.length|0];return i},El=(t=21)=>{let e="",n=t|0;for(;n--;)e+=Sl[Math.random()*64|0];return e};so.exports={nanoid:El,customAlphabet:Al}});var dn=ee(()=>{});var fn=ee(()=>{});var oi=ee(()=>{});var lo=ee(()=>{});var ai=ee((Lm,fo)=>{"use strict";var{existsSync:wl,readFileSync:Cl}=lo(),{dirname:si,join:Fl}=dn(),{SourceMapConsumer:uo,SourceMapGenerator:co}=fn();function Ml(t){return Buffer?Buffer.from(t,"base64").toString():window.atob(t)}var Ht=class{constructor(e,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let i=n.map?n.map.prev:void 0,r=this.loadMap(n.from,i);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=si(this.mapFile)),r&&(this.text=r)}consumer(){return this.consumerCache||(this.consumerCache=new uo(this.json||this.text)),this.consumerCache}decodeInline(e){let n=/^data:application\\/json;charset=utf-?8;base64,/,i=/^data:application\\/json;base64,/,r=/^data:application\\/json;charset=utf-?8,/,o=/^data:application\\/json,/,s=e.match(r)||e.match(o);if(s)return decodeURIComponent(e.substr(s[0].length));let l=e.match(n)||e.match(i);if(l)return Ml(e.substr(l[0].length));let a=e.slice(22);throw a=a.slice(0,a.indexOf(",")),new Error("Unsupported source map encoding "+a)}getAnnotationURL(e){return e.replace(/^\\/\\*\\s*# sourceMappingURL=/,"").trim()}isMap(e){return typeof e!="object"?!1:typeof e.mappings=="string"||typeof e._mappings=="string"||Array.isArray(e.sections)}loadAnnotation(e){let n=e.match(/\\/\\*\\s*# sourceMappingURL=/g);if(!n)return;let i=e.lastIndexOf(n.pop()),r=e.indexOf("*/",i);i>-1&&r>-1&&(this.annotation=this.getAnnotationURL(e.substring(i,r)))}loadFile(e,n,i){if(!(!i&&!this.unsafeMap&&!/\\.map$/i.test(e))&&(this.root=si(e),wl(e)))return this.mapFile=e,Cl(e,"utf-8").toString().trim()}loadMap(e,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let i=n(e);if(i){let r=this.loadFile(i,e,!0);if(!r)throw new Error("Unable to load previous source map: "+i.toString());return r}}else{if(n instanceof uo)return co.fromSourceMap(n).toString();if(n instanceof co)return n.toString();if(this.isMap(n))return JSON.stringify(n);throw new Error("Unsupported previous source map format: "+n.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let i=this.annotation;e&&(i=Fl(si(e),i));let r=this.loadFile(i,e,!1);if(r)try{this.json=JSON.parse(r.replace(/^\\)]}\'[^\\n]*\\n/,""))}catch{return}return r}}}startWith(e,n){return e?e.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};fo.exports=Ht;Ht.default=Ht});var Wt=ee((vm,go)=>{"use strict";var{nanoid:Nl}=ao(),{isAbsolute:ci,resolve:di}=dn(),{SourceMapConsumer:Tl,SourceMapGenerator:_l}=fn(),{fileURLToPath:mo,pathToFileURL:mn}=oi(),po=an(),Ll=ai(),li=Qn(),ui=Symbol("lineToIndexCache"),vl=!!(Tl&&_l),ho=!!(di&&ci);function xo(t){if(t[ui])return t[ui];let e=t.css.split(`\n`),n=new Array(e.length),i=0;for(let r=0,o=e.length;r<o;r++)n[r]=i,i+=e[r].length+1;return t[ui]=n,n}var ct=class{get from(){return this.file||this.id}constructor(e,n={}){if(e===null||typeof e>"u"||typeof e=="object"&&!e.toString)throw new Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),this.css[0]==="\\uFEFF"||this.css[0]==="\\uFFFE"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,this.document=this.css,n.document&&(this.document=n.document.toString()),n.from&&(!ho||/^\\w+:\\/\\//.test(n.from)||ci(n.from)?this.file=n.from:this.file=di(n.from)),ho&&vl){let i=new Ll(this.css,n);if(i.text){this.map=i;let r=i.consumer().file;!this.file&&r&&(this.file=this.mapResolve(r))}}this.file||(this.id="<input css "+Nl(6)+">"),this.map&&(this.map.file=this.from)}error(e,n,i,r={}){let o,s,l,a,c;if(n&&typeof n=="object"){let m=n,f=i;if(typeof m.offset=="number"){a=m.offset;let x=this.fromOffset(a);n=x.line,i=x.col}else n=m.line,i=m.column,a=this.fromLineAndColumn(n,i);if(typeof f.offset=="number"){l=f.offset;let x=this.fromOffset(l);s=x.line,o=x.col}else s=f.line,o=f.column,l=this.fromLineAndColumn(f.line,f.column)}else if(i)a=this.fromLineAndColumn(n,i);else{a=n;let m=this.fromOffset(a);n=m.line,i=m.col}let u=this.origin(n,i,s,o);return u?c=new po(e,u.endLine===void 0?u.line:{column:u.column,line:u.line},u.endLine===void 0?u.column:{column:u.endColumn,line:u.endLine},u.source,u.file,r.plugin):c=new po(e,s===void 0?n:{column:i,line:n},s===void 0?i:{column:o,line:s},this.css,this.file,r.plugin),c.input={column:i,endColumn:o,endLine:s,endOffset:l,line:n,offset:a,source:this.css},this.file&&(mn&&(c.input.url=mn(this.file).toString()),c.input.file=this.file),c}fromLineAndColumn(e,n){return xo(this)[e-1]+n-1}fromOffset(e){let n=xo(this),i=n[n.length-1],r=0;if(e>=i)r=n.length-1;else{let o=n.length-2,s;for(;r<o;)if(s=r+(o-r>>1),e<n[s])o=s-1;else if(e>=n[s+1])r=s+1;else{r=s;break}}return{col:e-n[r]+1,line:r+1}}mapResolve(e){return/^\\w+:\\/\\//.test(e)?e:di(this.map.consumer().sourceRoot||this.map.root||".",e)}origin(e,n,i,r){if(!this.map)return!1;let o=this.map.consumer(),s=o.originalPositionFor({column:n,line:e});if(!s.source)return!1;let l;typeof i=="number"&&(l=o.originalPositionFor({column:r,line:i}));let a;ci(s.source)?a=mn(s.source):a=new URL(s.source,this.map.consumer().sourceRoot||mn(this.map.mapFile));let c={column:s.column,endColumn:l&&l.column,endLine:l&&l.line,line:s.line,url:a.toString()};if(a.protocol==="file:")if(mo)c.file=mo(a);else throw new Error("file: protocol is not available in this PostCSS build");let u=o.sourceContentFor(s.source);return u&&(c.source=u),c}toJSON(){let e={};for(let n of["hasBOM","css","file","id"])this[n]!=null&&(e[n]=this[n]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}};go.exports=ct;ct.default=ct;li&&li.registerInput&&li.registerInput(ct)});var dt=ee((km,Ao)=>{"use strict";var yo=je(),bo,So,$e=class extends yo{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}normalize(e,n,i){let r=super.normalize(e);if(n){if(i==="prepend")this.nodes.length>1?n.raws.before=this.nodes[1].raws.before:delete n.raws.before;else if(this.first!==n)for(let o of r)o.raws.before=n.raws.before}return r}removeChild(e,n){let i=this.index(e);return!n&&i===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[i].raws.before),super.removeChild(e)}toResult(e={}){return new bo(new So,this,e).stringify()}};$e.registerLazyResult=t=>{bo=t};$e.registerProcessor=t=>{So=t};Ao.exports=$e;$e.default=$e;yo.registerRoot($e)});var fi=ee((Rm,Eo)=>{"use strict";var Gt={comma(t){return Gt.split(t,[","],!0)},space(t){let e=[" ",`\n`," "];return Gt.split(t,e)},split(t,e,n){let i=[],r="",o=!1,s=0,l=!1,a="",c=!1;for(let u of t)c?c=!1:u==="\\\\"?c=!0:l?u===a&&(l=!1):u===\'"\'||u==="\'"?(l=!0,a=u):u==="("?s+=1:u===")"?s>0&&(s-=1):s===0&&e.includes(u)&&(o=!0),o?(r!==""&&i.push(r.trim()),r="",o=!1):r+=u;return(n||r!=="")&&i.push(r.trim()),i}};Eo.exports=Gt;Gt.default=Gt});var pn=ee((Dm,Co)=>{"use strict";var wo=je(),kl=fi(),ft=class extends wo{get selectors(){return kl.comma(this.selector)}set selectors(e){let n=this.selector?this.selector.match(/,\\s*/):null,i=n?n[0]:","+this.raw("between","beforeOpen");this.selector=e.join(i)}constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}};Co.exports=ft;ft.default=ft;wo.registerRule(ft)});var Mo=ee((Im,Fo)=>{"use strict";var Rl=un(),Dl=Pt(),Il=Bt(),Pl=Wt(),Ol=ai(),Bl=dt(),Hl=pn();function Ut(t,e){if(Array.isArray(t))return t.map(r=>Ut(r));let{inputs:n,...i}=t;if(n){e=[];for(let r of n){let o={...r,__proto__:Pl.prototype};o.map&&(o.map={...o.map,__proto__:Ol.prototype}),e.push(o)}}if(i.nodes&&(i.nodes=t.nodes.map(r=>Ut(r,e))),i.source){let{inputId:r,...o}=i.source;i.source=o,r!=null&&(i.source.input=e[r])}if(i.type==="root")return new Bl(i);if(i.type==="decl")return new Il(i);if(i.type==="rule")return new Hl(i);if(i.type==="comment")return new Dl(i);if(i.type==="atrule")return new Rl(i);throw new Error("Unknown node type: "+t.type)}Fo.exports=Ut;Ut.default=Ut});var pi=ee((Pm,ko)=>{"use strict";var{dirname:hn,relative:To,resolve:_o,sep:Lo}=dn(),{SourceMapConsumer:vo,SourceMapGenerator:xn}=fn(),{pathToFileURL:No}=oi(),Wl=Wt(),Gl=!!(vo&&xn),Ul=!!(hn&&_o&&To&&Lo),mi=class{constructor(e,n,i,r){this.stringify=e,this.mapOpts=i.map||{},this.root=n,this.opts=i,this.css=r,this.originalCSS=r,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}addAnnotation(){let e;this.isInline()?e="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?e=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?e=this.mapOpts.annotation(this.opts.to,this.root):e=this.outputFile()+".map";let n=`\n`;this.css.includes(`\\r\n`)&&(n=`\\r\n`),this.css+=n+"/*# sourceMappingURL="+e+" */"}applyPrevMaps(){for(let e of this.previous()){let n=this.toUrl(this.path(e.file)),i=e.root||hn(e.file),r;this.mapOpts.sourcesContent===!1?(r=new vo(e.text),r.sourcesContent&&(r.sourcesContent=null)):r=e.consumer(),this.map.applySourceMap(r,n,this.toUrl(this.path(i)))}}clearAnnotation(){if(this.mapOpts.annotation!==!1){if(this.root){let e;for(let n=this.root.nodes.length-1;n>=0;n--)e=this.root.nodes[n],e.type==="comment"&&e.text.startsWith("# sourceMappingURL=")&&this.root.removeChild(n)}else if(this.css){let e;for(;(e=this.css.lastIndexOf("/*#"))!==-1;){let n=this.css.indexOf("*/",e+3);if(n===-1)break;for(;e>0&&this.css[e-1]===`\n`;)e--;this.css=this.css.slice(0,e)+this.css.slice(n+2)}}}}generate(){if(this.clearAnnotation(),Ul&&Gl&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,n=>{e+=n}),[e]}}generateMap(){if(this.root)this.generateString();else if(this.previous().length===1){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=xn.fromSourceMap(e,{ignoreInvalidMapping:!0})}else this.map=new xn({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}generateString(){this.css="",this.map=new xn({file:this.outputFile(),ignoreInvalidMapping:!0});let e=1,n=1,i="<no source>",r={generated:{column:0,line:0},original:{column:0,line:0},source:""},o,s;this.stringify(this.root,(l,a,c)=>{if(this.css+=l,a&&c!=="end"&&(r.generated.line=e,r.generated.column=n-1,a.source&&a.source.start?(r.source=this.sourcePath(a),r.original.line=a.source.start.line,r.original.column=a.source.start.column-1,this.map.addMapping(r)):(r.source=i,r.original.line=1,r.original.column=0,this.map.addMapping(r))),s=l.match(/\\n/g),s?(e+=s.length,o=l.lastIndexOf(`\n`),n=l.length-o):n+=l.length,a&&c!=="start"){let u=a.parent||{raws:{}};(!(a.type==="decl"||a.type==="atrule"&&!a.nodes)||a!==u.last||u.raws.semicolon)&&(a.source&&a.source.end?(r.source=this.sourcePath(a),r.original.line=a.source.end.line,r.original.column=a.source.end.column-1,r.generated.line=e,r.generated.column=n-2,this.map.addMapping(r)):(r.source=i,r.original.line=1,r.original.column=0,r.generated.line=e,r.generated.column=n-1,this.map.addMapping(r)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(e=>e.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let e=this.mapOpts.annotation;return typeof e<"u"&&e!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(e=>e.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(e){if(this.mapOpts.absolute||e.charCodeAt(0)===60||/^\\w+:\\/\\//.test(e))return e;let n=this.memoizedPaths.get(e);if(n)return n;let i=this.opts.to?hn(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(i=hn(_o(i,this.mapOpts.annotation)));let r=To(i,e);return this.memoizedPaths.set(e,r),r}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(e=>{if(e.source&&e.source.input.map){let n=e.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let e=new Wl(this.originalCSS,this.opts);e.map&&this.previousMaps.push(e.map)}return this.previousMaps}setSourcesContent(){let e={};if(this.root)this.root.walk(n=>{if(n.source){let i=n.source.input.from;if(i&&!e[i]){e[i]=!0;let r=this.usesFileUrls?this.toFileUrl(i):this.toUrl(this.path(i));this.map.setSourceContent(r,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(e){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(e.source.input.from):this.toUrl(this.path(e.source.input.from))}toBase64(e){return Buffer?Buffer.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}toFileUrl(e){let n=this.memoizedFileURLs.get(e);if(n)return n;if(No){let i=No(e).toString();return this.memoizedFileURLs.set(e,i),i}else throw new Error("`map.absolute` option is not available in this PostCSS build")}toUrl(e){let n=this.memoizedURLs.get(e);if(n)return n;Lo==="\\\\"&&(e=e.replace(/\\\\/g,"/"));let i=encodeURI(e).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(e,i),i}};ko.exports=mi});var Io=ee((Om,Do)=>{"use strict";var gn=/[\\t\\n\\f\\r "#\'()/;[\\\\\\]{}]/g,yn=/[\\t\\n\\f\\r !"#\'():;@[\\\\\\]{}]|\\/(?=\\*)/g,Vl=/.[\\r\\n"\'(/\\\\]/,Ro=/[\\da-f]/i;Do.exports=function(e,n={}){let i=e.css.valueOf(),r=n.ignoreErrors,o,s,l,a,c,u,m,f,x,A,g=i.length,b=0,F=[],L=[],k=-1;function V(){return b}function O(C){throw e.error("Unclosed "+C,b)}function T(){return L.length===0&&b>=g}function y(C){if(L.length)return L.pop();if(b>=g)return;let M=C?C.ignoreUnclosed:!1;switch(o=i.charCodeAt(b),o){case 10:case 32:case 9:case 13:case 12:{a=b;do a+=1,o=i.charCodeAt(a);while(o===32||o===10||o===9||o===13||o===12);u=["space",i.slice(b,a)],b=a-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let _=String.fromCharCode(o);u=[_,_,b];break}case 40:{if(A=F.length?F.pop()[1]:"",x=i.charCodeAt(b+1),A==="url"&&x!==39&&x!==34&&x!==32&&x!==10&&x!==9&&x!==12&&x!==13){a=b;do{if(m=!1,a=i.indexOf(")",a+1),a===-1)if(r||M){a=b;break}else O("bracket");for(f=a;i.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);u=["brackets",i.slice(b,a+1),b,a],b=a}else b<=k?u=["(","(",b]:(a=i.indexOf(")",b+1),s=i.slice(b,a+1),a===-1||Vl.test(s)?(k=a===-1?g:a,u=["(","(",b]):(u=["brackets",s,b,a],b=a));break}case 39:case 34:{c=o===39?"\'":\'"\',a=b;do{if(m=!1,a=i.indexOf(c,a+1),a===-1)if(r||M){a=b+1;break}else O("string");for(f=a;i.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);u=["string",i.slice(b,a+1),b,a],b=a;break}case 64:{gn.lastIndex=b+1,gn.test(i),gn.lastIndex===0?a=i.length-1:a=gn.lastIndex-2,u=["at-word",i.slice(b,a+1),b,a],b=a;break}case 92:{for(a=b,l=!0;i.charCodeAt(a+1)===92;)a+=1,l=!l;if(o=i.charCodeAt(a+1),l&&o!==47&&o!==32&&o!==10&&o!==9&&o!==13&&o!==12&&(a+=1,Ro.test(i.charAt(a)))){for(;Ro.test(i.charAt(a+1));)a+=1;i.charCodeAt(a+1)===32&&(a+=1)}u=["word",i.slice(b,a+1),b,a],b=a;break}default:{o===47&&i.charCodeAt(b+1)===42?(a=i.indexOf("*/",b+2)+1,a===0&&(r||M?a=i.length:O("comment")),u=["comment",i.slice(b,a+1),b,a],b=a):(yn.lastIndex=b+1,yn.test(i),yn.lastIndex===0?a=i.length-1:a=yn.lastIndex-2,u=["word",i.slice(b,a+1),b,a],F.push(u),b=a);break}}return b++,u}function E(C){L.push(C)}return{back:E,endOfFile:T,nextToken:y,position:V}}});var Ho=ee((Bm,Bo)=>{"use strict";var zl=un(),ql=Pt(),jl=Bt(),$l=dt(),Po=pn(),Kl=Io(),Oo={empty:!0,space:!0};function Jl(t){for(let e=t.length-1;e>=0;e--){let n=t[e],i=n[3]||n[2];if(i)return i}}var hi=class{constructor(e){this.input=e,this.root=new $l,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:e,start:{column:1,line:1,offset:0}}}atrule(e){let n=new zl;n.name=e[1].slice(1),n.name===""&&this.unnamedAtrule(n,e),this.init(n,e[2]);let i,r,o,s=!1,l=!1,a=[],c=[];for(;!this.tokenizer.endOfFile();){if(e=this.tokenizer.nextToken(),i=e[0],i==="("||i==="["?c.push(i==="("?")":"]"):i==="{"&&c.length>0?c.push("}"):i===c[c.length-1]&&c.pop(),c.length===0)if(i===";"){n.source.end=this.getPosition(e[2]),n.source.end.offset++,this.semicolon=!0;break}else if(i==="{"){l=!0;break}else if(i==="}"){if(a.length>0){for(o=a.length-1,r=a[o];r&&r[0]==="space";)r=a[--o];r&&(n.source.end=this.getPosition(r[3]||r[2]),n.source.end.offset++)}this.end(e);break}else a.push(e);else a.push(e);if(this.tokenizer.endOfFile()){s=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(a),a.length?(n.raws.afterName=this.spacesAndCommentsFromStart(a),this.raw(n,"params",a),s&&(e=a[a.length-1],n.source.end=this.getPosition(e[3]||e[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(e){let n=this.colon(e);if(n===!1)return;let i=0,r;for(let o=n-1;o>=0&&(r=e[o],!(r[0]!=="space"&&(i+=1,i===2)));o--);throw this.input.error("Missed semicolon",r[0]==="word"?r[3]+1:r[2])}colon(e){let n=0,i,r,o;for(let[s,l]of e.entries()){if(r=l,o=r[0],o==="("&&(n+=1),o===")"&&(n-=1),n===0&&o===":")if(!i)this.doubleColon(r);else{if(i[0]==="word"&&i[1]==="progid")continue;return s}i=r}return!1}comment(e){let n=new ql;this.init(n,e[2]),n.source.end=this.getPosition(e[3]||e[2]),n.source.end.offset++;let i=e[1].slice(2,-2);if(!i.trim())n.text="",n.raws.left=i,n.raws.right="";else{let r=i.match(/^(\\s*)([^]*\\S)(\\s*)$/);n.text=r[2],n.raws.left=r[1],n.raws.right=r[3]}}createTokenizer(){this.tokenizer=Kl(this.input)}decl(e,n){let i=new jl;this.init(i,e[0][2]);let r=e[e.length-1];for(r[0]===";"&&(this.semicolon=!0,e.pop()),i.source.end=this.getPosition(r[3]||r[2]||Jl(e)),i.source.end.offset++;e[0][0]!=="word";)e.length===1&&this.unknownWord(e),i.raws.before+=e.shift()[1];for(i.source.start=this.getPosition(e[0][2]),i.prop="";e.length;){let c=e[0][0];if(c===":"||c==="space"||c==="comment")break;i.prop+=e.shift()[1]}i.raws.between="";let o;for(;e.length;)if(o=e.shift(),o[0]===":"){i.raws.between+=o[1];break}else o[0]==="word"&&/\\w/.test(o[1])&&this.unknownWord([o]),i.raws.between+=o[1];(i.prop[0]==="_"||i.prop[0]==="*")&&(i.raws.before+=i.prop[0],i.prop=i.prop.slice(1));let s=[],l;for(;e.length&&(l=e[0][0],!(l!=="space"&&l!=="comment"));)s.push(e.shift());this.precheckMissedSemicolon(e);for(let c=e.length-1;c>=0;c--){if(o=e[c],o[1].toLowerCase()==="!important"){i.important=!0;let u=this.stringFrom(e,c);u=this.spacesFromEnd(e)+u,u!==" !important"&&(i.raws.important=u);break}else if(o[1].toLowerCase()==="important"){let u=e.slice(0),m="";for(let f=c;f>0;f--){let x=u[f][0];if(m.trim().startsWith("!")&&x!=="space")break;m=u.pop()[1]+m}m.trim().startsWith("!")&&(i.important=!0,i.raws.important=m,e=u)}if(o[0]!=="space"&&o[0]!=="comment")break}e.some(c=>c[0]!=="space"&&c[0]!=="comment")&&(i.raws.between+=s.map(c=>c[1]).join(""),s=[]),this.raw(i,"value",s.concat(e),n),i.value.includes(":")&&!n&&this.checkMissedSemicolon(e)}doubleColon(e){throw this.input.error("Double colon",{offset:e[2]},{offset:e[2]+e[1].length})}emptyRule(e){let n=new Po;this.init(n,e[2]),n.selector="",n.raws.between="",this.current=n}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(e[2]),n.source.end.offset+=n.raws.ownSemicolon.length)}}getPosition(e){let n=this.input.fromOffset(e);return{column:n.col,line:n.line,offset:e}}init(e,n){this.current.push(e),e.source={input:this.input,start:this.getPosition(n)},e.raws.before=this.spaces,this.spaces="",e.type!=="comment"&&(this.semicolon=!1)}other(e){let n=!1,i=null,r=!1,o=null,s=[],l=e[1].startsWith("--"),a=[],c=e;for(;c;){if(i=c[0],a.push(c),i==="("||i==="[")o||(o=c),s.push(i==="("?")":"]");else if(l&&r&&i==="{")o||(o=c),s.push("}");else if(s.length===0)if(i===";")if(r){this.decl(a,l);return}else break;else if(i==="{"){this.rule(a);return}else if(i==="}"){this.tokenizer.back(a.pop()),n=!0;break}else i===":"&&(r=!0);else i===s[s.length-1]&&(s.pop(),s.length===0&&(o=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),s.length>0&&this.unclosedBracket(o),n&&r){if(!l)for(;a.length&&(c=a[a.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(a.pop());this.decl(a,l)}else this.unknownWord(a)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch(e=this.tokenizer.nextToken(),e[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e);break}this.endFile()}precheckMissedSemicolon(){}raw(e,n,i,r){let o,s,l=i.length,a="",c=!0,u,m;for(let f=0;f<l;f+=1)o=i[f],s=o[0],s==="space"&&f===l-1&&!r?c=!1:s==="comment"?(m=i[f-1]?i[f-1][0]:"empty",u=i[f+1]?i[f+1][0]:"empty",!Oo[m]&&!Oo[u]?a.slice(-1)===","?c=!1:a+=o[1]:c=!1):a+=o[1];if(!c){let f=i.reduce((x,A)=>x+A[1],"");e.raws[n]={raw:f,value:a}}e[n]=a}rule(e){e.pop();let n=new Po;this.init(n,e[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(n,"selector",e),this.current=n}spacesAndCommentsFromEnd(e){let n,i="";for(;e.length&&(n=e[e.length-1][0],!(n!=="space"&&n!=="comment"));)i=e.pop()[1]+i;return i}spacesAndCommentsFromStart(e){let n,i="";for(;e.length&&(n=e[0][0],!(n!=="space"&&n!=="comment"));)i+=e.shift()[1];return i}spacesFromEnd(e){let n,i="";for(;e.length&&(n=e[e.length-1][0],n==="space");)i=e.pop()[1]+i;return i}stringFrom(e,n){let i="";for(let r=n;r<e.length;r++)i+=e[r][1];return e.splice(n,e.length-n),i}unclosedBlock(){let e=this.current.source.start;throw this.input.error("Unclosed block",e.line,e.column)}unclosedBracket(e){throw this.input.error("Unclosed bracket",{offset:e[2]},{offset:e[2]+1})}unexpectedClose(e){throw this.input.error("Unexpected }",{offset:e[2]},{offset:e[2]+1})}unknownWord(e){throw this.input.error("Unknown word "+e[0][1],{offset:e[0][2]},{offset:e[0][2]+e[0][1].length})}unnamedAtrule(e,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};Bo.exports=hi});var Sn=ee((Hm,Wo)=>{"use strict";var Yl=je(),Xl=Wt(),Ql=Ho();function bn(t,e){let n=new Xl(t,e),i=new Ql(n);try{i.parse()}catch(r){throw r}return i.root}Wo.exports=bn;bn.default=bn;Yl.registerParse(bn)});var xi=ee((Wm,Go)=>{"use strict";var Vt=class{constructor(e,n={}){if(this.type="warning",this.text=e,n.node&&n.node.source){let i=n.node.rangeBy(n);this.line=i.start.line,this.column=i.start.column,this.endLine=i.end.line,this.endColumn=i.end.column}for(let i in n)this[i]=n[i]}toString(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}};Go.exports=Vt;Vt.default=Vt});var An=ee((Gm,Uo)=>{"use strict";var Zl=xi(),zt=class{get content(){return this.css}constructor(e,n,i){this.processor=e,this.messages=[],this.root=n,this.opts=i,this.css="",this.map=void 0}toString(){return this.css}warn(e,n={}){n.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(n.plugin=this.lastPlugin.postcssPlugin);let i=new Zl(e,n);return this.messages.push(i),i}warnings(){return this.messages.filter(e=>e.type==="warning")}};Uo.exports=zt;zt.default=zt});var gi=ee((Um,zo)=>{"use strict";var Vo={};zo.exports=function(e){Vo[e]||(Vo[e]=!0,typeof console<"u"&&console.warn&&console.warn(e))}});var Si=ee((zm,Ko)=>{"use strict";var eu=je(),tu=cn(),nu=pi(),iu=Sn(),qo=An(),ru=dt(),ou=vt(),{isClean:Be,my:su}=ln(),Vm=gi(),au={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},lu={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},uu={Once:!0,postcssPlugin:!0,prepare:!0},mt=0;function qt(t){return typeof t=="object"&&typeof t.then=="function"}function $o(t){let e=!1,n=au[t.type];return t.type==="decl"?e=t.prop.toLowerCase():t.type==="atrule"&&(e=t.name.toLowerCase()),e&&t.append?[n,n+"-"+e,mt,n+"Exit",n+"Exit-"+e]:e?[n,n+"-"+e,n+"Exit",n+"Exit-"+e]:t.append?[n,mt,n+"Exit"]:[n,n+"Exit"]}function jo(t){let e;return t.type==="document"?e=["Document",mt,"DocumentExit"]:t.type==="root"?e=["Root",mt,"RootExit"]:e=$o(t),{eventIndex:0,events:e,iterator:0,node:t,visitorIndex:0,visitors:[]}}function yi(t){return t[Be]=!1,t.nodes&&t.nodes.forEach(e=>yi(e)),t}var bi={},Ke=class t{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(e,n,i){this.stringified=!1,this.processed=!1;let r;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))r=yi(n);else if(n instanceof t||n instanceof qo)r=yi(n.root),n.map&&(typeof i.map>"u"&&(i.map={}),i.map.inline||(i.map.inline=!1),i.map.prev=n.map);else{let o=iu;i.syntax&&(o=i.syntax.parse),i.parser&&(o=i.parser),o.parse&&(o=o.parse);try{r=o(n,i)}catch(s){this.processed=!0,this.error=s}r&&!r[su]&&eu.rebuild(r)}this.result=new qo(e,r,i),this.helpers={...bi,postcss:bi,result:this.result},this.plugins=this.processor.plugins.map(o=>typeof o=="object"&&o.prepare?{...o,...o.prepare(this.result)}:o)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(e,n){let i=this.result.lastPlugin;try{n&&n.addToError(e),this.error=e,e.name==="CssSyntaxError"&&!e.plugin?(e.plugin=i.postcssPlugin,e.setMessage()):i.postcssVersion}catch(r){console&&console.error&&console.error(r)}return e}prepareVisitors(){this.listeners={};let e=(n,i,r)=>{this.listeners[i]||(this.listeners[i]=[]),this.listeners[i].push([n,r])};for(let n of this.plugins)if(typeof n=="object")for(let i in n){if(!lu[i]&&/^[A-Z]/.test(i))throw new Error(`Unknown event ${i} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!uu[i])if(typeof n[i]=="object")for(let r in n[i])r==="*"?e(n,i,n[i][r]):e(n,i+"-"+r.toLowerCase(),n[i][r]);else typeof n[i]=="function"&&e(n,i,n[i])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let e=0;e<this.plugins.length;e++){let n=this.plugins[e],i=this.runOnRoot(n);if(qt(i))try{await i}catch(r){throw this.handleError(r)}}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Be];){e[Be]=!0;let n=[jo(e)];for(;n.length>0;){let i=this.visitTick(n);if(qt(i))try{await i}catch(r){let o=n[n.length-1].node;throw this.handleError(r,o)}}}if(this.listeners.OnceExit)for(let[n,i]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(e.type==="document"){let r=e.nodes.map(o=>i(o,this.helpers));await Promise.all(r)}else await i(e,this.helpers)}catch(r){throw this.handleError(r)}}}return this.processed=!0,this.stringify()}runOnRoot(e){this.result.lastPlugin=e;try{if(typeof e=="object"&&e.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(i=>e.Once(i,this.helpers));return qt(n[0])?Promise.all(n):n}return e.Once(this.result.root,this.helpers)}else if(typeof e=="function")return e(this.result.root,this.result)}catch(n){throw this.handleError(n)}}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,n=ou;e.syntax&&(n=e.syntax.stringify),e.stringifier&&(n=e.stringifier),n.stringify&&(n=n.stringify);let i=this.result.root.source;if(e.map===void 0&&!(i&&i.input&&i.input.map)){let s="";return n(this.result.root,l=>{s+=l}),this.result.css=s,this.result}let o=new nu(n,this.result.root,this.result.opts).generate();return this.result.css=o[0],this.result.map=o[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins){let n=this.runOnRoot(e);if(qt(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Be];)e[Be]=!0,this.walkSync(e);if(this.listeners.OnceExit)if(e.type==="document")for(let n of e.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,e)}return this.result}then(e,n){return this.async().then(e,n)}toString(){return this.css}visitSync(e,n){for(let[i,r]of e){this.result.lastPlugin=i;let o;try{o=r(n,this.helpers)}catch(s){throw this.handleError(s,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(qt(o))throw this.getAsyncError()}}visitTick(e){let n=e[e.length-1],{node:i,visitors:r}=n;if(i.type!=="root"&&i.type!=="document"&&!i.parent){e.pop();return}if(r.length>0&&n.visitorIndex<r.length){let[s,l]=r[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===r.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=s;try{return l(i.toProxy(),this.helpers)}catch(a){throw this.handleError(a,i)}}if(n.iterator!==0){let s=n.iterator,l;for(;l=i.nodes[i.indexes[s]];)if(i.indexes[s]+=1,!l[Be]){l[Be]=!0,e.push(jo(l));return}n.iterator=0,delete i.indexes[s]}let o=n.events;for(;n.eventIndex<o.length;){let s=o[n.eventIndex];if(n.eventIndex+=1,s===mt){i.nodes&&i.nodes.length&&(i[Be]=!0,n.iterator=i.getIterator());return}else if(this.listeners[s]){n.visitors=this.listeners[s];return}}e.pop()}walkSync(e){e[Be]=!0;let n=$o(e);for(let i of n)if(i===mt)e.nodes&&e.each(r=>{r[Be]||this.walkSync(r)});else{let r=this.listeners[i];if(r&&this.visitSync(r,e.toProxy()))return}}warnings(){return this.sync().warnings()}};Ke.registerPostcss=t=>{bi=t};Ko.exports=Ke;Ke.default=Ke;ru.registerLazyResult(Ke);tu.registerLazyResult(Ke)});var Yo=ee((jm,Jo)=>{"use strict";var cu=pi(),du=Sn(),fu=An(),mu=vt(),qm=gi(),jt=class{get content(){return this.result.css}get css(){return this.result.css}get map(){return this.result.map}get messages(){return[]}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){if(this._root)return this._root;let e,n=du;try{e=n(this._css,this._opts)}catch(i){this.error=i}if(this.error)throw this.error;return this._root=e,e}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(e,n,i){n=n.toString(),this.stringified=!1,this._processor=e,this._css=n,this._opts=i,this._map=void 0;let r=mu;this.result=new fu(this._processor,void 0,this._opts),this.result.css=n;let o=this;Object.defineProperty(this.result,"root",{get(){return o.root}});let s=new cu(r,void 0,this._opts,n);if(s.isMap()){let[l,a]=s.generate();l&&(this.result.css=l),a&&(this.result.map=a)}else s.clearAnnotation(),this.result.css=s.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}sync(){if(this.error)throw this.error;return this.result}then(e,n){return this.async().then(e,n)}toString(){return this._css}warnings(){return[]}};Jo.exports=jt;jt.default=jt});var Qo=ee(($m,Xo)=>{"use strict";var pu=cn(),hu=Si(),xu=Yo(),gu=dt(),it=class{constructor(e=[]){this.version="8.5.14",this.plugins=this.normalize(e)}normalize(e){let n=[];for(let i of e)if(i.postcss===!0?i=i():i.postcss&&(i=i.postcss),typeof i=="object"&&Array.isArray(i.plugins))n=n.concat(i.plugins);else if(typeof i=="object"&&i.postcssPlugin)n.push(i);else if(typeof i=="function")n.push(i);else if(!(typeof i=="object"&&(i.parse||i.stringify)))throw new Error(i+" is not a PostCSS plugin");return n}process(e,n={}){return!this.plugins.length&&!n.parser&&!n.stringifier&&!n.syntax?new xu(this,e,n):new hu(this,e,n)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}};Xo.exports=it;it.default=it;gu.registerProcessor(it);pu.registerProcessor(it)});var ss=ee((Km,os)=>{"use strict";var Zo=un(),es=Pt(),yu=je(),bu=an(),ts=Bt(),ns=cn(),Su=Mo(),Au=Wt(),Eu=Si(),wu=fi(),Cu=Dt(),Fu=Sn(),Ai=Qo(),Mu=An(),is=dt(),rs=pn(),Nu=vt(),Tu=xi();function le(...t){return t.length===1&&Array.isArray(t[0])&&(t=t[0]),new Ai(t)}le.plugin=function(e,n){let i=!1;function r(...s){console&&console.warn&&!i&&(i=!0,console.warn(e+`: postcss.plugin was deprecated. Migration guide:\nhttps://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+`: \\u91CC\\u9762 postcss.plugin \\u88AB\\u5F03\\u7528. \\u8FC1\\u79FB\\u6307\\u5357:\nhttps://www.w3ctech.com/topic/2226`));let l=n(...s);return l.postcssPlugin=e,l.postcssVersion=new Ai().version,l}let o;return Object.defineProperty(r,"postcss",{get(){return o||(o=r()),o}}),r.process=function(s,l,a){return le([r(a)]).process(s,l)},r};le.stringify=Nu;le.parse=Fu;le.fromJSON=Su;le.list=wu;le.comment=t=>new es(t);le.atRule=t=>new Zo(t);le.decl=t=>new ts(t);le.rule=t=>new rs(t);le.root=t=>new is(t);le.document=t=>new ns(t);le.CssSyntaxError=bu;le.Declaration=ts;le.Container=yu;le.Processor=Ai;le.Document=ns;le.Comment=es;le.Warning=Tu;le.AtRule=Zo;le.Result=Mu;le.Input=Au;le.Rule=rs;le.Root=is;le.Node=Cu;Eu.registerPostcss(le);os.exports=le;le.default=le});function on(){return globalThis}function v(t,e){if(typeof window>"u")return;let n=on(),i=n.__hf?.onSwallowed;if(i)try{i({label:t,error:e})}catch(r){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${t} swallowed:`,e)}function Ee(t){try{window.parent.postMessage(t,"*")}catch(e){v("bridge.postMessage",e)}}var La={play:(t,e)=>e.onPlay(),pause:(t,e)=>e.onPause(),"stop-media":(t,e)=>e.onStopMedia(),seek:(t,e)=>e.onSeek(Number(t.frame??0),t.seekMode??"commit"),tick:(t,e)=>e.onTick(),"set-muted":(t,e)=>e.onSetMuted(!!t.muted),"set-volume":(t,e)=>e.onSetVolume(Math.max(0,Math.min(1,Number(t.volume??1)))),"set-media-output-muted":(t,e)=>e.onSetMediaOutputMuted(!!t.muted),"set-native-media-sync-disabled":(t,e)=>e.onSetNativeMediaSyncDisabled(!!t.disabled),"set-web-audio-media-disabled":(t,e)=>e.onSetWebAudioMediaDisabled(!!t.disabled),"set-playback-rate":(t,e)=>e.onSetPlaybackRate(Number(t.playbackRate??1)),"set-color-grading":(t,e)=>e.onSetColorGrading(t.target??null,t.grading??null),"set-color-grading-compare":(t,e)=>e.onSetColorGradingCompare(t.target??null,t.compare??null),"enable-pick-mode":(t,e)=>e.onEnablePickMode(),"disable-pick-mode":(t,e)=>e.onDisablePickMode(),"flash-elements":t=>va(t)};function va(t){let e=t.selectors,n=t.duration||800;e&&ka(e,n)}function er(t){let e=n=>{let i=n.data;if(!i||i.source!=="hf-parent"||i.type!=="control")return;let r=i.action;if(typeof r!="string")return;let o=La[r];o&&o(i,t)};return window.addEventListener("message",e),Ee({source:"hf-preview",type:"ready"}),e}function ka(t,e){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`\n .__hf-flash {\n outline: 2px solid rgba(59, 130, 246, 0.6) !important;\n outline-offset: 2px !important;\n animation: __hf-flash-pulse ${e}ms ease-out forwards !important;\n }\n @keyframes __hf-flash-pulse {\n 0% { outline-color: rgba(59, 130, 246, 0.8); }\n 100% { outline-color: transparent; }\n }\n `,document.head.appendChild(n)}for(let n of t)try{document.querySelectorAll(n).forEach(r=>{r.classList.add("__hf-flash"),setTimeout(()=>r.classList.remove("__hf-flash"),e)})}catch(i){v("bridge.flashElements.querySelector",i)}}var Un=null;function tr(t){Un=t}function At(t,e){if(Un)try{Un({source:"hf-preview",type:"analytics",event:t,properties:e??{}})}catch(n){v("runtime.analytics.site1",n)}}function nr(t){let e=[],n=l=>{if(typeof l.getAnimations!="function")return[];try{return l.getAnimations()}catch{return[]}},i=(l,a)=>{for(let c of l){try{c.currentTime=a}catch(u){v("runtime.adapters.css.site1",u)}try{c.pause()}catch(u){v("runtime.adapters.css.site2",u)}}},r=l=>{for(let a of l)try{a.play()}catch(c){v("runtime.adapters.css.site3",c)}},o=l=>{for(let a of l)try{a.pause()}catch(c){v("runtime.adapters.css.site4",c)}},s=l=>{l.baseDelay?l.el.style.animationDelay=l.baseDelay:l.el.style.removeProperty("animation-delay"),l.basePlayState?l.el.style.animationPlayState=l.basePlayState:l.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{e=[];let l=document.querySelectorAll("*");for(let a of l){if(!(a instanceof HTMLElement))continue;let c=window.getComputedStyle(a);!c.animationName||c.animationName==="none"||e.push({el:a,baseDelay:a.style.animationDelay||"",basePlayState:a.style.animationPlayState||""})}},seek:l=>{let a=Number(l.time)||0;for(let c of e){if(!c.el.isConnected)continue;let u=t?.resolveStartSeconds?t.resolveStartSeconds(c.el):Number.parseFloat(c.el.getAttribute("data-start")??"0")||0,m=Math.max(0,a-u)*1e3,f=n(c.el);if(f.length>0){i(f,m);continue}c.el.style.animationPlayState="paused",c.el.style.animationDelay=`-${(m/1e3).toFixed(3)}s`}},pause:()=>{for(let l of e){if(!l.el.isConnected)continue;let a=n(l.el);a.length>0&&o(a),s(l)}},play:()=>{for(let l of e)l.el.isConnected&&(s(l),r(n(l.el)))},revert:()=>{e=[]}}}function ir(t){return{name:"gsap",discover:()=>{},seek:e=>{let n=t.getTimeline();if(!n)return;n.pause();let i=Math.max(0,Number(e.time)||0);typeof n.totalTime=="function"?(n.totalTime(i+.001,!0),n.totalTime(i,!1)):n.seek(i,!1)},pause:()=>{let e=t.getTimeline();e&&e.pause()}}}function rr(){return{name:"animejs",discover:()=>{try{let t=window.anime;if(!t||typeof t.running>"u")return;let e=t.running;if(!Array.isArray(e)||e.length===0)return;let n=window.__hfAnime??[],i=new Set(n);for(let r of e)i.has(r)||n.push(r);window.__hfAnime=n}catch(t){v("runtime.adapters.animejs.site1",t)}},seek:t=>{let e=Math.max(0,(Number(t.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let i of n)try{typeof i.seek=="function"&&i.seek(e)}catch(r){v("runtime.adapters.animejs.site2",r)}},pause:()=>{let t=window.__hfAnime;if(!(!t||t.length===0))for(let e of t)try{typeof e.pause=="function"&&e.pause()}catch(n){v("runtime.adapters.animejs.site3",n)}},play:()=>{let t=window.__hfAnime;if(!(!t||t.length===0))for(let e of t)try{typeof e.play=="function"&&e.play()}catch(n){v("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function ar(){return{name:"lottie",discover:()=>{try{let t=window.lottie;if(t&&typeof t.getRegisteredAnimations=="function"){let e=t.getRegisteredAnimations();if(Array.isArray(e)&&e.length>0){let n=window.__hfLottie??[],i=new Set(n);for(let r of e)i.has(r)||n.push(r);window.__hfLottie=n}}}catch(t){v("runtime.adapters.lottie.site1",t)}},seek:t=>{let e=Math.max(0,Number(t.time)||0),n=window.__hfLottie;if(!(!n||n.length===0))for(let i of n)try{if(or(i))i.goToAndStop(e*1e3,!1);else if(sr(i)){if(typeof i.setCurrentRawFrameValue=="function"){let r=i.totalFrames??0,o=i.frameRate??30,s=e*o;r>0&&i.setCurrentRawFrameValue(Math.min(s,r-1))}else if(typeof i.seek=="function"){let r=i.duration??1,o=Math.min(100,e/r*100);i.seek(o)}}}catch(r){v("runtime.adapters.lottie.site2",r)}},pause:()=>{let t=window.__hfLottie;if(!(!t||t.length===0))for(let e of t)try{(or(e)||sr(e))&&e.pause()}catch(n){v("runtime.adapters.lottie.site3",n)}},revert:()=>{}}}function or(t){return typeof t=="object"&&t!==null&&typeof t.goToAndStop=="function"}function sr(t){return typeof t=="object"&&t!==null&&typeof t.pause=="function"&&("totalFrames"in t||"duration"in t)}var Vn=-1;function sn(t){if(t!==Vn){Vn=t;try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:{time:t}}))}catch(e){v("runtime.adapters.seek-dispatch.site1",e)}}}function lr(t){Vn=t;try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:{time:t}}))}catch(e){v("runtime.adapters.seek-dispatch.force",e)}}function ur(){let t=null,e=0,n=null,i=null,r=null,o=null,s=()=>{if(typeof window>"u")return null;let u=window.THREE?.DefaultLoadingManager;return!u||typeof u!="object"||typeof u.itemsLoaded!="number"||typeof u.itemsTotal!="number"?null:u},l=c=>{o||c.itemsTotal<=c.itemsLoaded||(o=new Promise(u=>{c.onLoad=function(){try{r?.call(this)}finally{o=null,c.onLoad=r??null,u()}}}))},a=c=>{n!==c&&(n=c,i=c.onStart??null,r=c.onLoad??null,c.onStart=function(u,m,f){try{i?.call(this,u,m,f)}finally{l(c)}})};return{name:"three",discover:()=>{let c=s();c&&(a(c),l(c))},seek:c=>{t=Math.max(0,Number(c.time)||0),e=t,window.__hfThreeTime=t,sn(t)},pause:()=>{t==null&&(t=Math.max(0,e))},play:()=>{t=null},revert:()=>{t=null,e=0},getReadyPromise:()=>{let c=s();return!c||c.itemsTotal<=c.itemsLoaded?null:(o||l(c),o)}}}function Oe(t){let e=null,n=new WeakSet;return{name:t.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let i=t.getInstances();if(i.length===0)return null;let r=i.filter(o=>!n.has(o));return r.length===0?null:e||(e=Promise.allSettled(r.map(o=>t.waitFor(o).then(()=>{n.add(o)}))).then(()=>{e=null}),e)}}}function cr(){return Oe({name:"mapbox",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfMapbox;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{if(t.loaded()){e();return}t.on("load",e)})})}function dr(){return Oe({name:"leaflet",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfLeaflet;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>t.whenReady(e))})}function fr(){return Oe({name:"google-maps",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfGoogleMaps;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{let n=t.addListener("tilesloaded",()=>{n.remove(),e()})})})}function mr(){return Oe({name:"maplibre",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfMaplibre;return Array.isArray(t)?t:[]},waitFor:t=>new Promise(e=>{if(t.loaded()){e();return}t.on("load",e)})})}function pr(){return Oe({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let t=window.__hfD3;return Array.isArray(t)?t:[]},waitFor:t=>t.end()})}function hr(){let t=null,e=0;return{name:"typegpu",discover:()=>{},seek:n=>{t=Math.max(0,Number(n.time)||0),e=t,window.__hfTypegpuTime=t,sn(t)},pause:()=>{t==null&&(t=Math.max(0,e))},play:()=>{t=null},revert:()=>{t=null,e=0}}}function xr(t){let e=t.nextElementSibling;if(e instanceof HTMLImageElement&&e.classList.contains("__render_frame__")&&e.complete&&e.naturalWidth>0)return e;if(t.id){let n=document.getElementById(`__render_frame_${t.id}__`);if(n instanceof HTMLImageElement&&n.complete&&n.naturalWidth>0)return n}return null}function gr(){let t=globalThis.GPUQueue;if(!t?.prototype?.copyExternalImageToTexture)return;let e=t.prototype.copyExternalImageToTexture;t.prototype.copyExternalImageToTexture=function(n,i,r){if(n?.source instanceof HTMLVideoElement){let o=xr(n.source);if(o)return e.call(this,{...n,source:o},i,r)}return e.call(this,n,i,r)}}function yr(){let t=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],e=["texImage2D","texSubImage2D"];for(let n of t){let i=n?.prototype;if(i)for(let r of e){let o=i[r];if(typeof o!="function"||o.__hfVideoPatched)continue;let s=function(...l){let a=l.length-1,c=l[a];if(c instanceof HTMLVideoElement){let u=xr(c);u&&(l[a]=u)}return o.apply(this,l)};s.__hfVideoPatched=!0,i[r]=s}}}function br(){let t=!1,e=0,n=new WeakMap,i=()=>{if(!document.getAnimations)return[];try{return document.getAnimations()}catch{return[]}},r=l=>{let a=Number(l.currentTime);return Number.isFinite(a)&&a>0?a:0},o=(l,a)=>a<=0?l:l>=a?Math.max(0,l-a):l,s=(l,a)=>{let c=n.get(l);if(c)return c;let u={compositionTimeMs:a,animationTimeMs:t?o(r(l),a):r(l)};return n.set(l,u),u};return{name:"waapi",discover:()=>{t=!0;for(let l of i())s(l,e)},seek:l=>{let a=Math.max(0,(Number(l.time)||0)*1e3);e=a;for(let c of i()){let u=t?s(c,a):s(c,0),m=u.animationTimeMs+Math.max(0,a-u.compositionTimeMs);try{c.currentTime=m}catch(f){v("runtime.adapters.waapi.site1",f)}try{c.pause()}catch(f){v("runtime.adapters.waapi.site2",f)}}},pause:()=>{if(document.getAnimations)for(let l of document.getAnimations())try{l.pause()}catch(a){v("runtime.adapters.waapi.site3",a)}}}}function Sr(t,e){if(t.length===0)return 1;let n=0;for(;n<t.length-2&&e>=t[n+1].time;)n+=1;let i=t[n],r=t[n+1]??i,o=r.time-i.time,s=o<=0?0:Math.min(1,Math.max(0,(e-i.time)/o));return i.volume+(r.volume-i.volume)*s}function Ra(t,e,n,i){let r=Number.parseFloat(t.dataset.start??"0")||0,o=Number.parseFloat(t.dataset.end??""),s=Number.parseFloat(t.dataset.duration??""),l=Number.isFinite(o)&&o>r?o:Number.isFinite(s)&&s>0?r+s:n,a=Number.parseFloat(t.dataset.volume??""),c=Number.isFinite(a)?Math.max(0,Math.min(1,a)):1;t.volume=c;let u=1/Math.min(60,Math.max(1,i)),m=Math.max(0,r),f=Math.min(n,l),x=[];for(let g=m;g<=f+1e-6;g+=u){let b=Math.min(f,g);e(b);let F=Number(t.volume);if(!Number.isFinite(F))continue;let L=Math.max(0,Math.min(1,F)),k=x.at(-1);if((!k||Math.abs(k.volume-L)>1e-4||b===f)&&x.push({time:Number(b.toFixed(6)),volume:Number(L.toFixed(6))}),b===f)break}return x.some(g=>Math.abs(g.volume-c)>1e-4)?x:null}function Ar(t,e,n,i){if(!e||!(t instanceof HTMLAudioElement)&&!(t instanceof HTMLVideoElement)||n<=0)return;let o=Ra(t,s=>{try{typeof e.totalTime=="function"?e.totalTime(s,!0):typeof e.seek=="function"&&e.seek(s,!0)}catch{}},n,60);o&&i.set(t,o)}function Ct(t){let e=t.defaultPlaybackRate;return Number.isFinite(e)&&e>0?Math.max(.1,Math.min(5,e)):1}function Er(t){let e=Array.from(document.querySelectorAll("video, audio")),n=t?.shouldIncludeElement?e.filter(s=>t.shouldIncludeElement?.(s)):e.filter(s=>s.hasAttribute("data-start")),i=[],r=[],o=0;for(let s of n){let l=t?.resolveStartSeconds?t.resolveStartSeconds(s):Number.parseFloat(s.dataset.start??"0");if(!Number.isFinite(l))continue;let a=Number.parseFloat(s.dataset.playbackStart??s.dataset.mediaStart??"0")||0,c=Ct(s),u=s.loop,m=Number.isFinite(s.duration)&&s.duration>0?s.duration:null,f=t?.resolveDurationSeconds?.(s)??Number.parseFloat(s.dataset.duration??"");(!Number.isFinite(f)||f<=0)&&m!=null&&(f=Math.max(0,(m-a)/c));let x=Number.isFinite(f)&&f>0?l+f:Number.POSITIVE_INFINITY,A=Number.parseFloat(s.dataset.volume??""),g={el:s,start:l,mediaStart:a,duration:Number.isFinite(f)&&f>0?f:Number.POSITIVE_INFINITY,end:x,volume:Number.isFinite(A)?A:null,playbackRate:c,loop:u,sourceDuration:m};i.push(g),s.tagName==="VIDEO"&&r.push(g),Number.isFinite(x)&&(o=Math.max(o,x))}return{timedMediaEls:n,mediaClips:i,videoClips:r,maxMediaEnd:o}}var zn=new WeakMap,Et=new WeakMap,qn=new WeakSet,at=new WeakSet;function Da(t){if(at.has(t))return;at.add(t);let e=()=>at.delete(t);t.addEventListener("playing",e,{once:!0}),t.addEventListener("pause",e,{once:!0}),t.addEventListener("error",e,{once:!0})}var Ia=3;function Pa(t){return t.error!=null||t.networkState===Ia}var jn=new WeakMap;function wt(t){return Number.isFinite(t)?Math.max(0,Math.min(1,t)):1}function wr(t){let e=!!(t.outputMuted||t.userMuted);for(let n of t.clips){let{el:i}=n;if(!i.isConnected)continue;let r=(t.timeSeconds-n.start)*n.playbackRate+n.mediaStart;if(t.timeSeconds>=n.start&&t.timeSeconds<=n.end&&r>=0&&(!i.ended||n.loop)){if(n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let M=n.sourceDuration-n.mediaStart;M>0&&r>=n.sourceDuration&&(r=n.mediaStart+(r-n.mediaStart)%M)}let s=wt(t.userVolume??1),l=wt(n.volume??1),a=jn.get(i),c=wt(i.volume),u;n.volumeKeyframes&&n.volumeKeyframes.length>0?u=wt(Sr(n.volumeKeyframes,r)):a===void 0||Math.abs(c-a)>1e-4?u=c:u=l;let m=wt(u*s);i.volume=m,jn.set(i,m),t.onElementVolume?.(i,m),(e||t.isWebAudioOwned?.(i))&&(i.muted=!0),i.preload!=="auto"&&(i.preload="auto");try{i.playbackRate=n.playbackRate*t.playbackRate}catch(M){v("runtime.media.site1",M)}let f=.04,x=2,A=i.currentTime||0,g=Math.abs(A-r),b=r-A,F=zn.get(i);zn.set(i,b);let L=F===void 0,k=!L&&Math.abs(b-F)>.5,V=g>3,O=g>.5&&(L||k||V),T=i.tagName==="VIDEO"&&!i.paused,y=F!==void 0&&Math.abs(b-F)<.004,E=!1;if(!T&&!O&&!L&&y&&g>f){let M=(Et.get(i)??0)+1;Et.set(i,M),M>=x&&(E=!0,Et.set(i,0))}else g<=f&&Et.set(i,0);let C=!T&&t.forceSync&&g>.02;if(O||E||C){if(!(i.tagName==="VIDEO"&&i.id&&!!document.getElementById(`__render_frame_${i.id}__`))){try{i.currentTime=r}catch(_){v("runtime.media.site2",_)}if(Math.abs(i.currentTime-r)>.5&&!qn.has(i)){qn.add(i),i.load();try{i.currentTime=r}catch(_){v("runtime.media.site3",_)}}}at.delete(i)}t.playing&&i.paused&&!at.has(i)&&!Pa(i)?(Da(i),i.play().catch(M=>{at.delete(i),(M&&typeof M=="object"&&"name"in M?String(M.name??""):"")==="NotAllowedError"&&t.onAutoplayBlocked?.()})):!t.playing&&!i.paused&&i.pause();continue}zn.delete(i),Et.delete(i),qn.delete(i),jn.delete(i),i.paused||i.pause()}}var Oa=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),Ba=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),Ha="data-hf-color-grading-source-hidden";function Cr(t){let e=!1,n=null,i=null,r=null,o=null;function s(y,E){try{window.dispatchEvent(new CustomEvent(y,{detail:E}))}catch(C){v("runtime.picker.site1",C)}}function l(y){r=y,s("hyperframe:picker:hovered",{elementInfo:r,isPickMode:e,timestamp:Date.now()})}function a(y){o=y,s("hyperframe:picker:selected",{elementInfo:o,isPickMode:e,timestamp:Date.now()})}function c(y){let E=y.ownerDocument.defaultView;if(!E)return!1;let C=y;for(;C&&C!==document.body&&C!==document.documentElement;){let M=E.getComputedStyle(C);if(M.display==="none"||M.visibility==="hidden"||M.pointerEvents==="none")return!0;let _=Number.parseFloat(M.opacity);if(Number.isFinite(_)&&_<=.01&&!C.hasAttribute(Ha))return!0;C=C.parentElement}return!1}function u(y){if(!y||y===document.body||y===document.documentElement)return!1;let E=y.tagName.toLowerCase();return!(E==="script"||E==="style"||E==="link"||E==="meta"||y.classList.contains("__hf-pick-highlight")||y.closest(Oa)||c(y))}function m(y){return!!y?.closest(Ba)}function f(y){let E=y;if(E.id)return`#${E.id}`;let C=y.getAttribute("data-composition-id");if(C)return`[data-composition-id="${CSS.escape(C)}"]`;let M=y.getAttribute("data-composition-src");if(M)return`[data-composition-src="${CSS.escape(M)}"]`;let _=y.getAttribute("data-track-index");if(_)return`[data-track-index="${CSS.escape(_)}"]`;let W=y.tagName.toLowerCase(),z=y.parentElement;if(!z)return W;let re=z.querySelectorAll(`:scope > ${W}`);if(re.length===1)return W;for(let D=0;D<re.length;D+=1)if(re[D]===y)return`${W}:nth-of-type(${D+1})`;return W}function x(y){let E=y.tagName.toLowerCase(),C=(y.textContent??"").trim().replace(/\\s+/g," "),M=(_,W)=>_.length>W?`${_.slice(0,W-1)}\\u2026`:_;return E==="h1"||E==="h2"||E==="h3"?"Heading":E==="p"||E==="span"||E==="div"?C.length>0?M(C,56):"Text":E==="img"?"Image":E==="video"?"Video":E==="audio"?"Audio":E==="svg"?"Shape":y.getAttribute("data-composition-src")?"Composition":E==="section"?"Section":`${E.charAt(0).toUpperCase()}${E.slice(1)}`}function A(y,E,C){let M=typeof C=="number"&&C>0?C:8,_=[];if(document.elementsFromPoint)_=document.elementsFromPoint(y,E);else if(document.elementFromPoint){let re=document.elementFromPoint(y,E);_=re?[re]:[]}if(m(_[0]??null))return[];let W={},z=[];for(let re=0;re<_.length;re+=1){let D=_[re];if(!u(D))continue;let Y=`${D.tagName}::${D.id||""}::${re}`;if(!W[Y]&&(W[Y]=!0,z.push(D),z.length>=M))break}return z}function g(y){let E=y.getBoundingClientRect(),C={};for(let _=0;_<y.attributes.length;_+=1){let W=y.attributes[_];W.name.startsWith("data-")&&(C[W.name]=W.value)}return{id:y.id||null,tagName:y.tagName.toLowerCase(),selector:f(y),label:x(y),boundingBox:{x:E.left,y:E.top,width:E.width,height:E.height},textContent:y.textContent?y.textContent.trim().slice(0,200):null,src:y.getAttribute("src")||y.getAttribute("data-composition-src")||null,dataAttributes:C}}function b(y,E,C){return A(y,E,C).map(g)}function F(y){if(!e)return;let C=A(y.clientX,y.clientY,1)[0]??(y.target instanceof Element?y.target:null);if(!u(C)||n===C)return;n&&n.classList.remove("__hf-pick-highlight"),n=C,C.classList.add("__hf-pick-highlight");let M=g(C);l(M),t.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:M})}function L(y){if(!e)return;y.preventDefault(),y.stopPropagation(),y.stopImmediatePropagation();let E=b(y.clientX,y.clientY,8);E.length!==0&&(l(E[0]??null),t.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:E,selectedIndex:0,point:{x:y.clientX,y:y.clientY}}))}function k(y){y.key==="Escape"&&(O(),t.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function V(){e||(e=!0,i=document.createElement("style"),i.textContent=[".__hf-pick-highlight { outline: 2px solid #4f8cf7 !important; outline-offset: 2px; cursor: crosshair !important; }",".__hf-pick-active * { cursor: crosshair !important; }"].join(`\n`),document.head.appendChild(i),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",F,!0),document.addEventListener("click",L,!0),document.addEventListener("keydown",k,!0),s("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function O(){e&&(e=!1,n&&(n.classList.remove("__hf-pick-highlight"),n=null),i&&(i.remove(),i=null),document.body.classList.remove("__hf-pick-active"),document.removeEventListener("mousemove",F,!0),document.removeEventListener("click",L,!0),document.removeEventListener("keydown",k,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function T(){window.__HF_PICKER_API={enable:V,disable:O,isActive:()=>e,getHovered:()=>r,getSelected:()=>o,getCandidatesAtPoint:(y,E,C)=>Number.isFinite(y)&&Number.isFinite(E)?b(y,E,C):[],pickAtPoint:(y,E,C)=>{if(!Number.isFinite(y)||!Number.isFinite(E))return null;let M=b(y,E,8);if(!M.length)return null;let _=Math.max(0,Math.min(M.length-1,Number(C??0))),W=M[_]??null;return W?(a(W),t.postMessage({source:"hf-preview",type:"element-picked",elementInfo:W}),O(),W):null},pickManyAtPoint:(y,E,C)=>{if(!Number.isFinite(y)||!Number.isFinite(E))return[];let M=b(y,E,8);if(!M.length)return[];let _=[],W=Array.isArray(C)?C:[0];for(let z of W){let re=Math.max(0,Math.min(M.length-1,Math.floor(Number(z)))),D=M[re];if(!D)continue;_.some(se=>se.selector===D.selector&&se.tagName===D.tagName)||_.push(D)}return _.length?(a(_[0]??null),t.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:_}),O(),_):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:V,disablePickMode:O,installPickerApi:T}}var Wa=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function lt(t,e){let n=Number.isFinite(e)&&e>0?e:30,i=Number.isFinite(t)&&t>0?t:0;return Math.floor(i*n+1e-9)/n}function Fr(t,e,n=Wa){for(let i of n){let r=e.getPropertyValue(i);r&&t.setProperty(i,r)}}function Ft(t,e,n){let i=t?.[e];return typeof i=="function"?Number(i.call(t))||n:typeof i=="number"&&Number.isFinite(i)?i:(i!=null&&v("runtime.player.nonConformantNum",{prop:e,actual:typeof i}),n)}function ke(t,e){let n=t?.[e];if(typeof n=="function"){n.call(t);return}n!==void 0&&v("runtime.player.nonConformantVoid",{method:e,actual:typeof n})}function Mt(t,e,n){if(t){for(let i of Object.values(t))if(!(!i||i===e))try{n(i)}catch(r){v("runtime.player.site1",r)}}}function Mr(t,e,n){let i=lt(e,n);return ke(t,"pause"),typeof t.totalTime=="function"?t.totalTime(i,!1):typeof t.seek=="function"&&t.seek(i,!1),i}function Ga(t,e,n,i){let r=[];Mt(t,e,o=>{ke(o,"play"),r.push(o)});try{return Mr(e,n,i)}finally{for(let o of r)try{ke(o,"pause")}catch(s){v("runtime.player.site2",s)}}}function Ua(t,e){Mt(t,e,n=>{ke(n,"play")})}function Nr(t){return{_timeline:null,play:()=>{let e=t.getTimeline();if(!e||t.getIsPlaying())return;let n=Math.max(0,Number(t.getSafeDuration?.()??Ft(e,"duration",0))||0);n>0&&Math.max(0,Ft(e,"time",0))>=n&&(ke(e,"pause"),typeof e.seek=="function"&&e.seek(0,!1),t.onDeterministicSeek(0),t.setIsPlaying(!1),t.onSyncMedia(0,!1),t.onRenderFrameSeek(0)),typeof e.timeScale=="function"&&e.timeScale(t.getPlaybackRate()),ke(e,"play"),Mt(t.getTimelineRegistry?.(),e,i=>{typeof i.timeScale=="function"&&i.timeScale(t.getPlaybackRate()),ke(i,"play")}),t.onDeterministicPlay(),t.setIsPlaying(!0),t.onShowNativeVideos(),t.onStatePost(!0)},pause:()=>{let e=t.getTimeline();if(!e)return;ke(e,"pause"),Mt(t.getTimelineRegistry?.(),e,i=>{ke(i,"pause")});let n=Math.max(0,Ft(e,"time",0));t.onDeterministicSeek(n),t.onDeterministicPause(),t.setIsPlaying(!1),t.onSyncMedia(n,!1),t.onRenderFrameSeek(n),t.onStatePost(!0)},seek:(e,n)=>{let i=t.getTimeline();if(!i)return;let r=Math.max(0,Number(e)||0),o=t.getIsPlaying(),s=Ga(t.getTimelineRegistry?.(),i,r,t.getCanonicalFps());t.onDeterministicSeek(s),n?.keepPlaying&&o?(typeof i.timeScale=="function"&&i.timeScale(t.getPlaybackRate()),ke(i,"play"),Mt(t.getTimelineRegistry?.(),i,l=>{typeof l.timeScale=="function"&&l.timeScale(t.getPlaybackRate()),ke(l,"play")}),t.onDeterministicPlay(),t.onShowNativeVideos(),t.onSyncMedia(s,!0)):(t.setIsPlaying(!1),t.onSyncMedia(s,!1)),t.onRenderFrameSeek(s),t.onStatePost(!0)},renderSeek:e=>{let n=t.getTimeline(),i=t.getCanonicalFps(),r=n?(Ua(t.getTimelineRegistry?.(),n),Mr(n,e,i)):lt(Math.max(0,Number(e)||0),i);t.onDeterministicSeek(r),t.setIsPlaying(!1),t.onSyncMedia(r,!1),t.onRenderFrameSeek(r),t.onStatePost(!0)},getTime:()=>Ft(t.getTimeline(),"time",0),getDuration:()=>Ft(t.getTimeline(),"duration",0),isPlaying:()=>t.getIsPlaying(),setPlaybackRate:e=>t.setPlaybackRate(e),getPlaybackRate:()=>t.getPlaybackRate()}}function Tr(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}var Va=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function Kn(t){return t.id||t.getAttribute("data-hf-id")||null}function $n(t){if(t==null)return null;let e=Number(t);return Number.isFinite(e)?e:null}function za(t,e){let n=t.getAttribute("data-composition-id");if(!n)return null;let i=Number(e[n]?.duration?.());return Number.isFinite(i)&&i>0?i:null}function qa(t){if(!(t instanceof HTMLMediaElement)||!Number.isFinite(t.duration))return null;let e=$n(t.getAttribute("data-playback-start"))??$n(t.getAttribute("data-media-start"))??0;return t.duration>e?t.duration-e:null}function ja(t,e,n,i){let r=$n(t.getAttribute("data-duration"));return r!=null&&r>0?r:za(t,e)??qa(t)??Math.max(0,n-i)}function $a(t){for(let[e,n]of t){let i=e.parentElement;for(;i;){let r=t.get(i);if(r){n.parentId=r.id,r.children.push(n);break}i=i.parentElement}}}function _r(t){let{startResolver:e,timelineRegistry:n,rootDuration:i}=t,r=new Map,o=document.querySelector("[data-composition-id]"),s=0;for(let l of document.querySelectorAll("[data-start]")){if(l===o||Va.has(l.tagName))continue;let a=e.resolveStartForElement(l,0);if(ja(l,n,i,a)<=0)continue;let c={id:Kn(l)??`__clip-${s++}`,element:l,parentId:null,children:[]};r.set(l,c)}return $a(r),{roots:Array.from(r.values()).filter(l=>l.parentId===null)}}var Ka="data-hf-authored-duration",Ja="data-hf-authored-end";function tt(t){if(t==null||t==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}function Ya(t){return tt(t.getAttribute("data-duration"))}function Xa(t){return tt(t.getAttribute("data-end"))}function Qa(t){return tt(t.getAttribute(Ka))}function Za(t){return tt(t.getAttribute(Ja))}function el(t){let e=(t??"").trim();if(!e)return null;let n=tt(e);if(n!=null)return{kind:"absolute",value:n};let i=e.match(/^([A-Za-z0-9_.:-]+)(?:\\s*([+-])\\s*([0-9]*\\.?[0-9]+))?$/);if(!i)return null;let r=(i[1]??"").trim();if(!r)return null;let o=i[2]??"+",s=i[3]??"0",l=Number.parseFloat(s),a=Number.isFinite(l)?Math.max(0,l):0,c=o==="-"?-a:a;return{kind:"reference",refId:r,offset:c}}function ze(t){let e=t.timelineRegistry??{},n=t.includeAuthoredTimingAttrs??!1,i=new WeakMap,r=new WeakMap,o=new Set,s=u=>{let m=document.getElementById(u);return m||(document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`)??null)},l=u=>{let m=r.get(u);if(m!==void 0)return m;let f=null,x=Ya(u)??(n?Qa(u):null);if(x!=null&&x>0&&(f=x),f==null||f<=0){let A=Xa(u)??(n?Za(u):null);if(A!=null){let g=c(u,0),b=A-g;Number.isFinite(b)&&b>0&&(f=b)}}if((f==null||f<=0)&&u instanceof HTMLMediaElement){let A=tt(u.getAttribute("data-playback-start"))??tt(u.getAttribute("data-media-start"))??0;Number.isFinite(u.duration)&&u.duration>A&&(f=(u.duration-A)/Ct(u))}if(f==null||f<=0){let A=u.getAttribute("data-composition-id");if(A){let g=e[A]??null;if(g&&typeof g.duration=="function")try{let b=Number(g.duration());Number.isFinite(b)&&b>0&&(f=b)}catch(b){v("runtime.startResolver.site1",b)}}}return f!=null&&Number.isFinite(f)&&f>0?(r.set(u,f),f):(r.set(u,null),null)},a=(u,m)=>{if(u.hasAttribute("data-composition-id")){let x=u.parentElement?.closest("[data-composition-id]");return x?c(x,m):0}let f=u.closest("[data-composition-id]");return f?c(f,m):0},c=(u,m)=>{let f=i.get(u);if(f!==void 0)return f??m;if(o.has(u))return m;o.add(u);try{let x=el(u.getAttribute("data-start"));if(!x){if(u.hasAttribute("data-composition-id")){let L=u.parentElement;if(L&&(L.hasAttribute("data-composition-src")||L.hasAttribute("data-composition-id"))){let k=c(L,m);return i.set(u,k),k}}return i.set(u,m),m}if(x.kind==="absolute"){let L=Math.max(0,x.value),k=Math.max(0,a(u,m)+L);return i.set(u,k),k}let A=s(x.refId);if(!A)return i.set(u,m),m;let g=c(A,0),b=l(A);if(b==null||b<=0){let L=Math.max(0,g+x.offset);return i.set(u,L),L}let F=Math.max(0,g+b+x.offset);return i.set(u,F),F}finally{o.delete(u)}};return{resolveStartForElement:(u,m=0)=>c(u,Math.max(0,m)),resolveDurationForElement:u=>l(u)}}function Lr(t){let e=t.trim().toLowerCase();return!(!e||e==="main"||e.includes("caption")||e.includes("ambient"))}var tl="data-hf-authored-duration",nl="data-hf-authored-end";function Ce(t){if(t==null||t==="")return null;let e=Number(t);return Number.isFinite(e)?e:null}function Jn(t){return Ce(t.getAttribute("data-duration"))??Ce(t.getAttribute(tl))}function vr(t){return Ce(t.getAttribute("data-end"))??Ce(t.getAttribute(nl))}function Yn(...t){let e=t.filter(n=>Number.isFinite(n??null));return e.length===0?null:Math.max(...e)}var kr={composition:0,video:1,image:2,element:3,audio:4};function il(t){if(t.length===0)return;let e=new Map;for(let s of t){let l=e.get(s.track)??new Set;l.add(s.kind),e.set(s.track,l)}if(!Array.from(e.values()).some(s=>s.size>1))return;let i=0,r=new Map,o=[...e.keys()].sort((s,l)=>s-l);for(let s of o){let l=e.get(s);if(l.size===1)r.set(`${s}:${[...l][0]}`,i++);else{let a=[...l].sort((c,u)=>(kr[c]??99)-(kr[u]??99));for(let c of a)r.set(`${s}:${c}`,i++)}}for(let s of t){let l=`${s.track}:${s.kind}`,a=r.get(l);a!=null&&(s.track=a)}}function Tt(t){let e=String(t??"").trim();if(!e)return null;let n=e.toLowerCase();if(n.startsWith("data:")||n.startsWith("javascript:"))return null;try{return new URL(e,document.baseURI).toString()}catch{return e}}function Rr(t){let e=t.getAttribute("src")??t.getAttribute("data-src");if(e)return Tt(e);let n=t.getAttribute("data-composition-src");if(n)return Tt(n);let i=t.querySelector("img[src], video[src], audio[src], source[src]");return i?Tt(i.getAttribute("src")):null}function rl(t){let e=t.className;return typeof e!="string"?null:e.split(/\\s+/).map(n=>n.trim()).find(n=>n&&n!=="clip"&&!n.startsWith("__hf-"))??null}function ol(t){if(!t)return null;try{return new URL(t,document.baseURI).pathname.split("/").filter(Boolean).at(-1)??null}catch{return t.split(/[\\\\/]/).filter(Boolean).at(-1)??null}}function sl(t){let e=t.textContent?.replace(/\\s+/g," ").trim();return e?e.length>32?`${e.slice(0,31)}...`:e:null}function Nt(t){let e=t.replace(/\\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\\s+/g," ").trim();return e?e.replace(/\\b\\w/g,n=>n.toUpperCase()):t}function al(t,e,n){let i=t.getAttribute("data-timeline-label")??t.getAttribute("data-label")??t.getAttribute("aria-label")??null;if(i?.trim())return i.trim();let r=t.getAttribute("data-composition-id");if(r)return Nt(r);let o=t.id;if(o)return Nt(o);let s=rl(t);if(s)return Nt(s);let l=ol(Rr(t));if(l)return Nt(l);let a=sl(t);return a||`${Nt(e)} ${n+1}`}function Dr(t){let n=window.__timelines??{},i=ze({timelineRegistry:n,includeAuthoredTimingAttrs:!0}),r=R=>{if(!R)return null;let I=n[R]??null;if(!I||typeof I.duration!="function")return null;try{let H=Number(I.duration());return Number.isFinite(H)&&H>0?H:null}catch{return null}},o=R=>{let I=Ce(R.getAttribute("data-duration"));if(I!=null&&I>0)return I;let H=Ce(R.getAttribute("data-playback-start"))??Ce(R.getAttribute("data-media-start"))??0;return Number.isFinite(R.duration)&&R.duration>H?Math.max(0,(R.duration-H)/Ct(R)):null},s=()=>{let R=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(R.length===0)return null;let I=0;for(let H of R){let ie=H.hasAttribute("data-hf-auto-start")?i.resolveStartForElement(H,0):Math.max(0,Number(H.getAttribute("data-start")??0)||0);if(!Number.isFinite(ie))continue;let ae=o(H);ae==null||ae<=0||(I=Math.max(I,Math.max(0,ie)+ae))}return I>0?I:null},l=(R,I)=>{let H=[],ie=null,ae=null,q=null,j=R.parentElement;for(;j;){let X=j.getAttribute("data-composition-id");X&&(H.push(X),!q&&j!==I&&(q=X),ie==null&&(ie=i.resolveStartForElement(j,0)),ae==null&&(ae=Ce(j.getAttribute("data-duration"))??r(X)??null)),j=j.parentElement}return{parentCompositionId:q,compositionAncestors:H.reverse(),inheritedStart:ie,inheritedDuration:ae}},a=document.querySelector("[data-composition-id]"),c=Array.from(document.querySelectorAll("[data-composition-id]")),u=a?.getAttribute("data-composition-id")??null,m=a?i.resolveStartForElement(a,0):0,f=s(),x=f!=null?Math.max(0,f-Math.max(0,m)):null,A=r(u),g=Jn(a??document.body),b=Yn(...c.filter(R=>R!==a).map(R=>{let I=i.resolveStartForElement(R,0),H=i.resolveDurationForElement(R)??r(R.getAttribute("data-composition-id"))??null;return!Number.isFinite(I)||H==null||H<=0?null:Math.max(0,I)+H})),F=b!=null?Math.max(0,b-Math.max(0,m)):null,L=typeof A=="number"&&Number.isFinite(A)&&A>0?A:null,k=typeof g=="number"&&Number.isFinite(g)&&g>0?g:null,V=typeof x=="number"&&Number.isFinite(x)&&x>0?x:null,O=typeof F=="number"&&Number.isFinite(F)&&F>0?F:null,T=Yn(V,O),y=L!=null&&T!=null&&L>T+1,C=k??(y?T:Yn(L,V,O))??null,_=(C!=null?m+C:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),W=(R,I)=>!Number.isFinite(I)||I<=0?0:_==null||!Number.isFinite(_)?I:!Number.isFinite(R)||R>=_?0:Math.max(0,Math.min(I,_-R)),z=[],re=[],D=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),Y=0;for(let R=0;R<D.length;R+=1){let I=D[R];if(I===a||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(I.tagName))continue;let H=l(I,a),ie=i.resolveStartForElement(I,H.inheritedStart??0),ae=I.getAttribute("data-composition-id"),q=Jn(I);if((q==null||q<=0)&&ae&&ae!==u&&(q=r(ae)),(q==null||q<=0)&&I instanceof HTMLMediaElement){let ge=Ce(I.getAttribute("data-playback-start"))??Ce(I.getAttribute("data-media-start"))??0;Number.isFinite(I.duration)&&I.duration>0&&(q=Math.max(0,I.duration-ge))}if(q==null||q<=0){let ge=H.inheritedDuration;if(ge!=null&&ge>0){let Ne=(H.inheritedStart??0)+ge;q=Math.max(0,Ne-ie)}}if(q==null||q<=0||(q=W(ie,q),q<=0))continue;let j=ie+q;Y=Math.max(Y,j);let X=I.tagName.toLowerCase(),Ie=ae&&ae!==u?"composition":X==="video"?"video":X==="audio"?"audio":X==="img"?"image":"element";z.push({id:Kn(I)??ae??null,label:al(I,Ie,z.length),start:ie,duration:q,track:Number.parseInt(I.getAttribute("data-track-index")??I.getAttribute("data-track")??String(R),10)||0,kind:Ie,tagName:X,compositionId:I.getAttribute("data-composition-id"),compositionAncestors:H.compositionAncestors,parentCompositionId:H.parentCompositionId,nodePath:null,compositionSrc:Tt(I.getAttribute("data-composition-src")),assetUrl:Rr(I),timelineRole:I.getAttribute("data-timeline-role"),timelineLabel:I.getAttribute("data-timeline-label"),timelineGroup:I.getAttribute("data-timeline-group"),timelinePriority:Ce(I.getAttribute("data-timeline-priority"))})}let se=new Set(z.map(R=>R.id)),U=a?.getAttribute("data-composition-id")??null,te=U?n[U]??null:null;if(te&&a){let R=te;if(typeof R.getChildren=="function")try{let I=R.getChildren(!0,!0,!1)??[],H=new Map;for(let q of a.children){let j=q;if(!j.id)continue;let X=j.tagName.toLowerCase();X==="script"||X==="style"||X==="link"||H.set(j,{id:j.id,start:1/0,end:-1/0})}let ie=q=>{let j=q;for(;j;){if(H.has(j))return j;if(j===a)return null;j=j.parentElement}return null};for(let q of I){if(typeof q.targets!="function"||typeof q.startTime!="function"||typeof q.duration!="function")continue;let j=q.startTime(),X=q.parent;for(;X&&X!==te&&typeof X.startTime=="function";)j+=X.startTime(),X=X.parent;let Ie=j+q.duration();if(!(!Number.isFinite(j)||!Number.isFinite(Ie)))for(let ge of q.targets()){if(!(ge instanceof Element))continue;let ot=ie(ge);if(!ot)continue;let Ne=H.get(ot);Ne&&(Ne.start=Math.min(Ne.start,j),Ne.end=Math.max(Ne.end,Ie))}}let ae=z.length>0?Math.max(...z.map(q=>q.track))+1:0;for(let[q,j]of H){if(j.start===1/0||j.end===-1/0)continue;let X=q;if(se.has(X.id))continue;let Ie=Math.max(0,j.end-j.start);if(Ie<=0)continue;let ge=W(j.start,Ie);ge<=0||(Y=Math.max(Y,j.start+ge),z.push({id:X.id,label:X.getAttribute("data-timeline-label")??X.getAttribute("data-label")??X.getAttribute("aria-label")??X.id,start:j.start,duration:ge,track:Number.parseInt(X.getAttribute("data-track-index")??X.getAttribute("data-track")??"",10)||ae,kind:"element",tagName:X.tagName.toLowerCase(),compositionId:X.getAttribute("data-composition-id"),compositionAncestors:U?[U]:[],parentCompositionId:U,nodePath:null,compositionSrc:null,assetUrl:null,timelineRole:X.getAttribute("data-timeline-role"),timelineLabel:X.getAttribute("data-timeline-label"),timelineGroup:X.getAttribute("data-timeline-group"),timelinePriority:Ce(X.getAttribute("data-timeline-priority"))}),se.add(X.id))}}catch(I){v("runtime.timeline.site1",I)}}if(a&&C!=null&&C>0){let R=z.length>0?Math.max(...z.map(I=>I.track))+1:0;for(let I of a.children){let H=I;if(!H.id||se.has(H.id))continue;let ie=H.getAttribute("data-timeline-role");if(ie!=="overlay"&&ie!=="persistent-overlay")continue;let ae=H.tagName.toLowerCase();if(ae==="script"||ae==="style"||ae==="link"||ae==="meta"||window.getComputedStyle(H).display==="none")continue;let j=W(0,C);j<=0||(Y=Math.max(Y,j),z.push({id:H.id,label:H.getAttribute("data-timeline-label")??H.getAttribute("data-label")??H.getAttribute("aria-label")??H.id,start:0,duration:j,track:Number.parseInt(H.getAttribute("data-track-index")??H.getAttribute("data-track")??"",10)||R,kind:"element",tagName:ae,compositionId:H.getAttribute("data-composition-id"),compositionAncestors:U?[U]:[],parentCompositionId:U,nodePath:null,compositionSrc:null,assetUrl:null,timelineRole:ie,timelineLabel:H.getAttribute("data-timeline-label"),timelineGroup:H.getAttribute("data-timeline-group"),timelinePriority:Ce(H.getAttribute("data-timeline-priority"))}),se.add(H.id))}}il(z);for(let R of c){if(R===a)continue;let I=R.getAttribute("data-composition-id");if(!I||!Lr(I))continue;let H=i.resolveStartForElement(R,0),ie=Jn(R);if((ie==null||ie<=0)&&vr(R)!=null){let X=vr(R);ie=Math.max(0,X-H)}let ae=r(I),q=ie&&ie>0?ie:ae;if(q==null||q<=0)continue;let j=W(H,q);j<=0||re.push({id:I,label:R.getAttribute("data-label")??I,start:H,duration:j,thumbnailUrl:Tt(R.getAttribute("data-thumbnail-url")),avatarName:null})}let G=Math.max(1,Y||1,C??0);return{source:"hf-preview",type:"timeline",durationInFrames:y&&k==null?Number.POSITIVE_INFINITY:Math.max(1,Math.ceil(G*Math.max(1,t.canonicalFps))),clips:z,scenes:re,compositionWidth:Ce(a?.getAttribute("data-width"))??1920,compositionHeight:Ce(a?.getAttribute("data-height"))??1080}}var de=_a(ss(),1),as=de.default,Jm=de.default.stringify,Ym=de.default.fromJSON,Xm=de.default.plugin,Qm=de.default.parse,Zm=de.default.list,ep=de.default.document,tp=de.default.comment,np=de.default.atRule,ip=de.default.rule,rp=de.default.decl,op=de.default.root,sp=de.default.CssSyntaxError,ap=de.default.Declaration,lp=de.default.Container,up=de.default.Processor,cp=de.default.Document,dp=de.default.Comment,fp=de.default.Warning,mp=de.default.AtRule,pp=de.default.Result,hp=de.default.Input,xp=de.default.Rule,gp=de.default.Root,yp=de.default.Node;var Ei="data-hf-authored-id";function wi(t){return t.replace(/[.*+?^${}()|[\\]\\\\]/g,"\\\\$&")}function Ci(t){return t.replace(/\\\\/g,"\\\\\\\\").replace(/"/g,\'\\\\"\')}function _u(t){return t&&t.replace(/[^a-zA-Z0-9_-]/g,n=>`\\\\${n}`).replace(/^-?\\d/,n=>`\\\\${n}`)}function ls(t){let e=t.trim();return e?Array.from(new Set([e,_u(e)])).filter(Boolean):[]}function Lu(t){return!!t&&/[\\w-]/.test(t)}function vu(t,e,n){let i=ls(e).sort((l,a)=>a.length-l.length);if(i.length===0)return t;let r="",o=0,s=null;for(let l=0;l<t.length;l+=1){let a=t[l],c=l>0?t[l-1]:"";if(s){r+=a,a===s&&c!=="\\\\"&&(s=null);continue}if(a===\'"\'||a==="\'"){s=a,r+=a;continue}if(a==="["){o+=1,r+=a;continue}if(a==="]"){o=Math.max(0,o-1),r+=a;continue}if(a==="#"&&o===0){let u=i.find(m=>t.startsWith(m,l+1));if(u){let m=t[l+1+u.length];if(!Lu(m)){r+=n,l+=u.length;continue}}}r+=a}return r}function ku(t,e){let n=e?.trim();return n?vu(t,n,`[${Ei}="${Ci(n)}"]`):t}function Ru(t,e,n,i,r){let o=ku(t,i),s=Du(o,e,n),l=s.trim();if(!l||/^(html|body|:root|\\*)$/i.test(l))return t;let a=new RegExp(`\\\\[\\\\s*data-composition-id\\\\s*=\\\\s*(["\'])${wi(n)}\\\\1\\\\s*\\\\]`,"g");if(a.test(l))return s.replace(a,e);let c=s.match(/^\\s*/)?.[0]??"",u=s.match(/\\s*$/)?.[0]??"";if(r){let m=i?`[${Ei}="${Ci(i)}"]`:null;if(m&&l.startsWith(m)){let f=l.slice(m.length);return`${c}${e}${m}${f}${u}`}}return`${c}${e} ${l}${u}`}function Du(t,e,n){let i=wi(n),r=String.raw`\\[\\s*data-composition-id\\s*=\\s*(?:"${i}"|\'${i}\')\\s*\\]`,o=String.raw`\\s*\\[\\s*data-(?:start|duration)\\s*=\\s*(?:"[^"]*"|\'[^\']*\')\\s*\\]`;return t.replace(new RegExp(`${r}(?:${o})+`,"g"),e).replace(new RegExp(`(?:${o})+${r}`,"g"),e)}var Iu=new Set(["keyframes","-webkit-keyframes","font-face"]);function Pu(t){return t?.type==="atrule"}function Ou(t){let e=t.parent;for(;e;){if(Pu(e)&&Iu.has(e.name.toLowerCase()))return!0;e=e.parent}return!1}function Fi(t,e,n,i,r){let o=e.trim();if(!t||!o)return t;let s=n||`[data-composition-id="${Ci(o)}"]`,l=as.parse(t);return l.walkRules(a=>{Ou(a)||(a.selectors=a.selectors.map(c=>Ru(c,s,o,i,r?.compoundAuthoredRoot)))}),l.toResult({map:!1}).css}function us(t,e,n="[HyperFrames] composition script error:",i,r=e,o){let s=JSON.stringify(e),l=JSON.stringify(r),a=JSON.stringify(n),c=wi(e),u=JSON.stringify(o?.trim()||null),m=JSON.stringify(i??null),f=JSON.stringify(String.raw`\\[\\s*data-composition-id\\s*=\\s*(?:"${c}"|\'${c}\')\\s*\\]`),x=JSON.stringify(String.raw`\\s*\\[\\s*data-(?:start|duration)\\s*=\\s*(?:"[^"]*"|\'[^\']*\')\\s*\\]`),A=JSON.stringify(ls(o?.trim()||""));return`(function(){\n var __hfCompId = ${s};\n var __hfTimelineCompId = ${l};\n var __hfErrorLabel = ${a};\n var __hfAuthoredRootId = ${u};\n var __hfAuthoredRootAttr = ${JSON.stringify(Ei)};\n var __hfEscapeAttr = function(value) {\n return (value + "").replace(/\\\\\\\\/g, "\\\\\\\\\\\\\\\\").replace(/"/g, "\\\\\\\\\\\\"");\n };\n var __hfRootSelector = ${m} || (__hfCompId\n ? \'[data-composition-id="\' + __hfEscapeAttr(__hfCompId) + \'"]\'\n : "");\n var __hfRoot = null;\n var __hfRootSelectorPattern = ${f};\n var __hfTimingSelectorPattern = ${x};\n var __hfAuthoredRootIdForms = ${A};\n var __hfAuthoredRootSelector = __hfAuthoredRootId\n ? "[" + __hfAuthoredRootAttr + \'="\' + __hfEscapeAttr(__hfAuthoredRootId) + \'"]\'\n : "";\n var __hfIsSelectorNameChar = function(char) {\n return !!char && /[\\\\w-]/.test(char);\n };\n var __hfReplaceAuthoredRootIdSelectors = function(selector) {\n if (!__hfAuthoredRootSelector || !__hfAuthoredRootIdForms.length || typeof selector !== "string") {\n return selector;\n }\n var result = "";\n var bracketDepth = 0;\n var quote = null;\n for (var index = 0; index < selector.length; index += 1) {\n var char = selector[index];\n var previousChar = index > 0 ? selector[index - 1] : "";\n if (quote) {\n result += char;\n if (char === quote && previousChar !== "\\\\\\\\") {\n quote = null;\n }\n continue;\n }\n if (char === \'"\' || char === "\'") {\n quote = char;\n result += char;\n continue;\n }\n if (char === "[") {\n bracketDepth += 1;\n result += char;\n continue;\n }\n if (char === "]") {\n bracketDepth = Math.max(0, bracketDepth - 1);\n result += char;\n continue;\n }\n if (char === "#" && bracketDepth === 0) {\n var matchedForm = null;\n for (var formIndex = 0; formIndex < __hfAuthoredRootIdForms.length; formIndex += 1) {\n var form = __hfAuthoredRootIdForms[formIndex];\n if (selector.slice(index + 1, index + 1 + form.length) === form) {\n matchedForm = form;\n break;\n }\n }\n if (matchedForm) {\n var nextChar = selector[index + 1 + matchedForm.length];\n if (!__hfIsSelectorNameChar(nextChar)) {\n result += __hfAuthoredRootSelector;\n index += matchedForm.length;\n continue;\n }\n }\n }\n result += char;\n }\n return result;\n };\n var __hfNormalizeSelector = function(selector) {\n if (!__hfCompId || typeof selector !== "string") return selector;\n var normalized = selector\n .replace(new RegExp(__hfRootSelectorPattern + \'(?:\' + __hfTimingSelectorPattern + \')+\', \'g\'), __hfRootSelector)\n .replace(new RegExp(\'(?:\' + __hfTimingSelectorPattern + \')+\' + __hfRootSelectorPattern, \'g\'), __hfRootSelector);\n if (__hfAuthoredRootSelector) {\n normalized = __hfReplaceAuthoredRootIdSelectors(normalized);\n }\n return normalized;\n };\n var __hfFindRoot = function() {\n if (!__hfRoot && __hfRootSelector) {\n __hfRoot = window.document.querySelector(__hfRootSelector);\n }\n return __hfRoot;\n };\n var __hfContains = function(node) {\n var root = __hfFindRoot();\n return !root || node === root || root.contains(node);\n };\n var __hfQueryAll = function(selector) {\n var root = __hfFindRoot();\n if (!root || typeof selector !== "string") {\n return window.document.querySelectorAll(selector);\n }\n return Array.prototype.filter.call(window.document.querySelectorAll(__hfNormalizeSelector(selector)), function(node) {\n return __hfContains(node);\n });\n };\n var __hfQueryOne = function(selector) {\n var matches = __hfQueryAll(selector);\n return matches[0] || null;\n };\n var __hfGetElementById = function(id) {\n var found = window.document.getElementById(id);\n if (found && __hfContains(found)) return found;\n var root = __hfFindRoot();\n if (!root) return found || null;\n var idValue = id + "";\n if (__hfAuthoredRootId && __hfAuthoredRootId === idValue && root.getAttribute && root.getAttribute(__hfAuthoredRootAttr) === idValue) {\n return root;\n }\n if (root.id === idValue) return root;\n if (typeof root.querySelector !== "function") return null;\n try {\n var authoredRootMatch = root.querySelector(\'[\' + __hfAuthoredRootAttr + \'="\' + __hfEscapeAttr(idValue) + \'"]\');\n if (authoredRootMatch) return authoredRootMatch;\n } catch {}\n if (typeof CSS !== "undefined" && CSS && typeof CSS.escape === "function") {\n try {\n return root.querySelector("#" + CSS.escape(idValue)) || null;\n } catch {}\n }\n try {\n return root.querySelector(\'[id="\' + __hfEscapeAttr(idValue) + \'"]\') || null;\n } catch {}\n return null;\n };\n var __hfScopedDocument = typeof Proxy === "function"\n ? new Proxy(window.document, {\n get: function(target, prop, receiver) {\n if (prop === "querySelector") return __hfQueryOne;\n if (prop === "querySelectorAll") return __hfQueryAll;\n if (prop === "getElementById") return __hfGetElementById;\n var value = Reflect.get(target, prop, target);\n return typeof value === "function" ? value.bind(target) : value;\n },\n })\n : window.document;\n var __hfTimelineRegistryProxy = null;\n var __hfGetTimelineRegistry = function() {\n window.__timelines = window.__timelines || {};\n if (!__hfCompId || __hfCompId === __hfTimelineCompId || typeof Proxy !== "function") {\n return window.__timelines;\n }\n if (!__hfTimelineRegistryProxy) {\n __hfTimelineRegistryProxy = new Proxy(window.__timelines, {\n get: function(target, prop, receiver) {\n return Reflect.get(target, prop === __hfCompId ? __hfTimelineCompId : prop, target);\n },\n set: function(target, prop, value, receiver) {\n return Reflect.set(target, prop === __hfCompId ? __hfTimelineCompId : prop, value, target);\n },\n });\n }\n return __hfTimelineRegistryProxy;\n };\n var __hfScopedWindow = typeof Proxy === "function"\n ? new Proxy(window, {\n get: function(target, prop, receiver) {\n if (prop === "__timelines") return __hfGetTimelineRegistry();\n return Reflect.get(target, prop, target);\n },\n set: function(target, prop, value, receiver) {\n if (prop === "__timelines") {\n target.__timelines = value || {};\n __hfTimelineRegistryProxy = null;\n return true;\n }\n return Reflect.set(target, prop, value, target);\n },\n })\n : window;\n var __hfResolveGsapTarget = function(target) {\n if (typeof target !== "string") return target;\n return __hfQueryAll(target);\n };\n var __hfScopeTimeline = function(timeline) {\n if (!timeline || timeline.__hfScopedCompositionRoot === __hfFindRoot()) return timeline;\n ["to", "from", "fromTo", "set"].forEach(function(method) {\n var original = timeline[method];\n if (typeof original !== "function") return;\n timeline[method] = function(target) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(target);\n return original.apply(timeline, args);\n };\n });\n try {\n Object.defineProperty(timeline, "__hfScopedCompositionRoot", {\n value: __hfFindRoot(),\n configurable: true,\n });\n } catch {\n // Best-effort: timelines coming from user code may have a frozen target\n // or a non-extensible defineProperty path. Swallow \\u2014 the scoped root\n // is an enrichment, not a correctness invariant for playback.\n }\n return timeline;\n };\n var __hfBaseGsap = typeof gsap === "undefined" ? window.gsap : gsap;\n var __hfScopedGsap = !__hfBaseGsap || typeof Proxy !== "function"\n ? __hfBaseGsap\n : new Proxy(__hfBaseGsap, {\n get: function(target, prop, receiver) {\n if (prop === "timeline") {\n return function() {\n return __hfScopeTimeline(target.timeline.apply(target, arguments));\n };\n }\n if (prop === "to" || prop === "from" || prop === "fromTo" || prop === "set") {\n return function(firstArg) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(firstArg);\n return target[prop].apply(target, args);\n };\n }\n if (prop === "utils" && target.utils && typeof Proxy === "function") {\n return new Proxy(target.utils, {\n get: function(utilsTarget, utilsProp, utilsReceiver) {\n if (utilsProp === "toArray") {\n return function(firstArg) {\n var args = Array.prototype.slice.call(arguments);\n args[0] = __hfResolveGsapTarget(firstArg);\n return utilsTarget.toArray.apply(utilsTarget, args);\n };\n }\n if (utilsProp === "selector") {\n return function(base) {\n var baseEl = typeof base === "string" ? __hfQueryOne(base) : base;\n var root = baseEl || __hfFindRoot();\n return function(selector) {\n if (!root || typeof selector !== "string") return [];\n return Array.prototype.filter.call(\n window.document.querySelectorAll(__hfNormalizeSelector(selector)),\n function(node) {\n return node === root || (typeof root.contains === "function" && root.contains(node));\n },\n );\n };\n };\n }\n var value = Reflect.get(utilsTarget, utilsProp, utilsTarget);\n return typeof value === "function" ? value.bind(utilsTarget) : value;\n },\n });\n }\n var value = Reflect.get(target, prop, target);\n return typeof value === "function" ? value.bind(target) : value;\n },\n });\n var __hfBaseHyperframes = window.__hyperframes;\n var __hfScopedHyperframes = !__hfBaseHyperframes\n ? __hfBaseHyperframes\n : Object.assign({}, __hfBaseHyperframes, {\n getVariables: function() {\n var byComp = window.__hfVariablesByComp;\n var scoped = byComp && __hfTimelineCompId ? byComp[__hfTimelineCompId] : null;\n return scoped ? Object.assign({}, scoped) : {};\n },\n });\n var __hfRun = function() {\n try {\n (function(document, gsap, window, __hyperframes) {\n${t.replace(/<\\/(script)/gi,"<\\\\/$1")}\n }).call(window, __hfScopedDocument, __hfScopedGsap, __hfScopedWindow, __hfScopedHyperframes);\n } catch (_err) {\n console.error(__hfErrorLabel, __hfCompId, _err);\n }\n };\n __hfFindRoot();\n __hfRun();\n})();`}function cs(){if(typeof document>"u")return{};let t=Mi(document.documentElement),e=Bu();return{...t,...e}}function Mi(t){if(!t)return{};let e=t.getAttribute("data-composition-variables");if(!e)return{};let n;try{n=JSON.parse(e)}catch{return{}}if(!Array.isArray(n))return{};let i={};for(let r of n){if(!r||typeof r!="object")continue;let o=r;typeof o.id!="string"||!("default"in o)||(i[o.id]=o.default)}return i}function Bu(){if(typeof window>"u")return{};let t=window.__hfVariables;return!t||typeof t!="object"||Array.isArray(t)?{}:t}var Hu=8e3,Wu=/^(?![a-zA-Z][a-zA-Z\\d+\\-.]*:)(?!\\/\\/)(?!\\/)(?!\\.\\.?\\/).+/,Gu=/\\burl\\(\\s*(["\']?)([^)"\']+)\\1\\s*\\)/g,Uu=["src","href"];function Vu(t){return!t||t.startsWith("http://")||t.startsWith("https://")||t.startsWith("//")||t.startsWith("data:")||t.startsWith("#")||t.startsWith("/")}function fs(t,e){if(!e)return t;let n=t.trim();if(Vu(n)||!n.startsWith("../")&&n!=="..")return t;try{return new URL(n,e).href}catch{return t}}function ms(t,e){return!e||!t?t:t.replace(Gu,(n,i,r)=>{let o=fs(r||"",e);return o===r?n:`url(${i||""}${o}${i||""})`})}function zu(t,e){for(let n of Array.from(t.querySelectorAll("[src], [href]")))for(let i of Uu){let r=n.getAttribute(i);if(r==null)continue;let o=fs(r,e);o!==r&&n.setAttribute(i,o)}}function qu(t,e){for(let n of Array.from(t.querySelectorAll("[style]"))){let i=n.getAttribute("style");if(i==null)continue;let r=ms(i,e);r!==i&&n.setAttribute("style",r)}}function ju(t,e){for(let n of Array.from(t.querySelectorAll("style"))){let i=n.textContent||"",r=ms(i,e);r!==i&&(n.textContent=r)}}function ps(t,e){if(e){zu(t,e),qu(t,e),ju(t,e);for(let n of Array.from(t.querySelectorAll("template")))ps(n.content,e)}}function $u(t,e){return`${t}__hf${e}`}var Ku=t=>new Promise(e=>{let n=!1,i=Date.now(),r=null,o=s=>{n||(n=!0,r!=null&&window.clearTimeout(r),e({status:s,elapsedMs:Math.max(0,Date.now()-i)}))};t.addEventListener("load",()=>o("load"),{once:!0}),t.addEventListener("error",()=>o("error"),{once:!0}),r=window.setTimeout(()=>o("timeout"),Hu)});function Ni(t){for(;t.firstChild;)t.removeChild(t.firstChild);t.textContent=""}var Ju=["data-composition-id","data-composition-file","data-start","data-duration","data-end","data-track-index","data-track","data-composition-src","data-hf-authored-duration","data-hf-authored-end"];function Yu(t){let e=document.importNode(t,!0),n=e.getAttribute("id")?.trim();for(let o of Ju)e.removeAttribute(o);n&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",n)),e.setAttribute("data-hf-inner-root","true");let i=e.getAttribute("data-width"),r=e.getAttribute("data-height");return e.style.width=i?`${i}px`:"100%",e.style.height=r?`${r}px`:"100%",e}function ds(t,e){let n=t.trim();if(!n)return t;try{return Wu.test(n)?new URL(n,document.baseURI).toString():e?new URL(n,e).toString():new URL(n,document.baseURI).toString()}catch{return t}}function Xu(t){let e=t.getAttribute("data-variable-values");if(!e)return{};let n;try{n=JSON.parse(e)}catch{return{}}return!n||typeof n!="object"||Array.isArray(n)?{}:n}function En(t){let e=(t.getAttribute("data-composition-id")||"").trim()||null;return{authoredCompositionId:(t.getAttribute("data-hf-original-composition-id")||e||"").trim()||null,runtimeCompositionId:e}}function Qu(t){let e=new Map;for(let n of t){let i=En(n).authoredCompositionId||"";i&&e.set(i,(e.get(i)||0)+1)}return e}function hs(t){let e=En(t).authoredCompositionId;return e?!!document.querySelector(`template#${CSS.escape(e)}-template`):!1}function Zu(t){return!!t.querySelector(\'[data-hf-inner-root="true"]\')}function ec(t){return t.hasAttribute("data-composition-src")?!0:hs(t)?t.children.length===0||t.hasAttribute("data-hf-original-composition-id")?!0:Zu(t):!1}function _i(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(e=>e.hasAttribute("data-composition-src")?!0:hs(e))}function xs(){let t=window.__hfVariablesByComp;if(!t)return;let e=new Set(_i().map(n=>En(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(t))e.has(n)||delete t[n]}function gs(t,e=Qu(t)){let n=new Map,i=new Map;for(let r of t){let{authoredCompositionId:o,runtimeCompositionId:s}=En(r),l=ec(r);if(!o){i.set(r,{authoredCompositionId:null,runtimeCompositionId:s});continue}let a=(e.get(o)||0)>1,c=s||o;if(l){let u=a?(n.get(o)||0)+1:0;a&&n.set(o,u),c=a?$u(o,u):o,a?r.setAttribute("data-hf-original-composition-id",o):r.removeAttribute("data-hf-original-composition-id"),r.setAttribute("data-composition-id",c),s&&s!==c&&window.__hfVariablesByComp&&delete window.__hfVariablesByComp[s]}i.set(r,{authoredCompositionId:o,runtimeCompositionId:c})}return i}async function Ti(t){let e=null;t.authoredCompositionId&&(e=Array.from(t.sourceNode.querySelectorAll("[data-composition-id]")).find(x=>x.getAttribute("data-composition-id")===t.authoredCompositionId)??null);let n=e??t.sourceNode,i=e?.getAttribute("data-composition-id")?.trim()||t.authoredCompositionId||null,r=t.runtimeCompositionId||i||null,o=e?.getAttribute("id")?.trim()||null,s=r?`[data-composition-id="${CSS.escape(r)}"]`:void 0;if(t.headLinks)for(let f of t.headLinks){let x=f.getAttribute("href")||"";x&&(document.head.querySelector(`link[href="${CSS.escape(x)}"]`)||document.head.appendChild(f.cloneNode(!0)))}if(t.headStyles)for(let f of t.headStyles){let x=f.cloneNode(!0);x instanceof HTMLStyleElement&&(i&&(x.textContent=Fi(x.textContent||"",i,s,o)),document.head.appendChild(x),t.injectedStyles.push(x))}let l=Array.from(n.querySelectorAll("style"));for(let f of l){let x=f.cloneNode(!0);x instanceof HTMLStyleElement&&(i&&(x.textContent=Fi(x.textContent||"",i,s,o)),document.head.appendChild(x),t.injectedStyles.push(x))}let a=[];if(t.headScripts)for(let f of t.headScripts){let x=f.getAttribute("type")?.trim()??"",A=f.getAttribute("src")?.trim()??"";if(A){let g=ds(A,t.compositionUrl);a.push({kind:"external",src:g,type:x})}else{let g=f.textContent?.trim()??"";g&&a.push({kind:"inline",content:g,type:x,scopeCompositionId:i})}}let c=Array.from(n.querySelectorAll("script")),u=[...a];for(let f of c){let x=f.getAttribute("type")?.trim()??"",A=f.getAttribute("src")?.trim()??"";if(A){let g=ds(A,t.compositionUrl);u.push({kind:"external",src:g,type:x})}else{let g=f.textContent?.trim()??"";g&&u.push({kind:"inline",content:g,type:x,scopeCompositionId:i})}f.parentNode?.removeChild(f)}let m=Array.from(n.querySelectorAll("style"));for(let f of m)f.parentNode?.removeChild(f);if(e){let f=e.getAttribute("data-width"),x=e.getAttribute("data-height"),A=t.parseDimensionPx(f),g=t.parseDimensionPx(x);f&&t.host.setAttribute("data-width",f),x&&t.host.setAttribute("data-height",x),A&&t.host instanceof HTMLElement&&(t.host.style.width=A),g&&t.host instanceof HTMLElement&&(t.host.style.height=g),e.hasAttribute("data-timeline-locked")&&t.host.setAttribute("data-timeline-locked",""),t.host.appendChild(Yu(e))}else t.hasTemplate?t.host.appendChild(document.importNode(n,!0)):t.host.innerHTML=t.fallbackBodyInnerHtml;if(r){let f={...t.declaredVariableDefaults??{},...Xu(t.host)};Object.keys(f).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[r]=f):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[r]}for(let f of u){let x=document.createElement("script");if(f.type&&(x.type=f.type),x.async=!1,f.kind==="external"?x.src=f.src:f.type.toLowerCase()==="module"?x.textContent=f.content:f.scopeCompositionId?x.textContent=us(f.content,f.scopeCompositionId,"[HyperFrames] composition script error:",s,r||f.scopeCompositionId,o):x.textContent=`(function(){${f.content}})();`,document.body.appendChild(x),t.injectedScripts.push(x),f.kind==="external"){let A=await Ku(x);A.status!=="load"&&t.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:t.authoredCompositionId,runtimeCompositionId:t.runtimeCompositionId,hostCompositionSrc:t.hostCompositionSrc,resolvedScriptSrc:f.src,loadStatus:A.status,elapsedMs:A.elapsedMs}})}}}async function ys(t){let e=_i();if(xs(),e.length===0)return;let n=gs(e),i=e.filter(r=>{if(r.hasAttribute("data-composition-src")||r.children.length>0)return!1;let o=n.get(r)?.authoredCompositionId;return o?!!document.querySelector(`template#${CSS.escape(o)}-template`):!1});if(i.length!==0)for(let r of i){let o=n.get(r),s=o?.authoredCompositionId;if(!s)continue;let l=document.querySelector(`template#${CSS.escape(s)}-template`);Ni(r),await Ti({host:r,authoredCompositionId:s,runtimeCompositionId:o?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:l.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,onDiagnostic:t.onDiagnostic})}}async function bs(t){let e=_i();if(xs(),e.length===0)return;let n=gs(e),i=e.filter(r=>r.hasAttribute("data-composition-src"));i.length!==0&&await Promise.all(i.map(async r=>{let o=r.getAttribute("data-composition-src");if(!o)return;let s=n.get(r),l=s?.authoredCompositionId||null,a=s?.runtimeCompositionId||l||null,c=null;try{c=new URL(o,document.baseURI)}catch{c=null}Ni(r);try{let u=l!=null?document.querySelector(`template#${CSS.escape(l)}-template`):null;if(u){await Ti({host:r,authoredCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,sourceNode:u.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:c,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,onDiagnostic:t.onDiagnostic});return}let m=await fetch(o);if(!m.ok)throw new Error(`HTTP ${m.status}`);let f=await m.text(),A=new DOMParser().parseFromString(f,"text/html");ps(A,c);let g=(l?A.querySelector(`template#${CSS.escape(l)}-template`):null)??A.querySelector("template"),b=g?g.content:A.body,F=g?void 0:Array.from(A.head.querySelectorAll("style")),L=g?void 0:Array.from(A.head.querySelectorAll("script")),k=g?void 0:Array.from(A.head.querySelectorAll(\'link[rel="stylesheet"], link[rel="preconnect"]\'));await Ti({host:r,authoredCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,sourceNode:b,hasTemplate:!!g,fallbackBodyInnerHtml:A.body.innerHTML,compositionUrl:c,injectedStyles:t.injectedStyles,injectedScripts:t.injectedScripts,parseDimensionPx:t.parseDimensionPx,headStyles:F,headScripts:L,headLinks:k,declaredVariableDefaults:Mi(A.documentElement),onDiagnostic:t.onDiagnostic})}catch(u){t.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:l,runtimeCompositionId:a,hostCompositionSrc:o,errorMessage:u instanceof Error?u.message:"unknown_error"}}),Ni(r)}}))}function tc(t){return t instanceof HTMLElement?t.dataset.captionWrapper!=="true"?t:t.querySelector(":scope > span")??null:null}function nc(){let t=[],e=document.querySelectorAll(".caption-group");for(let n of e)for(let i of n.children){if(!(i instanceof HTMLElement))continue;let r=i.dataset.captionWrapper==="true"?i.querySelector(":scope > span"):i.tagName==="SPAN"?i:null;r&&t.push(r)}return t}function ic(t){let e=t.parentElement;if(e?.dataset.captionWrapper==="true")return e;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",t.parentNode?.insertBefore(n,t),n.appendChild(t),n}function Li(){let t=window.gsap;t&&document.querySelectorAll(".caption-group").length!==0&&fetch("caption-overrides.json").then(e=>e.ok?e.json():null).then(e=>{if(!e||!Array.isArray(e)||e.length===0)return;let n=nc();for(let i of e){let r=null;if(i.wordId&&(r=tc(document.getElementById(i.wordId))),!r&&i.wordIndex!==void 0&&(r=n[i.wordIndex]??null),!r)continue;let o={},s={};if(i.x!==void 0&&(o.x=i.x),i.y!==void 0&&(o.y=i.y),i.scale!==void 0&&(o.scale=i.scale),i.rotation!==void 0&&(o.rotation=i.rotation),i.opacity!==void 0&&(s.opacity=i.opacity),i.fontSize!==void 0&&(s.fontSize=`${i.fontSize}px`),i.fontWeight!==void 0&&(s.fontWeight=i.fontWeight),i.fontFamily!==void 0&&(s.fontFamily=i.fontFamily),i.activeColor||i.dimColor){let a=t.getTweensOf(r).filter(u=>u.vars.color!==void 0).sort((u,m)=>u.startTime()-m.startTime()),c=a.length>0?String(a[0].vars.color):"";for(let u of a)String(u.vars.color)===c?i.dimColor&&(u.vars.color=i.dimColor):i.activeColor&&(u.vars.color=i.activeColor);i.dimColor&&t.set(r,{color:i.dimColor})}if(Object.keys(s).length>0&&t.set(r,s),Object.keys(o).length>0){let l=ic(r);t.set(l,o)}}}).catch(()=>{})}var Kt="data-color-grading",rc="rec709",Je={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,saturation:0},Ss=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","saturation"],oc=[{id:"neutral",label:"Neutral",adjust:{...Je}},{id:"warm-clean",label:"Warm Clean",adjust:{...Je,exposure:.05,contrast:.08,highlights:-.08,shadows:.08,temperature:.16,saturation:.06}},{id:"cool-clean",label:"Cool Clean",adjust:{...Je,contrast:.06,highlights:-.06,shadows:.06,temperature:-.12,tint:.04,saturation:.04}},{id:"soft-boost",label:"Soft Boost",adjust:{...Je,exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,saturation:.1}},{id:"bright-pop",label:"Bright Pop",adjust:{...Je,exposure:.12,contrast:.12,whites:.08,blacks:-.04,saturation:.14}},{id:"deep-contrast",label:"Deep Contrast",adjust:{...Je,exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}}],sc=new Map(oc.map(t=>[t.id,t])),ac=/^\\$(?:\\{([A-Za-z0-9_.:-]+)\\}|([A-Za-z0-9_.:-]+))$/,lc={exposure:{min:-2,max:2},contrast:{min:-1,max:1},highlights:{min:-1,max:1},shadows:{min:-1,max:1},whites:{min:-1,max:1},blacks:{min:-1,max:1},temperature:{min:-1,max:1},tint:{min:-1,max:1},saturation:{min:-1,max:1}};function $t(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function uc(t,e,n){return Number.isFinite(t)?Math.min(n,Math.max(e,t)):0}function As(t,e){let n=typeof t=="number"?t:Number(t);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):e}function cc(t,e){let n=typeof t=="number"?t:Number(t);if(!Number.isFinite(n))return 0;let i=lc[e];return uc(n,i.min,i.max)}function dc(t){if(t==null)return null;let e=String(t).trim();return e||null}function fc(t){if(t==null)return null;if(typeof t=="string"){let n=t.trim();return n?{src:n,intensity:1}:null}if(!$t(t))return null;let e=t.src;return typeof e!="string"||e.trim()===""?null:{src:e.trim(),intensity:As(t.intensity,1)}}function mc(t){if(typeof t=="string"){let e=t.trim();if(!e)return null;if(e.startsWith("{"))try{let n=JSON.parse(e);return $t(n)?n:null}catch{return null}return{preset:e,intensity:1}}return $t(t)?t:null}function pc(t,e){let n=t.trim().match(ac);if(!n)return t;let i=n[1]??n[2]??"";return i&&Object.hasOwn(e,i)?e[i]:t}function vi(t,e){if(typeof t=="string"){let i=pc(t,e);if(i!==t)return i;let r=t.trim();if(!r.startsWith("{"))return t;try{return vi(JSON.parse(r),e)}catch{return t}}if(!$t(t))return t;let n={};for(let[i,r]of Object.entries(t))n[i]=vi(r,e);return n}function hc(t){return t?sc.get(t)??null:null}function ki(t){let e=mc(t);if(!e||e.enabled===!1)return null;let n=dc(e.preset),r=hc(n)?.adjust??Je,o=$t(e.adjust)?e.adjust:{},s=Ss.reduce((l,a)=>(l[a]=cc(o[a]??r[a],a),l),{...Je});return{enabled:!0,preset:n,intensity:As(e.intensity,1),adjust:s,lut:fc(e.lut),colorSpace:typeof e.colorSpace=="string"&&e.colorSpace.trim()?e.colorSpace.trim():rc}}function Es(t,e){return ki(vi(t,e))}function Jt(t){return!t?.enabled||t.intensity===0?!1:t.lut&&t.lut.intensity!==0?!0:Ss.some(e=>Math.abs(t.adjust[e])>1e-4)}var we=class extends Error{constructor(n,i=null){super(i==null?n:`${n} at line ${i}`);ye(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=i}},xc=[0,0,0],gc=[1,1,1],yc=64;function bc(t){let e=!1;for(let n=0;n<t.length;n++){let i=t[n];if(i===\'"\'&&(e=!e),i==="#"&&!e)return t.slice(0,n)}return t}function pt(t,e){let n=Number(t);if(!Number.isFinite(n))throw new we(`Invalid number "${t}"`,e);return n}function ws(t,e,n){if(t.length!==3)throw new we(`${e} expects three numbers`,n);return[pt(t[0],n),pt(t[1],n),pt(t[2],n)]}function Cs(t,e,n){if(!t)throw new we(`${e} expects a size`,n);let i=Number(t);if(!Number.isInteger(i)||i<2)throw new we(`${e} must be an integer greater than 1`,n);return i}function Sc(t,e){if(e[0]<=t[0]||e[1]<=t[1]||e[2]<=t[2])throw new we("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function Ac(t){let e=/^TITLE\\s+"([^"]*)"\\s*$/i.exec(t);if(e)return e[1]??null;let n=/^TITLE\\s+(.+)\\s*$/i.exec(t);return n&&(n[1]??"").trim()||null}function Ec(t){return/^[+-]?(?:\\d|\\.\\d)/.test(t)}function Fs(t,e={}){let n=e.maxSize??yc,i=null,r=xc,o=gc,s=null,l=null,a=[],c=t.replace(/^\\uFEFF/,"").split(/\\r?\\n/);for(let m=0;m<c.length;m++){let f=m+1,x=bc(c[m]??"").trim();if(!x)continue;let A=x.split(/\\s+/),g=(A[0]??"").toUpperCase(),b=A.slice(1);if(g==="TITLE"){i=Ac(x);continue}if(g==="DOMAIN_MIN"){r=ws(b,g,f);continue}if(g==="DOMAIN_MAX"){o=ws(b,g,f);continue}if(g==="LUT_1D_SIZE"){s=Cs(b[0],g,f);continue}if(g==="LUT_3D_SIZE"){if(l=Cs(b[0],g,f),l>n)throw new we(`LUT_3D_SIZE ${l} exceeds max ${n}`,f);continue}if(!Ec(g)){if(g.startsWith("LUT_"))throw new we(`Unsupported cube keyword ${g}`,f);continue}if(!l)throw s?new we("1D cube LUTs are not supported yet",f):new we("LUT data appears before LUT_3D_SIZE",f);if(A.length!==3)throw new we("LUT data rows must contain three numbers",f);a.push(pt(A[0],f),pt(A[1],f),pt(A[2],f))}if(s&&l)throw new we("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw s?new we("1D cube LUTs are not supported yet"):new we("Missing LUT_3D_SIZE");Sc(r,o);let u=l*l*l;if(a.length!==u*3)throw new we(`Expected ${u} LUT rows for size ${l}, found ${a.length/3}`);return{title:i,size:l,domainMin:r,domainMax:o,data:new Float32Array(a)}}function wc(t){return Number.isFinite(t)?Math.min(1,Math.max(0,t)):0}function Ri(t){return Math.round(wc(t)*255)}function Ms(t){let e=t.size,n=e*e,i=e,r=new Uint8Array(n*i*4);for(let o=0;o<e;o++)for(let s=0;s<e;s++)for(let l=0;l<e;l++){let a=((o*e+s)*e+l)*3,c=(s*n+o*e+l)*4;r[c]=Ri(t.data[a]??0),r[c+1]=Ri(t.data[a+1]??0),r[c+2]=Ri(t.data[a+2]??0),r[c+3]=255}return{width:n,height:i,data:r}}var wn=new Map,Cc="data-hf-color-grading-canvas",vs="data-hf-color-grading-source-hidden",Fc="__hf_color_grading_canvas__",Mc=64,Yt={enabled:!1,position:.5,softness:0,lineWidth:2};function Nc(t){let e=window,i=t.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"",r=i?e.__hfVariablesByComp?.[i]:void 0;if(r)return r;let o=e.__hyperframes?.getVariables?.();return o&&typeof o=="object"?o:e.__hfVariables??{}}function Di(t){let e=t.getAttribute(Kt);return e==null?null:Es(e,Nc(t))}var Tc=["attribute vec2 a_pos;","varying vec2 v_uv;","void main(){"," v_uv = a_pos * 0.5 + 0.5;"," gl_Position = vec4(a_pos, 0.0, 1.0);","}"].join(`\n`),_c=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_lut;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_saturation;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 sampleColor = texture2D(u_source, uv);"," vec3 original = sampleColor.rgb;"," vec3 color = original * pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," color += u_blacks * 0.25 * (1.0 - smoothstep(0.0, 0.35, y));"," color += u_whites * 0.25 * smoothstep(0.65, 1.0, y);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," color = clamp(color, 0.0, 1.0);"," color = clamp(applyLut(color), 0.0, 1.0);"," vec3 graded = mix(original, color, u_intensity);"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`\n`);function rt(t){return t instanceof HTMLVideoElement||t instanceof HTMLImageElement}function Ns(t,e,n){let i=t.createShader(n);return i?(t.shaderSource(i,e),t.compileShader(i),t.getShaderParameter(i,t.COMPILE_STATUS)?i:(v("runtime.colorGrading.compileShader",t.getShaderInfoLog(i)),t.deleteShader(i),null)):null}function Lc(t){let e=Ns(t,Tc,t.VERTEX_SHADER),n=Ns(t,_c,t.FRAGMENT_SHADER);if(!e||!n)return e&&t.deleteShader(e),n&&t.deleteShader(n),null;let i=t.createProgram();return i?(t.attachShader(i,e),t.attachShader(i,n),t.linkProgram(i),t.deleteShader(e),t.deleteShader(n),t.getProgramParameter(i,t.LINK_STATUS)?i:(v("runtime.colorGrading.linkProgram",t.getProgramInfoLog(i)),t.deleteProgram(i),null)):null}function Ts(t,e=t.LINEAR){let n=t.createTexture();return n?(t.bindTexture(t.TEXTURE_2D,n),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,e),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,null),n):null}function vc(t){let e=t.getContext("webgl",{alpha:!0,premultipliedAlpha:!1,preserveDrawingBuffer:!0});if(!e)return null;let n=Lc(e),i=Ts(e),r=Ts(e,e.NEAREST);if(!n||!i||!r)return n&&e.deleteProgram(n),i&&e.deleteTexture(i),r&&e.deleteTexture(r),null;let o=e.createBuffer();return o?(e.bindBuffer(e.ARRAY_BUFFER,o),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{gl:e,program:{program:n,texture:i,lutTexture:r,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),lut:e.getUniformLocation(n,"u_lut"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),exposure:e.getUniformLocation(n,"u_exposure"),contrast:e.getUniformLocation(n,"u_contrast"),highlights:e.getUniformLocation(n,"u_highlights"),shadows:e.getUniformLocation(n,"u_shadows"),whites:e.getUniformLocation(n,"u_whites"),blacks:e.getUniformLocation(n,"u_blacks"),temperature:e.getUniformLocation(n,"u_temperature"),tint:e.getUniformLocation(n,"u_tint"),saturation:e.getUniformLocation(n,"u_saturation"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}}):(e.deleteProgram(n),e.deleteTexture(i),e.deleteTexture(r),null)}function kc(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Rc(t){if(!kc(t))return{...Yt};let e=(n,i,r,o)=>{let s=typeof n=="number"?n:Number(n);return Math.min(o,Math.max(r,Number.isFinite(s)?s:i))};return{enabled:t.enabled===!0,position:e(t.position,Yt.position,0,1),softness:e(t.softness,Yt.softness,0,.25),lineWidth:e(t.lineWidth,Yt.lineWidth,0,12)}}function ks(t){try{let e=new URL(t,document.baseURI);return e.protocol==="data:"?{href:e.href}:e.protocol!=="http:"&&e.protocol!=="https:"?{error:"LUT must be project-local or a data URL"}:e.origin!==window.location.origin?{error:"Remote LUT URLs are not supported"}:{href:e.href}}catch{return{error:"Invalid LUT URL"}}}function Pi(t){return t instanceof Error?t.message:"LUT failed to load"}function Dc(t){let e=ks(t);if("error"in e)return{state:"error",message:e.error};let n=wn.get(e.href);if(n)return n;let i=fetch(e.href,{credentials:"same-origin"}).then(o=>{if(!o.ok)throw new Error(`Failed to load LUT (${o.status})`);return o.text()}).then(o=>Fs(o,{maxSize:Mc})),r={state:"pending",promise:i};return wn.set(e.href,r),i.then(o=>wn.set(e.href,{state:"ready",lut:o}),o=>wn.set(e.href,{state:"error",message:Pi(o)})),r}function _s(t,e,n){if(t.lut?.src===e)return t.lut;let i=Ms(n),{gl:r,program:o}=t;try{return r.activeTexture(r.TEXTURE1),r.bindTexture(r.TEXTURE_2D,o.lutTexture),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,i.width,i.height,0,r.RGBA,r.UNSIGNED_BYTE,i.data),t.lut={src:e,title:n.title,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:i.width,textureHeight:i.height},t.lutError=null,t.lutLoadingSrc=null,t.lut}catch(s){return t.lut=null,t.lutError=Pi(s),t.lutLoadingSrc=null,v("runtime.colorGrading.uploadLut",s),null}}function Ic(t){let e=t.grading.lut?.src.trim()??"",n=t.grading.lut?.intensity??1;if(!e||n<=0)return t.lut=null,t.lutLoadingSrc=null,t.lutError=null,null;let i=ks(e);if("error"in i)return t.lut=null,t.lutLoadingSrc=null,t.lutError=i.error,null;if(t.lut?.src===i.href)return t.lut;t.lut=null;let r=Dc(e);return r.state==="ready"?_s(t,i.href,r.lut):r.state==="error"?(t.lutError=r.message,t.lutLoadingSrc=null,null):(t.lutLoadingSrc!==i.href&&(t.lutLoadingSrc=i.href,t.lutError=null,r.promise.then(o=>{t.destroyed||t.grading.lut?.src.trim()!==e||(_s(t,i.href,o),Ge(t))},o=>{t.destroyed||t.grading.lut?.src.trim()!==e||(t.lut=null,t.lutError=Pi(o),t.lutLoadingSrc=null,Ge(t))})),null)}function Ii(t){if(!t)return null;if(typeof t=="string"){let e=t.trim();if(!e)return null;let n=document.getElementById(e.replace(/^#/,""));if(n&&rt(n))return n;try{let i=document.querySelector(e);return i&&rt(i)?i:null}catch{return null}}if(t.hfId){let e=document.querySelector(`[data-hf-id="${CSS.escape(t.hfId)}"]`);if(e&&rt(e))return e}if(t.id){let e=document.getElementById(t.id);if(e&&rt(e))return e}if(!t.selector)return null;try{let e=Array.from(document.querySelectorAll(t.selector)),n=Math.max(0,Math.floor(Number(t.selectorIndex??0)||0)),i=e[n]??null;return i&&rt(i)?i:null}catch{return null}}function Pc(t){return t instanceof HTMLVideoElement?t.videoWidth>0&&t.videoHeight>0?{width:t.videoWidth,height:t.videoHeight}:null:t instanceof HTMLImageElement&&t.naturalWidth>0&&t.naturalHeight>0?{width:t.naturalWidth,height:t.naturalHeight}:null}function Rs(t){return t instanceof HTMLVideoElement?t.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&t.videoWidth>0&&t.videoHeight>0:t instanceof HTMLImageElement?t.complete&&t.naturalWidth>0&&t.naturalHeight>0:!1}function Oc(t){if(!t.id)return null;let e=document.getElementById(`__render_frame_${t.id}__`);return e instanceof HTMLImageElement&&Rs(e)?e:null}function Bc(t){if(t instanceof HTMLVideoElement){let e=Oc(t);if(e)return e}return Rs(t)?t:null}function Ls(t,e){let n=t.toLowerCase();if(n==="center")return .5;if(e==="x"){if(n==="left")return 0;if(n==="right")return 1}else{if(n==="top")return 0;if(n==="bottom")return 1}if(n.endsWith("%")){let i=Number.parseFloat(n);return Number.isFinite(i)?i/100:null}return null}function Hc(t){let e=t.trim().split(/\\s+/).filter(Boolean),n=.5,i=.5;for(let r=0;r<e.length;r++){let o=e[r]??"",s=Ls(o,"x"),l=Ls(o,"y");if(s!==null&&(o==="left"||o==="right"||o.endsWith("%")&&r===0)){n=s;continue}if(l!==null&&(o==="top"||o==="bottom"||o.endsWith("%")&&r>0)){i=l;continue}}return{x:n,y:i}}function Wc(t,e,n,i,r,o){if(t<=0||e<=0||n<=0||i<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let s=r||"fill",l=t,a=e;if(s==="contain"||s==="cover"||s==="scale-down"){let f=s==="cover"?Math.max(t/n,e/i):Math.min(t/n,e/i);l=n*f,a=i*f,s==="scale-down"&&l>n&&a>i&&(l=n,a=i)}else s==="none"&&(l=n,a=i);let c=Hc(o||"center"),u=(t-l)*c.x/t,m=(e-a)*c.y/e;return{scaleX:l/t,scaleY:a/e,offsetX:u,offsetY:m}}function Gc(t,e){window.getComputedStyle(e).position==="static"&&(t.touchedParent||(t.touchedParent=e,t.parentInlinePosition=e.style.position||null),e.style.position="relative")}function Uc(t,e){let{element:n,canvas:i}=t,r=n.parentElement;r&&Gc(t,r);let o=window.getComputedStyle(e);Fr(i.style,o),i.style.pointerEvents="none",i.style.position="absolute",i.style.inset="auto",i.style.left=`${n.offsetLeft}px`,i.style.top=`${n.offsetTop}px`,i.style.right="auto",i.style.bottom="auto",i.style.width=`${n.offsetWidth}px`,i.style.height=`${n.offsetHeight}px`,i.style.display="block",i.style.opacity=t.sourceOpacityForCanvas,i.style.visibility=t.sourceVisibleForCanvas?"visible":"hidden";let s=n.getBoundingClientRect(),l=Math.max(0,Math.round(n.offsetWidth||s.width)),a=Math.max(0,Math.round(n.offsetHeight||s.height));return l<=0||a<=0?(i.style.display="none",null):(i.width!==l&&(i.width=l),i.height!==a&&(i.height=a),{width:l,height:a})}function Vc(t,e,n,i,r,o,s){t.uniform1i(e.source,0),t.uniform1i(e.lut,1),t.uniform2f(e.resolution,o.width,o.height),t.uniform2f(e.uvScale,s.scaleX,s.scaleY),t.uniform2f(e.uvOffset,s.offsetX,s.offsetY),t.uniform1f(e.lutEnabled,i?1:0),t.uniform1f(e.lutSize,i?.size??2),t.uniform2f(e.lutTextureSize,i?.textureWidth??1,i?.textureHeight??1),t.uniform3f(e.lutDomainMin,i?.domainMin[0]??0,i?.domainMin[1]??0,i?.domainMin[2]??0),t.uniform3f(e.lutDomainMax,i?.domainMax[0]??1,i?.domainMax[1]??1,i?.domainMax[2]??1),t.uniform1f(e.lutIntensity,n.lut?.intensity??0),t.uniform1f(e.exposure,n.adjust.exposure),t.uniform1f(e.contrast,n.adjust.contrast),t.uniform1f(e.highlights,n.adjust.highlights),t.uniform1f(e.shadows,n.adjust.shadows),t.uniform1f(e.whites,n.adjust.whites),t.uniform1f(e.blacks,n.adjust.blacks),t.uniform1f(e.temperature,n.adjust.temperature),t.uniform1f(e.tint,n.adjust.tint),t.uniform1f(e.saturation,n.adjust.saturation),t.uniform1f(e.intensity,n.intensity),t.uniform1f(e.compareEnabled,r.enabled?1:0),t.uniform1f(e.comparePosition,r.position),t.uniform1f(e.compareSoftness,r.softness),t.uniform1f(e.compareLineWidth,r.lineWidth)}function zc(t){t.sourceHidden||(t.sourceInlineOpacity=t.element.style.getPropertyValue("opacity")||null,t.sourceInlineOpacityPriority=t.element.style.getPropertyPriority("opacity")),t.element.setAttribute(vs,"true"),t.element.style.setProperty("opacity","0","important"),t.sourceHidden=!0}function Ge(t){if(t.destroyed)return!1;let e=Bc(t.element);if(!e)return t.hasDrawn||(t.canvas.style.display="none"),!1;let n=Pc(e);if(!n)return!1;let i=e instanceof HTMLElement?e:t.element,r=t.element.style.getPropertyValue("opacity"),o=t.element.style.getPropertyPriority("opacity"),s=t.sourceHidden&&r==="0"&&o==="important",l=t.element.style.getPropertyValue("visibility");if(!s){let x=window.getComputedStyle(t.element);t.sourceOpacityForCanvas=x.opacity||"1",t.sourceVisibleForCanvas=l!=="hidden"&&x.visibility!=="hidden"}let a=Uc(t,i);if(!a)return!1;let c=window.getComputedStyle(i),u=Wc(a.width,a.height,n.width,n.height,c.objectFit,c.objectPosition),{gl:m,program:f}=t;try{let x=Ic(t);return m.viewport(0,0,a.width,a.height),m.useProgram(f.program),m.activeTexture(m.TEXTURE0),m.bindTexture(m.TEXTURE_2D,f.texture),m.pixelStorei(m.UNPACK_FLIP_Y_WEBGL,!0),m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,e),m.activeTexture(m.TEXTURE1),m.bindTexture(m.TEXTURE_2D,f.lutTexture),Vc(m,f,t.grading,x,t.compare,a,u),m.enableVertexAttribArray(f.position),m.vertexAttribPointer(f.position,2,m.FLOAT,!1,0,0),m.drawArrays(m.TRIANGLE_STRIP,0,4),zc(t),t.hasDrawn=!0,!0}catch(x){return v("runtime.colorGrading.drawEntry",x),!1}}function Ye(t,e,n,i){e.addEventListener(n,i),t.cleanup.push(()=>e.removeEventListener(n,i))}function qc(t){t.animationFrame!==null&&(window.cancelAnimationFrame(t.animationFrame),t.animationFrame=null),t.videoFrameHandle!==null&&t.element instanceof HTMLVideoElement&&(t.element.cancelVideoFrameCallback?.(t.videoFrameHandle),t.videoFrameHandle=null)}function Xt(t){if(t.destroyed||!(t.element instanceof HTMLVideoElement)||t.videoFrameHandle!==null||t.animationFrame!==null)return;let e=t.element,n=e;if(typeof n.requestVideoFrameCallback=="function"){t.videoFrameHandle=n.requestVideoFrameCallback(()=>{t.videoFrameHandle=null,Ge(t),!t.destroyed&&!e.paused&&!e.ended&&Xt(t)});return}t.animationFrame=window.requestAnimationFrame(()=>{t.animationFrame=null,Ge(t),!t.destroyed&&!e.paused&&!e.ended&&Xt(t)})}function jc(t){let e=()=>{Ge(t)};Ye(t,t.element,"load",e),Ye(t,t.element,"loadedmetadata",e),Ye(t,t.element,"loadeddata",e),Ye(t,t.element,"seeked",e),Ye(t,t.element,"timeupdate",e),Ye(t,window,"resize",e),t.element instanceof HTMLVideoElement&&(Ye(t,t.element,"play",()=>Xt(t)),Ye(t,t.element,"pause",e)),typeof ResizeObserver<"u"&&(t.resizeObserver=new ResizeObserver(e),t.resizeObserver.observe(t.element))}function $c(t){if(!t.destroyed){t.destroyed=!0,qc(t),t.resizeObserver?.disconnect();for(let e of t.cleanup)e();if(t.cleanup.length=0,t.canvas.remove(),t.gl.deleteTexture(t.program.texture),t.gl.deleteTexture(t.program.lutTexture),t.gl.deleteProgram(t.program.program),t.sourceHidden){t.element.removeAttribute(vs);let e=t.element.style.getPropertyValue("opacity"),n=t.element.style.getPropertyPriority("opacity");e==="0"&&n==="important"&&(t.sourceInlineOpacity===null?t.element.style.removeProperty("opacity"):t.element.style.setProperty("opacity",t.sourceInlineOpacity,t.sourceInlineOpacityPriority))}t.touchedParent&&(t.parentInlinePosition===null?t.touchedParent.style.removeProperty("position"):t.touchedParent.style.position=t.parentInlinePosition)}}function Kc(t){let e=document.createElement("canvas");return e.className=Fc,e.setAttribute(Cc,"true"),e.setAttribute("data-hyperframes-ignore",""),e.setAttribute("data-hyperframes-picker-ignore",""),e.setAttribute("data-hf-ignore",""),e.setAttribute("aria-hidden","true"),e.style.pointerEvents="none",e.style.display="none",t.parentNode?.insertBefore(e,t.nextSibling),e}function Ds(){let t=new WeakMap,e=new Set,n=null,i=!1,r=(g,b,F)=>{let L=t.get(g);if(L)return L.grading=b,L.source=F,Ge(L),g instanceof HTMLVideoElement&&!g.paused&&Xt(L),!0;let k=Kc(g),V=vc(k);if(!V)return k.remove(),!1;let O={element:g,canvas:k,gl:V.gl,program:V.program,grading:b,compare:{...Yt},lut:null,lutLoadingSrc:null,lutError:null,source:F,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(g).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(g).visibility!=="hidden",hasDrawn:!1,destroyed:!1};return t.set(g,O),e.add(g),jc(O),Ge(O),g instanceof HTMLVideoElement&&!g.paused&&Xt(O),!0},o=(g,b)=>{if(i)return!1;let F=Ii(g);if(!F)return!1;let L=t.get(F);if(!L){let k=Di(F);if(!Jt(k)||!r(F,k,"attribute"))return!1;L=t.get(F)}return L?(L.compare=Rc(b),Ge(L),!0):!1},s=g=>{let b=t.get(g);b&&($c(b),t.delete(g),e.delete(g))},l=()=>{if(i)return 0;let g=new Set;document.querySelectorAll(`video[${Kt}], img[${Kt}]`).forEach(F=>{if(!rt(F))return;g.add(F);let L=Di(F);Jt(L)?r(F,L,"attribute"):s(F)});for(let F of Array.from(e)){let L=t.get(F);L&&(!F.isConnected||L.source==="attribute"&&!g.has(F))&&s(F)}return e.size},a=()=>{if(i)return 0;let g=0;for(let b of Array.from(e,F=>t.get(F)))b&&Ge(b)&&(g+=1);return g},c=(g,b)=>{if(i)return!1;let F=Ii(g);if(!F)return!1;let L=ki(b);return Jt(L)?r(F,L,"live"):(s(F),!0)},u=(g,b)=>{if(!rt(g))return!1;let F=t.get(g);return F?(F.sourceVisibleForCanvas=b,!0):!1},m=g=>{let b=Ii(g);if(!b)return{state:"missing",message:"Media not found"};let F=t.get(b);if(F)return F.lutError?{state:"unavailable",message:F.lutError}:F.grading.lut&&F.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:F.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:F.lut?"Shader + LUT active":"Shader active"};let L=Di(b);return Jt(L)?{state:"unavailable",message:"WebGL unavailable"}:{state:"inactive",message:"No grading applied"}},f=()=>{if(!i){i=!0,n?.disconnect(),n=null;for(let g of Array.from(e))s(g)}};document.body&&(n=new MutationObserver(()=>l()),n.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[Kt]}));let x={refresh:l,redraw:a,setGrading:c,setCompare:o,setSourceVisibility:u,getStatus:m,destroy:f},A=window;return A.__hf=A.__hf||{},A.__hf.colorGrading=x,l(),x}var Cn=class{constructor(e){ye(this,"_baseTime",0);ye(this,"_playStartMs",null);ye(this,"_rate",1);ye(this,"_duration",1/0);ye(this,"_nowMs");ye(this,"_audioSource",null);this._baseTime=e?.initialTime??0,this._rate=e?.rate??1,this._duration=e?.duration??1/0,this._nowMs=e?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let i=null;if("currentTimeSeconds"in this._audioSource)i=this._audioSource.currentTimeSeconds;else{let{el:r,compositionStart:o,mediaStart:s}=this._audioSource;!r.paused&&Number.isFinite(r.currentTime)&&(i=(r.currentTime-s)/(r.playbackRate>0?r.playbackRate:1)*this._rate+o)}if(i!==null)return Number.isFinite(this._duration)&&i>=this._duration?this._duration:Math.max(0,i)}let e=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+e*this._rate;return Number.isFinite(this._duration)&&n>=this._duration?this._duration:Math.max(0,n)}play(){return this._playStartMs!==null||Number.isFinite(this._duration)&&this._baseTime>=this._duration?!1:(this._playStartMs=this._nowMs(),!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(e){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(e,this._duration)):Math.max(0,e);this._baseTime=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs())}isPlaying(){return this._playStartMs!==null}setRate(e){let n=Number.isFinite(e)&&e>0?Math.max(.1,Math.min(5,e)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs()),this._rate=n}getRate(){return this._rate}setDuration(e){this._duration=Number.isFinite(e)&&e>0?e:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}attachAudioSource(e){this._audioSource=e}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs()),this._audioSource=null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:e}=this._audioSource;if(!e.paused&&Number.isFinite(e.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){return Number.isFinite(this._duration)&&this.now()>=this._duration}};function Is(t){return!Number.isFinite(t)||t<=0?1:t}function Jc(t,e){e||t.paused||!on().__hfDebug||console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",t.currentSrc||t.getAttribute("src")||"")}function Yc(t,e){let{elapsed:n,mediaStart:i,scheduledAt:r,safeRate:o,clipDuration:s}=e,l=Number.isFinite(s)&&s>0,a=s*o;if(n>=0){let u=a-n;return l&&u<=0?!1:(l?t.start(0,n+i,u):t.start(0,n+i),!0)}let c=-n/o;return l?t.start(r+c,i,a):t.start(r+c,i),!0}var Fn=class{constructor(){ye(this,"_ctx",null);ye(this,"_bufferCache",new Map);ye(this,"_failedSrcs",new Set);ye(this,"_activeSources",[]);ye(this,"_masterGain",null);ye(this,"_rateAnchorCtx",0);ye(this,"_rateAnchorComp",0);ye(this,"_rate",1);ye(this,"_paused",!0);ye(this,"_playGeneration",0)}async init(){try{return this._ctx=new AudioContext,this._masterGain=this._ctx.createGain(),this._masterGain.connect(this._ctx.destination),!0}catch{return!1}}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}async decodeAudioElement(e){let n=e.currentSrc||e.getAttribute("src");if(!n)return null;if(this._bufferCache.has(n))return this._bufferCache.get(n);if(this._failedSrcs.has(n)||!this._ctx)return null;let i;try{let r=await fetch(n,{cache:"no-store"});if(!r.ok)return v("webAudioTransport.fetch",new Error(`${r.status} ${n}`)),null;i=await r.arrayBuffer()}catch(r){return v("webAudioTransport.fetch",r),null}try{let r=await this._ctx.decodeAudioData(i);return this._bufferCache.set(n,r),r}catch(r){return this._failedSrcs.add(n),v("webAudioTransport.decode",r),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}async schedulePlayback(e,n,i,r,o,s,l,a=1,c=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),l!==this._playGeneration)return null;let u=Is(a),m=this._ctx.createBufferSource();m.buffer=n,m.playbackRate.value=u;let f=this._ctx.createGain();f.gain.value=s,m.connect(f),f.connect(this._masterGain);let x=o-i,A=this._ctx.currentTime;if(this._rate=u,this._rateAnchorCtx=A,this._rateAnchorComp=o,!Yc(m,{elapsed:x,mediaStart:r,scheduledAt:A,safeRate:u,clipDuration:c}))return m.disconnect(),f.disconnect(),null;let g=e.muted;e.muted=!0,Jc(e,g);let b={el:e,sourceNode:m,gainNode:f,compositionStart:i,mediaStart:r,scheduledAt:A,priorMuted:g,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(b),this._paused=!1,m.addEventListener("ended",()=>{let F=this._activeSources.indexOf(b);F!==-1&&(this._activeSources.splice(F,1),e.muted=g,this._activeSources.length===0&&(this._paused=!0))}),b}catch(u){return v("webAudioTransport.schedule",u),null}}setRate(e){let n=Is(e);if(n===this._rate)return!1;this._ctx&&!this._paused&&(this._rateAnchorComp=this.getTime(),this._rateAnchorCtx=this._ctx.currentTime),this._rate=n;for(let i of this._activeSources)try{i.sourceNode.playbackRate.value=n}catch(r){v("webAudioTransport.setRate",r)}return!0}hasBoundedActiveSources(){return this._activeSources.some(e=>e.bounded)}stopAll(){for(let e of this._activeSources){try{e.sourceNode.stop(),e.sourceNode.disconnect(),e.gainNode.disconnect()}catch{}e.el.muted=e.priorMuted}this._activeSources=[],this._paused=!0}setVolume(e){this._masterGain&&(this._masterGain.gain.value=Math.max(0,Math.min(1,e)))}setElementVolume(e,n){let i=Math.max(0,Math.min(1,n));for(let r of this._activeSources)if(r.el===e)try{r.gainNode.gain.value=i}catch(o){v("webAudioTransport.setElementVolume",o)}}setMuted(e){this._masterGain&&(this._masterGain.gain.value=e?0:1)}isActive(){return this._activeSources.length>0&&!this._paused}ownsElement(e){return!this._paused&&this._activeSources.some(n=>n.el===e)}destroy(){if(this.stopAll(),this._bufferCache.clear(),this._failedSrcs.clear(),this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null}};var Ps="data-hf-studio-manual-edit-gesture";var Oi="data-hf-authored-duration",Bi="data-hf-authored-end";function Os(){let t=Tr(),e=null,n=null,i=null,r=[],o=new Set,s=null;if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(d){v("runtime.init.site1",d)}document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden"),window.__timelines=window.__timelines||{};let l=()=>{let d=document.querySelector(\'[data-composition-id][data-root="true"]\');if(d instanceof HTMLElement)return d;let p=Array.from(document.querySelectorAll("[data-composition-id]"));return p.find(h=>!h.parentElement?.closest("[data-composition-id]"))??p[0]??null};if(Array.isArray(window.__timelines)){let d=window.__timelines,p=l()?.getAttribute("data-composition-id")??"root",h={};if(d.length===1)h[p]=d[0];else for(let S=0;S<d.length;S++)h[`tl-${S}`]=d[S];window.__timelines=h}let a=l();a&&!a.hasAttribute("data-start")&&a.setAttribute("data-start","0");let c=d=>{r.push(d)},u=(d,p,h)=>{let S=h??`${d}:${JSON.stringify(p)}`;o.has(S)||(o.add(S),Ee({source:"hf-preview",type:"diagnostic",code:d,details:p}))},m=d=>{let p={scale:1,focusX:960,focusY:540},h=[],S=[],w={time:d.getTime(),duration:d.getDuration(),isPlaying:d.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:d.play,pause:d.pause,seek:d.seek,getTime:d.getTime,getDuration:d.getDuration,isPlaying:d.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>p,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>h,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:d.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...w,time:d.getTime(),duration:d.getDuration(),isPlaying:d.isPlaying()})}},f=1/60,x=.75,A=2,g=.05,b=100,F=240,L=d=>{if(d instanceof Error)return d.message||String(d);if(typeof d=="string")return d;try{return JSON.stringify(d)}catch{return String(d??"")}},k=d=>{let p=d.toLowerCase();return p.includes("cannot read properties of null")||p.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:p.includes("failed to execute \'queryselector\'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:p.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},V=d=>{if(d==null||d.trim()==="")return null;let p=Number.parseFloat(d);return!Number.isFinite(p)||p<=0?null:`${p}px`},O=()=>l(),T=()=>{let d=O();if(!d)return;let p=V(d.getAttribute("data-width")),h=V(d.getAttribute("data-height"));p&&(d.style.width=p),h&&(d.style.height=h),p&&d.style.setProperty("--comp-width",p),h&&d.style.setProperty("--comp-height",h)},y=()=>{let d=O(),p=Array.from(document.querySelectorAll("[data-composition-id]")).filter(h=>h.hasAttribute("data-duration")||h.hasAttribute("data-end"));for(let h of p){if(d&&h===d)continue;let S=h.getAttribute("data-duration"),w=h.getAttribute("data-end");S!=null&&!h.hasAttribute(Oi)&&h.setAttribute(Oi,S),w!=null&&!h.hasAttribute(Bi)&&h.setAttribute(Bi,w),h.removeAttribute("data-duration"),h.removeAttribute("data-end")}},E=()=>{let d=O();if(!d)return;d.style.position||(d.style.position="relative"),d.style.overflow="hidden";let p=V(d.getAttribute("data-width")),h=V(d.getAttribute("data-height"));p&&(d.style.width=p),h&&(d.style.height=h);let S=Array.from(d.children);for(let w of S){let N=w.tagName.toLowerCase();if(N==="script"||N==="style"||N==="link"||N==="meta"||!w.hasAttribute("data-start")||w.hasAttribute("data-hf-autostamped"))continue;let P=(w.style.top==="0px"||w.style.top==="0")&&(w.style.left==="0px"||w.style.left==="0")&&w.style.width==="100%"&&w.style.height==="100%",$=/translate\\(\\s*-50%\\s*,\\s*-50%\\s*\\)/.test(w.style.transform);if(P&&$&&!w.hasAttribute("data-width")&&!w.hasAttribute("data-height")){let Ve=w.style.top,be=w.style.left,St=w.style.width,ue=w.style.height;w.style.top="",w.style.left="",w.style.width="",w.style.height="";let Z=window.getComputedStyle(w);Z.top!=="auto"||Z.bottom!=="auto"||Z.left!=="auto"||Z.right!=="auto"||Z.width!=="0px"||Z.height!=="0px"||(w.style.top=Ve,w.style.left=be,w.style.width=St,w.style.height=ue)}let Q=window.getComputedStyle(w),he=Q.position;if(he!=="absolute"&&he!=="fixed"&&(w.style.position="absolute"),!!w.style.top||!!w.style.bottom||Q.top!=="auto"||Q.bottom!=="auto"||(w.style.top="0"),!!w.style.left||!!w.style.right||Q.left!=="auto"||Q.right!=="auto"||(w.style.left="0"),N!=="audio"){let Ve=V(w.getAttribute("data-width")),be=V(w.getAttribute("data-height")),St=Q.width!=="0px"&&Q.width!=="auto",ue=Q.height!=="0px"&&Q.height!=="auto";Ve?!w.style.width&&!St&&(w.style.width=Ve):!w.style.width&&Q.width==="0px"&&(w.style.width="100%"),be?!w.style.height&&!ue&&(w.style.height=be):!w.style.height&&Q.height==="0px"&&(w.style.height="100%")}}},C=(d,p=0,h)=>ze({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:h?.includeAuthoredTimingAttrs??!0}).resolveStartForElement(d,p),M=(d,p)=>ze({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:p?.includeAuthoredTimingAttrs??!0}).resolveDurationForElement(d),_=(d,p=0)=>!d.hasAttribute("data-hf-auto-start")&&d.hasAttribute("data-start")?Math.max(0,Number(d.getAttribute("data-start")??0)||0):C(d,p),W=(d,p)=>{let h=d.tagName.toLowerCase();if(h==="script"||h==="style"||h==="link"||h==="meta")return!1;let S=h==="video"||h==="audio"?_(d,0):C(d,0),w=M(d),N=d.getAttribute("data-composition-id");if(N){let $=(window.__timelines??{})[N],Q=null;if($&&typeof $.duration=="function"){let xe=Number($.duration());Number.isFinite(xe)&&xe>0&&(Q=xe)}!(d.hasAttribute("data-duration")||d.hasAttribute("data-end")||d.hasAttribute(Oi)||d.hasAttribute(Bi))&&(w==null||w<=0)&&Q!=null&&(w=Q)}let P=w!=null&&w>0?S+w:Number.POSITIVE_INFINITY;return p>=S&&(Number.isFinite(P)?p<=P:!0)},z=!!document.querySelector("[data-composition-src]"),re=!1;{let d=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let p of d){let h=p.getAttribute("data-composition-id");if(h&&p.children.length===0&&document.querySelector(`template#${CSS.escape(h)}-template`)){re=!0;break}}}let D=!z&&!re,Y=d=>{if(!d||typeof d.duration!="function")return null;try{let p=Number(d.duration());return Number.isFinite(p)?Math.max(0,p):null}catch{return null}},se=d=>typeof d=="number"&&Number.isFinite(d)&&d>f,U=d=>{let p=Number(d.getAttribute("data-duration"));if(Number.isFinite(p)&&p>0)return p;let h=Number(d.getAttribute("data-playback-start")??d.getAttribute("data-media-start")??"0"),S=Number.isFinite(h)?Math.max(0,h):0;return Number.isFinite(d.duration)&&d.duration>S?Math.max(0,d.duration-S):null},te=()=>{let d=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(d.length===0)return null;let p=0;for(let h of d){let S=_(h,0);if(!Number.isFinite(S))continue;let w=U(h);w==null||w<=f||(p=Math.max(p,Math.max(0,S)+w))}return p>f?p:null},G=()=>{let d=O();if(!d)return null;let p=window.__timelines??{},h=ze({timelineRegistry:p,includeAuthoredTimingAttrs:!0}),S=0,w=Number.parseFloat(d.getAttribute("data-duration")??"");Number.isFinite(w)&&w>0&&(S=w);let N=Array.from(d.querySelectorAll("[data-composition-id][data-start]"));for(let P of N){if(!(P instanceof Element)||P.parentElement?.closest("[data-composition-id]")!==d)continue;let Q=h.resolveStartForElement(P,0),he=h.resolveDurationForElement(P);!Number.isFinite(Q)||he==null||he<=0||(S=Math.max(S,Math.max(0,Q)+he))}return S>f?S:null},ne=()=>{let d=te();return typeof d!="number"||!Number.isFinite(d)||d<=f?null:d},Me=d=>se(d)?Math.max(f,d*x):f,R=(d,p=0)=>{let h=Y(d),S=ne(),w=G(),N=Math.max(S??0,w??0),P=Number.isFinite(p)&&p>f?p:0,$=0;return se(h)?$=Math.max(h,N,P):se(N)?$=Math.max(N,P):$=P,$>0?Math.max(0,$):0},I=()=>{let d=window.__timelines??{},p=ze({timelineRegistry:d,includeAuthoredTimingAttrs:!0}),h=ne(),S=G(),w=Math.max(h??0,S??0)||null,N=Me(w),P=ue=>{let Z=document.querySelector(`[data-composition-id="${CSS.escape(ue)}"]`);return Z?p.resolveStartForElement(Z,0):0},$=ue=>{let Z=window.gsap;if(!Z||typeof Z.timeline!="function")return null;let me=Z.timeline({paused:!0});for(let Se of ue)me.add(Se.timeline,P(Se.compositionId));return me},Q=(ue,Z)=>{if(!se(ue))return null;let me=window.gsap;if(!me||typeof me.timeline!="function")return null;let Se=me.timeline({paused:!0});if(Z)try{Se.add(Z,0)}catch(ce){v("runtime.init.site2",ce)}let Ae=Se;if(typeof Ae.to=="function")try{Ae.to({},{duration:ue})}catch(ce){v("runtime.init.site3",ce)}return Se},he=(ue,Z)=>{let me=ue;if(typeof me.getChildren!="function")return[];try{let Se=me.getChildren(!0,!0,!0)??[];if(!Array.isArray(Se))return[];let Ae=[];for(let ce of Z)if(!Se.some(ve=>ve===ce.timeline))try{let ve=P(ce.compositionId);ue.add(ce.timeline,ve),Ae.push(ce.compositionId)}catch(ve){v("runtime.init.site4",ve)}return Ae}catch{return[]}},xe=O(),K=xe?.getAttribute("data-composition-id")??null;if(!K)return{timeline:null};let oe=d[K]??null,be=(()=>{if(!xe)return[];let ue=new Set,Z=Array.from(xe.querySelectorAll("[data-composition-id]")),me=[];for(let Se of Z){let Ae=Se.getAttribute("data-composition-id");if(!Ae||Ae===K||ue.has(Ae))continue;ue.add(Ae);let ce=d[Ae]??null;if(!ce||typeof ce.play!="function"||typeof ce.pause!="function")continue;let Fe=Y(ce);me.push({compositionId:Ae,timeline:ce,durationSeconds:Fe??0})}return me})(),St=ue=>{for(let Z of ue){let me=Z.timeline;if(typeof me.paused=="function")try{me.paused(!1)}catch(Se){v("runtime.init.site5",Se)}}};if(be.length>0&&St(be),oe){let ue=be.length>0?he(oe,be):[];if((be.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id=\'"+K+"\'])"))&&(H=!0),ue.length>0)try{let ce=oe.time();oe.seek(ce,!1)}catch{}let Z=Y(oe);if(!se(Z)&&be.length>0){let ce=be.map(Aa=>Aa.compositionId),Fe=$(be),ve=Y(Fe);if(Fe&&se(ve))return{timeline:Fe,selectedTimelineIds:ce,selectedDurationSeconds:ve,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:N,selectedDurationSeconds:ve,mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedTimelineIds:ce,autoNestedChildren:ue}}};let Hn=Q(w??0,oe),Wn=Y(Hn);if(Hn&&se(Wn))return{timeline:Hn,selectedTimelineIds:[K],selectedDurationSeconds:Wn,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedDurationSeconds:Wn,selectedTimelineIds:[K],autoNestedChildren:ue}}}}if(!se(Z)&&be.length===0){let ce=Q(w??0,oe),Fe=Y(ce);if(ce&&se(Fe))return{timeline:ce,selectedTimelineIds:[K],selectedDurationSeconds:Fe,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:K,rootDurationSeconds:Z,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:h,authoredCompositionDurationFloorSeconds:S,selectedDurationSeconds:Fe,selectedTimelineIds:[K]}}}}let me=xe?.getAttribute("data-duration"),Se=me?parseFloat(me):null,Ae=Math.max(se(Se)?Se:0,S??0);if(Ae>0&&se(Ae)&&se(Z)&&Ae>=Z+.5){let ce=oe;if(typeof ce.to=="function")try{ce.to({},{duration:0},Ae)}catch(ve){v("runtime.init.site6",ve)}let Fe=Y(oe);if(se(Fe))return{timeline:oe,selectedTimelineIds:[K],selectedDurationSeconds:Fe,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:K,rootDurationSeconds:Z,rootDeclaredDur:Se,authoredCompositionDurationFloorSeconds:S,newDur:Fe}}}}return{timeline:oe,selectedTimelineIds:[K],selectedDurationSeconds:Z,mediaDurationFloorSeconds:h,diagnostics:ue.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:K,selectedDurationSeconds:Z,autoNestedChildren:ue}}:void 0}}if(be.length>0){let ue=be.map(Se=>Se.compositionId),Z=$(be),me=Y(Z);if(Z)return{timeline:Z,selectedTimelineIds:ue,selectedDurationSeconds:me,mediaDurationFloorSeconds:h,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:K,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:N,selectedDurationSeconds:me,mediaDurationFloorSeconds:h,selectedTimelineIds:ue}}}}return{timeline:null}},H=!1,ie=()=>{if(!D)return!1;let d=t.capturedTimeline,p=Y(d),h=se(p);if(d&&h&&H)return!1;let S=I();if(!S.timeline)return!1;if(d&&d===S.timeline)return typeof d.timeScale=="function"&&d.timeScale(t.playbackRate),!1;t.capturedTimeline=S.timeline,typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);let w=R(t.capturedTimeline,0);if(w<=0&&typeof t.capturedTimeline.progress=="function"&&(t.capturedTimeline.progress(1,!0),t.capturedTimeline.progress(0,!1),t.capturedTimeline.pause()),w>0){try{B.setDuration(w)}catch{}if(typeof t.capturedTimeline.totalTime=="function"){typeof t.capturedTimeline.progress=="function"&&t.capturedTimeline.progress(1e-4,!0);let P=Math.max(0,t.currentTime||0);t.capturedTimeline.totalTime(P,!1),t.capturedTimeline.pause()}let N=window.__hfStudioManualEditsApply;typeof N=="function"&&N()}if(S.diagnostics&&Ee({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),Ee({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),window.parent!==window){let N=O(),P=w>0?w:0,$=String(P>0?P:1),Q=new Set,he=new Set(document.querySelectorAll("[data-start]")),xe=K=>{let oe=K.parentElement;for(;oe&&oe!==N;){if(he.has(oe))return!0;oe=oe.parentElement}return!1};if(t.capturedTimeline.getChildren)try{for(let K of t.capturedTimeline.getChildren(!0))if(typeof K.targets=="function")for(let oe of K.targets())oe instanceof HTMLElement&&oe!==N&&(oe.hasAttribute("data-start")||xe(oe)||Q.has(oe)||(Q.add(oe),oe.setAttribute("data-start","0"),oe.setAttribute("data-duration",$),oe.setAttribute("data-hf-autostamped","1")))}catch{}if(N instanceof HTMLElement)for(let K of N.querySelectorAll("[id]"))K instanceof HTMLElement&&K!==N&&(K.hasAttribute("data-start")||xe(K)||Q.has(K)||K.tagName==="SCRIPT"||K.tagName==="STYLE"||K.tagName==="LINK"||(Q.add(K),K.setAttribute("data-start","0"),K.setAttribute("data-duration",$),K.setAttribute("data-hf-autostamped","1")))}for(let N of Ne)en.delete(N),$i(N);return!0};window.__hfForceTimelineRebind=()=>{H=!1,ie()};let ae=()=>{let d=O();if(!(d instanceof HTMLElement))return;let p=d.getBoundingClientRect(),h=Number(d.getAttribute("data-width")),S=Number(d.getAttribute("data-height")),w=window.getComputedStyle(d),N=Number.isFinite(h)&&h>0&&Number.isFinite(S)&&S>0,P=p.width<=0||p.height<=0||d.clientWidth<=0||d.clientHeight<=0;!N||!P||u("root_stage_layout_zero",{compositionId:d.getAttribute("data-composition-id")??null,declaredWidth:h,declaredHeight:S,rectWidth:Math.round(p.width),rectHeight:Math.round(p.height),clientWidth:d.clientWidth,clientHeight:d.clientHeight,display:w.display,visibility:w.visibility,overflow:w.overflow},`root-stage-layout-zero:${d.getAttribute("data-composition-id")??"unknown"}`)},q=()=>{t.tornDown||(s!=null&&window.cancelAnimationFrame(s),s=window.requestAnimationFrame(()=>{s=null,ae()}))},j=()=>{n=d=>{let p=L(d.error??d.message).slice(0,F);if(!p)return;let h=k(p);Ee({source:"hf-preview",type:"diagnostic",code:h.code,details:{category:h.category,message:p,filename:d.filename||null,line:Number.isFinite(d.lineno)?d.lineno:null,column:Number.isFinite(d.colno)?d.colno:null}})},i=d=>{let p=L(d.reason).slice(0,F);if(!p)return;let h=k(p);Ee({source:"hf-preview",type:"diagnostic",code:`${h.code}_unhandled_rejection`,details:{category:`${h.category}-unhandled-rejection`,message:p}})},window.addEventListener("error",n),window.addEventListener("unhandledrejection",i)},X=()=>{let d=Array.from(document.querySelectorAll("img, video, audio, source, link[rel=\'stylesheet\']"));for(let h of d){let S=()=>{if(!(h instanceof Element))return;let w=h.tagName.toLowerCase(),N=h.getAttribute("src")??h.getAttribute("href")??h.getAttribute("poster")??null,P=w==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";u(P,{tagName:w,assetUrl:N,currentSrc:(h instanceof HTMLImageElement||h instanceof HTMLMediaElement)&&h.currentSrc||null,readyState:h instanceof HTMLMediaElement?h.readyState:null,networkState:h instanceof HTMLMediaElement?h.networkState:null},`${P}:${w}:${N??"unknown"}`)};h.addEventListener("error",S),c(()=>{h.removeEventListener("error",S)})}let p=document.fonts;p&&p.ready.then(()=>{if(t.tornDown)return;let h=Array.from(p).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);h.length!==0&&u("runtime_font_load_issue",{failedFamilies:h,totalFaces:Array.from(p).length},`runtime-font-load-issue:${h.join("|")}`)}).catch(()=>{})},Ie=(d,p)=>{if(!d.timeline)return!1;let h=t.capturedTimeline;if(h&&h===d.timeline)return!1;let S=Math.max(0,t.currentTime||0),w=t.isPlaying;t.capturedTimeline=d.timeline,typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);try{t.capturedTimeline.pause(),t.capturedTimeline.seek(S,!1),w&&t.capturedTimeline.play()}catch(N){v("runtime.init.site7",N)}return Ee({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:p,previousTime:S,selectedTimelineIds:d.selectedTimelineIds??[],selectedDurationSeconds:d.selectedDurationSeconds??null,mediaDurationFloorSeconds:d.mediaDurationFloorSeconds??null}}),!0},ge=null,ot=!1,Ne=new Set,en=new WeakMap,tn=()=>{t.tornDown||(ge!=null&&window.clearTimeout(ge),ge=window.setTimeout(()=>{if(t.tornDown)return;ge=null;let d=I();if(!d.timeline||!se(d.mediaDurationFloorSeconds??null))return;if(!t.capturedTimeline){ie()&&(st(),Te(!0));return}if(ot)return;let h=Y(t.capturedTimeline),S=d.selectedDurationSeconds??Y(d.timeline);se(S)&&(!se(h)||S>=h+g)&&Ie(d,"manual")&&(ot=!0,Ee({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:h??null,selectedDurationSeconds:S??null,selectedTimelineIds:d.selectedTimelineIds??[],mediaDurationFloorSeconds:d.mediaDurationFloorSeconds??null}}),st(),Te(!0))},b))},ca=()=>{for(let d of Ne)d.removeEventListener("loadedmetadata",tn),d.removeEventListener("durationchange",tn);Ne.clear()},vn=()=>{if(t.tornDown)return;let d=Array.from(document.querySelectorAll("video, audio"));for(let p of d){if(Ne.has(p))continue;Ne.add(p);let h=Number.parseFloat(p.dataset.volume??"");Number.isFinite(h)&&(p.volume=Math.max(0,Math.min(1,h))),p.addEventListener("loadedmetadata",tn),p.addEventListener("durationchange",tn),p.preload!=="auto"&&(p.preload="auto"),p.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&p.load(),$i(p)}},$i=d=>{en.has(d)||Ar(d,t.capturedTimeline,R(t.capturedTimeline,0),en)},kn=new WeakMap,Ki=d=>{let p=kn.get(d);if(p!==void 0)return p;let h=window.getComputedStyle(d).position,S=h==="static"||h==="relative"||h==="sticky";return kn.set(d,S),S},Rn=new WeakMap,da=d=>{let p=Rn.get(d);if(p!==void 0)return p;let h=d.querySelector("[data-start]")===null;return Rn.set(d,h),h},fa=()=>{kn=new WeakMap,Rn=new WeakMap},Le=()=>{let d=N=>{let P=N.closest("[data-composition-id]"),$=P?C(P,0):null,Q=P?M(P,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:P,inheritedStart:$,inheritedDuration:Q}},p=Er({shouldIncludeElement:N=>N.hasAttribute("data-start")||!!d(N).compositionRoot,resolveStartSeconds:N=>{let P=d(N);return _(N,P.inheritedStart??0)},resolveDurationSeconds:N=>{let P=d(N),$=_(N,P.inheritedStart??0),Q=Number.parseFloat(N.dataset.playbackStart??N.dataset.mediaStart??"0")||0,he=P.inheritedStart!=null&&P.inheritedDuration!=null&&P.inheritedDuration>0?Math.max(0,P.inheritedStart+P.inheritedDuration-$):null,xe=Number.isFinite(N.duration)&&N.duration>Q?Math.max(0,N.duration-Q):null,K=Number.parseFloat(N.dataset.duration??""),oe=Number.isFinite(K)&&K>0?K:null,Ve=[xe,he,oe].filter(be=>be!=null);return Ve.length>0?Math.min(...Ve):null}});for(let N of p.mediaClips){let P=en.get(N.el);P&&(N.volumeKeyframes=P)}let h=t.mediaForceSyncNextTick;h&&(t.mediaForceSyncNextTick=!1),t.nativeMediaSyncDisabled||wr({clips:p.mediaClips,timeSeconds:t.currentTime,playing:t.isPlaying,playbackRate:t.playbackRate,outputMuted:t.mediaOutputMuted||!t.webAudioMediaDisabled&&!t.nativeMediaSyncDisabled&&fe.isActive(),userMuted:t.bridgeMuted,userVolume:t.bridgeVolume,forceSync:h,onElementVolume:(N,P)=>fe.setElementVolume(N,P),isWebAudioOwned:N=>fe.ownsElement(N),onAutoplayBlocked:()=>{t.mediaAutoplayBlockedPosted||(t.mediaAutoplayBlockedPosted=!0,Ee({source:"hf-preview",type:"media-autoplay-blocked"}))}});let S=Array.from(document.querySelectorAll("[data-start]")),w=O();for(let N of S){if(!(N instanceof HTMLElement))continue;let P=W(N,t.currentTime);if(P){let $=N.parentElement;for(;$&&$!==w;){if($ instanceof HTMLElement&&$.hasAttribute("data-start")&&!W($,t.currentTime)){P=!1;break}$=$.parentElement}}N.style.visibility=P?"visible":"hidden",(N instanceof HTMLVideoElement||N instanceof HTMLImageElement)&&e?.setSourceVisibility(N,P),P?Ki(N)&&N.style.removeProperty("display"):Ki(N)&&da(N)&&(N.style.display="none")}},Te=d=>{let p=Math.max(0,Math.round((t.currentTime||0)*t.canonicalFps)),h=Date.now();(d||p!==t.bridgeLastPostedFrame||t.isPlaying!==t.bridgeLastPostedPlaying||t.bridgeMuted!==t.bridgeLastPostedMuted||h-t.bridgeLastPostedAt>=t.bridgeMaxPostIntervalMs)&&(t.bridgeLastPostedFrame=p,t.bridgeLastPostedPlaying=t.isPlaying,t.bridgeLastPostedMuted=t.bridgeMuted,t.bridgeLastPostedAt=h,Ee({source:"hf-preview",type:"state",frame:p,isPlaying:t.isPlaying,muted:t.bridgeMuted,playbackRate:t.playbackRate}))},Dn="",ma=()=>{let d="";for(let p of document.querySelectorAll("[data-start]"))d+=`${p.id}:${p.tagName}|`;return d},st=()=>{y(),T(),E();let d=O();if(d){let S=V(d.getAttribute("data-width")),w=V(d.getAttribute("data-height")),N=S?parseInt(S,10):0,P=w?parseInt(w,10):0;N>0&&P>0&&Ee({source:"hf-preview",type:"stage-size",width:N,height:P})}ie();let p=Dr({canonicalFps:t.canonicalFps});window.__clipManifest=p;let h=ma();if(Dn!==h&&fa(),!window.__clipTree||Dn!==h){let S=window;window.__clipTree=_r({startResolver:ze({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:p.durationInFrames/t.canonicalFps}),Dn=h}Ee(p),q()},Pe=(d,p=0)=>{for(let h of t.deterministicAdapters){try{d==="discover"&&h.discover(),d==="pause"&&h.pause(),d==="play"&&h.play&&h.play()}catch(S){v("runtime.init.site8",S)}if(d==="discover")try{h.seek({time:p})}catch(S){v("runtime.init.site9",S)}}},Ze=()=>{window.__renderReady=!1},yt=null,bt=!0,pa=()=>{let d=[];for(let p of t.deterministicAdapters){let h=p.getReadyPromise;if(typeof h=="function")try{let S=h();S&&d.push(S)}catch(S){v("runtime.init.adapterReady",S)}}return d},ha=()=>{let d=pa();if(d.length===0)return yt=null,bt=!0,!0;let p=d.length===1?d[0]:Promise.all(d);return p!==yt&&(yt=p,bt=!1,Promise.resolve(p).then(()=>{yt===p&&(bt=!0,Ze())},h=>{yt===p&&(bt=!0,v("runtime.init.adapterReady",h),Ze())})),bt};if(D)Li();else{let d={injectedStyles:t.injectedCompStyles,injectedScripts:t.injectedCompScripts,parseDimensionPx:V,onDiagnostic:({code:p,details:h})=>{Ee({source:"hf-preview",type:"diagnostic",code:p,details:h})}};bs(d).then(()=>ys(d)).finally(()=>{D=!0,vn(),X(),Li(),Ze()})}let nn=Cr({postMessage:d=>Ee(d)});nn.installPickerApi();let He=Ds();e=He,c(()=>{He.destroy(),e=null});let In=d=>{let p=Number(d);!Number.isFinite(p)||p<=0?t.playbackRate=1:t.playbackRate=Math.max(.1,Math.min(5,p)),t.mediaForceSyncNextTick=!0,t.capturedTimeline&&typeof t.capturedTimeline.timeScale=="function"&&t.capturedTimeline.timeScale(t.playbackRate);let h=document.querySelectorAll("video, audio");for(let S of h)if(S instanceof HTMLMediaElement)try{S.playbackRate=t.playbackRate}catch(w){v("runtime.init.site10",w)}},pe=Nr({getTimeline:()=>t.capturedTimeline,setTimeline:d=>{t.capturedTimeline=d},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>t.isPlaying,setIsPlaying:d=>{t.isPlaying!==d&&(t.mediaForceSyncNextTick=!0),t.isPlaying=d},getPlaybackRate:()=>t.playbackRate,setPlaybackRate:In,getCanonicalFps:()=>t.canonicalFps,onSyncMedia:(d,p)=>{t.currentTime=Math.max(0,Number(d)||0),t.isPlaying!==p&&(t.mediaForceSyncNextTick=!0),t.isPlaying=p,Le()},onStatePost:Te,onDeterministicSeek:d=>{for(let p of t.deterministicAdapters)try{p.seek({time:Number(d)||0})}catch(h){v("runtime.init.site11",h)}},onDeterministicPause:()=>Pe("pause"),onDeterministicPlay:()=>Pe("play"),onRenderFrameSeek:()=>{He.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>R(t.capturedTimeline,0)});window.__player=m(pe),window.__playerReady=!0,tr(Ee),At("composition_loaded",{duration:pe.getDuration(),compositionId:document.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")??null}),t.controlBridgeHandler=er({onPlay:()=>{pe.play(),At("composition_played",{time:pe.getTime()})},onPause:()=>{pe.pause(),At("composition_paused",{time:pe.getTime()})},onStopMedia:()=>{fe.stopAll();let d=document.querySelectorAll("video, audio");for(let p of d)p instanceof HTMLMediaElement&&!p.paused&&p.pause()},onSeek:(d,p)=>{let h=Math.max(0,d)/t.canonicalFps;pe.seek(h),At("composition_seeked",{time:h})},onSetMuted:d=>{t.bridgeMuted=d;let p=d||t.mediaOutputMuted;fe.setMuted(p);let h=document.querySelectorAll("video, audio");for(let S of h)S instanceof HTMLMediaElement&&(S.muted=p||S.defaultMuted)},onSetVolume:d=>{t.bridgeVolume=d,fe.setVolume(d);let p=document.querySelectorAll("video, audio");for(let h of p){if(!(h instanceof HTMLMediaElement))continue;let S=parseFloat(h.dataset.volume??""),w=Number.isFinite(S)?S:1;h.volume=w*d}},onSetMediaOutputMuted:d=>{t.mediaOutputMuted=d;let p=d||t.bridgeMuted;fe.setMuted(p);let h=document.querySelectorAll("video, audio");for(let S of h)S instanceof HTMLMediaElement&&(S.muted=p||S.defaultMuted)},onSetNativeMediaSyncDisabled:d=>{t.nativeMediaSyncDisabled!==d&&(t.nativeMediaSyncDisabled=d,t.mediaForceSyncNextTick=!0,d?(fe.stopAll(),B.detachAudioSource()):Le())},onSetWebAudioMediaDisabled:d=>{t.webAudioMediaDisabled!==d&&(t.webAudioMediaDisabled=d,t.mediaForceSyncNextTick=!0,d&&(fe.stopAll(),B.detachAudioSource()),Le())},onSetPlaybackRate:d=>{In(d),t.transportClock&&t.transportClock.setRate(t.playbackRate),Qi()},onSetColorGrading:(d,p)=>{He.setGrading(d,p)},onSetColorGradingCompare:(d,p)=>{He.setCompare(d,p)},onTick:()=>{if(t.tornDown||!B.isPlaying())return;let d=B.now();if(t.currentTime=d,et(d),B.reachedEnd()){fe.stopAll(),B.detachAudioSource(),B.pause(),t.isPlaying=!1;let p=B.getDuration();Number.isFinite(p)&&(B.seek(p),t.currentTime=p,et(p)),Pe("pause"),Le(),Te(!0)}},onEnablePickMode:()=>nn.enablePickMode(),onDisablePickMode:()=>nn.disablePickMode()}),t.deterministicAdapters=[br(),nr({resolveStartSeconds:d=>C(d,0)}),rr(),ar(),ur(),cr(),dr(),fr(),mr(),pr(),hr(),ir({getTimeline:()=>t.capturedTimeline})],gr(),yr(),window.__hfReseekGpu=d=>{let p=Math.max(0,Number(d)||0);window.__hfThreeTime=p,window.__hfTypegpuTime=p,lr(p)},j(),vn(),Pe("discover");let B=new Cn;t.transportClock=B;let fe=new Fn,Pn=!1;fe.init().then(d=>{Pn=d});let xa=()=>{let d=t.capturedTimeline,p=ie();t.capturedTimeline&&(p||t.capturedTimeline!==d||!pe._timeline)&&(pe._timeline=t.capturedTimeline);let h=R(t.capturedTimeline,0);h>0&&B.setDuration(h),Pe("discover",t.currentTime),window.__renderReady=!0,st(),Te(!0)};if(Ze=()=>{if(!D||window.__hfTimelinesBuilding){window.__renderReady=!1;return}if(Pe("discover",t.currentTime),!ha()){window.__renderReady=!1;return}xa()},window.__hfTimelinesBuilding){window.__renderReady=!1;let d=()=>{window.removeEventListener("hf-timelines-built",d),Ze()};window.addEventListener("hf-timelines-built",d)}Ze(),D&&setTimeout(()=>{Ze()},0);let rn=0,On=!1,ga=(d,p,h)=>{try{d.pause(),typeof d.totalTime=="function"?d.totalTime(p,!1):d.seek(p,!1)}catch(S){v(h,S)}},ya=d=>{let p=window.__timelines??{},h=O()?.getAttribute("data-composition-id")??null;for(let[S,w]of Object.entries(p)){if(!w||S===h)continue;let N=document.querySelector(`[data-composition-id="${CSS.escape(S)}"]`);if(!N)continue;let P=C(N,0);if(!Number.isFinite(P))continue;let $=M(N,{includeAuthoredTimingAttrs:!0}),Q=Y(w),he=$!=null&&$>0?$:Q,xe=Math.max(0,he!=null&&he>0?Math.min(he,d-P):d-P);ga(w,xe,"runtime.init.transport.childTimeline")}},ba=d=>{let p=window.__timelines??{};for(let h of Object.values(p))if(!(!h||h===d))try{h.play()}catch(S){v("runtime.init.activateSiblings",S)}},et=(d,p)=>{let h=t.capturedTimeline;if(h){p?.activateChildren&&ba(h);try{typeof h.totalTime=="function"?h.totalTime(d,!1):h.seek(d,!1)}catch(S){v("runtime.init.transport.seek",S)}}else ya(d);for(let S of t.deterministicAdapters)try{S.seek({time:d})}catch(w){v("runtime.init.transport.adapter",w)}},Sa=()=>{try{return document.querySelector(`[${Ps}]`)!=null}catch{return!1}},Ji=()=>{if(!(t.tornDown||On)){On=!0;try{if(t.transportRafId=window.requestAnimationFrame(Ji),rn+=1,rn%60===0&&!(B.isPlaying()&&t.capturedTimeline!=null&&B.now()<A)){let h=t.capturedTimeline;if(ie()){t.capturedTimeline&&!pe._timeline&&(pe._timeline=t.capturedTimeline),t.capturedTimeline&&t.capturedTimeline!==h&&t.capturedTimeline.pause();let S=R(t.capturedTimeline,0);S>0&&B.setDuration(S),st()}}if(rn%20===0&&st(),rn%30===0&&vn(),t.capturedTimeline){let p=R(t.capturedTimeline,0);p>0&&(!B.isPlaying()||p>=B.getDuration())&&B.setDuration(p)}if(B.isPlaying()&&!t.mediaOutputMuted)if(!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&fe.isActive()&&fe.context){let p=fe.getTime();p>=0&&B.attachAudioSource({currentTimeSeconds:p})}else{let p=document.querySelectorAll("audio[data-start]"),h=!1;for(let S of p){if(!(S instanceof HTMLMediaElement)||!S.isConnected)continue;let w=Number.parseFloat(S.dataset.start??""),N=Number.parseFloat(S.dataset.duration??""),P=Number.isFinite(N)&&N>0?w+N:1/0,$=Number.parseFloat(S.dataset.playbackStart??S.dataset.mediaStart??"0")||0;if(Number.isFinite(w)&&t.currentTime>=w&&t.currentTime<=P){S.paused?!S.error&&S.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&(B.attachAudioSource({currentTimeSeconds:t.currentTime}),h=!0):(B.attachAudioSource({el:S,compositionStart:w,mediaStart:$}),h=!0);break}}!h&&B.hasAudioSource()&&B.detachAudioSource()}else B.hasAudioSource()&&B.detachAudioSource();let d=B.now();if(t.currentTime=d,(B.isPlaying()||!Sa())&&et(d),B.isPlaying()&&B.reachedEnd()){fe.stopAll(),B.detachAudioSource(),B.pause(),t.isPlaying=!1;let p=B.getDuration();Number.isFinite(p)&&(B.seek(p),t.currentTime=p,et(p)),Pe("pause"),Le(),Te(!0);return}B.isPlaying()&&Le(),Te(!1)}finally{On=!1}}},Yi=d=>{let p=document.querySelectorAll("video, audio");for(let h of p){if(!(h instanceof HTMLMediaElement)||!h.isConnected)continue;let S=Number.parseFloat(h.dataset.start??"");if(!Number.isFinite(S))continue;let w=Number.parseFloat(h.dataset.duration??""),N=Number.isFinite(w)&&w>0?S+w:1/0;if(d<S||d>=N)continue;let P=Number.parseFloat(h.dataset.playbackStart??h.dataset.mediaStart??"0")||0,$=d-S+P;if($>=0)try{h.currentTime=$}catch{}}},Xi=()=>{if(t.nativeMediaSyncDisabled||t.webAudioMediaDisabled)return;let d=fe.startGeneration(),p=document.querySelectorAll("audio[data-start]");for(let h of p){if(!(h instanceof HTMLMediaElement)||!h.isConnected)continue;let S=Number.parseFloat(h.dataset.start??"");if(!Number.isFinite(S))continue;let w=Number.parseFloat(h.dataset.playbackStart??h.dataset.mediaStart??"0")||0,N=Number.parseFloat(h.dataset.volume??""),P=Number.isFinite(N)?N:1,$=Number.parseFloat(h.dataset.duration??""),Q=Number.isFinite($)&&$>0?$:Number.POSITIVE_INFINITY,he=h.closest("[data-composition-id]");if(he){let xe=C(he,0),K=M(he,{includeAuthoredTimingAttrs:!0});K!=null&&K>0&&(Q=Math.min(Q,Math.max(0,xe+K-S)))}fe.decodeAudioElement(h).then(xe=>{!xe||!B.isPlaying()||fe.schedulePlayback(h,xe,S,w,B.now(),P*t.bridgeVolume,d,t.playbackRate,Q)})}},Qi=()=>{fe.setRate(t.playbackRate)&&!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&Pn&&B.isPlaying()&&fe.hasBoundedActiveSources()&&(fe.stopAll(),Xi())};if(pe.play=()=>{let d=t.capturedTimeline;if(B.isPlaying())return;let p=R(d,0);if(p>0)B.setDuration(p),B.reachedEnd()&&(B.seek(0),t.currentTime=0,et(0));else{let h=O(),S=Number(h?.getAttribute("data-duration")??0);S>0&&B.setDuration(S)}d&&d.pause(),B.play()&&(t.isPlaying=!0,t.mediaForceSyncNextTick=!0,Yi(B.now()),Pn&&!t.nativeMediaSyncDisabled&&!t.webAudioMediaDisabled&&Xi(),Pe("play"),Le(),He.redraw(),Te(!0))},pe.pause=()=>{if(!B.isPlaying())return;fe.stopAll(),B.detachAudioSource(),B.pause(),t.isPlaying=!1,t.currentTime=B.now(),t.mediaForceSyncNextTick=!0,Yi(t.currentTime);let d=t.capturedTimeline;d&&d.pause(),Pe("pause"),Le(),He.redraw(),Te(!0)},pe.seek=d=>{let p=lt(Math.max(0,Number(d)||0),t.canonicalFps);fe.stopAll(),B.detachAudioSource(),B.isPlaying()&&B.pause(),B.seek(p),t.currentTime=B.now(),t.isPlaying=!1,t.mediaForceSyncNextTick=!0;let S=t.capturedTimeline;S&&S.pause(),et(t.currentTime),Pe("pause"),Le(),He.redraw(),Te(!0)},pe.renderSeek=d=>{let p=lt(Math.max(0,Number(d)||0),t.canonicalFps);B.isPlaying()&&B.pause(),B.seek(p),t.currentTime=B.now(),t.isPlaying=!1,t.mediaForceSyncNextTick=!0,et(t.currentTime,{activateChildren:!0}),Le(),He.redraw(),Te(!0)},pe.getTime=()=>B.now(),pe.getDuration=()=>{let d=B.getDuration();return Number.isFinite(d)?d:0},pe.isPlaying=()=>B.isPlaying(),pe.setPlaybackRate=d=>{In(d),B.setRate(t.playbackRate),Qi()},t.capturedTimeline){let d=R(t.capturedTimeline,0);d>0&&B.setDuration(d),t.capturedTimeline.pause()}let Zi=window.__player;if(Zi){let d=["play","pause","seek","renderSeek","getTime","getDuration","isPlaying"];for(let p of d)Object.defineProperty(Zi,p,{get:()=>pe[p],set:h=>{pe[p]=h},configurable:!0})}t.transportRafId=window.requestAnimationFrame(Ji),st(),Te(!0);let Bn=()=>{if(!t.tornDown){t.tornDown=!0,t.transportRafId!=null&&(window.cancelAnimationFrame(t.transportRafId),t.transportRafId=null),t.transportClock=null,fe.destroy(),ge!=null&&(window.clearTimeout(ge),ge=null),s!=null&&(window.cancelAnimationFrame(s),s=null),ca(),t.controlBridgeHandler&&(window.removeEventListener("message",t.controlBridgeHandler),t.controlBridgeHandler=null),n&&(window.removeEventListener("error",n),n=null),i&&(window.removeEventListener("unhandledrejection",i),i=null),t.beforeUnloadHandler&&(window.removeEventListener("beforeunload",t.beforeUnloadHandler),t.beforeUnloadHandler=null),nn.disablePickMode();for(let d of t.deterministicAdapters)if(!(!d||typeof d.revert!="function"))try{d.revert()}catch(p){v("runtime.init.site12",p)}t.deterministicAdapters=[];for(let d of r.splice(0))try{d()}catch(p){v("runtime.init.site13",p)}for(let d of t.injectedCompStyles)try{d.remove()}catch(p){v("runtime.init.site14",p)}t.injectedCompStyles=[];for(let d of t.injectedCompScripts)try{d.remove()}catch(p){v("runtime.init.site15",p)}t.injectedCompScripts=[],t.capturedTimeline=null,window.__hfRuntimeTeardown===Bn&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=Bn,t.beforeUnloadHandler=Bn,window.addEventListener("beforeunload",t.beforeUnloadHandler)}var Bs=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],Hi=[[697,698,"ON"],[706,719,"ON"],[722,735,"ON"],[741,749,"ON"],[751,767,"ON"],[768,879,"NSM"],[884,885,"ON"],[894,894,"ON"],[900,901,"ON"],[903,903,"ON"],[1014,1014,"ON"],[1155,1161,"NSM"],[1418,1418,"ON"],[1421,1422,"ON"],[1423,1423,"ET"],[1424,1424,"R"],[1425,1469,"NSM"],[1470,1470,"R"],[1471,1471,"NSM"],[1472,1472,"R"],[1473,1474,"NSM"],[1475,1475,"R"],[1476,1477,"NSM"],[1478,1478,"R"],[1479,1479,"NSM"],[1480,1535,"R"],[1536,1541,"AN"],[1542,1543,"ON"],[1544,1544,"AL"],[1545,1546,"ET"],[1547,1547,"AL"],[1548,1548,"CS"],[1549,1549,"AL"],[1550,1551,"ON"],[1552,1562,"NSM"],[1563,1610,"AL"],[1611,1631,"NSM"],[1632,1641,"AN"],[1642,1642,"ET"],[1643,1644,"AN"],[1645,1647,"AL"],[1648,1648,"NSM"],[1649,1749,"AL"],[1750,1756,"NSM"],[1757,1757,"AN"],[1758,1758,"ON"],[1759,1764,"NSM"],[1765,1766,"AL"],[1767,1768,"NSM"],[1769,1769,"ON"],[1770,1773,"NSM"],[1774,1775,"AL"],[1776,1785,"EN"],[1786,1808,"AL"],[1809,1809,"NSM"],[1810,1839,"AL"],[1840,1866,"NSM"],[1867,1957,"AL"],[1958,1968,"NSM"],[1969,1983,"AL"],[1984,2026,"R"],[2027,2035,"NSM"],[2036,2037,"R"],[2038,2041,"ON"],[2042,2044,"R"],[2045,2045,"NSM"],[2046,2069,"R"],[2070,2073,"NSM"],[2074,2074,"R"],[2075,2083,"NSM"],[2084,2084,"R"],[2085,2087,"NSM"],[2088,2088,"R"],[2089,2093,"NSM"],[2094,2136,"R"],[2137,2139,"NSM"],[2140,2143,"R"],[2144,2191,"AL"],[2192,2193,"AN"],[2194,2198,"AL"],[2199,2207,"NSM"],[2208,2249,"AL"],[2250,2273,"NSM"],[2274,2274,"AN"],[2275,2306,"NSM"],[2362,2362,"NSM"],[2364,2364,"NSM"],[2369,2376,"NSM"],[2381,2381,"NSM"],[2385,2391,"NSM"],[2402,2403,"NSM"],[2433,2433,"NSM"],[2492,2492,"NSM"],[2497,2500,"NSM"],[2509,2509,"NSM"],[2530,2531,"NSM"],[2546,2547,"ET"],[2555,2555,"ET"],[2558,2558,"NSM"],[2561,2562,"NSM"],[2620,2620,"NSM"],[2625,2626,"NSM"],[2631,2632,"NSM"],[2635,2637,"NSM"],[2641,2641,"NSM"],[2672,2673,"NSM"],[2677,2677,"NSM"],[2689,2690,"NSM"],[2748,2748,"NSM"],[2753,2757,"NSM"],[2759,2760,"NSM"],[2765,2765,"NSM"],[2786,2787,"NSM"],[2801,2801,"ET"],[2810,2815,"NSM"],[2817,2817,"NSM"],[2876,2876,"NSM"],[2879,2879,"NSM"],[2881,2884,"NSM"],[2893,2893,"NSM"],[2901,2902,"NSM"],[2914,2915,"NSM"],[2946,2946,"NSM"],[3008,3008,"NSM"],[3021,3021,"NSM"],[3059,3064,"ON"],[3065,3065,"ET"],[3066,3066,"ON"],[3072,3072,"NSM"],[3076,3076,"NSM"],[3132,3132,"NSM"],[3134,3136,"NSM"],[3142,3144,"NSM"],[3146,3149,"NSM"],[3157,3158,"NSM"],[3170,3171,"NSM"],[3192,3198,"ON"],[3201,3201,"NSM"],[3260,3260,"NSM"],[3276,3277,"NSM"],[3298,3299,"NSM"],[3328,3329,"NSM"],[3387,3388,"NSM"],[3393,3396,"NSM"],[3405,3405,"NSM"],[3426,3427,"NSM"],[3457,3457,"NSM"],[3530,3530,"NSM"],[3538,3540,"NSM"],[3542,3542,"NSM"],[3633,3633,"NSM"],[3636,3642,"NSM"],[3647,3647,"ET"],[3655,3662,"NSM"],[3761,3761,"NSM"],[3764,3772,"NSM"],[3784,3790,"NSM"],[3864,3865,"NSM"],[3893,3893,"NSM"],[3895,3895,"NSM"],[3897,3897,"NSM"],[3898,3901,"ON"],[3953,3966,"NSM"],[3968,3972,"NSM"],[3974,3975,"NSM"],[3981,3991,"NSM"],[3993,4028,"NSM"],[4038,4038,"NSM"],[4141,4144,"NSM"],[4146,4151,"NSM"],[4153,4154,"NSM"],[4157,4158,"NSM"],[4184,4185,"NSM"],[4190,4192,"NSM"],[4209,4212,"NSM"],[4226,4226,"NSM"],[4229,4230,"NSM"],[4237,4237,"NSM"],[4253,4253,"NSM"],[4957,4959,"NSM"],[5008,5017,"ON"],[5120,5120,"ON"],[5760,5760,"WS"],[5787,5788,"ON"],[5906,5908,"NSM"],[5938,5939,"NSM"],[5970,5971,"NSM"],[6002,6003,"NSM"],[6068,6069,"NSM"],[6071,6077,"NSM"],[6086,6086,"NSM"],[6089,6099,"NSM"],[6107,6107,"ET"],[6109,6109,"NSM"],[6128,6137,"ON"],[6144,6154,"ON"],[6155,6157,"NSM"],[6158,6158,"BN"],[6159,6159,"NSM"],[6277,6278,"NSM"],[6313,6313,"NSM"],[6432,6434,"NSM"],[6439,6440,"NSM"],[6450,6450,"NSM"],[6457,6459,"NSM"],[6464,6464,"ON"],[6468,6469,"ON"],[6622,6655,"ON"],[6679,6680,"NSM"],[6683,6683,"NSM"],[6742,6742,"NSM"],[6744,6750,"NSM"],[6752,6752,"NSM"],[6754,6754,"NSM"],[6757,6764,"NSM"],[6771,6780,"NSM"],[6783,6783,"NSM"],[6832,6877,"NSM"],[6880,6891,"NSM"],[6912,6915,"NSM"],[6964,6964,"NSM"],[6966,6970,"NSM"],[6972,6972,"NSM"],[6978,6978,"NSM"],[7019,7027,"NSM"],[7040,7041,"NSM"],[7074,7077,"NSM"],[7080,7081,"NSM"],[7083,7085,"NSM"],[7142,7142,"NSM"],[7144,7145,"NSM"],[7149,7149,"NSM"],[7151,7153,"NSM"],[7212,7219,"NSM"],[7222,7223,"NSM"],[7376,7378,"NSM"],[7380,7392,"NSM"],[7394,7400,"NSM"],[7405,7405,"NSM"],[7412,7412,"NSM"],[7416,7417,"NSM"],[7616,7679,"NSM"],[8125,8125,"ON"],[8127,8129,"ON"],[8141,8143,"ON"],[8157,8159,"ON"],[8173,8175,"ON"],[8189,8190,"ON"],[8192,8202,"WS"],[8203,8205,"BN"],[8207,8207,"R"],[8208,8231,"ON"],[8232,8232,"WS"],[8233,8233,"B"],[8234,8238,"BN"],[8239,8239,"CS"],[8240,8244,"ET"],[8245,8259,"ON"],[8260,8260,"CS"],[8261,8286,"ON"],[8287,8287,"WS"],[8288,8303,"BN"],[8304,8304,"EN"],[8308,8313,"EN"],[8314,8315,"ES"],[8316,8318,"ON"],[8320,8329,"EN"],[8330,8331,"ES"],[8332,8334,"ON"],[8352,8399,"ET"],[8400,8432,"NSM"],[8448,8449,"ON"],[8451,8454,"ON"],[8456,8457,"ON"],[8468,8468,"ON"],[8470,8472,"ON"],[8478,8483,"ON"],[8485,8485,"ON"],[8487,8487,"ON"],[8489,8489,"ON"],[8494,8494,"ET"],[8506,8507,"ON"],[8512,8516,"ON"],[8522,8525,"ON"],[8528,8543,"ON"],[8585,8587,"ON"],[8592,8721,"ON"],[8722,8722,"ES"],[8723,8723,"ET"],[8724,9013,"ON"],[9083,9108,"ON"],[9110,9257,"ON"],[9280,9290,"ON"],[9312,9351,"ON"],[9352,9371,"EN"],[9450,9899,"ON"],[9901,10239,"ON"],[10496,11123,"ON"],[11126,11263,"ON"],[11493,11498,"ON"],[11503,11505,"NSM"],[11513,11519,"ON"],[11647,11647,"NSM"],[11744,11775,"NSM"],[11776,11869,"ON"],[11904,11929,"ON"],[11931,12019,"ON"],[12032,12245,"ON"],[12272,12287,"ON"],[12288,12288,"WS"],[12289,12292,"ON"],[12296,12320,"ON"],[12330,12333,"NSM"],[12336,12336,"ON"],[12342,12343,"ON"],[12349,12351,"ON"],[12441,12442,"NSM"],[12443,12444,"ON"],[12448,12448,"ON"],[12539,12539,"ON"],[12736,12773,"ON"],[12783,12783,"ON"],[12829,12830,"ON"],[12880,12895,"ON"],[12924,12926,"ON"],[12977,12991,"ON"],[13004,13007,"ON"],[13175,13178,"ON"],[13278,13279,"ON"],[13311,13311,"ON"],[19904,19967,"ON"],[42128,42182,"ON"],[42509,42511,"ON"],[42607,42610,"NSM"],[42611,42611,"ON"],[42612,42621,"NSM"],[42622,42623,"ON"],[42654,42655,"NSM"],[42736,42737,"NSM"],[42752,42785,"ON"],[42888,42888,"ON"],[43010,43010,"NSM"],[43014,43014,"NSM"],[43019,43019,"NSM"],[43045,43046,"NSM"],[43048,43051,"ON"],[43052,43052,"NSM"],[43064,43065,"ET"],[43124,43127,"ON"],[43204,43205,"NSM"],[43232,43249,"NSM"],[43263,43263,"NSM"],[43302,43309,"NSM"],[43335,43345,"NSM"],[43392,43394,"NSM"],[43443,43443,"NSM"],[43446,43449,"NSM"],[43452,43453,"NSM"],[43493,43493,"NSM"],[43561,43566,"NSM"],[43569,43570,"NSM"],[43573,43574,"NSM"],[43587,43587,"NSM"],[43596,43596,"NSM"],[43644,43644,"NSM"],[43696,43696,"NSM"],[43698,43700,"NSM"],[43703,43704,"NSM"],[43710,43711,"NSM"],[43713,43713,"NSM"],[43756,43757,"NSM"],[43766,43766,"NSM"],[43882,43883,"ON"],[44005,44005,"NSM"],[44008,44008,"NSM"],[44013,44013,"NSM"],[64285,64285,"R"],[64286,64286,"NSM"],[64287,64296,"R"],[64297,64297,"ES"],[64298,64335,"R"],[64336,64450,"AL"],[64451,64466,"ON"],[64467,64829,"AL"],[64830,64847,"ON"],[64848,64911,"AL"],[64912,64913,"ON"],[64914,64967,"AL"],[64968,64975,"ON"],[64976,65007,"BN"],[65008,65020,"AL"],[65021,65023,"ON"],[65024,65039,"NSM"],[65040,65049,"ON"],[65056,65071,"NSM"],[65072,65103,"ON"],[65104,65104,"CS"],[65105,65105,"ON"],[65106,65106,"CS"],[65108,65108,"ON"],[65109,65109,"CS"],[65110,65118,"ON"],[65119,65119,"ET"],[65120,65121,"ON"],[65122,65123,"ES"],[65124,65126,"ON"],[65128,65128,"ON"],[65129,65130,"ET"],[65131,65131,"ON"],[65136,65278,"AL"],[65279,65279,"BN"],[65281,65282,"ON"],[65283,65285,"ET"],[65286,65290,"ON"],[65291,65291,"ES"],[65292,65292,"CS"],[65293,65293,"ES"],[65294,65295,"CS"],[65296,65305,"EN"],[65306,65306,"CS"],[65307,65312,"ON"],[65339,65344,"ON"],[65371,65381,"ON"],[65504,65505,"ET"],[65506,65508,"ON"],[65509,65510,"ET"],[65512,65518,"ON"],[65520,65528,"BN"],[65529,65533,"ON"],[65534,65535,"BN"],[65793,65793,"ON"],[65856,65932,"ON"],[65936,65948,"ON"],[65952,65952,"ON"],[66045,66045,"NSM"],[66272,66272,"NSM"],[66273,66299,"EN"],[66422,66426,"NSM"],[67584,67870,"R"],[67871,67871,"ON"],[67872,68096,"R"],[68097,68099,"NSM"],[68100,68100,"R"],[68101,68102,"NSM"],[68103,68107,"R"],[68108,68111,"NSM"],[68112,68151,"R"],[68152,68154,"NSM"],[68155,68158,"R"],[68159,68159,"NSM"],[68160,68324,"R"],[68325,68326,"NSM"],[68327,68408,"R"],[68409,68415,"ON"],[68416,68863,"R"],[68864,68899,"AL"],[68900,68903,"NSM"],[68904,68911,"AL"],[68912,68921,"AN"],[68922,68927,"AL"],[68928,68937,"AN"],[68938,68968,"R"],[68969,68973,"NSM"],[68974,68974,"ON"],[68975,69215,"R"],[69216,69246,"AN"],[69247,69290,"R"],[69291,69292,"NSM"],[69293,69311,"R"],[69312,69327,"AL"],[69328,69336,"ON"],[69337,69369,"AL"],[69370,69375,"NSM"],[69376,69423,"R"],[69424,69445,"AL"],[69446,69456,"NSM"],[69457,69487,"AL"],[69488,69505,"R"],[69506,69509,"NSM"],[69510,69631,"R"],[69633,69633,"NSM"],[69688,69702,"NSM"],[69714,69733,"ON"],[69744,69744,"NSM"],[69747,69748,"NSM"],[69759,69761,"NSM"],[69811,69814,"NSM"],[69817,69818,"NSM"],[69826,69826,"NSM"],[69888,69890,"NSM"],[69927,69931,"NSM"],[69933,69940,"NSM"],[70003,70003,"NSM"],[70016,70017,"NSM"],[70070,70078,"NSM"],[70089,70092,"NSM"],[70095,70095,"NSM"],[70191,70193,"NSM"],[70196,70196,"NSM"],[70198,70199,"NSM"],[70206,70206,"NSM"],[70209,70209,"NSM"],[70367,70367,"NSM"],[70371,70378,"NSM"],[70400,70401,"NSM"],[70459,70460,"NSM"],[70464,70464,"NSM"],[70502,70508,"NSM"],[70512,70516,"NSM"],[70587,70592,"NSM"],[70606,70606,"NSM"],[70608,70608,"NSM"],[70610,70610,"NSM"],[70625,70626,"NSM"],[70712,70719,"NSM"],[70722,70724,"NSM"],[70726,70726,"NSM"],[70750,70750,"NSM"],[70835,70840,"NSM"],[70842,70842,"NSM"],[70847,70848,"NSM"],[70850,70851,"NSM"],[71090,71093,"NSM"],[71100,71101,"NSM"],[71103,71104,"NSM"],[71132,71133,"NSM"],[71219,71226,"NSM"],[71229,71229,"NSM"],[71231,71232,"NSM"],[71264,71276,"ON"],[71339,71339,"NSM"],[71341,71341,"NSM"],[71344,71349,"NSM"],[71351,71351,"NSM"],[71453,71453,"NSM"],[71455,71455,"NSM"],[71458,71461,"NSM"],[71463,71467,"NSM"],[71727,71735,"NSM"],[71737,71738,"NSM"],[71995,71996,"NSM"],[71998,71998,"NSM"],[72003,72003,"NSM"],[72148,72151,"NSM"],[72154,72155,"NSM"],[72160,72160,"NSM"],[72193,72198,"NSM"],[72201,72202,"NSM"],[72243,72248,"NSM"],[72251,72254,"NSM"],[72263,72263,"NSM"],[72273,72278,"NSM"],[72281,72283,"NSM"],[72330,72342,"NSM"],[72344,72345,"NSM"],[72544,72544,"NSM"],[72546,72548,"NSM"],[72550,72550,"NSM"],[72752,72758,"NSM"],[72760,72765,"NSM"],[72850,72871,"NSM"],[72874,72880,"NSM"],[72882,72883,"NSM"],[72885,72886,"NSM"],[73009,73014,"NSM"],[73018,73018,"NSM"],[73020,73021,"NSM"],[73023,73029,"NSM"],[73031,73031,"NSM"],[73104,73105,"NSM"],[73109,73109,"NSM"],[73111,73111,"NSM"],[73459,73460,"NSM"],[73472,73473,"NSM"],[73526,73530,"NSM"],[73536,73536,"NSM"],[73538,73538,"NSM"],[73562,73562,"NSM"],[73685,73692,"ON"],[73693,73696,"ET"],[73697,73713,"ON"],[78912,78912,"NSM"],[78919,78933,"NSM"],[90398,90409,"NSM"],[90413,90415,"NSM"],[92912,92916,"NSM"],[92976,92982,"NSM"],[94031,94031,"NSM"],[94095,94098,"NSM"],[94178,94178,"ON"],[94180,94180,"NSM"],[113821,113822,"NSM"],[113824,113827,"BN"],[117760,117973,"ON"],[118e3,118009,"EN"],[118010,118012,"ON"],[118016,118451,"ON"],[118458,118480,"ON"],[118496,118512,"ON"],[118528,118573,"NSM"],[118576,118598,"NSM"],[119143,119145,"NSM"],[119155,119162,"BN"],[119163,119170,"NSM"],[119173,119179,"NSM"],[119210,119213,"NSM"],[119273,119274,"ON"],[119296,119361,"ON"],[119362,119364,"NSM"],[119365,119365,"ON"],[119552,119638,"ON"],[120513,120513,"ON"],[120539,120539,"ON"],[120571,120571,"ON"],[120597,120597,"ON"],[120629,120629,"ON"],[120655,120655,"ON"],[120687,120687,"ON"],[120713,120713,"ON"],[120745,120745,"ON"],[120771,120771,"ON"],[120782,120831,"EN"],[121344,121398,"NSM"],[121403,121452,"NSM"],[121461,121461,"NSM"],[121476,121476,"NSM"],[121499,121503,"NSM"],[121505,121519,"NSM"],[122880,122886,"NSM"],[122888,122904,"NSM"],[122907,122913,"NSM"],[122915,122916,"NSM"],[122918,122922,"NSM"],[123023,123023,"NSM"],[123184,123190,"NSM"],[123566,123566,"NSM"],[123628,123631,"NSM"],[123647,123647,"ET"],[124140,124143,"NSM"],[124398,124399,"NSM"],[124643,124643,"NSM"],[124646,124646,"NSM"],[124654,124655,"NSM"],[124661,124661,"NSM"],[124928,125135,"R"],[125136,125142,"NSM"],[125143,125251,"R"],[125252,125258,"NSM"],[125259,126063,"R"],[126064,126143,"AL"],[126144,126207,"R"],[126208,126287,"AL"],[126288,126463,"R"],[126464,126703,"AL"],[126704,126705,"ON"],[126706,126719,"AL"],[126720,126975,"R"],[126976,127019,"ON"],[127024,127123,"ON"],[127136,127150,"ON"],[127153,127167,"ON"],[127169,127183,"ON"],[127185,127221,"ON"],[127232,127242,"EN"],[127243,127247,"ON"],[127279,127279,"ON"],[127338,127343,"ON"],[127405,127405,"ON"],[127584,127589,"ON"],[127744,128728,"ON"],[128732,128748,"ON"],[128752,128764,"ON"],[128768,128985,"ON"],[128992,129003,"ON"],[129008,129008,"ON"],[129024,129035,"ON"],[129040,129095,"ON"],[129104,129113,"ON"],[129120,129159,"ON"],[129168,129197,"ON"],[129200,129211,"ON"],[129216,129217,"ON"],[129232,129240,"ON"],[129280,129623,"ON"],[129632,129645,"ON"],[129648,129660,"ON"],[129664,129674,"ON"],[129678,129734,"ON"],[129736,129736,"ON"],[129741,129756,"ON"],[129759,129770,"ON"],[129775,129784,"ON"],[129792,129938,"ON"],[129940,130031,"ON"],[130032,130041,"EN"],[130042,130042,"ON"],[131070,131071,"BN"],[196606,196607,"BN"],[262142,262143,"BN"],[327678,327679,"BN"],[393214,393215,"BN"],[458750,458751,"BN"],[524286,524287,"BN"],[589822,589823,"BN"],[655358,655359,"BN"],[720894,720895,"BN"],[786430,786431,"BN"],[851966,851967,"BN"],[917502,917759,"BN"],[917760,917999,"NSM"],[918e3,921599,"BN"],[983038,983039,"BN"],[1048574,1048575,"BN"],[1114110,1114111,"BN"]];function Xc(t){if(t<=255)return Bs[t];let e=0,n=Hi.length-1;for(;e<=n;){let i=e+n>>1,r=Hi[i];if(t<r[0]){n=i-1;continue}if(t>r[1]){e=i+1;continue}return r[2]}return"L"}function Qc(t){let e=t.length;if(e===0)return null;let n=new Array(e),i=!1;for(let c=0;c<e;){let u=t.charCodeAt(c),m=u,f=1;if(u>=55296&&u<=56319&&c+1<e){let A=t.charCodeAt(c+1);A>=56320&&A<=57343&&(m=(u-55296<<10)+(A-56320)+65536,f=2)}let x=Xc(m);(x==="R"||x==="AL"||x==="AN")&&(i=!0);for(let A=0;A<f;A++)n[c+A]=x;c+=f}if(!i)return null;let r=0;for(let c=0;c<e;c++){let u=n[c];if(u==="L"){r=0;break}if(u==="R"||u==="AL"){r=1;break}}let o=new Int8Array(e);for(let c=0;c<e;c++)o[c]=r;let s=r&1?"R":"L",l=s,a=l;for(let c=0;c<e;c++)n[c]==="NSM"?n[c]=a:a=n[c];a=l;for(let c=0;c<e;c++){let u=n[c];u==="EN"?n[c]=a==="AL"?"AN":"EN":(u==="R"||u==="L"||u==="AL")&&(a=u)}for(let c=0;c<e;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<e-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<e;c++){if(n[c]!=="EN")continue;let u;for(u=c-1;u>=0&&n[u]==="ET";u--)n[u]="EN";for(u=c+1;u<e&&n[u]==="ET";u++)n[u]="EN"}for(let c=0;c<e;c++){let u=n[c];(u==="WS"||u==="ES"||u==="ET"||u==="CS")&&(n[c]="ON")}a=l;for(let c=0;c<e;c++){let u=n[c];u==="EN"?n[c]=a==="L"?"L":"EN":(u==="R"||u==="L")&&(a=u)}for(let c=0;c<e;c++){if(n[c]!=="ON")continue;let u=c+1;for(;u<e&&n[u]==="ON";)u++;let m=c>0?n[c-1]:l,f=u<e?n[u]:l,x=m!=="L"?"R":"L";if(x===(f!=="L"?"R":"L"))for(let g=c;g<u;g++)n[g]=x;c=u-1}for(let c=0;c<e;c++)n[c]==="ON"&&(n[c]=s);for(let c=0;c<e;c++){let u=n[c];(o[c]&1)===0?u==="R"?o[c]++:(u==="AN"||u==="EN")&&(o[c]+=2):(u==="L"||u==="AN"||u==="EN")&&o[c]++}return o}function Hs(t,e){let n=Qc(t);if(n===null)return null;let i=new Int8Array(e.length);for(let r=0;r<e.length;r++)i[r]=n[e[r]];return i}var Zc=/[ \\t\\n\\r\\f]+/g,ed=/[\\t\\n\\r\\f]| {2,}|^ | $/;function td(t){let e=t??"normal";return e==="pre-wrap"?{mode:e,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:e,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function nd(t){if(!ed.test(t))return t;let e=t.replace(Zc," ");return e.charCodeAt(0)===32&&(e=e.slice(1)),e.length>0&&e.charCodeAt(e.length-1)===32&&(e=e.slice(0,-1)),e}function id(t){return/[\\r\\f]/.test(t)?t.replace(/\\r\\n/g,`\n`).replace(/[\\r\\f]/g,`\n`):t.replace(/\\r\\n/g,`\n`)}var Wi=null,rd;function od(){return Wi===null&&(Wi=new Intl.Segmenter(rd,{granularity:"word"})),Wi}var sd=/\\p{Script=Arabic}/u,Mn=/\\p{M}/u,$s=/\\p{Nd}/u;function Ws(t){return sd.test(t)}function Gs(t){return t>=19968&&t<=40959||t>=13312&&t<=19903||t>=131072&&t<=173791||t>=173824&&t<=177983||t>=177984&&t<=178207||t>=178208&&t<=183983||t>=183984&&t<=191471||t>=191472&&t<=192093||t>=194560&&t<=195103||t>=196608&&t<=201551||t>=201552&&t<=205743||t>=205744&&t<=210041||t>=63744&&t<=64255||t>=12288&&t<=12351||t>=12352&&t<=12447||t>=12448&&t<=12543||t>=44032&&t<=55215||t>=65280&&t<=65519}function De(t){for(let e=0;e<t.length;e++){let n=t.charCodeAt(e);if(!(n<12288)){if(n>=55296&&n<=56319&&e+1<t.length){let i=t.charCodeAt(e+1);if(i>=56320&&i<=57343){let r=(n-55296<<10)+(i-56320)+65536;if(Gs(r))return!0;e++;continue}}if(Gs(n))return!0}}return!1}function ad(t){let e=_n(t);return e!==null&&(Tn.has(e)||Xe.has(e))}var ld=new Set(["\\xA0","\\u202F","\\u2060","\\uFEFF"]);function ud(t){return De(t)}function cd(t){let e=_n(t);return e!==null&&ld.has(e)}function Nn(t){return!ad(t)&&!cd(t)}var Tn=new Set(["\\uFF0C","\\uFF0E","\\uFF01","\\uFF1A","\\uFF1B","\\uFF1F","\\u3001","\\u3002","\\u30FB","\\uFF09","\\u3015","\\u3009","\\u300B","\\u300D","\\u300F","\\u3011","\\u3017","\\u3019","\\u301B","\\u30FC","\\u3005","\\u303B","\\u309D","\\u309E","\\u30FD","\\u30FE"]),Zt=new Set([\'"\',"(","[","{","\\u201C","\\u2018","\\xAB","\\u2039","\\uFF08","\\u3014","\\u3008","\\u300A","\\u300C","\\u300E","\\u3010","\\u3016","\\u3018","\\u301A"]),Ui=new Set(["\'","\\u2019"]),Xe=new Set([".",",","!","?",":",";","\\u060C","\\u061B","\\u061F","\\u0964","\\u0965","\\u104A","\\u104B","\\u104C","\\u104D","\\u104F",")","]","}","%",\'"\',"\\u201D","\\u2019","\\xBB","\\u203A","\\u2026"]),dd=new Set([":",".","\\u060C","\\u061B"]),fd=new Set(["\\u104F"]),md=new Set(["\\u201D","\\u2019","\\xBB","\\u203A","\\u300D","\\u300F","\\u3011","\\u300B","\\u3009","\\u3015","\\uFF09"]);function pd(t){if(Vi(t))return!0;let e=!1;for(let n of t){if(Xe.has(n)){e=!0;continue}if(!(e&&Mn.test(n)))return!1}return e}function hd(t){for(let e of t)if(!Tn.has(e)&&!Xe.has(e))return!1;return t.length>0}function xd(t){if(Vi(t))return!0;for(let e of t)if(!Zt.has(e)&&!Ui.has(e)&&!Mn.test(e))return!1;return t.length>0}function Vi(t){let e=!1;for(let n of t)if(!(n==="\\\\"||Mn.test(n))){if(Zt.has(n)||Xe.has(n)||Ui.has(n)){e=!0;continue}return!1}return e}function Ks(t,e){let n=e-1;if(n<=0)return Math.max(n,0);let i=t.charCodeAt(n);if(i<56320||i>57343)return n;let r=n-1;if(r<0)return n;let o=t.charCodeAt(r);return o>=55296&&o<=56319?r:n}function _n(t){if(t.length===0)return null;let e=Ks(t,t.length);return t.slice(e)}function gd(t){let e=Array.from(t),n=e.length;for(;n>0;){let i=e[n-1];if(Mn.test(i)){n--;continue}if(Zt.has(i)||Ui.has(i)){n--;continue}break}return n<=0||n===e.length?null:{head:e.slice(0,n).join(""),tail:e.slice(n).join("")}}function yd(t,e,n){return n==="text"&&!e&&t.length===1&&t!=="-"&&t!=="\\u2014"?t:null}function Us(t,e,n,i){let r=e[i],o=t[i];if(r==null)return o;let s=n[i];if(o.length===s)return o;let l=r.repeat(s);return t[i]=l,l}function Vs(t,e){return t&&e!==null&&dd.has(e)}function bd(t){let e=_n(t);return e!==null&&fd.has(e)}function Sd(t){if(t.length<2||t[0]!==" ")return null;let e=t.slice(1);return/^\\p{M}+$/u.test(e)?{space:" ",marks:e}:null}function Ln(t){let e=t.length;for(;e>0;){let n=Ks(t,e),i=t.slice(n,e);if(md.has(i))return!0;if(!Xe.has(i))return!1;e=n}return!1}function Ad(t,e){if(e.preserveOrdinarySpaces||e.preserveHardBreaks){if(t===" ")return"preserved-space";if(t===" ")return"tab";if(e.preserveHardBreaks&&t===`\n`)return"hard-break"}return t===" "?"space":t==="\\xA0"||t==="\\u202F"||t==="\\u2060"||t==="\\uFEFF"?"glue":t==="\\u200B"?"zero-width-break":t==="\\xAD"?"soft-hyphen":"text"}var Ed=/[\\x20\\t\\n\\xA0\\xAD\\u200B\\u202F\\u2060\\uFEFF]/;function _e(t){return t.length===1?t[0]:t.join("")}function wd(t,e){let n=[];for(let i=t.length-1;i>=0;i--)n.push(t[i]);return n.push(e),_e(n)}function Cd(t,e,n,i){if(!Ed.test(t))return[{text:t,isWordLike:e,kind:"text",start:n}];let r=[],o=null,s=[],l=n,a=!1,c=0;for(let u of t){let m=Ad(u,i),f=m==="text"&&e;if(o!==null&&m===o&&f===a){s.push(u),c+=u.length;continue}o!==null&&r.push({text:_e(s),isWordLike:a,kind:o,start:l}),o=m,s=[u],l=n+c,a=f,c+=u.length}return o!==null&&r.push({text:_e(s),isWordLike:a,kind:o,start:l}),r}function Gi(t){return t==="space"||t==="preserved-space"||t==="zero-width-break"||t==="hard-break"}var Fd=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function Md(t,e){let n=t.texts[e];return n.startsWith("www.")?!0:Fd.test(n)&&e+1<t.len&&t.kinds[e+1]==="text"&&t.texts[e+1]==="//"}function Nd(t){return t.includes("?")&&(t.includes("://")||t.startsWith("www."))}function Td(t){let e=t.texts.slice(),n=t.isWordLike.slice(),i=t.kinds.slice(),r=t.starts.slice();for(let s=0;s<t.len;s++){if(i[s]!=="text"||!Md(t,s))continue;let l=[e[s]],a=s+1;for(;a<t.len&&!Gi(i[a]);){l.push(e[a]),n[s]=!0;let c=e[a].includes("?");if(i[a]="text",e[a]="",a++,c)break}e[s]=_e(l)}let o=0;for(let s=0;s<e.length;s++){let l=e[s];l.length!==0&&(o!==s&&(e[o]=l,n[o]=n[s],i[o]=i[s],r[o]=r[s]),o++)}return e.length=o,n.length=o,i.length=o,r.length=o,{len:o,texts:e,isWordLike:n,kinds:i,starts:r}}function _d(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o];if(e.push(s),n.push(t.isWordLike[o]),i.push(t.kinds[o]),r.push(t.starts[o]),!Nd(s))continue;let l=o+1;if(l>=t.len||Gi(t.kinds[l]))continue;let a=[],c=t.starts[l],u=l;for(;u<t.len&&!Gi(t.kinds[u]);)a.push(t.texts[u]),u++;a.length>0&&(e.push(_e(a)),n.push(!0),i.push("text"),r.push(c),o=u-1)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}var Ld=new Set([":","-","/","\\xD7",",",".","+","\\u2013","\\u2014"]),zs=/^[A-Za-z0-9_]+[,:;]*$/,qs=/[,:;]+$/;function Js(t){for(let e of t)if($s.test(e))return!0;return!1}function Qt(t){if(t.length===0)return!1;for(let e of t)if(!($s.test(e)||Ld.has(e)))return!1;return!0}function vd(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o],l=t.kinds[o];if(l==="text"&&Qt(s)&&Js(s)){let a=[s],c=o+1;for(;c<t.len&&t.kinds[c]==="text"&&Qt(t.texts[c]);)a.push(t.texts[c]),c++;e.push(_e(a)),n.push(!0),i.push("text"),r.push(t.starts[o]),o=c-1;continue}e.push(s),n.push(t.isWordLike[o]),i.push(l),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function kd(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o],l=t.kinds[o],a=t.isWordLike[o];if(l==="text"&&a&&zs.test(s)){let c=[s],u=qs.test(s),m=o+1;for(;u&&m<t.len&&t.kinds[m]==="text"&&t.isWordLike[m]&&zs.test(t.texts[m]);){let f=t.texts[m];c.push(f),u=qs.test(f),m++}e.push(_e(c)),n.push(!0),i.push("text"),r.push(t.starts[o]),o=m-1;continue}e.push(s),n.push(a),i.push(l),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Rd(t){let e=[],n=[],i=[],r=[];for(let o=0;o<t.len;o++){let s=t.texts[o];if(t.kinds[o]==="text"&&s.includes("-")){let l=s.split("-"),a=l.length>1;for(let c=0;c<l.length;c++){let u=l[c];if(!a)break;(u.length===0||!Js(u)||!Qt(u))&&(a=!1)}if(a){let c=0;for(let u=0;u<l.length;u++){let m=l[u],f=u<l.length-1?`${m}-`:m;e.push(f),n.push(!0),i.push("text"),r.push(t.starts[o]+c),c+=f.length}continue}}e.push(s),n.push(t.isWordLike[o]),i.push(t.kinds[o]),r.push(t.starts[o])}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Dd(t){let e=[],n=[],i=[],r=[],o=0;for(;o<t.len;){let s=[t.texts[o]],l=t.isWordLike[o],a=t.kinds[o],c=t.starts[o];if(a==="glue"){let u=[s[0]],m=c;for(o++;o<t.len&&t.kinds[o]==="glue";)u.push(t.texts[o]),o++;let f=_e(u);if(o<t.len&&t.kinds[o]==="text")s[0]=f,s.push(t.texts[o]),l=t.isWordLike[o],a="text",c=m,o++;else{e.push(f),n.push(!1),i.push("glue"),r.push(m);continue}}else o++;if(a==="text")for(;o<t.len&&t.kinds[o]==="glue";){let u=[];for(;o<t.len&&t.kinds[o]==="glue";)u.push(t.texts[o]),o++;let m=_e(u);if(o<t.len&&t.kinds[o]==="text"){s.push(m,t.texts[o]),l=l||t.isWordLike[o],o++;continue}s.push(m)}e.push(_e(s)),n.push(l),i.push(a),r.push(c)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Id(t){let e=t.texts.slice(),n=t.isWordLike.slice(),i=t.kinds.slice(),r=t.starts.slice();for(let o=0;o<e.length-1;o++){if(i[o]!=="text"||i[o+1]!=="text"||!De(e[o])||!De(e[o+1]))continue;let s=gd(e[o]);s!==null&&(e[o]=s.head,e[o+1]=s.tail+e[o+1],r[o+1]=r[o]+s.head.length)}return{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function js(t,e,n){let i=od(),r=0,o=[],s=[],l=[],a=[],c=[],u=[],m=[],f=[],x=[],A=[],g=[],b=[];for(let T of i.segment(t))for(let y of Cd(T.segment,T.isWordLike??!1,T.index,n)){let Y=function(){u[D]!==null&&(s[D]=[Us(o,u,m,D)],u[D]=null),s[D].push(y.text),l[D]=l[D]||y.isWordLike,f[D]=f[D]||M,x[D]=x[D]||_,A[D]=z,g[D]=re,b[D]=Vs(x[D],W)},E=y.kind==="text",C=yd(y.text,y.isWordLike,y.kind),M=De(y.text),_=Ws(y.text),W=_n(y.text),z=Ln(y.text),re=bd(y.text),D=r-1;e.carryCJKAfterClosingQuote&&E&&r>0&&a[D]==="text"&&M&&f[D]&&A[D]||E&&r>0&&a[D]==="text"&&hd(y.text)&&f[D]||E&&r>0&&a[D]==="text"&&g[D]?Y():E&&r>0&&a[D]==="text"&&y.isWordLike&&_&&b[D]?(Y(),l[D]=!0):C!==null&&r>0&&a[D]==="text"&&u[D]===C?m[D]=(m[D]??1)+1:E&&!y.isWordLike&&r>0&&a[D]==="text"&&(pd(y.text)||y.text==="-"&&l[D])?Y():(o[r]=y.text,s[r]=[y.text],l[r]=y.isWordLike,a[r]=y.kind,c[r]=y.start,u[r]=C,m[r]=C===null?0:1,f[r]=M,x[r]=_,A[r]=z,g[r]=re,b[r]=Vs(_,W),r++)}for(let T=0;T<r;T++){if(u[T]!==null){o[T]=Us(o,u,m,T);continue}o[T]=_e(s[T])}for(let T=1;T<r;T++)a[T]==="text"&&!l[T]&&Vi(o[T])&&a[T-1]==="text"&&(o[T-1]+=o[T],l[T-1]=l[T-1]||l[T],o[T]="");let F=Array.from({length:r},()=>null),L=-1;for(let T=r-1;T>=0;T--){let y=o[T];if(y.length!==0){if(a[T]==="text"&&!l[T]&&xd(y)&&L>=0&&a[L]==="text"){let E=F[L]??[];E.push(y),F[L]=E,c[L]=c[T],o[T]="";continue}L=T}}for(let T=0;T<r;T++){let y=F[T];y!=null&&(o[T]=wd(y,o[T]))}let k=0;for(let T=0;T<r;T++){let y=o[T];y.length!==0&&(k!==T&&(o[k]=y,l[k]=l[T],a[k]=a[T],c[k]=c[T]),k++)}o.length=k,l.length=k,a.length=k,c.length=k;let V=Dd({len:k,texts:o,isWordLike:l,kinds:a,starts:c}),O=Id(kd(Rd(vd(_d(Td(V))))));for(let T=0;T<O.len-1;T++){let y=Sd(O.texts[T]);y!==null&&(O.kinds[T]!=="space"&&O.kinds[T]!=="preserved-space"||O.kinds[T+1]!=="text"||!Ws(O.texts[T+1])||(O.texts[T]=y.space,O.isWordLike[T]=!1,O.kinds[T]=O.kinds[T]==="preserved-space"?"preserved-space":"space",O.texts[T+1]=y.marks+O.texts[T+1],O.starts[T+1]=O.starts[T]+y.space.length))}return O}function Pd(t,e){if(t.len===0)return[];if(!e.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:t.len,consumedEndSegmentIndex:t.len}];let n=[],i=0;for(let r=0;r<t.len;r++)t.kinds[r]==="hard-break"&&(n.push({startSegmentIndex:i,endSegmentIndex:r,consumedEndSegmentIndex:r+1}),i=r+1);return i<t.len&&n.push({startSegmentIndex:i,endSegmentIndex:t.len,consumedEndSegmentIndex:t.len}),n}function Od(t){if(t.len<=1)return t;let e=[],n=[],i=[],r=[],o=null,s=!1,l=0,a=!1,c=!1;function u(){o!==null&&(e.push(_e(o)),n.push(s),i.push("text"),r.push(l),o=null)}for(let m=0;m<t.len;m++){let f=t.texts[m],x=t.kinds[m],A=t.isWordLike[m],g=t.starts[m];if(x==="text"){let b=ud(f),F=Nn(f);if(o!==null&&a&&c){o.push(f),s=s||A,a=a||b,c=F;continue}u(),o=[f],s=A,l=g,a=b,c=F;continue}u(),e.push(f),n.push(A),i.push(x),r.push(g)}return u(),{len:e.length,texts:e,isWordLike:n,kinds:i,starts:r}}function Ys(t,e,n="normal",i="normal"){let r=td(n),o=r.mode==="pre-wrap"?id(t):nd(t);if(o.length===0)return{normalized:o,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let s=i==="keep-all"?Od(js(o,e,r)):js(o,e,r);return{normalized:o,chunks:Pd(s,r),...s}}var ht=null,Xs=new Map,xt=null,Bd=96,Hd=/\\p{Emoji_Presentation}/u,Wd=/[\\p{Emoji_Presentation}\\p{Extended_Pictographic}\\p{Regional_Indicator}\\uFE0F\\u20E3]/u,zi=null,Qs=new Map;function qi(){if(ht!==null)return ht;if(typeof OffscreenCanvas<"u")return ht=new OffscreenCanvas(1,1).getContext("2d"),ht;if(typeof document<"u")return ht=document.createElement("canvas").getContext("2d"),ht;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function Gd(t){let e=Xs.get(t);return e||(e=new Map,Xs.set(t,e)),e}function Ue(t,e){let n=e.get(t);return n===void 0&&(n={width:qi().measureText(t).width,containsCJK:De(t)},e.set(t,n)),n}function gt(){if(xt!==null)return xt;if(typeof navigator>"u")return xt={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},xt;let t=navigator.userAgent,n=navigator.vendor==="Apple Computer, Inc."&&t.includes("Safari/")&&!t.includes("Chrome/")&&!t.includes("Chromium/")&&!t.includes("CriOS/")&&!t.includes("FxiOS/")&&!t.includes("EdgiOS/"),i=t.includes("Chrome/")||t.includes("Chromium/")||t.includes("CriOS/")||t.includes("Edg/");return xt={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:i,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},xt}function Ud(t){let e=t.match(/(\\d+(?:\\.\\d+)?)\\s*px/);return e?parseFloat(e[1]):16}function Zs(){return zi===null&&(zi=new Intl.Segmenter(void 0,{granularity:"grapheme"})),zi}function Vd(t){return Hd.test(t)||t.includes("\\uFE0F")}function ea(t){return Wd.test(t)}function zd(t,e){let n=Qs.get(t);if(n!==void 0)return n;let i=qi();i.font=t;let r=i.measureText("\\u{1F600}").width;if(n=0,r>e+.5&&typeof document<"u"&&document.body!==null){let o=document.createElement("span");o.style.font=t,o.style.display="inline-block",o.style.visibility="hidden",o.style.position="absolute",o.textContent="\\u{1F600}",document.body.appendChild(o);let s=o.getBoundingClientRect().width;document.body.removeChild(o),r-s>.5&&(n=r-s)}return Qs.set(t,n),n}function qd(t){let e=0,n=Zs();for(let i of n.segment(t))Vd(i.segment)&&e++;return e}function jd(t,e){return e.emojiCount===void 0&&(e.emojiCount=qd(t)),e.emojiCount}function Qe(t,e,n){return n===0?e.width:e.width-jd(t,e)*n}function ta(t,e,n,i,r){if(e.breakableFitAdvances!==void 0)return e.breakableFitAdvances;let o=Zs(),s=[];for(let u of o.segment(t))s.push(u.segment);if(s.length<=1)return e.breakableFitAdvances=null,e.breakableFitAdvances;if(r==="sum-graphemes"){let u=[];for(let m of s){let f=Ue(m,n);u.push(Qe(m,f,i))}return e.breakableFitAdvances=u,e.breakableFitAdvances}if(r==="pair-context"||s.length>Bd){let u=[],m=null,f=0;for(let x of s){let A=Ue(x,n),g=Qe(x,A,i);if(m===null)u.push(g);else{let b=m+x,F=Ue(b,n);u.push(Qe(b,F,i)-f)}m=x,f=g}return e.breakableFitAdvances=u,e.breakableFitAdvances}let l=[],a="",c=0;for(let u of s){a+=u;let m=Ue(a,n),f=Qe(a,m,i);l.push(f-c),c=f}return e.breakableFitAdvances=l,e.breakableFitAdvances}function na(t,e){let n=qi();n.font=t;let i=Gd(t),r=Ud(t),o=e?zd(t,r):0;return{cache:i,fontSize:r,emojiCorrection:o}}function $d(t,e){for(;e<t.widths.length;){let n=t.kinds[e];if(n!=="space"&&n!=="zero-width-break"&&n!=="soft-hyphen")break;e++}return e}function Kd(t,e){if(e<=0)return 0;let n=t%e;return Math.abs(n)<=1e-6?e:e-n}function Jd(t,e,n,i,r){let o=0,s=e;for(;o<t.length;){let l=s+t[o];if((o+1<t.length?l+r:l)>n+i)break;s=l,o++}return{fitCount:o,fittedWidth:s}}function ia(t,e){return t.simpleLineWalkFastPath?ra(t,e):oa(t,e)}function ra(t,e,n){let{widths:i,kinds:r,breakableFitAdvances:o}=t;if(i.length===0)return 0;let l=gt().lineFitEpsilon,a=e+l,c=0,u=0,m=!1,f=0,x=0,A=0,g=0,b=-1,F=0;function L(){b=-1,F=0}function k(C=A,M=g,_=u){c++,n?.({startSegmentIndex:f,startGraphemeIndex:x,endSegmentIndex:C,endGraphemeIndex:M,width:_}),u=0,m=!1,L()}function V(C,M){m=!0,f=C,x=0,A=C+1,g=0,u=M}function O(C,M,_){m=!0,f=C,x=M,A=C,g=M+1,u=_}function T(C,M){if(!m){V(C,M);return}u+=M,A=C+1,g=0}function y(C,M){let _=o[C];for(let W=M;W<_.length;W++){let z=_[W];m?u+z>a?(k(),O(C,W,z)):(u+=z,A=C,g=W+1):O(C,W,z)}m&&A===C&&g===_.length&&(A=C+1,g=0)}let E=0;for(;E<i.length&&!(!m&&(E=$d(t,E),E>=i.length));){let C=i[E],M=r[E],_=M==="space"||M==="preserved-space"||M==="tab"||M==="zero-width-break"||M==="soft-hyphen";if(!m){C>e&&o[E]!==null?y(E,0):V(E,C),_&&(b=E+1,F=u-C),E++;continue}if(u+C>a){if(_){T(E,C),k(E+1,0,u-C),E++;continue}if(b>=0){if(A>b||A===b&&g>0){k();continue}k(b,0,F);continue}if(C>e&&o[E]!==null){k(),y(E,0),E++;continue}k();continue}T(E,C),_&&(b=E+1,F=u-C),E++}return m&&k(),c}function oa(t,e,n){if(t.simpleLineWalkFastPath)return ra(t,e,n);let{widths:i,lineEndFitAdvances:r,lineEndPaintAdvances:o,kinds:s,breakableFitAdvances:l,discretionaryHyphenWidth:a,tabStopAdvance:c,chunks:u}=t;if(i.length===0||u.length===0)return 0;let m=gt(),f=m.lineFitEpsilon,x=e+f,A=0,g=0,b=!1,F=0,L=0,k=0,V=0,O=-1,T=0,y=0,E=null;function C(){O=-1,T=0,y=0,E=null}function M(U=k,te=V,G=g){A++,n?.({startSegmentIndex:F,startGraphemeIndex:L,endSegmentIndex:U,endGraphemeIndex:te,width:G}),g=0,b=!1,C()}function _(U,te){b=!0,F=U,L=0,k=U+1,V=0,g=te}function W(U,te,G){b=!0,F=U,L=te,k=U,V=te+1,g=G}function z(U,te){if(!b){_(U,te);return}g+=te,k=U+1,V=0}function re(U,te,G,ne){if(!te)return;let Me=U==="tab"?0:r[G],R=U==="tab"?ne:o[G];O=G+1,T=g-ne+Me,y=g-ne+R,E=U}function D(U,te){let G=l[U];for(let ne=te;ne<G.length;ne++){let Me=G[ne];b?g+Me>x?(M(),W(U,ne,Me)):(g+=Me,k=U,V=ne+1):W(U,ne,Me)}b&&k===U&&V===G.length&&(k=U+1,V=0)}function Y(U){if(E!=="soft-hyphen")return!1;let te=l[U];if(te==null)return!1;let{fitCount:G,fittedWidth:ne}=Jd(te,g,e,f,a);return G===0?!1:(g=ne,k=U,V=G,C(),G===te.length?(k=U+1,V=0,!0):(M(U,G,ne+a),D(U,G),!0))}function se(U){A++,n?.({startSegmentIndex:U.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:U.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),C()}for(let U=0;U<u.length;U++){let te=u[U];if(te.startSegmentIndex===te.endSegmentIndex){se(te);continue}b=!1,g=0,F=te.startSegmentIndex,L=0,k=te.startSegmentIndex,V=0,C();let G=te.startSegmentIndex;for(;G<te.endSegmentIndex;){let ne=s[G],Me=ne==="space"||ne==="preserved-space"||ne==="tab"||ne==="zero-width-break"||ne==="soft-hyphen",R=ne==="tab"?Kd(g,c):i[G];if(ne==="soft-hyphen"){b&&(k=G+1,V=0,O=G+1,T=g+a,y=g+a,E=ne),G++;continue}if(!b){R>e&&l[G]!==null?D(G,0):_(G,R),re(ne,Me,G,R),G++;continue}if(g+R>x){let H=g+(ne==="tab"?0:r[G]),ie=g+(ne==="tab"?R:o[G]);if(E==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&T<=x){M(O,0,y);continue}if(E==="soft-hyphen"&&Y(G)){G++;continue}if(Me&&H<=x){z(G,R),M(G+1,0,ie),G++;continue}if(O>=0&&T<=x){if(k>O||k===O&&V>0){M();continue}let ae=O;M(ae,0,y),G=ae;continue}if(R>e&&l[G]!==null){M(),D(G,0),G++;continue}M();continue}z(G,R),re(ne,Me,G,R),G++}if(b){let ne=O===te.consumedEndSegmentIndex?y:g;M(te.consumedEndSegmentIndex,0,ne)}}return A}var ji=null;function Yd(){return ji===null&&(ji=new Intl.Segmenter(void 0,{granularity:"grapheme"})),ji}function Xd(t){return t?{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[],segments:[]}:{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[]}}function Qd(t,e){let n=[],i=[],r=0,o=!1,s=!1,l=!1;function a(){i.length!==0&&(n.push({text:i.length===1?i[0]:i.join(""),start:r}),i=[],o=!1,s=!1,l=!1)}function c(m,f,x){i=[m],r=f,o=x,s=Ln(m),l=Zt.has(m)}function u(m,f){i.push(m),o=o||f;let x=Ln(m);m.length===1&&Xe.has(m)?s=s||x:s=x,l=!1}for(let m of Yd().segment(t)){let f=m.segment,x=De(f);if(i.length===0){c(f,m.index,x);continue}if(l||Tn.has(f)||Xe.has(f)||e.carryCJKAfterClosingQuote&&x&&s){u(f,x);continue}if(!o&&!x){u(f,x);continue}a(),c(f,m.index,x)}return a(),n}function Zd(t){if(t.length<=1)return t;let e=[],n=[t[0].text],i=t[0].start,r=De(t[0].text),o=Nn(t[0].text);function s(){e.push({text:n.length===1?n[0]:n.join(""),start:i})}for(let l=1;l<t.length;l++){let a=t[l],c=De(a.text),u=Nn(a.text);if(r&&o){n.push(a.text),r=r||c,o=u;continue}s(),n=[a.text],i=a.start,r=c,o=u}return s(),e}function ef(t,e,n,i){let r=gt(),{cache:o,emojiCorrection:s}=na(e,ea(t.normalized)),l=Qe("-",Ue("-",o),s),c=Qe(" ",Ue(" ",o),s)*8;if(t.len===0)return Xd(n);let u=[],m=[],f=[],x=[],A=t.chunks.length<=1,g=n?[]:null,b=[],F=n?[]:null,L=Array.from({length:t.len});function k(y,E,C,M,_,W,z){_!=="text"&&_!=="space"&&_!=="zero-width-break"&&(A=!1),u.push(E),m.push(C),f.push(M),x.push(_),g?.push(W),b.push(z),F!==null&&F.push(y)}function V(y,E,C,M,_){let W=Ue(y,o),z=Qe(y,W,s),re=E==="space"||E==="preserved-space"||E==="zero-width-break"?0:z,D=E==="space"||E==="zero-width-break"?0:z;if(_&&M&&y.length>1){let Y="sum-graphemes";Qt(y)?Y="pair-context":r.preferPrefixWidthsForBreakableRuns&&(Y="segment-prefixes");let se=ta(y,W,o,s,Y);k(y,z,re,D,E,C,se);return}k(y,z,re,D,E,C,null)}for(let y=0;y<t.len;y++){L[y]=u.length;let E=t.texts[y],C=t.isWordLike[y],M=t.kinds[y],_=t.starts[y];if(M==="soft-hyphen"){k(E,0,l,l,M,_,null);continue}if(M==="hard-break"){k(E,0,0,0,M,_,null);continue}if(M==="tab"){k(E,0,0,0,M,_,null);continue}let W=Ue(E,o);if(M==="text"&&W.containsCJK){let z=Qd(E,r),re=i==="keep-all"?Zd(z):z;for(let D=0;D<re.length;D++){let Y=re[D];V(Y.text,"text",_+Y.start,C,i==="keep-all"||!De(Y.text))}continue}V(E,M,_,C,!0)}let O=tf(t.chunks,L,u.length),T=g===null?null:Hs(t.normalized,g);return F!==null?{widths:u,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:x,simpleLineWalkFastPath:A,segLevels:T,breakableFitAdvances:b,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:O,segments:F}:{widths:u,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:x,simpleLineWalkFastPath:A,segLevels:T,breakableFitAdvances:b,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:O}}function tf(t,e,n){let i=[];for(let r=0;r<t.length;r++){let o=t[r],s=o.startSegmentIndex<e.length?e[o.startSegmentIndex]:n,l=o.endSegmentIndex<e.length?e[o.endSegmentIndex]:n,a=o.consumedEndSegmentIndex<e.length?e[o.consumedEndSegmentIndex]:n;i.push({startSegmentIndex:s,endSegmentIndex:l,consumedEndSegmentIndex:a})}return i}function nf(t,e,n,i){let r=i?.wordBreak??"normal",o=Ys(t,gt(),i?.whiteSpace,r);return ef(o,e,n,r)}function sa(t,e,n){return nf(t,e,!1,n)}function aa(t,e,n){let i=ia(t,e);return{lineCount:i,height:i*n}}var rf={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function la(t,e){let n={...rf,...e},i=1.2;for(let r=n.baseFontSize;r>=n.minFontSize;r-=n.step){let o=`${n.fontWeight} ${r}px ${n.fontFamily}`,s=sa(t,o),{lineCount:l}=aa(s,n.maxWidth,r*i);if(l<=1)return{fontSize:r,fits:!0}}return{fontSize:n.minFontSize,fits:!1}}window.__timelines=window.__timelines||{};window.__hyperframes={fitTextFontSize:la,getVariables:cs};function ua(){let t=window;t.__hyperframeRuntimeBootstrapped||(t.__hyperframeRuntimeBootstrapped=!0,Os())}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",ua,{once:!0}):ua();})();\n';
28881
28949
  }
28882
28950
  });
28883
28951
 
@@ -33354,6 +33422,9 @@ async function getCdpSession(page) {
33354
33422
  }
33355
33423
  return client;
33356
33424
  }
33425
+ function shouldDefaultCaptureBeyondViewport(browserVersion, platform10 = process.platform) {
33426
+ return platform10 === "darwin" && browserVersion.startsWith("Chrome/");
33427
+ }
33357
33428
  async function sendBeginFrame(client, params) {
33358
33429
  for (let attempt = 0; ; attempt++) {
33359
33430
  try {
@@ -33765,6 +33836,12 @@ async function driveWarmupTicks(options, state) {
33765
33836
  await sleep3(options.intervalMs);
33766
33837
  }
33767
33838
  }
33839
+ function resolveCaptureSessionOptions(options, browserVersion, platform10 = process.platform) {
33840
+ return {
33841
+ ...options,
33842
+ captureBeyondViewport: options.captureBeyondViewport ?? shouldDefaultCaptureBeyondViewport(browserVersion, platform10)
33843
+ };
33844
+ }
33768
33845
  async function waitForCloseWithTimeout(promise) {
33769
33846
  let timedOut = false;
33770
33847
  let timer;
@@ -33817,6 +33894,7 @@ async function createCaptureSession(serverUrl, outputDir, options, onBeforeCaptu
33817
33894
  }, variablesJson);
33818
33895
  }
33819
33896
  const browserVersion = await browser.version();
33897
+ const sessionOptions = resolveCaptureSessionOptions(options, browserVersion);
33820
33898
  const expectedMajor = config?.expectedChromiumMajor;
33821
33899
  if (Number.isFinite(expectedMajor)) {
33822
33900
  const actualChromiumMajor = Number.parseInt(
@@ -33830,15 +33908,15 @@ async function createCaptureSession(serverUrl, outputDir, options, onBeforeCaptu
33830
33908
  }
33831
33909
  }
33832
33910
  const viewport = {
33833
- width: options.width,
33834
- height: options.height,
33835
- deviceScaleFactor: options.deviceScaleFactor || 1
33911
+ width: sessionOptions.width,
33912
+ height: sessionOptions.height,
33913
+ deviceScaleFactor: sessionOptions.deviceScaleFactor || 1
33836
33914
  };
33837
33915
  await page.setViewport(viewport);
33838
33916
  return {
33839
33917
  browser,
33840
33918
  page,
33841
- options,
33919
+ options: sessionOptions,
33842
33920
  serverUrl,
33843
33921
  outputDir,
33844
33922
  onBeforeCapture,
@@ -34033,17 +34111,17 @@ async function applyVideoMetadataHints(page, hints) {
34033
34111
  if (!hints || hints.length === 0) return;
34034
34112
  await page.evaluate(
34035
34113
  (metadataHints) => {
34036
- for (const hint of metadataHints) {
34037
- if (!hint.id || !Number.isFinite(hint.width) || !Number.isFinite(hint.height) || hint.width <= 0 || hint.height <= 0) {
34114
+ for (const hint2 of metadataHints) {
34115
+ if (!hint2.id || !Number.isFinite(hint2.width) || !Number.isFinite(hint2.height) || hint2.width <= 0 || hint2.height <= 0) {
34038
34116
  continue;
34039
34117
  }
34040
- const video = document.getElementById(hint.id);
34118
+ const video = document.getElementById(hint2.id);
34041
34119
  if (!video) continue;
34042
- if (!video.hasAttribute("width")) video.setAttribute("width", String(hint.width));
34043
- if (!video.hasAttribute("height")) video.setAttribute("height", String(hint.height));
34120
+ if (!video.hasAttribute("width")) video.setAttribute("width", String(hint2.width));
34121
+ if (!video.hasAttribute("height")) video.setAttribute("height", String(hint2.height));
34044
34122
  const computed = window.getComputedStyle(video);
34045
34123
  if (!video.style.aspectRatio && (!computed.aspectRatio || computed.aspectRatio === "auto")) {
34046
- video.style.aspectRatio = `${hint.width} / ${hint.height}`;
34124
+ video.style.aspectRatio = `${hint2.width} / ${hint2.height}`;
34047
34125
  }
34048
34126
  }
34049
34127
  },
@@ -42650,6 +42728,7 @@ function trackRenderComplete(props) {
42650
42728
  duration_ms: props.durationMs,
42651
42729
  fps: props.fps,
42652
42730
  quality: props.quality,
42731
+ authoring_skill: props.authoringSkill,
42653
42732
  workers: props.workers,
42654
42733
  docker: props.docker,
42655
42734
  gpu: props.gpu,
@@ -42698,6 +42777,7 @@ function trackRenderError(props) {
42698
42777
  {
42699
42778
  fps: props.fps,
42700
42779
  quality: props.quality,
42780
+ authoring_skill: props.authoringSkill,
42701
42781
  docker: props.docker,
42702
42782
  workers: props.workers,
42703
42783
  gpu: props.gpu,
@@ -45634,9 +45714,12 @@ var init_manager = __esm({
45634
45714
  var normalize_exports = {};
45635
45715
  __export(normalize_exports, {
45636
45716
  detectFormat: () => detectFormat,
45717
+ formatSrt: () => formatSrt,
45718
+ formatVtt: () => formatVtt,
45637
45719
  loadTranscript: () => loadTranscript,
45638
45720
  patchCaptionHtml: () => patchCaptionHtml,
45639
- stripBeforeOnset: () => stripBeforeOnset
45721
+ stripBeforeOnset: () => stripBeforeOnset,
45722
+ wordsToCues: () => wordsToCues
45640
45723
  });
45641
45724
  import { readFileSync as readFileSync12, readdirSync as readdirSync7, writeFileSync as writeFileSync8 } from "fs";
45642
45725
  import { extname as extname5, join as join18 } from "path";
@@ -45789,9 +45872,104 @@ function parseVttTimestamp(ts) {
45789
45872
  }
45790
45873
  return 0;
45791
45874
  }
45875
+ function formatSrtTimestamp(seconds) {
45876
+ const { hours, minutes, wholeSeconds, milliseconds } = timestampParts(seconds);
45877
+ return `${pad2(hours)}:${pad2(minutes)}:${pad2(wholeSeconds)},${pad3(milliseconds)}`;
45878
+ }
45879
+ function formatVttTimestamp(seconds) {
45880
+ const { hours, minutes, wholeSeconds, milliseconds } = timestampParts(seconds);
45881
+ return `${pad2(hours)}:${pad2(minutes)}:${pad2(wholeSeconds)}.${pad3(milliseconds)}`;
45882
+ }
45792
45883
  function round3(n2) {
45793
45884
  return Math.round(n2 * 1e3) / 1e3;
45794
45885
  }
45886
+ function timestampParts(seconds) {
45887
+ const safeSeconds = Number.isFinite(seconds) ? seconds : 0;
45888
+ const totalMs = Math.max(0, Math.round(safeSeconds * 1e3));
45889
+ const milliseconds = totalMs % 1e3;
45890
+ const totalSeconds = (totalMs - milliseconds) / 1e3;
45891
+ const wholeSeconds = totalSeconds % 60;
45892
+ const totalMinutes = (totalSeconds - wholeSeconds) / 60;
45893
+ const minutes = totalMinutes % 60;
45894
+ const hours = (totalMinutes - minutes) / 60;
45895
+ return { hours, minutes, wholeSeconds, milliseconds };
45896
+ }
45897
+ function pad2(n2) {
45898
+ return n2.toString().padStart(2, "0");
45899
+ }
45900
+ function pad3(n2) {
45901
+ return n2.toString().padStart(3, "0");
45902
+ }
45903
+ function endsSentence(text) {
45904
+ return /[.!?][)"'\]}]*$/.test(text);
45905
+ }
45906
+ function pushCue(cues, cue) {
45907
+ if (!cue) return;
45908
+ const text = cue.text.trim();
45909
+ if (!text) return;
45910
+ cues.push({ text, start: round3(cue.start), end: round3(cue.end) });
45911
+ }
45912
+ function breaksCue(current2, word, text, maxChars, maxGap) {
45913
+ const nextLength = current2.text.length + 1 + text.length;
45914
+ const gap = word.start - current2.end;
45915
+ return nextLength > maxChars || gap > maxGap;
45916
+ }
45917
+ function entriesToCues(words) {
45918
+ const cues = [];
45919
+ for (const word of words) {
45920
+ pushCue(cues, { text: word.text, start: word.start, end: word.end });
45921
+ }
45922
+ return cues;
45923
+ }
45924
+ function joinTokens(left, right) {
45925
+ const a = left.at(-1) ?? "";
45926
+ const b2 = right[0] ?? "";
45927
+ const sep8 = CJK_CHAR.test(a) || CJK_CHAR.test(b2) ? "" : " ";
45928
+ return `${left}${sep8}${right}`;
45929
+ }
45930
+ function wordsToCues(words, opts = {}) {
45931
+ const preGrouped = opts.preGrouped ?? words.some((w3) => /\s/.test(w3.text.trim()));
45932
+ if (preGrouped) return entriesToCues(words);
45933
+ const maxChars = opts.maxChars ?? 42;
45934
+ const maxGap = opts.maxGap ?? 0.8;
45935
+ const cues = [];
45936
+ let current2;
45937
+ const flush2 = () => {
45938
+ pushCue(cues, current2);
45939
+ current2 = void 0;
45940
+ };
45941
+ for (const word of words) {
45942
+ const text = word.text.trim();
45943
+ if (!text) continue;
45944
+ if (current2 && !breaksCue(current2, word, text, maxChars, maxGap)) {
45945
+ current2.text = joinTokens(current2.text, text);
45946
+ current2.end = word.end;
45947
+ } else {
45948
+ flush2();
45949
+ current2 = { text, start: word.start, end: word.end };
45950
+ }
45951
+ if (endsSentence(text)) flush2();
45952
+ }
45953
+ flush2();
45954
+ return cues;
45955
+ }
45956
+ function formatSrt(words, opts) {
45957
+ const cues = wordsToCues(words, opts);
45958
+ if (cues.length === 0) return "";
45959
+ return cues.map(
45960
+ (cue, i2) => `${i2 + 1}
45961
+ ${formatSrtTimestamp(cue.start)} --> ${formatSrtTimestamp(cue.end)}
45962
+ ${cue.text}`
45963
+ ).join("\n\n") + "\n";
45964
+ }
45965
+ function formatVtt(words, opts) {
45966
+ const cues = wordsToCues(words, opts);
45967
+ if (cues.length === 0) return "WEBVTT\n\n";
45968
+ return "WEBVTT\n\n" + cues.map(
45969
+ (cue) => `${formatVttTimestamp(cue.start)} --> ${formatVttTimestamp(cue.end)}
45970
+ ${cue.text}`
45971
+ ).join("\n\n") + "\n";
45972
+ }
45795
45973
  function loadTranscript(filePath) {
45796
45974
  const ext = extname5(filePath).toLowerCase();
45797
45975
  const content = readFileSync12(filePath, "utf-8");
@@ -45842,9 +46020,11 @@ function patchCaptionHtml(dir, words) {
45842
46020
  }
45843
46021
  }
45844
46022
  }
46023
+ var CJK_CHAR;
45845
46024
  var init_normalize = __esm({
45846
46025
  "src/whisper/normalize.ts"() {
45847
46026
  "use strict";
46027
+ CJK_CHAR = /[ -〿぀-ヿ㐀-䶿一-鿿豈-﫿＀-￯]/;
45848
46028
  }
45849
46029
  });
45850
46030
 
@@ -46616,6 +46796,7 @@ function lintMultipleRootCompositions(projectDir) {
46616
46796
  const rootHtmlFiles = readdirSync8(projectDir).filter((f3) => f3.endsWith(".html"));
46617
46797
  const rootCompositions = [];
46618
46798
  for (const file of rootHtmlFiles) {
46799
+ if (file === "caption-skin.html") continue;
46619
46800
  const content = readFileSync15(join21(projectDir, file), "utf-8");
46620
46801
  if (/data-composition-id/i.test(content)) {
46621
46802
  rootCompositions.push(file);
@@ -47100,11 +47281,11 @@ function label(name, value) {
47100
47281
  const pad = 14 - name.length;
47101
47282
  return ` ${c.dim(name)}${" ".repeat(Math.max(1, pad))}${c.bold(value)}`;
47102
47283
  }
47103
- function errorBox(title, hint, suggestion) {
47284
+ function errorBox(title, hint2, suggestion) {
47104
47285
  console.error(`
47105
47286
  ${c.error("\u2717")} ${c.bold(title)}`);
47106
- if (hint) console.error(`
47107
- ${c.dim(hint)}`);
47287
+ if (hint2) console.error(`
47288
+ ${c.dim(hint2)}`);
47108
47289
  if (suggestion) console.error(` ${c.accent(suggestion)}`);
47109
47290
  console.error();
47110
47291
  }
@@ -47164,11 +47345,11 @@ var init_project = __esm({
47164
47345
  title;
47165
47346
  hint;
47166
47347
  suggestion;
47167
- constructor(title, hint, suggestion) {
47348
+ constructor(title, hint2, suggestion) {
47168
47349
  super(title);
47169
47350
  this.name = "InvalidProjectError";
47170
47351
  this.title = title;
47171
- this.hint = hint;
47352
+ this.hint = hint2;
47172
47353
  this.suggestion = suggestion;
47173
47354
  }
47174
47355
  };
@@ -84408,7 +84589,8 @@ function applyUpdatesToCall(call, updates) {
84408
84589
  reconcileEditableProperties(call.fromArg, updates.fromProperties);
84409
84590
  }
84410
84591
  if (updates.duration !== void 0) setVarsKey(call.varsArg, "duration", updates.duration);
84411
- if (updates.ease !== void 0) applyEaseUpdate(call.varsArg, updates.ease);
84592
+ if (updates.easeEach !== void 0) applyEaseUpdate(call.varsArg, updates.easeEach);
84593
+ else if (updates.ease !== void 0) applyEaseUpdate(call.varsArg, updates.ease);
84412
84594
  if (updates.position !== void 0) {
84413
84595
  const posIdx = call.method === "fromTo" ? 3 : 2;
84414
84596
  call.node.arguments[posIdx] = parseExpr(serializeValue(updates.position));
@@ -84437,6 +84619,7 @@ function buildTweenStatementCode2(timelineVar, anim) {
84437
84619
  if (anim.method !== "set" && anim.duration !== void 0) props.duration = anim.duration;
84438
84620
  if (anim.ease) props.ease = anim.ease;
84439
84621
  const entries2 = Object.entries(props).map(([k2, v2]) => `${safeJsKey(k2)}: ${serializeValue(v2)}`);
84622
+ if (anim.method === "set") entries2.push("immediateRender: true");
84440
84623
  if (anim.extras) {
84441
84624
  for (const [k2, v2] of Object.entries(anim.extras)) {
84442
84625
  entries2.push(`${safeJsKey(k2)}: ${serializeValue(v2)}`);
@@ -84550,7 +84733,7 @@ function addAnimationToScript2(script, animation) {
84550
84733
  insertAfterAnchor(parsed, newStatement);
84551
84734
  return { script: recast.print(parsed.ast).code, id };
84552
84735
  }
84553
- function addAnimationWithKeyframesToScript2(script, targetSelector, position, duration, keyframes, ease) {
84736
+ function addAnimationWithKeyframesToScript2(script, targetSelector, position, duration, keyframes, ease, easeEach) {
84554
84737
  let parsed;
84555
84738
  try {
84556
84739
  parsed = parseGsapAst(script);
@@ -84562,7 +84745,7 @@ function addAnimationWithKeyframesToScript2(script, targetSelector, position, du
84562
84745
  return { script, id: "" };
84563
84746
  }
84564
84747
  const selector = JSON.stringify(targetSelector);
84565
- const kfCode = buildKeyframeObjectCode2(keyframes);
84748
+ const kfCode = buildKeyframeObjectCode2(keyframes, easeEach ? { easeEach } : void 0);
84566
84749
  const varEntries = [`keyframes: ${kfCode}`, `duration: ${serializeValue(duration)}`];
84567
84750
  if (ease) varEntries.push(`ease: ${JSON.stringify(ease)}`);
84568
84751
  const posCode = serializeValue(position);
@@ -85071,6 +85254,23 @@ function updateKeyframeInScript2(script, animationId, percentage, properties, ea
85071
85254
  const { loc, kfNode } = ctx;
85072
85255
  const match = findKeyframePropByPct(kfNode, percentage);
85073
85256
  if (!match) return script;
85257
+ if (Object.keys(properties).length === 0 && ease) {
85258
+ const existing = match.prop.value;
85259
+ if (existing?.type === "ObjectExpression") {
85260
+ const props = existing.properties ?? [];
85261
+ const easeIdx = props.findIndex(
85262
+ (p2) => isObjectProperty3(p2) && propKeyName3(p2) === "ease"
85263
+ );
85264
+ const easeNode = parseExpr(`({ ease: ${JSON.stringify(ease)} })`).properties[0];
85265
+ if (easeIdx >= 0) {
85266
+ props[easeIdx] = easeNode;
85267
+ } else {
85268
+ props.push(easeNode);
85269
+ }
85270
+ return recast.print(loc.parsed.ast).code;
85271
+ }
85272
+ return script;
85273
+ }
85074
85274
  match.prop.value = buildKeyframeValueNode(properties, ease);
85075
85275
  return recast.print(loc.parsed.ast).code;
85076
85276
  }
@@ -85981,7 +86181,8 @@ function executeGsapMutationAcorn(body, block, respond2) {
85981
86181
  body.position,
85982
86182
  body.duration,
85983
86183
  body.keyframes,
85984
- body.ease
86184
+ body.ease,
86185
+ body.easeEach
85985
86186
  );
85986
86187
  return result.script;
85987
86188
  }
@@ -96802,8 +97003,8 @@ async function runProbeStage(input2) {
96802
97003
  });
96803
97004
  diagnostics.push("(Could not gather browser diagnostics \u2014 page may have crashed)");
96804
97005
  }
96805
- const hint = diagnostics.length > 0 ? "\n\nDiagnostics:\n - " + diagnostics.join("\n - ") : "\n\nCheck that GSAP timelines are registered on window.__timelines.";
96806
- throw new Error("Composition duration is 0 \u2014 this would produce a black video." + hint);
97006
+ const hint2 = diagnostics.length > 0 ? "\n\nDiagnostics:\n - " + diagnostics.join("\n - ") : "\n\nCheck that GSAP timelines are registered on window.__timelines.";
97007
+ throw new Error("Composition duration is 0 \u2014 this would produce a black video." + hint2);
96807
97008
  }
96808
97009
  if (probeSession) {
96809
97010
  const failedRequests = probeSession.browserConsoleBuffer.filter(
@@ -97034,6 +97235,7 @@ async function runCaptureStage(input2) {
97034
97235
  } = input2;
97035
97236
  let { workerCount, probeSession } = input2;
97036
97237
  let lastBrowserConsole = [];
97238
+ let captureBeyondViewport = probeSession?.options.captureBeyondViewport;
97037
97239
  const captureCfg = cfg.forceScreenshot === forceScreenshot ? cfg : { ...cfg, forceScreenshot };
97038
97240
  if (frameRange !== void 0) {
97039
97241
  if (!Number.isFinite(frameRange.startFrame) || !Number.isFinite(frameRange.endFrame) || frameRange.startFrame < 0 || frameRange.endFrame <= frameRange.startFrame) {
@@ -97085,6 +97287,7 @@ async function runCaptureStage(input2) {
97085
97287
  workerCount = lastAttempt.workers;
97086
97288
  }
97087
97289
  if (probeSession) {
97290
+ captureBeyondViewport = probeSession.options.captureBeyondViewport;
97088
97291
  lastBrowserConsole = probeSession.browserConsoleBuffer;
97089
97292
  await closeCaptureSession(probeSession);
97090
97293
  probeSession = null;
@@ -97098,6 +97301,7 @@ async function runCaptureStage(input2) {
97098
97301
  videoInjector,
97099
97302
  captureCfg
97100
97303
  );
97304
+ captureBeyondViewport = session.options.captureBeyondViewport;
97101
97305
  if (probeSession) {
97102
97306
  prepareCaptureSessionForReuse(session, framesDir, videoInjector);
97103
97307
  probeSession = null;
@@ -97136,7 +97340,7 @@ async function runCaptureStage(input2) {
97136
97340
  await closeCaptureSession(session);
97137
97341
  }
97138
97342
  }
97139
- return { workerCount, probeSession, lastBrowserConsole };
97343
+ return { workerCount, probeSession, lastBrowserConsole, captureBeyondViewport };
97140
97344
  }
97141
97345
  var init_captureStage = __esm({
97142
97346
  "../producer/src/services/render/stages/captureStage.ts"() {
@@ -97844,6 +98048,7 @@ async function runCaptureStreamingStage(input2) {
97844
98048
  } = input2;
97845
98049
  let { workerCount, probeSession } = input2;
97846
98050
  let lastBrowserConsole = [];
98051
+ let captureBeyondViewport = probeSession?.options.captureBeyondViewport;
97847
98052
  const captureCfg = cfg.forceScreenshot === forceScreenshot ? cfg : { ...cfg, forceScreenshot };
97848
98053
  let streamingEncoder = null;
97849
98054
  let streamingEncoderClosed = false;
@@ -97908,6 +98113,7 @@ async function runCaptureStreamingStage(input2) {
97908
98113
  );
97909
98114
  pushWorkerDedupPerfs(workerResults, dedupPerfs);
97910
98115
  if (probeSession) {
98116
+ captureBeyondViewport = probeSession.options.captureBeyondViewport;
97911
98117
  lastBrowserConsole = probeSession.browserConsoleBuffer;
97912
98118
  await closeCaptureSession(probeSession);
97913
98119
  probeSession = null;
@@ -97921,6 +98127,7 @@ async function runCaptureStreamingStage(input2) {
97921
98127
  videoInjector,
97922
98128
  captureCfg
97923
98129
  );
98130
+ captureBeyondViewport = session.options.captureBeyondViewport;
97924
98131
  if (probeSession) {
97925
98132
  prepareCaptureSessionForReuse(session, framesDir, videoInjector);
97926
98133
  probeSession = null;
@@ -97969,7 +98176,8 @@ async function runCaptureStreamingStage(input2) {
97969
98176
  encodeMs: encodeResult.durationMs,
97970
98177
  probeSession,
97971
98178
  lastBrowserConsole,
97972
- workerCount
98179
+ workerCount,
98180
+ captureBeyondViewport
97973
98181
  };
97974
98182
  } finally {
97975
98183
  if (streamingEncoder && !streamingEncoderClosed) {
@@ -99996,6 +100204,10 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
99996
100204
  fileServer = probeResult.fileServer;
99997
100205
  probeSession = probeResult.probeSession;
99998
100206
  lastBrowserConsole = probeResult.lastBrowserConsole;
100207
+ let resolvedCaptureBeyondViewport = probeSession?.options.captureBeyondViewport;
100208
+ if (resolvedCaptureBeyondViewport !== void 0) {
100209
+ updateCaptureObservability({ captureBeyondViewport: resolvedCaptureBeyondViewport });
100210
+ }
99999
100211
  job.duration = probeResult.duration;
100000
100212
  job.totalFrames = probeResult.totalFrames;
100001
100213
  const totalFrames = probeResult.totalFrames;
@@ -100115,11 +100327,12 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100115
100327
  quality: needsAlpha ? void 0 : job.config.quality === "draft" ? 80 : 95,
100116
100328
  variables: job.config.variables,
100117
100329
  deviceScaleFactor,
100118
- captureBeyondViewport: composition.videos.length > 0
100330
+ ...composition.videos.length > 0 ? { captureBeyondViewport: true } : {}
100119
100331
  };
100120
- updateCaptureObservability({
100121
- captureBeyondViewport: captureOptions.captureBeyondViewport ?? false
100122
- });
100332
+ resolvedCaptureBeyondViewport = captureOptions.captureBeyondViewport ?? resolvedCaptureBeyondViewport;
100333
+ if (resolvedCaptureBeyondViewport !== void 0) {
100334
+ updateCaptureObservability({ captureBeyondViewport: resolvedCaptureBeyondViewport });
100335
+ }
100123
100336
  const buildCaptureOptions = () => ({
100124
100337
  ...captureOptions,
100125
100338
  videoMetadataHints,
@@ -100248,7 +100461,7 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100248
100461
  observability.checkpoint("capture_strategy", "resolved", {
100249
100462
  workerCount,
100250
100463
  forceScreenshot: captureForceScreenshot,
100251
- captureBeyondViewport: captureOptions.captureBeyondViewport ?? false,
100464
+ captureBeyondViewport: resolvedCaptureBeyondViewport ?? null,
100252
100465
  useStreamingEncode,
100253
100466
  useLayeredComposite,
100254
100467
  usePageSideCompositing: usePageSideCompositingForTransitions,
@@ -100360,6 +100573,11 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100360
100573
  streamingHandled = true;
100361
100574
  workerCount = streamingRes.workerCount;
100362
100575
  updateCaptureObservability({ workerCount });
100576
+ if (streamingRes.captureBeyondViewport !== void 0) {
100577
+ updateCaptureObservability({
100578
+ captureBeyondViewport: streamingRes.captureBeyondViewport
100579
+ });
100580
+ }
100363
100581
  probeSession = streamingRes.probeSession;
100364
100582
  lastBrowserConsole = streamingRes.lastBrowserConsole;
100365
100583
  perfStages.captureMs = Date.now() - stage4Start;
@@ -100402,6 +100620,11 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100402
100620
  const captureFrameMs = Date.now() - captureFrameStart;
100403
100621
  workerCount = captureRes.workerCount;
100404
100622
  updateCaptureObservability({ workerCount });
100623
+ if (captureRes.captureBeyondViewport !== void 0) {
100624
+ updateCaptureObservability({
100625
+ captureBeyondViewport: captureRes.captureBeyondViewport
100626
+ });
100627
+ }
100405
100628
  probeSession = captureRes.probeSession;
100406
100629
  lastBrowserConsole = captureRes.lastBrowserConsole;
100407
100630
  perfStages.captureMs = Date.now() - stage4Start;
@@ -102359,7 +102582,7 @@ async function renderChunk(planDir, chunkIndex, outputChunkPath) {
102359
102582
  // declare `data-composition-variables` leave this undefined and the
102360
102583
  // engine skips the `evaluateOnNewDocument` injection.
102361
102584
  variables: encoder.variables,
102362
- captureBeyondViewport: (planVideos?.videos.length ?? 0) > 0,
102585
+ ...(planVideos?.videos.length ?? 0) > 0 ? { captureBeyondViewport: true } : {},
102363
102586
  // lock the BeginFrame warmup loop to a fixed iteration count so
102364
102587
  // `beginFrameTimeTicks` is host-independent. Only chunks ever set this.
102365
102588
  lockWarmupTicks: true
@@ -106741,8 +106964,8 @@ function browserTimeoutErrorMessage(error) {
106741
106964
  function resolveBrowserTimeoutMsArg(raw) {
106742
106965
  const result = parseBrowserTimeoutMsArg(raw);
106743
106966
  if (!result.ok) {
106744
- const { title, message, hint } = browserTimeoutErrorMessage(result.error);
106745
- errorBox(title, message, hint);
106967
+ const { title, message, hint: hint2 } = browserTimeoutErrorMessage(result.error);
106968
+ errorBox(title, message, hint2);
106746
106969
  process.exit(1);
106747
106970
  }
106748
106971
  return result.value;
@@ -106790,8 +107013,8 @@ function compositionEntryErrorMessage(error) {
106790
107013
  function resolveCompositionEntryArg(raw, projectDir, stat3) {
106791
107014
  const result = parseCompositionEntryArg(raw, projectDir, stat3);
106792
107015
  if (!result.ok) {
106793
- const { title, message, hint } = compositionEntryErrorMessage(result.error);
106794
- errorBox(title, message, hint);
107016
+ const { title, message, hint: hint2 } = compositionEntryErrorMessage(result.error);
107017
+ errorBox(title, message, hint2);
106795
107018
  process.exit(1);
106796
107019
  }
106797
107020
  return result.value;
@@ -106963,6 +107186,20 @@ var init_feedback = __esm({
106963
107186
  }
106964
107187
  });
106965
107188
 
107189
+ // src/telemetry/skill.ts
107190
+ function normalizeSkillSlug(raw) {
107191
+ if (typeof raw !== "string") return void 0;
107192
+ const slug = raw.trim();
107193
+ return SKILL_SLUG.test(slug) ? slug : void 0;
107194
+ }
107195
+ var SKILL_SLUG;
107196
+ var init_skill = __esm({
107197
+ "src/telemetry/skill.ts"() {
107198
+ "use strict";
107199
+ SKILL_SLUG = /^[a-z0-9][a-z0-9-]{0,63}$/;
107200
+ }
107201
+ });
107202
+
106966
107203
  // src/utils/dockerRunArgs.ts
106967
107204
  function resolveDockerPlatform(arch2 = process.arch, env = process.env) {
106968
107205
  const override = env.HYPERFRAMES_DOCKER_PLATFORM;
@@ -107572,11 +107809,11 @@ var init_batchRender = __esm({
107572
107809
  BatchRenderInputError = class extends Error {
107573
107810
  title;
107574
107811
  hint;
107575
- constructor(title, message, hint) {
107812
+ constructor(title, message, hint2) {
107576
107813
  super(message);
107577
107814
  this.name = "BatchRenderInputError";
107578
107815
  this.title = title;
107579
- this.hint = hint;
107816
+ this.hint = hint2;
107580
107817
  }
107581
107818
  };
107582
107819
  PLACEHOLDER_RE = /\{([A-Za-z0-9_.-]+)\}/g;
@@ -107784,6 +108021,7 @@ async function renderDocker(projectDir, outputPath, options) {
107784
108021
  workers: options.workers,
107785
108022
  docker: true,
107786
108023
  gpu: options.gpu,
108024
+ authoringSkill: options.authoringSkill,
107787
108025
  ...getMemorySnapshot()
107788
108026
  });
107789
108027
  printRenderComplete(outputPath, elapsed, options.quiet);
@@ -107970,7 +108208,7 @@ function createNoopProducerLogger() {
107970
108208
  }
107971
108209
  };
107972
108210
  }
107973
- function handleRenderError(error, options, startTime, docker, hint, failedStage, job) {
108211
+ function handleRenderError(error, options, startTime, docker, hint2, failedStage, job) {
107974
108212
  const message = normalizeErrorMessage2(error);
107975
108213
  trackRenderError({
107976
108214
  fps: fpsToNumber(options.fps),
@@ -107978,6 +108216,7 @@ function handleRenderError(error, options, startTime, docker, hint, failedStage,
107978
108216
  docker,
107979
108217
  workers: options.workers,
107980
108218
  gpu: options.gpu,
108219
+ authoringSkill: options.authoringSkill,
107981
108220
  elapsedMs: Date.now() - startTime,
107982
108221
  errorMessage: message,
107983
108222
  failedStage,
@@ -107987,7 +108226,7 @@ function handleRenderError(error, options, startTime, docker, hint, failedStage,
107987
108226
  if (options.throwOnError) {
107988
108227
  throw new Error(message);
107989
108228
  }
107990
- errorBox("Render failed", message, hint);
108229
+ errorBox("Render failed", message, hint2);
107991
108230
  process.exit(1);
107992
108231
  }
107993
108232
  function trackRenderMetrics(job, elapsedMs, options, docker) {
@@ -108003,6 +108242,7 @@ function trackRenderMetrics(job, elapsedMs, options, docker) {
108003
108242
  workers: options.workers ?? perf?.workers,
108004
108243
  docker,
108005
108244
  gpu: options.gpu,
108245
+ authoringSkill: options.authoringSkill,
108006
108246
  staticDedupEnabled: perf?.staticDedup?.enabled,
108007
108247
  staticDedupArmed: perf?.staticDedup?.armed,
108008
108248
  staticDedupSkipReason: perf?.staticDedup?.skipReason,
@@ -108080,6 +108320,7 @@ var init_render2 = __esm({
108080
108320
  init_events();
108081
108321
  init_feedback();
108082
108322
  init_renderObservability();
108323
+ init_skill();
108083
108324
  init_system();
108084
108325
  init_version();
108085
108326
  init_env();
@@ -108168,6 +108409,10 @@ var init_render2 = __esm({
108168
108409
  description: "Quality: draft, standard, high",
108169
108410
  default: "standard"
108170
108411
  },
108412
+ skill: {
108413
+ type: "string",
108414
+ description: "Authoring workflow skill that initiated this render (e.g. product-launch-video). Recorded on anonymous render telemetry for per-skill usage breakdowns; ignored unless it is a slug."
108415
+ },
108171
108416
  format: {
108172
108417
  type: "string",
108173
108418
  description: "Output format: mp4, webm, mov, gif, png-sequence (MOV/WebM render with transparency; png-sequence writes RGBA frames to a directory for AE/Nuke/Fusion ingest; gif is best at 15fps for PRs/docs)",
@@ -108320,6 +108565,13 @@ var init_render2 = __esm({
108320
108565
  process.exit(1);
108321
108566
  }
108322
108567
  const quality = qualityRaw;
108568
+ const authoringSkill = normalizeSkillSlug(args.skill);
108569
+ if (typeof args.skill === "string" && args.skill.trim() !== "" && !authoringSkill) {
108570
+ process.stderr.write(
108571
+ `hyperframes: ignoring --skill="${args.skill}" \u2014 not a valid slug (lowercase letters/digits/hyphens, max 64); this render will be unattributed.
108572
+ `
108573
+ );
108574
+ }
108323
108575
  const formatRaw = args.format ?? "mp4";
108324
108576
  const format = parseRenderFormat(formatRaw);
108325
108577
  if (!format) {
@@ -108613,6 +108865,7 @@ var init_render2 = __esm({
108613
108865
  const renderOptionsBase = {
108614
108866
  fps,
108615
108867
  quality,
108868
+ authoringSkill,
108616
108869
  format,
108617
108870
  workers,
108618
108871
  gpu: useGpu,
@@ -108661,6 +108914,7 @@ var init_render2 = __esm({
108661
108914
  await renderDocker(project.dir, outputPath, {
108662
108915
  fps,
108663
108916
  quality,
108917
+ authoringSkill,
108664
108918
  format,
108665
108919
  gifLoop,
108666
108920
  workers,
@@ -108686,6 +108940,7 @@ var init_render2 = __esm({
108686
108940
  await renderLocal(project.dir, outputPath, {
108687
108941
  fps,
108688
108942
  quality,
108943
+ authoringSkill,
108689
108944
  format,
108690
108945
  gifLoop,
108691
108946
  workers,
@@ -109135,8 +109390,8 @@ async function detect(audioPath) {
109135
109390
  return await analyzeBeatsHeadless(readFileSync50(audioPath));
109136
109391
  } catch (err) {
109137
109392
  const msg = err instanceof Error ? err.message : String(err);
109138
- const hint = /chrome|executable|browser|ENOENT/i.test(msg) ? "\nRun: npx hyperframes browser ensure" : "";
109139
- fail(`Beat detection failed: ${msg}${hint}`);
109393
+ const hint2 = /chrome|executable|browser|ENOENT/i.test(msg) ? "\nRun: npx hyperframes browser ensure" : "";
109394
+ fail(`Beat detection failed: ${msg}${hint2}`);
109140
109395
  }
109141
109396
  }
109142
109397
  function report(file, result, json) {
@@ -111648,15 +111903,28 @@ __export(transcribe_exports2, {
111648
111903
  });
111649
111904
  import { existsSync as existsSync72, writeFileSync as writeFileSync30 } from "fs";
111650
111905
  import { resolve as resolve48, join as join78, extname as extname12, dirname as dirname32 } from "path";
111906
+ function failWith(message, json) {
111907
+ trackCommandFailure("transcribe", message);
111908
+ if (json) {
111909
+ console.log(JSON.stringify({ ok: false, error: message }));
111910
+ } else {
111911
+ console.error(c.error(message));
111912
+ }
111913
+ process.exit(1);
111914
+ }
111915
+ function parseExportFormat(value, json) {
111916
+ if (!value) return void 0;
111917
+ const normalized = value.toLowerCase();
111918
+ if (normalized === "srt" || normalized === "vtt") return normalized;
111919
+ failWith(`Unsupported caption export format: ${value}. Use srt or vtt.`, json);
111920
+ }
111921
+ function exitNoWords(json) {
111922
+ failWith("No words found in transcript.", json);
111923
+ }
111651
111924
  async function importTranscript(inputPath, dir, json) {
111652
111925
  const { loadTranscript: loadTranscript2, patchCaptionHtml: patchCaptionHtml2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
111653
111926
  const { words, format } = loadTranscript2(inputPath);
111654
- if (words.length === 0) {
111655
- const message = "No words found in transcript.";
111656
- trackCommandFailure("transcribe", message);
111657
- console.error(c.error(message));
111658
- process.exit(1);
111659
- }
111927
+ if (words.length === 0) exitNoWords(json);
111660
111928
  const outPath = join78(dir, "transcript.json");
111661
111929
  writeFileSync30(outPath, JSON.stringify(words, null, 2));
111662
111930
  patchCaptionHtml2(dir, words);
@@ -111670,6 +111938,24 @@ async function importTranscript(inputPath, dir, json) {
111670
111938
  );
111671
111939
  }
111672
111940
  }
111941
+ async function exportTranscript(inputPath, dir, to, output, json, preserveCues) {
111942
+ const { loadTranscript: loadTranscript2, formatSrt: formatSrt2, formatVtt: formatVtt2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
111943
+ const { words, format } = loadTranscript2(inputPath);
111944
+ if (words.length === 0) exitNoWords(json);
111945
+ const preGrouped = preserveCues || format === "srt" || format === "vtt" || void 0;
111946
+ const outPath = resolve48(output ?? join78(dir, `transcript.${to}`));
111947
+ const content = to === "srt" ? formatSrt2(words, { preGrouped }) : formatVtt2(words, { preGrouped });
111948
+ writeFileSync30(outPath, content);
111949
+ if (json) {
111950
+ console.log(
111951
+ JSON.stringify({ ok: true, format: to, wordCount: words.length, outputPath: outPath })
111952
+ );
111953
+ } else {
111954
+ console.log(
111955
+ `${c.success("\u25C7")} Exported ${c.accent(String(words.length))} words to ${c.accent(to.toUpperCase())} \u2192 ${c.accent(outPath)}`
111956
+ );
111957
+ }
111958
+ }
111673
111959
  async function transcribeAudio(inputPath, dir, opts) {
111674
111960
  const { transcribe: transcribe2 } = await Promise.resolve().then(() => (init_transcribe(), transcribe_exports));
111675
111961
  const { loadTranscript: loadTranscript2, patchCaptionHtml: patchCaptionHtml2, stripBeforeOnset: stripBeforeOnset2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
@@ -111750,7 +112036,12 @@ var init_transcribe2 = __esm({
111750
112036
  ["Use a larger model for better accuracy", "hyperframes transcribe audio.mp3 --model medium.en"],
111751
112037
  ["Set language to filter non-target speech", "hyperframes transcribe audio.mp3 --language en"],
111752
112038
  ["Import an existing SRT file", "hyperframes transcribe subtitles.srt"],
111753
- ["Import an OpenAI Whisper JSON response", "hyperframes transcribe response.json"]
112039
+ ["Import an OpenAI Whisper JSON response", "hyperframes transcribe response.json"],
112040
+ ["Export captions to SRT", "hyperframes transcribe transcript.json --to srt"],
112041
+ [
112042
+ "Export single-word/CJK captions without re-grouping",
112043
+ "hyperframes transcribe transcript.json --to vtt --preserve-cues"
112044
+ ]
111754
112045
  ];
111755
112046
  transcribe_default = defineCommand({
111756
112047
  meta: {
@@ -111783,6 +112074,20 @@ var init_transcribe2 = __esm({
111783
112074
  description: "Output result as JSON",
111784
112075
  default: false
111785
112076
  },
112077
+ to: {
112078
+ type: "string",
112079
+ description: "Export transcript sidecar format: srt or vtt"
112080
+ },
112081
+ output: {
112082
+ type: "string",
112083
+ alias: "o",
112084
+ description: "Output path for exported SRT/VTT sidecar"
112085
+ },
112086
+ "preserve-cues": {
112087
+ type: "boolean",
112088
+ description: "Keep each transcript entry as its own caption cue (skip word-level grouping). Use when exporting an already-cued transcript whose entries have no internal spaces, e.g. single-word or CJK captions.",
112089
+ default: false
112090
+ },
111786
112091
  optional: {
111787
112092
  type: "boolean",
111788
112093
  description: "Treat captions as optional: if whisper-cpp is unavailable, skip and exit 0 instead of failing. For pipelines that continue without captions.",
@@ -111800,6 +112105,16 @@ var init_transcribe2 = __esm({
111800
112105
  const dir = resolve48(args.dir ?? dirname32(inputPath));
111801
112106
  const ext = extname12(inputPath).toLowerCase();
111802
112107
  const isImport = ext === ".json" || ext === ".srt" || ext === ".vtt";
112108
+ const to = parseExportFormat(args.to, args.json);
112109
+ if (to) {
112110
+ if (!isImport) {
112111
+ failWith(
112112
+ "--to can only export from transcript files (.json, .srt, .vtt). Run transcribe first.",
112113
+ args.json
112114
+ );
112115
+ }
112116
+ return exportTranscript(inputPath, dir, to, args.output, args.json, args["preserve-cues"]);
112117
+ }
111803
112118
  if (isImport) {
111804
112119
  return importTranscript(inputPath, dir, args.json);
111805
112120
  }
@@ -111915,15 +112230,8 @@ var init_manager4 = __esm({
111915
112230
  }
111916
112231
  });
111917
112232
 
111918
- // src/tts/synthesize.ts
111919
- var synthesize_exports = {};
111920
- __export(synthesize_exports, {
111921
- synthesize: () => synthesize
111922
- });
112233
+ // src/tts/python.ts
111923
112234
  import { execFileSync as execFileSync9 } from "child_process";
111924
- import { existsSync as existsSync74, writeFileSync as writeFileSync31, mkdirSync as mkdirSync39, readdirSync as readdirSync28, unlinkSync as unlinkSync7 } from "fs";
111925
- import { join as join80, dirname as dirname33, basename as basename15 } from "path";
111926
- import { homedir as homedir11 } from "os";
111927
112235
  function findPython() {
111928
112236
  for (const name of ["python3", "python"]) {
111929
112237
  try {
@@ -111957,6 +112265,36 @@ function hasPythonPackage(python, pkg) {
111957
112265
  return false;
111958
112266
  }
111959
112267
  }
112268
+ function hasPythonModules(modules) {
112269
+ const python = findPython();
112270
+ if (!python) return false;
112271
+ const list = JSON.stringify(modules);
112272
+ const probe = `import importlib.util,sys; sys.exit(0 if all(importlib.util.find_spec(m) for m in ${list}) else 1)`;
112273
+ try {
112274
+ execFileSync9(python, ["-c", probe], {
112275
+ stdio: ["pipe", "pipe", "pipe"],
112276
+ timeout: 1e4
112277
+ });
112278
+ return true;
112279
+ } catch {
112280
+ return false;
112281
+ }
112282
+ }
112283
+ var init_python = __esm({
112284
+ "src/tts/python.ts"() {
112285
+ "use strict";
112286
+ }
112287
+ });
112288
+
112289
+ // src/tts/synthesize.ts
112290
+ var synthesize_exports = {};
112291
+ __export(synthesize_exports, {
112292
+ synthesize: () => synthesize
112293
+ });
112294
+ import { execFileSync as execFileSync10 } from "child_process";
112295
+ import { existsSync as existsSync74, writeFileSync as writeFileSync31, mkdirSync as mkdirSync39, readdirSync as readdirSync28, unlinkSync as unlinkSync7 } from "fs";
112296
+ import { join as join80, dirname as dirname33, basename as basename15 } from "path";
112297
+ import { homedir as homedir11 } from "os";
111960
112298
  function ensureSynthScript() {
111961
112299
  if (!existsSync74(SCRIPT_PATH)) {
111962
112300
  mkdirSync39(SCRIPT_DIR, { recursive: true });
@@ -112003,7 +112341,7 @@ async function synthesize(text, outputPath, options) {
112003
112341
  mkdirSync39(dirname33(outputPath), { recursive: true });
112004
112342
  options?.onProgress?.(`Generating speech with voice ${voice} (${lang})...`);
112005
112343
  try {
112006
- const stdout2 = execFileSync9(
112344
+ const stdout2 = execFileSync10(
112007
112345
  python,
112008
112346
  [scriptPath, modelPath2, voicesPath, text, voice, String(speed), outputPath, lang],
112009
112347
  {
@@ -112044,6 +112382,7 @@ var init_synthesize = __esm({
112044
112382
  "src/tts/synthesize.ts"() {
112045
112383
  "use strict";
112046
112384
  init_manager4();
112385
+ init_python();
112047
112386
  SYNTH_SCRIPT = `
112048
112387
  import sys, json, inspect
112049
112388
 
@@ -112408,6 +112747,60 @@ var init_docs = __esm({
112408
112747
  }
112409
112748
  });
112410
112749
 
112750
+ // src/audio/providers.ts
112751
+ function decideVoice(f3) {
112752
+ if (f3.hasHeygen) return { engine: "heygen", label: "HeyGen Starfish", local: false, ready: true };
112753
+ if (f3.elevenlabs) return { engine: "elevenlabs", label: "ElevenLabs", local: false, ready: true };
112754
+ return {
112755
+ engine: "kokoro",
112756
+ label: "Kokoro",
112757
+ local: true,
112758
+ ready: f3.kokoro,
112759
+ ...f3.kokoro ? {} : { setupHint: KOKORO_PIP }
112760
+ };
112761
+ }
112762
+ function decideMusic(f3) {
112763
+ if (f3.hasHeygen) return { engine: "heygen", label: "HeyGen library", local: false, ready: true };
112764
+ if (f3.lyria) return { engine: "lyria", label: "Lyria (Gemini)", local: false, ready: true };
112765
+ return {
112766
+ engine: "musicgen",
112767
+ label: "MusicGen",
112768
+ local: true,
112769
+ ready: f3.musicgen,
112770
+ ...f3.musicgen ? {} : { setupHint: MUSICGEN_PIP }
112771
+ };
112772
+ }
112773
+ function gatherVoiceFacts(hasHeygen) {
112774
+ if (hasHeygen) return { hasHeygen, elevenlabs: false, kokoro: false };
112775
+ const elevenlabs = Boolean(process.env["ELEVENLABS_API_KEY"]) && hasPythonModules(["elevenlabs"]);
112776
+ const kokoro = hasPythonModules(KOKORO_MODULES);
112777
+ return { hasHeygen, elevenlabs, kokoro };
112778
+ }
112779
+ function gatherMusicFacts(hasHeygen) {
112780
+ if (hasHeygen) return { hasHeygen, lyria: false, musicgen: false };
112781
+ const hasLyriaKey = Boolean(process.env["GEMINI_API_KEY"] || process.env["GOOGLE_API_KEY"]);
112782
+ const lyria = hasLyriaKey && hasPythonModules(["google.genai"]);
112783
+ const musicgen = hasPythonModules(MUSICGEN_MODULES);
112784
+ return { hasHeygen, lyria, musicgen };
112785
+ }
112786
+ function resolveVoice(hasHeygen) {
112787
+ return decideVoice(gatherVoiceFacts(hasHeygen));
112788
+ }
112789
+ function resolveMusic(hasHeygen) {
112790
+ return decideMusic(gatherMusicFacts(hasHeygen));
112791
+ }
112792
+ var KOKORO_MODULES, MUSICGEN_MODULES, KOKORO_PIP, MUSICGEN_PIP;
112793
+ var init_providers = __esm({
112794
+ "src/audio/providers.ts"() {
112795
+ "use strict";
112796
+ init_python();
112797
+ KOKORO_MODULES = ["kokoro_onnx", "soundfile"];
112798
+ MUSICGEN_MODULES = ["transformers", "torch", "soundfile", "numpy"];
112799
+ KOKORO_PIP = "pip install kokoro-onnx soundfile";
112800
+ MUSICGEN_PIP = "pip install transformers torch soundfile numpy";
112801
+ }
112802
+ });
112803
+
112411
112804
  // src/commands/doctor.ts
112412
112805
  var doctor_exports = {};
112413
112806
  __export(doctor_exports, {
@@ -112530,6 +112923,22 @@ async function checkWhisper() {
112530
112923
  hint: getInstallInstructions2()
112531
112924
  };
112532
112925
  }
112926
+ function checkLocalVoice() {
112927
+ if (hasPythonModules(KOKORO_MODULES)) return { ok: true, detail: "Kokoro deps installed" };
112928
+ return {
112929
+ ok: false,
112930
+ detail: "Not installed (optional \u2014 local voice fallback)",
112931
+ hint: KOKORO_PIP
112932
+ };
112933
+ }
112934
+ function checkLocalMusic() {
112935
+ if (hasPythonModules(MUSICGEN_MODULES)) return { ok: true, detail: "MusicGen deps installed" };
112936
+ return {
112937
+ ok: false,
112938
+ detail: "Not installed (optional \u2014 local music fallback)",
112939
+ hint: MUSICGEN_PIP
112940
+ };
112941
+ }
112533
112942
  function redactHome(s2) {
112534
112943
  const home = process.env["HOME"] || process.env["USERPROFILE"];
112535
112944
  if (!home) return s2;
@@ -112559,6 +112968,8 @@ var init_doctor = __esm({
112559
112968
  init_dist();
112560
112969
  init_colors();
112561
112970
  init_preflight();
112971
+ init_providers();
112972
+ init_python();
112562
112973
  init_version();
112563
112974
  init_updateCheck();
112564
112975
  init_system();
@@ -112585,6 +112996,8 @@ var init_doctor = __esm({
112585
112996
  }
112586
112997
  checks.push({ name: "Environment", run: checkEnvironment });
112587
112998
  checks.push({ name: "whisper-cpp", run: checkWhisper });
112999
+ checks.push({ name: "TTS (Kokoro)", run: checkLocalVoice });
113000
+ checks.push({ name: "BGM (MusicGen)", run: checkLocalMusic });
112588
113001
  const outcomes = [];
112589
113002
  for (const check of checks) {
112590
113003
  const result = await check.run();
@@ -112651,7 +113064,7 @@ __export(upgrade_exports, {
112651
113064
  default: () => upgrade_default,
112652
113065
  examples: () => examples22
112653
113066
  });
112654
- import { execFileSync as execFileSync10 } from "child_process";
113067
+ import { execFileSync as execFileSync11 } from "child_process";
112655
113068
  var examples22, upgrade_default;
112656
113069
  var init_upgrade = __esm({
112657
113070
  "src/commands/upgrade.ts"() {
@@ -112722,7 +113135,7 @@ var init_upgrade = __esm({
112722
113135
  console.log(` ${c.dim("Running:")} ${c.accent(installCmd)}`);
112723
113136
  console.log();
112724
113137
  try {
112725
- execFileSync10("npm", installArgs, { stdio: "inherit", shell: false });
113138
+ execFileSync11("npm", installArgs, { stdio: "inherit", shell: false });
112726
113139
  ye(c.success(`Upgraded to v${result.latest}`));
112727
113140
  } catch {
112728
113141
  ye(c.dim("Install failed. Try running manually:"));
@@ -112910,15 +113323,15 @@ var events_exports2 = {};
112910
113323
  __export(events_exports2, {
112911
113324
  default: () => events_default
112912
113325
  });
112913
- var ALLOWED_EVENTS, ALLOWED_OUTCOMES, SKILL_SLUG, events_default;
113326
+ var ALLOWED_EVENTS, ALLOWED_OUTCOMES, events_default;
112914
113327
  var init_events2 = __esm({
112915
113328
  "src/commands/events.ts"() {
112916
113329
  "use strict";
112917
113330
  init_dist();
112918
113331
  init_client();
113332
+ init_skill();
112919
113333
  ALLOWED_EVENTS = ["skill_invoked", "skill_completed"];
112920
113334
  ALLOWED_OUTCOMES = ["success", "error", "abort"];
112921
- SKILL_SLUG = /^[a-z0-9][a-z0-9-]{0,63}$/;
112922
113335
  events_default = defineCommand({
112923
113336
  meta: {
112924
113337
  name: "events",
@@ -115471,9 +115884,9 @@ var require_ponyfill_es2018 = __commonJS({
115471
115884
  return { iterator: asyncIterator, nextMethod, done: false };
115472
115885
  }
115473
115886
  const SymbolAsyncIterator = (_c2 = (_a4 = Symbol.asyncIterator) !== null && _a4 !== void 0 ? _a4 : (_b = Symbol.for) === null || _b === void 0 ? void 0 : _b.call(Symbol, "Symbol.asyncIterator")) !== null && _c2 !== void 0 ? _c2 : "@@asyncIterator";
115474
- function GetIterator(obj, hint = "sync", method) {
115887
+ function GetIterator(obj, hint2 = "sync", method) {
115475
115888
  if (method === void 0) {
115476
- if (hint === "async") {
115889
+ if (hint2 === "async") {
115477
115890
  method = GetMethod(obj, SymbolAsyncIterator);
115478
115891
  if (method === void 0) {
115479
115892
  const syncMethod = GetMethod(obj, Symbol.iterator);
@@ -157614,12 +158027,12 @@ function requireStack(stackName, cwd = process.cwd()) {
157614
158027
  const stack = readStackOutputs(stackName, cwd);
157615
158028
  if (!stack) {
157616
158029
  const known = listStackNames(cwd);
157617
- let hint = `Run \`hyperframes lambda deploy${stackName === DEFAULT_STACK_NAME ? "" : ` --stack-name=${stackName}`}\` first.`;
158030
+ let hint2 = `Run \`hyperframes lambda deploy${stackName === DEFAULT_STACK_NAME ? "" : ` --stack-name=${stackName}`}\` first.`;
157618
158031
  if (known.length) {
157619
- hint += ` Known stacks here: ${known.join(", ")}.`;
158032
+ hint2 += ` Known stacks here: ${known.join(", ")}.`;
157620
158033
  }
157621
158034
  console.error(
157622
- `[hyperframes lambda] no stack state for "${stackName}" at ${stateFilePath(stackName, cwd)}. ${hint}`
158035
+ `[hyperframes lambda] no stack state for "${stackName}" at ${stateFilePath(stackName, cwd)}. ${hint2}`
157623
158036
  );
157624
158037
  process.exit(1);
157625
158038
  }
@@ -157636,12 +158049,12 @@ var init_state = __esm({
157636
158049
  });
157637
158050
 
157638
158051
  // src/commands/lambda/sam.ts
157639
- import { execFileSync as execFileSync11, spawnSync as spawnSync4 } from "child_process";
158052
+ import { execFileSync as execFileSync12, spawnSync as spawnSync4 } from "child_process";
157640
158053
  import { existsSync as existsSync87 } from "fs";
157641
158054
  import { join as join95 } from "path";
157642
158055
  function assertSamAvailable() {
157643
158056
  try {
157644
- execFileSync11("sam", ["--version"], { stdio: "ignore" });
158057
+ execFileSync12("sam", ["--version"], { stdio: "ignore" });
157645
158058
  } catch {
157646
158059
  throw new Error(
157647
158060
  "`sam` CLI not found on PATH. Install AWS SAM CLI from https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html and retry."
@@ -157650,7 +158063,7 @@ function assertSamAvailable() {
157650
158063
  }
157651
158064
  function assertAwsCliAvailable() {
157652
158065
  try {
157653
- execFileSync11("aws", ["--version"], { stdio: "ignore" });
158066
+ execFileSync12("aws", ["--version"], { stdio: "ignore" });
157654
158067
  } catch {
157655
158068
  throw new Error(
157656
158069
  "`aws` CLI not found on PATH. Install from https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html and configure credentials before retrying."
@@ -157727,7 +158140,7 @@ function fetchStackOutputs(opts) {
157727
158140
  if (opts.awsProfile) {
157728
158141
  args.unshift("--profile", opts.awsProfile);
157729
158142
  }
157730
- const out = execFileSync11("aws", args, { encoding: "utf-8" });
158143
+ const out = execFileSync12("aws", args, { encoding: "utf-8" });
157731
158144
  const parsed = JSON.parse(out);
157732
158145
  const byKey = new Map(parsed.map((o) => [o.OutputKey, o.OutputValue]));
157733
158146
  const bucketName = byKey.get("RenderBucketName");
@@ -160232,11 +160645,11 @@ var init_errors = __esm({
160232
160645
  AuthError = class extends Error {
160233
160646
  code;
160234
160647
  hint;
160235
- constructor(code, message, hint) {
160648
+ constructor(code, message, hint2) {
160236
160649
  super(message);
160237
160650
  this.name = "AuthError";
160238
160651
  this.code = code;
160239
- this.hint = hint;
160652
+ this.hint = hint2;
160240
160653
  }
160241
160654
  };
160242
160655
  ErrNotConfigured = () => new AuthError(
@@ -161185,10 +161598,10 @@ function reportApiError(stage, err, options = {}) {
161185
161598
  errorBox("Not found", options.notFound);
161186
161599
  process.exit(1);
161187
161600
  }
161188
- const hint = err.code ? hints[err.code] : void 0;
161601
+ const hint2 = err.code ? hints[err.code] : void 0;
161189
161602
  const title = `${stage} (HTTP ${err.status})`;
161190
- if (hint) {
161191
- errorBox(title, err.message, hint);
161603
+ if (hint2) {
161604
+ errorBox(title, err.message, hint2);
161192
161605
  } else if (options.suggestion) {
161193
161606
  errorBox(title, err.message, options.suggestion);
161194
161607
  } else if (err.code) {
@@ -162367,18 +162780,92 @@ var init_login = __esm({
162367
162780
  }
162368
162781
  });
162369
162782
 
162783
+ // src/commands/auth/status-guidance.ts
162784
+ function offlineEngineLines(engines) {
162785
+ if (!engines || engines.length === 0) {
162786
+ return [
162787
+ c.dim("Prefer offline? Just continue \u2014 local engines (Kokoro \xB7 MusicGen) need no account.")
162788
+ ];
162789
+ }
162790
+ const lines = ["Prefer offline? Workflows will use these local engines:"];
162791
+ for (const e3 of engines) {
162792
+ const cap = e3.capability.padEnd(5);
162793
+ if (e3.ready) {
162794
+ lines.push(` ${cap} \u2192 ${e3.label} ${c.success("\u2713 ready")}`);
162795
+ } else {
162796
+ lines.push(` ${cap} \u2192 ${e3.label} ${c.warn("\u26A0 deps missing")}`);
162797
+ if (e3.setupHint) lines.push(` ${c.dim(e3.setupHint)}`);
162798
+ }
162799
+ }
162800
+ if (engines.some((e3) => !e3.ready)) {
162801
+ lines.push(c.dim(" (or run `hyperframes doctor` to check the local toolchain)"));
162802
+ }
162803
+ return lines;
162804
+ }
162805
+ function buildUnconfiguredLines(ctx, engines) {
162806
+ if (!ctx.interactive) {
162807
+ return [
162808
+ c.warn("Not signed in to HeyGen (non-interactive)."),
162809
+ c.dim(
162810
+ "Set HEYGEN_API_KEY to use HeyGen, or workflows fall back to local engines (Kokoro voice \xB7 MusicGen music)."
162811
+ )
162812
+ ];
162813
+ }
162814
+ return [
162815
+ c.warn("Not signed in to HeyGen \u2014 voice & music will use local engines (free, offline)."),
162816
+ "",
162817
+ "Sign in or sign up (browser OAuth, writes ~/.heygen \u2014 no per-repo .env):",
162818
+ ` ${c.accent("npx hyperframes auth login")} ${c.dim("# browser sign-in / sign-up")}`,
162819
+ "",
162820
+ "Or paste an existing HeyGen API key (get one at app.heygen.com/settings/api):",
162821
+ ` ${c.accent("npx hyperframes auth login --api-key")} ${c.dim("# paste at the prompt")}`,
162822
+ "",
162823
+ ...offlineEngineLines(engines)
162824
+ ];
162825
+ }
162826
+ function buildUnconfiguredJson(ctx, engines) {
162827
+ return {
162828
+ configured: false,
162829
+ interactive: ctx.interactive,
162830
+ recommended_action: RECOMMENDED_ACTION,
162831
+ fallback: "local",
162832
+ ...engines ? { offline_engines: engines } : {}
162833
+ };
162834
+ }
162835
+ var RECOMMENDED_ACTION;
162836
+ var init_status_guidance = __esm({
162837
+ "src/commands/auth/status-guidance.ts"() {
162838
+ "use strict";
162839
+ init_colors();
162840
+ RECOMMENDED_ACTION = "npx hyperframes auth login";
162841
+ }
162842
+ });
162843
+
162370
162844
  // src/commands/auth/status.ts
162371
162845
  var status_exports = {};
162372
162846
  __export(status_exports, {
162373
162847
  default: () => status_default
162374
162848
  });
162849
+ function detectUnconfiguredContext() {
162850
+ const sys = getSystemMeta();
162851
+ return { interactive: !sys.is_ci && (sys.is_tty || sys.agent_runtime !== null) };
162852
+ }
162853
+ function collectOfflineEngines() {
162854
+ const voice = resolveVoice(false);
162855
+ const music = resolveMusic(false);
162856
+ return [
162857
+ { capability: "voice", label: voice.label, ready: voice.ready, ...hint(voice.setupHint) },
162858
+ { capability: "music", label: music.label, ready: music.ready, ...hint(music.setupHint) }
162859
+ ];
162860
+ }
162861
+ function hint(setupHint) {
162862
+ return setupHint ? { setupHint } : {};
162863
+ }
162375
162864
  function handleUnconfigured(asJson) {
162376
- if (asJson) {
162377
- console.log(JSON.stringify({ configured: false }));
162378
- } else {
162379
- console.log(c.warn("Not signed in to HeyGen."));
162380
- console.log(`Run ${c.accent("hyperframes auth login --api-key")} to sign in.`);
162381
- }
162865
+ const ctx = detectUnconfiguredContext();
162866
+ const engines = asJson || ctx.interactive ? collectOfflineEngines() : void 0;
162867
+ const output = asJson ? JSON.stringify(buildUnconfiguredJson(ctx, engines)) : buildUnconfiguredLines(ctx, engines).join("\n");
162868
+ console.log(output);
162382
162869
  process.exit(1);
162383
162870
  }
162384
162871
  function handleResolveError(err, asJson) {
@@ -162497,7 +162984,10 @@ var init_status = __esm({
162497
162984
  "use strict";
162498
162985
  init_dist();
162499
162986
  init_auth2();
162987
+ init_system();
162500
162988
  init_colors();
162989
+ init_providers();
162990
+ init_status_guidance();
162501
162991
  status_default = defineCommand({
162502
162992
  meta: { name: "status", description: "Show the active HeyGen credential" },
162503
162993
  args: {