hyperframes 0.7.5 → 0.7.7

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.7" : "0.0.0-dev";
54
54
  }
55
55
  });
56
56
 
@@ -22507,10 +22507,23 @@ 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) {
22514
+ upsertProp(ms, kfNode, "easeEach", easeValue);
22515
+ if (updates.resetKeyframeEases) {
22516
+ for (const kfEntry of kfNode.properties ?? []) {
22517
+ if (!isObjectProperty2(kfEntry)) continue;
22518
+ const val = kfEntry.value;
22519
+ if (val?.type !== "ObjectExpression") continue;
22520
+ const easeNode = findPropertyNode2(val, "ease");
22521
+ if (easeNode) removeProp(ms, easeNode, val.properties);
22522
+ }
22523
+ }
22524
+ } else {
22525
+ upsertProp(ms, call.varsArg, "ease", easeValue);
22526
+ }
22514
22527
  }
22515
22528
  if (updates.extras) {
22516
22529
  for (const [key2, value] of Object.entries(updates.extras)) {
@@ -23063,13 +23076,13 @@ function materializeKeyframesFromScript(script, animationId, keyframes, easeEach
23063
23076
  }
23064
23077
  return ms.toString();
23065
23078
  }
23066
- function addAnimationWithKeyframesToScript(script, targetSelector, position, duration, keyframes, ease) {
23079
+ function addAnimationWithKeyframesToScript(script, targetSelector, position, duration, keyframes, ease, easeEach) {
23067
23080
  const parsed = parseGsapScriptAcornForWrite(script);
23068
23081
  if (!parsed) return { script, id: "" };
23069
23082
  const insertionPoint = findInsertionPoint(parsed);
23070
23083
  if (insertionPoint === null) return { script, id: "" };
23071
23084
  const sorted = [...keyframes].sort((a, b2) => a.percentage - b2.percentage);
23072
- const kfObjCode = buildKeyframeObjectCode(sorted);
23085
+ const kfObjCode = buildKeyframeObjectCode(sorted, easeEach);
23073
23086
  const varParts = [`keyframes: ${kfObjCode}`, `duration: ${valueToCode(duration)}`];
23074
23087
  if (ease) varParts.push(`ease: ${JSON.stringify(ease)}`);
23075
23088
  const stmtCode = `${parsed.timelineVar}.to(${JSON.stringify(targetSelector)}, { ${varParts.join(", ")} }, ${valueToCode(position)});`;
@@ -25203,6 +25216,26 @@ function stripJsComments(source) {
25203
25216
  }
25204
25217
  return out;
25205
25218
  }
25219
+ function stripHtmlCommentsOnce(source) {
25220
+ let out = "";
25221
+ let i2 = 0;
25222
+ for (; ; ) {
25223
+ const start = source.indexOf("<!--", i2);
25224
+ if (start < 0) return out + source.slice(i2);
25225
+ const end = source.indexOf("-->", start + 4);
25226
+ if (end < 0) return out + source.slice(i2);
25227
+ out += source.slice(i2, start);
25228
+ i2 = end + 3;
25229
+ }
25230
+ }
25231
+ function stripHtmlComments(source) {
25232
+ let out = source;
25233
+ for (let prev = ""; prev !== out; ) {
25234
+ prev = out;
25235
+ out = stripHtmlCommentsOnce(out);
25236
+ }
25237
+ return out;
25238
+ }
25206
25239
  function extractScriptTextsAndSrcs(scripts) {
25207
25240
  const texts = scripts.filter((s2) => !/\bsrc\s*=/.test(s2.attrs)).map((s2) => s2.content);
25208
25241
  const srcs = scripts.map((s2) => readAttr(`<script ${s2.attrs}>`, "src") || "").filter(Boolean);
@@ -25236,7 +25269,7 @@ var init_utils2 = __esm({
25236
25269
  // ../core/src/lint/context.ts
25237
25270
  function buildLintContext(html, options = {}) {
25238
25271
  const rawSource = html || "";
25239
- let source = rawSource;
25272
+ let source = stripHtmlComments(rawSource);
25240
25273
  const templateMatch = source.match(/<template[^>]*>([\s\S]*)<\/template>/i);
25241
25274
  if (templateMatch?.[1]) source = templateMatch[1];
25242
25275
  const tags = extractOpenTags(source);
@@ -25540,13 +25573,13 @@ var init_core = __esm({
25540
25573
  ];
25541
25574
  for (const script of scripts) {
25542
25575
  const stripped = stripJsComments(script.content);
25543
- for (const { pattern, label: label2, hint } of patterns) {
25576
+ for (const { pattern, label: label2, hint: hint2 } of patterns) {
25544
25577
  if (pattern.test(stripped)) {
25545
25578
  findings.push({
25546
25579
  code: "non_deterministic_code",
25547
25580
  severity: "error",
25548
25581
  message: `Script contains \`${label2}\` which produces non-deterministic output. Renders may differ between frames or runs.`,
25549
- fixHint: hint,
25582
+ fixHint: hint2,
25550
25583
  snippet: truncateSnippet(script.content)
25551
25584
  });
25552
25585
  }
@@ -27103,6 +27136,17 @@ function isCompositionRootOrMount(rawTag) {
27103
27136
  readAttr(rawTag, "data-composition-id") || readAttr(rawTag, "data-composition-src")
27104
27137
  );
27105
27138
  }
27139
+ function extractCssUrlReferences(css) {
27140
+ const out = [];
27141
+ const noComments = css.replace(/\/\*[\s\S]*?\*\//g, "");
27142
+ const urlPattern = /\burl\(\s*(["']?)([^)"']+)\1\s*\)/g;
27143
+ let m2;
27144
+ while ((m2 = urlPattern.exec(noComments)) !== null) {
27145
+ const raw = (m2[2] ?? "").trim();
27146
+ if (raw) out.push(raw);
27147
+ }
27148
+ return out;
27149
+ }
27106
27150
  function extractCssSelectors(css) {
27107
27151
  const out = [];
27108
27152
  const noComments = css.replace(/\/\*[\s\S]*?\*\//g, "");
@@ -27142,20 +27186,56 @@ var init_composition = __esm({
27142
27186
  MAX_TIMED_ELEMENTS_PER_TRACK = 3;
27143
27187
  TRACK_DENSITY_EXEMPT_TAGS = /* @__PURE__ */ new Set(["audio", "script", "style", "video"]);
27144
27188
  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 }) => {
27189
+ // invalid_parent_traversal_in_asset_path — catches `../` traversal in src,
27190
+ // href, inline-style url(), and <style> url() asset references on
27191
+ // compositions. Sub-compositions live under compositions/ but are served
27192
+ // with the project root as their base URL, so any `../`-traversing path
27193
+ // climbs above the project root and 404s in Studio preview. Renders
27194
+ // tolerate it because the server-side bundler rewrites `../foo` against
27195
+ // each sub-composition's source path; the runtime now mirrors that fallback
27196
+ // (see rewriteSubCompositionAssetPaths in runtime/compositionLoader.ts), but
27197
+ // the authoring-time signal is still wrong — flag it at lint time so the
27198
+ // baked path is plain root-relative and matches what the bundler emits.
27199
+ //
27200
+ // Mirrors the runtime fallback's surface: `[src]` / `[href]` attribute
27201
+ // values, `[style]` inline url(), and `<style>` block url() references.
27202
+ // Skips absolute URLs (http(s)://, //, data:, /-prefixed root-relative),
27203
+ // hash anchors, and plain relative paths (`assets/x.mp4`) — only `../`
27204
+ // traversal is flagged. Subsumes the older `../capture/`-specific rule.
27205
+ // fallow-ignore-next-line complexity
27206
+ ({ tags, styles, rawSource, options }) => {
27150
27207
  if (isRegistrySourceFile(options.filePath) || isRegistryInstalledFile(rawSource)) return [];
27151
- const matches2 = rawSource.match(/\.\.\/capture\//g);
27152
- if (!matches2 || matches2.length === 0) return [];
27208
+ const offenders = [];
27209
+ const collect = (value) => {
27210
+ if (!value) return;
27211
+ const trimmed = value.trim();
27212
+ if (!trimmed.startsWith("../") && trimmed !== "..") return;
27213
+ offenders.push(trimmed);
27214
+ };
27215
+ for (const tag of tags) {
27216
+ collect(readAttr(tag.raw, "src"));
27217
+ collect(readAttr(tag.raw, "href"));
27218
+ const styleAttr = readJsonAttr(tag.raw, "style");
27219
+ if (styleAttr) {
27220
+ for (const url of extractCssUrlReferences(styleAttr)) collect(url);
27221
+ }
27222
+ }
27223
+ for (const style of styles) {
27224
+ for (const url of extractCssUrlReferences(style.content)) collect(url);
27225
+ }
27226
+ if (offenders.length === 0) return [];
27227
+ const prefixCounts = /* @__PURE__ */ new Map();
27228
+ for (const path2 of offenders) {
27229
+ const prefix = path2.match(/^(?:\.\.\/)+[^/]+\//)?.[0] ?? path2;
27230
+ prefixCounts.set(prefix, (prefixCounts.get(prefix) ?? 0) + 1);
27231
+ }
27232
+ const prefixSummary = Array.from(prefixCounts.entries()).sort(([, a], [, b2]) => b2 - a).map(([prefix, count]) => count > 1 ? `${prefix} (${count})` : prefix).join(", ");
27153
27233
  return [
27154
27234
  {
27155
- code: "invalid_capture_path",
27235
+ code: "invalid_parent_traversal_in_asset_path",
27156
27236
  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.'
27237
+ 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.`,
27238
+ 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
27239
  }
27160
27240
  ];
27161
27241
  },
@@ -28877,7 +28957,7 @@ var RUNTIME_IIFE;
28877
28957
  var init_runtime_inline = __esm({
28878
28958
  "../core/src/generated/runtime-inline.ts"() {
28879
28959
  "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';
28960
+ 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
28961
  }
28882
28962
  });
28883
28963
 
@@ -33354,6 +33434,9 @@ async function getCdpSession(page) {
33354
33434
  }
33355
33435
  return client;
33356
33436
  }
33437
+ function shouldDefaultCaptureBeyondViewport(browserVersion, platform10 = process.platform) {
33438
+ return platform10 === "darwin" && browserVersion.startsWith("Chrome/");
33439
+ }
33357
33440
  async function sendBeginFrame(client, params) {
33358
33441
  for (let attempt = 0; ; attempt++) {
33359
33442
  try {
@@ -33765,6 +33848,12 @@ async function driveWarmupTicks(options, state) {
33765
33848
  await sleep3(options.intervalMs);
33766
33849
  }
33767
33850
  }
33851
+ function resolveCaptureSessionOptions(options, browserVersion, platform10 = process.platform) {
33852
+ return {
33853
+ ...options,
33854
+ captureBeyondViewport: options.captureBeyondViewport ?? shouldDefaultCaptureBeyondViewport(browserVersion, platform10)
33855
+ };
33856
+ }
33768
33857
  async function waitForCloseWithTimeout(promise) {
33769
33858
  let timedOut = false;
33770
33859
  let timer;
@@ -33817,6 +33906,7 @@ async function createCaptureSession(serverUrl, outputDir, options, onBeforeCaptu
33817
33906
  }, variablesJson);
33818
33907
  }
33819
33908
  const browserVersion = await browser.version();
33909
+ const sessionOptions = resolveCaptureSessionOptions(options, browserVersion);
33820
33910
  const expectedMajor = config?.expectedChromiumMajor;
33821
33911
  if (Number.isFinite(expectedMajor)) {
33822
33912
  const actualChromiumMajor = Number.parseInt(
@@ -33830,15 +33920,15 @@ async function createCaptureSession(serverUrl, outputDir, options, onBeforeCaptu
33830
33920
  }
33831
33921
  }
33832
33922
  const viewport = {
33833
- width: options.width,
33834
- height: options.height,
33835
- deviceScaleFactor: options.deviceScaleFactor || 1
33923
+ width: sessionOptions.width,
33924
+ height: sessionOptions.height,
33925
+ deviceScaleFactor: sessionOptions.deviceScaleFactor || 1
33836
33926
  };
33837
33927
  await page.setViewport(viewport);
33838
33928
  return {
33839
33929
  browser,
33840
33930
  page,
33841
- options,
33931
+ options: sessionOptions,
33842
33932
  serverUrl,
33843
33933
  outputDir,
33844
33934
  onBeforeCapture,
@@ -34033,17 +34123,17 @@ async function applyVideoMetadataHints(page, hints) {
34033
34123
  if (!hints || hints.length === 0) return;
34034
34124
  await page.evaluate(
34035
34125
  (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) {
34126
+ for (const hint2 of metadataHints) {
34127
+ if (!hint2.id || !Number.isFinite(hint2.width) || !Number.isFinite(hint2.height) || hint2.width <= 0 || hint2.height <= 0) {
34038
34128
  continue;
34039
34129
  }
34040
- const video = document.getElementById(hint.id);
34130
+ const video = document.getElementById(hint2.id);
34041
34131
  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));
34132
+ if (!video.hasAttribute("width")) video.setAttribute("width", String(hint2.width));
34133
+ if (!video.hasAttribute("height")) video.setAttribute("height", String(hint2.height));
34044
34134
  const computed = window.getComputedStyle(video);
34045
34135
  if (!video.style.aspectRatio && (!computed.aspectRatio || computed.aspectRatio === "auto")) {
34046
- video.style.aspectRatio = `${hint.width} / ${hint.height}`;
34136
+ video.style.aspectRatio = `${hint2.width} / ${hint2.height}`;
34047
34137
  }
34048
34138
  }
34049
34139
  },
@@ -34774,6 +34864,7 @@ var init_frameCapture = __esm({
34774
34864
  /Execution context was destroyed/i,
34775
34865
  /Cannot find context with specified id/i,
34776
34866
  /Failed to launch the browser process/i,
34867
+ /Navigation timeout of \d+ ms exceeded/i,
34777
34868
  /ECONNREFUSED/i
34778
34869
  ];
34779
34870
  }
@@ -42650,6 +42741,7 @@ function trackRenderComplete(props) {
42650
42741
  duration_ms: props.durationMs,
42651
42742
  fps: props.fps,
42652
42743
  quality: props.quality,
42744
+ authoring_skill: props.authoringSkill,
42653
42745
  workers: props.workers,
42654
42746
  docker: props.docker,
42655
42747
  gpu: props.gpu,
@@ -42698,6 +42790,7 @@ function trackRenderError(props) {
42698
42790
  {
42699
42791
  fps: props.fps,
42700
42792
  quality: props.quality,
42793
+ authoring_skill: props.authoringSkill,
42701
42794
  docker: props.docker,
42702
42795
  workers: props.workers,
42703
42796
  gpu: props.gpu,
@@ -45634,9 +45727,12 @@ var init_manager = __esm({
45634
45727
  var normalize_exports = {};
45635
45728
  __export(normalize_exports, {
45636
45729
  detectFormat: () => detectFormat,
45730
+ formatSrt: () => formatSrt,
45731
+ formatVtt: () => formatVtt,
45637
45732
  loadTranscript: () => loadTranscript,
45638
45733
  patchCaptionHtml: () => patchCaptionHtml,
45639
- stripBeforeOnset: () => stripBeforeOnset
45734
+ stripBeforeOnset: () => stripBeforeOnset,
45735
+ wordsToCues: () => wordsToCues
45640
45736
  });
45641
45737
  import { readFileSync as readFileSync12, readdirSync as readdirSync7, writeFileSync as writeFileSync8 } from "fs";
45642
45738
  import { extname as extname5, join as join18 } from "path";
@@ -45789,9 +45885,104 @@ function parseVttTimestamp(ts) {
45789
45885
  }
45790
45886
  return 0;
45791
45887
  }
45888
+ function formatSrtTimestamp(seconds) {
45889
+ const { hours, minutes, wholeSeconds, milliseconds } = timestampParts(seconds);
45890
+ return `${pad2(hours)}:${pad2(minutes)}:${pad2(wholeSeconds)},${pad3(milliseconds)}`;
45891
+ }
45892
+ function formatVttTimestamp(seconds) {
45893
+ const { hours, minutes, wholeSeconds, milliseconds } = timestampParts(seconds);
45894
+ return `${pad2(hours)}:${pad2(minutes)}:${pad2(wholeSeconds)}.${pad3(milliseconds)}`;
45895
+ }
45792
45896
  function round3(n2) {
45793
45897
  return Math.round(n2 * 1e3) / 1e3;
45794
45898
  }
45899
+ function timestampParts(seconds) {
45900
+ const safeSeconds = Number.isFinite(seconds) ? seconds : 0;
45901
+ const totalMs = Math.max(0, Math.round(safeSeconds * 1e3));
45902
+ const milliseconds = totalMs % 1e3;
45903
+ const totalSeconds = (totalMs - milliseconds) / 1e3;
45904
+ const wholeSeconds = totalSeconds % 60;
45905
+ const totalMinutes = (totalSeconds - wholeSeconds) / 60;
45906
+ const minutes = totalMinutes % 60;
45907
+ const hours = (totalMinutes - minutes) / 60;
45908
+ return { hours, minutes, wholeSeconds, milliseconds };
45909
+ }
45910
+ function pad2(n2) {
45911
+ return n2.toString().padStart(2, "0");
45912
+ }
45913
+ function pad3(n2) {
45914
+ return n2.toString().padStart(3, "0");
45915
+ }
45916
+ function endsSentence(text) {
45917
+ return /[.!?][)"'\]}]*$/.test(text);
45918
+ }
45919
+ function pushCue(cues, cue) {
45920
+ if (!cue) return;
45921
+ const text = cue.text.trim();
45922
+ if (!text) return;
45923
+ cues.push({ text, start: round3(cue.start), end: round3(cue.end) });
45924
+ }
45925
+ function breaksCue(current2, word, text, maxChars, maxGap) {
45926
+ const nextLength = current2.text.length + 1 + text.length;
45927
+ const gap = word.start - current2.end;
45928
+ return nextLength > maxChars || gap > maxGap;
45929
+ }
45930
+ function entriesToCues(words) {
45931
+ const cues = [];
45932
+ for (const word of words) {
45933
+ pushCue(cues, { text: word.text, start: word.start, end: word.end });
45934
+ }
45935
+ return cues;
45936
+ }
45937
+ function joinTokens(left, right) {
45938
+ const a = left.at(-1) ?? "";
45939
+ const b2 = right[0] ?? "";
45940
+ const sep8 = CJK_CHAR.test(a) || CJK_CHAR.test(b2) ? "" : " ";
45941
+ return `${left}${sep8}${right}`;
45942
+ }
45943
+ function wordsToCues(words, opts = {}) {
45944
+ const preGrouped = opts.preGrouped ?? words.some((w3) => /\s/.test(w3.text.trim()));
45945
+ if (preGrouped) return entriesToCues(words);
45946
+ const maxChars = opts.maxChars ?? 42;
45947
+ const maxGap = opts.maxGap ?? 0.8;
45948
+ const cues = [];
45949
+ let current2;
45950
+ const flush2 = () => {
45951
+ pushCue(cues, current2);
45952
+ current2 = void 0;
45953
+ };
45954
+ for (const word of words) {
45955
+ const text = word.text.trim();
45956
+ if (!text) continue;
45957
+ if (current2 && !breaksCue(current2, word, text, maxChars, maxGap)) {
45958
+ current2.text = joinTokens(current2.text, text);
45959
+ current2.end = word.end;
45960
+ } else {
45961
+ flush2();
45962
+ current2 = { text, start: word.start, end: word.end };
45963
+ }
45964
+ if (endsSentence(text)) flush2();
45965
+ }
45966
+ flush2();
45967
+ return cues;
45968
+ }
45969
+ function formatSrt(words, opts) {
45970
+ const cues = wordsToCues(words, opts);
45971
+ if (cues.length === 0) return "";
45972
+ return cues.map(
45973
+ (cue, i2) => `${i2 + 1}
45974
+ ${formatSrtTimestamp(cue.start)} --> ${formatSrtTimestamp(cue.end)}
45975
+ ${cue.text}`
45976
+ ).join("\n\n") + "\n";
45977
+ }
45978
+ function formatVtt(words, opts) {
45979
+ const cues = wordsToCues(words, opts);
45980
+ if (cues.length === 0) return "WEBVTT\n\n";
45981
+ return "WEBVTT\n\n" + cues.map(
45982
+ (cue) => `${formatVttTimestamp(cue.start)} --> ${formatVttTimestamp(cue.end)}
45983
+ ${cue.text}`
45984
+ ).join("\n\n") + "\n";
45985
+ }
45795
45986
  function loadTranscript(filePath) {
45796
45987
  const ext = extname5(filePath).toLowerCase();
45797
45988
  const content = readFileSync12(filePath, "utf-8");
@@ -45842,9 +46033,11 @@ function patchCaptionHtml(dir, words) {
45842
46033
  }
45843
46034
  }
45844
46035
  }
46036
+ var CJK_CHAR;
45845
46037
  var init_normalize = __esm({
45846
46038
  "src/whisper/normalize.ts"() {
45847
46039
  "use strict";
46040
+ CJK_CHAR = /[ -〿぀-ヿ㐀-䶿一-鿿豈-﫿＀-￯]/;
45848
46041
  }
45849
46042
  });
45850
46043
 
@@ -46616,6 +46809,7 @@ function lintMultipleRootCompositions(projectDir) {
46616
46809
  const rootHtmlFiles = readdirSync8(projectDir).filter((f3) => f3.endsWith(".html"));
46617
46810
  const rootCompositions = [];
46618
46811
  for (const file of rootHtmlFiles) {
46812
+ if (file === "caption-skin.html") continue;
46619
46813
  const content = readFileSync15(join21(projectDir, file), "utf-8");
46620
46814
  if (/data-composition-id/i.test(content)) {
46621
46815
  rootCompositions.push(file);
@@ -47100,11 +47294,11 @@ function label(name, value) {
47100
47294
  const pad = 14 - name.length;
47101
47295
  return ` ${c.dim(name)}${" ".repeat(Math.max(1, pad))}${c.bold(value)}`;
47102
47296
  }
47103
- function errorBox(title, hint, suggestion) {
47297
+ function errorBox(title, hint2, suggestion) {
47104
47298
  console.error(`
47105
47299
  ${c.error("\u2717")} ${c.bold(title)}`);
47106
- if (hint) console.error(`
47107
- ${c.dim(hint)}`);
47300
+ if (hint2) console.error(`
47301
+ ${c.dim(hint2)}`);
47108
47302
  if (suggestion) console.error(` ${c.accent(suggestion)}`);
47109
47303
  console.error();
47110
47304
  }
@@ -47164,11 +47358,11 @@ var init_project = __esm({
47164
47358
  title;
47165
47359
  hint;
47166
47360
  suggestion;
47167
- constructor(title, hint, suggestion) {
47361
+ constructor(title, hint2, suggestion) {
47168
47362
  super(title);
47169
47363
  this.name = "InvalidProjectError";
47170
47364
  this.title = title;
47171
- this.hint = hint;
47365
+ this.hint = hint2;
47172
47366
  this.suggestion = suggestion;
47173
47367
  }
47174
47368
  };
@@ -84402,13 +84596,23 @@ function applyEaseUpdate(varsArg, ease) {
84402
84596
  setVarsKey(varsArg, "ease", ease);
84403
84597
  }
84404
84598
  }
84599
+ function stripKeyframeEases(varsArg) {
84600
+ const kfNode = findKeyframesObjectNode(varsArg);
84601
+ const props = kfNode?.properties;
84602
+ if (!Array.isArray(props)) return;
84603
+ for (const entry of props) {
84604
+ if (isObjectProperty3(entry)) removeVarsKey(entry.value, "ease");
84605
+ }
84606
+ }
84405
84607
  function applyUpdatesToCall(call, updates) {
84406
84608
  if (updates.properties) reconcileEditableProperties(call.varsArg, updates.properties);
84407
84609
  if (updates.fromProperties && call.method === "fromTo" && call.fromArg) {
84408
84610
  reconcileEditableProperties(call.fromArg, updates.fromProperties);
84409
84611
  }
84410
84612
  if (updates.duration !== void 0) setVarsKey(call.varsArg, "duration", updates.duration);
84411
- if (updates.ease !== void 0) applyEaseUpdate(call.varsArg, updates.ease);
84613
+ if (updates.easeEach !== void 0) applyEaseUpdate(call.varsArg, updates.easeEach);
84614
+ else if (updates.ease !== void 0) applyEaseUpdate(call.varsArg, updates.ease);
84615
+ if (updates.resetKeyframeEases) stripKeyframeEases(call.varsArg);
84412
84616
  if (updates.position !== void 0) {
84413
84617
  const posIdx = call.method === "fromTo" ? 3 : 2;
84414
84618
  call.node.arguments[posIdx] = parseExpr(serializeValue(updates.position));
@@ -84437,6 +84641,7 @@ function buildTweenStatementCode2(timelineVar, anim) {
84437
84641
  if (anim.method !== "set" && anim.duration !== void 0) props.duration = anim.duration;
84438
84642
  if (anim.ease) props.ease = anim.ease;
84439
84643
  const entries2 = Object.entries(props).map(([k2, v2]) => `${safeJsKey(k2)}: ${serializeValue(v2)}`);
84644
+ if (anim.method === "set") entries2.push("immediateRender: true");
84440
84645
  if (anim.extras) {
84441
84646
  for (const [k2, v2] of Object.entries(anim.extras)) {
84442
84647
  entries2.push(`${safeJsKey(k2)}: ${serializeValue(v2)}`);
@@ -84550,7 +84755,7 @@ function addAnimationToScript2(script, animation) {
84550
84755
  insertAfterAnchor(parsed, newStatement);
84551
84756
  return { script: recast.print(parsed.ast).code, id };
84552
84757
  }
84553
- function addAnimationWithKeyframesToScript2(script, targetSelector, position, duration, keyframes, ease) {
84758
+ function addAnimationWithKeyframesToScript2(script, targetSelector, position, duration, keyframes, ease, easeEach) {
84554
84759
  let parsed;
84555
84760
  try {
84556
84761
  parsed = parseGsapAst(script);
@@ -84562,7 +84767,7 @@ function addAnimationWithKeyframesToScript2(script, targetSelector, position, du
84562
84767
  return { script, id: "" };
84563
84768
  }
84564
84769
  const selector = JSON.stringify(targetSelector);
84565
- const kfCode = buildKeyframeObjectCode2(keyframes);
84770
+ const kfCode = buildKeyframeObjectCode2(keyframes, easeEach ? { easeEach } : void 0);
84566
84771
  const varEntries = [`keyframes: ${kfCode}`, `duration: ${serializeValue(duration)}`];
84567
84772
  if (ease) varEntries.push(`ease: ${JSON.stringify(ease)}`);
84568
84773
  const posCode = serializeValue(position);
@@ -85071,6 +85276,23 @@ function updateKeyframeInScript2(script, animationId, percentage, properties, ea
85071
85276
  const { loc, kfNode } = ctx;
85072
85277
  const match = findKeyframePropByPct(kfNode, percentage);
85073
85278
  if (!match) return script;
85279
+ if (Object.keys(properties).length === 0 && ease) {
85280
+ const existing = match.prop.value;
85281
+ if (existing?.type === "ObjectExpression") {
85282
+ const props = existing.properties ?? [];
85283
+ const easeIdx = props.findIndex(
85284
+ (p2) => isObjectProperty3(p2) && propKeyName3(p2) === "ease"
85285
+ );
85286
+ const easeNode = parseExpr(`({ ease: ${JSON.stringify(ease)} })`).properties[0];
85287
+ if (easeIdx >= 0) {
85288
+ props[easeIdx] = easeNode;
85289
+ } else {
85290
+ props.push(easeNode);
85291
+ }
85292
+ return recast.print(loc.parsed.ast).code;
85293
+ }
85294
+ return script;
85295
+ }
85074
85296
  match.prop.value = buildKeyframeValueNode(properties, ease);
85075
85297
  return recast.print(loc.parsed.ast).code;
85076
85298
  }
@@ -85981,7 +86203,8 @@ function executeGsapMutationAcorn(body, block, respond2) {
85981
86203
  body.position,
85982
86204
  body.duration,
85983
86205
  body.keyframes,
85984
- body.ease
86206
+ body.ease,
86207
+ body.easeEach
85985
86208
  );
85986
86209
  return result.script;
85987
86210
  }
@@ -96802,8 +97025,8 @@ async function runProbeStage(input2) {
96802
97025
  });
96803
97026
  diagnostics.push("(Could not gather browser diagnostics \u2014 page may have crashed)");
96804
97027
  }
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);
97028
+ const hint2 = diagnostics.length > 0 ? "\n\nDiagnostics:\n - " + diagnostics.join("\n - ") : "\n\nCheck that GSAP timelines are registered on window.__timelines.";
97029
+ throw new Error("Composition duration is 0 \u2014 this would produce a black video." + hint2);
96807
97030
  }
96808
97031
  if (probeSession) {
96809
97032
  const failedRequests = probeSession.browserConsoleBuffer.filter(
@@ -97034,6 +97257,7 @@ async function runCaptureStage(input2) {
97034
97257
  } = input2;
97035
97258
  let { workerCount, probeSession } = input2;
97036
97259
  let lastBrowserConsole = [];
97260
+ let captureBeyondViewport = probeSession?.options.captureBeyondViewport;
97037
97261
  const captureCfg = cfg.forceScreenshot === forceScreenshot ? cfg : { ...cfg, forceScreenshot };
97038
97262
  if (frameRange !== void 0) {
97039
97263
  if (!Number.isFinite(frameRange.startFrame) || !Number.isFinite(frameRange.endFrame) || frameRange.startFrame < 0 || frameRange.endFrame <= frameRange.startFrame) {
@@ -97085,6 +97309,7 @@ async function runCaptureStage(input2) {
97085
97309
  workerCount = lastAttempt.workers;
97086
97310
  }
97087
97311
  if (probeSession) {
97312
+ captureBeyondViewport = probeSession.options.captureBeyondViewport;
97088
97313
  lastBrowserConsole = probeSession.browserConsoleBuffer;
97089
97314
  await closeCaptureSession(probeSession);
97090
97315
  probeSession = null;
@@ -97098,6 +97323,7 @@ async function runCaptureStage(input2) {
97098
97323
  videoInjector,
97099
97324
  captureCfg
97100
97325
  );
97326
+ captureBeyondViewport = session.options.captureBeyondViewport;
97101
97327
  if (probeSession) {
97102
97328
  prepareCaptureSessionForReuse(session, framesDir, videoInjector);
97103
97329
  probeSession = null;
@@ -97136,7 +97362,7 @@ async function runCaptureStage(input2) {
97136
97362
  await closeCaptureSession(session);
97137
97363
  }
97138
97364
  }
97139
- return { workerCount, probeSession, lastBrowserConsole };
97365
+ return { workerCount, probeSession, lastBrowserConsole, captureBeyondViewport };
97140
97366
  }
97141
97367
  var init_captureStage = __esm({
97142
97368
  "../producer/src/services/render/stages/captureStage.ts"() {
@@ -97844,6 +98070,7 @@ async function runCaptureStreamingStage(input2) {
97844
98070
  } = input2;
97845
98071
  let { workerCount, probeSession } = input2;
97846
98072
  let lastBrowserConsole = [];
98073
+ let captureBeyondViewport = probeSession?.options.captureBeyondViewport;
97847
98074
  const captureCfg = cfg.forceScreenshot === forceScreenshot ? cfg : { ...cfg, forceScreenshot };
97848
98075
  let streamingEncoder = null;
97849
98076
  let streamingEncoderClosed = false;
@@ -97908,6 +98135,7 @@ async function runCaptureStreamingStage(input2) {
97908
98135
  );
97909
98136
  pushWorkerDedupPerfs(workerResults, dedupPerfs);
97910
98137
  if (probeSession) {
98138
+ captureBeyondViewport = probeSession.options.captureBeyondViewport;
97911
98139
  lastBrowserConsole = probeSession.browserConsoleBuffer;
97912
98140
  await closeCaptureSession(probeSession);
97913
98141
  probeSession = null;
@@ -97921,6 +98149,7 @@ async function runCaptureStreamingStage(input2) {
97921
98149
  videoInjector,
97922
98150
  captureCfg
97923
98151
  );
98152
+ captureBeyondViewport = session.options.captureBeyondViewport;
97924
98153
  if (probeSession) {
97925
98154
  prepareCaptureSessionForReuse(session, framesDir, videoInjector);
97926
98155
  probeSession = null;
@@ -97969,7 +98198,8 @@ async function runCaptureStreamingStage(input2) {
97969
98198
  encodeMs: encodeResult.durationMs,
97970
98199
  probeSession,
97971
98200
  lastBrowserConsole,
97972
- workerCount
98201
+ workerCount,
98202
+ captureBeyondViewport
97973
98203
  };
97974
98204
  } finally {
97975
98205
  if (streamingEncoder && !streamingEncoderClosed) {
@@ -99996,6 +100226,10 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
99996
100226
  fileServer = probeResult.fileServer;
99997
100227
  probeSession = probeResult.probeSession;
99998
100228
  lastBrowserConsole = probeResult.lastBrowserConsole;
100229
+ let resolvedCaptureBeyondViewport = probeSession?.options.captureBeyondViewport;
100230
+ if (resolvedCaptureBeyondViewport !== void 0) {
100231
+ updateCaptureObservability({ captureBeyondViewport: resolvedCaptureBeyondViewport });
100232
+ }
99999
100233
  job.duration = probeResult.duration;
100000
100234
  job.totalFrames = probeResult.totalFrames;
100001
100235
  const totalFrames = probeResult.totalFrames;
@@ -100115,11 +100349,12 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100115
100349
  quality: needsAlpha ? void 0 : job.config.quality === "draft" ? 80 : 95,
100116
100350
  variables: job.config.variables,
100117
100351
  deviceScaleFactor,
100118
- captureBeyondViewport: composition.videos.length > 0
100352
+ ...composition.videos.length > 0 ? { captureBeyondViewport: true } : {}
100119
100353
  };
100120
- updateCaptureObservability({
100121
- captureBeyondViewport: captureOptions.captureBeyondViewport ?? false
100122
- });
100354
+ resolvedCaptureBeyondViewport = captureOptions.captureBeyondViewport ?? resolvedCaptureBeyondViewport;
100355
+ if (resolvedCaptureBeyondViewport !== void 0) {
100356
+ updateCaptureObservability({ captureBeyondViewport: resolvedCaptureBeyondViewport });
100357
+ }
100123
100358
  const buildCaptureOptions = () => ({
100124
100359
  ...captureOptions,
100125
100360
  videoMetadataHints,
@@ -100248,7 +100483,7 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100248
100483
  observability.checkpoint("capture_strategy", "resolved", {
100249
100484
  workerCount,
100250
100485
  forceScreenshot: captureForceScreenshot,
100251
- captureBeyondViewport: captureOptions.captureBeyondViewport ?? false,
100486
+ captureBeyondViewport: resolvedCaptureBeyondViewport ?? null,
100252
100487
  useStreamingEncode,
100253
100488
  useLayeredComposite,
100254
100489
  usePageSideCompositing: usePageSideCompositingForTransitions,
@@ -100360,6 +100595,11 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100360
100595
  streamingHandled = true;
100361
100596
  workerCount = streamingRes.workerCount;
100362
100597
  updateCaptureObservability({ workerCount });
100598
+ if (streamingRes.captureBeyondViewport !== void 0) {
100599
+ updateCaptureObservability({
100600
+ captureBeyondViewport: streamingRes.captureBeyondViewport
100601
+ });
100602
+ }
100363
100603
  probeSession = streamingRes.probeSession;
100364
100604
  lastBrowserConsole = streamingRes.lastBrowserConsole;
100365
100605
  perfStages.captureMs = Date.now() - stage4Start;
@@ -100402,6 +100642,11 @@ async function executeRenderJob(job, projectDir, outputPath, onProgress, abortSi
100402
100642
  const captureFrameMs = Date.now() - captureFrameStart;
100403
100643
  workerCount = captureRes.workerCount;
100404
100644
  updateCaptureObservability({ workerCount });
100645
+ if (captureRes.captureBeyondViewport !== void 0) {
100646
+ updateCaptureObservability({
100647
+ captureBeyondViewport: captureRes.captureBeyondViewport
100648
+ });
100649
+ }
100405
100650
  probeSession = captureRes.probeSession;
100406
100651
  lastBrowserConsole = captureRes.lastBrowserConsole;
100407
100652
  perfStages.captureMs = Date.now() - stage4Start;
@@ -102359,7 +102604,7 @@ async function renderChunk(planDir, chunkIndex, outputChunkPath) {
102359
102604
  // declare `data-composition-variables` leave this undefined and the
102360
102605
  // engine skips the `evaluateOnNewDocument` injection.
102361
102606
  variables: encoder.variables,
102362
- captureBeyondViewport: (planVideos?.videos.length ?? 0) > 0,
102607
+ ...(planVideos?.videos.length ?? 0) > 0 ? { captureBeyondViewport: true } : {},
102363
102608
  // lock the BeginFrame warmup loop to a fixed iteration count so
102364
102609
  // `beginFrameTimeTicks` is host-independent. Only chunks ever set this.
102365
102610
  lockWarmupTicks: true
@@ -106741,8 +106986,8 @@ function browserTimeoutErrorMessage(error) {
106741
106986
  function resolveBrowserTimeoutMsArg(raw) {
106742
106987
  const result = parseBrowserTimeoutMsArg(raw);
106743
106988
  if (!result.ok) {
106744
- const { title, message, hint } = browserTimeoutErrorMessage(result.error);
106745
- errorBox(title, message, hint);
106989
+ const { title, message, hint: hint2 } = browserTimeoutErrorMessage(result.error);
106990
+ errorBox(title, message, hint2);
106746
106991
  process.exit(1);
106747
106992
  }
106748
106993
  return result.value;
@@ -106790,8 +107035,8 @@ function compositionEntryErrorMessage(error) {
106790
107035
  function resolveCompositionEntryArg(raw, projectDir, stat3) {
106791
107036
  const result = parseCompositionEntryArg(raw, projectDir, stat3);
106792
107037
  if (!result.ok) {
106793
- const { title, message, hint } = compositionEntryErrorMessage(result.error);
106794
- errorBox(title, message, hint);
107038
+ const { title, message, hint: hint2 } = compositionEntryErrorMessage(result.error);
107039
+ errorBox(title, message, hint2);
106795
107040
  process.exit(1);
106796
107041
  }
106797
107042
  return result.value;
@@ -106963,6 +107208,20 @@ var init_feedback = __esm({
106963
107208
  }
106964
107209
  });
106965
107210
 
107211
+ // src/telemetry/skill.ts
107212
+ function normalizeSkillSlug(raw) {
107213
+ if (typeof raw !== "string") return void 0;
107214
+ const slug = raw.trim();
107215
+ return SKILL_SLUG.test(slug) ? slug : void 0;
107216
+ }
107217
+ var SKILL_SLUG;
107218
+ var init_skill = __esm({
107219
+ "src/telemetry/skill.ts"() {
107220
+ "use strict";
107221
+ SKILL_SLUG = /^[a-z0-9][a-z0-9-]{0,63}$/;
107222
+ }
107223
+ });
107224
+
106966
107225
  // src/utils/dockerRunArgs.ts
106967
107226
  function resolveDockerPlatform(arch2 = process.arch, env = process.env) {
106968
107227
  const override = env.HYPERFRAMES_DOCKER_PLATFORM;
@@ -107572,11 +107831,11 @@ var init_batchRender = __esm({
107572
107831
  BatchRenderInputError = class extends Error {
107573
107832
  title;
107574
107833
  hint;
107575
- constructor(title, message, hint) {
107834
+ constructor(title, message, hint2) {
107576
107835
  super(message);
107577
107836
  this.name = "BatchRenderInputError";
107578
107837
  this.title = title;
107579
- this.hint = hint;
107838
+ this.hint = hint2;
107580
107839
  }
107581
107840
  };
107582
107841
  PLACEHOLDER_RE = /\{([A-Za-z0-9_.-]+)\}/g;
@@ -107784,6 +108043,7 @@ async function renderDocker(projectDir, outputPath, options) {
107784
108043
  workers: options.workers,
107785
108044
  docker: true,
107786
108045
  gpu: options.gpu,
108046
+ authoringSkill: options.authoringSkill,
107787
108047
  ...getMemorySnapshot()
107788
108048
  });
107789
108049
  printRenderComplete(outputPath, elapsed, options.quiet);
@@ -107970,7 +108230,7 @@ function createNoopProducerLogger() {
107970
108230
  }
107971
108231
  };
107972
108232
  }
107973
- function handleRenderError(error, options, startTime, docker, hint, failedStage, job) {
108233
+ function handleRenderError(error, options, startTime, docker, hint2, failedStage, job) {
107974
108234
  const message = normalizeErrorMessage2(error);
107975
108235
  trackRenderError({
107976
108236
  fps: fpsToNumber(options.fps),
@@ -107978,6 +108238,7 @@ function handleRenderError(error, options, startTime, docker, hint, failedStage,
107978
108238
  docker,
107979
108239
  workers: options.workers,
107980
108240
  gpu: options.gpu,
108241
+ authoringSkill: options.authoringSkill,
107981
108242
  elapsedMs: Date.now() - startTime,
107982
108243
  errorMessage: message,
107983
108244
  failedStage,
@@ -107987,7 +108248,7 @@ function handleRenderError(error, options, startTime, docker, hint, failedStage,
107987
108248
  if (options.throwOnError) {
107988
108249
  throw new Error(message);
107989
108250
  }
107990
- errorBox("Render failed", message, hint);
108251
+ errorBox("Render failed", message, hint2);
107991
108252
  process.exit(1);
107992
108253
  }
107993
108254
  function trackRenderMetrics(job, elapsedMs, options, docker) {
@@ -108003,6 +108264,7 @@ function trackRenderMetrics(job, elapsedMs, options, docker) {
108003
108264
  workers: options.workers ?? perf?.workers,
108004
108265
  docker,
108005
108266
  gpu: options.gpu,
108267
+ authoringSkill: options.authoringSkill,
108006
108268
  staticDedupEnabled: perf?.staticDedup?.enabled,
108007
108269
  staticDedupArmed: perf?.staticDedup?.armed,
108008
108270
  staticDedupSkipReason: perf?.staticDedup?.skipReason,
@@ -108080,6 +108342,7 @@ var init_render2 = __esm({
108080
108342
  init_events();
108081
108343
  init_feedback();
108082
108344
  init_renderObservability();
108345
+ init_skill();
108083
108346
  init_system();
108084
108347
  init_version();
108085
108348
  init_env();
@@ -108168,6 +108431,10 @@ var init_render2 = __esm({
108168
108431
  description: "Quality: draft, standard, high",
108169
108432
  default: "standard"
108170
108433
  },
108434
+ skill: {
108435
+ type: "string",
108436
+ 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."
108437
+ },
108171
108438
  format: {
108172
108439
  type: "string",
108173
108440
  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 +108587,13 @@ var init_render2 = __esm({
108320
108587
  process.exit(1);
108321
108588
  }
108322
108589
  const quality = qualityRaw;
108590
+ const authoringSkill = normalizeSkillSlug(args.skill);
108591
+ if (typeof args.skill === "string" && args.skill.trim() !== "" && !authoringSkill) {
108592
+ process.stderr.write(
108593
+ `hyperframes: ignoring --skill="${args.skill}" \u2014 not a valid slug (lowercase letters/digits/hyphens, max 64); this render will be unattributed.
108594
+ `
108595
+ );
108596
+ }
108323
108597
  const formatRaw = args.format ?? "mp4";
108324
108598
  const format = parseRenderFormat(formatRaw);
108325
108599
  if (!format) {
@@ -108613,6 +108887,7 @@ var init_render2 = __esm({
108613
108887
  const renderOptionsBase = {
108614
108888
  fps,
108615
108889
  quality,
108890
+ authoringSkill,
108616
108891
  format,
108617
108892
  workers,
108618
108893
  gpu: useGpu,
@@ -108661,6 +108936,7 @@ var init_render2 = __esm({
108661
108936
  await renderDocker(project.dir, outputPath, {
108662
108937
  fps,
108663
108938
  quality,
108939
+ authoringSkill,
108664
108940
  format,
108665
108941
  gifLoop,
108666
108942
  workers,
@@ -108686,6 +108962,7 @@ var init_render2 = __esm({
108686
108962
  await renderLocal(project.dir, outputPath, {
108687
108963
  fps,
108688
108964
  quality,
108965
+ authoringSkill,
108689
108966
  format,
108690
108967
  gifLoop,
108691
108968
  workers,
@@ -109135,8 +109412,8 @@ async function detect(audioPath) {
109135
109412
  return await analyzeBeatsHeadless(readFileSync50(audioPath));
109136
109413
  } catch (err) {
109137
109414
  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}`);
109415
+ const hint2 = /chrome|executable|browser|ENOENT/i.test(msg) ? "\nRun: npx hyperframes browser ensure" : "";
109416
+ fail(`Beat detection failed: ${msg}${hint2}`);
109140
109417
  }
109141
109418
  }
109142
109419
  function report(file, result, json) {
@@ -111648,15 +111925,28 @@ __export(transcribe_exports2, {
111648
111925
  });
111649
111926
  import { existsSync as existsSync72, writeFileSync as writeFileSync30 } from "fs";
111650
111927
  import { resolve as resolve48, join as join78, extname as extname12, dirname as dirname32 } from "path";
111928
+ function failWith(message, json) {
111929
+ trackCommandFailure("transcribe", message);
111930
+ if (json) {
111931
+ console.log(JSON.stringify({ ok: false, error: message }));
111932
+ } else {
111933
+ console.error(c.error(message));
111934
+ }
111935
+ process.exit(1);
111936
+ }
111937
+ function parseExportFormat(value, json) {
111938
+ if (!value) return void 0;
111939
+ const normalized = value.toLowerCase();
111940
+ if (normalized === "srt" || normalized === "vtt") return normalized;
111941
+ failWith(`Unsupported caption export format: ${value}. Use srt or vtt.`, json);
111942
+ }
111943
+ function exitNoWords(json) {
111944
+ failWith("No words found in transcript.", json);
111945
+ }
111651
111946
  async function importTranscript(inputPath, dir, json) {
111652
111947
  const { loadTranscript: loadTranscript2, patchCaptionHtml: patchCaptionHtml2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
111653
111948
  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
- }
111949
+ if (words.length === 0) exitNoWords(json);
111660
111950
  const outPath = join78(dir, "transcript.json");
111661
111951
  writeFileSync30(outPath, JSON.stringify(words, null, 2));
111662
111952
  patchCaptionHtml2(dir, words);
@@ -111670,6 +111960,24 @@ async function importTranscript(inputPath, dir, json) {
111670
111960
  );
111671
111961
  }
111672
111962
  }
111963
+ async function exportTranscript(inputPath, dir, to, output, json, preserveCues) {
111964
+ const { loadTranscript: loadTranscript2, formatSrt: formatSrt2, formatVtt: formatVtt2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
111965
+ const { words, format } = loadTranscript2(inputPath);
111966
+ if (words.length === 0) exitNoWords(json);
111967
+ const preGrouped = preserveCues || format === "srt" || format === "vtt" || void 0;
111968
+ const outPath = resolve48(output ?? join78(dir, `transcript.${to}`));
111969
+ const content = to === "srt" ? formatSrt2(words, { preGrouped }) : formatVtt2(words, { preGrouped });
111970
+ writeFileSync30(outPath, content);
111971
+ if (json) {
111972
+ console.log(
111973
+ JSON.stringify({ ok: true, format: to, wordCount: words.length, outputPath: outPath })
111974
+ );
111975
+ } else {
111976
+ console.log(
111977
+ `${c.success("\u25C7")} Exported ${c.accent(String(words.length))} words to ${c.accent(to.toUpperCase())} \u2192 ${c.accent(outPath)}`
111978
+ );
111979
+ }
111980
+ }
111673
111981
  async function transcribeAudio(inputPath, dir, opts) {
111674
111982
  const { transcribe: transcribe2 } = await Promise.resolve().then(() => (init_transcribe(), transcribe_exports));
111675
111983
  const { loadTranscript: loadTranscript2, patchCaptionHtml: patchCaptionHtml2, stripBeforeOnset: stripBeforeOnset2 } = await Promise.resolve().then(() => (init_normalize(), normalize_exports));
@@ -111750,7 +112058,12 @@ var init_transcribe2 = __esm({
111750
112058
  ["Use a larger model for better accuracy", "hyperframes transcribe audio.mp3 --model medium.en"],
111751
112059
  ["Set language to filter non-target speech", "hyperframes transcribe audio.mp3 --language en"],
111752
112060
  ["Import an existing SRT file", "hyperframes transcribe subtitles.srt"],
111753
- ["Import an OpenAI Whisper JSON response", "hyperframes transcribe response.json"]
112061
+ ["Import an OpenAI Whisper JSON response", "hyperframes transcribe response.json"],
112062
+ ["Export captions to SRT", "hyperframes transcribe transcript.json --to srt"],
112063
+ [
112064
+ "Export single-word/CJK captions without re-grouping",
112065
+ "hyperframes transcribe transcript.json --to vtt --preserve-cues"
112066
+ ]
111754
112067
  ];
111755
112068
  transcribe_default = defineCommand({
111756
112069
  meta: {
@@ -111783,6 +112096,20 @@ var init_transcribe2 = __esm({
111783
112096
  description: "Output result as JSON",
111784
112097
  default: false
111785
112098
  },
112099
+ to: {
112100
+ type: "string",
112101
+ description: "Export transcript sidecar format: srt or vtt"
112102
+ },
112103
+ output: {
112104
+ type: "string",
112105
+ alias: "o",
112106
+ description: "Output path for exported SRT/VTT sidecar"
112107
+ },
112108
+ "preserve-cues": {
112109
+ type: "boolean",
112110
+ 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.",
112111
+ default: false
112112
+ },
111786
112113
  optional: {
111787
112114
  type: "boolean",
111788
112115
  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 +112127,16 @@ var init_transcribe2 = __esm({
111800
112127
  const dir = resolve48(args.dir ?? dirname32(inputPath));
111801
112128
  const ext = extname12(inputPath).toLowerCase();
111802
112129
  const isImport = ext === ".json" || ext === ".srt" || ext === ".vtt";
112130
+ const to = parseExportFormat(args.to, args.json);
112131
+ if (to) {
112132
+ if (!isImport) {
112133
+ failWith(
112134
+ "--to can only export from transcript files (.json, .srt, .vtt). Run transcribe first.",
112135
+ args.json
112136
+ );
112137
+ }
112138
+ return exportTranscript(inputPath, dir, to, args.output, args.json, args["preserve-cues"]);
112139
+ }
111803
112140
  if (isImport) {
111804
112141
  return importTranscript(inputPath, dir, args.json);
111805
112142
  }
@@ -111915,15 +112252,8 @@ var init_manager4 = __esm({
111915
112252
  }
111916
112253
  });
111917
112254
 
111918
- // src/tts/synthesize.ts
111919
- var synthesize_exports = {};
111920
- __export(synthesize_exports, {
111921
- synthesize: () => synthesize
111922
- });
112255
+ // src/tts/python.ts
111923
112256
  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
112257
  function findPython() {
111928
112258
  for (const name of ["python3", "python"]) {
111929
112259
  try {
@@ -111957,6 +112287,36 @@ function hasPythonPackage(python, pkg) {
111957
112287
  return false;
111958
112288
  }
111959
112289
  }
112290
+ function hasPythonModules(modules) {
112291
+ const python = findPython();
112292
+ if (!python) return false;
112293
+ const list = JSON.stringify(modules);
112294
+ const probe = `import importlib.util,sys; sys.exit(0 if all(importlib.util.find_spec(m) for m in ${list}) else 1)`;
112295
+ try {
112296
+ execFileSync9(python, ["-c", probe], {
112297
+ stdio: ["pipe", "pipe", "pipe"],
112298
+ timeout: 1e4
112299
+ });
112300
+ return true;
112301
+ } catch {
112302
+ return false;
112303
+ }
112304
+ }
112305
+ var init_python = __esm({
112306
+ "src/tts/python.ts"() {
112307
+ "use strict";
112308
+ }
112309
+ });
112310
+
112311
+ // src/tts/synthesize.ts
112312
+ var synthesize_exports = {};
112313
+ __export(synthesize_exports, {
112314
+ synthesize: () => synthesize
112315
+ });
112316
+ import { execFileSync as execFileSync10 } from "child_process";
112317
+ import { existsSync as existsSync74, writeFileSync as writeFileSync31, mkdirSync as mkdirSync39, readdirSync as readdirSync28, unlinkSync as unlinkSync7 } from "fs";
112318
+ import { join as join80, dirname as dirname33, basename as basename15 } from "path";
112319
+ import { homedir as homedir11 } from "os";
111960
112320
  function ensureSynthScript() {
111961
112321
  if (!existsSync74(SCRIPT_PATH)) {
111962
112322
  mkdirSync39(SCRIPT_DIR, { recursive: true });
@@ -112003,7 +112363,7 @@ async function synthesize(text, outputPath, options) {
112003
112363
  mkdirSync39(dirname33(outputPath), { recursive: true });
112004
112364
  options?.onProgress?.(`Generating speech with voice ${voice} (${lang})...`);
112005
112365
  try {
112006
- const stdout2 = execFileSync9(
112366
+ const stdout2 = execFileSync10(
112007
112367
  python,
112008
112368
  [scriptPath, modelPath2, voicesPath, text, voice, String(speed), outputPath, lang],
112009
112369
  {
@@ -112044,6 +112404,7 @@ var init_synthesize = __esm({
112044
112404
  "src/tts/synthesize.ts"() {
112045
112405
  "use strict";
112046
112406
  init_manager4();
112407
+ init_python();
112047
112408
  SYNTH_SCRIPT = `
112048
112409
  import sys, json, inspect
112049
112410
 
@@ -112408,6 +112769,60 @@ var init_docs = __esm({
112408
112769
  }
112409
112770
  });
112410
112771
 
112772
+ // src/audio/providers.ts
112773
+ function decideVoice(f3) {
112774
+ if (f3.hasHeygen) return { engine: "heygen", label: "HeyGen Starfish", local: false, ready: true };
112775
+ if (f3.elevenlabs) return { engine: "elevenlabs", label: "ElevenLabs", local: false, ready: true };
112776
+ return {
112777
+ engine: "kokoro",
112778
+ label: "Kokoro",
112779
+ local: true,
112780
+ ready: f3.kokoro,
112781
+ ...f3.kokoro ? {} : { setupHint: KOKORO_PIP }
112782
+ };
112783
+ }
112784
+ function decideMusic(f3) {
112785
+ if (f3.hasHeygen) return { engine: "heygen", label: "HeyGen library", local: false, ready: true };
112786
+ if (f3.lyria) return { engine: "lyria", label: "Lyria (Gemini)", local: false, ready: true };
112787
+ return {
112788
+ engine: "musicgen",
112789
+ label: "MusicGen",
112790
+ local: true,
112791
+ ready: f3.musicgen,
112792
+ ...f3.musicgen ? {} : { setupHint: MUSICGEN_PIP }
112793
+ };
112794
+ }
112795
+ function gatherVoiceFacts(hasHeygen) {
112796
+ if (hasHeygen) return { hasHeygen, elevenlabs: false, kokoro: false };
112797
+ const elevenlabs = Boolean(process.env["ELEVENLABS_API_KEY"]) && hasPythonModules(["elevenlabs"]);
112798
+ const kokoro = hasPythonModules(KOKORO_MODULES);
112799
+ return { hasHeygen, elevenlabs, kokoro };
112800
+ }
112801
+ function gatherMusicFacts(hasHeygen) {
112802
+ if (hasHeygen) return { hasHeygen, lyria: false, musicgen: false };
112803
+ const hasLyriaKey = Boolean(process.env["GEMINI_API_KEY"] || process.env["GOOGLE_API_KEY"]);
112804
+ const lyria = hasLyriaKey && hasPythonModules(["google.genai"]);
112805
+ const musicgen = hasPythonModules(MUSICGEN_MODULES);
112806
+ return { hasHeygen, lyria, musicgen };
112807
+ }
112808
+ function resolveVoice(hasHeygen) {
112809
+ return decideVoice(gatherVoiceFacts(hasHeygen));
112810
+ }
112811
+ function resolveMusic(hasHeygen) {
112812
+ return decideMusic(gatherMusicFacts(hasHeygen));
112813
+ }
112814
+ var KOKORO_MODULES, MUSICGEN_MODULES, KOKORO_PIP, MUSICGEN_PIP;
112815
+ var init_providers = __esm({
112816
+ "src/audio/providers.ts"() {
112817
+ "use strict";
112818
+ init_python();
112819
+ KOKORO_MODULES = ["kokoro_onnx", "soundfile"];
112820
+ MUSICGEN_MODULES = ["transformers", "torch", "soundfile", "numpy"];
112821
+ KOKORO_PIP = "pip install kokoro-onnx soundfile";
112822
+ MUSICGEN_PIP = "pip install transformers torch soundfile numpy";
112823
+ }
112824
+ });
112825
+
112411
112826
  // src/commands/doctor.ts
112412
112827
  var doctor_exports = {};
112413
112828
  __export(doctor_exports, {
@@ -112530,6 +112945,22 @@ async function checkWhisper() {
112530
112945
  hint: getInstallInstructions2()
112531
112946
  };
112532
112947
  }
112948
+ function checkLocalVoice() {
112949
+ if (hasPythonModules(KOKORO_MODULES)) return { ok: true, detail: "Kokoro deps installed" };
112950
+ return {
112951
+ ok: false,
112952
+ detail: "Not installed (optional \u2014 local voice fallback)",
112953
+ hint: KOKORO_PIP
112954
+ };
112955
+ }
112956
+ function checkLocalMusic() {
112957
+ if (hasPythonModules(MUSICGEN_MODULES)) return { ok: true, detail: "MusicGen deps installed" };
112958
+ return {
112959
+ ok: false,
112960
+ detail: "Not installed (optional \u2014 local music fallback)",
112961
+ hint: MUSICGEN_PIP
112962
+ };
112963
+ }
112533
112964
  function redactHome(s2) {
112534
112965
  const home = process.env["HOME"] || process.env["USERPROFILE"];
112535
112966
  if (!home) return s2;
@@ -112559,6 +112990,8 @@ var init_doctor = __esm({
112559
112990
  init_dist();
112560
112991
  init_colors();
112561
112992
  init_preflight();
112993
+ init_providers();
112994
+ init_python();
112562
112995
  init_version();
112563
112996
  init_updateCheck();
112564
112997
  init_system();
@@ -112585,6 +113018,8 @@ var init_doctor = __esm({
112585
113018
  }
112586
113019
  checks.push({ name: "Environment", run: checkEnvironment });
112587
113020
  checks.push({ name: "whisper-cpp", run: checkWhisper });
113021
+ checks.push({ name: "TTS (Kokoro)", run: checkLocalVoice });
113022
+ checks.push({ name: "BGM (MusicGen)", run: checkLocalMusic });
112588
113023
  const outcomes = [];
112589
113024
  for (const check of checks) {
112590
113025
  const result = await check.run();
@@ -112651,7 +113086,7 @@ __export(upgrade_exports, {
112651
113086
  default: () => upgrade_default,
112652
113087
  examples: () => examples22
112653
113088
  });
112654
- import { execFileSync as execFileSync10 } from "child_process";
113089
+ import { execFileSync as execFileSync11 } from "child_process";
112655
113090
  var examples22, upgrade_default;
112656
113091
  var init_upgrade = __esm({
112657
113092
  "src/commands/upgrade.ts"() {
@@ -112722,7 +113157,7 @@ var init_upgrade = __esm({
112722
113157
  console.log(` ${c.dim("Running:")} ${c.accent(installCmd)}`);
112723
113158
  console.log();
112724
113159
  try {
112725
- execFileSync10("npm", installArgs, { stdio: "inherit", shell: false });
113160
+ execFileSync11("npm", installArgs, { stdio: "inherit", shell: false });
112726
113161
  ye(c.success(`Upgraded to v${result.latest}`));
112727
113162
  } catch {
112728
113163
  ye(c.dim("Install failed. Try running manually:"));
@@ -112910,15 +113345,15 @@ var events_exports2 = {};
112910
113345
  __export(events_exports2, {
112911
113346
  default: () => events_default
112912
113347
  });
112913
- var ALLOWED_EVENTS, ALLOWED_OUTCOMES, SKILL_SLUG, events_default;
113348
+ var ALLOWED_EVENTS, ALLOWED_OUTCOMES, events_default;
112914
113349
  var init_events2 = __esm({
112915
113350
  "src/commands/events.ts"() {
112916
113351
  "use strict";
112917
113352
  init_dist();
112918
113353
  init_client();
113354
+ init_skill();
112919
113355
  ALLOWED_EVENTS = ["skill_invoked", "skill_completed"];
112920
113356
  ALLOWED_OUTCOMES = ["success", "error", "abort"];
112921
- SKILL_SLUG = /^[a-z0-9][a-z0-9-]{0,63}$/;
112922
113357
  events_default = defineCommand({
112923
113358
  meta: {
112924
113359
  name: "events",
@@ -115471,9 +115906,9 @@ var require_ponyfill_es2018 = __commonJS({
115471
115906
  return { iterator: asyncIterator, nextMethod, done: false };
115472
115907
  }
115473
115908
  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) {
115909
+ function GetIterator(obj, hint2 = "sync", method) {
115475
115910
  if (method === void 0) {
115476
- if (hint === "async") {
115911
+ if (hint2 === "async") {
115477
115912
  method = GetMethod(obj, SymbolAsyncIterator);
115478
115913
  if (method === void 0) {
115479
115914
  const syncMethod = GetMethod(obj, Symbol.iterator);
@@ -157614,12 +158049,12 @@ function requireStack(stackName, cwd = process.cwd()) {
157614
158049
  const stack = readStackOutputs(stackName, cwd);
157615
158050
  if (!stack) {
157616
158051
  const known = listStackNames(cwd);
157617
- let hint = `Run \`hyperframes lambda deploy${stackName === DEFAULT_STACK_NAME ? "" : ` --stack-name=${stackName}`}\` first.`;
158052
+ let hint2 = `Run \`hyperframes lambda deploy${stackName === DEFAULT_STACK_NAME ? "" : ` --stack-name=${stackName}`}\` first.`;
157618
158053
  if (known.length) {
157619
- hint += ` Known stacks here: ${known.join(", ")}.`;
158054
+ hint2 += ` Known stacks here: ${known.join(", ")}.`;
157620
158055
  }
157621
158056
  console.error(
157622
- `[hyperframes lambda] no stack state for "${stackName}" at ${stateFilePath(stackName, cwd)}. ${hint}`
158057
+ `[hyperframes lambda] no stack state for "${stackName}" at ${stateFilePath(stackName, cwd)}. ${hint2}`
157623
158058
  );
157624
158059
  process.exit(1);
157625
158060
  }
@@ -157636,12 +158071,12 @@ var init_state = __esm({
157636
158071
  });
157637
158072
 
157638
158073
  // src/commands/lambda/sam.ts
157639
- import { execFileSync as execFileSync11, spawnSync as spawnSync4 } from "child_process";
158074
+ import { execFileSync as execFileSync12, spawnSync as spawnSync4 } from "child_process";
157640
158075
  import { existsSync as existsSync87 } from "fs";
157641
158076
  import { join as join95 } from "path";
157642
158077
  function assertSamAvailable() {
157643
158078
  try {
157644
- execFileSync11("sam", ["--version"], { stdio: "ignore" });
158079
+ execFileSync12("sam", ["--version"], { stdio: "ignore" });
157645
158080
  } catch {
157646
158081
  throw new Error(
157647
158082
  "`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 +158085,7 @@ function assertSamAvailable() {
157650
158085
  }
157651
158086
  function assertAwsCliAvailable() {
157652
158087
  try {
157653
- execFileSync11("aws", ["--version"], { stdio: "ignore" });
158088
+ execFileSync12("aws", ["--version"], { stdio: "ignore" });
157654
158089
  } catch {
157655
158090
  throw new Error(
157656
158091
  "`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 +158162,7 @@ function fetchStackOutputs(opts) {
157727
158162
  if (opts.awsProfile) {
157728
158163
  args.unshift("--profile", opts.awsProfile);
157729
158164
  }
157730
- const out = execFileSync11("aws", args, { encoding: "utf-8" });
158165
+ const out = execFileSync12("aws", args, { encoding: "utf-8" });
157731
158166
  const parsed = JSON.parse(out);
157732
158167
  const byKey = new Map(parsed.map((o) => [o.OutputKey, o.OutputValue]));
157733
158168
  const bucketName = byKey.get("RenderBucketName");
@@ -160232,11 +160667,11 @@ var init_errors = __esm({
160232
160667
  AuthError = class extends Error {
160233
160668
  code;
160234
160669
  hint;
160235
- constructor(code, message, hint) {
160670
+ constructor(code, message, hint2) {
160236
160671
  super(message);
160237
160672
  this.name = "AuthError";
160238
160673
  this.code = code;
160239
- this.hint = hint;
160674
+ this.hint = hint2;
160240
160675
  }
160241
160676
  };
160242
160677
  ErrNotConfigured = () => new AuthError(
@@ -161185,10 +161620,10 @@ function reportApiError(stage, err, options = {}) {
161185
161620
  errorBox("Not found", options.notFound);
161186
161621
  process.exit(1);
161187
161622
  }
161188
- const hint = err.code ? hints[err.code] : void 0;
161623
+ const hint2 = err.code ? hints[err.code] : void 0;
161189
161624
  const title = `${stage} (HTTP ${err.status})`;
161190
- if (hint) {
161191
- errorBox(title, err.message, hint);
161625
+ if (hint2) {
161626
+ errorBox(title, err.message, hint2);
161192
161627
  } else if (options.suggestion) {
161193
161628
  errorBox(title, err.message, options.suggestion);
161194
161629
  } else if (err.code) {
@@ -162367,18 +162802,92 @@ var init_login = __esm({
162367
162802
  }
162368
162803
  });
162369
162804
 
162805
+ // src/commands/auth/status-guidance.ts
162806
+ function offlineEngineLines(engines) {
162807
+ if (!engines || engines.length === 0) {
162808
+ return [
162809
+ c.dim("Prefer offline? Just continue \u2014 local engines (Kokoro \xB7 MusicGen) need no account.")
162810
+ ];
162811
+ }
162812
+ const lines = ["Prefer offline? Workflows will use these local engines:"];
162813
+ for (const e3 of engines) {
162814
+ const cap = e3.capability.padEnd(5);
162815
+ if (e3.ready) {
162816
+ lines.push(` ${cap} \u2192 ${e3.label} ${c.success("\u2713 ready")}`);
162817
+ } else {
162818
+ lines.push(` ${cap} \u2192 ${e3.label} ${c.warn("\u26A0 deps missing")}`);
162819
+ if (e3.setupHint) lines.push(` ${c.dim(e3.setupHint)}`);
162820
+ }
162821
+ }
162822
+ if (engines.some((e3) => !e3.ready)) {
162823
+ lines.push(c.dim(" (or run `hyperframes doctor` to check the local toolchain)"));
162824
+ }
162825
+ return lines;
162826
+ }
162827
+ function buildUnconfiguredLines(ctx, engines) {
162828
+ if (!ctx.interactive) {
162829
+ return [
162830
+ c.warn("Not signed in to HeyGen (non-interactive)."),
162831
+ c.dim(
162832
+ "Set HEYGEN_API_KEY to use HeyGen, or workflows fall back to local engines (Kokoro voice \xB7 MusicGen music)."
162833
+ )
162834
+ ];
162835
+ }
162836
+ return [
162837
+ c.warn("Not signed in to HeyGen \u2014 voice & music will use local engines (free, offline)."),
162838
+ "",
162839
+ "Sign in or sign up (browser OAuth, writes ~/.heygen \u2014 no per-repo .env):",
162840
+ ` ${c.accent("npx hyperframes auth login")} ${c.dim("# browser sign-in / sign-up")}`,
162841
+ "",
162842
+ "Or paste an existing HeyGen API key (get one at app.heygen.com/settings/api):",
162843
+ ` ${c.accent("npx hyperframes auth login --api-key")} ${c.dim("# paste at the prompt")}`,
162844
+ "",
162845
+ ...offlineEngineLines(engines)
162846
+ ];
162847
+ }
162848
+ function buildUnconfiguredJson(ctx, engines) {
162849
+ return {
162850
+ configured: false,
162851
+ interactive: ctx.interactive,
162852
+ recommended_action: RECOMMENDED_ACTION,
162853
+ fallback: "local",
162854
+ ...engines ? { offline_engines: engines } : {}
162855
+ };
162856
+ }
162857
+ var RECOMMENDED_ACTION;
162858
+ var init_status_guidance = __esm({
162859
+ "src/commands/auth/status-guidance.ts"() {
162860
+ "use strict";
162861
+ init_colors();
162862
+ RECOMMENDED_ACTION = "npx hyperframes auth login";
162863
+ }
162864
+ });
162865
+
162370
162866
  // src/commands/auth/status.ts
162371
162867
  var status_exports = {};
162372
162868
  __export(status_exports, {
162373
162869
  default: () => status_default
162374
162870
  });
162871
+ function detectUnconfiguredContext() {
162872
+ const sys = getSystemMeta();
162873
+ return { interactive: !sys.is_ci && (sys.is_tty || sys.agent_runtime !== null) };
162874
+ }
162875
+ function collectOfflineEngines() {
162876
+ const voice = resolveVoice(false);
162877
+ const music = resolveMusic(false);
162878
+ return [
162879
+ { capability: "voice", label: voice.label, ready: voice.ready, ...hint(voice.setupHint) },
162880
+ { capability: "music", label: music.label, ready: music.ready, ...hint(music.setupHint) }
162881
+ ];
162882
+ }
162883
+ function hint(setupHint) {
162884
+ return setupHint ? { setupHint } : {};
162885
+ }
162375
162886
  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
- }
162887
+ const ctx = detectUnconfiguredContext();
162888
+ const engines = asJson || ctx.interactive ? collectOfflineEngines() : void 0;
162889
+ const output = asJson ? JSON.stringify(buildUnconfiguredJson(ctx, engines)) : buildUnconfiguredLines(ctx, engines).join("\n");
162890
+ console.log(output);
162382
162891
  process.exit(1);
162383
162892
  }
162384
162893
  function handleResolveError(err, asJson) {
@@ -162497,7 +163006,10 @@ var init_status = __esm({
162497
163006
  "use strict";
162498
163007
  init_dist();
162499
163008
  init_auth2();
163009
+ init_system();
162500
163010
  init_colors();
163011
+ init_providers();
163012
+ init_status_guidance();
162501
163013
  status_default = defineCommand({
162502
163014
  meta: { name: "status", description: "Show the active HeyGen credential" },
162503
163015
  args: {